图像过滤器

from PIL import Image
#图像过滤处理
'''
对图像进行过滤处理需要获取图像的像素值。图像的像素值可以通过Image类的getdata
方法和getpixel方法获得。所得到的像素信息在数值上是以0 -255的整数表示,
按照R (红色)、G (绿色)、B (蓝色)的顺序依次排列,整体作为-一个元组。下面
的源代码展示了打开当前目录下python.jpg的文件,将该图像的像素进行取反后,保
存为python_ filter.jpg的功能。
getdata方法返回一个能够访问图像所有像素的迭代器。在本例中就是取出每一
个像素并进行取反(用255减去该值)。当所有像素值取值完毕后,使用putdata方法
将原本Image类对象保存的像素值进行替换。该源代码运行输出后的图像如下所示。

'''
def main():
    #获取打开图片
    image=Image.open('python.png')
    buffer=[]
    for pixel in image.getdata():
        buffer.append((
            255 - pixel[0],
            255 - pixel[1],
            255 - pixel[2],))
    image.putdata(buffer)

    image.save('python_filter.jpg')

if __name__ == '__main__':
    main()

 

转载于:https://www.cnblogs.com/liangliangzz/p/10226110.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值