python把图片黑色变成白色的代码
时间: 2023-11-08 13:06:03 浏览: 35
以下是将图片黑色变白色的Python代码:
```python
from PIL import Image
# 打开图片
img = Image.open('image.jpg')
# 获取图片的宽和高
width, height = img.size
# 遍历每个像素点,将黑色像素变为白色
for x in range(width):
for y in range(height):
r, g, b = img.getpixel((x, y))
if r == 0 and g == 0 and b == 0: # 判断是否为黑色像素
img.putpixel((x, y), (255, 255, 255)) # 将黑色像素变为白色
# 保存修改后的图片
img.save('new_image.jpg')
```
希望能够帮到你。
相关问题
python 把图片内黑色部分变成白色的代码
以下是可以将图片黑色部分变为白色的 Python 代码:
```python
from PIL import Image
# 打开原始图片
img = Image.open("original_image.jpg")
# 转换成灰度图像
gray = img.convert('L')
# 将灰度图像转换成黑白二值化图像
bw = gray.point(lambda x: 0 if x<128 else 255, '1')
# 反转图片颜色(白色变成黑色,黑色变成白色)
inv = bw.convert('L')
inv = ImageOps.invert(inv)
# 显示或保存修改后的图片
inv.show()
inv.save("modified_image.jpg")
```
在这段代码中,首先打开原始图片,然后将图片转换成灰度图像以方便后续处理。接着,将灰度图像转换成黑白二值化图像,其中像素值小于128的设为0(黑色),大于等于128的设为255(白色)。然后将二值化图像的颜色反转,即将白色变为黑色,黑色变为白色。最后可以选择显示或保存修改后的图片。
python 把图像中所有非黑色区域变成白色
可以使用OpenCV库来实现这个操作,具体步骤如下:
1. 读入图片并转换为灰度图像。
2. 将灰度图像二值化,将所有非黑色区域设为255(白色),所有黑色区域设为0。
3. 将二值化后的图像取反,即将白色变成黑色,黑色变成白色。
下面是代码示例:
```python
import cv2
# 读入图片并转换为灰度图像
img = cv2.imread('input.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 将灰度图像二值化
_, binary = cv2.threshold(gray, 1, 255, cv2.THRESH_BINARY)
# 将二值化后的图像取反
binary = cv2.bitwise_not(binary)
# 显示结果并保存
cv2.imshow('result', binary)
cv2.imwrite('output.jpg', binary)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
运行后,会将原图中所有非黑色区域变成白色,并保存为output.jpg。