Pillow-优秀的Python图像处理库安装及入门教程

Pillow-优秀的Python图像处理库安装及入门教程

Pillow库是Python 图像处理库(Python image library)的一个派生分支,提供了广泛的文件格式(BMP,PNG,JPEG等)支持,提供基本的图像处理能力,如:

图像存储、图像显示、改变图像大小,旋转图像,图像格式转换,色场空间转换,图像增强,直方图处理,插值和滤波等等。

比起OpenCV库的图像处理,功能有限,但函数使用非常方便,大多数开发者都会把OpenCV库和Pillow库结合使用。

Pillow库的下载

https://www.lfd.uci.edu/~gohlke/pythonlibs/ 网站   下载 Pillow-8.0.1-cp39-cp39-win_amd64.whl(根据你的Python 环境)

Pillow库的安装

pip install Pillow-8.0.1-cp39-cp39-win_amd64.whl

Pillow-优秀的Python图像处理库安装及入门教程

Pillow库的使用

from PIL import Image
PIL_Image=Image.open("./2019.png")
print(PIL_Image.format,PIL_Image.size,PIL_Image.mode)
PIL_Image.show()
PIL_Image.save('./2020.png')

功能:打开图片、输出图像信息,显示图像,保存图像

注意:

Pillow中的Image.save()方法,使用默认参数保存jpg图片,发现图片被压缩的很严重,导致原来很大的大小变成几十K。

这是因为在保存为jpg的过程中,内部使用压缩算法对图片进行的压缩处理。

但是有些时候往往需要图片的大小不能变化太大或不能太小。所以在使用此方式时可以加入参数:

imObj.save(img_name, quality=95)

quality参数: 保存图像的质量,值的范围从1(最差)到95(最佳)。 默认值为75,使用中应尽量避免高于95的值; 100会禁用部分JPEG压缩算法,并导致大文件图像质量几乎没有任何增益。

使用此参数后,图片大小会增加。如果图片的大小还不能满足你的需求,是否还有其他方式去增加图片大小呢?

save方法还有一个可以配合quality使用的参数,能够大大增加图片大小:

imObj.save(new_name, quality=95, subsampling=0)

subsampling参数:子采样,通过实现色度信息的分辨率低于亮度信息来对图像进行编码的实践。

(参考:https://en.wikipedia.org/wiki/Chroma_subsampling)

可能的子采样值是0,1和2,对应于4:4:4,4:2:2和4:1:1(或4:2:0?)。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/9031.html

(0)
江山如画的头像江山如画管理团队
上一篇 2020年12月7日 下午2:45
下一篇 2020年12月8日 上午10:48

99%的人还看了以下文章

  • 如何用R语言绘制散点图

    这篇文章主要介绍了如何用R语言绘制散点图,帮助大家更好的理解和学习使用R语言,感兴趣的朋友可以了解下

    2022年8月9日 编程开发
    5710
  • Python数据分析及可视化,科学计算练习题

    第一章 单元测试 1、 问题:数据分析是指通过分析手段、方法和技巧对准备好的数据进行探索、分析,从中发现因果关系、内部联系和业务规则,为商业提供决策参考。( )选项:A:对B:错答案: 【对】 2、 问题:Anaconda中包含了conda、Python在内的超过18个科学包及其依赖项。( )选项:A:对B:错答案: 【对】 3、 问题:数据分析是一个有目的…

    2022年1月29日
    7.1K1
  • 图的全部知识点、考点梳理-数据结构

    讲解了图的15条相关定义,图的表示方法、最小生成树、普里姆(Prim)算法、克鲁斯卡尔(Kruskal)算法、最短路径、迪杰斯特拉算法、弗洛伊德算法、拓扑排序、AOE 网(关键路径),邻接矩阵和邻接表的比较。

    2020年10月14日
    2.0K0
  • Java常见面试题200+,学习、面试必备

    本套Java面试题,选取了企业面试最常问到的问题,可以做为Java工程师的面试宝典,也可以做为想要不断完善和扩充自己 java 技术的学习者。 主要包含: Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Myb…

    2019年8月29日
    3.9K0
  • Robotstudio示教编程与仿真运行教程

    Robotstudio软件中内置的虚拟示教器与真实的工业机器人示教器没有任何区别,对于学习ABB机器人现场示教编程的,可以在基础工作站中进行学习使用。

    2022年5月3日 编程开发
    2.8K0
  • Pandas读取excel:Excel file format cannot be determined解决方法

    Pandas读取excel时报错,excel表格不能被指定,是什么原因? 这个问题我搞了很久,最后终于搞明白了,网上各种什么utf-8呀,格式化或者另存都不行,我都试过了。 Excel file format cannot be determined解决方法 首先要确定excel已经放在项目目录下,路径是正确的。 一、然后确保安装了所需要的模块 pip in…

    2022年9月11日
    10.7K0

发表回复

登录后才能评论