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

二、 采样、傅里叶变换与卷积

1.采样

对图像像素的选择或拒绝,一种空间操作。(上采样或下采样来增大或缩小图像)

1.1 上采样

方法:(1)聚合值:Image.NEAREST(最近邻导致图像质量差)
(2)双线性(Image.BILINEAR)或三次插值(Image.BICUBIC)的像素领域的内插值

1.2 下采样

方法:(1)以系统的方式从较大的图像中删除一些像素
(2)计算新的像素值并将其作为原始图像中相应多个像素的聚合值
抗混叠:Image.ANTIALIAS rescale()函数

1.3 PIL量化

信噪比:图像数组的均值除以图像数组的标注差。通过signaltonoise()函数获取
信噪比越高,图像质量越好

2.离散傅里叶变换

2.1 FFT的scipy.ffpack模块

fft2()/ifft2()函数计算DFT/IDFT

2.2 绘制频谱图

freq2=fp.ffshit(freq)
pylab.figure(figsize=(10,10),pylab,imshow((20*np.log10(0.1+freq2)).astype(int))
pylab.show()

2.3 FFT的numpy.fft模块

计算DFT的幅值和相位:将图像作为输入,利用fft2()得到傅里叶系数的实分量和虚分量;然后计算幅值、频谱和相位,最后利用ifft2()重建图像。

3.卷积

卷积是对两幅图像进行操作的运算:一幅是输入图像;另一幅图像是作为输入图像的滤波器而产生输出图像的掩膜
作用:在图像上使用合适的核实现各种效果,以及在边缘检测等操作中实现各种效果。

3.1使用Scipy信号模块的convolve2d函数进行卷积

(1)对灰度图像应用卷积:通过卷积拉普拉斯核检测灰度图像的边缘,然后用box核模糊图像。
(2)彩色图像的卷积:使用scipy.convolve2d()锐化彩色图像,使用emboss核和schar边缘检测复杂核对图像进行卷积。

3.2使用Scipy中的ndimage.convolve函数进行卷积

使用函数直接锐化RGB图像而不需要对每个图像通道分别进行卷积

你可能感兴趣的:(笔记,python,图像处理,开发语言)