diff --git a/merger/MergeMasked.py b/merger/MergeMasked.py index 5ae036c..2579d2d 100644 --- a/merger/MergeMasked.py +++ b/merger/MergeMasked.py @@ -173,9 +173,9 @@ def MergeMaskedFace (predictor_func, predictor_input_shape, cfg, frame_info, img if 'seamless' not in cfg.mode and cfg.color_transfer_mode != 0: if cfg.color_transfer_mode == 1: #rct - prd_face_bgr = imagelib.reinhard_color_transfer ( np.clip( prd_face_bgr*255, 0, 255).astype(np.uint8), - np.clip( dst_face_bgr*255, 0, 255).astype(np.uint8), - source_mask=prd_face_mask_area_a, target_mask=prd_face_mask_area_a) + prd_face_bgr = imagelib.reinhard_color_transfer ( np.clip( prd_face_bgr*prd_face_mask_area_a*255, 0, 255).astype(np.uint8), + np.clip( dst_face_bgr*prd_face_mask_area_a*255, 0, 255).astype(np.uint8), ) + prd_face_bgr = np.clip( prd_face_bgr.astype(np.float32) / 255.0, 0.0, 1.0) elif cfg.color_transfer_mode == 2: #lct prd_face_bgr = imagelib.linear_color_transfer (prd_face_bgr, dst_face_bgr) @@ -248,11 +248,8 @@ def MergeMaskedFace (predictor_func, predictor_input_shape, cfg, frame_info, img if 'seamless' in cfg.mode and cfg.color_transfer_mode != 0: if cfg.color_transfer_mode == 1: - face_mask_a = cv2.warpAffine( img_face_mask_a, face_mat, (output_size, output_size) )[...,None] - - out_face_bgr = imagelib.reinhard_color_transfer ( (out_face_bgr*255).astype(np.uint8), - (dst_face_bgr*255).astype(np.uint8), - source_mask=face_mask_a, target_mask=face_mask_a) + out_face_bgr = imagelib.reinhard_color_transfer ( (out_face_bgr*prd_face_mask_area_a*255).astype(np.uint8), + (dst_face_bgr*prd_face_mask_area_a*255).astype(np.uint8) ) out_face_bgr = np.clip( out_face_bgr.astype(np.float32) / 255.0, 0.0, 1.0) elif cfg.color_transfer_mode == 2: #lct out_face_bgr = imagelib.linear_color_transfer (out_face_bgr, dst_face_bgr)