图像处理库PIL与OpenCV
多数图像处理与操作技术可以被两个库有效完成,它们是Python 图形库 (Python Imaging Library,PIL) 与 开源计算机视觉 (OpenSource Computer Vision,OpenCV)。
Python 图形库
Python Imaging Library ,或者叫PIL,简略来说, 是Python图像操作的核心库。不幸的是,它的开发陷入了停滞,最后一次更新是2009年。
幸运的是,存在一个活跃的PIL开发分支,叫做 Pillow 它很容易安装,运行在各个操作系统上,而且支持Python3。
###安装
$ pip install Pillow
###例子
from PIL import Image, ImageFilter
#读取图像
im = Image.open( 'image.jpg' )
#显示图像
im.show()
#过滤图像
im_sharp = im.filter( ImageFilter.SHARPEN )
#保存过滤过的图像到文件中
im_sharp.save( 'image_sharpened.jpg', 'JPEG' )
#分解图像到三个RGB不同的通道(band)中。
r,g,b = im_sharp.split()
PIL中所涉及的基本概念
通道(bands)、模式(mode)、尺寸(size)、坐标系统(coordinate system)、调色板(palette)、信息(info)和滤波器(filters)。
- 通道(bands)
每张图片都是由一个或者多个数据通道构成。PIL允许在单张图片中合成相同维数和深度的多个通道。
以RGB图像为例,每张图片都是由三个数据通道构成