7.2 方框滤波
一、方块滤波的使用 处理结果= cv2.boxFilter(原始图像,目标图像深度,核大小,normalize属性) //目标图像深度。一般设为-1,表示与原始图像深度一样。 //核大小,一般是(3,3)或(5,5) //normalize属性,归一化属性。省略不写默认为true。 二、方框滤波与均值滤波的关系 当归一化属性取true时,进行归一化处理,这时与均值滤波效果相同。 当归一化属性取false时,不进行归一化处理,直接求周围N*N范围内的和,不再求平均。这时候就与均值滤波不同了,不过很容易发生溢出。当超过255时,就取255。
三、使用举例 r = cv2.boxFilter(image,-1,(5,5),normalize=1) #这时方框滤波等价于均值滤波:r = cv2.blur(image,(5,5))。【例1】 r = cv2.boxFilter(iamge,-1,(5,5),normalize=0) #不进行归一化处理。【例2】【例3】
例1:
结果:
与均值滤波效果相同。
例2:
结果:
不进行归一化处理,采用5*5的核,周围25个像素值的和很可能超过255,导致像素点为白色。 不进行归一化处理,采用2*2的核,周围4个像素点的和有可能不超过255。
总结: 方框滤波如果进行归一化处理,就是均值滤波。 如果不进行归一化处理,就是求周围所有像素值的和,很可能全都是白色。
|