擊中擊不中的變換

2021-08-30 19:41:39 字數 1503 閱讀 8186

擊中擊不中變換是形態學形狀檢測的基本工具。

步驟為:

使用模板s1腐蝕原影象x

使用模板s2(s2為是s1的補)對y(y為x的補)進行腐蝕

對兩個結果進行取交集

用擊中結構去腐蝕原始影象得到擊中結果x(這個過程可以理解為在原始影象中尋找和擊中結構完全匹配的模組,匹配上了之後,保留匹配部分的中心元素,作為腐蝕結果的乙個元素),然後用擊不中結構去腐蝕原始影象的補集得到擊不中結果y(即在原始影象上找到擊不中結構與原始影象沒有交集的位置,這個位置的元素保留,作為腐蝕結果的乙個元素),取x和y的交集就是擊中-擊不中的結果。 通俗理解就是:用乙個小的結構元素(擊中結構)去射擊原始影象,擊中的元素保留;再用乙個很大的結構元素(擊不中,一般取乙個環狀結構)去射擊原始影象,擊不中原始影象的位置保留。滿足擊中元素能擊中and擊不中元素不能擊中的位置的元素就是最終的形狀結果。

#include #include #include using namespace cv;

int main()

mats1 = (

mat_

<

int>(3, 3)

<< 0

,0,0

, 0,

1,0,

0,0,0);

mats2 = (

mat_

<

int>(3, 3)

<< 0

,1,0

, 1,

0,1,

0,1,0);

mats3 = (

mat_

<

int>(3, 3)

<< 0

,1,0

, 1,

-1,1,

0,1,0); s3

是直接用s2-s1所得

圖1 原圖                                              圖2 使用s1腐蝕結果                                  圖3 使用s2腐蝕結果

圖4   圖3與圖2的交集                              圖5 直接使用s3腐蝕的結果

參考:

擊中擊不中變換

標籤 null delete command 擴充套件工具測試 2010 02 11 18 35 4881人閱讀收藏 舉報 影象處理 6 擊中擊不中變換 形態學中用來檢測形狀的乙個基本工具 檢測不應該只限於形狀,還有大小 我這裡只寫了二值影象的,對於灰度圖還沒試過 它的原理就是使用腐蝕 如果要在一幅...

擊中擊不中變換

擊中擊不中變換定義 擊中擊不中變換 hmt 需要兩個結構元素b1和b2,合成乙個結構元素對b b1,b2 乙個用於探測影象內部,作為擊中部分 另乙個用於探測影象外部,作為擊不中部分。顯然,b1和b2是不應該相連線的,即b1 b2 擊中擊不中變換的數學表示式為 g x,y hitmiss f x,y ...

擊中 擊不中變換 lhMorpHMT

函式 lhmorphmt 說明 形態學擊中 擊不中變換 引數 src 輸入影象,灰度或二值影象 dst 輸出影象 sefg 前景結構元素 sebg 背景結構元素,如為空,則預設為前景結構元素sefg的取反 type 擊中 擊不中變換的型別,二值 0 非約束 1 約束 2 定義如下 define lh...