def test_untile_output(self): model = DummyModel() kwargs = {'model_image_shape': (128, 128, 1)} app = Application(model, **kwargs) # No tiling x = np.random.rand(1, 128, 128, 1) tiles, tile_info = app._tile_input(x) y = app._untile_output(tiles, tile_info) self.assertEqual(x.shape, y.shape) # Tiling square x = np.random.rand(1, 400, 400, 1) tiles, tile_info = app._tile_input(x) y = app._untile_output(tiles, tile_info) self.assertEqual(x.shape, y.shape) # Tiling rectangle x = np.random.rand(1, 300, 500, 1) tiles, tile_info = app._tile_input(x) y = app._untile_output(tiles, tile_info) self.assertEqual(x.shape, y.shape) # Smaller than expected x = np.random.rand(1, 100, 100, 1) tiles, tile_info = app._tile_input(x) y = app._untile_output(tiles, tile_info) self.assertEqual(x.shape, y.shape)
def test_tile_input(self): model = DummyModel() kwargs = {'model_mpp': 0.65, 'model_image_shape': (128, 128, 1)} app = Application(model, **kwargs) # No tiling x = np.random.rand(1, 128, 128, 1) y, tile_info = app._tile_input(x) self.assertEqual(x.shape, y.shape) self.assertIsInstance(tile_info, dict) # Tiling square x = np.random.rand(1, 400, 400, 1) y, tile_info = app._tile_input(x) self.assertEqual(kwargs['model_image_shape'][:-1], y.shape[1:-1]) self.assertIsInstance(tile_info, dict) # Tiling rectangle x = np.random.rand(1, 300, 500, 1) y, tile_info = app._tile_input(x) self.assertEqual(kwargs['model_image_shape'][:-1], y.shape[1:-1]) self.assertIsInstance(tile_info, dict) # Smaller than expected x = np.random.rand(1, 100, 100, 1) y, tile_info = app._tile_input(x) self.assertEqual(kwargs['model_image_shape'][:-1], y.shape[1:-1]) self.assertIsInstance(tile_info, dict)