中值滤波使用当前像素点和它周围的8个像素点的中值来代替当前点额像素点,这个办法对去除椒盐噪声非常有效。
如果图片中某一块像素的数值如下:
120 130 134
122 123 122
125 146 124
9个数值排序后为:120 122 122 123 124 125 130 134 146
所以使用中值滤波后中间的像素点会替换为 124
中值滤波的 C语言实现:
void medianBlur(Mat img, Mat dst, int ksize) {
//ksize必须为奇数
if (ksize % 2 == 0 && (ksize - 1) / 2 - 1 < img.cols && (ksize - 1) / 2 - 1 < img.rows) {
return;
}