这是因为,边缘检测滤波器需要检测图像中的变化或边缘,而不需要保留图像的整体亮度级别。因此,当滤波器中心像素与其周围像素的差异为正时,该像素值增加;当该值为负时,像素值减少。因此,滤波器的总和应为0,以确保不影响图像的亮度级别。
而模糊滤波器的目的是通过平均附近像素的值来减少噪声和细节,以模糊图像。因此,滤波器中心像素和周围像素的值应该趋于相等,以保持图像的亮度水平不变。因此,滤波器的总和应该为1,确保图像的亮度级别不受影响。
以下是两个示例滤波器,一个是Sobel边缘检测滤波器,总和为0,另一个是平均滤波器,总和为1。
import numpy as np
# Sobel边缘检测滤波器
sobel_filter = np.array([[-1, 0, 1], [-2, 0, 2], [-1, 0, 1]])
# 平均滤波器
avg_filter = np.array([[1/9, 1/9, 1/9], [1/9, 1/9, 1/9], [1/9, 1/9, 1/9]])
上一篇:边缘检测及比较/排序
下一篇:边缘检测算法深度学习