众所周知,ps是图片界大牛,但是程序员心理就想了,你ps能做的,我是不是可以写一个程序做和你一样的工作
问题?
当你女朋友让你修照片的时候,如果你再不回ps 的时候,那么你是不是今晚就要跪键盘了..
但是有一些程序员仅仅用了几行代码就搞定了
下面小编想大家介绍如何使用代码进行修图
用Python+Pillow操作图像
Pillow是由从著名的Python图像处理库PIL发展出来的一个分支,通过Pillow可以实现图像压缩和图像处理等各种操作。可以使用下面的命令来安装Pillow。
pip install pillow
Pillow中最为重要的是Image类,读取和处理图像都要通过这个类来完成。
>>> from PIL import Image
>>>
>>> image = Image.open('./res/guido.jpg')
>>> image.format, image.size, image.mode
('JPEG', (500, 750), 'RGB')
>>> image.show()
修图的第一步
1.剪裁图像
>>> image = Image.open('./res/guido.jpg')
>>> rect = 80, 20, 310, 360
>>> image.crop(rect).show()
就留下你最好看的头
2.生成缩略图
>>> image = Image.open('./res/guido.jpg')
>>> size = 128, 128
>>> image.thumbnail(size)
>>> image.show()
3.缩放和黏贴图像
>>> image1 = Image.open('./res/luohao.png')
>>> image2 = Image.open('./res/guido.jpg')
>>> rect = 80, 20, 310, 360
>>> guido_head = image2.crop(rect)
>>> width, height = guido_head.size
>>> image1.paste(guido_head.resize((int(width / 1.5), int(height / 1.5))), (172, 40))
移形换影
4.旋转和翻转
>>> image = Image.open('./res/guido.png')
>>> image.rotate(180).show()
>>> image.transpose(Image.FLIP_LEFT_RIGHT).show()
我就是俺们村最靓的仔
5.操作像素
>>> image = Image.open('./res/guido.jpg')
>>> for x in range(80, 310):
... for y in range(20, 360):
... image.putpixel((x, y), (128, 128, 128))
...
>>> image.show()
我的头呢??
6.终极技能滤镜效果
>>> from PIL import Image, ImageFilter
>>>
>>> image = Image.open('./res/guido.jpg')
>>> image.filter(ImageFilter.CONTOUR).show()
我真美 ....
总结,
程序员用什么修图不重要,重要的是能把女朋友哄开心了,这才是关键.
。