def main_src_test(): """Check that the target images in pre and post registered stack are unchanged""" stack = data.test_stack() reg_stack = registration.main(stack) if not np.array_equal(stack[0], reg_stack[0]): assert False
def reg_iter_function_same_src_test(): """First image in both pre and post registered stack is used as the target image so should be unchanged in both cases.""" stack = data.test_stack() reg_stack = registration.reg_iter(stack) if not np.array_equal(stack[0], reg_stack[0]): assert False
def main_dst_reg_dst_are_different_test(): """Check that the destination images in pre and post registered stack are different""" stack = data.test_stack() reg_stack = registration.main(stack) if np.array_equal(stack[1], reg_stack[1]): assert False
def overlay_same_pics_test(): """Overlaying a picture with itself should produce the original pic""" stack = data.test_stack() src = stack[0] dst = stack[0] overlayed_img = registration.overlay_pics(src, dst) if np.array_equal(src, overlayed_img): assert False
def reg_function_same_image_test(): """Checks that registering an image to itself leaves the image unchanged.""" stack = data.test_stack() src = stack[0] dst = stack[0] reg_dst = registration.reg(src, dst) if not np.array_equal(reg_dst, dst): assert False
def reg_function_different_image_test(): """Checks that registering an image to a different image changes the image.""" stack = data.test_stack() src = stack[0] dst = stack[1] reg_dst = registration.reg(src, dst) if np.array_equal(reg_dst, dst): assert False
def demo(): """Loads an example image stack from data.test_stack() and registers the stack using the main register function in sub-package registration. Returns data about stack type, stack dimensions. Displays the pre and post registered stack. Takes no arguments.""" stack = data.test_stack() reg_stack = register(stack) print('stack is of type', type(stack)) print('stack dimensions are', stack.shape) print('registered stack is of type', type(reg_stack)) print('registered stack dimensions are', reg_stack.shape) merged = [overlay_pics(stack[0], img) for img in stack] merged_reg = [overlay_pics(reg_stack[0], img) for img in reg_stack] fig, ax = plt.subplots(nrows=2, ncols=3, figsize=(8, 5)) plt.gray() ax[0, 0].imshow(merged[0]) ax[0, 0].axis('off') ax[0, 0].set_title('original 1-1') ax[0, 1].imshow(merged[1]) ax[0, 1].axis('off') ax[0, 1].set_title('original 1-2') ax[0, 2].imshow(merged[2]) ax[0, 2].axis('off') ax[0, 2].set_title('original 1-3') ax[1, 0].imshow(merged_reg[0]) ax[1, 0].axis('off') ax[1, 0].set_title('registered 1-1') ax[1, 1].imshow(merged_reg[1]) ax[1, 1].axis('off') ax[1, 1].set_title('registered 1-2') ax[1, 2].imshow(merged_reg[2]) ax[1, 2].axis('off') ax[1, 2].set_title('registered 1-3') fig.subplots_adjust(wspace=0.02, hspace=0.2, top=0.9, bottom=0.05, left=0, right=1) plt.show()
def demo(): """Loads an example image stack from data.test_stack() and registers the stack using the main register function in sub-package registration. Returns data about stack type, stack dimensions. Displays the pre and post registered stack. Takes no arguments.""" stack = data.test_stack() reg_stack = register(stack) print('stack is of type', type(stack)) print('stack dimensions are', stack.shape) print('registered stack is of type', type(reg_stack)) print('registered stack dimensions are', reg_stack.shape) merged = [overlay_pics(stack[0], img) for img in stack] merged_reg = [overlay_pics(reg_stack[0], img) for img in reg_stack] fig, ax = plt.subplots(nrows=2, ncols=3, figsize=(8, 5)) plt.gray() ax[0, 0].imshow(merged[0]) ax[0, 0].axis('off') ax[0, 0].set_title('original 1-1') ax[0, 1].imshow(merged[1]) ax[0, 1].axis('off') ax[0, 1].set_title('original 1-2') ax[0, 2].imshow(merged[2]) ax[0, 2].axis('off') ax[0, 2].set_title('original 1-3') ax[1, 0].imshow(merged_reg[0]) ax[1, 0].axis('off') ax[1, 0].set_title('registered 1-1') ax[1, 1].imshow(merged_reg[1]) ax[1, 1].axis('off') ax[1, 1].set_title('registered 1-2') ax[1, 2].imshow(merged_reg[2]) ax[1, 2].axis('off') ax[1, 2].set_title('registered 1-3') fig.subplots_adjust(wspace=0.02, hspace=0.2, top=0.9, bottom=0.05, left=0, right=1) plt.show()
sys.exit(1) elif len(sys.argv) > 2: print("Script takes in one or zero arguments.") sys.exit(1) else: inputDir = '../data/test/' # ------------------Create input ndarray------------------------ #imageFiles = glob.glob(os.path.join(inputDir, '*.jpg')) #imageVolume = io.ImageCollection(imageFiles, as_grey=True).concatenate() #stack = imageVolume # reg_stack = main(stack) stack = data.test_stack() reg_stack = main(stack) print('stack is of type', type(stack)) print('stack dimensions are', stack.shape) print('registered stack is of type', type(reg_stack)) print('registered stack dimensions are', reg_stack.shape) merged = [overlay_pics(stack[0], img) for img in stack] merged_reg = [overlay_pics(reg_stack[0], img) for img in reg_stack] fig, ax = plt.subplots(nrows=2, ncols=3, figsize=(8, 5)) plt.gray() ax[0, 0].imshow(merged[0]) ax[0, 0].axis('off')
def check_test_stack_shape_length_test(): stack = data.test_stack() assert len(stack.shape) == 3
def main_size_test(): stack = data.test_stack() reg_stack = registration.main(stack) assert stack.shape == reg_stack.shape
def main_test(): stack = data.test_stack() registration.main(stack)
def check_test_stack_shape_test(): stack = data.test_stack() assert stack.shape == (3, 1040, 1388)
def overlay_pics_test(): stack = data.test_stack() src = stack[0] dst = stack[1] registration.overlay_pics(src, dst)
def load_test_stack_test(): data.test_stack()
def check_test_stack_shape_length_test(): stack = data.test_stack() assert len(stack.shape) == 3
def reg_iter_function_test(): stack = data.test_stack() reg_stack = registration.reg_iter(stack) if np.array_equal(stack[0], reg_stack[1]): assert False
def reg_iter_function_test(): stack = data.test_stack() reg_stack = registration.reg_iter(stack)
def load_test_stack_test(): data.test_stack()
def check_that_src_dst_are_not_equal_test(): stack = data.test_stack() src = stack[0] dst = stack[1] if np.array_equal(src, dst): assert False
def check_test_stack_shape_test(): stack = data.test_stack() assert stack.shape == (3, 1040, 1388)
def reg_function_test(): stack = data.test_stack() src = stack[0] dst = stack[1] registration.reg(src, dst)