趙 松,盛海軍,王華強(qiáng)
1.安徽水利水電職業(yè)技術(shù)學(xué)院機(jī)電工程系,安徽合肥,231603 2.合肥工業(yè)大學(xué)電氣與自動化工程學(xué)院,安徽合肥,230009
基于單目視覺的實時測距算法
趙 松1,盛海軍1,王華強(qiáng)2
1.安徽水利水電職業(yè)技術(shù)學(xué)院機(jī)電工程系,安徽合肥,231603 2.合肥工業(yè)大學(xué)電氣與自動化工程學(xué)院,安徽合肥,230009
為了利用單目視覺實時測量室內(nèi)移動目標(biāo)與障礙物之間的距離,在比較了現(xiàn)有的幾類用于智能監(jiān)測的深度信息獲取方法的基礎(chǔ)上,提出了基于單目視覺的實時測距算法。首先根據(jù)小孔成像原理,得到成像點和目標(biāo)點的映射關(guān)系,建立針孔模型。然后通過成像點與目標(biāo)點的空間幾何關(guān)系,獲取圖像的深度信息。為了驗證單目視覺的實時測距算法的準(zhǔn)確性,將算法結(jié)果與實驗結(jié)果進(jìn)行了比較。實驗結(jié)果顯示,此算法可以滿足智能監(jiān)控的實時性要求。
單目視覺;深度信息;針孔模型;實時測距
隨著智能視頻的發(fā)展,通過視覺獲得運動目標(biāo)的位置信息已經(jīng)是智能視頻技術(shù)領(lǐng)域的一個熱點問題。因為視覺定位與其他定位方法相比,具有結(jié)構(gòu)簡單、獲得信息直觀、非接觸性等特點[1-3]。目前,視覺定位按視覺傳感器的數(shù)目分為兩類,即單目和多目。單目視覺定位是采用一個視覺傳感器應(yīng)用小孔成像原理來獲得運動目標(biāo)的深度信息,而多目視覺定位是采用多個視覺傳感器的立體匹配來獲得運動目標(biāo)的深度信息。在多目視覺中,特征點的立體匹配是難點,選擇什么準(zhǔn)則來限制搜索空間和自動去除不適合的匹配特征,對其應(yīng)用場合有一定的限制;而用單目視覺定位,則避免多目視覺中的立體匹配問題,并能提高實時性。
本文在目標(biāo)檢測和跟蹤基礎(chǔ)上提出一種基于單目視覺的運動目標(biāo)定位算法,即基于小孔成像模型,運用空間幾何關(guān)系得到像素坐標(biāo)系和世界坐標(biāo)系之間的轉(zhuǎn)換關(guān)系,較好地解決了傳統(tǒng)單目視覺定位方法根據(jù)目標(biāo)中特征信息來定位容易受遮擋和光照影響問題。
攝像機(jī)成像的原理是利用光電耦合傳感器將實際的模擬信號轉(zhuǎn)化為數(shù)字信號,每幅數(shù)字圖像由M×N個元素組成,每個元素表示一個像素,每個像素點值的大小表示圖像中該點的灰度或亮度與M×N個光電耦合單元上的電荷量相等。實際上就是將現(xiàn)實中三維空間的景象映射到二維空間的過程,可以采用四個坐標(biāo)系來表示這種映射關(guān)系[4-6],這四個坐標(biāo)系如圖1所示。
圖1 攝像機(jī)成像坐標(biāo)系
從圖1可以得到攝像機(jī)成像模型是線性的針孔模型,可以推導(dǎo)出從三維(世界坐標(biāo)系)到二維(像素坐標(biāo)系)的轉(zhuǎn)換公式:
(1)
其中,ax=f/dx,ay=f/dy。
攝像機(jī)所采集的圖像與理想模型(小孔成像模型)之間是有誤差的,表現(xiàn)為圖像中像素點的位置,一般將這種誤差稱作為圖像的非線性畸變,主要包括徑向畸變、薄透鏡畸變、偏心畸變?nèi)N。這是由于實際成像設(shè)備在制造和裝配過程中的缺陷以及透鏡本身折射形成的誤差等造成的。圖像中的非線性畸變是由這三種畸變的疊加,如下式:
(2)
(3)
其中,k1,k2,p1,p2,s1,s2是非線性畸變系數(shù),因為高階分量會造成求解的不穩(wěn)定,所以建模時不考慮,故在本文只考慮非線性畸變中的切向和徑向畸變。
運用公式(2)建立空間點從三維(世界坐標(biāo))到二維(像素坐標(biāo))的 轉(zhuǎn)換關(guān)系,攝像機(jī)的內(nèi)參數(shù)矩陣是由其自身決定的,而外部參數(shù)矩陣則由其位置和姿態(tài)決定。本文中使用的攝像頭是分辨率為704×576,焦距為8mm,成像尺寸為1/3,且?guī)в屑t外夜視功能。首先繪制一張5×8平面棋盤格,如圖2所示。
圖2 5×8平面棋盤格
攝像頭的畸變參數(shù):
k1=-0.2675,k2=-0.8467
p1=0.00312,p2=0.00782
攝像頭的內(nèi)參數(shù)矩陣M:
為了利用單目視覺實時監(jiān)測室內(nèi)移動目標(biāo)與障礙物之間的距離,在比較了現(xiàn)有的幾類用于智能監(jiān)測的深度信息獲取方法基礎(chǔ)上,提出了基于單目視覺的實時測距算法。根據(jù)小孔成像原理,得到成像點和目標(biāo)帶點的映射關(guān)系,建立線性模型,然后利用成像點與目標(biāo)點的幾何關(guān)系,對計算結(jié)果進(jìn)行畸變校正,獲取圖像的深度信息。實驗結(jié)果顯示,該算法具有較高的準(zhǔn)確性,滿足測距要求,且該算法計算量小,能滿足智能監(jiān)控的實時性要求。其針孔模型如圖3所示[7-8]。
圖3 針孔模型
圖3中,P是世界坐標(biāo)系平面上任意一點,Px是P點在世界坐標(biāo)系Xw軸上的投影,Py是P點在世界坐標(biāo)系Yw軸上的投影,其中:f=O1Oc為CCD攝像機(jī)的有效焦距;α為固定CCD攝像機(jī)的俯仰角度;H是為攝像頭光心Oc在世界坐標(biāo)系的投影點;h為實際測量取得的攝像頭光心Oc離地面的距離,等于OcH長度。
根據(jù)空間幾何關(guān)系得到任意一點P與攝像頭的水平距離HPy(即Dy)的計算公式:
Dy=h×tan(α+β)
(4)
其中,h和α待攝像頭固定后,可以直接測得;β是線段Pypy與光軸O1Ow相交形成的夾角∠O1Ocpy(或∠PyOcOw),所以在直角三角形ΔO1Ocpy中可得:
(5)
由于O1py=py,O1Oc=f,所以在直角三角形ΔO1Ocpy中可得:
(6)
聯(lián)立公式(4)(5)(6)可得:
(7)
同理:
Dx=h×tanγ/cosα
(8)
(9)
聯(lián)立公式(7)(9)可得:
(10)
其中,O1px=px。
由公式(2)可得,目標(biāo)點在像素坐標(biāo)系的坐標(biāo)轉(zhuǎn)換到成像平面坐標(biāo)系下的坐標(biāo):
(11)
聯(lián)立公式(13)(14)可得在線性模型下,攝像頭到地面上任意一點P的水平距離:
(12)
圖4 目標(biāo)點在像素坐標(biāo)中修正前后的坐標(biāo)
根據(jù)上述實驗結(jié)果可知,離光心越近的目標(biāo),其畸變越小,反之,目標(biāo)畸變越大。
本算法計算結(jié)果的精度受以下兩個因素影響:一是攝像頭的安裝高度h是否準(zhǔn)確,二是計算攝像頭安裝俯視角α是否精確。通過改變攝像頭的高度h,但保持?jǐn)z像頭的俯仰角α=64.9°和其他參數(shù)不變,得到因素一對距離計算結(jié)果精度的影響,如表1所示。
表1 隨高度變化的距離
然后改變攝像頭的俯仰角α,但保持?jǐn)z像頭的安裝高度h=19.1cm和其他參數(shù)不變,得到因素二對距離計算結(jié)果的影響,如表2所示。
表2 隨俯仰角度變化的距離
對上述實驗數(shù)據(jù)進(jìn)行分析,可以得到:當(dāng)攝像頭的高度變化范圍為8cm時,引起的距離變化為24cm;而當(dāng)攝像頭的俯仰角變化范圍為0.4°時,引起的距離變化為104cm。由此可見,攝像頭安裝高度對求解距離的精度影響較小,相比而言,攝像頭俯仰角對求解距離的精度起至關(guān)重要的作用,在很大程度上制約物體到攝像頭的距離求解的準(zhǔn)確性,所以對初始俯仰角α要進(jìn)行多次測量,取其平均值。
為了進(jìn)一步驗證該算法的精確度,對攝像頭采集到的一段動態(tài)視頻中移動目標(biāo)進(jìn)行定位,實驗參數(shù):攝像頭的高度h=28.2cm,俯仰角α=64.9°,H點與前方障礙物體距離依次遞增為90、105、140、150cm。攝像頭識別的障礙物(本實驗中障礙物為一個墨水瓶)圖像和測距結(jié)果如圖5和表3,圖中識別的目標(biāo)用矩形框標(biāo)出。
圖5 攝像頭識別、跟蹤的障礙物圖像
實際距離Dr/cm測量距離Dm/cm誤差/%9083.447.310599.844.9140143.032.2150159.756.5
實驗結(jié)果顯示,攝像頭與障礙物的距離在105~140cm范圍時,本文算法的測量誤差控制在5%范圍內(nèi);當(dāng)距離為90cm時,誤差稍大,為7.3%。因此,在實際距離為105~140cm范圍內(nèi),測量距離與實際距離差值不超過6cm,故本文提出的測距算法可以滿足利用機(jī)器視覺進(jìn)行障礙物的檢測和距離計算準(zhǔn)確性的要求。
通過對攝像頭在針孔模型下的坐標(biāo)轉(zhuǎn)換和實際坐標(biāo)畸變模型的研究,根據(jù)張正友標(biāo)定法對攝像頭的畸變參數(shù)進(jìn)行測量,然后,在對針孔模型性坐標(biāo)進(jìn)行畸變校正基礎(chǔ)上,提出了一種利用單目視覺系統(tǒng)獲得深度信息來進(jìn)行攝像頭和前方障礙物距離測量的算法。實驗表明,本文提出的算法能夠滿足對室內(nèi)移動目標(biāo)定位的準(zhǔn)確性和實時性要求。
[1]劉光宇,劉國棟.基于混合高斯模型的運動目標(biāo)檢測方法[J].計算機(jī)工程與應(yīng)用,2009,45(24):180-182
[2]郭磊,徐友春.基于單目視覺的實時測距方法研究[J].中國圖像圖形學(xué)報,2006,11(1):74-80
[3]田鵬輝,隋立春.靜止背景下運動目標(biāo)的檢測[J].測繪通報,2012(11):28-30
[4]孫邵海,劉懷.彩色序列圖像中移動目標(biāo)定位與區(qū)域提取[J].微計算機(jī)信息,2006,22(16):37-41
[5]趙天云,郭雷,張利川.基于單目視覺的空間定位算法[J].西北工業(yè)大學(xué)學(xué)報,2009,27(1):47-51
[6]曾素娣.基于單目視覺的測距算法研究[D].昆明:昆明理工大學(xué)信息工程與自動化學(xué)院,2007:1-56
[7]楊建榮,曲仕茹.基于單目視覺的障礙物檢測方法研究[J].計算機(jī)仿真,2009,26(2):278-281
[8]莊嚴(yán),王偉.移動機(jī)器人基于激光測距和單目視覺的室內(nèi)同時定位和地圖構(gòu)建[J].自動化學(xué)報,2005,31(6):925-933
(責(zé)任編輯:汪材印)
10.3969/j.issn.1673-2006.2016.08.000
2016-03-07
趙松(1984-),安徽懷遠(yuǎn)人,碩士,助教,主要研究方向:圖像處理。
TP277
A
1673-2006(2016)08-0114-04