基于arm處理器的單目視覺測距定位系統
鄒偉,喻俊志,徐德,譚民
(中國科學院自動化研究所,北京100190)
摘 要:針對在多機器人協作和服務機器人目標追蹤的過程中,需要對目標物體或者同伴進行準確的目標定位這個問題,設計了一個以arm9微處理器為處理模塊、cmos攝像頭為采集模塊的一個嵌入式視覺系統,實現了單目視覺測距定位。該系統設計大體分為目標識別和定位兩邵分,目標標識使用一個純色的色標塊,通過對攝像頭采集的圖像中檢測色標塊區域來實現目標物體定位;對色標塊的圖像分割采用基于rcb三個顏色分量的閡值分割算法,單目測距采用p4p方法,其中,攝像機的內參數標定則借助于matlab工具箱來完成。同時,采用ransac方法確定色標塊的四條邊界直線,以四條直線交點作為色標塊的4個角點,從而提高角點檢測的精度:實驗結果表明,該測距定位系統定位精度較高,系統魯棒性好,具有良好的應用前號。
關鍵詞:arm9處理器;單目視覺;視寬定位;嵌入式圖像處理
中圖分類號:tp 27 文獻標識碼ia
1引 言
視覺測量是嵌入式視覺系統的一個應用方面,視覺測量與控制在機器人領域應用廣泛。在視覺測量中,由充當機器人眼睛的攝像機采集到目標物體的二維圖像信息,然后送到處理器進行處理,以確定物體的位置和方位等信息。根據視覺系統使用的攝像機數目的不同,視覺系統可以分為單目、雙目和多目視覺系統。
單目視覺系統采用一臺攝像機對目標進行測量,本文采用的就是單目視覺系統。雙目視覺系統采用兩臺攝像機對目標進行測量,多目視覺系統采用多臺攝像機對目標進行測量。
本文在基于arm9的嵌入式平臺上實現了單目視覺測距功能,通過在目標物體上放置一個純色的色標塊(本文以粉紅色為例),讓攝像機對色標塊進行識別檢測定位,以達到對目標物體進行測距定位的目的。經實驗標明,該系統測量精確度高、魯棒性好。
2硬件結構設計
本視覺系統中,用一個cmos攝像頭作為圖像采集模塊進行圖像采集,選用基于arm9的s3 c2440a處理器作為嵌入式處理器運行視覺算法,用sdram和flash作為外部存儲器。
具體硬件構成如下:
①微處理器采用三星公司的s3 c2440,系統可以穩定運行在主頻405 mhz,主頻****可以達到530 mhz。
②64 m字節的sdram,由兩片k4s561632組成,工作在32位模式下。
③64 m字節的naivd flash,采用的是k9 f1208,可以兼容16m,32 m或128 m字節。
④攝像頭模塊:cmos攝像頭,內核芯片ov7620,30萬像素,幀速率30 fps:
⑤spi接口。
⑥串行eeprom: at24c02 4kbytes eeprom,iic接口。
其結構框圖,如圖l所示。
其中,cmos攝像頭是通過26針的接口連接到主板上的,將采集到的24位rgb信號傳送到存儲設備中。存儲設備sdram/flash通過內存控制器將數據發送到微處理進行處理,它有8個內存控制器接口。
3算法設計
該視覺系統的設計可以分為色標塊識別和攝像機標定測距兩個部分。色標塊識別所采用的算法有彩色圖像的閾值分割算法、邊緣提取算法和角點匹配算法,攝像機標定測距中的內參數標定借助于matlab工具箱來完成,測距采用pnp方法中的p4p方法,用色標塊的4個角點的已知信息進行攝像機外參數的標定,標定完攝像機外參數,就可以對目標物體進行精確定值。
1)色標塊識別算法
①彩色圖像閾值分割算法直方圖閾值法是灰度圖像廣泛使用的一種分割方法,它基于對灰度圖像這樣的一種假設:目標或背景內部的相鄰像素間的灰度值是相似的,但不同目標或背景上的像素灰度差異較大,其反映在直方圖上就是不同目標或背景對應不同的峰。彩色圖像閾值分割把直方圖閩值分割應用到不同的顏色空間,甚至可以直接應用于每個顏色分量上,其結果再 |