形態學點滴

2021-06-22 17:02:33 字數 1706 閱讀 1825

令a為z中的集合,如果a=(a1,a2)是a中的元素,則:a∈a

如果a不是a中的元素,則:a∉a

matlab函式:ismember(a,a),似乎還有個函式in與此類似 另外

判斷集合中的元素是否按公升序排列:issorted(a)

想想issorted(a(end:-1:1))是什麼意思?

刪除集合中的重複元素:unique(a)

如果a中的元素又是b中的元素,則a是b的子集,表示為:a⊆b

a∩b

matlab集合函式:c=intersect(a,b)

對於二值影象:a&b

a∪b

matlab集合函式:c=union(a,b)

對於二值影象:a|b

a-b

matlab集合函式:c=setdiff (a,b)

對於二值影象:a&(~b)

~b表示b的非

aorb 異或

matlab集合函式:setdiff(union(a,b),intersect(a,b))

對於二值影象:(a|b)&(~(a&b))

a的反射

matlab運算:a=~b

a平移到z,z=(z1,z2)

matlab運算:b=a+[z1 z2]

定義來自①,在②中有不同的定義

注,不明白b的反射有什麼用

膨脹可以簡單的理解為:結構元素繞二值影象邊界(白色部分的邊界,因為在二值圖中1為白色)走一圈,原圖加上原圖之外結構元素掃到的部分就是膨脹的結果。

結構元素b可以定義為

膨脹的特點:採用結構元素b1

總體上看白色區域擴大「一圈」;

白色外角失去角尖,變得圓滑;

注:符號應是圓圈裡面減號

簡單理解為:把結構元素想象成橡皮擦。結構元素繞邊界區域一圈,抹去了部分影象

總體上白色區域「瘦了一圈」;

白色區域內角失去角尖,變圓滑;

開運算可以看做是,結構元素b在a內貼著邊界轉了一圈,不能超出a,掃掠到的範圍及其內部就是開運算的結果

開運算的結果:

尖角處被圓滑、細頸被斷開(這點在圖上沒有體現出來);

孤立點被削去(限於disk)

閉運算可以看做是(不太準確),結構元素b在a外貼著a的外邊界轉了一圈,圍成的區域構成閉運算的結果

閉運算結果:

內部小孔被填補(限於disk);

內部細通道被填補;

形態學重建

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

形態學濾波

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的結構元素,掃瞄影象的每乙個畫素 用結構元...