阅读桑迪潘·戴伊的《Python图像处理实战》笔记一

一、图像处理入门
1.使用PIL读取、保存和显示图像(Image对象存储)

im=Image.open(‘path’)
im.show()
im_g=im.covert(‘L’)#转换为灰度图像
(1)图像处理
im_c=im.crop(left,top,right,bottom)#裁剪图像
im_xg=im.resize(width,height)#改变图像尺寸
im_t=im.point(lambda x: 255-x)#图像负片
im.transpone(Image,FLIP_RIGHT).show()#镜像图像(水平或垂直)
im.rotate(45),show()#图像旋转45度角
im.transpone((int(1.4*im.width),im.height),Image.AFFINE,data=(1,-0.5,0,0,1,0)).show()#仿射变换
im.transpone((im.width//3,im.height),Image.PERSPECTIVE,params=[1,0.1,0,-0.1,0.5,0,-0.005, -0.001],Image.BICUBIC).show()#透视变换
im.putpixel()#更改图像的像素值
draw = ImageDraw.Draw(im)    draw.ellipse()#绘制图形
draw.text()#添加文本
im_thumbnail.thumbnail()#创建缩略图
s=stat.Stat(im)#计算图像的基本统计信息
pl=im.histogram()#绘制图像RGB通道像素值的直方图
ch_r,ch_g,ch_b=im.split()#分离图像的RGB通道
im=Image.merge(‘RGB’,( ch_r,ch_g,ch_b))#合并图像的多个通道
im=Image.blend()#两幅图像的α-混合
multiply(im1,im2).show()#两幅图像叠加
add(im1,im2).show()#两幅图像相加
im=difference(im1,im2) #计算两幅图像之间的差值

2.使用matplotlib读取、保存和显示图像(浮点numpy ndarray)

im=mping.imread(‘path’)
plt.imshow(im)     plt.show()#显示
plt.savefig(‘’)#保存图像

3.使用scikit-image读取、保存和显示图像(numpy ndarray数据结构存储)

im= imread(‘path’)
hsv=color.rgb2hsv(im)#RGB->HSV  hsv2rgb: HSV ->RGB
imshow(im)  show()#显示
imsave (‘’)#保存图像
viewer=viewer.ImageViewer(im)#在弹出的窗口中显示图像
viewer.show()
im=Image.fromarray(im)# numpy ndarray转换为PIL

(1)图像处理

wraped=wrap()#反向扭曲和几何变换
swired=swirl()#应用旋流变换
noisy=random_noise()#在图像中添加随机高斯噪声

4.使用Scipy读取、保存和显示图像

im= imageio.imread(‘path’)
hsv=color.rgb2hsv(im)#RGB->HSV  hsv2rgb: HSV ->RGB
plt.imshow(im)  plt.show()#显示

5.图像类型
(1)单通道图像,包括:二值图像、灰度图像
(2)多通道图像,包括:三通道图像:RGB图像、HSV图像;四通道图像:RGBA图像

你可能感兴趣的:(笔记,python,图像处理,matplotlib)