查看图片RGB数值,修改图片RGB数值:
getpixel((i, j))和putpixel((x,y),(128,128,128))
from PIL import Image
import numpy
import cv2
import os
def got_RGB(img_path,file_path):
img = Image.open(img_path)
width, height = img.size
img = img.convert('RGB')
array = []
fw = open(file_path, "w")
for i in range(width):
for j in range(height):
r, g, b = img.getpixel((i, j))
if r != 0:
print(r, b, g)
r1=str(r)
b1=str(b)
g1=str(g)
fw.write(r1+g1+b1+'\n')
rgb = (r, g, b)
array.append(rgb)
fw.close()
def set_RGB(img_path):
im = Image.open(img_path)
im2= Image.new("RGB",im.size)
for y in range(im.size[1]):
for x in range(im.size[0]):
pix = im.getpixel((x,y))
if(pix[0]==255 or pix[0]==0):
im2.putpixel((x,y),pix)
if(pix[0]!=255 and pix[0]!=0 and pix[0]<50):
im2.putpixel((x,y),(128,128,128))
#im2.putpixel((x,y),pix)
im2.show()
save_path="0.png"
im2.save(save_path)
if __name__ == "__main__":
img_path = r""#图像路径
filename=r"./color.txt"#RGB数值存入文件
#set_RGB(img_path)
got_RGB(newimg_path,filename)