我一直试图混合两个图像.我正在采用的当前方法是,我获得两个图像的重叠区域的坐标,并且仅在重叠区域中,在添加之前,我与0.5的硬编码α混合.所以基本上我只是从两个图像的重叠区域中取出每个像素的一半值,并添加它们.这并没有给我一个完美的混合,因为alpha值被硬编码为0.5.这是混合3张图片的结果:
如您所见,从一个图像到另一个图像的转换仍然可见.如何获得可以消除这种可见过渡的完美alpha值?或者没有这样的事情,我采取了错误的做法?
这是我目前正在进行混合的方式:
for i in range(3):
base_img_warp[overlap_coords[0], overlap_coords[1], i] = base_img_warp[overlap_coords[0], overlap_coords[1],i]*0.5
next_img_warp[overlap_coords[0], overlap_coords[1], i] = next_img_warp[overlap_coords[0], overlap_coords[1],i]*0.5
final_img = cv2.add(base_img_warp, next_img_warp)
Run Code Online (Sandbox Code Playgroud)
如果有人想试一试,这里有两个扭曲的图像,以及它们重叠区域的面具:http://imgur.com/a/9pOsQ
python opencv alphablending image-processing computer-vision