張 悅,樓佩煌,錢(qián)曉明,武 星
(南京航空航天大學(xué) 機(jī)電學(xué)院,江蘇 南京 211100)
隨著工廠自動(dòng)化程度不斷提高,自動(dòng)導(dǎo)引叉車(chē)應(yīng)用越來(lái)越廣泛,采用的導(dǎo)引方式包括激光,磁帶,視覺(jué)等,其中視覺(jué)導(dǎo)引以其低成本、高可靠性受到廣泛研究與應(yīng)用[1]。視覺(jué)導(dǎo)引一般是由視覺(jué)系統(tǒng)通過(guò)識(shí)別環(huán)境中鋪設(shè)特殊標(biāo)識(shí)線和符號(hào)作為預(yù)定義路徑,并測(cè)量AGV相對(duì)導(dǎo)引路徑的位置偏差和角度偏差完成既定路徑導(dǎo)引任務(wù)[2]。
在計(jì)算機(jī)視覺(jué)系統(tǒng)中,主要有單目視覺(jué)相機(jī)和雙目相機(jī)。兩種方式均廣泛應(yīng)用于導(dǎo)引、測(cè)距以及障礙物檢測(cè)。單目的結(jié)構(gòu)簡(jiǎn)單,它避免了可視化數(shù)據(jù)混合,并且可以輕松實(shí)現(xiàn)實(shí)時(shí)監(jiān)控。我們可以通過(guò)攝像頭獲得目標(biāo)的位置和特征。單目保證不同坐標(biāo)系中的位置關(guān)系一致[3-5]。Gang Chen等人提出了一種整合卡爾曼的方法對(duì)視覺(jué)傳感器濾波,通過(guò)單目立體視覺(jué)系統(tǒng)校準(zhǔn)實(shí)現(xiàn)完整的線性成像,測(cè)量叉車(chē)與托盤(pán)距離[6]。
Jittima Varagul基于視覺(jué),結(jié)合神經(jīng)網(wǎng)絡(luò)的方式進(jìn)行障礙物檢測(cè)[7]。俄勒岡理工學(xué)院通過(guò)車(chē)本身攝像頭避障,通過(guò)安裝在天花板上的攝像頭確定位置[8]。視覺(jué)測(cè)量系統(tǒng)中,因?yàn)閿z像頭安裝方式不同,圖像傾斜畸變是一個(gè)不可忽視的問(wèn)題[9]。國(guó)內(nèi)外對(duì)于傾斜畸變進(jìn)行了多年研究,并提出了多種方法,汪貴平等提出了根據(jù)特征平行線進(jìn)行畸變校正,該方法提取視野圖像中包含的多條特征直線,利用直線對(duì)應(yīng)關(guān)系得到畸變參數(shù),并以這些參數(shù)反演迭代實(shí)現(xiàn)對(duì)透視畸變的校正[10]。楊麒等提出了基于直線投影特征的鏡頭畸變校正算法,根據(jù)直線三點(diǎn)投影關(guān)系,用遺傳算法得到最優(yōu)解[11]。以上兩種方法均動(dòng)態(tài)求解攝像機(jī)內(nèi)外參數(shù),無(wú)法避免因?yàn)橛?jì)算量復(fù)雜而帶來(lái)的實(shí)時(shí)性問(wèn)題。
為提高測(cè)量精度及實(shí)時(shí)性,喻俊等人采用靜態(tài)標(biāo)定攝像機(jī)內(nèi)參數(shù),動(dòng)態(tài)標(biāo)定外參數(shù)的系統(tǒng)標(biāo)定方法,該方法主要針對(duì)攝像頭垂直安放,先用張定有算法靜態(tài)標(biāo)定出攝像機(jī)內(nèi)參數(shù),然后在運(yùn)動(dòng)狀態(tài)對(duì)圖像進(jìn)行動(dòng)態(tài)標(biāo)定[12]。
本文重點(diǎn)解決攝像頭傾斜安裝畸變問(wèn)題,提出了一種基于透視原理,采用固定寬度色帶路徑,改進(jìn)Hong變換運(yùn)算求解邊界,得到透視點(diǎn),進(jìn)行實(shí)時(shí)、多場(chǎng)景自動(dòng)傾斜標(biāo)定的方法。它不僅可以精確測(cè)量路徑信息,車(chē)體到托盤(pán)及標(biāo)志點(diǎn)距離,而且可以動(dòng)態(tài)標(biāo)定,根據(jù)場(chǎng)景進(jìn)行自我標(biāo)定的特點(diǎn),同時(shí)具有運(yùn)算簡(jiǎn)單,可靠性高,有利于嵌入式應(yīng)用。
圖1 視野范圍水平線以上
圖2 視野范圍水平線以下
圖3 攝像機(jī)透視原理立體模型
本文應(yīng)用視覺(jué)導(dǎo)引模型如圖1、圖2和圖3所示,自動(dòng)導(dǎo)引叉車(chē)用舵輪驅(qū)動(dòng)和轉(zhuǎn)向,萬(wàn)向輪提高舵輪轉(zhuǎn)向的平穩(wěn)性,輔助輪在貨叉取貨時(shí)保持車(chē)體方向的穩(wěn)定性。本文所用CCD攝像機(jī)視角范圍在85度左右,當(dāng)攝像機(jī)傾角介于46.5度上下范圍時(shí),產(chǎn)生圖1、圖2兩種視覺(jué)導(dǎo)引模型。對(duì)于圖1模型,視野范圍在水平線以上,即理論上,攝像頭可拍攝到地面無(wú)窮遠(yuǎn),由透視原理,無(wú)窮遠(yuǎn)處所有直線匯聚到一點(diǎn),即為透視點(diǎn)。此時(shí)透視點(diǎn)在圖像坐標(biāo)系下坐標(biāo)為P(U0,V0)。對(duì)于圖2b模型,視野范圍在水平線以下,透視點(diǎn)不在攝像機(jī)廣角范圍內(nèi),但由攝像頭成像對(duì)應(yīng)關(guān)系,依然可以計(jì)算出虛擬透視點(diǎn)在圖像坐標(biāo)系下坐標(biāo)為P(U0,V0)。
與垂直安裝方式相比,攝像頭視野范圍較大,測(cè)量反饋信息較多,但也面臨著傾斜畸變,光源復(fù)雜,路徑及標(biāo)志信息提取困難等諸多問(wèn)題。本文提出的視覺(jué)模型及預(yù)期效果如圖4所示,圖5是路徑在攝像機(jī)坐標(biāo)系下的圖像模型,圖4是二維地面坐標(biāo)系圖像,在對(duì)圖像進(jìn)行傾斜畸變校正處理后,以期在視野范圍內(nèi),能實(shí)現(xiàn)實(shí)時(shí)標(biāo)定并精準(zhǔn)反映出色帶寬度,車(chē)體色帶傾斜角度,車(chē)體標(biāo)志點(diǎn)距離,車(chē)體托盤(pán)距離等。
圖4 原始圖像
為提高識(shí)別精度,同時(shí)提高識(shí)別準(zhǔn)確率和識(shí)別速率,本文首先在靜止?fàn)顟B(tài)下對(duì)攝像頭進(jìn)行畸變校正。鏡頭的非線性畸變有徑向畸變、離心畸變和薄棱鏡畸變等。光學(xué)鏡頭徑向曲率的變化是引起徑向變形的主要原因。在大多數(shù)情況下后兩者的畸變可以忽略不計(jì)。
視覺(jué)各坐標(biāo)系關(guān)系如圖6所示,Oc為攝像機(jī)坐標(biāo)系,Oi為圖像像素坐標(biāo)系,Ow為世界坐標(biāo)系,Od為實(shí)際圖像物理坐標(biāo)系,Ou為理想物理坐標(biāo)系。
圖5 校正后圖像
圖6 視覺(jué)各坐標(biāo)系關(guān)系圖
攝像機(jī)內(nèi)參數(shù)矩陣
帶入式(1),理想圖象坐標(biāo)系與世界坐標(biāo)系關(guān)系
其中s是縮放因子,R是旋轉(zhuǎn)矩陣,t為平移矩陣。采用張定有標(biāo)定法將圖7進(jìn)行標(biāo)定,結(jié)果如圖8所示。
圖7 圖像畸變示意圖
圖8 畸變校正示意圖
叉車(chē)采用單目CCD攝像機(jī)采集圖像,圖像格式為YCbCr格式,為提高運(yùn)算效率,本文只提取Cb分量,即提取藍(lán)色分量部分。處理器用Ti公司的DM642,導(dǎo)引路徑為藍(lán)色色帶,提取圖像藍(lán)色分量部分,用3X3線性中值濾波器進(jìn)行濾波處理,處理結(jié)果如圖9所示。
圖9 預(yù)處理圖像
邊緣檢測(cè)會(huì)受到周?chē)h(huán)境的影響,尤其是光照情況的改變。張穎提出一種基于光照色彩模型的自適應(yīng)圖像照度動(dòng)態(tài)分區(qū)方法,采用了分區(qū)域模型,本文將光照處理與路徑提取結(jié)合起來(lái)。
傳統(tǒng)的Sobel算子主要用于邊緣檢測(cè),分別為橫向及縱向模板。模板與圖像進(jìn)行卷積運(yùn)算,得到梯度近似值。何春華等提出了權(quán)值的自適應(yīng)算法,以此來(lái)增強(qiáng)圖像的抗噪能力[13],沈德海等增加了斜向兩個(gè)模板,進(jìn)行四個(gè)方向的提取[14],本文主要對(duì)于縱向邊界進(jìn)行提取,在橫縱模板進(jìn)行運(yùn)算的基礎(chǔ)上,加大縱向模板權(quán)重,減少甚至避免由于光照影響或周?chē)h(huán)境造成的非期望被提取直線。
水平橫向模板
水平縱向模板
圖像的每一個(gè)像素的梯度大小:
而后可用如下公式估算梯度方向大小。
本文通過(guò)G和P作為邊界選取條件,設(shè)定P為1,G優(yōu)選為15,處理結(jié)果如圖10所示,圖像中幾乎無(wú)干擾和錯(cuò)誤信息被提取。
圖10 改進(jìn)Sobel提取
在圖象XY坐標(biāo)系下,過(guò)點(diǎn)(x,y)的直線的方程為:
其中:p為斜率;q為截距
由此可知,在參數(shù)空間里面相交于同一個(gè)點(diǎn)的所有直線在圖像空間里面都有共線的點(diǎn)與之對(duì)應(yīng),這就是點(diǎn)-線的對(duì)偶性。
Hough變換根據(jù)點(diǎn)-線的對(duì)偶性把直線檢測(cè)問(wèn)題轉(zhuǎn)化為參數(shù)求解。
將式(7)進(jìn)行極坐標(biāo)方程轉(zhuǎn)換,如式(8)
霍爾夫變換通過(guò)建立參數(shù)(λ,θ)的二維數(shù)組累加器,改變滿足式(8)參數(shù)方程的目標(biāo)點(diǎn)對(duì)應(yīng)參數(shù)累加器數(shù)值,按累加器數(shù)值降序列出預(yù)定義數(shù)量的目標(biāo)直線參數(shù),完成直線檢測(cè)。
霍爾夫變換極值角度關(guān)系曲線如圖11所示,共線點(diǎn)的參數(shù)方程交于一點(diǎn),并在圖中由白色方塊標(biāo)注,其在圖像中直線對(duì)應(yīng)關(guān)系如圖12所示,圖12展示了改進(jìn)霍爾夫變換的直線檢測(cè)結(jié)果。
圖12 改進(jìn)霍爾夫直線檢測(cè)結(jié)果
改進(jìn)Hough變化得到了兩條及以上的直線,所有直線在無(wú)窮遠(yuǎn)出必相交于一點(diǎn),兩側(cè)垂直直線除外如圖12所示。求得所有直線交點(diǎn)P(U0,V0),即為圖像在地面上的透視點(diǎn)。兩條直線與圖象上底邊的交點(diǎn),即起始出發(fā)點(diǎn)記為A(U1,V1),B(U2,V2),圖像中路徑寬度像素count_L=V2-V1。
圖13 透視原理平面模型
圖14 透視原理側(cè)平面模型
由于攝像機(jī)特性,傾斜安裝時(shí),單位角度像素?cái)?shù)為線寬與攝像機(jī)視角之比,即單位角度內(nèi)圖像橫向或縱向的像素?cái)?shù)目相同。
基于透視點(diǎn)標(biāo)定原理圖像行坐標(biāo)為u,列坐標(biāo)為v。所有直線在無(wú)窮遠(yuǎn)處交于透視點(diǎn),即其在地面坐標(biāo)系上有相同的縱坐標(biāo),由此:
其中:xw-地面坐標(biāo)系x坐標(biāo);
yw-地面坐標(biāo)系y坐標(biāo);
w-圖像像素寬度;
h圖像像素長(zhǎng)度;
Wroad-色帶真實(shí)寬度;
Count_l-圖像中色帶最大寬度像素?cái)?shù);
L-攝像機(jī)安裝高度。
對(duì)于平面標(biāo)定完成以后,將標(biāo)定后參數(shù)應(yīng)用于圖像,為了更直觀的展現(xiàn)標(biāo)定結(jié)果,本文用插補(bǔ)計(jì)算方法,按照計(jì)算所得畸變參數(shù),對(duì)地面二位場(chǎng)景進(jìn)行校正還原,得到圖像如圖16所示。圖15是原始單一藍(lán)色分量提取圖像,圖16是標(biāo)定完成后的藍(lán)色單一分量圖像,對(duì)于圖像的中下窗口部分,垂直路徑信息被準(zhǔn)確清晰地反映出來(lái)。
圖15 原始圖像
圖16 標(biāo)定后的圖像
當(dāng)前檢測(cè)叉車(chē)到托盤(pán)距離的方法一般采用光學(xué)或聲學(xué)傳感器等,測(cè)量的成本較高,測(cè)量的精度也未能達(dá)到預(yù)期效果。本文采用視覺(jué)進(jìn)行距離測(cè)量,測(cè)量誤差兩米范圍內(nèi)在1mm以內(nèi),角度誤差1度以內(nèi)。圖17是測(cè)量前結(jié)果,圖18反映了視野中任意兩點(diǎn)距離測(cè)量結(jié)果。
圖19 是圖像選擇了10組10個(gè)等距標(biāo)志點(diǎn)進(jìn)行兩兩測(cè)距的誤差統(tǒng)計(jì),x軸表示每一組所選距離,y軸表示每組平均誤差。由圖可知,在本文標(biāo)定范圍內(nèi),測(cè)量誤差在2mm以內(nèi),圖20是圖像選擇了10組10個(gè)兩兩之間等角度斜線與色帶的角度誤差統(tǒng)計(jì),x軸表示每一組所選角度,y軸表示每組平均誤差。由圖可知,在本文標(biāo)定范圍內(nèi),測(cè)量誤差在1度以內(nèi)。
在相同地面高度與攝像機(jī)傾斜角度的情況下,選取不同的試驗(yàn)場(chǎng)景,包括多條色帶場(chǎng)景,光照干擾場(chǎng)景,傾斜色帶場(chǎng)景,混合色帶場(chǎng)景等多種情況,計(jì)算平面透視點(diǎn)縱坐標(biāo)偏差不超過(guò)5%,這種情況對(duì)于最終標(biāo)定結(jié)果幾乎沒(méi)有影響,圖21是多條色帶原始圖像,圖22是經(jīng)校正后的結(jié)果。
自動(dòng)搬運(yùn)車(chē)控制系統(tǒng)要求有較高的實(shí)時(shí)性,本文采用DM642高速處理器,間隔掃描方式,每10次數(shù)據(jù)處理完成指示燈閃爍一次,通過(guò)記錄特定時(shí)間內(nèi)指示燈閃爍次數(shù)來(lái)計(jì)算處理速度,表1是自動(dòng)搬運(yùn)車(chē)不同速度下所需最小平均處理時(shí)間,衡量標(biāo)準(zhǔn)是AGV不脫離路徑并能順利識(shí)別工位點(diǎn),停車(chē)精度在10mm以下,最終處理頻率在12Hz,完全達(dá)到導(dǎo)引要求。
圖19 等距誤差統(tǒng)計(jì)
圖20 傾斜誤差統(tǒng)計(jì)
表1 不同速度所需最小處理頻率
本文提出了一種可根據(jù)導(dǎo)引色帶進(jìn)行動(dòng)態(tài)標(biāo)定的方法,該方法對(duì)采集圖像濾波處理后,采用增大縱向模板權(quán)值的Sobel算子提取邊界,改進(jìn)霍夫變換查找邊線方程,計(jì)算圖像地面坐標(biāo)系下的透視交點(diǎn),進(jìn)行傾斜畸變校正。從實(shí)驗(yàn)結(jié)果分析,可以看出本文提出的方法測(cè)量精度高,可精確感知車(chē)體托盤(pán)距離,控制系統(tǒng)魯棒性、實(shí)時(shí)性較好,對(duì)提高單目視覺(jué)自動(dòng)導(dǎo)引叉車(chē)視覺(jué)導(dǎo)引精度,以及叉車(chē)對(duì)接托盤(pán)過(guò)程中實(shí)時(shí)測(cè)距具有實(shí)用價(jià)值。
圖21 多色帶原始圖像
圖22 校正處理圖像