摘要: 針對移動機器人的局部視覺定位問題進行了研究。首先通過移動機器人視覺定位與目標跟蹤系統(tǒng)求出目標質(zhì)心特征點的位置時間序列, 然后在分析二次成像法獲取目標深度信息的缺陷的基礎上, 提出了一種獲取目標的空間位置和運動信息的方法。該方法利用序列圖像和推廣卡爾曼濾波, 目標獲取采用了H IS 模型。在移動機器人滿足一定機動的條件下, 較精確地得到了目標的空間位置和運動信息。仿真結(jié)果驗證了該方法的有效性和可行性。
運動視覺研究的是如何從變化場景的一系列不同時刻的圖像中提取出有關場景中的目標的形狀、位置和運動信息, 將之應用于移動機器人的導航與定位。首先要估計出目標的空間位置和運動信息, 從而為移動機器人車體的導航與定位提供關鍵前提。
視覺信息的獲取主要是通過單視覺方式和多視覺方式。單視覺方式結(jié)構(gòu)簡單, 避免了視覺數(shù)據(jù)融合, 易于實現(xiàn)實時監(jiān)測。如果利用目標物體的幾何形狀模型, 在目標上取3 個以上的特征點也能夠獲取目標的位置等信息。此方法須保證該組特征點在不同坐標系下的位置關系一致, 而對于一般的雙目視覺系統(tǒng), 坐標的計算誤差往往會破壞這種關系。
采用在機器人上安裝車載攝像機這種局部視覺定位方式, 本文對移動機器人的運動視覺定位方法進行了研究。該方法的實現(xiàn)分為兩部分: 首先采用移動機器人視覺系統(tǒng)求出目標質(zhì)心特征點的位置時間序列, 從而將對被跟蹤目標的跟蹤轉(zhuǎn)化為對其質(zhì)心的跟蹤; 然后通過推廣卡爾曼濾波方法估計目標的空間位置和運動參數(shù)。
1 目標成像的幾何模型
移動機器人視覺系統(tǒng)的坐標關系如圖1 所示。
其中O-X Y Z 為世界坐標系; O c - X cY cZ c 為攝像機坐標系。其中O c 為攝像機的光心, X 軸、Y 軸分別與X c 軸、Y c 軸和圖像的x , y 軸平行, Z c 為攝像機的光軸, 它與圖像平面垂直。光軸與圖像平面的交點O 1 為圖像坐標系的原點。O cO 1 為攝像機的焦距f 。
圖1 移動機器人視覺系統(tǒng)的坐標關系
不考慮透鏡畸變, 則由透視投影成像模型為:
式中, Z′= [u, v ]T 為目標特征點P 在圖像坐標系的二維坐標值; (X , Y , Z ) 為P 點在世界坐標系的坐標; (X c0, Y c0, Z c0) 為攝像機的光心在世界坐標系的坐標; dx , dy 為攝像機的每一個像素分別在x 軸與y 軸方向采樣的量化因子; u0, v 0 分別為攝像機的圖像中心O 1 在x 軸與y 軸方向采樣時的位置偏移量。通過式(1) 即可實現(xiàn)點P 位置在圖像坐標系和世界坐標系的變換。
2 圖像目標識別與定位跟蹤
2.1 目標獲取
目標的獲取即在攝像機采集的圖像中搜索是否有特定目標, 并提取目標區(qū)域, 給出目標在圖像中的位置特征點。
由于機器人控制實時性的需要, 過于耗時的復雜算法是不適用的, 因此以顏色信息為目標特征實現(xiàn)目標的獲取。本文采用了HS I 模型, 3 個分量中,I 是受光照影響較大的分量。所以, 在用顏色特征識別目標時, 減少亮度特征I 的權(quán)值, 主要以H 和S 作為判定的主要特征, 從而可以提高顏色特征識別的魯棒性。
考慮到連通性, 本文利用捕獲圖像的像素及其八連通區(qū)域的平均HS 特征向量與目標像素的HS特征向量差的模是否滿足一定的閾值條件來判別像素的相似性; 同時采用中心連接區(qū)域增長法進行區(qū)域增長從而確定目標區(qū)域。圖2 給出了目標區(qū)域分割的算法流程。
圖2 目標區(qū)域分割算法流程
實現(xiàn)目標區(qū)域提取后, 由于目標有一定的大小和形狀, 為了對目標定位, 必須在圖像中選取目標上對應的點的圖像位置。由于目標的質(zhì)心點具有不隨平移、旋轉(zhuǎn)與比例的改變而變化的特點, 故選取目標的質(zhì)心點作為目標點。
質(zhì)心坐標計算公式如下:
式中:為質(zhì)心坐標; n 為目標區(qū)域占據(jù)的像素個數(shù), 且n≥2; (x i, y i) 為第i 個像素的坐標; p (x i, y i)為第i 個像素的灰度值。
2.2 目標跟蹤
運動目標的跟蹤是確定同一物體在不同幀中位置的過程, 當運動目標被正確檢測出來時, 它就對相鄰幀中檢測出的目標進行匹配。匹配過程如下:
2. 2. 1 目標質(zhì)心位置預測
目標位置預測是依據(jù)最小二平方預測原理由目標質(zhì)心在本幀以及相鄰的連續(xù)前幾幀的位置值,直接預測出目標質(zhì)心在下一幀的位置值。在等間隔觀測條件下, 可用式(4) 的簡便預測:
2. 2. 2 搜索聚類的種子點
在搜索與上一幀圖像對應質(zhì)心點匹配的點時,采用基于子塊的模式匹配方法。子模塊是由待匹配的點與周圍8 個鄰點組成。由于這種方法充分考慮了特征點的統(tǒng)計特性, 識別率大大提高。
首先從預測質(zhì)心點開始, 在100×100 像素的動態(tài)窗口(以預測質(zhì)心點為中心) 內(nèi), 按照逆時針搜索周圍8 鄰域象素的趨勢進行環(huán)狀搜索, 并分別計算由每個搜索象素決定的子塊與上一幀的目標質(zhì)心點T 決定的子塊的HS 特征值之差的平方和。
其中P [ i ] [ j ] ( i, j = 0, 1, 2) 表示由點P 決定的子塊中的各個像素; T [ i ] [ j ] ( i, j = 0, 1, 2) 表示由上一幀的質(zhì)心點決定的子塊中的各個像素。
最后, 判定某個點P 是否與上一幀的特征點T 匹配的標準為: P 須同時滿足式(7, 8)。
其中P. H表示待匹配點P 的H 特征值;m eanH 表示目標區(qū)域的平均H 特征值; 滿足式(8) 能夠保證匹配點在目標區(qū)域內(nèi)。
2. 2. 3 聚類色塊區(qū)域
其目的是找出色塊區(qū)域, 色塊區(qū)域的質(zhì)心點即為特征跟蹤結(jié)果。在步驟(2) 中已經(jīng)找到了聚類的起始點, 由于H 反映圖像的色彩特性, 所以根據(jù)匹配點的H 特征值是否在由色塊的平均H 特征值確定的某個范圍內(nèi)來聚類色塊區(qū)域, 即滿足式(8)。這樣既可保證識別精度, 又減少了圖像信息計算量。
3 二次成像法
設Z c1, Z c2分別表示在t1, t2 時刻目標與成像系統(tǒng)的距離(深度值) ; d 1′, d 2′分別表示t1, t2 時刻目標在圖像平面的幾何特征值, 為便于表示, d 1′, d 2′可以是目標的像的外接圓直徑或者外接矩形的邊長, 則有:
式(9) 表明: 根據(jù)同一目標、同一攝像機所攝物體的圖像幾何特征的變化, 可以計算出它們在空間深度方向運動時距離所發(fā)生的變化, 這就是二次成像法的原理。
分析式(9) 可知, 二次成像法能夠確定目標在攝像機坐標系中的位置, 但該方法在攝相機兩次成像的位置變化不大的情況下誤差會比較大, 而且不能得到目標的運動信息。為此本文提出了利用序列圖像和推廣卡爾曼濾波來估計目標的空間位置和運動信息的方法。
4 目標的空間位置和運動參數(shù)估計
由于圖像序列前后兩幀的時間間隔T 很小,本文用二階微分方程來描述P 點的運動軌跡。定義狀態(tài)矢量:
則可以定義狀態(tài)方程為:
其中:
V (k ) 為模型噪聲, 假設V (k ) 為零均值的高斯白噪聲, 其方差陣為Q (k ) = cov (V)。
將式(1) 離散化得:
其中n (k ) 為測量噪聲。假設n (k ) 為零均值的高斯白噪聲, 其方差陣為R (k ) = cov (n)。
則式(10, 11) 組成系統(tǒng)的離散狀態(tài)方程和測量方程, 當該系統(tǒng)滿足可觀測性條件:
時, 就可以應用推廣卡爾曼濾波對目標的空間位置和運動狀態(tài)進行估計。其中r ( t) , v ( t) 分別為目標相對于車體的位置和速度, 下標t 代表目標, i 代表成像系統(tǒng), a ( t) 為任意的標量。
5 實驗結(jié)果
利用微軟提供的V FW 視頻處理開發(fā)軟件包,由CCD 攝像機和相應的視頻采集卡獲取移動機器人前的場景圖像數(shù)據(jù), 在Delph i 6 下開發(fā)了移動機器人視覺定位與目標跟蹤系統(tǒng)的完整程序。本算法在CPU 主頻為500MHz, 內(nèi)存為256MB 環(huán)境下, 對幀速率為25 幀?s, 圖像分辨率為320×240的共180 幀視頻圖像進行了實驗, 最終實現(xiàn)了對運動目標快速、穩(wěn)定的跟蹤。圖3 給出了部分幀圖像的目標定位與跟蹤結(jié)果。
圖3 目標定位與跟蹤結(jié)果。
為了驗證本文提出的對目標的空間位置和運動參數(shù)估計算法的有效性, 利用獲取的目標質(zhì)心點的位置時間序列對目標運動狀態(tài)進行了跟蹤仿真實驗。
由于仿真的相似性, 本文只給出了推廣卡爾曼濾波在O Z 方向的仿真結(jié)果, 如圖4 所示。其中圖4(a, b) 分別是觀測噪聲方差為3 個像素時目標在Z軸方向的位置p 和運動速度v 的估計誤差曲線(150 次Mon te Carlo 運行)。其中目標的起始位置為(115, 1, 10)m , 速度為(110, 115, 215)m /s, 加速度為(0125, 011, 015)m /s2; 攝相機運動為實際中容易實現(xiàn)的且滿足機動的條件, 其初始位置為( 010, 015, 010) m , 初始速度為( 015, 0175, 110)m /s, 運動加速度為(0125, 0105, 015)m /s2.
圖4 推廣卡爾曼濾波Z 方向(深度)的仿真結(jié)果
由仿真結(jié)果可見, 隨著機器人車體的不斷機動和濾波次數(shù)的增加, 目標位置的估計值在20 幀左右就可收斂到理論真值, 而且抖動很小, 可滿足系統(tǒng)快速定位與跟蹤要求。
6 結(jié)束語
本文對移動機器人的局部視覺定位方法進行了深入研究。二次成像法要求攝像機第二次成像時的位置要有較大變化, 從而導致利用序列圖像所獲取的目標位置信息誤差較大。與之相比本文提出的定位方法可更精確地得到目標的空間位置和運動參數(shù)。這為移動機器人的路徑規(guī)劃、伺服跟蹤等提供了更可靠的依據(jù)。