辛 睿, 武栓虎, 李愛娟
(煙臺大學 計算機與控制工程學院, 山東 煙臺 264005)
基于圓形模式的平面標靶是近十多年來普遍采用的標定工具,由于與棋盤模式平面標靶[1]相比對圖像質量要求較低[2],在工業上具有較好的應用價值,廣泛應用于三維重建、動態跟蹤、機器人制導等方面。
在圓模式平面標靶標定過程中,由于存在鏡頭畸變和透視偏差,圓會投影成一個橢圓[2]。橢圓可以通過圖像強度或其梯度進行估計,但是基于強度的方法[3]對包括光源、反射等非均勻照明非常敏感,而且算出的是準確的橢圓中心,不是真實的圓心投影。與之相比基于梯度的方法受不均勻照明的影響較小,但往往需要精確提取亞像素級橢圓輪廓邊緣點,再將橢圓參數擬合到獲得的點集[4-6]。由于該方法依賴于一組事先提取的輪廓點,輪廓點的異常值會直接影響后續結果。而且在低對比度圖像中,有時會遇到很難沿橢圓提取每一個輪廓點的情況,會嚴重影響橢圓中心的提取。
針對以上問題,本文在研究圓模式識別方法的基礎上,提出一種直接利用橢圓輪廓附近的梯度矢量場精確獲取對偶圓錐曲線的橢圓中心的定位方法。該方法直接從包含特征的區域中計算出的圖像梯度估算橢圓中心特征的位置,避免了亞像素精度的橢圓輪廓邊緣點的提取,簡化了橢圓參數獲取過程并可以進一步使用原始圖像數據來評估恢復的橢圓參數的不確定性。此外,通過模擬實驗和對比實驗評估該方法獲得橢圓中心的精度、對環境噪聲的抵抗性,證明該方法是可以用在相機標定應用中的高精度特征定位方法。
橢圓輪廓通常由二次曲線進行描述,在歐氏幾何中,二次曲線有3種主要類型:雙曲線、橢圓和拋物線。在經典理論中,這3類曲線是不同方向的平面截二次錐面相得到的曲線,也稱為圓錐曲線[7]。在非齊次坐標中,設p=[x,y]T為圓錐曲線上的點,則圓錐曲線方程為:
ax2+bxy+cy2+dx+ey+f=0,
(1)
其中,α=[a,b,c,d,e,f]T為圓錐曲線的系數,該方程可表示為矩陣形式,圓錐曲線系數矩陣為C:
pTCp=0,
(2)

(3)
設線l=[α,β,γ]T,由射影幾何中對偶原理,齊次點和線的基本結合方程是對稱的。則點圓錐曲線C有一個線圓錐曲線C*與之對應,稱為對偶圓錐曲線、也稱作圓錐曲線的包絡[7](如圖1所示),圓錐曲線C*的所有切線l均滿足:
lTC*l=0.
(4)
其中,對偶圓錐曲線系數矩陣C*為:
(5)

(a) 滿足pTCp=0的點p在一條點圓錐曲線上

(b) 滿足lTC*l=0的直線l是點圓錐曲線的切線
(b) The tangent setlof the point conic curve satisfieslTC*l=0
圖1 圓錐曲線與對偶圓錐曲線
Fig. 1 Conic curve vs dual conic curve
值得一提的是,設線l的極點為p0,則線l的極點可以由p0=C*l獲得。設無窮遠線l的極點為p,那么對偶圓錐曲線的中心ec=(uc,vc)T,就是對偶圓錐曲線無窮遠線的極點p。可以由p=C*l獲得[8],具體公式如下:
(6)
其中,ξ為比例系數,l∞為無窮遠線。由該公式可知,只要求得對偶圓錐曲線參數就可以直接獲得標志點中心坐標。對偶圓錐曲線參數的求取首先需要獲得一組切線方程,然后通過給定一組切線集合利用最小二乘法[9]進行對偶圓錐曲線參數的估計。接下來對切線方程組的獲取進行說明。
求取對偶圓錐曲線首先需要獲取切線方程組,切線方程組可以通過求取給定圖像的梯度獲得。實際上,特征邊緣的相鄰區域內的像素處的梯度提供了穿過像素中心的法線方向。根據法線和梯度的性質:法線方向垂直于切線方向,可以根據法線求得切線;梯度強的地方(特征邊緣)才存在切線,梯度為零的地方切線不存在。在法線不存在但切線存在時,設切線斜率為0,再根據具體像素點確定切線方程。
研究中,將篩選出包含橢圓特征的區域,從包含特征的區域中通過Scharr濾波器[10]的方式計算出圖像梯度。設點p=[x,y]T的梯度為G=[Gx,Gy]T,圖2(a)的符號表示一個3×3區域內圖像點的灰度。通過使用圖2(a)中的3×3模板以及圖2(b)、圖2(c)中的Scharr算子[10],以z5為中心的一個3×3鄰域對Gx和Gy的近似如下式所示:
Gx=(3z7+10z8+3z9)-(3z1+10z2+3z3),
(7)
Gy=(3z3+10z6+3z9)-(3z1+10z4+3z7),
(8)
通過Scharr濾波器可以快速得到橢圓輪廓附近的圖像梯度,也可以選擇其他濾波器進行圖像梯度的獲取。當p=[x,y]T的圖像梯度G=[Gx,Gy]T不為零時,可以定義通過像素中心的線的法線方向(法線方向垂直于切線方向),得到切線方程l:
l=λ[Gx,Gy,-GTp]T.
(9)
其中,λ為任意比例系數。通過求取橢圓輪廓附近所有的圖像梯度,可以獲得該橢圓圖像的切線集合。
通過求取的一組切線集合li,i為切線的下標,i≥5。對偶圓錐曲線參數可以通過最小二乘法[9]進行估計。設切線li=[xi,yi,ki],用公式(10)作為近似擬合函數,在對偶圓錐曲線中加入約束A=1,則:

圖2 Scharr濾波器濾波系數
(10)
(11)
(12)
可由方程(12)解得:
ω=[B*,C*,D*,E*,F*]T.
由于D*,E*,F*與D,E,F只相差一個比例系數A。對公式(9)結果不產生影響,可由公式(6)求得對偶圓錐曲線中心。
本文提出的基于對偶圓錐曲線的橢圓中心精確定位方法的具體步驟如下:
(1)對圖像進行預處理。灰度化,均值濾波,再對圖像進行二值化。
(2)通過1.2節方法提取二值圖像梯度圖像,篩選出包含橢圓特征的區域。
(3)利用梯度圖像上保留的輪廓法線信息通過1.2節方法獲得橢圓邊緣的切線集合。
(4)通過1.3節方法提取出每一幅圖片中的所有對偶圓錐曲線中心。
實驗的目的是要驗證,無需亞像素精度的標志點輪廓邊緣點的提取,通過本文提出的對偶圓錐曲線方法就可獲得較為精確的標靶圓心對應特征點。進行了模擬噪聲實驗,驗證該方法受環境噪聲影響較小。


圖3 實驗圖像
在本實驗中,為了檢測本文方法的準確性,在不添加任何噪聲的情況下,使用本文方法對200幅圖像進行橢圓真實中心的識別,并與真值橢圓中心進行比較算出橢圓中心的相對誤差。同時也對質心法,點心法進行了實驗對比,實驗結果見表1。由表1可知,本文方法取得了較為理想的效果。接下來,圖像被加性高斯噪聲污染,標準偏差從σn=2%,增加到圖像動態范圍的5%。對于每一個噪聲水平,在200個不同的單個橢圓圖像上評估橢圓位置的平均誤差。
表1 實驗結果對比
Tab. 1 Comparison of experimental resultspixel

實驗結果表明,在不添加任何噪聲的情況下,質心法和點心法直接獲得的是橢圓中心,而對偶圓錐曲線方法更接近于真實的中心投影。但是由于質心法在特征的所有像素上取平均值,因此具有很強的抗噪能力,而對偶圓錐曲線的方法隨著噪聲的增加,對梯度方向的估計變得不太精確,在σn=5%與點心法有了相似的精度,可以通過改進梯度值的估計來提高本文方法的精度。最后,表1證實了這3種方法精度都在0.1pixel左右,具有較高的精度和抗噪性能。
特征點精確估計是相機標定過程中非常重要的部分。圓模式平面標靶是一常用的相機標定工具,相對棋盤標靶,具有制造容易、特征點恢復受光照和噪聲的影響較小的特點。但由于環境噪聲和像素化的影響,直接利用提取的橢圓輪廓往往會產生一些誤差,從而降低了標定精度。本文提出了一種基于對偶圓錐曲線獲取標志點中心的標定方法,直接利用標志點邊界附近的原始梯度信息,避免了不精確邊緣點集的提取,在對抗噪聲方面具有一定優勢,并且直接應用最小二乘法計算對偶圓錐曲線中心,可以簡化獲取橢圓真實中心的步驟的同時避免了部分噪聲點的干擾,具有較好的應用價值。