黃琴艷
(上海信息技術(shù)學(xué)校 上海 200331)
服務(wù)機(jī)器人應(yīng)用技術(shù)已經(jīng)不再單純局限于生活空間,相關(guān)的技術(shù)越來越成熟廣泛,特別芯片和電子產(chǎn)品生產(chǎn)成本的降低,家庭服務(wù)機(jī)器人的生產(chǎn)成本大幅降低,終端銷售市場規(guī)模呈現(xiàn)高速增長的態(tài)勢。 根據(jù)統(tǒng)計(jì)數(shù)據(jù)顯示,全球服務(wù)機(jī)器人的市場規(guī)模從2016 年的54 億美元增長至2020 年的110.3 億美元,年均復(fù)合增長率達(dá)19.9%[1]。
作為與人類共同完成或協(xié)助人類完成指定任務(wù)的智能產(chǎn)業(yè)設(shè)備,服務(wù)機(jī)器人主要集成了計(jì)算機(jī)技術(shù)、液壓氣動(dòng)技術(shù)、電子信息技術(shù)等,綜合智能認(rèn)知、智慧運(yùn)動(dòng)和自適應(yīng)學(xué)習(xí)等為一身的綜合系統(tǒng)[2-3]。 當(dāng)前研究領(lǐng)域中,視覺感應(yīng)技術(shù)是服務(wù)機(jī)器人研發(fā)中最為核心的技術(shù),技術(shù)的高度直接決定了服務(wù)機(jī)器人產(chǎn)業(yè)發(fā)展的未來。 而我國的相關(guān)技術(shù)目前還處于初期階段,還需要廣大的科研工作者共同努力,為其發(fā)展提供支撐和貢獻(xiàn)。
服務(wù)機(jī)器人在人類的生活中,主要是為人類提供方便生活的智能化服務(wù),因此,實(shí)現(xiàn)服務(wù)機(jī)器人的自由移動(dòng)首先要解決其導(dǎo)航問題,在此基礎(chǔ)上,機(jī)器人才能自主完成自主移動(dòng)和物品的準(zhǔn)確抓取。 服務(wù)機(jī)器人運(yùn)動(dòng)導(dǎo)航系統(tǒng)的工作原理是機(jī)器人在運(yùn)動(dòng)時(shí)利用自身安裝的傳感器,明確其在工作環(huán)境中的所在位置和自主姿態(tài)[4]。 當(dāng)工作目標(biāo)的坐標(biāo)方位已知的時(shí)候,機(jī)器人就可以自主規(guī)劃運(yùn)動(dòng),完成人類規(guī)劃的任務(wù)。 本研究主要針對視覺導(dǎo)航技術(shù)開展研究。
人類在自然環(huán)境中生活,需要從外獲取大量的信息,其中至少85%以上都是通過視覺獲取的,視覺獲取外部信息時(shí)具有全面和時(shí)效性強(qiáng)等特點(diǎn),是人類生活中最為重要的感知內(nèi)容[5]。 機(jī)器人和人類的基本結(jié)構(gòu)不同,因此,人類的視覺技術(shù)應(yīng)用于機(jī)器人是通過一定的流程實(shí)現(xiàn)的。具體流程為:首先,機(jī)器人利用自身傳感器獲取環(huán)境信息,實(shí)現(xiàn)自主決策和執(zhí)行任務(wù);其次,通過內(nèi)部運(yùn)算芯片、定位算法、機(jī)器人自身的攝像機(jī),對識別出的環(huán)境及物品進(jìn)行圖像處理;最后,機(jī)器人根據(jù)運(yùn)算數(shù)據(jù)規(guī)劃運(yùn)動(dòng)和工作軌跡。
服務(wù)機(jī)器人的導(dǎo)航依賴于機(jī)器人自身的攝像機(jī)。 導(dǎo)航方式是雙目視覺導(dǎo)航技術(shù),該技術(shù)是通過對兩個(gè)不同視角拍攝的圖像進(jìn)行數(shù)據(jù)的三維恢復(fù),產(chǎn)生實(shí)時(shí)的運(yùn)動(dòng)位置信息。 由此可見,雙目視覺導(dǎo)航的視野更廣,機(jī)器人可以實(shí)時(shí)取得更加準(zhǔn)確的位置數(shù)據(jù),直接有效提升了導(dǎo)航的精準(zhǔn)性。 因此,當(dāng)今雙目視覺導(dǎo)航應(yīng)用得更多、更廣泛。
一個(gè)完整的雙目視覺導(dǎo)航過程主要包括攝像機(jī)的目標(biāo)識別、目標(biāo)定位、環(huán)境匹配、三維數(shù)據(jù)恢復(fù)等步驟[6]。 雙目視覺導(dǎo)航技術(shù)的工作原理與人類視覺的感知過程十分相似,是從兩個(gè)不同的角度分別對同一物體進(jìn)行實(shí)時(shí)的圖像定位,從而明確該物體三維實(shí)時(shí)信息的過程[7]。
雙目視覺導(dǎo)航定位的工作原理圖如圖1 所示,對于環(huán)境中的某一位置點(diǎn)P,攝像機(jī)的角度中,P點(diǎn)左右兩個(gè)成像點(diǎn)分別是PL和PR,機(jī)器人此時(shí)無法確定P點(diǎn)坐標(biāo),而且,它的兩個(gè)投射點(diǎn)OL也不能被準(zhǔn)確地測量。 當(dāng)使用OL和OR兩個(gè)攝像頭共同對準(zhǔn)P點(diǎn),并準(zhǔn)確地測量出PL和PR的投射,那么P的坐標(biāo)將得到精準(zhǔn)的測量,它可以由OLPL和ORPR兩條直線的焦點(diǎn)唯一確定。
圖1 雙目立體視覺原理圖
通過獲取兩個(gè)攝影頭的內(nèi)部和外部信息,可以進(jìn)行雙目標(biāo)定,從而確定兩個(gè)攝影頭的相互位置。 這包括兩個(gè)攝影頭的軸心和方向的變化,也就是兩個(gè)攝影頭的外部信息[8]。 如果將P作為一個(gè)參考值,假設(shè)R1和T1表示左側(cè)拍攝器的軸心位置的變化,并且它們的軸心位置將會發(fā)生變化,這兩個(gè)變化將會導(dǎo)致PW=的值的變化,其中PW=(P1-T1);PW=(P2-T2)。PW代表著一個(gè)物體的位置,它位于全球的坐標(biāo)系,并且它位于兩臺不同的攝影機(jī)的坐標(biāo)系P1和P2。 因此,應(yīng)使用(P1-T1)=(P2-T2)來表示雙目視覺。
通過使用目標(biāo)識別技術(shù),可以有效地檢測出目標(biāo)物的存在,從而實(shí)現(xiàn)高效的機(jī)器人視覺定位。 該技術(shù)的核心原則是:從圖像中抽取出有價(jià)值的元素,經(jīng)過深入的數(shù)據(jù)挖掘和計(jì)算,將其轉(zhuǎn)換成可以被檢測的形式,從而實(shí)現(xiàn)快速、高效的目標(biāo)識別。 當(dāng)前,最流行的目標(biāo)鑒定技術(shù)包括:以圖像和文字作為指示,以及以物體的外觀和結(jié)構(gòu)作為指示[9]。
機(jī)器人視覺識別技術(shù)常用的算法有形狀描述識別、矩識別等。 隨著視覺識別技術(shù)的不斷發(fā)展,幾何不變矩算法憑借準(zhǔn)確、快速等特征,已經(jīng)成為當(dāng)前視覺識別算法中廣泛應(yīng)用的領(lǐng)先技術(shù)。
通過幾何不變矩算法,可以將圖像分割成7 個(gè)獨(dú)立的區(qū)域,并通過歐氏距離法來比較它們之間的相似度,從而確定哪些區(qū)域更接近目標(biāo)區(qū)域。 這一過程需要對圖像進(jìn)行二值化處理,以獲得更準(zhǔn)確的結(jié)果。
幾何不變矩算法由7 個(gè)獨(dú)立的矩形組成,這些矩形可以是二維的、可變的,也可以是多維的,可以用于實(shí)現(xiàn)任何形狀的變換,如旋轉(zhuǎn)、平移和縮放。
通過幾何不變矩的方法,可以實(shí)現(xiàn)對目標(biāo)的準(zhǔn)確識別。
①通過設(shè)定一個(gè)特定的閾值,可以計(jì)算出模板的幾何不變矩。 ②通過使用濾波算法,可以消除圖片上的噪聲,從而更好地進(jìn)行后期的數(shù)據(jù)分析。 ③通過利用灰度差的原則,可以把原始的圖片變換成僅包含0 和1 兩個(gè)像素的數(shù)字,從而實(shí)現(xiàn)對圖片的二值化。 ④通過二值化處理,可以提取出圖像中的區(qū)域,并計(jì)算出每個(gè)區(qū)域的輪廓。 ⑤通過計(jì)算圖像中輪廓的幾何不變矩,以及它們與模板的幾何不變矩之間的歐氏距離,來確定它們之間的關(guān)系。 ⑥通過比較各個(gè)輪廓的歐氏距離:如果低于預(yù)先設(shè)定的閾值,就可以斷定該輪廓所在的區(qū)域就是目標(biāo)物;如果未發(fā)現(xiàn)圖像輪廓,就需要檢查閾值的設(shè)置是否合理,如果符合,就可以斷定該場景中沒有目標(biāo)物;如果不符合,就需要重新調(diào)整閾值。 ⑦通過形心計(jì)算,可以獲取目標(biāo)區(qū)域的圖像坐標(biāo)。
雙目視覺系統(tǒng)在完成定位后,需要將左右兩攝像機(jī)的圖像進(jìn)行匹配,建立兩個(gè)圖像之間的聯(lián)系,再實(shí)現(xiàn)立體空間坐標(biāo)點(diǎn)的測量。 在實(shí)際測量過程中,利用獲取的兩幅圖像來恢復(fù)空間中目標(biāo)點(diǎn)的三維姿態(tài),需要在兩張圖片中找到相應(yīng)的匹配關(guān)系,這一過程也就是場景立體匹配。
在將三維世界的信息投影到二維圖像平面的過程中,部分有用信息喪失,同時(shí)大量的噪聲干擾了三維信息恢復(fù)的難度,為了降低這些不良因素的影響,減小立體匹配過程中的誤匹配概率,學(xué)者們針對立體匹配過程提出了極線約束、唯一性約束、相似性約束、連續(xù)性約束和順序一致性約束等幾項(xiàng)約束條件。
對于立體圖像的視覺識別,完成了攝像機(jī)標(biāo)定以及目標(biāo)識別與立體匹配之后,接下來的工作就是利用這些數(shù)據(jù)對物體進(jìn)行三維重構(gòu)。 對于攝像機(jī)任意放置的雙目視覺系統(tǒng),目標(biāo)物形心P在圖像像素坐標(biāo)系下的坐標(biāo)P1和P2已經(jīng)通過目標(biāo)識別以及立體匹配過程得出,設(shè)左右攝像機(jī)的透視投影矩陣分別是M1與M2,則可以得出Zc1的矩陣。
其中,(u1,v1,1)與(u2,v2,1)分別是目標(biāo)物形心在左右圖像像素坐標(biāo)系中的齊次坐標(biāo),(X,Y,Z,1)是目標(biāo)物形心在世界坐標(biāo)系下的齊次坐標(biāo),(i=1,2;P=1,2,3;q=1,2,3,4)分別是Mi在第P行,第q列的元素。 消去Zc1和Zc2,就可以得到關(guān)于X,Y,Z的四個(gè)線性方程。 其中P1和P2是P的對應(yīng)點(diǎn),因此該矩陣有唯一的P值與之對應(yīng),而在實(shí)際應(yīng)用中,并不能得到精確解,采用最小二乘法求出P點(diǎn)在世界坐標(biāo)系下的坐標(biāo):P=(ATA)-1ATb。
重定位技術(shù)對于服務(wù)機(jī)器人的室內(nèi)長期運(yùn)行至關(guān)重要,它可以幫助機(jī)器人更好地適應(yīng)實(shí)際環(huán)境。 當(dāng)系統(tǒng)重新啟動(dòng),它將會使用之前儲備的地理信息來完成各種工程操作,例如定位和指引。 通過感應(yīng)器檢測,可以重新定位已經(jīng)存儲的地圖上的物體的位置。
經(jīng)過一周的室內(nèi)操作,可以創(chuàng)造一張三維地圖M3D,它的原始地理坐標(biāo)是A,而且它的第一個(gè)關(guān)鍵幀就是{OM},這樣就可以將整個(gè)地圖的空間范圍精確地定義下來。 當(dāng)機(jī)器人在執(zhí)行任務(wù)時(shí),如果相鄰關(guān)鍵幀之間的特征能夠很好地匹配,就能夠更精確的預(yù)測它的位置。 因此,利用關(guān)鍵幀技術(shù)來創(chuàng)建一張地圖,其中包含了關(guān)鍵幀及其相關(guān)的三維數(shù)據(jù),這些數(shù)據(jù)也被用于構(gòu)成一套完整的地理信息系統(tǒng)。 通過使用地圖上的節(jié)點(diǎn),能夠更好地了解周圍的情況,從而使用機(jī)器人來實(shí)現(xiàn)自我監(jiān)控。
當(dāng)前,重定位算法的視覺化方法包括特征提取法和卷積神經(jīng)網(wǎng)絡(luò)算法。 利用特征法,研究人員能夠從多個(gè)圖像樣本中抽取出有意義的信息,這些信息包括顏色、形狀、亮度和其他因素。 這種方法能夠有效地預(yù)測出圖像之間的關(guān)系,而且能夠獲得較好的重建效果。 然而,當(dāng)這些條件不利時(shí),這種方法的準(zhǔn)確性會受到影響,有時(shí)會出現(xiàn)較大的偏差。 使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行重定位可以提高模型的準(zhǔn)確率,因?yàn)樗軌驈囊粋€(gè)模型中提取多個(gè)位置,并且能夠根據(jù)不同的外部條件進(jìn)行調(diào)整。 然而,這種算法也存在一些缺陷,比如它的準(zhǔn)確率可能會受到外部因素的影響。
本文旨在探索一種新的技術(shù),以便讓機(jī)器人能夠以更加穩(wěn)健的方式進(jìn)行重新定向。 該技術(shù)將兩種技術(shù)有效地整合,即當(dāng)需要的特征數(shù)量較大時(shí),采用特征分析,而當(dāng)需要的數(shù)據(jù)較少時(shí),采用卷積神經(jīng)網(wǎng)絡(luò)來計(jì)算。 算法整體結(jié)構(gòu)如圖2 所示。
圖2 視覺重定位的算法實(shí)現(xiàn)流程
視覺重定位的算法實(shí)現(xiàn)(見圖2),主要通過以下流程:基于視覺詞袋模型的相似圖像檢索—特征法求解位姿—基于卷積神經(jīng)網(wǎng)絡(luò)的位姿求解—算法選擇。 實(shí)現(xiàn)的過程的主要內(nèi)容包括:
(1)以詞袋模型為模式的相似圖像檢索。 詞袋模型是將圖像特征表述為離散的視覺單詞,構(gòu)成視覺字典,在圖像檢索時(shí),將圖像特征映射到字典中最近鄰視覺單詞上,通過計(jì)算視覺字典間距離來度量圖像的相似度。
(2)基于特征法的重定位。 雙目視覺識別系統(tǒng)通過特征提取和匹配,在兩張圖像中獲取匹配的二維目標(biāo)點(diǎn),對于深度相機(jī)等傳感器可直接獲得二維目標(biāo)特征點(diǎn)的深度值,然后,使用相關(guān)公式求解圖像對應(yīng)的相機(jī)位置。
(3)基于卷積神經(jīng)網(wǎng)絡(luò)的重定位。 通過訓(xùn)練一個(gè)神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)對輸入圖像的位姿估計(jì),能夠直接估計(jì)圖像的絕對位姿。 算法需要使用圖像及對應(yīng)的位姿作為訓(xùn)練集,訓(xùn)練網(wǎng)絡(luò)參數(shù)。 通過對輸入圖像進(jìn)行多次裁剪,選擇出與訓(xùn)練集圖像相似度高的圖像進(jìn)行位姿回歸。
(4)算法選擇。 特征法只能在匹配的特征點(diǎn)數(shù)量足夠且正確匹配情況下獲得較高精度的位姿,若特征點(diǎn)數(shù)量稀少則誤差很大或求解位姿失敗。 基于卷積神經(jīng)網(wǎng)絡(luò)算法可估計(jì)出任意輸入圖像的位姿,但精度不足。 因此,結(jié)合兩種方法的優(yōu)勢,在特征匹配較好情況下,使用特征法,否則,使用卷積神經(jīng)網(wǎng)絡(luò)的算法。
就服務(wù)機(jī)器人系統(tǒng)的應(yīng)用而言,要構(gòu)造出類似人類雙眼的立體視覺導(dǎo)航系統(tǒng),還有很多關(guān)鍵技術(shù)需要突破和優(yōu)化,未來的研究方向首先是如何建立更加有效的雙目體模型,以匹配更多的約束信息,降低立體匹配的難度。 其次是研究新的適用于立體視覺的計(jì)算理論和匹配策略,有效解決灰度失真、幾何畸變、噪聲干擾等問題。 最后是應(yīng)用算法和場景的優(yōu)化,減少運(yùn)算量,提升系統(tǒng)的實(shí)用性。
隨著光學(xué)傳感器、電子芯片技術(shù)和無線網(wǎng)絡(luò)技術(shù)的快速發(fā)展,雙目視覺導(dǎo)航技術(shù)必將迎來新的技術(shù)突破,實(shí)現(xiàn)應(yīng)用場景的全面優(yōu)化。 服務(wù)機(jī)器人雙目視覺識別導(dǎo)航技術(shù)有著重要的研究價(jià)值和廣闊的應(yīng)用前景,需要廣大的科研工作者共同努力,為其發(fā)展提供支撐和貢獻(xiàn)。