Morphology -形態(tài)學操作

前言

簡單的來講掐隐,形態(tài)學操作是基于形狀的圖像處理操作蓄喇,通過將結(jié)構(gòu)元素作用于輸入圖像來輸出圖像造烁。

對圖像形態(tài)學運算锦溪,這里有詳細的介紹参萄。

這個有什么用呢累驮?

消除噪聲

分割(isolate)獨立的圖像元素酣倾,以及連接(join)相鄰的元素。

尋找圖像中的明顯的極大值區(qū)域或極小值區(qū)域谤专。 出自《OpenCV

形態(tài)學操作介紹

我先來分析一下接下來要做什么事情:

1.我們需要創(chuàng)建一張圖像躁锡,將多通道圖像spilt成單通道圖像。<傳多通道圖像也可以>

2.對圖形進行形態(tài)學操作毒租。

3.將多個單通道圖像Merge成多通道圖像稚铣,輸出圖像箱叁。

其實就我的理解,腐蝕就是求某個范圍的最小值,膨脹則恰恰相反惕医。

OpenCV提供兩個方法:

Erode

CVAPI(void)? cvErode( const CvArr* src, CvArr* dst,IplConvKernel* element CV_DEFAULT(NULL),int iterations CV_DEFAULT(1) );

Dilate

CVAPI(void)? cvDilate( const CvArr* src, CvArr* dst,IplConvKernel* element CV_DEFAULT(NULL),int iterations CV_DEFAULT(1) );

當然黑體標注的參數(shù)是必須要傳的參數(shù)耕漱,一個是輸入圖像,一個是輸出圖像抬伺。之間已經(jīng)說過標注CV_DEFAULT的是默認參數(shù)螟够,傳可以,不傳就加載默認值(If element pointer is NULL, 3x3 rectangular element is used峡钓,iterations default 1-??這個是我說的妓笙,黑體是文檔說的)。?

所以說我們先得研究一下這個lpIConvKernel能岩。

typedef struct _IplConvKernel {int? nCols;int? nRows;int? anchorX;int? anchorY;int *values;int? nShiftR;}IplConvKernel;

結(jié)構(gòu)體寞宫,找一下初始化方法。

CVAPI(IplConvKernel*)? cvCreateStructuringElementEx(int cols, int? rows, int? anchor_x, int? anchor_y,int shape, int* values CV_DEFAULT(NULL) );

?參數(shù):列數(shù) 拉鹃、行數(shù)辈赋、錨點

@param shape element shape that could be one of the cv::MorphShapes_c

@param values integer array of cols*rows elements that specifies the custom shape of the

structuring element, when shape=CV_SHAPE_CUSTOM.

這里說的也很明白,加載系統(tǒng)默認的Element你有三個參數(shù)可以選擇膏燕,如果自定義Element钥屈,shape 參數(shù)use CV_SHAPE_CUSTOM。

cv::MorphShapes_c參數(shù)列表

這里就已自定義的Element來Erode一下圖像坝辫,Dilate原理想同篷就,就不做解釋了。

簡圖

我們創(chuàng)建一個4*4的Element來Erode這幅圖像近忙。

Erode示意圖

將滿足條件的點留下竭业,不滿足條件的點丟棄。(當前錨點所處的點是不是最小值银锻,是則留下永品,不是則拋棄)

實際圖像操作示例圖

道理是這樣,我們需要對實際圖像做處理,那為了測試結(jié)果的準確性击纬,所以做以下測試:

測試圖示例

小結(jié)

我們可以從膨脹與腐蝕的圖像中看出來:

膨脹操作時鼎姐,將Element劃過圖像,將Element覆蓋區(qū)域的最大相素值提取,并代替錨點位置的相素更振。

腐蝕操作時炕桨,將Element劃過圖像,將Element覆蓋區(qū)域的最小相素值提取,并代替錨點位置的相素肯腕。

需要注意的是:很多文檔前景文字顏色為黑色献宫,所以這個文字粗細不能夠準確的表達膨脹與腐蝕

更多形態(tài)學算法操作

OpenCV提供了一個可以替換Dilate实撒、Erode的函數(shù)姊途,或者可以這樣說涉瘾,OpenCV提供一個能夠做形態(tài)學變換的函數(shù),其中包含基本的Dilate捷兰、Erode操作立叛。

@param op Type of a morphological operation, see cv::MorphTypes

cvMorphologyEx(const CvArr *src, CvArr *dst, CvArr *temp, IplConvKernel *element, int operation,int iterations CV_DEFAULT(1))

這里需要注意的是第三個參數(shù),temp,需要傳一個臨時參數(shù),operation是MorphTypes的枚舉贡茅。

圖像腐蝕操作-MORPH_ERODE
圖像膨脹操作-MORPH_DILATE
MORPH_OPEN
MORPH_CLOSE
MORPH_GRADIENT
MORPH_TOPHAT
MORPH_BLACKHAT

需要注意的是MORPH_HITMISS type參數(shù)是需要輸入一個二值圖像秘蛇。

這些操作無非就是一個套一個,好像有很多都是某個的逆運算哈顶考。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赁还,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子驹沿,更是在濱河造成了極大的恐慌艘策,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件甚负,死亡現(xiàn)場離奇詭異柬焕,居然都是意外死亡,警方通過查閱死者的電腦和手機梭域,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來搅轿,“玉大人病涨,你說我怎么就攤上這事¤捣兀” “怎么了既穆?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長雀鹃。 經(jīng)常有香客問我幻工,道長,這世上最難降的妖魔是什么黎茎? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任囊颅,我火速辦了婚禮,結(jié)果婚禮上傅瞻,老公的妹妹穿的比我還像新娘踢代。我一直安慰自己,他們只是感情好嗅骄,可當我...
    茶點故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布胳挎。 她就那樣靜靜地躺著,像睡著了一般溺森。 火紅的嫁衣襯著肌膚如雪慕爬。 梳的紋絲不亂的頭發(fā)上窑眯,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天,我揣著相機與錄音医窿,去河邊找鬼磅甩。 笑死,一個胖子當著我的面吹牛留搔,可吹牛的內(nèi)容都是我干的更胖。 我是一名探鬼主播,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼隔显,長吁一口氣:“原來是場噩夢啊……” “哼却妨!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起括眠,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤彪标,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后掷豺,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體捞烟,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年当船,在試婚紗的時候發(fā)現(xiàn)自己被綠了题画。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,687評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡德频,死狀恐怖苍息,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情壹置,我是刑警寧澤竞思,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布,位于F島的核電站钞护,受9級特大地震影響盖喷,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜难咕,卻給世界環(huán)境...
    茶點故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一课梳、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧步藕,春花似錦惦界、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至雾消,卻和暖如春灾搏,著一層夾襖步出監(jiān)牢的瞬間挫望,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工狂窑, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留媳板,地道東北人。 一個月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓泉哈,卻偏偏與公主長得像蛉幸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子丛晦,可洞房花燭夜當晚...
    茶點故事閱讀 43,576評論 2 349

推薦閱讀更多精彩內(nèi)容