python简易图片处理(1):打开\显示\保存图片

时间:2022-10-23 20:56:30

一提到数字图像处理,可能大多数人会想到matlab,但是matlab有自身的一些缺点:
1.不开源,价格贵;
2.软件容量大。一般3GB以上,高版本甚至达到5GB以上。
3.只易做研究,不易转化成软件。

因此,我倾向于学习python来进行图像的处理工作。要使用python,首先要先安装python,一般是在2.7版本以上,不管是在windows系统,还是在linux系统,安装工作都是非常简单的。

我们要使用python进行各种开发,就必须安装对应的库或者。就像我们在matlab里安装的工具箱(toolbox)一样。安装这些库,一般使用pip。

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

pip install Pillow

因为我安装了Anaconda,所以省去了这一步。关于Anaconda,会在后续有一节写一个专题。
用pip list 查看Anaconda里面已经有的安装包,发现已经有Pillow。
(后面不再赘述这一条件)

一图片的打开和显示

from PIL import Image
img=Image.open('e:/a.png')
img.show()

虽然使用的是Pillow,但是它是由PIL fork而来,因此还是要从PIL中进行import。使用open()函数来打开图片,使用show()函数来显示图片。
python简易图片处理(1):打开\显示\保存图片

上述方法有些时候不太方便,因此我们也可以使用上另一种方式,让程序来绘制图片。

from PIL import Image
import matplotlib.pyplot at plt
img=Image.open('e:/a.png')
plt.figure("a")
plt.imshow(img)
plt.show()

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

matplotlib可以直接安装

pip install matplotlib

python简易图片处理(1):打开\显示\保存图片

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

plt.axis('off')

python简易图片处理(1):打开\显示\保存图片

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

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

显示结果为:
(690, 1226)
RGB
JPEG

二图片的保存

img.save('e:/b.jpg')

就一行代码,这行代码不仅能够保存图片,还能转换格式。如这次就由原来的png格式保存为jpg格式。