王建元,郭威,劉洋,李菁華
(東北電力大學(xué) 電氣工程學(xué)院,吉林 吉林132012)
目前機(jī)器人正在慢慢融入到我們的現(xiàn)實(shí)生活之中,其中目標(biāo)識別技術(shù)又是機(jī)器人學(xué)最為基本的問題之一,從大量圖像之中提取有效信息,讓機(jī)器人在工作環(huán)境之中完成目標(biāo)識別,需要利用一種快速有效的目標(biāo)識別算法,這種算法要考慮到機(jī)器人在實(shí)際中靈活多變性。人類可以在極短時間內(nèi)對圖像的特征進(jìn)行識別,但是對于機(jī)器人而言視覺目標(biāo)識別這是一件很困難的事情[1]。
視覺傳感器體積小,質(zhì)量輕,價格便宜,采樣時間段,磁場影響范圍小,所以移動機(jī)器人可以通過視覺傳感器獲取大量的圖像信息,從這些圖像信息之中對圖像特征提取和匹配是我們研究的基礎(chǔ)和前提。移動機(jī)器人的目標(biāo)識別主要根據(jù)機(jī)器人在先前獲得的圖像信息作為標(biāo)準(zhǔn),與當(dāng)前獲取的圖像目標(biāo)進(jìn)行比較和分析,若兩者目標(biāo)圖像達(dá)到一致或者相似,則機(jī)器人認(rèn)為已完成目標(biāo)識別[2]。我們可以通過圖像的紋理、顏色、形狀、興趣點(diǎn)作為特征檢索,由于機(jī)器人得到圖像會受到環(huán)境的影響,所以我們要采取適當(dāng)?shù)乃惴ㄟM(jìn)行圖像比較。本文通過移動機(jī)器人獲得的圖像進(jìn)行紋理分析與SIFT尋找興趣點(diǎn)完成對圖像的分析研究。機(jī)器人移動過程需要耗電,那么需要對移動機(jī)器人充電,通過識別電源插座,當(dāng)移動機(jī)器人電量降低到一定數(shù)值時,移動機(jī)器人通過識別電源插座,當(dāng)所采集到的電源插座圖像與記憶中的圖像相匹配,移動機(jī)器人認(rèn)為是插座,然后進(jìn)行充電[3]。
紋理是描述圖像最為基本的概念,具有某種局部的性質(zhì),是圖像空間排列規(guī)則的反復(fù)出現(xiàn)的局部特征,通常認(rèn)為圖像的頻譜中的高能窄脈沖和紋理關(guān)系密切,光滑的圖像一般不認(rèn)為是紋理圖像[4]。紋理是圖像中不可缺少的視覺特性,紋理描繪了局部區(qū)域之中像素之間的關(guān)系,也描述了圖像的空間分布特征,可以通過粗糙度、方向性、對比度、和規(guī)則等方面進(jìn)行描述。用形似性作為度量準(zhǔn)則,是通過計(jì)算機(jī)找到與用戶想得到的最為相似的圖像,并不要求最精確的匹配,可以通過得到的相似度的大小進(jìn)行排序[5]。
SIFT算法是一種尺度不變特征的變換算法,當(dāng)圖像經(jīng)過仿射變換,圖像之中的特征點(diǎn)不會發(fā)生變化,仿射變化包括圖像的旋轉(zhuǎn)、有遮擋物體、平移等。移動機(jī)器人獲得的圖像受到光線的影響,傳感器角度的影響,所以SIFT算法在移動機(jī)器人圖像識別中有很好的應(yīng)用前景。
灰度共生矩陣是一種行之有效的分析紋理特征的經(jīng)典方法,該方法研究的灰度級別的空間依賴關(guān)系是從數(shù)學(xué)的角度來研究的,灰度共生矩陣通過灰度值不同的像素分布反應(yīng)分布特性,反應(yīng)像素之間的位置關(guān)系和分布特征。它的基本過程是首先利用像素對之間的方向和距離數(shù)據(jù)構(gòu)造出共生矩陣,然后從共生矩陣之中提取出能量、對比度、熵等對分析紋理特征有意義的統(tǒng)計(jì)量,提高檢索速度與效率[6]。
灰度共生矩陣?yán)脠D像距離d=(d x,d y)的兩個灰度像素同是出現(xiàn)的概率Pij定義的,i是一個像素的灰度值,j是另一個像素的灰度值,L是的灰度級別,共生矩陣階數(shù)為L×L,Pij定義為:
式中S表像素對的集合;#S集合S的元素個數(shù);x,y…N-1代表第一個像素的坐標(biāo)形式;i,j=0,1…L-1代表了像素的灰度級別;P(i,j)代表像素出現(xiàn)的概率聯(lián)合密度。在上式中,d x,d y∈(-N+1,-N-1),共有(2N-1)×(2N-1)。
式(1)的計(jì)算量與工作量都很大,計(jì)算共生矩陣較為麻煩。但是Pij是一個對稱矩陣,所以我們采用四個方向?yàn)椋海?°,45°,90°,135°)。
其中 d=(0,d),(d,d),(-d,d)進(jìn)而簡化了式(1)的計(jì)算公式,表示如下[7-8]:
式(5)的計(jì)算結(jié)果得到的共生矩陣只包含了一半的空間信息,但是Pij是一個對稱矩陣,因此將上式計(jì)算結(jié)果得到的共生矩陣進(jìn)行翻轉(zhuǎn)之后和原來得到的共生矩陣進(jìn)行疊加,再次得到的灰度分布信息是整個空間的域。因此得到式(6)。
將提取出來的圖像特征表示成為特征向量的形式,通過一定的相似距離的計(jì)算準(zhǔn)則算出向量之間的距離,用向量之間的距離表示相似度的大小,距離越小表示相似性越大。相似性度量是將不同的特征分量之間的距離的疊加表示特征向量之間的距離。本文以歐氏距離作為測量特征向量之間的距離方法,其公式表達(dá)式如式(7)。
式中x,y代表兩幅圖對應(yīng)的特征向量;xi和yi代表特征分量;D(x,y)表示圖像之間的距離。歐式公式比較準(zhǔn)確的反映出人類視覺感知的相似性準(zhǔn)則,歐式公式認(rèn)為特征向量的分量之間的關(guān)系是同等重要的,是平等的。
機(jī)器人移動過程需要耗電,那么需要對移動機(jī)器人充電,通過識別電源插座,當(dāng)移動機(jī)器人電量降低到一定數(shù)值時,移動機(jī)器人通過識別插座,當(dāng)所采集的圖像與移動機(jī)器人自身記憶中的電源插座相匹配時,如果匹配得到的相似度較高,移動機(jī)器人認(rèn)為是插座,然后進(jìn)行充電,如圖1所示。
圖1 紋理分析比較圖像Fig.1 Compare images by texture analysis
通過紋理分析編程計(jì)算得出兩個圖像的相似距離為0.008 0,相似度為84%;兩者相似度較高,認(rèn)為是同一張圖像,那么移動機(jī)器人可以在此處自主充電如表1所示。
表1 圖像灰度共生矩陣的紋理參數(shù)Tab.1 Texture parameters of image gray co-occurrencematrix
由于移動機(jī)器人攝像頭獲取的圖像會受到角度與光線的影響,紋理分析的方法就有一定的局限性了,而SIFT算法具有尺度不變特征,能夠很好解決環(huán)境對圖像的影響。
SIFT主要包括4個步驟[9-10]:
(1)尺度空間極值檢測
對于二維圖像I(x,y),在不同尺度下的尺度空間下表示 L(x,y,δ)可由圖像 I(x,y)與高斯核 G(x,y,δ)的卷積得到。建立圖像的DOG金字塔,在DOG尺度空間中的26個領(lǐng)域中檢測極值,D(x,y,δ)是兩個相鄰尺度圖像之差,即:
一個點(diǎn)如果與周圍八個點(diǎn)以及上下層的十八個領(lǐng)域點(diǎn)共26個領(lǐng)域中是最大值與最小值,就確定該點(diǎn)是圖像在該尺度下的一個特征點(diǎn);
(2)利用關(guān)鍵點(diǎn)領(lǐng)域像素的梯度分布特征為每個關(guān)鍵點(diǎn)指定方向參數(shù),使得算子具有旋轉(zhuǎn)不變性質(zhì)。
式中為(x,y)處梯度的模值和方向公式;式中L所用的尺度為每個關(guān)鍵點(diǎn)各自所在尺度;
(3)生成SIFT特征向量,把坐標(biāo)軸旋轉(zhuǎn)到特征點(diǎn)方向,保證旋轉(zhuǎn)不變性,對每個關(guān)鍵點(diǎn)使用4×4共種子點(diǎn)來描述,這樣對于一個關(guān)鍵點(diǎn)可以產(chǎn)生個數(shù)據(jù),形成維的SIFT特征向量,即特征描述符;
(4)特征點(diǎn)匹配是指在找出圖像的特征點(diǎn)后,尋找圖像間特征點(diǎn)的對應(yīng)關(guān)系,通常采用最近領(lǐng)方法,查找每一個特征點(diǎn)在另一相圖的最近領(lǐng),理想狀態(tài)下兩幅相圖之間相同部分的特征點(diǎn)應(yīng)該具有相同的特征描述向量,所以它們之間的距離應(yīng)該最近,如圖2所示。
圖2 機(jī)器人記憶中的圖像與有旋轉(zhuǎn)角度圖像Fig.2 Robotmemory of the image and the rotation angle of the image
對SIFT算法進(jìn)行編程,得到圖3與圖4。
圖3 輸入圖片得到關(guān)鍵點(diǎn)Fig.3 Key points obtained by entering the picture
圖4 機(jī)器人記憶中的圖像與180度旋轉(zhuǎn)角圖像匹配Fig.4 Matching of 180 degree rotation angleof the image and the imagememory of the robot
將圖3數(shù)據(jù)做成表2。
表2 圖像提取的特征點(diǎn)比較Tab.2 Comparing of the extracted feature point of image
從中我們可以計(jì)算出兩張圖像的相似度為72%,移動機(jī)器人認(rèn)為此相似度較高,可以在此處進(jìn)行充電。
對電源插座進(jìn)行180度旋轉(zhuǎn)在進(jìn)行識別,通過對SIFT算法進(jìn)行編程,得到圖5與圖6。
圖5 輸入圖片得到關(guān)鍵點(diǎn)Fig.5 Key points obtained by entering the picture
圖6 機(jī)器人記憶中的圖像與有遮擋物體圖像匹配Fig.6 Matching of robotmemory of the image and the object image with cover
圖5整理出的數(shù)據(jù)如表3所示。
表3 圖像提取的特征點(diǎn)比較Tab.3 Comparing of the extracted feature point of image
從中我們可以計(jì)算出兩張圖像的相似度為68%,移動機(jī)器人認(rèn)為此相似度較高,可以在此處進(jìn)行充電。
實(shí)際中,當(dāng)電源附近有遮擋物體時,也會對圖像造成影響。SIFT算法對于解決有遮擋物體時也有很好的辨識度。通過SIFT算法進(jìn)行編程,得到圖6與圖7。
圖7 輸入圖片得到關(guān)鍵點(diǎn)Fig.7 Key points obtained by entering the picture
圖7整理出的數(shù)據(jù)如表4所示。
表4 圖像提取的特征點(diǎn)比較Tab.4 Comparing of the extracted feature point of image
當(dāng)有遮擋物體時,用SIFT算法我們可以計(jì)算出兩張圖像的相似度為80%,移動機(jī)器人認(rèn)為此相似度較高,可以在此處進(jìn)行充電。
本文針對移動機(jī)器人識別電源插座完成自主充電進(jìn)行了編程研究,編程結(jié)果有很好的普適性,為移動機(jī)器人后續(xù)環(huán)節(jié)提供了很好的鋪墊,基于圖像紋理與圖像興趣點(diǎn)的目標(biāo)識別有很好的實(shí)用性。圖像的紋理是描述圖像最為基本的概念,具有某種局部的性質(zhì)。圖像的興趣點(diǎn)是圖像的局部點(diǎn)特征,能夠降低圖像處理的計(jì)算量,局部特征獨(dú)特性好,計(jì)算率較高,有很好的辨識性。對于圖像的紋理特征與SIFT算法還有更好的改進(jìn)算法需要不斷地研究與實(shí)踐。