樊露
(廣西大學,廣西 南寧530004)
?
單目攝像頭精確測距技術及實現方法
樊露
(廣西大學,廣西 南寧530004)
摘要:利用手機攝像頭,通過改變攝像設備的焦距,對比兩幅不同焦距下圖片的模糊度,精確計算目標物體的距離,該方法同樣適用于立體物體的距離測距。該方法將被測區域的圖片量化為81個小圖片,對每個圖片采用邊沿提取模糊測距技術來計算距離大小。利用高斯融合算法將該81個子圖片的計算結果進行融合,最終得到被測立體物體到攝像頭的距離。
關鍵詞:散焦測距;單目視覺;邊緣提取;高斯融合算法
機器人視覺是指使機器人具有視覺感知功能的系統,是機器人系統組成的重要部分之一。機器人視覺[1-3]可以通過視覺傳感器獲取環境的二維圖像,并通過視覺處理器進行分析和解釋,進而轉換為符號,機器人據此辨識物體,并確定其位置。目前機器視覺行業已經進入高速發展的時期,機器視覺產品在下游行業,尤其是工業控制領域實現了廣泛的應用,機器視覺技術已逐步走向成熟。目前機器視覺技術主要用于產品質量檢測、分類、機器人定位、包裝等,一方面替代人工視覺,另一方面用于提高生產的柔性和自動化程度。在大批量工業生產中,用機器視覺檢測方法可以大大提高生產效率,減少人工風險。比如在藥品生產中,采用機器視覺產品不僅可以提高藥品質量檢測的準確度和生產效率,還可以避免人眼長時間工作而造成的視覺疲勞。另外,將機器視覺應用于機器人的引導中,可以實現生產的柔性化,使生產線很容易適應產品的變化,這成為未來發展趨勢之一。
如何精準的測量被測物體的距離,一直是機器人視覺技術的研究熱點,目前在測距算法方面大家都廣泛使用基于單目視覺系統的散焦測距的方法,該方法通過鏡頭不同參數下所拍攝的兩幅圖像就可以計算出物體到攝像頭的距離信息。本文將對目前廣泛應用的散焦測距算法提出改進,達到可以精準測距的效果。
目前的單目測距算法主要在Subbarao提出的散焦測距算法[4,5]發展而來的,該算法通過兩幅或者多幅照片,利用不同圖片的模糊程度來提取距離信息。Ens和Lawrence為了提高算法的精度提出了散焦測距矩陣迭代法[6]將一幅圖片數據信息考慮成另一幅圖片的數據信息與一個矩陣卷積的結果,該矩陣為兩幅圖片的擴散函數如公式(1),(2)所示。該方法在應用在立體物體的測距時采用動態參照技術(dynamic reference technique)并通過高斯卷積準模糊處理后,按照平面測距來處理,這種處理方法存在一定的誤差。

公式1中F(x,y)與F'(x,y)分別表示2幅圖片數據信息,G為兩幅圖片的擴散函數。
散焦三維測量直接利用物體深度、攝像鏡頭參數和圖像模糊度之間的關系來測量物體的深度。圖1是散焦物體測距的原理圖。由圖1可知物體表面發射的光通過半徑為D/2的孔徑光欄后,根據幾何光學的物像關系有:

其中:u是物體表面的物距,v是像距,f為焦距。
當像點和攝像平面不重合時,物點在攝像面上形成不是清晰的像點,而是與孔徑光欄形狀相同的模糊光斑,對一般的散焦測距系統,孔徑光欄具有圓對稱性,所以這個模糊光斑是一個圓形光斑,其光斑半徑R1、R2與光學系統的光學參數(透鏡孔徑D、攝像面距透鏡的距離s1、s2)及物點的物距u之間有如下關系:s1、s2為兩次攝像平面到攝像透鏡的距離,從公式(4),(5)知道,在已知系統的光學參數的情況下,只要測量出物體上某點模糊光斑的半徑,就能計算出該點的物距u.


圖1 散焦成像
圖像邊緣的對應為圖像中灰度發生急劇變化的區域邊界,它是圖像的基本特征,邊緣檢測[7-8]是采用一定的算法提取出圖像中物體與背景的交界線。人們通過相鄰點像素灰度分布的梯度來反應這一急劇變化。根據這一特點,前人提出了多種檢測算子,Robert算子、Sobel算子等。本文提出的改進算法利用水平和垂直兩個方向的Sobel算子提取圖像的邊沿。然后通過計算顯示屏的像素即可求解R1、R2.
Sobel算子包含兩組3×3的矩陣,分別為橫向及縱向,將之與圖像作平面卷積,即可分別得出橫向及縱向的亮度差分近似值。如果以F代表原始圖像,Gx及Gy分別代表經縱向及橫向邊緣檢測的圖像,則有

另外該改進算法將拍攝得到的2幅圖片分別量化為81個子圖片如圖2所示,針對每個子圖片分別采用Sobel算子提取圖像邊緣,計算每個子圖片的距離,通過公式(8)利用9階高斯算子將每個子圖片的計算結果融合在一起作為最終的測試結果,有利于提高計算精度。


圖2 量化過程
仿真實驗:本實驗選取的樣品為毛絨公仔,采用華為榮耀6進行拍攝,像素為1300萬像素,將毛絨公仔放置鏡頭前500 mm處,拍攝兩幅散焦程度不同的圖片如圖3所示。改變目標樣本到鏡頭的距離,每隔500 mm拍攝一組散焦程度不同的照片,采用本改進算法計算目標物體的距離,結果如表1所示。

圖3 散焦程度不同的圖片

表1 誤差比對表
根據實驗結果,可以得到計算值與實際值的對比曲線如圖4所示,以及被測物體在不同距離下計算出的距離誤差如圖5所示,根據該改進算法在2 m~3 m之間可以比較精致的計算出目標物體的距離,超過這個范圍后,計算誤差較大。

圖4 仿真曲線

圖5 誤差曲線
改進算法通過對圖片分解成81個子圖片,對每個子圖片采用邊沿提取模糊測距計算被測物體的距離,最后將這81個子圖片的結果進行高斯融合得到最終的測試結果,有利于提高測試精度。
參考文獻:
[1]楊延西,劉丁,辛菁,等.MOTOMAN-SV3XL機器人手眼視覺立體定位系統[J].計算機工程與應用.2003,(22):38-41.
[2]熊春山,黃心漢,王敏.手眼立體視覺的算法與實現[J].機器人,2001,(02):113-117.
[3]孫堯,張強,萬磊.基于自適應UKF算法的小型水下機器人導航系統[J].自動化學報,2011,(03):342-353.
[4]Subbarao,M.,Gurumoorthy,N.,Depth Recovery from Blurred Edges[R].CVPR88.1988:498-503.
[5]Subbarao M.,Parallel depth recovery by changing camera Parameters[R].Second International Conference on Computer Vision,Florida,USA,December,1988:149-155.
[6]Ens J.Lawrence P.,A matrix based method for determining depth from focus[R].Proc.of IEEE Conf.On Computer Vision and Pattern Recognition,June,1991:600-609.
[7]高梁,劉曉云,廖志武,等.一種基于多信息融合的模糊邊界檢測算法[J].儀器儀表學報,2011,(11):2506-2514.
[8]趙振兵,金思新,劉亞春.基于NSCT的航拍絕緣子圖像邊緣提取方法[J].儀器儀表學報,2012,(09):2045-2052.
Monocular Camera Precise Distance Measurement Technology Research and Implementation
FAN Lu
(Guangxi University,Nanning Guangxi 530004,China)
Abstract:This paper based on mobile phone camera,by changing the focal length of the camera device,compared to two picture under different focal length of ambiguity,the precise distance of target object,this method also could apply to the 3D object distance range.This method to quantify measured area of pictures as 81 small images,for each image edge extraction of fuzzy distance measuring technology is used to calculate the distance.Using Gaussian fusion algorithm to the 81 child image fusion,the calculated results of the resulting measured 3D objects to the distance of the camera.
Key words:range of defocusing;monocular vision;edge detection;gaussian fusion algorithm
中圖分類號:TP242
文獻標識碼:A
文章編號:1672-545X(2016)03-0185-03
收稿日期:2015-12-16
作者簡介:樊露(1984-),女,湖南邵陽人,工學碩士,工程師,研究方向:計算機應用,無線網絡協議。