把两张图不同之处差异显示出来
原讨论帖,
https://bbs.csdn.net/topics/396114473
最后找到了帖子的原帖,
https://www.cnblogs.com/botoo/p/8416315.html
确实只得到一张图,而且显示不太明显,如何能更明显一点呢,想法是把不同之处用红色标出
红点的图再与底图结合一起显示
最终得到
实现的路径是把不同点用黑白方式显示,抽取出红点的地方,取反向,把白色的变透明点,把留下的点变红,并扩大范围(因为不扩大,显示不明显,估计有更好的办法,只是没找到)
然后把比较的一张图当底图,转化为灰度图,把红点的图与底图整合一起。
代码如下:
from PIL import Image
from PIL import ImageChops
#from PIL import ImageEnhance
def compare_images(path_one, path_two, diff_save_location):
"""
比较图片,如果有不同则生成展示不同的图片
@参数一: path_one: 第一张图片的路径
@参数二: path_two: 第二张图片的路径
@参数三: diff_save_location: 不同图的保存路径
"""
image_one = Image.open(path_one)
image_two = Image.open(path_two)
try:
diff = ImageChops.difference