图像的幅度谱是另一种图像,幅度谱图像呈现了原始图像在变化方面的一中表示:把图像中最明亮的像素放到图像中央,然后逐渐变暗,在边缘上的像素最暗,这样可以发现图像中有多少量的像素和暗的像素,以及他们的分布百分比
高通滤波器是检测图像的某个区域,然后根据像素和周围像素的亮度差值来提升该像素的亮度的滤波器。
在计算完中央像素和周围临近像素的亮度差值之和以后,如果亮度变化很大,中央像素的亮度会增加(即:如果一个像素比周围的像素更加突出,就会提升他的亮度)
在像素和周围像素的亮度差值小于一个特定的值得时候,平滑改像素的亮度,主要用于去噪和模糊化,比如说,高斯模糊是最常用的模糊滤波器之一,他是一个削弱高频信号强度的低通滤波器。
边缘检测函数会很容易的将噪声错误的识别为边缘,为了缓解这个问题,就是先进性模糊处理:
模糊滤波函数:
blur(),medianBlur(),GaussianBlur()。
medianBlur(),对于取出数字化的视频噪声非常有效,特别是去除彩色图像的噪声
边缘检测函数:
Laplacian() Sobel() Scharr() ,这些滤波函数都会将非边缘区域转换为黑色,边缘区域转为白色或者其他饱和的颜色
检测的步骤:
medianBlur()进行去噪
——》 将BGR转换为灰度色彩空间
——》 laplacian()边缘检测
——》 需要将其转化为黑色边缘和白色背景的图像
——》归一化(像素值位于0,1之间),并乘以原图像以便能使边缘变黑
edgeskernel = numpy.array([[1, 1, 1],
[1, 8, 1],
[1, 1, 1]])
blurkernel = numpy.array([[0.04, 0.04, 0.04, 0.04, 0.04],
[0.04, 0.04, 0.04, 0.04, 0.04],
[0.04, 0.04, 0.04, 0.04, 0.04],
[0.04, 0.04, 0.04, 0.04, 0.04],
[0.04, 0.04, 0.04, 0.04, 0.04],])
shapenkernel = numpy.array([[1,1,1],
[1,9,1],
[1,1,1]])
embosskernel = numpy.array([[-2,-1,0],
[-1,1,1],
[0,1,2]])