国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于人工路標(biāo)的AGV識(shí)別與定位技術(shù)研究

2020-11-03 09:26錢東海孫林林
自動(dòng)化與儀表 2020年10期
關(guān)鍵詞:極坐標(biāo)路標(biāo)位姿

陳 成,錢東海,趙 偉,劉 洋,孫林林

(上海大學(xué) 機(jī)電工程與自動(dòng)化學(xué)院,上海200444)

近幾年來,以人工智能及物聯(lián)網(wǎng)為代表的新一代技術(shù)的迅速發(fā)展,人類生產(chǎn)生活的智能化程度日益提高,機(jī)器人成為人類生產(chǎn)生活的一大主題。 作為機(jī)器人的一個(gè)重要分支,自動(dòng)導(dǎo)引車AGV(automated guided vehicle) 產(chǎn)業(yè)的發(fā)展迎來了巨大的突破。AGV 作為物流系統(tǒng)和柔性制造系統(tǒng)中的關(guān)鍵子系統(tǒng),目前應(yīng)用越來越廣泛。 并且,隨著計(jì)算機(jī)視覺技術(shù)的不斷進(jìn)步,視覺相關(guān)技術(shù)越來越多地被機(jī)器人領(lǐng)域廣泛采用。 在工廠的實(shí)際生產(chǎn)中AGV 往往需要在目標(biāo)點(diǎn)附近進(jìn)行準(zhǔn)確定位,以控制AGV 完成更好的停靠。 基于人工路標(biāo)的視覺定位算法具有速度快、可靠性高、實(shí)現(xiàn)簡易等特點(diǎn),能夠順利地應(yīng)用到AGV 的定位系統(tǒng)中。 故在此研究了基于人工路標(biāo)的AGV 識(shí)別與定位算法,設(shè)計(jì)出一種簡單實(shí)用的人工路標(biāo),提出一種魯棒的基于對數(shù)極坐標(biāo)變換的圖像識(shí)別算法,利用相機(jī)采集到路標(biāo)的4 個(gè)頂點(diǎn),與世界坐標(biāo)系下的坐標(biāo)配對求解出AGV 的位姿,實(shí)現(xiàn)AGV 在目標(biāo)點(diǎn)附近的準(zhǔn)確???。

1 人工路標(biāo)的設(shè)計(jì)與識(shí)別

人工路標(biāo)的設(shè)計(jì)主要考慮路標(biāo)的簡易美觀性、路標(biāo)識(shí)別的準(zhǔn)確性、實(shí)時(shí)性、穩(wěn)定性以及在復(fù)雜環(huán)境中的可擴(kuò)展性。 識(shí)別算法需要在復(fù)雜環(huán)境中也能快速準(zhǔn)確地識(shí)別以此確保定位的精度。

1.1 人工路標(biāo)的設(shè)計(jì)

在此綜合考慮人工路標(biāo)的一系列設(shè)計(jì)要求和已提出的多種路標(biāo)設(shè)計(jì)方案,所設(shè)計(jì)的人工路標(biāo)如圖1所示。 該路標(biāo)由三大部分組成:紅色的矩形方框、內(nèi)部的白色背景,以及待識(shí)別的目標(biāo)圖案。 將路標(biāo)的外圍方框設(shè)置為紅色的原因有2 個(gè):①因?yàn)樵谠揂GV 應(yīng)用的工作環(huán)境中紅色的物體相對較少,標(biāo)準(zhǔn)的紅色矩形框結(jié)構(gòu)就更少;②因?yàn)榧t色與其他顏色相較其純度高,散射強(qiáng)度小,明度低,保證了AGV 在不同距離下識(shí)別的準(zhǔn)確性。內(nèi)部設(shè)置成黑白兩色,能夠形成強(qiáng)烈的明暗對比,有助于圖案的識(shí)別。

圖1 人工路標(biāo)Fig.1 Artificial road signs

1.2 人工路標(biāo)的識(shí)別

人工路標(biāo)的設(shè)計(jì)完成后,根據(jù)路標(biāo)的一系列特征使其能夠在圖像中被準(zhǔn)確的定位與識(shí)別。 通常,路標(biāo)在圖像中的形狀、尺寸等會(huì)發(fā)生很大的變化,使得識(shí)別的難度增加不少。 為了在發(fā)生尺度變化以及旋轉(zhuǎn)變化的情況下都能準(zhǔn)確地識(shí)別路標(biāo)并確定位置,在此提出了一種魯棒的路標(biāo)識(shí)別方法。 其主要的算法流程如圖2所示。

圖2 路標(biāo)檢測算法流程Fig.2 Flow chart of road sign detection algorithm

采用基于閾值的分割算法,對相機(jī)采集到的彩色圖像進(jìn)行分割。 彩色圖像空間有很多種,在此選擇在RGB 顏色空間對圖像中的紅色區(qū)域進(jìn)行分割。采用的r,g,b 計(jì)算值為

式中:R,G,B 為圖像在各顏色空間的亮度值。 計(jì)算出r,g,b 的值后,對圖像進(jìn)行二值化,選擇r>0.4,g<0.3,b<0.3 時(shí)的像素點(diǎn)的值置為255,其余的為0。多次試驗(yàn)證明,該方法對光照強(qiáng)弱不敏感且計(jì)算簡單,獲得的二值化圖像如圖3。圖像中的白色部分即為原圖像中的紅色區(qū)域,黑色則為其他區(qū)域。 為了去除圖像中的噪聲并平滑候選區(qū)域,再將二值化圖像進(jìn)行形態(tài)學(xué)開運(yùn)算。

圖3 分割前后的路標(biāo)閾值Fig.3 Road sign threshold before and after segmentation

由圖可見,經(jīng)過分割的圖像,彩色圖像中的紅色部分轉(zhuǎn)化為白色,其余部分為黑色。 然而,環(huán)境中除路標(biāo)以外,還可能存在一些其他區(qū)域是紅色的,因此可以通過輪廓來區(qū)分路標(biāo)與其他干擾區(qū)域。

觀察路標(biāo)中紅色方框的輪廓是2 個(gè)四邊形,外圍的四邊形內(nèi)部包含另外一個(gè)四邊形。 通過輪廓檢測算法對圖像進(jìn)行輪廓檢測,尋找圖像中所有的封閉輪廓,此時(shí)檢查出的輪廓為光滑的曲線,需要對每個(gè)輪廓進(jìn)行多邊形擬合,選擇形狀為四邊形且凹凸性為凸的輪廓。 通過余弦定理計(jì)算每條邊之間的夾角,若其余弦值的最大絕對值小于0.3,則對該輪廓做進(jìn)一步的判斷。 充分利用路標(biāo)中紅色矩形方框的特性,即一個(gè)外圍四邊形輪廓內(nèi)部再包含一個(gè)四邊形輪廓,所以目標(biāo)輪廓一定具有父輪廓,至此準(zhǔn)確定位到路標(biāo)的位置。

找到符合條件內(nèi)外輪廓之后,利用內(nèi)輪廓在彩色圖像中對路標(biāo)進(jìn)行裁剪,對裁剪下來的圖片進(jìn)行投影變換,變換為正方形后采用對數(shù)極坐標(biāo)變換算法識(shí)別路標(biāo)。 對數(shù)極坐標(biāo)變換是將笛卡爾坐標(biāo)系下的圖像轉(zhuǎn)化到對數(shù)極坐標(biāo)系下。 目標(biāo)經(jīng)過對數(shù)極坐標(biāo)變換之后,目標(biāo)的尺度變化與旋轉(zhuǎn)變化轉(zhuǎn)換為極坐標(biāo)下的橫向與縱向平移,這有利于對目標(biāo)的識(shí)別。

笛卡爾坐標(biāo)系與極坐標(biāo)系之間的變化關(guān)系為

再轉(zhuǎn)換到對數(shù)極坐標(biāo)平面,描述關(guān)系為

式中:x,y 為笛卡爾坐標(biāo)系下坐標(biāo);ρ 為直角坐標(biāo)系下像素點(diǎn)到變換中心的距離即半徑長度;θ 為直角坐標(biāo)系下像素點(diǎn)與變換中心連線與X 軸的夾角即角度;ξ,ψ 為對數(shù)極坐標(biāo)系下的坐標(biāo);kξ,kψ為設(shè)計(jì)參數(shù),用于改進(jìn)ξ 和ψ 的值域范圍;ρmin為進(jìn)行極坐標(biāo)變換的最小半徑。

對數(shù)極坐標(biāo)變換的變換中心選取的是目標(biāo)的質(zhì)心。 該變換有2 個(gè)優(yōu)點(diǎn):①將目標(biāo)區(qū)域的尺度變化轉(zhuǎn)變?yōu)閷?shù)極坐標(biāo)中的上下平移;②目標(biāo)區(qū)域繞其變換中心的旋轉(zhuǎn)相當(dāng)于沿著ψ 軸平移。 針對優(yōu)點(diǎn)①例如,一目標(biāo)以變換中心放大m 倍,其變換公式為

根據(jù)式(4)可得,放大m 倍后,相當(dāng)于沿著ξ 軸平移一段距離。

為了能更好地識(shí)別目標(biāo),式(4)中引入了ρmin參數(shù),使其開始的位置始終固定,這樣放縮導(dǎo)致的平移為零。 此外,為了限定ξ 軸的范圍,需要引入?yún)?shù)ρmax,將ξ 軸的值域歸一化為[0,kξ],此時(shí)變換公式為

其中

式中:u,v 分別為輸入目標(biāo)圖像的長、寬。

由于笛卡爾坐標(biāo)系與對數(shù)極坐標(biāo)系并非一一對應(yīng)的關(guān)系,為獲得較好效果的對數(shù)極坐標(biāo)圖像,在變換過程中需要進(jìn)行線性插值,在此采用雙線性插值算法,變化前后的圖片如圖4所示。

圖4 對數(shù)極坐標(biāo)變換前后的圖像Fig.4 Images before and after log-polar coordinate transformation

獲得對數(shù)極坐標(biāo)圖像后,從對數(shù)極坐標(biāo)圖像中可以得到代表原始目標(biāo)特征的直方圖。 在對數(shù)極坐標(biāo)圖像中,ξ 為像素點(diǎn)到變換中心的距離,所以該圖像中同一行的所有像素到變換中心的距離相等。 對對數(shù)極坐標(biāo)圖像的每一行像素值為0 的像素點(diǎn)進(jìn)行統(tǒng)計(jì),就得到一個(gè)直方圖,該直方圖表示原始目標(biāo)圖像中距變換中心相同距離的像素點(diǎn)中像素值為0 的個(gè)數(shù)。 因?yàn)閷?shù)極坐標(biāo)圖像具有尺度與旋轉(zhuǎn)不變性,因此統(tǒng)計(jì)的直方圖也具有該特性。

因此,可以通過極坐標(biāo)直方圖識(shí)別從圖像中提取的路標(biāo),將其與標(biāo)準(zhǔn)路標(biāo)進(jìn)行比較。 直方圖距離的計(jì)算方法有很多種,如相關(guān)性比較、卡方距離、巴氏距離等。

在此,測試了不同計(jì)算直方圖距離的方法,比如L1范數(shù)和L2范數(shù)、卡方距離。 試驗(yàn)結(jié)果表明使用卡方距離會(huì)得到較好的結(jié)果,所以在系統(tǒng)中采用該方法來計(jì)算直方圖的距離。

卡方距離源于卡方檢驗(yàn),卡方檢驗(yàn)就是統(tǒng)計(jì)樣本的實(shí)際觀測值與理論推斷值之間的偏離程度,實(shí)際觀測值與理論推斷值之間的偏離程度就決定卡方值的大小,卡方值越大,越不符合;卡方值越小,偏差越小,越趨于符合。 卡方距離應(yīng)用于2 個(gè)柱狀圖,可以得到這些柱狀圖所有位置之間的差值的加權(quán)平均值,因此可以判斷出與目標(biāo)圖案最接近的圖案。 直方圖i 和j 卡方距離為

2 AGV 位姿計(jì)算

2.1 提取配對點(diǎn)

根據(jù)上述對數(shù)極坐標(biāo)變換算法識(shí)別路標(biāo)之后,定位到路標(biāo)再圖像中的位置。 在此選區(qū)的配對點(diǎn)是路標(biāo)的4 個(gè)頂點(diǎn),需要在圖像中準(zhǔn)確的定位到4 個(gè)頂點(diǎn)的位置。 在路標(biāo)的識(shí)別過程中已經(jīng)獲得路標(biāo)的輪廓,在該輪廓上需尋找路標(biāo)的4 個(gè)頂點(diǎn),利用路標(biāo)為正方形的特性,在圖像中都會(huì)是一個(gè)四邊形。具體方法如下:

首先,在從相機(jī)獲得圖像上的4 個(gè)頂點(diǎn)A(0,0)、B(u,0)、C(u,v)、D(0,v),其中u,v 分別為圖像的長和寬,原點(diǎn)位于圖像的左上角,依次計(jì)算出4 個(gè)直線方程:過A 點(diǎn)斜率為-1,過B 點(diǎn)斜率為1,過C 點(diǎn)斜率為-1,過D 點(diǎn)斜率為1。

已知4 個(gè)直線方程依次選取路標(biāo)輪廓上距離各個(gè)直線方程最近的點(diǎn),獲得4 個(gè)點(diǎn)的坐標(biāo),此時(shí)可以分為2 種情況討論:一是4 個(gè)點(diǎn)即路標(biāo)的4 個(gè)頂點(diǎn)坐標(biāo);二是4 個(gè)頂點(diǎn)不是路標(biāo)的4 個(gè)頂點(diǎn)。 判斷4 個(gè)點(diǎn)為路標(biāo)的4 個(gè)頂點(diǎn)的具體方法如下:

先計(jì)算上述4 個(gè)點(diǎn)組成四邊形的面積,與路標(biāo)輪廓計(jì)算出來的面積相比較。 若4 個(gè)點(diǎn)組成四邊形的面積與由路標(biāo)輪廓所圍區(qū)域面積之比約為1,則選出的4 個(gè)頂點(diǎn)即為路標(biāo)的4 個(gè)頂點(diǎn)。 如果選出的4 個(gè)頂點(diǎn)并非路標(biāo)的4 個(gè)頂點(diǎn),其組成四邊形的面積與由路標(biāo)輪廓所圍區(qū)域面積之比明顯小于1,則此時(shí)的4 個(gè)頂點(diǎn)不是路標(biāo)的4 個(gè)頂點(diǎn)。 一般情況以離外圍4 條直線最近的點(diǎn)為路標(biāo)頂點(diǎn),具體如圖5所示。

若出現(xiàn)第1 次取得的4 個(gè)頂點(diǎn)并非路標(biāo)的頂點(diǎn),則重新進(jìn)行選。 在圖像坐標(biāo)系下,求得圖像4 條邊的直線方程分別為x=0,y=0,x=u,y=v,計(jì)算路標(biāo)輪廓中與這4 條直線距離最近的點(diǎn),獲得的點(diǎn)即為路標(biāo)的4 個(gè)頂點(diǎn)。 此種情況選擇離圖像4 條邊最近的點(diǎn)為路標(biāo)的頂點(diǎn),如圖6所示。

圖5 離外圍四條直線最近的點(diǎn)作為路標(biāo)頂點(diǎn)Fig.5 Points closest to four peripheral lines serves as the signpost vertex

圖6 離圖像四條邊最近的點(diǎn)作為路標(biāo)頂點(diǎn)Fig.6 Points closest to four sides of the image serves as the signpost vertex

得到路標(biāo)的4 個(gè)頂點(diǎn)之后,4 個(gè)頂點(diǎn)在圖像坐標(biāo)系下的坐標(biāo)就確定了。 還需要一組世界坐標(biāo)系下的坐標(biāo)才能求解出AGV 的位姿。 為了使算法更加簡單,以路標(biāo)的中心為原點(diǎn)建立世界坐標(biāo)系,已知路標(biāo)的邊長,可以得出路標(biāo)的4 個(gè)頂點(diǎn)在世界坐標(biāo)系下的坐標(biāo)。 綜上,由所獲得4 對3D-2D 的匹配點(diǎn),可以求解出AGV 的位姿。

2.2 解算AGV 位姿

根據(jù)二維圖像坐標(biāo)系下的點(diǎn)與三維相機(jī)坐標(biāo)系下的點(diǎn)之間的對應(yīng)關(guān)系,求解位姿通常被稱之為PnP(Perspective-n-Point),求解PnP 問題的方法通常有P3P,直接線性變換,EPnP,UPnP,非線性優(yōu)化,等很多種。在此分別使用P3P,EPnP 和直接線性變換。對比發(fā)現(xiàn),使用EPnP 算法計(jì)算的位姿結(jié)果誤差最小,能夠?qū)崿F(xiàn)較好的精度要求,因此選擇EPnP 為位姿求解算法。

由于AGV 在結(jié)構(gòu)化的工廠環(huán)境中運(yùn)行,在平坦的地面上行進(jìn),設(shè)置相機(jī)坐標(biāo)系與以路標(biāo)中心為原點(diǎn)的世界坐標(biāo)系在同一個(gè)平面,通過EPnP 算法求解出相機(jī)的位姿之后,分解得到旋轉(zhuǎn)矩陣R 和平移矩陣t,綜上計(jì)算出相機(jī)與路標(biāo)中心的水平距離以及角度就完成了AGV 的定位。

3 試驗(yàn)結(jié)果與分析

路標(biāo)的設(shè)計(jì)與算法密切相關(guān),不能選擇其中之一進(jìn)行驗(yàn)證,需要將所設(shè)計(jì)的路標(biāo)與算法相結(jié)合進(jìn)行驗(yàn)證。 為了驗(yàn)證所提方法的準(zhǔn)確性,將路標(biāo)貼于墻上,并且調(diào)節(jié)相機(jī)光心與路標(biāo)中心置于同一水平面上。 試驗(yàn)設(shè)備如下:相機(jī)——普通攝像頭,1000萬像素,分辨率為1920×1080;試驗(yàn)平臺(tái)——Intel i5-4200u 處理器,8 GB 內(nèi)存(算法主要使用C++實(shí)現(xiàn),在VS 2015(Visual Studio)環(huán)境下編譯);人工路標(biāo)尺寸——試驗(yàn)所用路標(biāo)的大小為135 mm×135 mm;一些其他的固定測量設(shè)備。

試驗(yàn)中主要有路標(biāo)坐標(biāo)系、相機(jī)坐標(biāo)系、AGV坐標(biāo)系,各坐標(biāo)系之間的主要關(guān)系如圖7所示。

圖7 各坐標(biāo)系之間的關(guān)系Fig.7 Relationship between coordinate systems

在此重點(diǎn)關(guān)注距離誤差和角度誤差,在不同距離和不同角度下拍攝路標(biāo)(如圖8所示),獲取圖像,計(jì)算路標(biāo)與相機(jī)之間的相對位姿,計(jì)算出相對距離以及角度即可完成相機(jī)相對于路標(biāo)的定位。

圖8 在不同距離和不同角度下拍攝路標(biāo)Fig.8 Shoot road signs at different distances and angles

獲取到在不同距離下的誤差,以及不同角度下的數(shù)據(jù),主要是相機(jī)到路標(biāo)平面的距離及角度2 個(gè)數(shù)據(jù),每個(gè)位置采集5 張圖像,估計(jì)相機(jī)與路標(biāo)的相對位姿,計(jì)算得出距離誤差以及角度誤差的折線圖,結(jié)果如圖9所示。

圖9 人工路標(biāo)定位誤差Fig.9 Error of artificial road sign positioning

由試驗(yàn)結(jié)果可知,當(dāng)距離小于1 m 時(shí)誤差穩(wěn)定在一個(gè)較小的值,大于1 m 時(shí)誤差顯著增加,但是依舊屬于可接受范圍;總體的角度誤差在±1.5°以內(nèi)。因此該算法總體具有較好的準(zhǔn)確性與穩(wěn)定性。

4 結(jié)語

結(jié)構(gòu)化的工廠環(huán)境中,AGV 到達(dá)目標(biāo)點(diǎn)附近時(shí)在需要調(diào)整位姿后才能準(zhǔn)確???。針對這種情況,設(shè)計(jì)了一種簡單美觀人工路標(biāo),用于AGV 在工廠環(huán)境中的定位; 提出了一種快速有效的人工路標(biāo)識(shí)別算法,具有尺度不變性與旋轉(zhuǎn)不變性,識(shí)別準(zhǔn)確等特點(diǎn)。使用單目相機(jī)識(shí)別路標(biāo)后,定位路標(biāo)的位置取得4個(gè)頂點(diǎn)在圖像坐標(biāo)系中的坐標(biāo),利用已知世界坐標(biāo)系下的頂點(diǎn)坐標(biāo),使用EPnP 算法求解AGV 的位姿,為控制系統(tǒng)提供定位數(shù)據(jù)。試驗(yàn)結(jié)果表明,該算法能有效地識(shí)別圖像中的路標(biāo),并且準(zhǔn)確求解出AGV的位姿,能夠有效地實(shí)現(xiàn)AGV 的定位。 該算法對硬件要求低,系統(tǒng)簡單,因此具有很高的實(shí)用價(jià)值。

猜你喜歡
極坐標(biāo)路標(biāo)位姿
路標(biāo)
無人機(jī)動(dòng)平臺(tái)著陸慣性/視覺位姿歧義校正算法
巧用極坐標(biāo)解決圓錐曲線的一類定值問題
船舶清理機(jī)器人定位基準(zhǔn)位姿測量技術(shù)研究
一棵樹
路標(biāo)
優(yōu)化ORB 特征的視覺SLAM
基于單目視覺的工件位姿六自由度測量方法研究
二重積分的極坐標(biāo)計(jì)算法探討
生命路標(biāo)2