def test_image_dimensions(self): """image_dimensions""" img_5d = np.full(shape=(5, 5, 5, 5, 5), fill_value=255) img_5c = np.full(shape=(5, 5, 5), fill_value=255) with self.assertRaises(SWTLocalizerValueError) as context: SWTLocalizer(images=img_5c) with self.assertRaises(SWTLocalizerValueError) as context: SWTLocalizer(images=img_5d)
def test_mixed_input(self): """mixed_input""" mix_inp1 = [self.ipaths[0], cv2.imread(self.ipaths[-1])] mix_inp2 = [1, True, 'abc'] with self.assertRaises(SWTLocalizerValueError) as context: SWTLocalizer(image_paths=mix_inp1) with self.assertRaises(SWTLocalizerValueError) as context: SWTLocalizer(image_paths=mix_inp2) with self.assertRaises(SWTLocalizerValueError) as context: SWTLocalizer(images=mix_inp1) with self.assertRaises(SWTLocalizerValueError) as context: SWTLocalizer(images=mix_inp2)
def setUpClass(cls) -> None: print( "\n\n==================================UTILS================================" ) print('Loading the testing data ...') with open(TEST_DATA_PATH, 'rb') as handle: cls.tdata = pickle.load(handle) print( 'Prepping & Run Once the `swtl` object for facilitating numba jit') cls.swtl = SWTLocalizer( images=cls.tdata.get('utils.ac').get('inp_img')) _ = cls.swtl.swtimages[0].transformImage(display=False)
def setUpClass(cls) -> None: print("\n\n=============================LOCALIZE_WORDS================================") print('Loading the testing data ...') with open(TEST_DATA_PATH, 'rb') as handle: cls.tdata = pickle.load(handle) print('Prepping & Run Once the `swtl` object for facilitating numba jit') cls.swtl = SWTLocalizer(images=cls.tdata.get('swtimage.words').get('inp_img1')) cls.swtImgObj0 = cls.swtl.swtimages[0] _ = cls.swtImgObj0.transformImage(auto_canny_sigma=1.0, minimum_stroke_width=3, maximum_stroke_width=20, maximum_angle_deviation=np.pi / 6, display=False) _ = cls.swtImgObj0.localizeLetters(display=False)
def setUpClass(cls) -> None: print( "\n\n=============================TRANSFORM_IMAGE================================" ) print('Loading the testing data ...') with open(TEST_DATA_PATH, 'rb') as handle: cls.tdata = pickle.load(handle) print( 'Prepping & Run Once the `swtl` object for facilitating numba jit') cls.swtl = SWTLocalizer(images=[ cls.tdata.get('swtimage.transformimage').get('inp_img1'), cls.tdata.get('swtimage.transformimage').get('inp_img2') ]) cls.swtImgObj0 = cls.swtl.swtimages[0] cls.swtImgObj1 = cls.swtl.swtimages[1] _ = cls.swtl.swtimages[0].transformImage(display=False)
def setUpClass(cls) -> None: print("\n\n=============================LOCALIZE_LETTERS================================") print('Loading the testing data ...') with open(TEST_DATA_PATH, 'rb') as handle: cls.tdata = pickle.load(handle) print('Prepping & Run Once the `swtl` object for facilitating numba jit') cls.swtl = SWTLocalizer(images=[cls.tdata.get('swtimage.letters').get('inp_img1'), cls.tdata.get('swtimage.letters').get('inp_img2')]) cls.swtImgObj0 = cls.swtl.swtimages[0] cls.swtImgObj1 = cls.swtl.swtimages[1] _ = cls.swtImgObj0.transformImage(text_mode='lb_df', maximum_angle_deviation=np.pi / 4, include_edges_in_swt=True, display=False) _ = cls.swtImgObj1.transformImage(text_mode='db_lf', maximum_stroke_width=30, maximum_angle_deviation=np.pi / 8, display=False)
def test_image_1C_to_3C(self): """image_1C_to_3C""" swtl = SWTLocalizer( images=self.tdata.get('utils.i1c3c').get('inp_img').copy()) swtl_img_obj = swtl.swtimages[0] swtmat = swtl_img_obj.transformImage(text_mode='lb_df', gaussian_blurr_kernel=(11, 11), include_edges_in_swt=False, display=False) swtmat[swtmat.nonzero()] = 255 _, swtmat, _, _ = get_connected_components_with_stats(swtmat) res1 = image_1C_to_3C(swtmat) out_img1 = self.tdata.get('utils.i1c3c').get('out_img.default').copy() self.assertTrue(np.array_equal(res1, out_img1, equal_nan=True)) res2 = image_1C_to_3C(swtmat, scale_with_values=True) out_img2 = self.tdata.get('utils.i1c3c').get('out_img.scale').copy() self.assertTrue(np.array_equal(res2, out_img2, equal_nan=True))
def test_multiple_images(self): """multiple_images""" try: SWTLocalizer(images=[cv2.imread(k) for k in self.ipaths]) except Exception as e: self.fail(f"myFunc() raised {e} unexpectedly!")
def test_single_image(self): """single_image""" try: SWTLocalizer(images=cv2.imread(self.ipaths[0])) except Exception as e: self.fail(f"myFunc() raised {e} unexpectedly!")
def test_multiple_fpath(self): """multiple_file_path""" try: SWTLocalizer(image_paths=self.ipaths) except Exception as e: self.fail(f"myFunc() raised {e} unexpectedly!")