目前,面陣CCD攝像機多為工業(yè)與保安監(jiān)控用機,而對其成像的幾何性能和量測精度都知之甚少。在利用面陣CCD攝像機進行實時檢測的系統(tǒng)中,CCD攝像機所產(chǎn)生的誤差是系統(tǒng)中的主要誤差。而這種誤差是在圖像輸入的過程中產(chǎn)生的,它影響系統(tǒng)的測量精度,因而是不可忽視的。所以很有必要對CCD攝像機所產(chǎn)生的誤差進行分析與檢校,以便對系統(tǒng)的精度進行評價。
CCD攝像機所產(chǎn)生的誤差主要由它的光學成像鏡頭,CCD器件本身的質量以及圖像采集裝置(含圖像采集卡等)共同產(chǎn)生。一般分為光學誤差、機械誤差和電學誤差。
光學誤差主要是指影響影像幾何精度的CCD攝像機的光學鏡頭所產(chǎn)生的鏡頭畸變差。它包括徑向畸變差和切向畸變差(鏡頭的這種誤差早在六、七十年代就已作過深入的研究,由于CCD攝像機鏡頭與普通照相機鏡頭沒什么差別,故其研究結果可以直接引用)。鏡頭的這種畸變差在影像上一般表現(xiàn)為中心小而周邊較大。
機械誤差主要是指CCD器件質量不好,即CCD機械加工安裝時造成的CCD面陣的幾何誤差。也就是說象元排列不規(guī)則而使影像產(chǎn)生的幾何誤差,它包括象素定位不準,行列不直及相互不垂直等誤差。此外還有CCD不同的象元對相同的光強信號轉換得到的灰度值有差異的象元敏感不均勻性誤差。隨著現(xiàn)代加工工藝水平的提高,這種誤差較其它誤差要小的多。因而一般不予考慮。
電學誤差主要是指CCD在光電信號轉換,電荷在勢阱中的傳遞以及A/D轉換時所產(chǎn)生的影像幾何誤差。它主要包括行同步誤差、場同步誤差和象素采樣誤差。主要原因是光電信號轉換不完全、信號傳遞后滯以及CCD驅動電路電壓及頻率不穩(wěn)等因素造成。
下面分別介紹CCD攝像機所產(chǎn)生的光學誤差、電學誤差及其誤差檢測與分析。
一、CCD攝像機的光學誤差
CCD攝像機的光學誤差即CCD攝像機鏡頭的畸變差。由于CCD攝像機的物鏡與普通攝影物鏡無異,而這部分誤差早在六、七十年代就已作過相當細致而深入的研究,其結果可直接應用。
對畸變差的改正,可采用二次多項式擬合法;儾钪械木性部分可用二維DLT(直接線性變換)算法改正。下面主要討論非線性誤差的改正。
一般非線性的物鏡畸變差可表示如下:
式中:x,y是象點的坐標儀坐標;
x0,y0是像主點在坐標儀坐標系中的坐標;
k1,k2,k3…是待定的對稱物鏡畸變系數(shù);
p1,,p2是待定的非對稱物鏡畸變系數(shù);
r是向徑,
如果考慮物鏡畸變差非線性部分,只要把△x,△y代入二維DLT基本關系式即可。這里取△x=k1(x-x0)2,△y=k1(y-y0)2。因此可得:
亦即是:
在有多余控制點的情況下,可以列出式的誤差方程和法方程式如下:
在解算出k1系數(shù)后,就可以對坐標進行改正,從而可以消除或減弱畸變的影響。
在上面求解k1系數(shù)的過程中,需要事先知道x0,y0的初值。初值的確定方法如下:用同一CCD攝像機對一平面攝像,讓CCD攝像機與平面近似平行。
先攝一張像片;保持攝像機與平面位置不動,換不同的焦距的鏡頭再攝一張像。這時由于兩次攝像時其它條件均相同,只是焦距不同,因此圖中1、2、3、4點在兩幅影像上的成像情況可表示。用高精度點檢測算法分別檢測出1、2、3、4點在兩幅影像上的位置1ˊ,2ˊ,3ˊ,4ˊ和1″,2″,3″,4″。分別求出過點1′,1〞的直線L1,過點2′,2〞的直線L2,過點3′,3″的直線L3,過點4′,4″的直線L4的方程。再分別求直線L1和L2,L2和L3,L3和L4,L4和L1的交點Ⅰ,Ⅱ,Ⅲ,Ⅳ。理論上,如果沒有任何誤差,這四點應該重合。因此求出這四點的坐標平均值x0,y0,即可認為是CCD攝像機的主點位置。
二、CCD攝像機的電學誤差
電學誤差即是指影像信號經(jīng)A/D轉換時產(chǎn)生的影像幾何誤差(即CCD信號轉換中的誤差)。它主要包括行同步誤差,場同步誤差和象素采樣誤差。
上述電學誤差統(tǒng)稱為行抖動誤差。這種行抖動誤差不僅影響象素的幾何位置,同時也影響象素的灰度值,即表現(xiàn)為象點灰度的畸變及象點的移位。在此誤差的影響下,若目標中一條理想的階躍邊緣,在CCD影像上即呈一種抖動狀。說的簡單點,具體表現(xiàn)在目標中的一條直線在CCD影像上即呈非規(guī)則的抖動狀。由此,只要檢測出直線的行抖動,即可考慮在擬合邊緣直線時校正,所以可提高系統(tǒng)的測量精度。
三、CCD攝像機的誤差檢測與校正
若使用較好的CCD器件質量及攝像鏡頭,則主要是考慮CCD攝像機的電學誤差了。因此這里主要是分析討論電學誤差即行抖動誤差的檢測與校正。
為了檢測出影像行抖動誤差的大小,我們采用了以下的方法。
1、在目標中放置兩根懸垂的黑色鋼尺,背景為白色,鋼尺邊緣可認為是理想的階躍邊緣。我們采用邊緣檢測算法--采樣矩陣匹配法(SampleMomentMatch.簡稱SMM法)進行邊緣檢測,可得較高的檢測精度。攝像時讓兩鋼尺基本位于影像的中部,相距較近。且鋼尺邊緣基本與影像行方面垂直,經(jīng)SMM法邊緣檢測后,利用SMM邊緣檢測算子,由各邊緣點分別擬合出兩條直線L1,L2,直線擬合后各邊緣點上的殘差,即可看作是行抖動誤差。殘差統(tǒng)計結果列于表1:
線編號L1L2
最大誤差0.2510.250
殘差中誤差0.0790.078
表1(單位:象元)
線編號L3L4
最大誤差0.2450.165
殘差中誤差0.0730.070
表2(單位:象元)
2、還是用兩根鋼尺作為目標,與上述方法唯一不同之處是攝像時讓一鋼尺位于影像左邊緣,另一鋼尺位于影像中部。經(jīng)邊緣檢測和直線擬合(L3,L4)后,殘差的統(tǒng)計結果列于表2:
通過測試結果分析可知:
1、行抖動誤差可以分為低頻和高頻兩部分。低頻部分主要是行同步誤差和鏡頭畸變差所致。高頻部分主要是場同步誤差所為,而象元采樣誤差則可認為是隨機誤差。行同步誤差與場同步誤差分別作用于每一行上,但對行上各象元的影響比較一致。而象素采樣誤差對每個象元的影響是隨機的。采用多行檢測的邊緣點進行平均,對其高頻噪聲有一定的抑制作用,因而采用橫跨多行的標志代替僅占一行或少數(shù)行的特征點進行定位,可以提高定位精度。
2、在整幅影象中,行抖動誤差的大小并不是一致的,因此糾正只能在局部范圍內進行。而越到邊緣,行抖動現(xiàn)象越明顯。如果只取奇數(shù)行或偶數(shù)行的邊緣點進行直線擬合,再求殘差,可以發(fā)現(xiàn)行抖動差的數(shù)值變小了,這是因為其中已不包括場同步誤差影響的緣故。
總之,行抖動誤差是比較復雜的,只能在局部范圍內進行糾正。影像邊緣的行抖動誤差大于影像中間的行抖動誤差。檢測結果表明,行抖動誤差在0.2~0.3個象元之間。此外,在檢測過程中,盡量采用橫跨多行的標志代替僅占一行或少數(shù)行的特征點進行定位,盡量讓目標成象于影像中央,都有助于提高系統(tǒng)的量測精度。