请编写出一个Pyhton脚本,实现将两张图片按照像素级做“或运算”叠加在一起
时间: 2024-12-10 22:40:14 浏览: 7
为了在Python中实现两张图片按照像素级的“或运算”叠加,你可以使用PIL(Python Imaging Library)或者其更新版本Pillow库。以下是一个简单的示例脚本:
```python
from PIL import Image
# 打开并加载两张图片
img1 = Image.open('image1.jpg')
img2 = Image.open('image2.jpg')
# 确保两张图片尺寸一致,如果不一致,可以先调整大小
if img1.size != img2.size:
img1 = img1.resize(img2.size)
img2 = img2.resize(img1.size)
# 将两张图片合并成一个新的Image,使用“or”操作
combined_img = Image.new("RGB", img1.size, (0, 0, 0)) # 创建一个全黑的新图像
for x in range(img1.width):
for y in range(img1.height):
pixel1 = img1.getpixel((x, y))
pixel2 = img2.getpixel((x, y))
combined_img.putpixel((x, y), tuple(p + q for p, q in zip(pixel1, pixel2)))
# 保存结果
combined_img.save('merged_image.jpg')
```
这个脚本首先打开两个图片文件,然后检查它们是否大小一致。如果不一致,它会调整图片大小以便能进行像素级别的比较。接着创建一个新的全黑图像,通过遍历每个像素点,对两张图片的对应像素进行“或”运算,并把结果存入新的图像。最后,将合成后的图像保存。
阅读全文