關(guān)靜 樓飛
摘? 要:目前基于鏈碼特征、霍夫變換等方法的規(guī)則幾何圖形的計(jì)算機(jī)識(shí)別算法,計(jì)算量較大,處理時(shí)間長(zhǎng),因此本文提出一種基于角點(diǎn)檢測(cè)的算法,通過提取幾何圖形的角點(diǎn)個(gè)數(shù)確定其形狀。利用MATLAB進(jìn)行實(shí)驗(yàn)仿真,對(duì)圓、三角形、四邊形、五邊形、六邊形和五角星形進(jìn)行識(shí)別,結(jié)果表明基于角點(diǎn)檢測(cè)的規(guī)則幾何圖形的識(shí)別算法計(jì)算準(zhǔn)確,正確率較高。
關(guān)鍵詞:規(guī)則幾何圖形;邊緣檢測(cè);角點(diǎn)檢測(cè)
中圖分類號(hào):TP391.41? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2019)24-0071-03
Abstract:The computation of regular geometry recognition algorithm based on chain code character or hough transform is heavy,and the time is long,so this paper proposed a algorithm based on corner detection,which obtain the shape by extracting the corners number of regular geometry. The recognition of circle,triangle,quadrilateral,pentagon,hexagon and pentagram is based on MATLAB,and experiment result state that the regular geometry recognition algorithm which based on corner detection were calculated accurately,and the accuracy is higher.
Keywords:regular geometry;contour detection;corner detection
0? 引? 言
利用計(jì)算機(jī)對(duì)規(guī)則幾何圖形進(jìn)行識(shí)別,在機(jī)器人定位、目標(biāo)追蹤、基于幾何圖形的自動(dòng)報(bào)靶系統(tǒng)等領(lǐng)域都有廣泛應(yīng)用[1]。在日常生活中,GPS導(dǎo)航和城市道路網(wǎng)規(guī)劃導(dǎo)航等也需要用到幾何屬性的測(cè)量。場(chǎng)景識(shí)別是一種利用計(jì)算機(jī)實(shí)現(xiàn)人的視覺功能的技術(shù),通過計(jì)算機(jī)對(duì)圖像或視頻進(jìn)行處理,自動(dòng)識(shí)別和理解圖像和視頻中的場(chǎng)景信息[2]。對(duì)幾何圖形的形狀進(jìn)行識(shí)別,包括圖像處理和圖像識(shí)別兩部分,常用的方法有霍夫變換、鏈碼特征、不變矩等。這些傳統(tǒng)的算法雖然準(zhǔn)確率較高,但計(jì)算速度較慢,數(shù)據(jù)量大,不適用于目標(biāo)追蹤、定位等需要快速檢測(cè)識(shí)別的領(lǐng)域。
本文提出基于角點(diǎn)檢測(cè)的幾何圖形識(shí)別算法,先對(duì)采集的圖像進(jìn)行預(yù)處理,然后提取幾何圖形的邊緣輪廓,最后基于輪廓提取圖形的角點(diǎn)確定其形狀。最終實(shí)驗(yàn)結(jié)果表明本文所用方法能夠準(zhǔn)確識(shí)別規(guī)則幾何圖形的形狀,速度較快,正確率高,且對(duì)于圖像的旋轉(zhuǎn)、平移變化等具有不變性。
1? 圖像預(yù)處理
1.1? 彩色圖像的灰度化
在對(duì)圖像進(jìn)行分析識(shí)別前,首先要對(duì)其進(jìn)行預(yù)處理,包括圖像的灰度化、增強(qiáng)等,突出重要的信息,抑制非重要信息。彩色圖像包含色彩信息和亮度信息,在本文中,色彩是非重要信息,可以忽略,因此為了減少計(jì)算量,需將彩色圖像轉(zhuǎn)化為灰度圖像,只包含圖像的亮度信息。
彩色圖像包含了彩色信息和亮度信息,灰度圖像則只有亮度信息。若彩色圖像中RGB的值均相等或進(jìn)行加權(quán)平均變?yōu)榱炼刃畔?,即可轉(zhuǎn)化為灰度圖像。彩色圖像轉(zhuǎn)化為灰度圖像的公式如下:Gray value=0.299R+0.587G+0.114B? ? ? ? ? ? ? (1)
式中,R、G、B分別為彩色圖像中對(duì)應(yīng)像素點(diǎn)的紅色分量、綠色分量和藍(lán)色分量。根據(jù)人眼對(duì)顏色的敏感度,可選取不同的權(quán)值,如式(1)所示。同時(shí),上式中的運(yùn)算為浮點(diǎn)運(yùn)算,速度較慢,為了提高運(yùn)算速度,式(1)可轉(zhuǎn)換為下式:
1.2? 圖像增強(qiáng)
圖像增強(qiáng)的目的是為了減少噪聲對(duì)圖像的影響,突出重要的像素部分,抑制不重要部分,主要方法有均值濾波、中值濾波和高斯濾波等??臻g濾波的實(shí)質(zhì)是利用可移動(dòng)的有限長(zhǎng)度的窗函數(shù),在灰度圖像中逐點(diǎn)移動(dòng),計(jì)算濾波后每個(gè)像素值,通過對(duì)像素值的改變實(shí)現(xiàn)圖像增強(qiáng)。
均值濾波也稱平滑線性濾波,其具體方法是:對(duì)當(dāng)前某個(gè)待處理的像素值,選擇一個(gè)模板,在該模板中待處理像素為中心像素,其像素值用模板中所有像素的均值代替。該方法對(duì)圖像的銳化程度有所減緩,通常用來減少高斯噪聲等。設(shè)f(a,b)為均值濾波處理后的像素點(diǎn)的灰度,m為窗函數(shù)內(nèi)像素點(diǎn)的總個(gè)數(shù),表達(dá)式如下:
均值濾波有很大的缺點(diǎn),因?yàn)樗荒芎芎玫匾种圃肼?,?huì)丟失圖像的細(xì)節(jié)部分,使圖像失去原來的清晰度。
高斯濾波的窗函數(shù)實(shí)際上是高斯函數(shù),通過高斯核的卷積算子,對(duì)像素點(diǎn)的鄰域進(jìn)行加權(quán)平均。高斯濾波可以把遠(yuǎn)大于或小于其鄰域值的像素點(diǎn)進(jìn)行平均,達(dá)到消除噪聲的目的。二維高斯核的表達(dá)式如下:
濾波又分為線性濾波和非線性濾波[3],線性濾波具有低通過性,在消除噪聲的同時(shí)也會(huì)模糊圖像的邊緣,而中值濾波是非線性濾波,可以避免模糊的缺點(diǎn)。其具體方法為:在模板內(nèi)把像素點(diǎn)根據(jù)像素值大小進(jìn)行排序,最后生成遞增或者遞減的序列,然后選取其中的中值,用這些中值來替換原來的像素值,其表達(dá)式如下:
經(jīng)過實(shí)驗(yàn)比較,中值濾波比均值濾波、高斯濾波效果較好,去噪時(shí)不會(huì)對(duì)原本圖像造成損傷和影響,所以本文中將采取中值濾波。對(duì)圖1中的幾何圖形進(jìn)行中值濾波,結(jié)果如圖2所示。
1.3? 圖像的二值化和取反
圖像的二值化是將灰度圖像轉(zhuǎn)化為黑白圖像,其原理是選取合適的閾值,將像素點(diǎn)中超過該閾值的灰度值設(shè)置為255,即白色,小于該閾值的灰度值設(shè)置為0,即黑色。閾值可通過圖像特點(diǎn)選取某一固定值,也可用最大類間方差法來確定。經(jīng)過二值化處理的圖像,將目標(biāo)與背景分為兩部分,對(duì)于后續(xù)的處理十分方便,大大降低了計(jì)算量和處理難度。本文中選擇最大類間方差法自動(dòng)確定閾值,當(dāng)灰度圖像某一個(gè)閾值使方差值變得最大,同時(shí)兩個(gè)區(qū)域錯(cuò)分也是最小時(shí),這個(gè)閾值就是最適合的閾值。
圖像二值化后再進(jìn)行取反,即將原圖的黑色像素點(diǎn)變?yōu)榘咨咨袼攸c(diǎn)變?yōu)楹谏?。?duì)圓形圖像分別進(jìn)行二值化和取反操作后,結(jié)果如圖3所示。
2? 圖像的邊緣檢測(cè)和角點(diǎn)檢測(cè)
2.1? 邊緣檢測(cè)算法
幾何圖形的形狀計(jì)算通過其角點(diǎn)個(gè)數(shù)確定,而提取角點(diǎn)是基于圖像的邊緣輪廓進(jìn)行。圖像的邊緣包含了大量重要的信息,邊緣檢測(cè)算法通常基于它的一階或二階導(dǎo)數(shù)算子進(jìn)行,如Sobel、Robert、Laplace和Canny算子。
Sobel算子對(duì)噪聲有平滑的作用,有一定程度上能夠降低噪聲,但是不能很好地定位到圖像的邊緣;Robert相比其他算子而言能更好地檢測(cè)到邊緣的細(xì)節(jié),但是不能有效減少噪聲[4];Laplace是二階微分算子,通過計(jì)算圖像的二階導(dǎo)數(shù)極值檢測(cè)邊緣;Canny算子于1986年被John Canny提出,是應(yīng)用最廣泛且最成功的算法之一,通過對(duì)圖像先平滑然后對(duì)灰度值求導(dǎo)的方法檢測(cè)邊緣[5]。本文利用Canny算子檢測(cè)圖像的邊緣,具體過程如下:
(1)圖像梯度的幅值和方向:圖像的邊緣變化率比較大,可用梯度來衡量。根據(jù)梯度算子可得到灰度值在x、y方向上的偏導(dǎo)數(shù)的矩陣。
(2)非極大值抑制:圖像的梯度幅值矩陣中,元素值大并不能表示該點(diǎn)就是邊緣點(diǎn),因此需要進(jìn)行非極大值抑制。非極大值抑制,簡(jiǎn)單來說就是判斷在局部范圍內(nèi)當(dāng)前像素點(diǎn)的梯度值在該梯度方向上是否為最大值,如果不是,該像素點(diǎn)對(duì)應(yīng)的灰度值則設(shè)為0,該像素點(diǎn)也不屬于邊緣點(diǎn)[6]。
(3)滯后閾值算法:進(jìn)行非極大值抑制之后,邊緣上會(huì)有一些離散的點(diǎn),這些不連續(xù)的點(diǎn)也需要處理,所以要使用雙閾值。如果像素點(diǎn)的梯度的幅值大于高閾值的所有的點(diǎn),就可以確定為邊緣點(diǎn),如果小于最低的閾值,則可以排除。
(4)邊緣檢測(cè):經(jīng)過雙閾值過濾后,剩下的就是梯度幅值在高低閾值中間的點(diǎn)。如果這些點(diǎn)的8鄰域內(nèi)存在一個(gè)點(diǎn)大于低閾值,也認(rèn)為是邊緣點(diǎn)。遍歷完所有的像素點(diǎn),將邊緣點(diǎn)的灰度值設(shè)置為255,非邊緣點(diǎn)的灰度值設(shè)置為0,結(jié)果如圖4所示。
2.2? 角點(diǎn)檢測(cè)算法
從上世紀(jì)七十年代第一個(gè)Moravec算子誕生算起,經(jīng)過幾十年的發(fā)展,有Moravec算子、Forstner算子、SUSAN算子和Harris算子等。本文用Harris算子對(duì)角點(diǎn)進(jìn)行檢測(cè),該算法認(rèn)為若某像素點(diǎn)上某窗口向任意方向移動(dòng)都導(dǎo)致圖像灰度的明顯變化,則該像素點(diǎn)則為角點(diǎn)[7]。設(shè)窗口平移[m,n]產(chǎn)生灰度變化為:
3? 實(shí)驗(yàn)分析
利用上述算法,本文分別對(duì)三角形、四邊形、正五邊形、正六邊形和五角星形的形狀進(jìn)行檢測(cè),先將彩色圖像轉(zhuǎn)化為灰度圖像,并用中值濾波減少噪聲對(duì)圖像的影響,將圖像轉(zhuǎn)為二值圖,然后進(jìn)行邊緣檢測(cè),提取幾何圖形的輪廓,最后基于圖形的輪廓檢測(cè)角點(diǎn),通過角點(diǎn)個(gè)數(shù)確定其形狀。識(shí)別結(jié)果如圖6所示。
為了驗(yàn)證本文算法的有效性,選用100張規(guī)則幾何圖形進(jìn)行試驗(yàn),試驗(yàn)證明總體識(shí)別率在95%以上,成功率較高。
4? 結(jié)? 論
本文提出基于角點(diǎn)檢測(cè)的算法對(duì)規(guī)則幾何圖形進(jìn)行識(shí)別,通過圖像預(yù)處理、邊緣檢測(cè)和角點(diǎn)檢測(cè)計(jì)算幾何圖形的角點(diǎn)個(gè)數(shù)從而確定其形狀。試驗(yàn)結(jié)果表明本文所設(shè)計(jì)的算法過程簡(jiǎn)單,計(jì)算量較小,同時(shí)識(shí)別率高,速度較快。
參考文獻(xiàn):
[1] 孫來軍,李江游,候影,等.一種規(guī)則幾何圖形的計(jì)算機(jī)識(shí)別方法 [J].微型機(jī)與應(yīng)用,2011,30(9):42-45.
[2] 宋杰,孟朝暉.圖像場(chǎng)景識(shí)別中深度學(xué)習(xí)方法綜述 [J].計(jì)算機(jī)測(cè)量與控制,2018,26(1):6-10.
[3] ARASI R E P,SUGANTHI M. A Clinical Support System for Brain Tumor Classification Using Soft Computing Techniques [J]. Journal of Medical Systems,2019,43(5):1-11.
[4] 林生佑,石教英.基于HVS的彩色圖像邊緣檢測(cè)算子 [J].中國(guó)圖象圖形學(xué)報(bào),2005(1):43-47+130.
[5] CANNY J. A Computational Approach To Edge Detection [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,1986,8(6):679-698.
[6] 關(guān)靜.人工路標(biāo)拓?fù)淠J綐?gòu)建與識(shí)別及其應(yīng)用研究 [D].鎮(zhèn)江:江蘇科技大學(xué),2017.
[7] 張小洪,李博,楊丹.一種新的Harris多尺度角點(diǎn)檢測(cè) [J].電子與信息學(xué)報(bào),2007(7):215-218.
作者簡(jiǎn)介:關(guān)靜(1992-),女,漢族,山西運(yùn)城人,助教,碩士,研究方向:圖像處理與模式識(shí)別。