4.应用奇怪值分化枷⒚扭转部分。可以在维诽谤科上看到关于解决正交 Procrustes 问题的细节。
5.应用仿射变换矩阵返回完全的转化。
其结不雅可以插入 OpenCV 的 cv2.warpAffine 函数,将图像二映射到图像一:
- def warp_im(im, M, dshape):
- output_im = numpy.zeros(dshape, dtype=im.dtype)
- cv2.warpAffine(im,
- M[:2],
- (dshape[1], dshape[0]),
- dst=output_im,
- borderMode=cv2.BORDER_TRANSPARENT,
- flags=cv2.WARP_INVERSE_MAP)
- return output_im
对齐结不雅如下:
3.校订第二张图像的色彩
如不雅我们试图直接覆盖面部特点,很快会看到这个问题:
这个问题是两幅图像之间不合的肤色和光线造成了覆盖区域的边沿不持续。我们试着修改:
- COLOUR_CORRECT_BLUR_FRAC = 0.6
- LEFT_EYE_POINTS = list(range(42, 48))
- RIGHT_EYE_POINTS = list(range(36, 42))
- def correct_colours(im1, im2, landmarks1):
- blur_amount = COLOUR_CORRECT_BLUR_FRAC * numpy.linalg.norm(
- numpy.mean(landmarks1[LEFT_EYE_POINTS], axis=0) -
- numpy.mean(landmarks1[RIGHT_EYE_POINTS], axis=0))
- blur_amount = int(blur_amount)
- if blur_amount % 2 == 0:
- blur_amount += 1
- im1_blur = cv2.GaussianBlur(im1, (blur_amount, blur_amount), 0)
推荐阅读
全平易近充电节 | 3月26日~30日 2000位IT行业拭魅战专家邀请你一路充电进修! 作为手机阵营的两大年夜巨擘,苹不雅和三星因为一部iPhone X走在了一路,两边都大年夜中获得了本身想要的器械>>>详细阅读
地址:http://www.17bianji.com/lsqh/40825.html
1/2 1