总述
图像滤波,即在尽量保留图像细节特征的条件下对目标图像的噪声进行抑制,是图像预处理中不可缺少的操作,其处理效果的好坏将直接影响到后续图像处理和分析的有效性和可靠性。
我们可以通过低通滤波器(LPF),对图像进行模糊处理,去除图像中的高频含量,比如边界和噪声。
OpenCV中有四个主要的图像滤波器,分别是:averaging,Gaussian,median filtering,bilateral filtering,即平均,高斯,中值滤波,双边滤波。
平均
通过二维卷积可以达到平均的目的,我们先给出这样一个核算子:

将核算子放在图像的一个像素 A 上,求与核对应的图像上 9(3×3)个像素的和,再取平均数,用这个平均数替代像素 A 的值。重复以上操作直到将图像的每一个像素值都更新一边。
有个很方便的函数可以实现,Imgproc.blur(Mat src, Mat dst, Size ksize),其中src是读取的图像,dst是处理后的图像,ksize是核大小。代码如下:
import org.opencv.imgproc.Imgproc;
Mat src = Imgcodecs.imread("D:\\spiderman.jpg");
if(src.empty()) {
System.out.println(

本文详细介绍了OpenCV中的图像滤波技术,包括平均滤波、高斯滤波、中值滤波和双边滤波。平均滤波通过二维卷积实现图像模糊;高斯滤波使用加权平均,中间清晰,边缘模糊;中值滤波采用中值代替像素值,有效去除椒盐噪声;双边滤波则在保持边缘清晰的同时去噪。
最低0.47元/天 解锁文章
1123

被折叠的 条评论
为什么被折叠?



