pythonPIL图像处理图像处理
Image读出来的是PIL的类型,而skimage.io读出来的数据是numpy格式的
输出可以看出Img读图片的大小是图片的(width, height);而skimage的是(height,width, channel), [这也是为什么caffe在单独测
试时要要在代码中设置:transformer.set_transpose('data',(2,0,1)),因为caffe可以处理的图片的数据格式是
(channel,height,width),所以要转换数据]
Img读出来的图片获得某点像素用getpixel((w,h))可以直接返回这个点三个通道的像素值
skimage读出来的图片可以直接img_file2[0][0]获得,但是一定记住它的格式,并不是你想的(channel,height,width)
在图片上面加文字
图片信息
如果我们想知道一些skimage图片信息
PIL image 查看图片信息,可用如下的方法
使用python进行数字图片处理,还得安装Pillow包。虽然python里面自带一个PIL(python images library), 但这个库现在已经
停止更新了,所以使用Pillow, 它是由PIL发展而来的。
pil能处理的图片类型
pil可以处理光栅图片(像素数据组成的的块)。
通道
一个图片可以包含一到多个数据通道,如果这些通道具有相同的维数和深度,Pil允许将这些通道进行叠加
坐标
Pil采取左上角为(0,0)的坐标系统
图片的打开与显示
虽然使用的是Pillow,但它是由PIL fork而来,因此还是要从PIL中进行import. 使用open()函数来打开图片,使用show()函数来
显示图片。
这种图片显示方式是调用操作系统自带的图片浏览器来打开图片,有些时候这种方式不太方便,因此我们也可以使用另上一种
方式,让程序来绘制图片。
这种方法虽然复杂了些,但推荐使用这种方法,它使用一个matplotlib的库来绘制图片进行显示。matplotlib是一个专业绘图的
库,相当于matlab中的plot,可以设置多个figure,设置figure的标题,甚至可以使用subplot在一个figure中显示多张图片。
matplotlib 可以直接安装.
figure默认是带axis的,如果没有需要,我们可以关掉
图像加标题
--------------------------------------------------------------------------------
matplotlib标准模式
--------------------------------------------------------------------------------
PIL image 查看图片信息,可用如下的方法
图片的保存
就一行代码,非常简单。这行代码不仅能保存图片,还是转换格式,如本例中,就由原来的png图片保存为了jpg图片。
- 1
- 2
前往页