def test_solution_close_to_original_implementation(self):
image = cv2.imread('testdata/source.png', cv2.IMREAD_COLOR) / 255.0
scribles = cv2.imread('testdata/scribbles.png', cv2.IMREAD_COLOR) / 255.0
alpha = closed_form_matting.closed_form_matting_with_scribbles(image, scribles)
foreground, background = solve_foreground_background(image, alpha)
matlab_alpha = cv2.imread('testdata/matlab_alpha.png', cv2.IMREAD_GRAYSCALE) / 255.0
matlab_foreground = cv2.imread('testdata/matlab_foreground.png', cv2.IMREAD_COLOR) / 255.0
matlab_background = cv2.imread('testdata/matlab_background.png', cv2.IMREAD_COLOR) / 255.0
sad_alpha = np.mean(np.abs(alpha - matlab_alpha))
sad_foreground = np.mean(np.abs(foreground - matlab_foreground))
sad_background = np.mean(np.abs(background - matlab_background))
self.assertLess(sad_alpha, 1e-2)
self.assertLess(sad_foreground, 1e-2)
self.assertLess(sad_background, 1e-2)
评论列表
文章目录