一:Python图像处理类库
1.安装PIL
因为PIL只支持到Python 2.7,而Pillow是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库。我的python又是3.5版本的,所以安装Pillow来进行替代。
在命令行输入以下语句:
pip install Pillow
即可安装完成
2.显示原图和灰度图
用Image.open读取图像,然后用convert()方法实现图像的颜色转换,将图像转换成灰度图像输出
3.拷贝粘贴区域
调用crop()方法,从图像中剪裁指定区域,然后旋转该区域,并调用paste()方法将该区域放回去
4.创建缩略图
设置生成的缩略图的大小size,调用thumbnail()方法,接受参数size,即可将图像转换成指定大小的缩略图
5.调整图像尺寸
调用resize()方法,便可指定新图像的大小
6.旋转图片
调用rotate()方法,图像将会逆时针旋转指定的角度
具体代码和结果如下:
二: Matplotlib库
1.画图、描点和线
调用plot函数,将指定点的坐标位置用红色星状标记,也可将指定点用蓝色实线连接。加上命令axis('off'),便可以隐藏坐标轴
2.图像轮廓和直方图
首先用convert方法将图像灰度化,然后对每一个坐标的像素值加上同一个阈值,得到图像的轮廓。图像的直方图表示图像像素的分布情况,可调用hist()函数绘制,又由于hist()函数只接受一维数组的输入,所以先调用flatten()方法对图像进行压平处理,即转化成一维数组。
三:NumPy库
1.直方图均衡化
直方图均衡化是将图像的灰度值进行归一化,可增强图像的对比度。
首先先下载安装pcv库,在命令行中进入setup.py的根目录,输入python setup.py install 即可
四.Scipy
1.图像模糊
高斯模糊是图像处理操作的一部分,可以用于定义图像尺度、计算兴趣点以及很多其他的应用场合。使用scipy.ndimage.filters模块进行高斯模糊,guassian_filter()函数的最后一个参标表示标准差,也就是图像的模糊程度,标准差越大,处理后的图像细节丢失的越多,也就越模糊。