国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于邊緣的圖像分割在牛體尺測(cè)量中的應(yīng)用

2020-05-11 12:24石煒張帥奇

石煒 張帥奇

摘要:圖像分割是圖像處理、分析和理解的基礎(chǔ),目前它已經(jīng)成為機(jī)器視覺(jué)研究領(lǐng)域最活躍的課題之一。邊緣檢測(cè)能勾畫(huà)出目標(biāo)物體,蘊(yùn)含豐富的信息,是圖像分割、識(shí)別和分析中抽取圖像特征的重要方法。本文通過(guò)常用算子如Sobel、Roberts、Prewitt、Gauss-Laplace和Canny算法對(duì)牛體圖像分割的效果進(jìn)行實(shí)驗(yàn)對(duì)比,證明Canny算子總體上優(yōu)于其他算子。針對(duì)Canny算子分割可能產(chǎn)生的斷裂和不完整,運(yùn)用OR運(yùn)算結(jié)合模糊和邊緣信息去除斷邊,利用數(shù)字形態(tài)學(xué)重新填充圖像中的空洞,增強(qiáng)邊緣輪廓顯示的效果。在此基礎(chǔ)上進(jìn)行的牛體測(cè)量結(jié)果與實(shí)際結(jié)果相比誤差較小,測(cè)量精度較高,其通用性較好,能夠滿足日常對(duì)于牛體體高和體長(zhǎng)的測(cè)量要求。

關(guān)鍵詞:邊緣檢測(cè);圖像分割;Canny算子;OR運(yùn)算;牛體尺測(cè)量

中圖分類號(hào):TP391.9 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2020)02-0048-04

0 引言

邊緣蘊(yùn)含著豐富的信息,在圖像處理中有著重要的作用。邊緣檢測(cè)的目的是獲取目標(biāo)輪廓。圖像的邊緣檢測(cè)是利用圖像的一階導(dǎo)數(shù)的極值(梯度算子模板)或二階導(dǎo)數(shù)過(guò)零點(diǎn)(拉普拉斯算子模板)信息來(lái)實(shí)現(xiàn)的[1]。對(duì)于一些經(jīng)典的邊緣檢測(cè)算子,目前的研究主要集中在兩方面:一是結(jié)合經(jīng)典算子和新思想,尋找新的性能更好的算子;二是將已經(jīng)成熟的邊緣檢測(cè)算子更高效地運(yùn)用在實(shí)際的場(chǎng)景[2]。因此將其運(yùn)用到不同的領(lǐng)域?qū)?huì)是今后發(fā)展的大方向。如彭嘉涵[3]通過(guò)圖像處理的方法對(duì)近視診斷進(jìn)行了研究,通過(guò)圖像預(yù)處理、運(yùn)用Canny算子進(jìn)行邊緣檢測(cè)、特征提取等步驟對(duì)眼睛進(jìn)行檢測(cè),發(fā)現(xiàn)Canny算子能夠較清晰反映出瞳孔的邊緣部分,能夠保證信息的完整度,清晰和連貫。該方法快捷有效,能夠方便地進(jìn)行近視眼病篩查。劉遠(yuǎn)仲等[4]利用二維高斯函數(shù)計(jì)算梯度幅值,通過(guò)四閾值邊緣檢測(cè)進(jìn)行邊緣定位,并用數(shù)學(xué)形態(tài)學(xué)對(duì)邊緣進(jìn)行融合的方法,將Canny算子和數(shù)學(xué)形態(tài)學(xué)相結(jié)合對(duì)白酒顯微圖像進(jìn)行邊緣檢測(cè),檢測(cè)出的酒分子結(jié)構(gòu)邊緣較準(zhǔn)確,邊緣連續(xù)性較好。劉同海等[5]通過(guò)對(duì)豬體背景去除;經(jīng)中值濾波后動(dòng)態(tài)確定圖像二值化的閾值,生成豬體二值圖像;并通過(guò)Canny算法,準(zhǔn)確快速實(shí)現(xiàn)了豬體輪廓邊緣提取,經(jīng)過(guò)對(duì)豬體的體長(zhǎng)、體寬進(jìn)行了測(cè)量,其平均相對(duì)誤差分別為0.92%、1.39%,測(cè)量精度較高,對(duì)豬體體尺的檢測(cè)效果較好。將Canny算法運(yùn)用在牛體征的檢測(cè)中,將會(huì)促進(jìn)畜牧業(yè)向智能化水平發(fā)展,這對(duì)現(xiàn)代畜牧中智慧牧場(chǎng)的建設(shè)是很有幫助的。

1 常用的邊緣檢測(cè)算子

1.1 Sobel算子

Sobel算子提出了一種將差分運(yùn)算局部平均的方法。它不是簡(jiǎn)單求平均再差分,而是加強(qiáng)了中心像素上下左右四個(gè)方向像素的權(quán)重,運(yùn)算結(jié)果是一幅邊緣圖像。它通過(guò)對(duì)行、列的變化檢測(cè)來(lái)檢測(cè)邊緣,通過(guò)核來(lái)完成檢測(cè)。Sobel算子所得邊緣較粗,圖像邊緣不止一個(gè)像素[6]。Sobel算子通過(guò)增加中心點(diǎn)的重要性而實(shí)現(xiàn)某種程度的平滑效果。常用在檢測(cè)中對(duì)精度要求不高的場(chǎng)合。

1.2 Roberts算子

Roberts算子是一種利用局部差分算子尋找邊緣的算子。其對(duì)于陡峭的低噪聲圖像效果較好,它可以由兩個(gè)2×2的模板共同實(shí)現(xiàn)。

1.3 Prewitt算子

Prewitt算子是一種邊緣樣板算子,利用像素點(diǎn)上下左右鄰點(diǎn)灰度差,在邊緣處達(dá)到極值檢測(cè)邊緣,對(duì)噪聲具有平滑作用。在實(shí)際應(yīng)用中通常采用微分算子和模板匹配方法檢測(cè)圖像的邊緣。它可以由兩個(gè)3×3的模板共同實(shí)現(xiàn)。

1.4 LOG算子

拉普拉斯算子雖然性能不錯(cuò),由于要進(jìn)行二階微分的運(yùn)算,會(huì)把圖像中的噪聲擴(kuò)大。實(shí)際應(yīng)用中,用到的多是LOG算子。即通常先用高斯函數(shù)對(duì)圖像濾波,然后對(duì)濾波后的圖像進(jìn)行拉普拉斯運(yùn)算,將算得的值等于零的點(diǎn)作為邊界點(diǎn),通過(guò)拉普拉斯算子找出圖像中的陡峭邊緣。在LOG算子中對(duì)邊緣判斷采用的技術(shù)是零交叉檢測(cè),該算子能有效檢測(cè)邊界,但可能會(huì)產(chǎn)生虛假邊界,其定位精度也不高。實(shí)際應(yīng)用中常用的模板大小是5×5。不同微分算子常用模板如表1。

1.5 Canny算法

Canny算子是Canny在1986年提出了一種最優(yōu)化的梯度邊緣檢測(cè)算子[7]。它采用高斯函數(shù)對(duì)圖像進(jìn)行平滑處理,同時(shí)采用雙閾值算法檢測(cè)和連接邊緣,因此具有較強(qiáng)的噪聲抑制能力,不容易受噪聲的干擾,能夠檢測(cè)到真正的弱邊緣,邊緣的連續(xù)性較好。和Sobel等算子相比,其邊緣線性較細(xì)、定位精度比較高、邊緣提取較完整且邊緣連接程度最佳[8]。Canny邊緣檢測(cè)算法非常復(fù)雜,但也很有趣:它有5個(gè)步驟,即使用高斯濾波器對(duì)圖像進(jìn)行去噪、計(jì)算梯度、在邊緣上使用非最大抑制(NMS)、在檢測(cè)到的邊緣上使用雙閾值去除假陽(yáng)性(fasle positive),最后還會(huì)分析所有的邊緣及其之間的連接,以保留真正的邊緣并消除不明顯的邊緣。

2 實(shí)驗(yàn)結(jié)果與分析

本文選取了兩幅在內(nèi)蒙古某草原牧場(chǎng)用相機(jī)拍攝的牛的圖像,原始圖像大小為4320×3240,照相機(jī)型號(hào)為CASIO EX-H15,在MATLAB R2018b平臺(tái)上測(cè)試上述常用算子的邊緣檢測(cè)效果。

由于拍攝過(guò)程或多或少都會(huì)給圖像帶來(lái)一些噪聲,在這種情況下,為了能準(zhǔn)確得到物體的邊緣信息,要先進(jìn)行去噪后提取物體的邊緣,常使用平滑模板和中值濾波的方式消除噪聲;使用Laplace、Sobel等邊緣提取模板突出物體的邊緣,然后進(jìn)行二值化處理,得到物體的邊緣信息。這里首先將采集到的圖像運(yùn)用加權(quán)法轉(zhuǎn)換為灰度圖像,接著對(duì)圖像進(jìn)行中值濾波后,選擇合適的閾值用不同的邊緣檢測(cè)算子分別對(duì)兩幅圖像進(jìn)行邊緣檢測(cè),通過(guò)仿真效果比較上述算子的適用性好壞,圖1和圖2是兩幅圖像邊緣檢測(cè)后的效果圖。

從圖中可以看出,在閾值選擇相同時(shí),Sobel算子提取的邊緣較其他兩種算子完整,Sobel算子得到的邊緣會(huì)比Prewitt算子得到的邊緣顯得粗而亮, Sobel和Prewitt算子兩者邊緣檢測(cè)效果基本一致,產(chǎn)生的邊緣較寬,間斷比較多。Roberts較Sobel和Prewitt邊緣較粗、信息丟失多,其噪聲也比前兩者多。三種一階微分算子檢測(cè)邊緣時(shí),易出現(xiàn)“削頂”現(xiàn)象,對(duì)圖像頂部檢測(cè)困難[9]。一階微分算子普遍對(duì)噪聲敏感。二階微分算子中,LoG算子邊緣檢測(cè)邊緣保留較為完整,定位準(zhǔn)確,LoG算子是這幾種算子里是最容易受噪聲影響的算子,其邊緣連續(xù)性較上述三種一階微分算子好,檢測(cè)精度高,但會(huì)產(chǎn)生偽邊緣[10]。其抑制噪聲的能力相比Canny邊緣算子較差,因此選擇一個(gè)既能有好的邊緣又包含噪聲很少的閾值很不容易。Canny算子能夠檢測(cè)出一些尖銳和細(xì)小的邊緣,并能夠保持所有邊緣的寬度都是一個(gè)像素。其檢測(cè)出的邊緣線都是單像素寬,邊緣線上僅會(huì)存在少量被破壞的邊緣點(diǎn)。Canny算子檢測(cè)出的邊緣完整程度是這幾種算子中最好的,線形連接程度好,其邊緣檢測(cè)中含有的噪聲也是最少的。其邊緣間斷也最少。Canny算子是將濾波、增強(qiáng)與檢測(cè)集一身的基于一階導(dǎo)數(shù)的優(yōu)化算子[11],因此呈現(xiàn)出的邊緣檢測(cè)效果好。

盡管經(jīng)過(guò)Canny邊緣檢測(cè)能夠完整檢測(cè)出牛體邊緣處的輪廓,然而由于噪聲及光照不均等情況的存在,其結(jié)果經(jīng)常不能完整地勾畫(huà)出物體的邊緣,因此邊緣檢測(cè)后得到的邊緣像素點(diǎn)集合需要進(jìn)行連接處理來(lái)將其連接成有意義的邊。通過(guò)OR運(yùn)算結(jié)合模糊分割和邊緣信息,去除斷邊;利用形態(tài)學(xué)重新填充圖像中的空洞,從而使其邊緣結(jié)果得到了大的改善。

對(duì)于Canny邊緣檢測(cè)后產(chǎn)生的斷邊,經(jīng)OR運(yùn)算后斷裂的邊可以得到很好的連接,其整體輪廓邊緣較Canny邊緣檢測(cè)后有了很大的改善,經(jīng)過(guò)對(duì)比后可以看出OR運(yùn)算后得到的輪廓與原始牛體輪廓相似度很高,因此可以將其運(yùn)用到牛體體征測(cè)量的計(jì)算中。

3 牛體體征的測(cè)量

本文僅對(duì)兩個(gè)牛體指標(biāo)體高和體直長(zhǎng)進(jìn)行測(cè)量。

體高:由髻甲最高點(diǎn)到地面的垂直距離。

體直長(zhǎng):由肩端到坐骨端之間的水平直線距離。

牛體特征體高、體直長(zhǎng)的測(cè)量如圖3所示:

在邊緣檢測(cè)后的圖像中進(jìn)行牛體體尺的測(cè)量,通過(guò)計(jì)算得到牛體的實(shí)際尺寸。利用歐式公式以像素為單位計(jì)算二維兩個(gè)測(cè)點(diǎn)之間的長(zhǎng)度,選用一定的參考物建立像素與實(shí)際長(zhǎng)度的比例關(guān)系,通過(guò)與參照物的實(shí)際距離比較來(lái)計(jì)算牛體的實(shí)際體高和體直長(zhǎng)尺寸,這里選用牛耳標(biāo)作為標(biāo)定物,如圖4和圖5所示,已知二維平面上兩點(diǎn)A(x1,y1)與B(x2,y2)之間的歐氏距離公式為:

(1)

由式(1)經(jīng)計(jì)算得牛耳標(biāo)在圖4中兩平行線間像素距離為122個(gè)像素,已知牛耳標(biāo)實(shí)物兩平行線間的距離為74mm,由此,可以確定像素距離與實(shí)際距離之間的關(guān)系,即1像素=0.6066mm。

3.1 牛體高測(cè)量

這里用垂直于X軸的光標(biāo)直線在牛體邊緣檢測(cè)圖像牛體特征位置由左向右開(kāi)始掃描,光標(biāo)直線與牛體相交成一條線段,髻甲的位置,我們可以通過(guò)牛自然站立時(shí)其前肢的最高點(diǎn)來(lái)確定,測(cè)點(diǎn)位置如圖6所示。這樣牛體體高距離即可轉(zhuǎn)化為求髻甲最高點(diǎn)到地面這一線段的歐式距離的最大值。

由圖6測(cè)點(diǎn)信息,計(jì)算出圖中紅色體高標(biāo)記線段共有2192個(gè)像素單位,根據(jù)像素距離與實(shí)際距離的比例,可以計(jì)算出牛體體高為2192×0.6066=1329.6672mm,保留兩位小數(shù)得其體高為132.97cm。

3.2 體直長(zhǎng)測(cè)量

即測(cè)量牛肩部到其坐骨端后緣垂直線的水平距離。根據(jù)牛體體直長(zhǎng)的測(cè)量定義,在二值圖像中尋找其最大邊緣突變點(diǎn)確定坐骨端后緣的測(cè)點(diǎn)位置,這里將邊緣檢測(cè)后邊緣的最大突變點(diǎn)定位為測(cè)點(diǎn)起始位置,終點(diǎn)位置是過(guò)起點(diǎn)位置的垂線與肩端線的交點(diǎn),其測(cè)點(diǎn)位置如圖7所示,通過(guò)起始測(cè)點(diǎn)的位置,計(jì)算出點(diǎn)到直線的距離,確定出線段的歐式距離,即為牛體的體直長(zhǎng)的測(cè)量尺寸。

通過(guò)圖7測(cè)點(diǎn)信息,經(jīng)過(guò)像素距離計(jì)算,該線段共有2636個(gè)像素單位,由像素距離與實(shí)際距離的換算關(guān)系,可計(jì)算出牛體體直長(zhǎng)為2636×0.6066=1598.9976mm,保留兩位小數(shù)得其體長(zhǎng)為159.90cm。

3.3 與實(shí)際尺寸的對(duì)比

為了檢測(cè)該方法所得結(jié)果的準(zhǔn)確程度,事先通過(guò)卷尺等測(cè)量工具經(jīng)人工測(cè)量了其牛體的體高和體直長(zhǎng)數(shù)據(jù),測(cè)點(diǎn)位置與上述方法中的位置一致,通過(guò)實(shí)際測(cè)量其體高和體直長(zhǎng)各五次后,取其平均值將數(shù)據(jù)記錄下來(lái)作為實(shí)際測(cè)量值。然后對(duì)比分析兩組數(shù)據(jù),其結(jié)果如表2所示。

由表2中數(shù)據(jù)的相對(duì)誤差可知,利用牛體圖像測(cè)量牛體體高和體直長(zhǎng)的方法,其測(cè)量的相對(duì)誤差在±5%的活體動(dòng)物體尺檢測(cè)誤差標(biāo)準(zhǔn)允許范圍內(nèi),其測(cè)量誤差小于規(guī)定的誤差標(biāo)準(zhǔn),說(shuō)明該測(cè)量方法可用。

4 結(jié)論

經(jīng)過(guò)上述的數(shù)據(jù)對(duì)比分析可以得出,牛體圖像經(jīng)過(guò)Canny邊緣檢測(cè)后,在其基礎(chǔ)上進(jìn)行OR分割運(yùn)算所獲得的輪廓與實(shí)際的輪廓已經(jīng)非常接近,完全能夠滿足后續(xù)對(duì)牛體體高和體長(zhǎng)的測(cè)量要求,利用提取到的輪廓進(jìn)行牛體特征的測(cè)量,其測(cè)量誤差較小,測(cè)量精度較高,能夠避免人工測(cè)量中帶來(lái)的諸多不便,為現(xiàn)代畜牧中對(duì)于牛體體征的測(cè)量,提供了一種高效可行的方法。

參考文獻(xiàn)

[1] 謝鳳英.數(shù)字圖像處理及應(yīng)用[M].北京:電子工業(yè)出版社,2016:207.

[2] 王潤(rùn).圖像邊緣檢測(cè)算子的適用場(chǎng)景研究[J].電腦知識(shí)與技術(shù),2019,15(13):211-214.

[3] 彭嘉涵.圖像處理技術(shù)在近視眼診斷上的應(yīng)用[J].電腦編程技巧與維護(hù),2019(01):129-131.

[4] 劉遠(yuǎn)仲,曾黃麟,樊玉梅.基于Canny算子的白酒顯微圖像邊緣提取[J].四川理工學(xué)院學(xué)報(bào)(自然科學(xué)版),2011,24(03):341-344.

[5] 劉同海,滕光輝,付為森,李卓.基于機(jī)器視覺(jué)的豬體體尺測(cè)點(diǎn)提取算法與應(yīng)用[J].農(nóng)業(yè)工程學(xué)報(bào),2013,29(02):161-168.

[6] 李佳奇,趙文忠.幾種邊緣檢測(cè)算子在鐵路圖像中的應(yīng)用[J].河西學(xué)院學(xué)報(bào),2012,28(02):68-72.

[7] Canny.John.A Computational Approach to Edge Detection. IEEE Transactions on Patten Analysis and Machine Intel-ligence,1986,PAMI-8(6):679-698.

[8] 董云峰.基于MATLAB的圖像邊緣檢測(cè)方法的研究[J].大慶師范學(xué)院學(xué)報(bào),2018,38(03):30-32.

[9] 王智文.幾種邊緣檢測(cè)算子的性能比較研究[J].制造業(yè)自動(dòng)化,2012,34(11):14-16.

[10] 譚毓銀,陳綺.幾種圖像邊緣檢測(cè)算子的比較分析[J].電腦知識(shí)與技術(shù),2010,6(29):8326-8327.

[11] 高美歡,劉玉梅,王剛.基于MATLAB的圖像邊緣檢測(cè)算法的比較與分析[J].北京測(cè)繪,2018,32(01):48-51.

Application of? Edge-based Image Segmentation in Cow Body Measurement

SHI Wei,ZHANG Shuai-qi

(School of? Mechanical Engineering, Inner Mongolia University of? Science and Technology, Baotou Inner Mongolia? 014010)

Abstract:Image segmentation is the basis of image processing, analysis and understanding, and it has become one of the most active topics in the field of machine vision. Edge detection can outline the target object and contain rich information. It is an important method to extract image features in image segmentation, recognition and analysis. In this paper, the common operators such as Sobel、Roberts、Prewitt、Gauss-Laplace and Canny algorithms are compared to compare the effects of bovine image segmentation, and it is proved that Canny operator is superior to other operators in general. In view of the possible fracture and incompleteness of Canny operator segmentation, OR operation combined with blur and edge information is used to remove broken edges, and digital morphology is used to refill holes in the image to enhance the effect of edge outline display. On this basis, compared with the actual results, the measurement results of cattle body have smaller error, higher measurement accuracy and better generality, which can meet the daily measurement requirements of body height and body length.

Key words:edge detection; image segmentation; Canny operator; OR operation; cow body measurement

神池县| 巧家县| 满洲里市| 磐石市| 土默特右旗| 铜鼓县| 忻州市| 资兴市| 彰化市| 长泰县| 安康市| 阿拉善右旗| 昆明市| 天祝| 镇赉县| 淳安县| 南阳市| 贵港市| 宾阳县| 会理县| SHOW| 江孜县| 石棉县| 三穗县| 湛江市| 赣榆县| 肃宁县| 巴彦淖尔市| 榆林市| 贵溪市| 奈曼旗| 隆昌县| 安远县| 田东县| 邯郸市| 石台县| 绥芬河市| 原阳县| 玉环县| 扎赉特旗| 克什克腾旗|