腐蝕:去除圖像表面像素酌呆,將圖像逐步縮小,以達到消去點狀圖像的效果搔耕;作用就是將圖像邊緣的毛刺剔除掉
膨脹:將圖像表面不斷擴散以達到去除小孔的效果隙袁;作用就是將目標(biāo)的邊緣或者是內(nèi)部的坑填掉
使用相同次數(shù)的腐蝕和膨脹,可以使目標(biāo)表面更平滑度迂;但也有場景限制藤乙,就是如果去噪不干凈的話,會出現(xiàn)意想不到的結(jié)果惭墓,盡量別使用
大概的效果坛梁,適合降噪比較干凈的圖
// 圖像腐蝕/膨脹處理
public void erodeImg() {
Mat outImage = new Mat();
// size 越小,腐蝕的單位越小腊凶,圖片越接近原圖
Mat structImage = Imgproc.getStructuringElement(Imgproc.MORPH_RECT, new Size(5, 2));
/**
* 圖像腐蝕
* 腐蝕說明: 圖像的一部分區(qū)域與指定的核進行卷積划咐,
* 求核的最`小`值并賦值給指定區(qū)域。
* 腐蝕可以理解為圖像中`高亮區(qū)域`的'領(lǐng)域縮小'钧萍。
* 意思是高亮部分會被不是高亮部分的像素侵蝕掉褐缠,使高亮部分越來越少。
*/
Imgproc.erode(mat, outImage, structImage, new Point(-1, -1), 2);
mat = outImage;
/**
* 膨脹
* 膨脹說明: 圖像的一部分區(qū)域與指定的核進行卷積风瘦,
* 求核的最`大`值并賦值給指定區(qū)域队魏。
* 膨脹可以理解為圖像中`高亮區(qū)域`的'領(lǐng)域擴大'。
* 意思是高亮部分會侵蝕不是高亮的部分万搔,使高亮部分越來越多胡桨。
*/
Imgproc.dilate(mat, outImage, structImage , new Point(-1, -1), 2);
mat = outImage;
}
本文章參考了很多博客,感謝瞬雹;主要是跟著一個博客來實現(xiàn)的https://blog.csdn.net/ysc6688/article/category/2913009 感謝