python对比两张图片找不同

该文章已生成可运行项目,

目录

 

第一种

第二种


 

第一种 

# 引用图片库
from PIL import Image
# 打开图片
imgA = Image.open('xxx1.jpg<要对比图片的名称及目录>')
imgB = Image.open('xxx2.jpg<同上>')
# 获取目标图片的大小(也就是长和高的像素)
width, height = imgA.size
# 获取图片每个像素的颜色
for x in range(0, width):
    for y in range(0, height):
        color1 = imgA.getpixel((x, y))
        color2 = imgB.getpixel((x, y))
# 对比两张图片的像素颜色  相同的地方变白,不同的地方变黑
        if color1 == color2:
# 改变像素颜色 | 255.255.255为RBG的白色 0.0.0为黑色
            imgA.putpixel((x, y), (255, 255, 255))
        else:
            imgA.putpixel((x, y), (0, 0, 0))
# 输出对比结果  图片名随意命名
imgA.save('xxx3.jpg')

详细代码如下:

from PIL import Image
imgA = Image.open('xxx1.jpg<要对比图片的名称及目录>')
imgB = Image.open('xxx2.jpg<同上>')
width, height = imgA.size
for x in range(0, width):
    for y in range(0, height):
        color1 = imgA.getpixel((x, y))
        color2 = imgB.getpixel((x, y))
        if color1 == color2:
            imgA.putpixel((x, y), (255, 255, 255))
        else:
            imgA.putpixel((x, y), (0, 0, 0))
imgA.save('xxx3.jpg')

第二种

# 引用PLT库
from PIL import Image
# 使用PLT库中的ImageChops
from PIL import ImageChops
# 打开图片
imgA = Image.open('xxx1.jpg<要对比图片的名称及目录>')
imgB = Image.open('xxx2.jpg<同上>')
# 用ImageChops中的找不同工具,将两张图片放进去 工具会自动找不同
different = ImageChops.difference(imgA, imgB)
# 设置条件|如果图片相同 输出‘两张图片相同’,不同则输出对比结果(图片任意命名)
if different.getbbox() is None:
    print('两张图片相同')
else:
    different.save('xxx3.jpg')

详细代码如下:

from PIL import Image
from PIL import ImageChops
imgA = Image.open('xxx1.jpg<要对比图片的名称及目录>')
imgB = Image.open('xxx2.jpg<同上>')
different = ImageChops.difference(imgA, imgB)
if different.getbbox() is None:
    print('两张图片相同')
else:
    different.save('xxx3.jpg')

 

 

本文章已经生成可运行项目
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丹尼尔先生.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值