楊 靜
(沈陽科技學(xué)院,遼寧 沈陽 110000)
海洋覆蓋地球一半以上的表面積,是所有生物生命的起源,人類的生活與生產(chǎn)也越來越離不開海洋。當(dāng)前海洋事業(yè)得到了快速的發(fā)展,工作環(huán)境也越來越復(fù)雜,對(duì)于水下的探索運(yùn)載工具的要求也逐漸提高[1]。仿生學(xué)是一門專門研究并模仿自然界中各類生物特殊本領(lǐng)的學(xué)科,對(duì)于生物的形態(tài)、運(yùn)動(dòng)、視覺等均可進(jìn)行模仿。仿生機(jī)器魚是一種模仿魚類在水中游動(dòng)的推理機(jī)理,同時(shí)結(jié)合電子領(lǐng)域、控制領(lǐng)域、機(jī)械領(lǐng)域等多領(lǐng)域?qū)W科,實(shí)現(xiàn)在水中進(jìn)行推進(jìn)的運(yùn)動(dòng)機(jī)器人[2]。仿生機(jī)器魚在實(shí)際應(yīng)用中具有機(jī)動(dòng)性強(qiáng)、噪聲低、效率高、擾動(dòng)小等優(yōu)勢(shì)。但水下工作環(huán)境日益復(fù)雜化和特殊化,使得仿生機(jī)器魚的路徑規(guī)劃很難直接移植工業(yè)機(jī)器人、移動(dòng)機(jī)器人的規(guī)劃方法,實(shí)現(xiàn)對(duì)仿生機(jī)器魚的控制。因此,本文通過結(jié)合雙目視覺技術(shù),提出一種全新的仿生機(jī)器魚路徑規(guī)劃方法。
在仿生機(jī)器魚運(yùn)動(dòng)過程中,采用雙目視覺技術(shù),將對(duì)應(yīng)的坐標(biāo)值、速度大小以及轉(zhuǎn)動(dòng)角度等參數(shù)控制其運(yùn)動(dòng)。利用雙目視覺傳感器完成視頻信號(hào)采集、無線傳輸、幀同步等功能,并將采集到的圖像信息轉(zhuǎn)換為仿生機(jī)器魚能夠進(jìn)行識(shí)別的統(tǒng)一格式,方便對(duì)圖像進(jìn)行處理[3]。在跨平臺(tái)計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫中,對(duì)圖像分析、結(jié)構(gòu)分析以及運(yùn)動(dòng)分析分別進(jìn)行定義,由于流媒體處理開發(fā)包中獲取到的圖像采樣是一段在內(nèi)存中連續(xù)地滿足特殊格式的空間,而視覺與機(jī)器學(xué)習(xí)庫中的圖像格式通常為IplImage格式。因此,本文在對(duì)仿生機(jī)器魚進(jìn)行運(yùn)動(dòng)控制時(shí),將雙目視覺傳感器采集到的視頻圖像格式均轉(zhuǎn)換為視覺與機(jī)器學(xué)習(xí)庫可識(shí)別的IplImage格式[4]。在仿生機(jī)器魚運(yùn)動(dòng)過程中,采用多目立體視覺測(cè)距的方法,假設(shè)目標(biāo)點(diǎn)為T,P1和P2分別表示為目標(biāo)點(diǎn)兩側(cè)相同焦距的攝像頭光心,T1和T2分別表示為空間中目標(biāo)點(diǎn)在左右攝像頭中映射的投影點(diǎn),l表示為目標(biāo)點(diǎn)到攝像頭之間的距離,即仿生機(jī)器魚運(yùn)動(dòng)深度值。結(jié)合相似三角形定理得出如下公式:
(1)
公式(1)中,f表示為攝像頭的焦距;b表示為攝像頭景深;m+n表示為空間目標(biāo)點(diǎn)在兩個(gè)攝像頭當(dāng)中的視覺差。通過雙目攝像頭測(cè)距可將原本三維空間中的深度值轉(zhuǎn)換到二維圖像中,從而方便找尋與目標(biāo)點(diǎn)對(duì)應(yīng)的匹配點(diǎn)。
為保證在仿生機(jī)器魚運(yùn)動(dòng)過程中對(duì)障礙物自動(dòng)避讓并形成運(yùn)動(dòng)路徑,本文以圖1為例,對(duì)仿生機(jī)器魚防碰撞路徑進(jìn)行規(guī)劃。

圖1 仿生機(jī)器魚障礙避讓路徑示意圖
圖1中8,11,15,19均表示為仿生機(jī)器魚在運(yùn)行過程中會(huì)遇到的障礙,仿生機(jī)器魚的位置由起始點(diǎn)開始,分別從1,2,3,10,16目標(biāo)點(diǎn)對(duì)障礙物進(jìn)行躲避。結(jié)合遺傳算法,將初始種群設(shè)為遺傳算法的起始點(diǎn),由一定數(shù)目的個(gè)體組成初始種群,為了使該防碰撞路徑規(guī)劃具有全局最優(yōu)性,要求初始種群應(yīng)當(dāng)隨機(jī)分布在需要進(jìn)行搜索的海域空間中[5]。采用剪短無障礙路徑的方式,對(duì)初始種群進(jìn)行選擇,再根據(jù)個(gè)體適應(yīng)度函數(shù)得出:
(2)
公式(2)中,x表示為個(gè)體在通過柵格模型的柵格數(shù)量總和;A表示為兩個(gè)相鄰個(gè)體之間的直線距離之和。將公式(2)作為修正項(xiàng),利用其對(duì)仿生機(jī)器魚運(yùn)行過程中中間斷點(diǎn)太遠(yuǎn)的路徑進(jìn)行消除,從而獲取適應(yīng)度最高的防碰撞規(guī)劃路徑。
通常情況下,仿生機(jī)器魚的程序運(yùn)行環(huán)境為微軟Visual Studio .NET 1708C++。因此,為驗(yàn)證本文提出的基于雙目視覺的仿生機(jī)器魚路徑規(guī)劃設(shè)計(jì)的應(yīng)用優(yōu)勢(shì),需要根據(jù)本文雙目視覺組成在C++環(huán)境當(dāng)中完成對(duì)仿真實(shí)驗(yàn)的編寫,從而判斷本文路徑規(guī)劃方法與傳統(tǒng)路徑規(guī)劃方法的可行性。在仿真實(shí)驗(yàn)環(huán)境中設(shè)置多個(gè)障礙物,分別利用結(jié)合本文規(guī)劃方法的仿生機(jī)器魚與傳統(tǒng)規(guī)劃方法的仿生機(jī)器魚在該水域環(huán)境中進(jìn)行運(yùn)動(dòng),將兩種運(yùn)動(dòng)結(jié)果繪制成如圖2所示的實(shí)驗(yàn)結(jié)果對(duì)比圖。
從圖2可以看出,結(jié)合傳統(tǒng)規(guī)劃方法的仿生機(jī)器魚在運(yùn)行過程中分別在圖中兩個(gè)位置出現(xiàn)了與障礙物碰撞,重新規(guī)劃路線的問題,而結(jié)合本文規(guī)劃方法的仿生機(jī)器魚在運(yùn)行過程中可以平穩(wěn)完成運(yùn)行達(dá)到目標(biāo)點(diǎn)。由于兩種仿生機(jī)器魚的運(yùn)行速度相同,但傳統(tǒng)規(guī)劃方法中出現(xiàn)了兩次碰撞會(huì)增加運(yùn)行時(shí)間,因此二者相比,本文規(guī)劃方法的仿生機(jī)器魚到達(dá)目標(biāo)點(diǎn)時(shí)的用時(shí)更短。因此,通過實(shí)證證明,本文設(shè)計(jì)的基于雙目視覺的仿生機(jī)器魚路徑規(guī)劃方法的規(guī)劃路徑更合理,能夠滿足仿生機(jī)器魚在水中的運(yùn)動(dòng)過程中不發(fā)生碰撞,順利到達(dá)目標(biāo)點(diǎn)。

圖2 實(shí)驗(yàn)結(jié)果對(duì)比圖
路徑規(guī)劃在移動(dòng)機(jī)器人技術(shù)領(lǐng)域中,尤其是仿生機(jī)器魚的路徑規(guī)劃一直是一個(gè)熱點(diǎn)和難點(diǎn)。本文通過結(jié)合雙目視覺技術(shù),提出一種全新的仿生機(jī)器魚路徑規(guī)劃方法完成了在靜態(tài)的全局環(huán)境中進(jìn)行全局路徑的有效性和優(yōu)越性規(guī)劃。在后續(xù)的研究中還將針對(duì)在不同環(huán)境下的仿生機(jī)器魚路徑進(jìn)行規(guī)劃設(shè)計(jì),從而實(shí)現(xiàn)仿生機(jī)器魚在未知環(huán)境中對(duì)動(dòng)態(tài)障礙物的避讓。