陳浩天
(徐州工程學(xué)院信息工程學(xué)院 江蘇 徐州 221000)
人工智能作為當今最熱門的技術(shù),活躍在全球各個領(lǐng)域。在誕生之初,麥卡錫就提出人工智能的關(guān)鍵因素應(yīng)該是創(chuàng)造一個可以完全單獨解決復(fù)雜問題的智能系統(tǒng)。機器人技術(shù)的發(fā)展在這一理念的指導(dǎo)下日趨成熟。如今,各種類型的機器人不僅可以模仿和還原人類的一些活動,幫助人類完成一些簡單易做的枯燥工作,甚至可以在一些特定領(lǐng)域執(zhí)行一些危險性高的精密工作。可以說,機器人的蓬勃發(fā)展代表著我們已經(jīng)走到了下一次工業(yè)革命的大門。
然而,隨著任務(wù)量的增加和應(yīng)用領(lǐng)域的迅速擴展,對仿人機器人感知能力的要求也越來越高。與人獲取信息的途徑類似,視覺技術(shù)是機器人獲取信息至關(guān)重要的感官。對不同領(lǐng)域特定圖像識別任務(wù)的研究決定了機器人工作質(zhì)量的上限。在此背景下,本文以軟銀NAO機器人在中國機器人技能大賽高爾夫比賽中的任務(wù)為背景,分析了NAO圖像識別的相關(guān)技術(shù)。
NAO機器人是法國研制的一種人形機器人。NAO擁有25個自由度,動作靈活。它還配有一個慣性導(dǎo)航儀裝置,在移動時十分平穩(wěn),并可隨時確定自己的位置[1]。因為其出色的工業(yè)設(shè)計水平和極高自由度的二次開發(fā)接口,是目前非常主流的高校教學(xué)科研類人機器人平臺。
NAO機器人通過頭部的兩個高清攝像頭檢測環(huán)境信息,920萬像素,30幀/秒的圖像分辨率。在NAO視覺系統(tǒng)運行過程中,兩個攝像頭各司其職,一般不會同時運行。下方攝像頭用于更近距離的視覺識別,上方攝像頭用于更長時間的掃描。NAO兩攝像頭視野夾角為四十度,系統(tǒng)可以根據(jù)兩個攝像機的視場和得到的視覺環(huán)境計算出目標與NAO的相對坐標。
用于圖像模式識別的特征大致可歸納為:(1)顏色或灰度的統(tǒng)計特征;(2)紋理、邊緣特征;(3)代數(shù)特征;(4)變換系數(shù)特征或濾波器系數(shù)特征[2]。針對NAO的實際算法設(shè)計和使用場景,本文主要討論前兩者。
在二十世紀八十年代,一些學(xué)者創(chuàng)造性地發(fā)明了用直方圖的形式來表示顏色模型。其原理是對于顏色特征,進行對應(yīng)特征向量的變換,進而表現(xiàn)為直方圖的形式,一直沿用至今。
形狀特征也是機器人視覺信息處理過程中不可缺少的特征,在機器人視覺信息處理中有著廣泛的應(yīng)用。在大多數(shù)圖像目標識別的任務(wù)中,因為形狀信息對識別結(jié)果有著更至關(guān)重要的影響,所以和顏色特征相比,形狀特征層次更高。形狀特征可以分為兩部分進行研究和討論。一種是輪廓特征,主流是傅里葉描述子方法。二是地域特征,常見的是不變矩法。
在圖像處理中,我們往往需要根據(jù)特征處理的具體情況對圖像進行分割,這使得我們的視覺信息處理更加高效和準確。這里我們主要討論兩種方法:基于像素的和基于邊緣的。
當我們面對圖片中相鄰像素點灰度值差異較小,但整個圖片的像素值分布比較離散的情況時,直方圖是一個很好的工具,這屬于基于像素的圖像分割范疇。當我們要分割這類圖像時,可以根據(jù)像素直方圖的極高值和極低值分別選擇和分割目標。這種方法也叫按激素聚類法。常用的方法有K-MEANS和C-means。聚類分析方法有些簡單易行,但缺點是聚類數(shù)的統(tǒng)計不容易準確,在目標平移和旋轉(zhuǎn)時干擾較大。這屬于基于像素的圖像分割。
而對于基于邊緣的方法,是從灰度圖片分析演化而來的,之后為了對只從灰度圖片分割做補充,出現(xiàn)了距量保持法分割子塊等技術(shù)。
3.3.1 OpenCV相關(guān)算法
OpenCV(open source computer vision library) 誕生于Intel研究中心,是一個開放源碼的計算機視覺庫[3]。于1999年出現(xiàn),在高校計算機視覺相關(guān)科研領(lǐng)域和工業(yè)應(yīng)用領(lǐng)域被廣泛應(yīng)用。不管是圖像、視頻還是信號的分析處理任務(wù),其都能很有效的應(yīng)用。
3.3.2 基于Hough變換的輪廓提取
Hough變換在圖像的邊緣檢測領(lǐng)域內(nèi)是應(yīng)用非常廣泛且高效的算法。這種算法的核心即把目標空間中的坐標變換到參數(shù)空間中,對應(yīng)參照的某一曲線或曲面。因此,擁有一樣的參數(shù)特征的點,在這一交換過程后,會在對應(yīng)的參數(shù)空間中產(chǎn)生交集。基于此,評估在交點處的累計程度以此來獲得所需的特征曲線的檢測數(shù)據(jù)。Hough可以隨著參量性質(zhì)的改變,變換成數(shù)種不同的圖形,包括基礎(chǔ)圖形——直線、橢圓以及進階圖形——雙曲線、拋物線等[4]。在此過程中,為了優(yōu)化變換效率,提高變換的精度,我們可以采取計算概率的方法,采用分層迭代的思想,并將級聯(lián)的方法加入進去,從而達到這一目的。
3.3.3 顏色空間之間的轉(zhuǎn)換
空間模型相對于一個物體來說,是指存在于三維空間中的一個子集,這個子集包含了顏色領(lǐng)域中所有的顏色,與此同時,這個子集還有一個要求,那就是子集本身必須是可見光子集。由于顏色模型的用途主要是代指顏色域中的一個特定色彩,并且可見光子集包括了任何一個顏色域,因此通過推斷我們可以判定,所有的可見光不能同時被納入顏色模型之中。此外,雖然相當一部分的顯示裝置都是基于三原色這一原理基礎(chǔ)的,連帶普通的圖形學(xué)說都是采用RGB的模型,但是因為從作用聯(lián)系上來說,三原色與色彩明度、色調(diào)等其他顏色參數(shù)并沒有本質(zhì)上的關(guān)聯(lián),所以并不采用RGB模型作為顏色模型。
在三原色當中,綠色和藍色是十分接近的,通常情況下只能采取調(diào)整亮度的方法進行兩者的相互轉(zhuǎn)化。當三個自變量中的兩個具有十分高的相似度,這就意味著通過改變自變量的參數(shù)的方式獲取相對應(yīng)的應(yīng)變量數(shù)值的操作將會變得較為復(fù)雜。除此之外,在三原色模型學(xué)說提出之初,每個顏色之間的設(shè)定本就不夠嚴密完善,顏色與顏色之間的每項數(shù)值都不能很明確地用距離來表現(xiàn)。基于以上列舉的兩個原因,我們將采用HSV模型代替RGB顏色模型的方式來進行算法的執(zhí)行。
HSV是利用色調(diào)H、飽和度S和亮度V這三個色彩的基本屬性來確定顏色的。它對應(yīng)一個倒立的六棱錐,六棱錐的頂部V=1,它包含RGB顏色模型中R=1,G=1和B=1的三個面,顏色最亮[5]。
根據(jù)現(xiàn)有的視覺測距技術(shù),我們可以將信息感知的總體分為下述兩種,分別是以單目視覺為基礎(chǔ)和立體視覺為基礎(chǔ)的距離測量方式。常規(guī)來說,只有使用立體視覺的系統(tǒng)才可以獲得對象環(huán)境的三維空間環(huán)境。但由于立體視覺技術(shù)的系統(tǒng)計算量龐大,難以運用到實際操作中去,相較之下,基于單目視覺的測量技術(shù)在結(jié)構(gòu)和成本等方面來講都優(yōu)于前者,并且它所對應(yīng)的攝像機標定的計算方法也更易方便操作。不僅如此,后者還可以免去立體視覺的一些弊端,舉個例子,立體視覺在現(xiàn)實場景運用中,其視覺范圍較小,三維立體的匹配也有較大的難度挑戰(zhàn)。在一系列對比下,單目視覺的測距技術(shù)顯得實用性很強。在此情況下,單目視覺應(yīng)用于現(xiàn)實生活中的智能車輛與可自行移動的機器人的視覺系統(tǒng)中,以此來實現(xiàn)識別與追蹤所規(guī)定的目標。
在我們談及視覺信息分析領(lǐng)域時,對于單目視覺無疑有兩個最重要的處理方式,第一是幀內(nèi)的,第二則是幀與幀之間的。在計算機執(zhí)行具體任務(wù)的時候,兩種方法通常是混合使用的。
在NAO執(zhí)行高爾夫任務(wù)時,主要基于單目比例縮放的幾何相似算法進行定位。即當目標坐標都在一個面上的時候,目標與這個面平行,并且與攝像頭系統(tǒng)的光軸相垂直。基于基礎(chǔ)光學(xué)理論,目標此時與圖像信息中的圖像具有相似的屬性,根據(jù)計算得到的倍數(shù),即可得到目標的實際坐標位置。在實際的高爾夫球擊打任務(wù)中,因為投影在圖片上顯示出來是圓形,即當NAO在尋球任務(wù)階段中只要發(fā)現(xiàn)了高爾夫球,不管球在哪個相對位置上,都可以沿著球圓心向著視線中線作一個垂直面,高爾夫球被偵測到的輪廓可以理解為這個垂直面在現(xiàn)實中與高爾夫球的相切面。以此思路繼續(xù),我們可以算出偵測點與球的距離,進而求得NAO需要前進的方向與水平距離,相關(guān)信息可以用于后續(xù)運動控制的決策。
在實際任務(wù)執(zhí)行過程中,發(fā)現(xiàn)視覺處理的效果上依然存在三方面的明顯不足:一是在光線變化下顏色識別不準確,在應(yīng)用中體現(xiàn)的即是識別不到紅色高爾夫球或是被別的紅色物體如紅色地標桿干擾;二是靜態(tài)視覺識別與動態(tài)活動控制的矛盾,即當NAO靜態(tài)識別出高爾夫球的相對位置并且規(guī)劃出路徑之后,有時會因為機器人電機過熱,行走姿態(tài)出現(xiàn)偏差引起單步步幅過大,停止位置太近導(dǎo)致下一次尋球工作無法進行,球完全無法出現(xiàn)在NAO視野范圍內(nèi);還有的時候會因為NAO行進過程不夠筆直導(dǎo)致停止位置與預(yù)期到達位置偏差太大,球無法進入預(yù)設(shè)好的視野范圍,最終無法進入擊球環(huán)節(jié)。三是當坐標計算偏角太大時,機器人的位置計算會出現(xiàn)較大誤差。這些誤差主要由于雙足機器人的先天缺陷導(dǎo)致,即預(yù)設(shè)的長距離運動誤差較大。克服這個問題主流的方法是將動態(tài)實時視覺反饋機制與步幅控制結(jié)合來進一步優(yōu)化,繞過對機器人進行長距離的運動規(guī)劃,實現(xiàn)精度提高。
綜上所述,本文在機器人NAO視覺系統(tǒng)的基礎(chǔ)上,基于NAO在執(zhí)行打高爾夫球任務(wù)時的技術(shù)特點,從NAO的基礎(chǔ)硬件分析,到其涉及的相關(guān)計算機視覺技術(shù),最后介紹了目標定位實現(xiàn)的思路與不足。