基于計算機仿真的全景視覺鏡面設計
摘 要:文章用反射鏡面設計的理論知識和計算機仿真,為實現應用于中型組足球競賽機器人全景視覺系統的反射鏡面的快速有效的設計,自主開發了用于鏡面輪廓設計的仿真設計系統,并設計制造了滿足機器人任務要求的特殊曲線的反射鏡面。通過實踐表明基于知識和計算機仿真的現代設計方法大大提高了反射鏡面設計的質量和效率,能從整體上把握設計的合理性,避免設計出錯和產品返工,節省制造成本,并令設計結果滿足預計的任務需求。
本文引用地址:http://www.j9360.com/article/85679.htm引言
全景視覺系統是由一個朝上放置的攝像頭和一個反射鏡面組成,攝像頭通過反射鏡面獲得360度范圍的圖像。因其視野廣泛,足球競賽機器人通常采用全景視覺系統來獲取整個球場的信息。反射鏡面是影響全景視覺的圖像效果和觀察范圍的重要因素。美國哥倫比亞大學的Simon Baker和Shree K. Nayar等人專門對全景視覺系統的幾何特性進行了仔細的研究和分析,并提出了“單一視點(single viewpoint)”的問題[1]。符合單一視點的曲面,所有射向焦點的光線經過反射后都射向另外一個焦點或者平行于對稱軸,而不是散射開來。
研究表明,不同鏡面適用于不同的觀察需求。常用的曲面鏡面(如拋物面,錐面等)往往不能同時滿足執行特殊任務的機器人的多個觀察需求。于是有學者提出根據觀察需求或者假設的成像效果反推鏡面的曲面[2],以設計出滿足特殊任務需求的鏡面輪廓。本文的鏡面設計過程是根據反推算法求得曲面輪廓,并且建立相應的模型仿真預先觀察成像效果,與期望的成像進行比較,根據一定的評估和分析,優化參數,由計算機完成大量的計算過程和定量分析。這種設計方法可以高效地設計出性能好、成本低的鏡面。
1鏡面設計原理及成像仿真系統的開發
1.1 鏡面設計原理和方法
要預知經過鏡面反射之后的成像效果,就必須知道鏡面曲線和經過鏡面反射后的成像點(CCD上的成像單位)與現實空間點的映射關系。
圖1 鏡面成像原理
以小孔成像模型作為攝像頭的成像模型,因為鏡面是旋轉對稱的結構,只需研究二維的鏡面剖面曲線。如圖所示,根據光線反射定理和小孔成像法則,可以得到如下關系式:
上式中F(t)為曲線方程,具體的關系式推導可參考[4]。
若是未知鏡面曲線方程,而給定現實點與圖像點的對應關系,則需要反推鏡面輪廓線。逆向求取鏡面曲線的方法分為兩種:解析解[2]和數值解[3]。本文采用求數值解的算法,因為它計算復雜度小,利于編程實現。主要實現流程如圖2所示:
圖2 鏡面輪廓設計實現流程圖
1.2 成像仿真
為了使鏡面曲線設計更直觀,更方便調整參數,對鏡面成像效果進行仿真預覽可以使設計的應用更加友好,同時利于提高效率和設計質量,避免設計和預期的效果出現過大的出入,造成時間和成本的浪費。仿真系統以Matlab為開發平臺,因為Matlab具有強大的數學計算功能以及圖像處理庫,可以提供方便的函數調用,縮短仿真系統開發的時間。
根據上述得到的圖像和實際空間矢量的映射關系來進行成像圖形的仿真。首先需要獲取進行鏡面映像的環境,文中用于仿真的環境是足球機器人的比賽場地(包括場地上的白線,球門,門柱等)以及比賽用球。場地上的物體信息都是簡單的規則性幾何體,確定了全局坐標系之后,即可以得到各個物體的空間表達式,即它們的數學模型。假設以場地中央為全局坐標原點,根據右手法則,長度方向為x軸(指向黃球門),寬度方向為y軸,z軸垂直地面向上,則主要物體的數學模型如下(計算單位為mm):
球: (其中r=110)
黃球門: 藍球門
:
設機器人在場地中的位置為(dx,dy,θ)T,dx,dy為平面坐標位置,θ是機器人朝向角。物體數學模型(x,y,θ)T與以機器人視覺系統為原點的局部坐標下的表達式(x’,y’,z’)T存在以下關系:
因為鏡面為旋轉對稱鏡面,為簡化模擬成像的計算量,取θ=0。于是變換矩陣簡化為:
根據之前計算所得的像素與空間矢量(物體模型上的點必通過某一空間矢量)的關系式即可得到所設計的虛擬環境的成像效果圖。之后根據成像效果圖修改參數,并通過成像仿真快速達到所需要的效果,可得到最終的鏡面加工參數。
評論