Java OpenCV-4.0.0 图像的 中值/高斯/双边/滤波、模糊
/**
* OpenCV-4.0.0 均值模糊
*/
public void blur() {
Mat src=Imgcodecs.imread("C:\\Users\\Administrator\\Downloads\\99.png");
Mat image =new Mat(src.size(),src.type());
HighGui gui=new HighGui();
Imgproc.blur(src, image, new Size(3,3),new Point(-1,-1));//奇数
gui.imshow("白蛇", image);
gui.waitKey(1);
}
/**
* OpenCV-4.0.0 高斯滤波
*/
public void gausssianBlur() {
Mat src=Imgcodecs.imread("C:\\Users\\Administrator\\Downloads\\99.png");
Mat image =new Mat(src.size(),src.type());
HighGui gui=new HighGui();
Imgproc.GaussianBlur(src, image, new Size(11,11), 7,7);//奇数
gui.imshow("白蛇", image);
gui.waitKey(1);
}
/**
* OpenCV-4.0.0 中值滤波
*/
public void mediaBlur() {
Mat src=Imgcodecs.imread("C:\\Users\\Administrator\\Downloads\\99.png");
Mat image =new Mat(src.size(),src.type());
HighGui gui=new HighGui();
Imgproc.medianBlur(src, image, 9);
gui.imshow("白蛇", image);
gui.waitKey(1);
}
/**
* OpenCV-4.0.0 双边滤波
*/
public void bilateralFilter() {
Mat src=Imgcodecs.imread("C:\\Users\\Administrator\\Downloads\\99.png");
Mat image =new Mat(src.size(),src.type());
HighGui gui=new HighGui();
Imgproc.bilateralFilter(src, image, 2, 150, 9);
gui.imshow("白蛇", image);
gui.waitKey(1);
}
=====>图像原图
=====>均值模糊
=====>高斯滤波
=====>中值滤波
=====>双边滤波