RGB 图像修改为什么要改三组数?
请看下方python代码 “img.putpixel((i,j),(234,53,57,255))” RGB不不是一共三个值么?这一行要将特定像素改成大红色,为什么会出现四组数?为什么不是改三组数?
这段代码在处理比较大的图片(1024*168像素)处理完以后CPU释放了。但是内存没有释放,请问是为什么?应该如何让程序执行完以后释放内存?
from PIL import Image
i = 1
j = 1
img = Image.open("e:/pic/222.jpg")#读取系统的内照片
print (img.size)#打印图片大小
print (img.getpixel((4,4)))
width = img.size[0]#长度
height = img.size[1]#宽度
for i in range(0,width):#遍历所有长度的点
for j in range(0,height):#遍历所有宽度的点
data = (img.getpixel((i,j)))#打印该图片的所有点
print (data)#打印每个像素点的颜色RGBA的值(r,g,b,alpha)
print (data[0])#打印RGBA的r值
if (data[0]>=170 and data[1]>=170 and data[2]>=170):#RGBA的r值大于170,并且g值大于170,并且b值大于170
img.putpixel((i,j),(234,53,57,255))#则这些像素点的颜色改成大红色
img = img.convert("RGB")#把图片强制转成RGB
img.save("e:/pic/testee1.jpg")#保存修改像素点后的图片
————————————————
版权声明:本文为CSDN博主「徐为波」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xwbk12/java/article/details/78998196
转自链接:https://learnku.com/python/t/46359
版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接。
推荐文章: