Pillow(PIL)入门教程(非常详细)_python pillow 教程

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
img

正文

im.show()


图像显示结果如下:


![pillow image类使用](https://img-blog.csdnimg.cn/img_convert/27e1ff8d3a5dba6a659136a1978e87c9.png)  
 图1:显示结果


### new()


使用 Image 类提供的 new() 方法可以创建一个新的 Image 对象,语法格式如下:



im=Image.new(mode,size,color)


参数说明如下:


* mode:图像模式,字符串参数,比如 RGB(真彩图像)、L(灰度图像)、CMYK(色彩图打印模式)等;
* size:图像大小,元组参数(width, height)代表图像的像素大小;
* color:图片颜色,默认值为 0 表示黑色,参数值支持(R,G,B)三元组数字格式、颜色的十六进制值以及颜色英文单词。


示例如下:



#使用颜色的十六进制格式
im_1=Image.new(mode=‘RGB’,(260,100),color=“#ff0000”)
im_1.show()


输出图像如下所示:


![pillow new()](https://img-blog.csdnimg.cn/img_convert/d3101f526ffab7e1cbad9260c0016f5b.gif)  
 图2:显示结果


## Pillow Image对象属性


Image 对象有一些常用的基本属性,这些属性能够帮助我们了解图片的基本信息,下面对这些属性做简单的讲解:


##### 1) size:查看图像的尺寸



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
#打印image对象
print(im)
#查看尺寸
print(“宽是%s高是%s”%(im.width,im.height))
#或者通过size查看
print(“图像的大小size:”,im.size)


输出结果:



<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=455x191 at 0x381C750>
宽是455高是191
图像的大小size: (455, 191)


##### 2) format:查看图片的格式



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
print(“图像的格式:”,im.format)


输出结果:



图像的格式: PNG


##### 3) readonly:图片是否为只读



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
print(“图像是否为只读:”,im.readonly)


该属性的返回为 0 或者 1,分别对应着是和否,输出结果如下:



图像是否为只读: 1


##### 4) info:查看图片相关信息



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)

包括了每英寸像素点大小和截图软件信息

print(“图像信息:”,im.info)


该属性的返回值为字典格式,输出结果如下:



图像信息: {‘dpi’: (96, 96), ‘Software’: ‘Snipaste’}


##### 5) mode:图像模式



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
print(“图像模式信息:”,im.mode)


输出结果:



图像的模式: RGBA


上述涉及了许多图片模式的名称,比如 RGB、RGBA 等,下面对常用的图片模式做简单的总结,如下表所示:




| mode | 描述 |
| --- | --- |
| 1 | 1 位像素(取值范围 0-1),0表示黑,1 表示白,单色通道。 |
| L | 8 位像素(取值范围 0 -255),灰度图,单色通道。 |
| P | 8 位像素,使用调色板映射到任何其他模式,单色通道。 |
| RGB | 3 x 8位像素,真彩色,三色通道,每个通道的取值范围 0-255。 |
| RGBA | 4 x 8位像素,真彩色+透明通道,四色通道。 |
| CMYK | 4 x 8位像素,四色通道,可以适应于打印图片。 |
| YCbCr | 3 x 8位像素,彩色视频格式,三色通道。 |
| LAB | 3 x 8位像素,L \* a \* b颜色空间,三色通道 |
| HSV | 3 x 8位像素,色相,饱和度,值颜色空间,三色通道。 |
| I | 32 位有符号整数像素,单色通道。 |
| F | 32 位浮点像素,单色通道。 |


## Pillow图片格式转换


Pillow 库支持多种图片格式,您可以直接使用 open() 方法来读取图片,并且无须考虑图片是何种类型。同时,Pillow 能够很轻松地实现图片格式之间的转换。


图片格式之间的转换主要有以下两种方法,下面分别对它们进行了介绍:


### save()


顾名思义,save() 方法用于保存图像,当不指定文件格式时,它会以默认的图片格式来存储;如果指定图片格式,则会以指定的格式存储图片。save() 的语法格式如下:



Image.save(fp, format=None)


参数说明如下:


* fp:图片的存储路径,包含图片的名称,字符串格式;
* format:可选参数,可以指定图片的格式。


示例如下:



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
im.save(‘C:/Users/Administrator/Desktop/c.biancheng.net.bmp’)


此时您的计算机桌面上会存在一个 c.bianchneg.net.BMP格式的图片。


### convert()+save()


注意,并非所有的图片格式都可以用 save() 方法转换完成,比如将 PNG 格式的图片保存为 JPG 格式,如果直接使用 save() 方法就会出现以下错误:



from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
im.save(‘C:/Users/Administrator/Desktop/c.biancheng.net.jpg’)


错误信息如下所示:
  • 14
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值