使用 Open CV 在 Java 中進(jìn)行基本的圖片模糊處理
方法介紹
在Java中使用OpenCV進(jìn)行圖片模糊處理,主要可以通過以下幾種方式:
均值模糊(Averaging Blur):
通過計(jì)算核窗口內(nèi)所有像素的平均值來模糊圖像。這種方法可以移除圖像噪聲,但也會使圖像細(xì)節(jié)變得模糊。
Imgproc.blur(src, dst, new Size(10, 10), new Point(-1, -1), Core.BORDER_DEFAULT);
這里src是原始圖像,dst是模糊后的圖像,new Size(10, 10)定義了核窗口的大小。
高斯模糊(Gaussian Blur):
這種模糊使用正態(tài)分布的權(quán)重核,相較于均值模糊,它保留了更多的圖像細(xì)節(jié)。
Imgproc.GaussianBlur(src, dst, new Size(15, 15), 0);
其中new Size(15, 15)指定了高斯核的大小,0指定了沿X和Y方向的標(biāo)準(zhǔn)偏差。
中值模糊(Median Blur):
使用核窗口內(nèi)像素的中值來替換。對于去除椒鹽噪聲很有效,同時(shí)能夠保留邊緣。
Imgproc.medianBlur(src, dst, 5);
其中5指定了核的大小,它必須是一個(gè)正的奇數(shù)。
雙邊濾波(Bilateral Filter):
它可以在保持邊緣清晰的情況下減少不必要的噪聲。這種過濾器通常用于圖像去噪。
Imgproc.bilateralFilter(src, dst, 9, 75, 75);
其中9是鄰域直徑,兩個(gè)75分別是顏色空間和坐標(biāo)空間的標(biāo)準(zhǔn)偏差。文章來源:http://www.zghlxwxcb.cn/news/detail-815759.html
代碼
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Point;
import org.opencv.core.Size;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class ImageBlur {
static {
// 加載 OpenCV 的本地庫,方式任選一種即可
System.load("D:/dll/x64/opencv_java440.dll");
}
public static void main(String[] args) {
String old = "D:/to/image.jpg";
String blur = "D:/to/blur_image.jpg";
// 讀取圖片
Mat src = Imgcodecs.imread(old);
// 檢查圖片是否正確讀取
if (src.empty()) {
System.out.println("圖片讀取錯(cuò)誤");
return;
}
// 模糊度標(biāo)準(zhǔn)
Mat dst = new Mat();
int w = 45;
int h = 45;
// 模糊內(nèi)核參數(shù) int w, int h
Size size = new Size(w, h);
// 模糊處理
Imgproc.blur(src, dst, size, new Point(-1, -1));
// 保存修改后的圖片
Imgcodecs.imwrite(blur, dst);
}
}
示例
文章來源地址http://www.zghlxwxcb.cn/news/detail-815759.html
Open CV 專欄導(dǎo)航
- (一)Open CV 在windows環(huán)境初始化和 Java 動態(tài)庫加載方式介紹
- (二)Open CV 從基本概念到實(shí)踐操作
- (三)使用 Open CV 在 Java 中進(jìn)行基本的圖片縮放操作
- (四)使用 Open CV 在 Java 中進(jìn)行基本的圖片模糊處理
- (五)Java 使用 Open CV 的繪圖函數(shù)
- (六)在Java中使用 Open CV進(jìn)行圖片翻轉(zhuǎn)和圖片旋轉(zhuǎn)
- (七)學(xué)習(xí) OpenCV 的圖像增強(qiáng)和邊緣檢測功能
到了這里,關(guān)于Open CV 圖像處理基礎(chǔ):(四)使用 Open CV 在 Java 中進(jìn)行基本的圖片模糊處理的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!