黃百川,蔡栩沂,丁楚江,徐 涵
(武漢大學 信號處理研究室,武漢 430000)
實現三維場景中目標的尺寸測量的前提是獲得目標到達攝像頭的距離,即測距,而測距分為主動式測距和被動式測距.主動測距技術主要包括超聲波測距、雷達測距、激光測距等,此測距技術大都需要發射輔助設備.近年來,激光雷達傳感器因其全方位視角和高分辨率的優點而興起,越來越多的被應用于自動駕駛領域,但其技術壟斷,價格昂貴.
被動式測距中利用視覺信號測距,相對于激光、雷達和超聲波等傳感器,具有探測范圍寬、目標信息完整、價格相對便宜,而且更符合人的認知習慣等優勢[1].這其中主要包含雙目測距[2]和單目測距.雙目測距是基于雙目視差的原理,可實現高精度遠距離測距,特別適用于設備測距、航空目標測距[3].雙目測距需要用到常見的Tsai的兩步法和Zhang的平面法[4]來進行標定求得攝像機內外部參數進行精確的立體匹配[5],且對于一些特殊約束條件有很高的要求[6],故其成本高,計算量大,技術難度高.單目視覺測量是其他視覺測量方法的基礎[7],具有可用性更強,操作簡單和成本低等優點.在單目視覺方法中,一般采用標定信息獲取世界坐標系與圖像坐標系間的一一映射關系[4].相比于雙目測距,單目測距盡管需要先驗的場景信息和幾何約束條件,但仍具有硬件配置和算法更簡單的優勢.
目前國內外關于單目測距算法的研究大多數應用于車輛和船舶的檢測和測距,單目測距技術有被用來測量智能飛機運動姿態,測量物體高度,測量精密元器件[2],而應用于智能監控領域的很少.單目測距有基于圖像面積變化量的方法和利用針孔模型下的投射幾何關系計算的基于交比不變性方法[8,9];還有用深度傳感器來獲取場景的深度信息完成場景的三維重建的方法,Meng Ding等人利用深度傳感器完成了人體姿態的跟蹤[10];另一種常見的方法是將深度感知與模式識別相結合,并且有實驗使用自帶圖像處理算法的微飛行器驗證了該算法[11].而近來利用插值思想的三維距離函數測距方法經實驗證明簡單有效,但是其受制于限定的平面和特定的靜態固定場景,無法適用于變化多樣的應用場景,且存在誤差相對較大的數據結果[12].
圖1表示的是單攝像頭監控下的大范圍三維場景畫面.為了獲得在此大范圍場景下特定目標的大小尺寸,我們采取了簡單快速,方便有效的單目測量技術.利用三維距離函數模型來進行平面圖像對圖片中場景進行三維空間的重建.

圖1 單攝像頭下的監控場景
圖2表示了攝像頭成像的幾何關系.凸透鏡I為攝像頭的簡化模型,其中O是攝像頭的光心,OO′為攝像頭的光軸,點A,B是區域的兩個頂點,C是AB線上任意一點,A′,B′,C′分別是A,B,C三點的像,O′是光軸OO′與像平面的交點,O′是光心O的像.三維距離函數是利用攝像頭成像的幾何原理并采用梅涅勞斯定理,通過已知AO和BO的距離來求取CO的距離[12].

圖2 攝像頭成像幾何關系圖[12]
圖3表示了攝像頭成像的立體幾何關系.成像平面簡化為面A′B′C′D′,其中O為攝像頭的光心,OO′為與像平面A′B′C′D′垂直的攝像頭光軸,面ABCD是監控區域.其中,AB是區域的一條邊界線.在圖2中我們可以看出,在一個實際的投射面OAB(面OA′B′)上,三維距離函數的計算需要用到OO′[11],圖2中的OO′的物理意義應為圖3中攝像機光軸OO′在投射面上的投影.圖3中,OO″的值隨著監控區域投射面的位置變化而變化,本文選擇OO″作為軸線進行計算,從而提高了三維距離函數測量的精度.

圖3 攝像頭成像立體幾何關系圖
針對一般監控(單攝像頭俯拍角度)拍攝的畫面,我們需要對監控視圖進行三維立體建模.首先我們標記出視圖中地面區域,圖4中用多邊形ABCDEFGHI表示.

圖4 監控視野水平面圖
接下來對與地面垂直的建筑物進行標定,這里我們選取了AINM面作為實驗面,選取場景中的行人為實驗目標,選取行人身高高度為尺寸測量參數.至此,監控視圖下的三維空間標記已經完成.
我們事先已知邊界角點到攝像頭的距離,并通過相鄰邊界角點來計算此邊界上任意一點到攝像頭的距離,進而利用邊界點求取邊界圍成的區域內任一點到攝像頭的距離.故運用改進的三維距離函數我們可以依次計算出ABCDEFGHI邊界上的任一點的距離,從而計算出ABCDEFGHI平面內任一點的距離[11].
通過三維場景建模我們求得圖4中ABCDEFGHI平面內任一點到攝像頭的距離,接下來求解圖5中垂直面AINM面內任一點到攝像頭的距離.在圖6中,我們構造垂直面成像幾何關系圖,其中O為攝像頭的光心,OO′為光軸在投射面上的投影,I′N′為垂直面,OA′為攝像頭到垂直面的距離,OD為攝像頭到水平面的距離為d.

圖5 監控視野垂直面圖

圖6 垂直面成像幾何關系圖
求解垂直面內任一點到攝像頭距離M′O過程如下:


其中M′I為垂直面內任一點到地面的垂直距離.至此三維空間視野內任一平面內點到攝像頭的距離即已知.
垂直面上任意兩點的距離:

至此,我們可以求得垂直面上任意兩點之間的距離,實現了垂直面上的尺寸測量.針對傳統三維距離函數模型中測量目標部分跳出監控區域地面的情況,本文在此基礎上進一步提出了水平垂直聯合檢測函數.
圖7中,AQ為地面,MA為與垂直面,O為攝像頭的光心,mn為待測目標.當地面上的目標部分超出了圖4中預設的ABCDEFGHI面時,我們將目標mn分為mp和np分別測量.mp部分利用傳統三維距離函數模型即可求[11].

圖7 水平垂直聯合檢測
np部分的求解:由垂直面測量部分已知|AN|,|mO|,|AO|,|NO|.

至此,我們實現了地面、垂直面的單獨尺寸測量和水平垂直聯合測量.
本實驗選取了在攝像頭監測區域的水平地面上均勻分布的8個點,光軸OO′距離分別取3.8 mm、4.0 mm、4.2 mm和4.4 mm,通過優化后的三維環境距離函數獲得八組距離值.表1表示了測量距離與實際距離的對比.

表1 目標距離測量表(單位:mm)
本實驗同樣選取了在攝像頭監測區域的地面上均勻分布的8個點,即為表1中測距時的8個點.光軸OO′距離也分別取3.8 mm、4.0 mm、4.2 mm和4.4 mm.表2表示了同一個人被測量的高度與實際高度的對比.

表2 目標身高測量表(單位:mm)
本實驗分別選取了在攝像頭監測區域圖4中AINM面上的目標門(位置1),黃牌(位置2),白牌(位置3),光軸OO′距離分別取3.8 mm、4.0 mm、4.2 mm和4.4 mm.通過垂直面測量函數分別獲取目標的尺寸.表3表示了垂直面上測量尺寸與實際尺寸的對比.

表3 垂直面尺寸測量表(單位:mm)
本實驗選取了在攝像頭監測區域內,目標同時出現在面AINM和面ABCI的情況,光軸OO′距離分別取3.8 mm、4.0 mm、4.2 mm和4.4 mm.因為通過4.1,4.2,4.3的實驗基礎,這里我們只選取了兩個位置.通過水平垂直聯合測量函數分別獲取目標的高度.表4表示了聯合檢測時測量高度與實際高度的對比.

表4 聯合高度測量表(單位:mm)
通過實驗數據,我們做出圖8至圖11,當光軸OO′距離分別取3.8 mm、4.0 mm、4.2 mm和4.4 mm時,測量數據與實際數據都存在一定誤差,本文采用(|測量值-真實值|)/真實值×100%計算相對誤差,平均相對誤差均采用算數平均計算.在目標距離測量中,平均相對誤差分別為1.0%,0.9%,0.9%,4.0%,整體誤差明顯有下降趨勢,故優化后的三維距離函數有效;在水平面高度測量中,平均相對誤差分別為6.3%,2.5%,2.0%,4,9%,光軸距離為4.2 mm時相對誤差較小;在垂直面尺寸檢測中,平均相對誤差分別為7.7% 5.0%,1.2%,2.3%,光軸距離為4.2 mm時較符合實際情況,因此,本文提出的垂直面測量函數有效;在聯合檢測中,平均相對誤差分別為7.4%,3.7%,0.4%,3.6%.
綜上,我們可以發現,當光軸OO′距離取4.2 mm時,四項實驗的平均相對誤差都較小.此時距離平均誤差為0.9%,相比于雙目攝像的測距系統不到3%[13]的平均誤差、基于小孔模型的單目測距中的未校正誤差2%-4%[6]和傳統三維距離函數模型下2.3%[12]的平均誤差都有了一定程度上的降低.而此時身高部分的三組實驗平均誤差分別為2.0%、1.2%、0.4%,與傳統三維距離函數模型下1.74%的平均誤差基本持平并有下降趨勢.

圖8 目標距離測量折線圖

圖9 水平面目標高度折線圖

圖10 垂直面尺寸測量折線圖

圖11 聯合檢測高度折線圖
本文提出一種三維場景建模的方法,修改了三維距離函數中光軸參數OO′的選擇過程,而且針對原有三維距離函數存在的空間局限性問題提出了擴大測量范圍的方法.經實驗數據分析證明,此方法簡單有效地實現了固定單攝像頭下三維場景的目標尺寸測量,擴大了測量范圍、提高了測量精度.
1周欣,黃席樾,黎昱.基于單目視覺的高速公路車道保持與距離測量.中國圖像圖形學報,2003,8(5):590-595.
2姜雨彤,楊進華,劉釗,等.雙目CCD測距系統的高精度標定.計算機工程,2013,39(7):228-232.
3李春艷,王立,盧欣,等.一種雙目立體視覺相機標定方法.空間控制技術與應用,2010,36(3):51-54.
4Zhang ZY.A flexible new technique for camera calibration.IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(11):1330-1334.[doi:10.1109/34.888718]
5Wahab MNA,Sivadev N,Sundaraj K.Development of monocular vision system for depth estimation in mobile robot-robot soccer.2011 IEEE Conference on Sustainable Utilization and Development in Engineering and Technology(STUDENT).Semenyih,Malaysia.2011.36-41.
6王士明.基于計算機視覺的車輛單目測距系統研究[碩士學位論文].天津:天津大學,2012.
7李強.單目視覺實時測距算法研究[碩士學位論文].哈爾濱:哈爾濱工業大學,2014.
8Wang SM,Fan YL.A vision location algorithm for CCD camera based on geometric knowledge.2nd International Conference on Environmental Science and Information Application Technology.Wuhan,China.2010.430-433.
9朱夢哲,馮瑞.基于三維模型的粒子濾波行人跟蹤算法.計算機系統應用,2016,25(11):112-117.[doi:10.15888/j.cnki.csa.005420]
10Ding M,Fan GL.Generalized sum of Gaussians for real-time human pose tracking from a single depth sensor.2015 IEEE Winter Conference on Applications of Computer Vision(WACV).Waikoloa,HI,USA.2015.47-54.
11Celik K,Chung SJ,Clausman M,et al.Monocular vision SLAM for indoor aerial vehicles.The 2009 IEEE/RSJ International Conference on Intelligent Robots and Systems.St.Louis,MO,USA.2009.1566-1573.
12錢娜.基于三維距離函數的視頻多目標檢測與跟蹤研究[碩士學位論文].濟南:濟南大學,2009.
13李千,尹業安.基于雙目攝像的測距系統及立體匹配算法研究.通信電源技術,2016,33(2):66-67.