用python处理图片之打开\\显示\\保存图像的方法

作者:denny402 时间:2021-03-16 11:37:08 

一提到数字图像处理,可能大多数人就会想到matlab,但matlab也有自身的缺点:

1、不开源,价格贵

2、软件容量大。一般3G以上,高版本甚至达5G以上。

3、只能做研究,不易转化成软件。

因此,我们这里使用python这个脚本语言来进行数字图像处理。

要使用python,必须先安装python,一般是2.7版本以上,不管是在windows系统,还是linux系统,安装都是非常简单的。

要使用python进行各种开发,就必须安装对应的库。这和matlab非常相似,只是matlab里面叫工具箱(toolbox),而python里面叫库或包。安装这些库,一般都是使用pip来安装。

使用python进行数字图片处理,还得安装Pillow包。虽然python里面自带一个PIL(python images library), 但这个库现在已经停止更新了,所以使用Pillow, 它是由PIL发展而来的。


pip install Pillow

一、图片的打开与显示


from PIL import Image
img=Image.open('d:/dog.png')
img.show()

虽然使用的是Pillow,但它是由PIL fork而来,因此还是要从PIL中进行import. 使用open()函数来打开图片,使用show()函数来显示图片。

这种图片显示方式是调用操作系统自带的图片浏览器来打开图片,有些时候这种方式不太方便,因此我们也可以使用另上一种方式,让程序来绘制图片。


from PIL import Image
import matplotlib.pyplot as plt
img=Image.open('d:/dog.png')
plt.figure("dog")
plt.imshow(img)
plt.show()

这种方法虽然复杂了些,但推荐使用这种方法,它使用一个matplotlib的库来绘制图片进行显示。matplotlib是一个专业绘图的库,相当于matlab中的plot,可以设置多个figure,设置figure的标题,甚至可以使用subplot在一个figure中显示多张图片。matplotlib 可以直接安装


pip install matplotlib

用python处理图片之打开\\显示\\保存图像的方法

figure默认是带axis的,如果没有需要,我们可以关掉


plt.axis('off')

打开图片后,可以使用一些属性来查看图片信息,如


print img.size #图片的尺寸
print img.mode #图片的模式
print img.format #图片的格式

显示结果为:

(558, 450)
RGBA
PNG

二、图片的保存


img.save('d:/dog.jpg')

就一行代码,非常简单。这行代码不仅能保存图片,还是转换格式,如本例中,就由原来的png图片保存为了jpg图片。

来源:http://www.cnblogs.com/denny402/p/5096001.html

标签:python,图片处理
0
投稿

猜你喜欢

  • Python装饰器的应用场景代码总结

    2022-09-22 19:24:54
  • CSS Sprites 样式生成工具 2.0下载

    2009-05-13 12:41:00
  • Python探索之pLSA实现代码

    2022-01-03 11:30:28
  • Golang 实现Socket服务端和客户端使用TCP协议通讯

    2023-07-21 10:09:38
  • 将python包发布到PyPI和制作whl文件方式

    2023-07-29 04:38:03
  • SQL Server导出表到EXCEL文件的存储过程

    2009-01-06 11:24:00
  • 解决使用layui对select append元素无效或者未及时更新的问题

    2024-04-16 09:27:43
  • SQL语句执行超时引发网站首页访问故障问题

    2024-01-29 01:33:27
  • Jquery 切换不同图片示例代码

    2024-04-16 09:31:33
  • Mysql中TIMESTAMPDIFF函数的语法与练习案例

    2024-01-28 18:43:44
  • vue2.0父子组件间通信的实现方法

    2024-04-28 09:20:16
  • Python实现嵌套列表去重方法示例

    2021-01-29 03:56:57
  • PHP5中使用DOM控制XML实现代码

    2023-09-30 09:00:07
  • 解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题

    2023-08-29 17:47:32
  • mysql高效查询left join和group by(加索引)

    2024-01-15 06:07:52
  • mysql中的日期相减的天数函数

    2024-01-20 01:00:51
  • windows下MySQL5.6版本安装及配置过程附有截图和详细说明

    2024-01-13 18:58:56
  • 关于Python正则表达式模块之re模块

    2022-12-31 08:03:46
  • 不成熟的标准化是我们唯一惧怕的

    2008-08-15 18:55:00
  • python实现word 2007文档转换为pdf文件

    2021-05-27 20:57:54
  • asp之家 网络编程 m.aspxhome.com