一、腐蝕
形態學的內部算法依然是卷積,跟中值濾波一樣,非線性。中值濾波取核範圍的中位數,而腐蝕取最小值,膨脹取最大值。
腐蝕看起來的效果是亮的區域被侵蝕,可用於一些噪聲的去除。
Mat src = new Mat(img_region, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(5, 5));
Cv2.Erode(src, result, element);
result.SaveImage(img_result);
效果如下:
二、膨脹
膨脹的效果跟腐蝕相反,亮區會向外延伸,可用於填補孔洞。
Mat src = new Mat(img_region, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(5, 5));
Cv2.Dilate(src, result, element);
result.SaveImage(img_result);
效果如下:
三、開運算
開運算是先腐蝕,再膨脹,可用於分隔區域,用來計數。
Mat src = new Mat(img_region, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(5, 5));
Cv2.MorphologyEx(src, result, MorphTypes.Open, element);
result.SaveImage(img_result);
效果如下:
四、閉運算
閉運算是先膨脹,再腐蝕,可用於在檢測連通區域時減少噪聲。
Mat src = new Mat(img_region, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(5, 5));
Cv2.MorphologyEx(src, result, MorphTypes.Close, element);
result.SaveImage(img_result);
效果如下:
五、形態梯度
形態梯度是用膨脹結果減腐蝕結果,能夠找出目標的骨架。
Mat src = new Mat(img_region, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(5, 5));
Cv2.MorphologyEx(src, result, MorphTypes.Gradient, element);
result.SaveImage(img_result);
效果如下:
六、頂帽
頂帽是用源圖減去開運算的結果,突出了圖像中亮的部分。
Mat src = new Mat(img_cell, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(9, 9));
Cv2.MorphologyEx(src, result, MorphTypes.TopHat, element);
result.SaveImage(img_result);
效果如下:
七、黑帽
黑帽是用閉運算的結果減去原圖,突出了圖像中暗的部分。
Mat src = new Mat(img_cell, ImreadModes.Grayscale);
Mat result = new Mat();
Mat element = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(9, 9));
Cv2.MorphologyEx(src, result, MorphTypes.BlackHat, element);
result.SaveImage(img_result);
效果如下: