morphologyEX形態學操作

2021-10-01 09:43:20 字數 900 閱讀 7634

一般形態學操作會有兩步:

mat kernel = getstructuringelement(morph_rect, size(3,3), point(-1,-1));

morphologyex(src, dst, morph_open, kernel, point(-1,-1))

1、其中第一步用於構造乙個結構元素,也就是在第二步需要用到的核

使用getstructuringelement()函式就是構造乙個特定形狀及大小的結構元素

cv::mat cv::getstructuringelement(int shape,cv::size ksize,cv::point anchor=cv::point(-1,-1))

括號裡第乙個引數---設定結構元素的形狀

morph_rect(矩形), morph_ellipse(橢圓), morph_cross(十字形)

括號裡第二個引數---設定結構元素的大小也就是尺寸

括號裡第三個引數---設定結構元素的錨點位置,一般為中心點point(-1,-1)

2、morphologyex()函式對影象進行形態學操作即膨脹腐蝕操作。

第乙個引數:原影象

第二個引數:目標影象

第三個引數:操作型別

第四個引數:結構元素

第五個引數:錨點

其中第三個引數常用的有:

(1)morph_erode=0;//腐蝕,與erode腐蝕效果一樣

(2)morph_dilate=1;//膨脹,與dilate膨脹效果一樣

(3)morph_open=2;//開操作:先腐蝕後膨脹(去除一些小的無關或無意義點)

(4)morph_close=3;//閉操作:先膨脹後腐蝕(填補空洞點即去除目標區域噪點)

(5)morph_gradient=4;//梯度操作

形態學重建

在形態學梯度影象的基礎上,利用形態學的開閉重建運算對梯度影象進行重建,在保留重要區域倫敦的同時去除細節和雜訊。分水嶺變換存在過分割現象,原因在於檢測的區域性極值過多,造成極值過多的原因在於影象中的非規則灰度擾動和雜訊。對於好的分水嶺影象分割方法,不僅能消除過分割現象,而且應保證分割後的區域倫敦邊緣具...

形態學濾波

include pch.h include include include include using namespace std using namespace cv 形態學 mat g srcimage,g dstimage int g nelementshape morph rect int ...

形態學運算元

形態學運算元的主要思想是用一定形狀的結構元素 在影象中抽取出相應的某些結構,通常可以用於影象的濾波 分割 分類等處理。形態學運算元有腐蝕 膨脹 開和閉四種。腐蝕腐蝕是一種消除邊界點,使邊界向內部收縮的過程。可以用來消除小且無意義的物體。腐蝕的演算法 用3x3的結構元素,掃瞄影象的每乙個畫素 用結構元...