安徽理工大學(xué)電氣與信息工程學(xué)院 潘慶甫 潘慶茹
雙目立體視覺(Binocular Stereo Vision)是機(jī)器視覺的一種重要形式,它是基于視差原理并利用成像設(shè)備從不同的位置獲取被測(cè)物體的兩幅圖像,通過計(jì)算圖像對(duì)應(yīng)點(diǎn)間的位置偏差,來獲取物體三維幾何信息的方法。本文對(duì)雙目立體視覺測(cè)距系統(tǒng)的軟硬件結(jié)構(gòu)對(duì)進(jìn)行介紹。
系統(tǒng)采用的硬件環(huán)境是ARM嵌入式平臺(tái),系統(tǒng)的硬件結(jié)構(gòu)包括三星公司推出的16/32位RISC微處理器S3C2440A,0.13um的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元,兩個(gè)CMOS的USB接口的東英網(wǎng)眼攝像頭webeyeV2000,一個(gè)STN液晶顯示屏。系統(tǒng)硬件結(jié)構(gòu)圖如圖1所示:
圖1 系統(tǒng)硬件結(jié)構(gòu)示意圖
系統(tǒng)的軟件結(jié)構(gòu)主要包括3個(gè)部分:嵌入式操作系統(tǒng)、硬件驅(qū)動(dòng)程序和應(yīng)用軟件。
Linux具備源碼開放、可移植、內(nèi)核可裁減等特性使其成為一種重要的嵌入式操作系統(tǒng)。
Linux內(nèi)核中帶有USB控制器OV51和Framebuffer設(shè)備的驅(qū)動(dòng)程序,可縮短開發(fā)周期,在編譯和裁剪內(nèi)核時(shí)加入這些內(nèi)核模塊,在燒寫內(nèi)核時(shí)用bin文件夾下的insmod命令進(jìn)行安裝。
為了實(shí)現(xiàn)特定功能,需要編寫有針對(duì)性的應(yīng)用程序。
攝像機(jī)從左右兩個(gè)不同的角度對(duì)同一個(gè)目標(biāo)物體進(jìn)行圖像的采集、圖像處理。
軟件流程框圖如圖2所示,主要包括以下幾個(gè)步驟:首先打開V4L設(shè)備和Framebuffer設(shè)備,利用ioctl函數(shù)來獲取設(shè)備信息并且采集圖像,獲得攝像頭采集的映射到內(nèi)存里的圖像數(shù)據(jù)的地址。進(jìn)而液晶屏上顯示兩個(gè)攝像頭在不同角度采集到的圖像。將采集到的兩幅圖像進(jìn)行處理,提取相應(yīng)的匹配點(diǎn)對(duì),最后代入公式計(jì)算出距離并在超級(jí)終端顯示。
圖2 軟件流程框架圖
我們已經(jīng)對(duì)雙目立體視覺測(cè)距系統(tǒng)的軟硬件結(jié)構(gòu)進(jìn)行介紹,實(shí)驗(yàn)的過程中我們選擇具有明顯特征的目標(biāo)物進(jìn)行測(cè)距,并且排除實(shí)驗(yàn)過程中出現(xiàn)的干擾,對(duì)于攝像機(jī)的標(biāo)定以及圖像的立體矯正均采用傳統(tǒng)方法,當(dāng)兩幅圖像的相應(yīng)匹配點(diǎn)對(duì)后,將匹配的結(jié)果所對(duì)應(yīng)的坐標(biāo)信息代入公式計(jì)算目標(biāo)物體與兩攝像頭之間的距離并最終在液晶屏上顯示。最后對(duì)數(shù)據(jù)的處理為過程為測(cè)多組數(shù)據(jù)取平均值的方法以減少測(cè)量誤差。測(cè)量結(jié)果如下表3所示,測(cè)量結(jié)果表明:測(cè)量的距離越遠(yuǎn),測(cè)量誤差就會(huì)越大。
表1 實(shí)驗(yàn)測(cè)距結(jié)果
引文
①田澤.ARM9嵌入式Linux開發(fā)實(shí)驗(yàn)與實(shí)踐[M].北京:北京航空航天大學(xué),2006.
②王鑫,陳曉竹,徐倩.USB接口的嵌入式圖像采集與顯示系統(tǒng)[J].中國(guó)計(jì)量學(xué)院學(xué)報(bào),2006(01):60-63.