介绍
介绍
Python处理图像有几个常用的库,包括Pillow、Matplotlib、OpenCV,今天童鞋们就跟着福哥对这三种库进行一个初步了解吧。
我们先学习这三个库的安装方法,再学习这三个库的基本使用方法,大家可以根据实际情况进行选择。
安装
安装pillow库
通过pip工具安装pillow
pip install pillow
安装matplotlib库
通过pip工具安装matplotlib,这个库依赖库很多,需要多等一会儿
pip install matplotlib
安装opencv库
通过pip工具安装opencv库,如果直接安装opencv-python会得到错误信息
Getting requirements to build wheel ... error
这是因为python2.7和最新版本的opencv是不兼容的,最后一个兼容的opencv的版本是4.2.0.32
pip install opencv-python==4.2.0.32
使用Pillow
打开图片
使用open方法打开一张图片
from PIL import Image im = Image.open("demo.jpg") im.show()
查看图片基本信息
查看图片信息
from PIL import Image im = Image.open("demo.jpg") print ("格式:" + im.format) print ("尺寸:" + str(im.size)) print ("模式:" + im.mode)
使用Matplotlib
打开图片
使用matplotlib.image和matplotlib.pyplot来打开一张图片
import matplotlib.image as pltImage import matplotlib.pyplot as pltPlot im = pltImage.imread("demo.jpg") pltPlot.imshow(im) pltPlot.waitforbuttonpress(0)
使用OpenCV
打开图片
使用cv2打开一张图片
import cv2 im = cv2.imread("demo.jpg") cv2.imshow("image", im) cv2.waitKey(0)
总结
今天我们和福哥学会了python的三大图片库包的基本使用技巧,大家会发现这三种库的代码各不相同,为什么同样是打开一张图片的操作代码会差这么多呢?这是因为这三种库包的适用场景是不一样的,福哥一一介绍给童鞋们。
首先Pillow可以理解会专业的图片处理、加工的库包,可以完成诸如:图片缩放、图片滤镜、图片类型、屏幕截图等等操作,有了pillow基本可以用代码模拟PS软件的操作了。
其次Matplotlib是用来做专业的图表的,可以看到通过matplotlib打开图片都会有图表的X轴和Y轴的刻度,如果我们要显示一张曲线图、柱状图、饼图等等专业的图表,就需要用到matplotlib库了。
最后是OpenCV库,大家可以发现opencv库和pillow库打开一张图片的方式是不一样的,opencv是使用python内建的UI库绘制的窗口显示的图片,而pillow则是使用系统默认的图片浏览器显示的图片。