赞
踩
目录
# 引用图片库
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')
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。