python图片处理


 

PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。其官方主页为:PIL。 PIL历史悠久,原来是只支持python2.x的版本的,后来出现了移植到python3的库pillow,pillow号称是friendly fork for PIL,其功能和PIL差不多,但是支持python3。

 PIL可以做很多和图像处理相关的事情:

1、图像归档(Image Archives)。PIL非常适合于图像归档以及图像的批处理任务。你可以使用PIL创建缩略图,转换图像格式,打印图像等等。

2、图像展示(Image Display)。PIL较新的版本支持包括Tk PhotoImage,BitmapImage还有Windows DIB等接口。PIL支持众多的GUI框架接口,可以用于图像展示。

3、图像处理(Image Processing)。PIL包括了基础的图像处理函数,包括对点的处理,使用众多的卷积核(convolution kernels)做过滤(filter),还有颜色空间的转换。PIL库同样支持图像的大小转换,图像旋转,以及任意的仿射变换。PIL还有一些直方图的方法,允许你展示图像的一些统计特性。这个可以用来实现图像的自动对比度增强,还有全局的统计分析等。

一、缩略图

代码如下:

from PIL import Image i=Image.open('C:\\Users\\admin\\Desktop\\12.jpg') i.thumbnail(128,128) i.save("xingkong","JPEG")

效果:

二、gif提取

代码如下:

from PIL import Image i=Image.open('C:\\Users\\admin\\Desktop\\14.gif') try: i.save('picframe{:02d}.png'.format(i.tell())) while True: i.seek(i.tell()+1) i.save('picframe{:02d}.png'.format(i.tell())) except: print("处理结束")

效果:

 

 

 

三、美白:

代码如下:

from PIL import Image import numpy as np import cv2 def WhiteBeauty(image,whi): import cv2 image =cv2.imread('C:\\Users\\admin\\Desktop\\16.jfif') white = np.uint8(np.clip((whi * image + 10), 0, 255)) cv2.imshow('bai',white) cv2.waitKey(0) cv2.destroyAllWindows() image =cv2.imread('C:\\Users\\admin\\Desktop\\16.jfif') whi=1.2 WhiteBeauty(image,whi)

效果:

 

四、生成gif:

代码如下:

import PIL.Image as Image def get_gif(pics_dir,n,t=300): imgs = [] for i in range(n): pic_name = '{}/{}.jpg'.format(pics_dir,i) temp = Image.open(pic_name) imgs.append(temp) save_name = '{}.gif'.format(pics_dir) imgs[0].save(save_name, save_all=True, append_images=imgs, duration=t) return save_name if __name__ == '__main__': pics_dir = 'C:\\Users\\admin\\Desktop\\kongfu' save_name = get_gif(pics_dir,7,300) print('制作完成。所属文件:{}'.format(save_name))

效果:

 

 

 

 

 

 

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM