0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Laplace算子和邊界方向鏈碼實(shí)現(xiàn)袋裝糧的精確識別

電子設(shè)計 ? 來源:微型機(jī)與應(yīng)用 ? 作者:方興林 ? 2021-03-28 10:46 ? 次閱讀

目前,基于視頻的國家儲備糧自動監(jiān)管與稽核系統(tǒng)的技術(shù)核心是通過計算機(jī)系統(tǒng)對糧庫場景圖像的自動分析與識別,精確得到糧庫的糧食總數(shù)量,以彌補(bǔ)現(xiàn)行人工監(jiān)管方式的缺陷,杜絕虛庫、虛報貼息等現(xiàn)象,以滿足管理部門對儲備糧自動監(jiān)管與稽核的管理需求。

儲備糧庫中的糧袋是從底層向頂層逐層地累加立體式堆放,形成一個大立方體式結(jié)構(gòu),如圖1(a)所示。在攝像器材所捕捉到的圖像中,這個大立方體有三個面:頂面和兩個側(cè)面。由于光照和堆放方式的影響,在視頻圖像中,糧袋表面不同地方的灰度值會有很大差別,糧袋的中心區(qū)域會比較亮,而周邊區(qū)域會比較灰暗,因此在視覺上,人們看到的糧袋邊界呈現(xiàn)出一個近似的橢圓形。而每一個糧袋在視頻圖像中均能看見三個不同的面,所以會形成三類不同的橢圓。如果能精確地識別大立方體三個面上有多少個橢圓,那么就能識別出糧袋的數(shù)量,而每袋糧食的重量是固定且已知的,由此可以得到整個立方體糧堆的數(shù)量,因此,袋裝糧數(shù)量識別就是對圖像中橢圓數(shù)量的識別。所以對袋裝糧的儲備糧倉的糧食數(shù)量識別的關(guān)鍵就是找到一種快速、準(zhǔn)確、有效的橢圓形狀的提取與描述方法,以確保能夠?qū)γ恳淮Z食進(jìn)行精確的識別。

橢圓邊界處理與描述主要包括邊界定位和描述兩個方面,本文采用一種改進(jìn)的Laplace算子和邊界方向鏈碼來對袋裝糧圖像進(jìn)行邊緣檢測和描述,針對所檢測出的橢圓邊界有少量不完全閉合的問題,采取數(shù)學(xué)形態(tài)學(xué)的閉合操作來修補(bǔ)連接邊界的缺口。試驗(yàn)證明,改進(jìn)的Laplace算子和邊界方向鏈碼對袋裝糧邊界分割和描述具有較高魯棒性,能取得較好的效果。

1 糧袋邊緣提取

邊緣是指圖像中周圍像素灰度差有強(qiáng)烈反差的那些像素的集合,它廣泛存在于目標(biāo)與目標(biāo)之間、目標(biāo)與背景之間。圖像邊緣是圖像最重要的特征之一,是圖像分割、紋理特征和形狀特征等圖像分析的重要依據(jù)。具體到袋裝糧圖像,邊緣描述了糧袋的形狀信息,而形狀信息正是識別和分析糧袋橢圓邊緣的依據(jù),所以對袋裝糧圖像進(jìn)行處理的首要工作就是糧袋邊緣檢測。

在數(shù)字圖像中,邊緣點(diǎn)和噪聲點(diǎn)均屬于圖像中灰度突變點(diǎn),因此在邊緣檢測中,邊緣定位能力和噪聲抑制能力是相互矛盾的,有的算法邊緣定位能力比較好,有的算法抗噪聲能力比較強(qiáng),每種算法都有各自的優(yōu)缺點(diǎn)。參考文獻(xiàn)針對袋裝糧圖像的特點(diǎn),對現(xiàn)有的Laplace邊緣檢測算子的模板進(jìn)行了適當(dāng)?shù)母倪M(jìn),通過設(shè)置更加合理的Laplace模板權(quán)值參數(shù),提高了袋裝糧圖像邊緣檢測的精度,所檢測到的邊緣信息更加豐富和清晰,檢測效果如圖1(b)所示。

基于Laplace算子和邊界方向鏈碼實(shí)現(xiàn)袋裝糧的精確識別

在對袋裝糧圖像邊緣檢測過程中,所選擇的邊緣檢測算法既要精確定位邊緣,又要使所檢測的邊緣盡量是封閉的曲線,以便于邊界描述和特征的提取。實(shí)驗(yàn)結(jié)果顯示,盡管改進(jìn)的Laplace算子具有較好的檢測效果,但是所得到的邊緣依然不是完全閉合的,且存在大量虛假邊緣,這使得邊界描述將無法進(jìn)行。其原因:(1)該幅圖像的對比度較低;(2)該幅圖像比較復(fù)雜,目標(biāo)體較多。因此,單純的依靠邊緣檢測算子是很難得到閉合的邊緣曲線。

自1964年Matheron提出了數(shù)學(xué)形態(tài)學(xué)以來,在經(jīng)過以Meyer、Serra、Sternberg為代表的眾多學(xué)者的努力下,形態(tài)學(xué)方法已經(jīng)成為非線性圖像處理中的一種重要手段。數(shù)學(xué)形態(tài)學(xué)通過選取合適的結(jié)構(gòu)元素(探針)實(shí)現(xiàn)目標(biāo)特征提取,其基本運(yùn)算有:膨脹、腐蝕、開啟和閉合。其中開啟和閉合運(yùn)算是由基本運(yùn)算(膨脹和腐蝕)組合而成的復(fù)合運(yùn)算。閉合運(yùn)算可以去除區(qū)域中的小孔,填平狹窄的斷裂、細(xì)長的溝壑以及輪廓的缺口等,這正好適用于去除糧袋邊緣的缺口,使得檢測到的邊緣是閉合邊界。由于數(shù)學(xué)形態(tài)學(xué)是基于二值圖像進(jìn)行操作的,所以在圖像預(yù)處理中需要加入二值化操作步驟。針對糧袋形狀的特點(diǎn),本文選取橢圓形的結(jié)構(gòu)元素對圖1(a)二值化后的結(jié)果進(jìn)行數(shù)學(xué)形態(tài)學(xué)的閉合運(yùn)算,再進(jìn)行邊緣檢測,得到最終糧袋邊緣輪廓,如圖2所示。

o4YBAGBf72WASGcfAAAfIT_jTZA048.png

2 糧袋邊界描述

對所需要識別的物體進(jìn)行描述時,希望能使用一些比單個參數(shù)提供更豐富的細(xì)節(jié)信息,而又比用圖像本身更緊湊的方法來描述物體。圖像表示可以基于其內(nèi)部特征,也可以基于其外部特征,由此可將圖像的描述分成邊界描述(如鏈碼、邊界分段等)和區(qū)域描述(如四叉樹、骨架等)兩大類。通常,邊界描述較為關(guān)心的是圖像中區(qū)域的形狀特征,而區(qū)域描述則傾向于反映區(qū)域的灰度、顏色、紋理等特征。在袋裝糧自動識別中,關(guān)注的是糧袋的形狀,因此,本文選擇邊界描述法來描述糧袋邊緣。

在對糧袋進(jìn)行識別的過程中,要求嚴(yán)格按照糧袋實(shí)際形狀進(jìn)行各項(xiàng)特征參數(shù)的統(tǒng)計計數(shù),因此,準(zhǔn)確地描述邊緣輪廓很重要。國內(nèi)外學(xué)者已經(jīng)對二維輪廓曲線的描述問題從不同角度展開了研究,并提出了下面多種邊界曲線描述方法。

(1)多邊形近似逼近輪廓法。參考文獻(xiàn)中提出用輪廓線的近似多邊形來表示邊界,常用的多邊形表達(dá)方法有:基于收縮的最小周長多邊形法、基于聚合的最小均方誤差線段逼近法、基于分裂的最小均方誤差線段逼近法。在數(shù)字圖像中,邊界曲線是由一個個像素點(diǎn)組成的,如果每相鄰的2個像素點(diǎn)組成一條直線,則就可以用若干條直線來精確表達(dá)邊界,但這種方法計算量大,實(shí)時性較差。如果按照一定的算法來離散化邊界像素點(diǎn),雖然可以減少計算量,但是邊界描述的精度大大降低,因此,此種方法不適用于糧袋邊緣的描述。

(2)基于B樣條的邊界曲線表示法。參考文獻(xiàn)中提出了一種基于B樣條的邊界曲線表示法,這種方法的優(yōu)點(diǎn)是在一定程度上考慮到了輪廓線的幾何特征,但是對輪廓曲線進(jìn)行采樣、擬合是一個相當(dāng)繁瑣的過程,不適于糧袋的邊界描述。

(3)邊界鏈碼法。1977年,F(xiàn)reeman首先提出了4向鏈碼和8向鏈碼,因此鏈碼又稱為Freeman碼。鏈碼法是用邊界曲線起始點(diǎn)的坐標(biāo)和邊界點(diǎn)方向代碼來描述邊界曲線的方法,常被用來在圖像處理、計算機(jī)圖形學(xué)、模式識別等領(lǐng)域中表示曲線和邊界區(qū)域。該方法主要是利用一系列具有特定長度和方向相連的直線段來表示目標(biāo)的邊界。由于每個線段的長度固定而且方向數(shù)目有限,因此,只有邊界的起點(diǎn)需要采用絕對坐標(biāo)表示,其余點(diǎn)都可只用連續(xù)方向來代表偏移量,而且對于每一個點(diǎn)只需要一個方向數(shù)就可以代替兩個坐標(biāo)值。由此可見,表示一個方向數(shù)比表示一個坐標(biāo)值所需的比特數(shù)要少。因此,采用鏈碼表示可大大減少邊界表示所需要的數(shù)據(jù)量。此外,鏈碼具有簡單、節(jié)省存儲空間、便于計算以及平移不變性等特點(diǎn),使得對于封閉區(qū)域特征參數(shù)的統(tǒng)計變得簡單易行。

袋裝糧圖像中存在多個橢圓,需要對每一個橢圓進(jìn)行描述和識別,因此需要采用一種計算簡單、存儲量小、實(shí)時性高的算法,而且糧袋邊界是一條封閉的曲線。因此,本文采用邊界鏈碼法來對糧袋邊緣進(jìn)行描述。

數(shù)字圖像是按照固定間距的網(wǎng)格進(jìn)行采樣的,因此最簡單的鏈碼是跟蹤邊界并賦給每兩個相鄰像素的連線一個方向值。常用的有4方向和8方向鏈碼,如圖3所示。在數(shù)字圖像中,任意一個像素點(diǎn)周圍均有8個鄰接點(diǎn),而8方向鏈碼正好與像素點(diǎn)的實(shí)際情況相符,因此能夠準(zhǔn)確地描述中心像素點(diǎn)與其鄰接點(diǎn)的信息。在8方向鏈碼中,鏈碼沿著數(shù)字曲線或者邊界像素以八鄰接的方式移動和編碼,相鄰兩個像素的偏移量用數(shù)字0“7表示,碼值加1,其所指的方向則按逆時針旋轉(zhuǎn)45°。

pIYBAGBf71-AELmaAAAcOIeYjeY495.png

一條邊界曲線可以由曲線的起始點(diǎn)和該曲線的鏈碼唯一確定。假設(shè)曲線S如圖4所示,其鏈碼由數(shù)組Lianma[]表示。

o4YBAGBf71qAMkIQAAAjdrx54Kc386.png

采用8方向鏈碼描述曲線S得到的數(shù)組Lianma[]={0,6,0,7,0,6,5,4,4,3,2,2,2}。從圖中可以看出,只要知道邊界任意一點(diǎn)的坐標(biāo)和其他點(diǎn)的鏈碼值,就能準(zhǔn)確地描述出區(qū)域的邊界。為了得到一個完整的邊界鏈碼,便于后續(xù)處理(如鏈碼的存儲、特征的提取、重構(gòu)等),可將曲線起始點(diǎn)坐標(biāo)、曲線鏈碼和鏈碼長度一起存放在一個鏈碼表中[10],鏈碼表格式如圖5所示。

o4YBAGBf70WASNMUAAAca4f-y3M086.png

針對已經(jīng)進(jìn)行邊緣提取并進(jìn)行二值化后的袋裝糧圖像,用行掃描法得到糧袋邊緣的最左上角的邊界點(diǎn)作為跟蹤的起始點(diǎn),采用8方向鏈碼搜索邊緣,邊界鏈碼跟蹤袋裝糧圖像邊界輪廓算法步驟如圖6所示。

pIYBAGBf7zuADG59AAB-jNSlwkY193.png

對圖像邊緣進(jìn)行邊界跟蹤的目的是為了提取圖像中目標(biāo)體的特征點(diǎn)(如邊界曲線的端點(diǎn)、交叉點(diǎn)、拐角點(diǎn)、閉合曲線的形心等),以便識別對象體。在對袋裝糧圖像中糧袋橢圓邊緣曲線進(jìn)行提取之后,根據(jù)數(shù)學(xué)知識可做如下判斷:(1)設(shè)置橢圓方差閾值,判斷邊界曲線是否是接近橢圓形狀;(2)如果邊界曲線是一個近似的橢圓,則可以用一系列橢圓的數(shù)學(xué)特征的線性組合作為對袋裝糧圖像識別的隸屬度函數(shù)。橢圓的數(shù)學(xué)特性有周長、形心、面積、離心率等,而這些參數(shù)很容易通過邊界鏈碼計算得到,可以采用特征量的線性組合作為隸屬度函數(shù)對袋裝糧圖像的橢圓邊界進(jìn)行識別,以區(qū)分不同面上的糧袋,從而達(dá)到智能識別的目的。

針對所提取出來的邊緣不是完全閉合的問題,采用數(shù)學(xué)形態(tài)學(xué)的閉合運(yùn)算對二值圖像進(jìn)行預(yù)處理后再進(jìn)行邊緣檢測,最終得到了完全閉合的邊界。鏈碼法與其他方法相比,算法簡單、可大幅度減少數(shù)據(jù)、可以提高圖像處理速度和匹配效率,以及具有平移不變性等特點(diǎn),使得對于封閉曲線區(qū)域特征參數(shù)的統(tǒng)計變得簡單易行。糧袋邊緣精確的檢測和描述是糧食數(shù)量智能識別的前提,試驗(yàn)證明,本文采用改進(jìn)的Laplace算子對袋裝糧圖像進(jìn)行邊緣檢測,所提取的邊界更為平滑、連續(xù)、清晰。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 計算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7372

    瀏覽量

    87636
收藏 人收藏

    評論

    相關(guān)推薦

    顏色識別邊界問題

    顏色識別出現(xiàn)這種樣的左右邊框可能是什么原因?我感覺代碼好像沒有問題上下邊界能畫出來左右邊界就畫不出來
    發(fā)表于 03-08 17:29

    Daugman算法虹膜內(nèi)外邊界的定位

    法進(jìn)行虹膜內(nèi)外邊界的定位,該算法是基于Daugman算法。最后在matlab中實(shí)現(xiàn)定位過程。關(guān)鍵詞:虹膜定位,生物特征識別,微積分算子,Daugman算法
    發(fā)表于 07-12 18:55

    碼表和線段表在印刷電路板孔位檢測中的應(yīng)用

    時,即視為邊界點(diǎn),從A 開始,順時針進(jìn)行搜 索孔位的邊界,定義初時值為值等于4 的方向進(jìn)行搜索下一個點(diǎn),若下一個點(diǎn)灰度值等 于G1,即為
    發(fā)表于 09-10 16:28

    labview調(diào)用halcon實(shí)時采集圖像,識別二維

    `主要實(shí)現(xiàn)功能是labview調(diào)用halcon,來進(jìn)行二維識別,做到基本無參數(shù)設(shè)置,提高識別的穩(wěn)定性,labview里面用到面向?qū)ο髞磉M(jìn)行halcon
    發(fā)表于 08-02 16:21

    基于GFO算子的圖像增強(qiáng)算法如何去實(shí)現(xiàn)?

    基于GFO算子(廣義模糊算子)的圖像增強(qiáng)算法如何去實(shí)現(xiàn)?怎樣對圖像增強(qiáng)算法進(jìn)行分析?
    發(fā)表于 06-04 06:24

    基于ROS系統(tǒng)實(shí)現(xiàn)導(dǎo)航機(jī)器人的精確方向和距離控制

    本實(shí)驗(yàn)箱以大載重的全向麥輪車為載體,基于ROS系統(tǒng)作為開發(fā)平臺,使用雙驅(qū)和四驅(qū)兩種不同的結(jié)構(gòu)作為機(jī)器人本體,最終通過地面二維實(shí)現(xiàn)導(dǎo)航機(jī)器人的精確方向和距離控制...
    發(fā)表于 09-03 07:29

    圖象邊界碼表示研究

    圖象邊界表示在模式識別、圖象處理以及計算機(jī)視覺等領(lǐng)域扮演著十分重要的角色。本文研究了圖象邊界碼表示,提出一種改進(jìn)的碼表示方法。該方法通
    發(fā)表于 08-11 10:02 ?30次下載

    LOG算子在FPGA中的實(shí)現(xiàn)

    介紹了一種高斯拉普拉斯LOG算子在FPGA中的實(shí)現(xiàn)方案!并通過對一幅BMP圖像的處理!論證了在FPGA中實(shí)現(xiàn)的LOG算子的圖像增強(qiáng)效果
    發(fā)表于 05-16 17:12 ?50次下載
    LOG<b class='flag-5'>算子</b>在FPGA中的<b class='flag-5'>實(shí)現(xiàn)</b>

    一種新壓縮頂點(diǎn)

    是一種以較少的數(shù)據(jù)存儲表示線條、曲線和區(qū)域邊界的編碼技術(shù)。為進(jìn)一步提高的壓縮效率,提出了一種新的壓縮頂點(diǎn)
    發(fā)表于 12-01 10:26 ?0次下載
    一種新壓縮頂點(diǎn)<b class='flag-5'>鏈</b><b class='flag-5'>碼</b>

    基于條件隨機(jī)場的頓號邊界識別

    標(biāo)點(diǎn)符號的邊界識別是自然語言處理的重要研究內(nèi)容,它是分詞、語塊識別等應(yīng)用的基礎(chǔ)。為了實(shí)現(xiàn)中文中用于表示并列成分分割的頓號的邊界
    發(fā)表于 01-02 11:29 ?0次下載

    具P Laplace算子的分?jǐn)?shù)階微分方程邊值問題解的存在性論文說明

    分?jǐn)?shù)階微積分理論是整數(shù)階微積分理論的推廣,發(fā)展至今已有300多年的歷史。特別是近幾十年來,分?jǐn)?shù)階微分方程在物理、化學(xué)、生物、金融數(shù)學(xué)等不同的學(xué)科領(lǐng)域已得到廣泛的應(yīng)用。具p-Laplace算子
    發(fā)表于 12-05 15:53 ?3次下載
    具P <b class='flag-5'>Laplace</b><b class='flag-5'>算子</b>的分?jǐn)?shù)階微分方程邊值問題解的存在性論文說明

    Laplacian算子的FPGA實(shí)現(xiàn)方法

    拉普拉斯算子是一種重要的圖像增強(qiáng)算子,它是一種各向同性濾波器,即濾波器的響應(yīng)與濾波器作用圖像的突變方向無關(guān),而且實(shí)現(xiàn)簡單,被廣泛用于圖像銳化和高頻增強(qiáng)等算法中。在此,提出一種使用Qua
    的頭像 發(fā)表于 06-16 17:47 ?3209次閱讀
    Laplacian<b class='flag-5'>算子</b>的FPGA<b class='flag-5'>實(shí)現(xiàn)</b>方法

    基于Laplace-Beltrami算子的特征點(diǎn)檢測算法

    針對三維模型的特征點(diǎn)檢測問題,提出一種基于 Laplace- Beltrami算子的特征點(diǎn)檢測算法。對于給定的三維網(wǎng)格模型,首先構(gòu)造離散 Laplace- Beltrami算子矩陣,求
    發(fā)表于 04-21 13:50 ?11次下載
    基于<b class='flag-5'>Laplace</b>-Beltrami<b class='flag-5'>算子</b>的特征點(diǎn)檢測算法

    具ρLaplace算子的分?jǐn)?shù)階微分方程邊值問題解的存在性

    具ρLaplace算子的分?jǐn)?shù)階微分方程邊值問題解的存在性(深圳核達(dá)中遠(yuǎn)通電源技術(shù)有限公司待遇怎么樣?)-第一章介紹有關(guān)分?jǐn)?shù)階微積分理論的研究背景、發(fā)展歷史及研究現(xiàn)狀,具p-Laplace算子
    發(fā)表于 09-17 13:38 ?5次下載
    具ρ<b class='flag-5'>Laplace</b><b class='flag-5'>算子</b>的分?jǐn)?shù)階微分方程邊值問題解的存在性

    OpenCV邊緣檢測算子Laplace、LoG詳解

    一階導(dǎo)數(shù)算子(例如 Sobel 算子)通過對圖像求導(dǎo)來確定圖像的邊緣,數(shù)值絕對值較高的點(diǎn)對應(yīng)了圖像的邊緣。如果繼續(xù)求二階導(dǎo),原先數(shù)值絕對值較高的點(diǎn)對應(yīng)了過零點(diǎn)。因此,也可以通過找到二階導(dǎo)數(shù)的過零點(diǎn)來檢測邊緣。在某些情況下,找二階導(dǎo)數(shù)的過零點(diǎn)可能更容易。
    的頭像 發(fā)表于 12-21 16:34 ?1958次閱讀
    OpenCV邊緣檢測<b class='flag-5'>算子</b><b class='flag-5'>Laplace</b>、LoG詳解