版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄2022/12/221目錄2022/12/19110.1智能中型足球機(jī)器人視覺子系統(tǒng)2022/12/222智能中型足球機(jī)器人視覺系統(tǒng)的硬件配置1. 全景視覺系統(tǒng)在足球機(jī)器人的攝像機(jī)是最重要的傳感器,它的重要性就相當(dāng)于眼睛對(duì)于人。在Robocup中型組比賽中,機(jī)器人普遍采用全景視覺系統(tǒng)。它由一個(gè)攝像機(jī)和一個(gè)反射鏡組成,見圖10.1。反射鏡裝在機(jī)器人頂部,鏡面向下,攝像機(jī)朝上正對(duì)著反射鏡。攝像機(jī)得到的是帶有畸變的俯視圖,顯示了機(jī)器人周圍360度的情況。這和人不一樣,因?yàn)槿送ǔ2荒芸吹缴砗?,除非把頭轉(zhuǎn)過去。圖10.2是這種配置的視覺系統(tǒng)獲得的一張典型圖像??梢钥闯鏊鼛в袊?yán)重的畸變,圖像中間的黑色區(qū)域代表機(jī)器人自身,黑色區(qū)域的中心代表了機(jī)器人的中心。10.1智能中型足球機(jī)器人視覺子系統(tǒng)2022/12/192智全景視覺系統(tǒng)例子2022/12/223某機(jī)器人的視覺系統(tǒng)的硬件配置一張典型的全景視覺系統(tǒng)拍攝的圖片全景視覺系統(tǒng)例子2022/12/193某機(jī)器人的視覺系統(tǒng)的硬多攝像頭的視覺系統(tǒng)2022/12/224全景視覺的目標(biāo)識(shí)別有其缺陷,特別是對(duì)球的識(shí)別。根據(jù)RoboCup中型組的比賽規(guī)則,機(jī)器人的高度不能高于80cm,因此從全景鏡中就不能識(shí)別到高于80cm的物體。而在智能中型足球機(jī)器人比賽中常常會(huì)有挑起的球高于機(jī)器人的情況。有很多參賽隊(duì)為解決這個(gè)問題,提出了一些方案。比如中國(guó)國(guó)防科技大學(xué)的獵豹機(jī)器人上裝有兩套視覺系統(tǒng):一套全向視覺系統(tǒng)和一個(gè)廉價(jià)的網(wǎng)絡(luò)攝像頭加裝廣角鏡頭構(gòu)成的前向視覺系統(tǒng)。荷蘭TechUnited隊(duì)使用一個(gè)工業(yè)智能攝像機(jī)作為前向攝像機(jī),主要實(shí)現(xiàn)球的輔助識(shí)別與定位作用。當(dāng)球速達(dá)到10m/秒時(shí),一個(gè)工作于25幀每秒(fps)的全景攝像機(jī)是不能完成這個(gè)識(shí)別任務(wù)的,他們使用的攝像機(jī)是高速的工業(yè)攝像機(jī)系統(tǒng),可以工作在高達(dá)200fps。要處理200fps,640X480分辨率的實(shí)時(shí)圖像,如果由PC機(jī)來完成,無論對(duì)于傳輸還是處理都是極難實(shí)現(xiàn)的。荷蘭隊(duì)選用TheVisionComponentsVC4458攝像機(jī)(最高242fps@640x480pixels),具有板載處理能力,所有的圖像處理和識(shí)別都在智能攝像機(jī)內(nèi)部完成,攝像機(jī)和主機(jī)通信的內(nèi)容只有球的位置和球速。多攝像頭的視覺系統(tǒng)2022/12/194全景鏡曲線2022/12/225
目前,具有全景視覺機(jī)器人中廣泛使用的全景鏡面主要是雙曲線鏡面,通過攝像機(jī)采集到的圖像具有全景水平視角,使機(jī)器人能夠獲取全景圖像。該類全景數(shù)學(xué)模型簡(jiǎn)單,但得到的圖像存在嚴(yán)重的失真,尤其距離機(jī)器人遠(yuǎn)處的圖像畸變很大,直接造成識(shí)別場(chǎng)上標(biāo)志線或球等目標(biāo)的困難。通過使用組合全景鏡面,可以克服現(xiàn)有全景鏡面得到的圖像失真嚴(yán)重的不足。組合全景鏡面的第一段曲線保證了在一定距離范圍內(nèi)水平場(chǎng)地上的點(diǎn)和圖像上的像素點(diǎn)具有指數(shù)函數(shù)關(guān)系;組合鏡面第二段曲線是一段圓弧,保證了在距離較遠(yuǎn)處能夠看到一定高度的物體。這種構(gòu)造的鏡面能夠很大程度地減小圖像失真的情況。全景鏡曲線2022/12/195 目前,具有全景視覺機(jī)器人中通過雙曲線鏡面獲得的圖像2022/12/226通過雙曲線鏡面獲得的圖像2022/12/196分段組合全景鏡面曲線2022/12/227分段組合全景鏡面曲線2022/12/197視覺系統(tǒng)基本信息的提取2022/12/228視覺系統(tǒng)基本信息的提取2022/12/198視覺系統(tǒng)的坐標(biāo)系2022/12/229在闡述視覺系統(tǒng)之前,首先定義系統(tǒng)使用的3個(gè)三個(gè)坐標(biāo)系:圖像坐標(biāo)系,機(jī)器人坐標(biāo)系,全局坐標(biāo)系。這3個(gè)坐標(biāo)系貫穿了整個(gè)視覺系統(tǒng)的始末。其中,機(jī)器人坐標(biāo)系和全局坐標(biāo)系,更是貫穿了機(jī)器人的整個(gè)軟件系統(tǒng)(包括視覺系統(tǒng),決策系統(tǒng),通訊系統(tǒng))。圖像坐標(biāo)系I(x,y):x和y表示像素位。機(jī)器人坐標(biāo)系L(x,y):這個(gè)坐標(biāo)系建立在機(jī)器人的視角上。它的原點(diǎn)就是機(jī)器人中心。Y軸指向了機(jī)器人的正前方(見圖10.10)。這個(gè)坐標(biāo)系也稱為實(shí)際坐標(biāo)系。全局坐標(biāo)系G(x,y):這個(gè)坐標(biāo)系用來表明機(jī)器人的位置。它的原點(diǎn)為球場(chǎng)的中心。(見圖10.10)圖10.9定義了圖像坐標(biāo)系,機(jī)器人就是圖像中央的黑色區(qū)域,該區(qū)域的中心不一定是圖像的正中心,但黑色區(qū)域的中心點(diǎn)C對(duì)應(yīng)的是機(jī)器人的中心,這里稱其為圖像中心。原點(diǎn)在圖像的左上角,圖像中央黑色區(qū)域的中心是機(jī)器人的中心位置。視覺系統(tǒng)的坐標(biāo)系2022/12/199在闡述視覺系統(tǒng)之前,首三個(gè)坐標(biāo)系圖示2022/12/2210圖像坐標(biāo)系原點(diǎn)在圖像的左上角,圖像中央黑色區(qū)域的中心是機(jī)器人的中心位置。機(jī)器人坐標(biāo)系和全局坐標(biāo)系
三個(gè)坐標(biāo)系圖示2022/12/1910圖像坐標(biāo)系機(jī)器人坐標(biāo)系距離函數(shù)和反距離函數(shù)2022/12/2211全景視覺系統(tǒng)獲得的圖像通常帶有不同程度的畸變,如圖10.9,需要進(jìn)行有效的校正。于是引出一個(gè)問題,例如,距離圖像中心200個(gè)像素的點(diǎn)所對(duì)應(yīng)(投影)的地面上的點(diǎn)與機(jī)器人的距離是多少(這里認(rèn)為是地面上的一點(diǎn),而不是一個(gè)具體的物體上的一點(diǎn),因?yàn)槲矬w具有高度,判斷物體的位置是一個(gè)三維問題,單目視覺本質(zhì)上只能解決二維問題,在本系統(tǒng)中計(jì)算物體的距離都是通過該物體與地面的接觸點(diǎn)把問題簡(jiǎn)化成二維的)。在圖像處理之前,必須得到一個(gè)重要的函數(shù),這個(gè)函數(shù)的輸入是圖像上與圖像中心的像素距離r,輸出是機(jī)器人與這個(gè)像素對(duì)應(yīng)實(shí)際位置的實(shí)際距離R,即R=F(r)。這里把它稱為距離函數(shù),標(biāo)定視覺系統(tǒng)的含義就是獲得距離函數(shù),即把像素坐標(biāo)轉(zhuǎn)換成實(shí)際坐標(biāo)。距離函數(shù)只對(duì)同一高度有效。有了它,才能實(shí)現(xiàn)測(cè)量物體與離機(jī)器人的距離,實(shí)現(xiàn)定位。距離函數(shù)使實(shí)現(xiàn)整個(gè)視覺系統(tǒng)成為可能。距離函數(shù)的獲得方法可以是手動(dòng)測(cè)量的,也可以是自動(dòng)的。距離函數(shù)的反函數(shù)被稱為反距離函數(shù)r。r=G(R);(10.18)G是F的反函數(shù)。該函數(shù)主要被用來計(jì)算處在場(chǎng)地的邊界的像素位置,但需要機(jī)器人首先完成自定位。在綠色場(chǎng)地的自動(dòng)標(biāo)定和識(shí)別球的過程中,反距離函數(shù)有著極其重要的作用。距離函數(shù)和反距離函數(shù)2022/12/1911全景視覺系統(tǒng)獲得坐標(biāo)轉(zhuǎn)換2022/12/2212在高度為0的情況下,圖像坐標(biāo)系和機(jī)器人坐標(biāo)系是可以互相轉(zhuǎn)化的,轉(zhuǎn)化的中介就是距離函數(shù)以及反距離函數(shù),假設(shè)圖像坐標(biāo)系中的一點(diǎn)(x,y),要計(jì)算它在地面上的投影的坐標(biāo)(機(jī)器人坐標(biāo)系下的坐標(biāo)),圖像中心的坐標(biāo)為(xc,yc)。當(dāng)從圖像坐標(biāo)系轉(zhuǎn)化成機(jī)器人坐標(biāo)系時(shí),先通過距離函數(shù)計(jì)算實(shí)際距離,然后再計(jì)算角度,計(jì)算角度的公式取決于攝像機(jī)相對(duì)于機(jī)器人的裝配方向。這樣,得到了實(shí)際距離和實(shí)際角度就可以計(jì)算實(shí)際坐標(biāo),即機(jī)器人坐標(biāo)系下的坐標(biāo)。如果要從實(shí)際坐標(biāo)轉(zhuǎn)成圖像坐標(biāo),就執(zhí)行相反的過程。實(shí)際坐標(biāo)和全局坐標(biāo)的轉(zhuǎn)化以自定位為中介。定位不成功將導(dǎo)致轉(zhuǎn)化失去原有的意義。圖像坐標(biāo)不能直接和全局坐標(biāo)相互轉(zhuǎn)換,要以實(shí)際坐標(biāo)為中介。坐標(biāo)轉(zhuǎn)換2022/12/1912在高度為0的情況下,圖像坐標(biāo)無信息區(qū)的標(biāo)定2022/12/2213無支撐柱的機(jī)器人的全景視覺系統(tǒng)得到的圖像,它的全景鏡通常是由透明材料制作成的筒狀支撐架與攝像機(jī)聯(lián)接裝配,因此在生成圖像時(shí)不會(huì)有和圖像無關(guān)的支撐柱信息存在,得到的是一個(gè)完整的全景視覺圖像。有支柱的機(jī)器人的全景視覺系統(tǒng)得到的圖像,它的中央和四周存在黑色區(qū)域,不反應(yīng)機(jī)器人四周的情況,如果在進(jìn)行信息提取的時(shí)候,屏蔽這些區(qū)域,就可減少干擾和不必要的CPU負(fù)擔(dān)。為了屏蔽這些無信息區(qū),需要建立一張查找表,對(duì)于一個(gè)像素,通過該表可以查到此像素是否處在無信息區(qū)內(nèi),如果處在無信息區(qū)內(nèi),算法就跳過,不進(jìn)行信息提取操作。無信息區(qū)的標(biāo)定2022/12/1913無支撐柱的機(jī)器人的全景無信息區(qū)圖示2022/12/2214無支柱的全景視覺系統(tǒng)圖像全景鏡的三根支撐柱遮擋了“視線”,增加了無用區(qū)域自動(dòng)無信息區(qū)標(biāo)定結(jié)果無信息區(qū)圖示2022/12/1914無支柱的全景視覺系統(tǒng)圖像顏色定義——構(gòu)建顏色查找表2022/12/2215在視覺系統(tǒng)工作之前先要對(duì)顏色進(jìn)行定義,即什么是綠色(場(chǎng)地顏色),什么是黑色(機(jī)器人顏色),什么是橙紅色(足球顏色)。定義方法可以分為兩類,第一類使用閾值,例如對(duì)于顏色空間RGB,把R>200,G<100,B<100同時(shí)成立的顏色定義為紅色。第二類是建立顏色查找表,表中條目數(shù)等于可能出現(xiàn)的顏色值的數(shù)量(即RGB能夠組成的所有組合的數(shù)量,對(duì)于大多數(shù)的計(jì)算機(jī)為256×256×256),條目的內(nèi)容是該顏色值對(duì)應(yīng)的顏色(例如綠色)代碼形式的表示,通過顏色查找表可以查出任何一個(gè)顏色值屬于或者不屬于某顏色。對(duì)比閾值法,使用顏色查找表對(duì)定義顏色得到的結(jié)果更加精細(xì)。顏色定義——構(gòu)建顏色查找表2022/12/1915在視覺系統(tǒng)視覺標(biāo)定2022/12/2216(a)相似顏色的擴(kuò)散(b)把(a)中區(qū)域內(nèi)的顏色定義為綠色的標(biāo)定結(jié)果(c)標(biāo)定完成后的結(jié)果視覺標(biāo)定2022/12/1916(a)相似顏色的擴(kuò)散(b)色塊提取與跟蹤2022/12/2217定義顏色查找表后,就可確定某個(gè)像素否是綠色(場(chǎng)地顏色),但是這些綠色點(diǎn)只是一個(gè)一個(gè)像素,程序并沒把它們連接成區(qū)域。區(qū)域是由相似顏色組成的色塊。表示區(qū)域最精確的辦法是獲得它的輪廓。獲得這些輪廓通常要耗費(fèi)較大的CPU資源,如擴(kuò)散算法。在某些場(chǎng)合下,不需要獲得精確的輪廓,但是需要更高的速度,應(yīng)用在這種場(chǎng)合下的算法的一個(gè)典型代表是CMU的算法,該方法得到的是框定一個(gè)區(qū)域的最小矩形,并且這個(gè)矩形是不允許旋轉(zhuǎn)的,輪廓的信息被丟棄。這里介紹一種基于RegionTracker精確的區(qū)域輪廓獲得方法,該方法由FelixvonHundelshausen開發(fā)并首先使用在足球機(jī)器人上。它不但能得到精確的邊界,而且非常迅速。因?yàn)橐曈X系統(tǒng)得到的是連續(xù)圖像,任意前后兩幀圖像都是很接近的,所以除了在初始時(shí)需要色塊提取外,在大多時(shí)間內(nèi)可以把問題歸結(jié)于跟蹤,跟蹤通常是比較省時(shí)的。色塊提取與跟蹤2022/12/1917RegionTracker算法2022/12/2218RegionTracker算法的基礎(chǔ)是擴(kuò)散算法。擴(kuò)散算法需要一個(gè)或者一批符合某種要求(如顏色)的種子點(diǎn),一張和圖像大小相同的布爾變量表來標(biāo)記圖像中的所有像素點(diǎn)是否已經(jīng)包含在所提取的區(qū)域內(nèi),這張表某個(gè)位置上為“否”,表示該位置對(duì)應(yīng)的像素點(diǎn)不在區(qū)域內(nèi),“是”表示在區(qū)域內(nèi),初始化時(shí),表中對(duì)應(yīng)種子所在位置的布爾變量置為是,其他都為否,表示只有種子在區(qū)域內(nèi),通過擴(kuò)散,將把一些符合要求的點(diǎn)標(biāo)記為在區(qū)域內(nèi)。擴(kuò)散算法從種子向鄰近點(diǎn)(上下左右的緊鄰著的像素)擴(kuò)散,判斷是否應(yīng)該擴(kuò)散某個(gè)緊鄰的像素點(diǎn)需要兩個(gè)條件,第一:顏色值屬于要求的顏色,二:被標(biāo)記為在當(dāng)前提取的區(qū)域之外。這兩個(gè)條件符合時(shí),把該像素標(biāo)記為處于正在當(dāng)前提取的區(qū)域內(nèi),并且作為進(jìn)一步擴(kuò)散的“根據(jù)地”,進(jìn)一步向外擴(kuò)散。當(dāng)算法擴(kuò)散到不可擴(kuò)散時(shí),輪廓就形成了。用一個(gè)數(shù)組來記錄輪廓上的點(diǎn),以及一張包含他們之間連接信息的表。由于兩幅連續(xù)的圖片中色塊變化不大,如圖10.16中的區(qū)域A和區(qū)域B,區(qū)域A表示前一幀的某個(gè)色塊(物體),區(qū)域B表示緊接著的后一幀的同一色塊。這兩個(gè)色塊常常有一大片交集,在RegionTracker中交集就是可以大加利用的對(duì)象。RegionTracker算法2022/12/1918Re對(duì)綠色場(chǎng)地實(shí)行色塊提取的結(jié)果,藍(lán)色線條為綠色區(qū)域的輪廓。2022/12/2219對(duì)綠色場(chǎng)地實(shí)行色塊提取的結(jié)果,藍(lán)色線條為綠色區(qū)域的輪廓。20候選種子2022/12/2220候選種子2022/12/1920場(chǎng)地白線的識(shí)別2022/12/2221場(chǎng)地上白色標(biāo)線是機(jī)器人實(shí)現(xiàn)自定位的前提條件,在場(chǎng)地輪廓的基礎(chǔ)上,很容易得到白線點(diǎn)。對(duì)于輪廓上任何一點(diǎn),可以求得通過這點(diǎn)且垂直于輪廓的法線,在法線上往往存在著白線點(diǎn)。白線的特點(diǎn)是具有很高的亮度,并且白線兩邊通常是綠色(場(chǎng)地)。算法首先以場(chǎng)地輪廓為起點(diǎn),沿法線收縮亮度高的像素點(diǎn),找到以后再以這個(gè)高亮度點(diǎn)為中心,沿法線搜尋兩邊是否是綠色,即先搜尋白色,如果收縮到白線點(diǎn)則搜尋兩邊的綠色,這兩次搜尋都是在一個(gè)小范圍內(nèi)進(jìn)行的,保證了離輪廓點(diǎn)比較近。檢測(cè)白線的結(jié)果如圖10.19,圖中展示的是檢測(cè)白線的原理,以亮度高的點(diǎn)為起點(diǎn),法線方向?yàn)樗褜し较?,去?yàn)證兩邊是否為綠色,如果都是綠色則認(rèn)為是白線點(diǎn)。圖中檢測(cè)線中點(diǎn)標(biāo)記過白點(diǎn)的是算法認(rèn)為的白線點(diǎn),沒有標(biāo)記白點(diǎn)的檢測(cè)線系統(tǒng)認(rèn)為該中點(diǎn)不是白線點(diǎn)。可以看到有些線是白線,但系統(tǒng)沒有認(rèn)為它們是白線,球中有一點(diǎn)卻被標(biāo)記為白線了,因?yàn)榉蠙z測(cè)原則,中間亮度高,兩邊是綠色。場(chǎng)地白線的識(shí)別2022/12/1921檢測(cè)白線2022/12/2222檢測(cè)白線2022/12/19222022/12/2223射線檢測(cè)白線點(diǎn)2022/12/1923射線檢測(cè)白線點(diǎn)類球點(diǎn)和類障礙點(diǎn)的提取2022/12/2224對(duì)球的顏色使用閾值法定義,使用顏色亮度分離的HSV顏色空間,該空間對(duì)調(diào)整閾值比較有利。不需要把球的顏色包括得很全面,這些類球點(diǎn)的作用只是指明了這個(gè)位置可能有球,具體是否是球需要做精細(xì)的判斷,所以即使閾值的范圍比較小是不影響識(shí)別球的,而如果把閾值的范圍比較大會(huì)增加干擾,使得算法必須在更多位置進(jìn)行精細(xì)的判斷。檢測(cè)類球點(diǎn)使用類似于白線點(diǎn)檢測(cè)的方法,只不過這次只要在場(chǎng)地輪廓為起點(diǎn)的法線上存在符合閾值定義的點(diǎn)以后就認(rèn)為是類球點(diǎn),法線不能過長(zhǎng),以保證在場(chǎng)地綠色輪廓附近。類球點(diǎn)的檢測(cè)結(jié)果見圖10.21,正紅色為檢測(cè)到的類球點(diǎn)。提取類障礙點(diǎn)的目的是產(chǎn)生種子,為RegionTracker識(shí)別障礙物服務(wù)。障礙的亮度很低,因?yàn)橐?guī)則規(guī)定它為黑色,所以系統(tǒng)就以亮度為判別標(biāo)準(zhǔn)。亮度低的為類球點(diǎn)。其檢測(cè)過程和檢測(cè)類球點(diǎn)一致。類球點(diǎn)和類障礙點(diǎn)的提取2022/12/1924目標(biāo)檢測(cè)與識(shí)別2022/12/2225前面詳細(xì)介紹了圖像信息的提取,其中包括白線點(diǎn)提取、類障礙物點(diǎn)提取、類球點(diǎn)提取,其中白線點(diǎn)提取是為機(jī)器人自定位服務(wù),類障礙物點(diǎn)與類球點(diǎn)提取是為識(shí)別障礙物和識(shí)別球服務(wù)。識(shí)別障礙物和球都屬于機(jī)器視覺檢測(cè)中的目標(biāo)檢測(cè)與識(shí)別。1) 障礙物的識(shí)別在球場(chǎng)上,機(jī)器人的周圍有各種障礙物,如隊(duì)友機(jī)器人,對(duì)方機(jī)器人,甚至人類裁判等,并且這些障礙物的位置常常是不斷變化的。機(jī)器人在場(chǎng)上移動(dòng),首要的原則是不能與這些障礙物發(fā)生碰撞,更高的要求是能在這樣一個(gè)動(dòng)態(tài)的障礙環(huán)境中找到一個(gè)最優(yōu)的路徑到達(dá)目標(biāo)地點(diǎn),甚至能夠在帶球的情況下繞過障礙物,完成帶球突破這一技術(shù)目標(biāo)。完成這些任務(wù)的最基本的前提是有一種有效的穩(wěn)定的實(shí)時(shí)的障礙物識(shí)別方法。常用的障礙物識(shí)別方法視傳感器的種類而異,這里只介紹基于圖像傳感器,即攝像頭的識(shí)別方法。系統(tǒng)使用RegionTracker作為識(shí)別障礙物的主要工具。把類球點(diǎn)作為種子,用RegionTracker獲得黑色色塊的邊界,區(qū)域面積的就不能認(rèn)作障礙。識(shí)別效果見圖10.22,紅白點(diǎn)標(biāo)記了障礙和地面的接觸點(diǎn),該點(diǎn)決定了障礙物離機(jī)器人的距離,兩條紅線標(biāo)出了障礙所占據(jù)的角度,這在機(jī)器人的避障和射門中十分有用。避障要求機(jī)器人的行動(dòng)方向不能在這個(gè)角度內(nèi),射門要求機(jī)器人的瞄準(zhǔn)方向不能在這個(gè)角度內(nèi)。圖中顯示的是穿黑色衣服的研究人員。除了這個(gè)區(qū)域的黑色以外,還有很多其他的黑色,因?yàn)樗麄兲幱跓o信息區(qū),或者在場(chǎng)地以外,算法就不去考慮這些場(chǎng)外信息了。圖中還有兩個(gè)小區(qū)域被藍(lán)色包圍,但是他們沒有紅白標(biāo)記,因?yàn)樗鼈兠娣e過小,算法不認(rèn)為這是障礙。這兩塊黑色區(qū)域原本屬于一個(gè)大的黑色塊,但是RegionTracker沒有把這塊大色塊標(biāo)記進(jìn)去,因?yàn)樗麄冊(cè)趫?chǎng)地以外,系統(tǒng)對(duì)RegionTracker使用一個(gè)特殊的限制,如果要擴(kuò)散到場(chǎng)外,算法就限制住它。辨別物體是否在場(chǎng)外,需要自定位技術(shù),和全局坐標(biāo)映射到圖像坐標(biāo)的方法。目標(biāo)檢測(cè)與識(shí)別2022/12/1925前面詳細(xì)介紹了圖像信息國(guó)防科技大學(xué)開發(fā)的基于射線掃描方式提取黑色障礙物的算法2022/12/2226國(guó)防科技大學(xué)開發(fā)的基于射線掃描方式提取黑色障礙物的算法202識(shí)別障礙物2022/12/2227識(shí)別障礙物2022/12/1927球識(shí)別2022/12/2228(1) 橘紅色球識(shí)別同自定位一樣,檢測(cè)球也是從提取輪廓開始。首先用RegionTracker提取圖像輪廓,再搜索非場(chǎng)地的區(qū)域中的類球點(diǎn)。對(duì)于特定顏色球的識(shí)別,類球點(diǎn)比較容易獲取。顏色就是球的特征,這里定義一個(gè)顏色空間的區(qū)間,如對(duì)于HSV顏色空間,不妨取5<H<35且180<S<230的顏色像素點(diǎn)為類球點(diǎn)。如果某一個(gè)區(qū)域中的類球點(diǎn)占整個(gè)區(qū)域的像素點(diǎn)的總數(shù)的比例超過預(yù)先定義的閾值,則再將這些點(diǎn)聚合在一起,放在一個(gè)矩形檢測(cè)框內(nèi)。在該框內(nèi)將圖像二值化,對(duì)這些點(diǎn)群提取邊線,再用橢圓去擬合邊界來判斷是否是球。對(duì)球的判斷的準(zhǔn)確性有一個(gè)指標(biāo),稱為相似度,相似度可以由三個(gè)權(quán)重來度量:近似橢圓的程度,類球點(diǎn)數(shù)與所在輪廓的所有點(diǎn)數(shù)之比,檢測(cè)輪廓的尺寸相近程度。球識(shí)別2022/12/1928類似于雙目攝像頭的多攝像頭的數(shù)據(jù)融合得到的空間點(diǎn)云數(shù)據(jù),反應(yīng)球在三維空間中的位置2022/12/2229類似于雙目攝像頭的多攝像頭的數(shù)據(jù)融合得到的空間點(diǎn)云數(shù)據(jù),反應(yīng)
任意顏色球識(shí)別2022/12/2230依靠顏色來識(shí)別球就意味著需要對(duì)顏色進(jìn)行分類,定義某些顏色為球的顏色,通常使用閾值顏色分類,或者通過顏色查找表確定顏色的分類。但是這些做法非常依賴于光線的變化,極不穩(wěn)定。如果換一個(gè)新的足球,即使光照不變,也需要重新對(duì)顏色進(jìn)行分類。為了克服這一缺點(diǎn),必須以球的形狀為特征,來進(jìn)行識(shí)別。過去的幾年中,球形物體的識(shí)別成為了機(jī)器人足球的熱點(diǎn),并且取得了一些突破,其中之一借鑒了P.Viola使用adaboost進(jìn)行人臉識(shí)別的方法。Adaboost用來獲得分類器,可以使很多分類功能并不好的分類器聯(lián)合組成一個(gè)分類性能好的分類器。為了把a(bǔ)daboost應(yīng)用在機(jī)器視覺中,還需要使用積分圖獲得Haar特征。算法先計(jì)算出Haar特征,然后生成許多原始的分類器,adaboost可以組合這些弱分類器,獲得一個(gè)強(qiáng)分類器。這提供了一個(gè)優(yōu)點(diǎn),人們不用費(fèi)盡心思去選擇所識(shí)別模式相對(duì)于其他模式有什么特點(diǎn),這種機(jī)器視覺方法適用于識(shí)別大多數(shù)物體。 任意顏色球識(shí)別2022/12/1930智能中型足球機(jī)器人的自定位2022/12/2231機(jī)器人自定位是移動(dòng)機(jī)器人的重要技能,是自動(dòng)導(dǎo)航的基礎(chǔ)。設(shè)想在室內(nèi),機(jī)器人不知道自己的位置,而它又不具備識(shí)別障礙的能力,它在移動(dòng)的過程中就會(huì)撞到墻壁,因?yàn)椴恢雷约旱奈恢靡馕吨恢缐Ρ谟卸噙h(yuǎn)。定位的前提是要獲得已知的地圖,優(yōu)秀的機(jī)器人可以通過傳感器獲得周圍的幾何形狀,構(gòu)建地圖,然后使用定位算法得到自己的位置,進(jìn)而可以規(guī)劃路徑進(jìn)行導(dǎo)航了。足球機(jī)器人自主選擇路徑就是自動(dòng)導(dǎo)航,足球場(chǎng)就相當(dāng)于一個(gè)室內(nèi)環(huán)境,球場(chǎng)的邊界就相當(dāng)于墻壁。定位需要已知的地圖,場(chǎng)地是規(guī)則詳細(xì)規(guī)定的(已知的),這樣場(chǎng)地模型就是地圖。智能中型足球機(jī)器人的自定位2022/12/1931機(jī)器人自定自定位的研究背景2022/12/2232機(jī)器人自定位這個(gè)課題是機(jī)器人領(lǐng)域的熱門,人們已經(jīng)取得了一些研究成果。其中一個(gè)普遍使用的方法是利用MonteCarlo方法進(jìn)行定位,也稱粒子濾波定位算法。該算法的核心是計(jì)算機(jī)器人位置的概率分布。初始化時(shí),通常先把機(jī)器人的位置認(rèn)為是在場(chǎng)地中均勻分布的,然后根據(jù)不斷接收到的傳感器信息,調(diào)整概率分布,最后達(dá)到收斂,機(jī)器人在某個(gè)位置概率接近1,這樣就定位成功了。之所以說這是粒子濾波是因?yàn)樗谟?jì)算概率密度函數(shù)時(shí),把連續(xù)量離散化了,實(shí)際計(jì)算的是概率,不是概率密度。自定位的研究背景2022/12/1932機(jī)器人自定位這個(gè)課題自定位算法的基本原理2022/12/22331) 定位的目標(biāo)定位的目標(biāo)是取得機(jī)器人在全局坐標(biāo)系的坐標(biāo)和機(jī)器人的方向(x,y,θ),x,y是坐標(biāo)值,θ是機(jī)器人的正方向,一共三個(gè)量。2) 定位——模型匹配在論述了識(shí)別白線點(diǎn)的方法,但是這些白線點(diǎn)并不是在機(jī)器人坐標(biāo)中,而是在圖像坐標(biāo)系中,并且是帶有較大畸變的,需要把這些點(diǎn)轉(zhuǎn)化到機(jī)器人坐標(biāo)系中,該坐標(biāo)系以機(jī)器人為原點(diǎn)。此時(shí)如果把機(jī)器人和這些校正后的白線點(diǎn)看成一個(gè)系統(tǒng),并且該系統(tǒng)通過平移和旋轉(zhuǎn)使系統(tǒng)中的白線點(diǎn)能夠和場(chǎng)地模型的白線匹配,就能夠?qū)崿F(xiàn)機(jī)器人的自定位功能。自定位算法的基本原理2022/12/1933校正后的白線點(diǎn)和場(chǎng)地模型匹配,紅色點(diǎn)為校正后的白線點(diǎn)2022/12/2234校正后的白線點(diǎn)和場(chǎng)地模型匹配,紅色點(diǎn)為校正后的白線點(diǎn)距離場(chǎng)(或稱距離查找表,匹配的評(píng)判工具)2022/12/2235距離場(chǎng)(或稱距離查找表,匹配的評(píng)判工具)2022/12/19虛擬力場(chǎng)2022/12/2236機(jī)器人和白線點(diǎn)組成的系統(tǒng)(以后就把這稱為“目標(biāo)系統(tǒng)”)需要通過平移、旋轉(zhuǎn)與場(chǎng)地模型相匹配。促使“目標(biāo)系統(tǒng)”移動(dòng)的是一個(gè)附帶在模型上的力場(chǎng),不同于距離場(chǎng),它是一個(gè)矢量場(chǎng),“目標(biāo)系統(tǒng)”的每個(gè)白線點(diǎn)都受力,他們所受的合力的方向就是“目標(biāo)系統(tǒng)”平移的方向,平移的距離和受力成正比,這些力還會(huì)產(chǎn)生轉(zhuǎn)矩,“目標(biāo)系統(tǒng)”旋轉(zhuǎn)的方向就是轉(zhuǎn)矩引起的轉(zhuǎn)動(dòng)方向,旋轉(zhuǎn)角度的大小和轉(zhuǎn)矩成正比。計(jì)算轉(zhuǎn)矩的步驟是:計(jì)算白線點(diǎn)的質(zhì)心計(jì)算每個(gè)點(diǎn)受的力引起的轉(zhuǎn)矩求出這些轉(zhuǎn)矩的和虛擬力場(chǎng)2022/12/1936機(jī)器人和白線點(diǎn)組成的系統(tǒng)(以自定位算法的實(shí)現(xiàn)2022/12/2237機(jī)器人上一共配有兩個(gè)傳感器,即攝像機(jī),電子羅盤。其中攝像機(jī)獲得的信息為自定位的主要依據(jù)。定位分兩種情況,第一種情況,機(jī)器人不知道自己在前一幀的位置(前一刻),例如在利用第一幀圖像定位時(shí),機(jī)器人不知道剛才在哪里,因?yàn)槌绦虿艅倓傞_始。這種情況的定位是困難的,此時(shí)定位被稱為重新定位,因?yàn)檫@主要發(fā)生在前一幀定位失敗的情況下,需要耗費(fèi)大量CPU資源。重新定位的方法是一個(gè)遍歷的過程,方法如下:分別在x、y、θ三個(gè)量的定義域內(nèi)每隔一定的步進(jìn)取一個(gè)值,對(duì)以任意一組(x,y,θ)值(位置),假設(shè)機(jī)器人處在這個(gè)位置上,把白線點(diǎn)轉(zhuǎn)化成全局坐標(biāo)下的白線點(diǎn),然后計(jì)算匹配誤差。針對(duì)的不同的(x,y,θ)可以得到不同的匹配誤差。取匹配最小的誤差,它所對(duì)應(yīng)的位置就最有可能是機(jī)器人的位置。這個(gè)過程實(shí)質(zhì)上遍歷場(chǎng)上每個(gè)可能的位置和方向,取匹配得最好的組合。但是這個(gè)遍歷過程是一個(gè)離散過程,離散的程度取決于步進(jìn)的長(zhǎng)度,如果步進(jìn)過長(zhǎng),離散程度就高,得到的匹配誤差常常很大,如果步進(jìn)過小,匹配的次數(shù)就會(huì)過多,造成占用CPU資源過大。當(dāng)取得了一個(gè)最小匹配誤差時(shí),并不代表定位成功了,因?yàn)檫@個(gè)定位結(jié)果只是非常粗略的,有時(shí)還不一定正確。需要使用Matrix算法使得匹配更精確。Matrix算法實(shí)際上是一個(gè)由粗到細(xì)的過程,它的輸入是粗略的定位結(jié)果(x,y,θ),輸出則是準(zhǔn)確的定位結(jié)果。假設(shè)輸入的定位粗略的結(jié)果(x,y,θ),然后使用迭代算法,算法具體如下:自定位算法的實(shí)現(xiàn)2022/12/1937機(jī)器人上一共配有兩個(gè)智能中型足球機(jī)器人比賽規(guī)則2022/12/2238RoboCup中型組機(jī)器人的比賽規(guī)則決定了智能中型足球在機(jī)器人要使用無線通訊。在RoboCup中型組中型組比賽中,有兩個(gè)裁判在賽場(chǎng)上主持裁決工作,一個(gè)是場(chǎng)地上的主裁判,他的工作是根據(jù)規(guī)則判定每個(gè)機(jī)器人的行為是否犯規(guī),以及發(fā)出開球、暫停、進(jìn)球有效等指令。這些指令是以哨聲和話語發(fā)出的,但是場(chǎng)上的機(jī)器人并不能直接的了解他指令的意圖,這就需要另一個(gè)裁判,即副裁判的工作就是操作場(chǎng)邊的一臺(tái)裁判計(jì)算機(jī),這臺(tái)計(jì)算機(jī)和雙方的服務(wù)器計(jì)算機(jī)相連,裁判計(jì)算機(jī)中安裝有裁判盒(RefereeBox)程序,這個(gè)程序的作用就是向雙方的服務(wù)計(jì)算機(jī)發(fā)送裁判指令(開始Stop、停止Start、邊線球Throwin等)。智能中型足球機(jī)器人比賽規(guī)則2022/12/193810.2智能中型足球機(jī)器人通信子系統(tǒng)2022/12/2239RoboCup中型組比賽示意圖10.2智能中型足球機(jī)器人通信子系統(tǒng)2022/12/19智能中型足球機(jī)器人服務(wù)機(jī)程序與機(jī)器人程序2022/12/2240雙方的服務(wù)計(jì)算機(jī)上通常運(yùn)行一個(gè)服務(wù)機(jī)程序,這個(gè)程序主要有兩個(gè)作用:一是將裁判盒發(fā)出的裁判指令實(shí)時(shí)可靠地發(fā)送給場(chǎng)上的機(jī)器人二是實(shí)時(shí)地監(jiān)視場(chǎng)上機(jī)器人的狀態(tài),主要包括自定位的信息和識(shí)別球的信息場(chǎng)地上的每個(gè)機(jī)器之間也可以通訊,這些通訊不僅包括自定位信息和球位置信息,還包括球的識(shí)別率和球相對(duì)自己的一個(gè)相對(duì)位置信息。這里要注意的一點(diǎn)是服務(wù)機(jī)和機(jī)器人在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)上屬于同一子網(wǎng)中,服務(wù)機(jī)只是在比賽中起到看似“服務(wù)器”的功能,并不是網(wǎng)絡(luò)意義上的服務(wù)器。服務(wù)機(jī)和機(jī)器人是通過一個(gè)路由器連接的,路由器和機(jī)器人計(jì)算機(jī)是通過無線網(wǎng)絡(luò)IEEE802.11b/g完成信息互聯(lián),無線連接,路由器和服務(wù)機(jī)是通過有線連接。事先需要給每臺(tái)機(jī)器人分配一個(gè)IP地址,而且服務(wù)器的地址必須是固定不變的。下面主要在智能中型足球機(jī)器人自身的角度來介紹這兩個(gè)通訊子系統(tǒng)智能中型足球機(jī)器人服務(wù)機(jī)程序與機(jī)器人程序2022/12/19機(jī)器人和服務(wù)機(jī)的通訊2022/12/2241機(jī)器人在場(chǎng)上通過視覺等傳感器能夠做到自定位和球識(shí)別,但是在比賽時(shí)或者調(diào)試的時(shí)候并不能直接知道機(jī)器人是否定位成功或者識(shí)別到球,抑或定位是否正確以及球識(shí)別是否準(zhǔn)確,如果要時(shí)時(shí)地去打開看機(jī)器人內(nèi)部的計(jì)算機(jī)勢(shì)必很麻煩以及很耗時(shí),另外特別是針對(duì)視覺檢測(cè)為基礎(chǔ)的智能中型足球機(jī)器人,人為地接近會(huì)混亂其視野,造成某些顏色信息的丟失或者是干擾(如人穿著一件鮮紅的衣服或遮擋部分場(chǎng)地白線),造成不可避免的測(cè)不準(zhǔn)。因此可以利用無線通信遠(yuǎn)程地檢測(cè)這些信息通訊協(xié)議為了實(shí)現(xiàn)這一通訊,機(jī)器人要實(shí)時(shí)地發(fā)送各種信息給服務(wù)機(jī),但是并不一定每一幀都發(fā)送,這樣會(huì)有不必要的數(shù)據(jù)通信量,因?yàn)榘l(fā)生的數(shù)據(jù)只是用來監(jiān)視,不妨選擇隔幾幀(如5幀)發(fā)送一次。這種通訊的協(xié)議通常是自定的。機(jī)器人和服務(wù)機(jī)的通訊2022/12/1941機(jī)器人之間的通訊2022/12/2242機(jī)器人之間的通訊和機(jī)器人與服務(wù)機(jī)之間的通訊內(nèi)容相似,但是意義不同。機(jī)器人之間通訊是為了實(shí)現(xiàn)信息共享,并且在這個(gè)信息的共享的基礎(chǔ)上實(shí)現(xiàn)一些基本的操作優(yōu)先與協(xié)作。這種信息的共享是實(shí)時(shí)的,即每一幀都要共享這些信息。這種信息的共享是非常有意義的。主循環(huán){….
告知所有其他機(jī)器人我的狀態(tài);….}機(jī)器人之間的通訊2022/12/19422022/12/22431) 球位置信息在接受這三個(gè)信息之后,機(jī)器人會(huì)和自己通過視覺獲得的這些信息比較。一般來說,在光線比較好的環(huán)境中,離球比較近的機(jī)器人看到球的相似程度更加可信,那么其看到球的位置信息也更加可信,如果自己看到的球相似程度沒有對(duì)方高,則相信對(duì)方看到的球。這一點(diǎn)還有另外一個(gè)好處,并且這個(gè)好處對(duì)比賽而言是非常有實(shí)際意義的。如果一個(gè)機(jī)器人在后場(chǎng),或者被很多其他機(jī)器人擋住視野,而無法看見球,那么它看到球的相似程度就是0,這樣任何一個(gè)看到球的隊(duì)友告訴它的信息都會(huì)被接受。自然而然地可以想象,全隊(duì)只要有一個(gè)隊(duì)員看得到球,那么全隊(duì)的隊(duì)友對(duì)球的位置都有一個(gè)把握。當(dāng)然這只是球位置信息共享的極端情況。2) 搶球的優(yōu)先級(jí)在球的位置信息共享之后,隨后會(huì)共享球相對(duì)自己的距離。這里將球的相對(duì)距離共享的意義在于,我們事先假定離球近的隊(duì)員去搶球成功率會(huì)更高,因?yàn)閳?chǎng)上的環(huán)境時(shí)刻在改變,如果讓距離比較遠(yuǎn)的隊(duì)員去搶球,勢(shì)必造成錯(cuò)失時(shí)機(jī);而如果不設(shè)置搶球的優(yōu)先級(jí),則勢(shì)必會(huì)造成哄搶的局面,不僅會(huì)影響進(jìn)攻的效果,也可能使得機(jī)器人在碰撞中造成損壞,這些損壞是不必要的,可以避免的。上述的優(yōu)先級(jí)設(shè)置以及運(yùn)行的機(jī)制,是一種默許機(jī)制,就是只接受數(shù)據(jù)信息,不接受指令信息,這一機(jī)制可以減少通訊數(shù)據(jù)量,緩解通訊信道的負(fù)擔(dān),但是對(duì)發(fā)送與接受方的處理函數(shù)的編寫提出更高的要求。2022/12/19431) 球位置信息10.3智能中型足球機(jī)器人決策子系統(tǒng)2022/12/2244前兩節(jié)視覺子系統(tǒng)和通訊子系統(tǒng),完成了智能中型足球機(jī)器人在場(chǎng)上需要獲取的所有信息的收集工作,這些工作都是為決策子系統(tǒng)服務(wù)的。決策系統(tǒng)在智能中型足球機(jī)器人系統(tǒng)中處于非常重要的地位,相當(dāng)于機(jī)器人的大腦。對(duì)于復(fù)雜的比賽,可能采取的策略大不相同,而對(duì)于智能中型足球機(jī)器人來說,它在場(chǎng)上的表現(xiàn)就是設(shè)計(jì)者的思想的重現(xiàn)。只要視力正常、腿腳靈便,這些運(yùn)動(dòng)員就會(huì)按照教練事先預(yù)定好的技術(shù)路線不偏不倚地正常發(fā)揮。而這個(gè)教練,就是我們決策子系統(tǒng)的軟件設(shè)計(jì)者。常用的智能控制系統(tǒng)包括Saridis在1977年提出的遞階智能控制系統(tǒng),R:Brooks在1986年提出的基于行為的智能體系結(jié)構(gòu)和包含這兩種控制系統(tǒng)的各種混合式智能控制系統(tǒng)。但是,目前的各種機(jī)器人智能控制系統(tǒng),主要針對(duì)單個(gè)機(jī)器人。機(jī)器人足球中型組為分布式多機(jī)器人系統(tǒng),涉及到群體機(jī)器人智能控制,包括群體合作與對(duì)抗、群體協(xié)作和協(xié)調(diào)、多機(jī)器人角色分配等。在機(jī)器人足球賽中,不同隊(duì)伍的機(jī)器人群體之間的關(guān)系是對(duì)抗的。在不同場(chǎng)次的比賽中,對(duì)抗對(duì)象不一樣,不同隊(duì)伍的比賽風(fēng)格不同、戰(zhàn)術(shù)不同、單個(gè)機(jī)器人智能程度不同,機(jī)器人群體需要根據(jù)不同的對(duì)抗對(duì)象調(diào)整自身智能系統(tǒng)。10.3智能中型足球機(jī)器人決策子系統(tǒng)2022/12/19442022/12/2245決策子系統(tǒng)的特點(diǎn)是和人類足球的很多特性是相同的,是對(duì)人類足球的一種模仿。通過分析足球機(jī)器人的行為本質(zhì),類比人類的足球或者其他運(yùn)動(dòng)的模式,我們不妨再將決策子系統(tǒng)做一個(gè)更細(xì)致的劃分。針對(duì)智能中型足球機(jī)器人,決策子系統(tǒng)可以劃分為能力層面和意識(shí)層面。所謂能力,就是一個(gè)機(jī)器人解決特定問題的技能,這種技能是簡(jiǎn)單的,特定的,并且它的實(shí)現(xiàn)是可靠的;所謂意識(shí),就是機(jī)器人根據(jù)當(dāng)前的形勢(shì)作出的宏觀的總體的判斷,這個(gè)判斷會(huì)驅(qū)使機(jī)器人調(diào)用它的各種能力來達(dá)到最終目標(biāo)。簡(jiǎn)單地看待這兩個(gè)層面的關(guān)系,就好比一個(gè)人在街上走,他想去商店買東西,這是他的意識(shí),而在路上會(huì)有行人,他不能撞到行人,也不能撞到樹木房子,他還要保持身體的平衡,這些都是能力。這些能力的集合完成他意識(shí)所要達(dá)到的目標(biāo)。意識(shí)決定做什么,能力決定怎么做。2022/12/1945決策子系統(tǒng)的特點(diǎn)是和人類足球的很多特智能中型足球機(jī)器人決策之能力2022/12/2246智能中型足球機(jī)器人和其他足球機(jī)器人一樣,要面對(duì)一些基本的問題,看到了球,如何去抓球,如何帶球,在場(chǎng)上移動(dòng)怎樣能繞過障礙等等。這些將被歸為能力層面要解決的問題??梢韵胂螅@些是作為一個(gè)足球運(yùn)動(dòng)員的最基本的素質(zhì)。在人類足球中,這些能力甚至被歸為身體素質(zhì),如果沒有這些能力,就不是一個(gè)合格的足球運(yùn)動(dòng)員。下面主要介紹三個(gè)基本能力:搶球、避障、帶球避障。智能中型足球機(jī)器人決策之能力2022/12/1946智能中型搶球2022/12/2247搶球,就是看到球去之后過去搶。在這里只考慮如何去搶球,無需考慮什么時(shí)候去搶或者是否去搶球。搶球需要的信息有球的相對(duì)位置信息、球的速度。將球放在機(jī)器人坐標(biāo)內(nèi),假設(shè)球的位置在b點(diǎn),球的速度為Vball
,搶球所需要的速度為Vout
。這里將搶球這一動(dòng)作再做簡(jiǎn)化,就是搶球的時(shí)候是不避障的,這樣因?yàn)榭紤]到搶球本身就是一種對(duì)抗性的動(dòng)作,搶球避障好比拳頭揮出去還不能打到人,加入避障是自相矛盾的。Vout=(Vball+ob)×k;(10.25)k為速度系數(shù),即計(jì)算出來的向量是不能直接作為速度輸出的,要乘以一定的速度系數(shù)k。下面給出Vout
的計(jì)算流程:搶球2022/12/1947搶球,就是看到球去之后過去搶。在搶球速度矢量疊加示意圖2022/12/2248搶球速度矢量疊加示意圖2022/12/1948避障2022/12/2249避障,顧名思義就是避開障礙物。在球場(chǎng)上,機(jī)器人的周圍有各種障礙物,如隊(duì)友機(jī)器人,對(duì)方機(jī)器人,甚至人類裁判等,并且這些障礙物的位置常常是不斷變化的。機(jī)器人在場(chǎng)上移動(dòng),首要的原則是不能與這些障礙物發(fā)生碰撞,更高的要求是能在這樣一個(gè)動(dòng)態(tài)的障礙環(huán)境中找到一個(gè)最優(yōu)的路徑到達(dá)目標(biāo)地點(diǎn),甚至能夠在帶球的情況下繞過障礙物,完成帶球突破這一技術(shù)目標(biāo)。在視覺子系統(tǒng)中已經(jīng)詳細(xì)介紹了障礙物的檢測(cè)方法,現(xiàn)在假定障礙物的位置信息存放在一個(gè)表中,這一工作在視覺子系統(tǒng)中已經(jīng)完成。并且已知條件是機(jī)器人自己在全局的位置,以及目標(biāo)點(diǎn)在全局的位置。避障所作的工作就是找到一條最優(yōu)的路徑到達(dá)目標(biāo)位置。避障也稱為路徑規(guī)劃。在RoboCup中型組機(jī)器人中,和小型組機(jī)器人最大的不同是不能獲取到全局的障礙物信息,很多參賽隊(duì)都只能做局部的路徑規(guī)劃,即只規(guī)劃能看到的這一部分路徑,那些障礙物后面的看不到的部分不做規(guī)劃。目前最常用的方法是人工勢(shì)場(chǎng)法路徑規(guī)劃。避障2022/12/1949人工勢(shì)場(chǎng)避障算法2022/12/2250人工勢(shì)場(chǎng)避障算法2022/12/1950帶球避障2022/12/2251帶球避障是對(duì)避障算法的改進(jìn),完成帶球到達(dá)目標(biāo)點(diǎn)這一動(dòng)作。帶球避障,需要做如下假定:假定已經(jīng)搶到球,有全局定位,有障礙物的位置信息表,以及帶球的目標(biāo)點(diǎn)。要同時(shí)滿足這四個(gè)條件才會(huì)啟發(fā)帶球避障程序運(yùn)行。帶球避障和移動(dòng)避障在算法上沒有本質(zhì)區(qū)別,都是使用人工勢(shì)場(chǎng)法計(jì)算出每一幀的將來速度。但是因?yàn)槭菐?,和前者?個(gè)區(qū)別:首先,帶球的時(shí)候球已經(jīng)和機(jī)器人在一起,可以看作是一個(gè)整體,視覺檢測(cè)必然會(huì)每一幀檢測(cè)到球,在這里球不再是需要規(guī)避的對(duì)象,因此不用將球加入障礙物信息表。其次,因?yàn)榍蚝蜋C(jī)器人是連為一體的,但是當(dāng)速度發(fā)生變化時(shí),球可能會(huì)帶丟,我們希望的是讓機(jī)器人“抱”著球前進(jìn),就是機(jī)器人圍繞球,以球?yàn)橹行男D(zhuǎn),而不是以機(jī)器人自身為中心選擇。在常規(guī)的避障算法輸出速度之后,要將機(jī)器人為中心的旋轉(zhuǎn)角速度換算成以球?yàn)橹行木€速度疊加在原來的x方向速度上。假設(shè)輸出速度為(Vx0,Vy0,w0),輸出速度為(Vx,Vy,w),機(jī)器人中心和球心的距離為dVx=w0×d+Vx0;(10.27)Vy=Vy;(10.28)w=w0;(10.29)帶球避障2022/12/1951輸出速度的再處理,三角形為機(jī)器人俯視圖,圓形為假定已持有的球2022/12/2252輸出速度的再處理,三角形為機(jī)器人俯視圖,圓形為假定已持有的球智能中型足球機(jī)器人決策之意識(shí)層2022/12/2253智能中型足球機(jī)器人決策之意識(shí)層2022/12/1953隱式合作和顯式合作2022/12/2254機(jī)器人的合作可分為隱式地合作和顯式地合作,兩者的區(qū)別在于:隱式配合主要是體現(xiàn)在場(chǎng)上所有的機(jī)器人維護(hù)一個(gè)共同的世界模型,通過利用世界模型的信息來實(shí)現(xiàn)配合。以防守動(dòng)作為例,場(chǎng)上的所有隊(duì)員根據(jù)共享的世界模型中自身的位置,其他隊(duì)員的動(dòng)作和離球的距離來決定自己的防守動(dòng)作。隱式合作中,各機(jī)器人的地位平等。顯式合作是指合作機(jī)器人之間通過直接通信實(shí)現(xiàn)合作,它由合作的發(fā)起者(我們稱為主控者)發(fā)起。主控者根據(jù)需要,選擇并通知一個(gè)或者多個(gè)隊(duì)友共同完成戰(zhàn)術(shù)合作。戰(zhàn)術(shù)完成后,合作自然解除。這兩種合作都是常用的手段,國(guó)防科技大學(xué)使用的是完全顯式的合作,上海大學(xué)Lengends中型組使用的是完全隱式的合作。隱式合作和顯式合作2022/12/1954機(jī)器人的合作可分為隱式合作與顯式合作2022/12/2255隱式合作與顯式合作2022/12/1955角色分配2022/12/2256這里我們分別從進(jìn)攻和防守來介紹一種簡(jiǎn)單的設(shè)計(jì)模式。先做這樣一個(gè)假定,全隊(duì)只有2種隊(duì)員,純粹的進(jìn)攻球員和純粹的防守球員。每個(gè)球員在場(chǎng)上有一個(gè)基本位置,這個(gè)基本為是事先設(shè)定好的,類似于人類足球中的陣型。這在智能中型機(jī)器人足球中體現(xiàn)為一系列點(diǎn)的全局坐標(biāo)。下頁圖中是一種陣型的基本坐標(biāo)圖。在圖中有守門員、邊衛(wèi)、邊鋒、前鋒,不要被這些名字迷惑,從行為上來說,只有守門員是純粹的防守球員,其他的都是純粹的進(jìn)攻球員。它們的名字不同僅僅是因?yàn)榛疚恢貌煌鶕?jù)約定俗成這樣稱呼的。也就是說進(jìn)攻球員的本質(zhì)是一樣的,它們?cè)趫?chǎng)上的不同表現(xiàn)只是因?yàn)槲恢玫牟町愒斐傻摹=巧峙?022/12/1956這里我們分別從進(jìn)攻和防守來介一種陣型的基本坐標(biāo)圖2022/12/2257一種陣型的基本坐標(biāo)圖2022/12/1957進(jìn)攻2022/12/2258進(jìn)攻2022/12/1958防守2022/12/2259防守2022/12/195910.4智能中型足球機(jī)器人運(yùn)動(dòng)控制子系統(tǒng)2022/12/226010.4智能中型足球機(jī)器人運(yùn)動(dòng)控制子系統(tǒng)2022/12/19速度分解2022/12/2261根據(jù)前面章節(jié)介紹的決策子系統(tǒng)的輸出量有四個(gè):x方向的速度,y方向的速度,角速度,射門信號(hào)。其中三個(gè)速度信號(hào)均為浮點(diǎn)數(shù),單位為米,鑒于FPGA對(duì)浮點(diǎn)數(shù)處理能力有限,運(yùn)動(dòng)控制子系統(tǒng)會(huì)將這三個(gè)速度信息再做一次處理。在這里所要做的就是將三個(gè)速度分解為三個(gè)輪子的轉(zhuǎn)速,單位為rpm。速度分解的公式如下:v1=-(-sin30°*vx+cos30°*vy+Radius*w);(10.30)v3=-(-sin30°*vx+(-cos30°)*vy+Radius*w);(10.31)v2=-(vx+Radius*w);(10.32)速度分解2022/12/1961根據(jù)前面章節(jié)介紹的決策子系統(tǒng)續(xù)2022/12/2262其中v1、v2、v3為三個(gè)輪子的轉(zhuǎn)速,vx、vy、w分別為x方向速度、y方向速度、角速度,Radius為機(jī)器人半徑再換算成rpm為單位:speed1=VToRPM*v1;speed2=VToRPM*v2;speed3=VToRPM*v3;其中speed1、speed2、speed3為換算之后的輪速,VToRPM為一個(gè)比例系數(shù)。踢球信號(hào)Delaytime是一個(gè)延時(shí)信號(hào),以毫秒為單位。通過控制延時(shí)的長(zhǎng)短,來控制氣閥的充氣時(shí)間,以達(dá)到控制射程的目的。續(xù)2022/12/1962其中v1、v2、v3為三個(gè)輪子的轉(zhuǎn)通訊協(xié)議2022/12/2263在將數(shù)據(jù)發(fā)送給FPGA時(shí),輪速和踢球信號(hào)分開發(fā)送。輪速是每一幀都要發(fā)送,踢球信號(hào)只在需要踢球的時(shí)候才發(fā)送。發(fā)送輪速數(shù)據(jù)的協(xié)議如下:第一個(gè)地址位:86第二個(gè)地址位:speed1高八位第三個(gè)地址位:speed1低八位第四個(gè)地址位:speed2高八位第五個(gè)地址位:speed2低八位第六個(gè)地址位:speed3高八位第七個(gè)地址位:speed3低八位第八個(gè)地址位:0第九個(gè)地址位:0第十個(gè)地址位:13通訊協(xié)議2022/12/1963續(xù)2022/12/2264發(fā)送踢球信號(hào)的協(xié)議如下:第一個(gè)地址位:0x4B第二個(gè)地址位:延時(shí)時(shí)間Delaytime高八位第三個(gè)地址位:延時(shí)時(shí)間Delaytime低八位第四個(gè)地址位:0第五個(gè)地址位:0第六個(gè)地址位:0第七個(gè)地址位:0第八個(gè)地址位:0第九個(gè)地址位:0第十個(gè)地址位:0x0D把運(yùn)動(dòng)控制信號(hào)發(fā)送之后,底層的運(yùn)動(dòng)控制芯片F(xiàn)PGA會(huì)可靠地、實(shí)時(shí)地達(dá)到這一速度,完成整個(gè)系統(tǒng)的輸入與輸出過程。續(xù)2022/12/1964發(fā)送踢球信號(hào)的協(xié)議如下:思考題2022/12/22651. 全景鏡和攝像機(jī)的配合,要注意哪些方面的問題?2. 提取白線點(diǎn),可以使用哪些方法?各有什么優(yōu)勢(shì)?3. 為什么場(chǎng)地顏色標(biāo)定要用顏色查找表而不是使用閾值?如果要使用閾值判斷場(chǎng)地顏色,要如何使用?4. 區(qū)域跟蹤算法有哪些優(yōu)缺點(diǎn)?5. 除了使用顏色來識(shí)別球,還有什么方法能夠識(shí)別球?嘗試實(shí)現(xiàn)一種任意顏色球的識(shí)別方法。6. 智能中型足球在機(jī)器人可以沒有自定位嗎?為什么?如果沒有自定位,對(duì)其他部分的算法實(shí)現(xiàn)有什么影響?7. 通訊子系統(tǒng)中服務(wù)機(jī)還可以監(jiān)視哪些信息?8. 通訊子系統(tǒng)中機(jī)器人直接還可以共享哪些信息?9. 如果監(jiān)視和共享的信息量(bps)增大,會(huì)有什么影響?如何確定信息量的上限?10. 本書中的決策子系統(tǒng)的設(shè)計(jì)有哪些缺陷?嘗試做出改進(jìn)。思考題2022/12/19651. 全景鏡和攝像機(jī)的配合,要目錄2022/12/2266目錄2022/12/19110.1智能中型足球機(jī)器人視覺子系統(tǒng)2022/12/2267智能中型足球機(jī)器人視覺系統(tǒng)的硬件配置1. 全景視覺系統(tǒng)在足球機(jī)器人的攝像機(jī)是最重要的傳感器,它的重要性就相當(dāng)于眼睛對(duì)于人。在Robocup中型組比賽中,機(jī)器人普遍采用全景視覺系統(tǒng)。它由一個(gè)攝像機(jī)和一個(gè)反射鏡組成,見圖10.1。反射鏡裝在機(jī)器人頂部,鏡面向下,攝像機(jī)朝上正對(duì)著反射鏡。攝像機(jī)得到的是帶有畸變的俯視圖,顯示了機(jī)器人周圍360度的情況。這和人不一樣,因?yàn)槿送ǔ2荒芸吹缴砗螅前杨^轉(zhuǎn)過去。圖10.2是這種配置的視覺系統(tǒng)獲得的一張典型圖像??梢钥闯鏊鼛в袊?yán)重的畸變,圖像中間的黑色區(qū)域代表機(jī)器人自身,黑色區(qū)域的中心代表了機(jī)器人的中心。10.1智能中型足球機(jī)器人視覺子系統(tǒng)2022/12/192智全景視覺系統(tǒng)例子2022/12/2268某機(jī)器人的視覺系統(tǒng)的硬件配置一張典型的全景視覺系統(tǒng)拍攝的圖片全景視覺系統(tǒng)例子2022/12/193某機(jī)器人的視覺系統(tǒng)的硬多攝像頭的視覺系統(tǒng)2022/12/2269全景視覺的目標(biāo)識(shí)別有其缺陷,特別是對(duì)球的識(shí)別。根據(jù)RoboCup中型組的比賽規(guī)則,機(jī)器人的高度不能高于80cm,因此從全景鏡中就不能識(shí)別到高于80cm的物體。而在智能中型足球機(jī)器人比賽中常常會(huì)有挑起的球高于機(jī)器人的情況。有很多參賽隊(duì)為解決這個(gè)問題,提出了一些方案。比如中國(guó)國(guó)防科技大學(xué)的獵豹機(jī)器人上裝有兩套視覺系統(tǒng):一套全向視覺系統(tǒng)和一個(gè)廉價(jià)的網(wǎng)絡(luò)攝像頭加裝廣角鏡頭構(gòu)成的前向視覺系統(tǒng)。荷蘭TechUnited隊(duì)使用一個(gè)工業(yè)智能攝像機(jī)作為前向攝像機(jī),主要實(shí)現(xiàn)球的輔助識(shí)別與定位作用。當(dāng)球速達(dá)到10m/秒時(shí),一個(gè)工作于25幀每秒(fps)的全景攝像機(jī)是不能完成這個(gè)識(shí)別任務(wù)的,他們使用的攝像機(jī)是高速的工業(yè)攝像機(jī)系統(tǒng),可以工作在高達(dá)200fps。要處理200fps,640X480分辨率的實(shí)時(shí)圖像,如果由PC機(jī)來完成,無論對(duì)于傳輸還是處理都是極難實(shí)現(xiàn)的。荷蘭隊(duì)選用TheVisionComponentsVC4458攝像機(jī)(最高242fps@640x480pixels),具有板載處理能力,所有的圖像處理和識(shí)別都在智能攝像機(jī)內(nèi)部完成,攝像機(jī)和主機(jī)通信的內(nèi)容只有球的位置和球速。多攝像頭的視覺系統(tǒng)2022/12/194全景鏡曲線2022/12/2270
目前,具有全景視覺機(jī)器人中廣泛使用的全景鏡面主要是雙曲線鏡面,通過攝像機(jī)采集到的圖像具有全景水平視角,使機(jī)器人能夠獲取全景圖像。該類全景數(shù)學(xué)模型簡(jiǎn)單,但得到的圖像存在嚴(yán)重的失真,尤其距離機(jī)器人遠(yuǎn)處的圖像畸變很大,直接造成識(shí)別場(chǎng)上標(biāo)志線或球等目標(biāo)的困難。通過使用組合全景鏡面,可以克服現(xiàn)有全景鏡面得到的圖像失真嚴(yán)重的不足。組合全景鏡面的第一段曲線保證了在一定距離范圍內(nèi)水平場(chǎng)地上的點(diǎn)和圖像上的像素點(diǎn)具有指數(shù)函數(shù)關(guān)系;組合鏡面第二段曲線是一段圓弧,保證了在距離較遠(yuǎn)處能夠看到一定高度的物體。這種構(gòu)造的鏡面能夠很大程度地減小圖像失真的情況。全景鏡曲線2022/12/195 目前,具有全景視覺機(jī)器人中通過雙曲線鏡面獲得的圖像2022/12/2271通過雙曲線鏡面獲得的圖像2022/12/196分段組合全景鏡面曲線2022/12/2272分段組合全景鏡面曲線2022/12/197視覺系統(tǒng)基本信息的提取2022/12/2273視覺系統(tǒng)基本信息的提取2022/12/198視覺系統(tǒng)的坐標(biāo)系2022/12/2274在闡述視覺系統(tǒng)之前,首先定義系統(tǒng)使用的3個(gè)三個(gè)坐標(biāo)系:圖像坐標(biāo)系,機(jī)器人坐標(biāo)系,全局坐標(biāo)系。這3個(gè)坐標(biāo)系貫穿了整個(gè)視覺系統(tǒng)的始末。其中,機(jī)器人坐標(biāo)系和全局坐標(biāo)系,更是貫穿了機(jī)器人的整個(gè)軟件系統(tǒng)(包括視覺系統(tǒng),決策系統(tǒng),通訊系統(tǒng))。圖像坐標(biāo)系I(x,y):x和y表示像素位。機(jī)器人坐標(biāo)系L(x,y):這個(gè)坐標(biāo)系建立在機(jī)器人的視角上。它的原點(diǎn)就是機(jī)器人中心。Y軸指向了機(jī)器人的正前方(見圖10.10)。這個(gè)坐標(biāo)系也稱為實(shí)際坐標(biāo)系。全局坐標(biāo)系G(x,y):這個(gè)坐標(biāo)系用來表明機(jī)器人的位置。它的原點(diǎn)為球場(chǎng)的中心。(見圖10.10)圖10.9定義了圖像坐標(biāo)系,機(jī)器人就是圖像中央的黑色區(qū)域,該區(qū)域的中心不一定是圖像的正中心,但黑色區(qū)域的中心點(diǎn)C對(duì)應(yīng)的是機(jī)器人的中心,這里稱其為圖像中心。原點(diǎn)在圖像的左上角,圖像中央黑色區(qū)域的中心是機(jī)器人的中心位置。視覺系統(tǒng)的坐標(biāo)系2022/12/199在闡述視覺系統(tǒng)之前,首三個(gè)坐標(biāo)系圖示2022/12/2275圖像坐標(biāo)系原點(diǎn)在圖像的左上角,圖像中央黑色區(qū)域的中心是機(jī)器人的中心位置。機(jī)器人坐標(biāo)系和全局坐標(biāo)系
三個(gè)坐標(biāo)系圖示2022/12/1910圖像坐標(biāo)系機(jī)器人坐標(biāo)系距離函數(shù)和反距離函數(shù)2022/12/2276全景視覺系統(tǒng)獲得的圖像通常帶有不同程度的畸變,如圖10.9,需要進(jìn)行有效的校正。于是引出一個(gè)問題,例如,距離圖像中心200個(gè)像素的點(diǎn)所對(duì)應(yīng)(投影)的地面上的點(diǎn)與機(jī)器人的距離是多少(這里認(rèn)為是地面上的一點(diǎn),而不是一個(gè)具體的物體上的一點(diǎn),因?yàn)槲矬w具有高度,判斷物體的位置是一個(gè)三維問題,單目視覺本質(zhì)上只能解決二維問題,在本系統(tǒng)中計(jì)算物體的距離都是通過該物體與地面的接觸點(diǎn)把問題簡(jiǎn)化成二維的)。在圖像處理之前,必須得到一個(gè)重要的函數(shù),這個(gè)函數(shù)的輸入是圖像上與圖像中心的像素距離r,輸出是機(jī)器人與這個(gè)像素對(duì)應(yīng)實(shí)際位置的實(shí)際距離R,即R=F(r)。這里把它稱為距離函數(shù),標(biāo)定視覺系統(tǒng)的含義就是獲得距離函數(shù),即把像素坐標(biāo)轉(zhuǎn)換成實(shí)際坐標(biāo)。距離函數(shù)只對(duì)同一高度有效。有了它,才能實(shí)現(xiàn)測(cè)量物體與離機(jī)器人的距離,實(shí)現(xiàn)定位。距離函數(shù)使實(shí)現(xiàn)整個(gè)視覺系統(tǒng)成為可能。距離函數(shù)的獲得方法可以是手動(dòng)測(cè)量的,也可以是自動(dòng)的。距離函數(shù)的反函數(shù)被稱為反距離函數(shù)r。r=G(R);(10.18)G是F的反函數(shù)。該函數(shù)主要被用來計(jì)算處在場(chǎng)地的邊界的像素位置,但需要機(jī)器人首先完成自定位。在綠色場(chǎng)地的自動(dòng)標(biāo)定和識(shí)別球的過程中,反距離函數(shù)有著極其重要的作用。距離函數(shù)和反距離函數(shù)2022/12/1911全景視覺系統(tǒng)獲得坐標(biāo)轉(zhuǎn)換2022/12/2277在高度為0的情況下,圖像坐標(biāo)系和機(jī)器人坐標(biāo)系是可以互相轉(zhuǎn)化的,轉(zhuǎn)化的中介就是距離函數(shù)以及反距離函數(shù),假設(shè)圖像坐標(biāo)系中的一點(diǎn)(x,y),要計(jì)算它在地面上的投影的坐標(biāo)(機(jī)器人坐標(biāo)系下的坐標(biāo)),圖像中心的坐標(biāo)為(xc,yc)。當(dāng)從圖像坐標(biāo)系轉(zhuǎn)化成機(jī)器人坐標(biāo)系時(shí),先通過距離函數(shù)計(jì)算實(shí)際距離,然后再計(jì)算角度,計(jì)算角度的公式取決于攝像機(jī)相對(duì)于機(jī)器人的裝配方向。這樣,得到了實(shí)際距離和實(shí)際角度就可以計(jì)算實(shí)際坐標(biāo),即機(jī)器人坐標(biāo)系下的坐標(biāo)。如果要從實(shí)際坐標(biāo)轉(zhuǎn)成圖像坐標(biāo),就執(zhí)行相反的過程。實(shí)際坐標(biāo)和全局坐標(biāo)的轉(zhuǎn)化以自定位為中介。定位不成功將導(dǎo)致轉(zhuǎn)化失去原有的意義。圖像坐標(biāo)不能直接和全局坐標(biāo)相互轉(zhuǎn)換,要以實(shí)際坐標(biāo)為中介。坐標(biāo)轉(zhuǎn)換2022/12/1912在高度為0的情況下,圖像坐標(biāo)無信息區(qū)的標(biāo)定2022/12/2278無支撐柱的機(jī)器人的全景視覺系統(tǒng)得到的圖像,它的全景鏡通常是由透明材料制作成的筒狀支撐架與攝像機(jī)聯(lián)接裝配,因此在生成圖像時(shí)不會(huì)有和圖像無關(guān)的支撐柱信息存在,得到的是一個(gè)完整的全景視覺圖像。有支柱的機(jī)器人的全景視覺系統(tǒng)得到的圖像,它的中央和四周存在黑色區(qū)域,不反應(yīng)機(jī)器人四周的情況,如果在進(jìn)行信息提取的時(shí)候,屏蔽這些區(qū)域,就可減少干擾和不必要的CPU負(fù)擔(dān)。為了屏蔽這些無信息區(qū),需要建立一張查找表,對(duì)于一個(gè)像素,通過該表可以查到此像素是否處在無信息區(qū)內(nèi),如果處在無信息區(qū)內(nèi),算法就跳過,不進(jìn)行信息提取操作。無信息區(qū)的標(biāo)定2022/12/1913無支撐柱的機(jī)器人的全景無信息區(qū)圖示2022/12/2279無支柱的全景視覺系統(tǒng)圖像全景鏡的三根支撐柱遮擋了“視線”,增加了無用區(qū)域自動(dòng)無信息區(qū)標(biāo)定結(jié)果無信息區(qū)圖示2022/12/1914無支柱的全景視覺系統(tǒng)圖像顏色定義——構(gòu)建顏色查找表2022/12/2280在視覺系統(tǒng)工作之前先要對(duì)顏色進(jìn)行定義,即什么是綠色(場(chǎng)地顏色),什么是黑色(機(jī)器人顏色),什么是橙紅色(足球顏色)。定義方法可以分為兩類,第一類使用閾值,例如對(duì)于顏色空間RGB,把R>200,G<100,B<100同時(shí)成立的顏色定義為紅色。第二類是建立顏色查找表,表中條目數(shù)等于可能出現(xiàn)的顏色值的數(shù)量(即RGB能夠組成的所有組合的數(shù)量,對(duì)于大多數(shù)的計(jì)算機(jī)為256×256×256),條目的內(nèi)容是該顏色值對(duì)應(yīng)的顏色(例如綠色)代碼形式的表示,通過顏色查找表可以查出任何一個(gè)顏色值屬于或者不屬于某顏色。對(duì)比閾值法,使用顏色查找表對(duì)定義顏色得到的結(jié)果更加精細(xì)。顏色定義——構(gòu)建顏色查找表2022/12/1915在視覺系統(tǒng)視覺標(biāo)定2022/12/2281(a)相似顏色的擴(kuò)散(b)把(a)中區(qū)域內(nèi)的顏色定義為綠色的標(biāo)定結(jié)果(c)標(biāo)定完成后的結(jié)果視覺標(biāo)定2022/12/1916(a)相似顏色的擴(kuò)散(b)色塊提取與跟蹤2022/12/2282定義顏色查找表后,就可確定某個(gè)像素否是綠色(場(chǎng)地顏色),但是這些綠色點(diǎn)只是一個(gè)一個(gè)像素,程序并沒把它們連接成區(qū)域。區(qū)域是由相似顏色組成的色塊。表示區(qū)域最精確的辦法是獲得它的輪廓。獲得這些輪廓通常要耗費(fèi)較大的CPU資源,如擴(kuò)散算法。在某些場(chǎng)合下,不需要獲得精確的輪廓,但是需要更高的速度,應(yīng)用在這種場(chǎng)合下的算法的一個(gè)典型代表是CMU的算法,該方法得到的是框定一個(gè)區(qū)域的最小矩形,并且這個(gè)矩形是不允許旋轉(zhuǎn)的,輪廓的信息被丟棄。這里介紹一種基于RegionTracker精確的區(qū)域輪廓獲得方法,該方法由FelixvonHundelshausen開發(fā)并首先使用在足球機(jī)器人上。它不但能得到精確的邊界,而且非常迅速。因?yàn)橐曈X系統(tǒng)得到的是連續(xù)圖像,任意前后兩幀圖像都是很接近的,所以除了在初始時(shí)需要色塊提取外,在大多時(shí)間內(nèi)可以把問題歸結(jié)于跟蹤,跟蹤通常是比較省時(shí)的。色塊提取與跟蹤2022/12/1917RegionTracker算法2022/12/2283RegionTracker算法的基礎(chǔ)是擴(kuò)散算法。擴(kuò)散算法需要一個(gè)或者一批符合某種要求(如顏色)的種子點(diǎn),一張和圖像大小相同的布爾變量表來標(biāo)記圖像中的所有像素點(diǎn)是否已經(jīng)包含在所提取的區(qū)域內(nèi),這張表某個(gè)位置上為“否”,表示該位置對(duì)應(yīng)的像素點(diǎn)不在區(qū)域內(nèi),“是”表示在區(qū)域內(nèi),初始化時(shí),表中對(duì)應(yīng)種子所在位置的布爾變量置為是,其他都為否,表示只有種子在區(qū)域內(nèi),通過擴(kuò)散,將把一些符合要求的點(diǎn)標(biāo)記為在區(qū)域內(nèi)。擴(kuò)散算法從種子向鄰近點(diǎn)(上下左右的緊鄰著的像素)擴(kuò)散,判斷是否應(yīng)該擴(kuò)散某個(gè)緊鄰的像素點(diǎn)需要兩個(gè)條件,第一:顏色值屬于要求的顏色,二:被標(biāo)記為在當(dāng)前提取的區(qū)域之外。這兩個(gè)條件符合時(shí),把該像素標(biāo)記為處于正在當(dāng)前提取的區(qū)域內(nèi),并且作為進(jìn)一步擴(kuò)散的“根據(jù)地”,進(jìn)一步向外擴(kuò)散。當(dāng)算法擴(kuò)散到不可擴(kuò)散時(shí),輪廓就形成了。用一個(gè)數(shù)組來記錄輪廓上的點(diǎn),以及一張包含他們之間連接信息的表。由于兩幅連續(xù)的圖片中色塊變化不大,如圖10.16中的區(qū)域A和區(qū)域B,區(qū)域A表示前一幀的某個(gè)色塊(物體),區(qū)域B表示緊接著的后一幀的同一色塊。這兩個(gè)色塊常常有一大片交集,在RegionTracker中交集就是可以大加利用的對(duì)象。RegionTracker算法2022/12/1918Re對(duì)綠色場(chǎng)地實(shí)行色塊提取的結(jié)果,藍(lán)色線條為綠色區(qū)域的輪廓。2022/12/2284對(duì)綠色場(chǎng)地實(shí)行色塊提取的結(jié)果,藍(lán)色線條為綠色區(qū)域的輪廓。20候選種子2022/12/2285候選種子2022/12/1920場(chǎng)地白線的識(shí)別2022/12/2286場(chǎng)地上白色標(biāo)線是機(jī)器人實(shí)現(xiàn)自定位的前提條件,在場(chǎng)地輪廓的基礎(chǔ)上,很容易得到白線點(diǎn)。對(duì)于輪廓上任何一點(diǎn),可以求得通過這點(diǎn)且垂直于輪廓的法線,在法線上往往存在著白線點(diǎn)。白線的特點(diǎn)是具有很高的亮度,并且白線兩邊通常是綠色(場(chǎng)地)。算法首先以場(chǎng)地輪廓為起點(diǎn),沿法線收縮亮度高的像素點(diǎn),找到以后再以這個(gè)高亮度點(diǎn)為中心,沿法線搜尋兩邊是否是綠色,即先搜尋白色,如果收縮到白線點(diǎn)則搜尋兩邊的綠色,這兩次搜尋都是在一個(gè)小范圍內(nèi)進(jìn)行的,保證了離輪廓點(diǎn)比較近。檢測(cè)白線的結(jié)果如圖10.19,圖中展示的是檢測(cè)白線的原理,以亮度高的點(diǎn)為起點(diǎn),法線方向?yàn)樗褜し较?,去?yàn)證兩邊是否為綠色,如果都是綠色則認(rèn)為是白線點(diǎn)。圖中檢測(cè)線中點(diǎn)標(biāo)記過白點(diǎn)的是算法認(rèn)為的白線點(diǎn),沒有標(biāo)記白點(diǎn)的檢測(cè)線系統(tǒng)認(rèn)為該中點(diǎn)不是白線點(diǎn)??梢钥吹接行┚€是白線,但系統(tǒng)沒有認(rèn)為它們是白線,球中有一點(diǎn)卻被標(biāo)記為白線了,因?yàn)榉蠙z測(cè)原則,中間亮度高,兩邊是綠色。場(chǎng)地白線的識(shí)別2022/12/1921檢測(cè)白線2022/12/2287檢測(cè)白線2022/12/19222022/12/2288射線檢測(cè)白線點(diǎn)2022/12/1923射線檢測(cè)白線點(diǎn)類球點(diǎn)和類障礙點(diǎn)的提取2022/12/2289對(duì)球的顏色使用閾值法定義,使用顏色亮度分離的HSV顏色空間,該空間對(duì)調(diào)整閾值比較有利。不需要把球的顏色包括得很全面,這些類球點(diǎn)的作用只是指明了這個(gè)位置可能有球,具體是否是球需要做精細(xì)的判斷,所以即使閾值的范圍比較小是不影響識(shí)別球的,而如果把閾值的范圍比較大會(huì)增加干擾,使得算法必須在更多位置進(jìn)行精細(xì)的判斷。檢測(cè)類球點(diǎn)使用類似于白線點(diǎn)檢測(cè)的方法,只不過這次只要在場(chǎng)地輪廓為起點(diǎn)的法線上存在符合閾值定義的點(diǎn)以后就認(rèn)為是類球點(diǎn),法線不能過長(zhǎng),以保證在場(chǎng)地綠色輪廓附近。類球點(diǎn)的檢測(cè)結(jié)果見圖10.21,正紅色為檢測(cè)到的類球點(diǎn)。提取類障礙點(diǎn)的目的是產(chǎn)生種子,為RegionTracker識(shí)別障礙物服務(wù)。障礙的亮度很低,因?yàn)橐?guī)則規(guī)定它為黑色,所以系統(tǒng)就以亮度為判別標(biāo)準(zhǔn)。亮度低的為類球點(diǎn)。其檢測(cè)過程和檢測(cè)類球點(diǎn)一致。類球點(diǎn)和類障礙點(diǎn)的提取2022/12/1924目標(biāo)檢測(cè)與識(shí)別2022/12/2290前面詳細(xì)介紹了圖像信息的提取,其中包括白線點(diǎn)提取、類障礙物點(diǎn)提取、類球點(diǎn)提取,其中白線點(diǎn)提取是為機(jī)器人自定位服務(wù),類障礙物點(diǎn)與類球點(diǎn)提取是為識(shí)別障礙物和識(shí)別球服務(wù)。識(shí)別障礙物和球都屬于機(jī)器視覺檢測(cè)中的目標(biāo)檢測(cè)與識(shí)別。1) 障礙物的識(shí)別在球場(chǎng)上,機(jī)器人的周圍有各種障礙物,如隊(duì)友機(jī)器人,對(duì)方機(jī)器人,甚至人類裁判等,并且這些障礙物的位置常常是不斷變化的。機(jī)器人在場(chǎng)上移動(dòng),首要的原則是不能與這些障礙物發(fā)生碰撞,更高的要求是能在這樣一個(gè)動(dòng)態(tài)的障礙環(huán)境中找到一個(gè)最優(yōu)的路徑到達(dá)目標(biāo)地點(diǎn),甚至能夠在帶球的情況下繞過障礙物,完成帶球突破這一技術(shù)目標(biāo)。完成這些任務(wù)的最基本的前提是有一種有效的穩(wěn)定的實(shí)時(shí)的障礙物識(shí)別方法。常用的障礙物識(shí)別方法視傳感器的種類而異,這里只介紹基于圖像傳感器,即攝像頭的識(shí)別方法。系統(tǒng)使用RegionTracker作為識(shí)別障礙物的主要工具。把類球點(diǎn)作為種子,用RegionTracker獲得黑色色塊的邊界,區(qū)域面積的就不能認(rèn)作障礙。識(shí)別效果見圖10.22,紅白點(diǎn)標(biāo)記了障礙和地面的接觸點(diǎn),該點(diǎn)決定了障礙物離機(jī)器人的距離,兩條紅線標(biāo)出了障礙所占據(jù)的角度,這在機(jī)器人的避障和射門中十分有用。避障要求機(jī)器人的行動(dòng)方向不能在這個(gè)角度內(nèi),射門要求機(jī)器人的瞄準(zhǔn)方向不能在這個(gè)角度內(nèi)。圖中顯示的是穿黑色衣服的研究人員。除了這個(gè)區(qū)域的黑色以外,還有很多其他的黑色,因?yàn)樗麄兲幱跓o信息區(qū),或者在場(chǎng)地以外,算法就不去考慮這些場(chǎng)外信息了。圖中還有兩個(gè)小區(qū)域被藍(lán)色包圍,但是他們沒有紅白標(biāo)記,因?yàn)樗鼈兠娣e過小,算法不認(rèn)為這是障礙。這兩塊黑色區(qū)域原本屬于一個(gè)大的黑色塊,但是RegionTracker沒有把這塊大色塊標(biāo)記進(jìn)去,因?yàn)樗麄冊(cè)趫?chǎng)地以外,系統(tǒng)對(duì)RegionTracker使用一個(gè)特殊的限制,如果要擴(kuò)散到場(chǎng)外,算法就限制住它。辨別物體是否在場(chǎng)外,需要自定位技術(shù),和全局坐標(biāo)映射到圖像坐標(biāo)的方法。目標(biāo)檢測(cè)與識(shí)別2022/12/1925前面詳細(xì)介紹了圖像信息國(guó)防科技大學(xué)開發(fā)的基于射線掃描方式提取黑色障礙物的算法2022/12/2291國(guó)防科技大學(xué)開發(fā)的基于射線掃描方式提取黑色障礙物的算法202識(shí)別障礙物2022/12/2292識(shí)別障礙物2022/12/1927球識(shí)別2022/12/2293(1) 橘紅色球識(shí)別同自定位一樣,檢測(cè)球也是從提取輪廓開始。首先用RegionTracker提取圖像輪廓,再搜索非場(chǎng)地的區(qū)域中的類球點(diǎn)。對(duì)于特定顏色球的識(shí)別,類球點(diǎn)比較容易獲取。顏色就是球的特征,這里定義一個(gè)顏色空間的區(qū)間,如對(duì)于HSV顏色空間,不妨取5<H<35且180<S<230的顏色像素點(diǎn)為類球點(diǎn)。如果某一個(gè)區(qū)域中的類球點(diǎn)占整個(gè)區(qū)域的像素點(diǎn)的總數(shù)的比例超過預(yù)先定義的閾值,則再將這些點(diǎn)聚合在一起,放在一個(gè)矩形檢測(cè)框內(nèi)。在該框內(nèi)將圖像二值化,對(duì)這些點(diǎn)群提取邊線,再用橢圓去擬合邊界來判斷是否是球。對(duì)球的判斷的準(zhǔn)確性有一個(gè)指標(biāo),稱為相似度,相似度可以由三個(gè)權(quán)重來度量:近似橢圓的程度,類球點(diǎn)數(shù)與所在輪廓的所有點(diǎn)數(shù)之比,檢測(cè)輪廓的尺寸相近程度。球識(shí)別2022/12/1928類似于雙目攝像頭的多攝像頭的數(shù)據(jù)融合得到的空間點(diǎn)云數(shù)據(jù),反應(yīng)球在三維空間中的位置2022/12/2294類似于雙目攝像頭的多攝像頭的數(shù)據(jù)融合得到的空間點(diǎn)云數(shù)據(jù),反應(yīng)
任意顏色球識(shí)別2022/12/2295依靠顏色來識(shí)別球就意味著需要對(duì)顏色進(jìn)行分類,定義某些顏色為球的顏色,通常使用閾值顏色分類,或者通過顏色查找表確定顏色的分類。但是這些做法非常依賴于光線的變化,極不穩(wěn)定。如果換一個(gè)新的足球,即使光照不變,也需要重新對(duì)顏色進(jìn)行分類。為了克服這一缺點(diǎn),必須以球的形狀為特征,來進(jìn)行識(shí)別。過去的幾年中,球形物體的識(shí)別成為了機(jī)器人足球的熱點(diǎn),并且取得了一些突破,其中之一借鑒了P.Viola使用adaboost進(jìn)行人臉識(shí)別的方法。Adaboost用來獲得分類器,可以使很多分類功能并不好的分類器聯(lián)合組成一個(gè)分類性能好的分類器。為了把a(bǔ)daboost應(yīng)用在機(jī)器視覺中,還需要使用積分圖獲得Haar特征。算法先計(jì)算出Haar特征,然后生成許多原始的分類器,adaboost可以組合這些弱分類器,獲得一個(gè)強(qiáng)分類器。這提供了一個(gè)優(yōu)點(diǎn),人們不用費(fèi)盡心思去選擇所識(shí)別模式相對(duì)于其他模式有什么特點(diǎn),這種機(jī)器視覺方法適用于識(shí)別大多數(shù)物體。 任意顏色球識(shí)別2022/12/1930智能中型足球機(jī)器人的自定位2022/12/2296機(jī)器人自定位是移動(dòng)機(jī)器人的重要技能,是自動(dòng)導(dǎo)航的基礎(chǔ)。設(shè)想在室內(nèi),機(jī)器人不知道自己的位置,而它又不具備識(shí)別障礙的能力,它在移動(dòng)的過程中就會(huì)撞到墻壁,因?yàn)椴恢雷约旱奈恢靡馕吨恢缐Ρ谟卸噙h(yuǎn)。定位的前提是要獲得已知的地圖,優(yōu)秀的機(jī)器人可以通過傳感器獲得周圍的幾何形狀,構(gòu)建地圖,然后使用定位算法得到自己的位置,進(jìn)而可以規(guī)劃路徑進(jìn)行導(dǎo)航了。足球機(jī)器人自主選擇路徑就是自動(dòng)導(dǎo)航,足球場(chǎng)就相當(dāng)于一個(gè)室內(nèi)環(huán)境,球場(chǎng)的邊界就相當(dāng)于墻壁。定位需要已知的地圖,場(chǎng)地是規(guī)則詳細(xì)規(guī)定的(已知的),這樣場(chǎng)地模型就是地圖。智能中型足球機(jī)器人的自定位2022/12/1931機(jī)器人自定自定位的研究背景2022/12/2297機(jī)器人自定位這個(gè)課題是機(jī)器人領(lǐng)域的熱門,人們已經(jīng)取得了一些研究成果。其中一個(gè)普遍使用的方法是利用MonteCarlo方法進(jìn)行定位,也稱粒子濾波定位算法。該算法的核心是計(jì)算機(jī)器人位置的概率分布。初始化時(shí),通常先把機(jī)器人的位置認(rèn)為是在場(chǎng)地中均勻分布的,然后根據(jù)不斷接收到的傳感器信息,調(diào)整概率分布,最后達(dá)到收斂,機(jī)器人在某個(gè)位置概率接近1,這樣就定位成功了。之所以說這是粒子濾波是因?yàn)樗谟?jì)算概率密度函數(shù)時(shí),把連續(xù)量離散化了,實(shí)際計(jì)算的是概率,不是概率密度。自定位的研究背景2022/12/1932機(jī)器人自定位這個(gè)課題自定位算法的基本原理2022/12/22981) 定位的目標(biāo)定位的目標(biāo)是取得機(jī)器人在全局坐標(biāo)系的坐標(biāo)和機(jī)器人的方向(x,y,θ),x,y是坐標(biāo)值,θ是機(jī)器人的正方向,一共三個(gè)量。2) 定位——模型匹配在論述了識(shí)別白線點(diǎn)的方法,但是這些白線點(diǎn)并不是在機(jī)器人坐標(biāo)中,而是在圖像坐標(biāo)系中,并且是帶有較大畸變的,需要把這些點(diǎn)轉(zhuǎn)化到機(jī)器人坐標(biāo)系中,該坐標(biāo)系以機(jī)器人為原點(diǎn)。此時(shí)如果把機(jī)器人和這些校正后的白線點(diǎn)看成一個(gè)系統(tǒng),并且該系統(tǒng)通過平移和旋轉(zhuǎn)使系統(tǒng)中的白線點(diǎn)能夠和場(chǎng)地模型的白線匹配,就能夠?qū)崿F(xiàn)機(jī)器人的自定位功能。自定位算法的基本原理2022/12/1933校正后的白線點(diǎn)和場(chǎng)地模型匹配,紅色點(diǎn)為校正后的白線點(diǎn)2022/12/2299校正后的白線點(diǎn)和場(chǎng)地模型匹配,紅色點(diǎn)為校正后的白線點(diǎn)距離場(chǎng)(或稱距離查找表,匹配的評(píng)判工具)2022/12/22100距離場(chǎng)(或稱距離查找表,匹配的評(píng)判工具)2022/12/19虛擬力場(chǎng)2022/12/22101機(jī)器人和白線點(diǎn)組成的系統(tǒng)(以后就把這稱為“目標(biāo)系統(tǒng)”)需要通過平移、旋轉(zhuǎn)與場(chǎng)地模型相匹配。促使“目標(biāo)系統(tǒng)”移動(dòng)的是一個(gè)附帶在模型上的力場(chǎng),不同于距離場(chǎng),它是一個(gè)矢量場(chǎng),“目標(biāo)系統(tǒng)”的每個(gè)白線點(diǎn)都受力,他們所受的合力的方向就是“目標(biāo)系統(tǒng)”平移的方向,平移的距離和受力成正比,這些力還會(huì)產(chǎn)生轉(zhuǎn)矩,“目標(biāo)系統(tǒng)”旋轉(zhuǎn)的方向就是轉(zhuǎn)矩引起的轉(zhuǎn)動(dòng)方向,旋轉(zhuǎn)角度的大小和轉(zhuǎn)矩成正比。計(jì)算轉(zhuǎn)矩的步驟是:計(jì)算白線點(diǎn)的質(zhì)心計(jì)算每個(gè)點(diǎn)受的力引起的轉(zhuǎn)矩求出這些轉(zhuǎn)矩的和虛擬力場(chǎng)2022/12/1936機(jī)器人和白線點(diǎn)組成的系統(tǒng)(以自定位算法的實(shí)現(xiàn)2022/12/22102機(jī)器人上一共配有兩個(gè)傳感器,即攝像機(jī),電子羅盤。其中攝像機(jī)獲得的信息為自定位的主要依據(jù)。定位分兩種情況,第一種情況,機(jī)器人不知道自己在前一幀的位置(前一刻),例如在利用第一幀圖像定位時(shí),機(jī)器人不知道剛才在哪里,因?yàn)槌绦虿艅倓傞_始。這種情況的定位是困難的,此時(shí)定位被稱為重新定位,因?yàn)檫@主要發(fā)生在前一幀定位失敗的情況下,需要耗費(fèi)大量CPU資源。重新定位的方法是一個(gè)遍歷的過程,方法如下:分別在x、y、θ三個(gè)量的定義域內(nèi)每隔一定的步進(jìn)取一個(gè)值,對(duì)以任意一組(x,y,θ)值(位置),假設(shè)機(jī)器人處在這個(gè)位置上,把白線點(diǎn)轉(zhuǎn)化成全局坐標(biāo)下的白線點(diǎn),然后計(jì)算匹配誤差。針對(duì)的不同的(x,y,θ)可以得到不同的匹配誤差。取匹配最小的誤差,它所對(duì)應(yīng)的位置就最有可能是機(jī)器人的位置。這個(gè)過程實(shí)質(zhì)上遍歷場(chǎng)上每個(gè)可能的位置和方向,取匹配得最好的組合。但是這個(gè)遍歷過程是一個(gè)離散過程,離散的程度取決于步進(jìn)的長(zhǎng)度,如果步進(jìn)過長(zhǎng),離散程度就高,得到的匹配誤差常常很大,如果步進(jìn)過小,匹配的次數(shù)就會(huì)過多,造成占用CPU
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省教育機(jī)構(gòu)2025年度勞動(dòng)合同規(guī)范文本2篇
- 2025年金融資產(chǎn)交易居間委托服務(wù)合同2篇
- 二零二五年度法院離婚案件財(cái)產(chǎn)分割操作合同3篇
- 2025年度綠化帶病蟲害防治服務(wù)合同范本4篇
- 二零二五年度醫(yī)療設(shè)備采購與租賃合同參考文本4篇
- 2025版模具行業(yè)市場(chǎng)調(diào)研與購銷合同4篇
- 2025年人才招聘解決方案合同
- 2025年古玩字畫擔(dān)保協(xié)議
- 2025年寬帶網(wǎng)絡(luò)使用合同
- 2025年融資居間服務(wù)合同的比較研究
- 2025年度版權(quán)授權(quán)協(xié)議:游戲角色形象設(shè)計(jì)與授權(quán)使用3篇
- 心肺復(fù)蘇課件2024
- 《城鎮(zhèn)燃?xì)忸I(lǐng)域重大隱患判定指導(dǎo)手冊(cè)》專題培訓(xùn)
- 湖南財(cái)政經(jīng)濟(jì)學(xué)院專升本管理學(xué)真題
- 全國(guó)身份證前六位、區(qū)號(hào)、郵編-編碼大全
- 2024-2025學(xué)年福建省廈門市第一中學(xué)高一(上)適應(yīng)性訓(xùn)練物理試卷(10月)(含答案)
- 《零售學(xué)第二版教學(xué)》課件
- 廣東省珠海市香洲區(qū)2023-2024學(xué)年四年級(jí)下學(xué)期期末數(shù)學(xué)試卷
- 房地產(chǎn)行業(yè)職業(yè)生涯規(guī)劃
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- MOOC 數(shù)字電路與系統(tǒng)-大連理工大學(xué) 中國(guó)大學(xué)慕課答案
評(píng)論
0/150
提交評(píng)論