翟溢章,宿潔華,張士恒,吳恩啟
(1.上海理工大學(xué) 機(jī)械工程學(xué)院,上海 200093;2.庫柏電子科技(上海)有限公司,上海 201201)
相機(jī)標(biāo)定在整個機(jī)器視覺系統(tǒng)中占有重要地位,在一些對機(jī)器視覺精度要求較高的測量系統(tǒng)中,如工件尺寸測量[1]及雙目視覺測距[2]等,標(biāo)定的精度對三維重建和視覺測量有很大的影響,因此,研究相機(jī)標(biāo)定精度的影響因素尤為重要。
影響相機(jī)標(biāo)定精度的因素分為內(nèi)部因素和外部因素,內(nèi)部因素主要是標(biāo)定算法和角點檢測算法[3],外部因素主要是標(biāo)定板平整性、標(biāo)定圖片數(shù)量、棋盤格尺寸、特征點數(shù)量、光照強度、標(biāo)定物距等[4]。關(guān)于標(biāo)定算法及其改進(jìn)方法有很多[5-9],在如今這些技術(shù)已經(jīng)日趨成熟的情況下有必要對外部因素進(jìn)行實驗分析。文獻(xiàn)[10]建立了雙目視覺系統(tǒng)誤差分析模型,分析了攝像機(jī)標(biāo)定精度、鏡頭參數(shù)及系統(tǒng)機(jī)構(gòu)參數(shù)對系統(tǒng)測量精度的影響。文獻(xiàn)[11]建立了結(jié)構(gòu)光視覺系統(tǒng)中結(jié)構(gòu)參數(shù)對測量精度的影響模型,得出測量物距對測量誤差的影響是線性的,攝像機(jī)焦距與測量誤差成反比的結(jié)論,上述文獻(xiàn)主要是從理論研究的方式來說明對誤差精度的影響,并沒有足夠的實驗來論證。文獻(xiàn)[12]提出并非黑白棋盤格尺寸越小,標(biāo)定結(jié)果越好,但其選取棋盤格尺寸數(shù)量太少且只進(jìn)行了3 組對比實驗。文獻(xiàn)[13]提出網(wǎng)格尺寸在6~14 mm 下進(jìn)行標(biāo)定的效果,相對來說值得參考,但其只是用仿真標(biāo)定的方法進(jìn)行分析,并沒有充足的實驗驗證。文獻(xiàn)[14]指出標(biāo)定圖片數(shù)量在4~10 張之間,可以有效減小標(biāo)定誤差,文獻(xiàn)[15]提出標(biāo)定圖片數(shù)量在12~20 張之間對標(biāo)定結(jié)果影響較小,文獻(xiàn)[16]指出照片數(shù)量達(dá)到18~22 張時,誤差值已經(jīng)幾近收斂。針對不同結(jié)果,文中以MATLAB 標(biāo)定工具箱[12]為基礎(chǔ),對標(biāo)定所需圖片數(shù)量及棋盤格尺寸大小再次進(jìn)行實驗研究,并對標(biāo)定棋盤格打印方式進(jìn)行實驗分析。實驗結(jié)論為減小標(biāo)定誤差提供了一些參考。
相機(jī)標(biāo)定是指建立相機(jī)圖像像素位置與景點位置的關(guān)系,其途徑是根據(jù)相機(jī)針孔模型,通過已知特征點的圖像坐標(biāo)和世界坐標(biāo)求解攝像機(jī)的模型參數(shù)。針孔模型共涉及4 個坐標(biāo)系(如圖1 所示):世界坐標(biāo)系Ow-XwYwZw由用戶自定義,用來描述環(huán)境中任何物體的位置;相機(jī)坐標(biāo)系Oc-XcYcZc,其坐標(biāo)原點Oc為攝像機(jī)的光心,Zc軸和光軸重合,Xc軸和Yc軸所在平面平行于圖像坐標(biāo)系平面;圖像坐標(biāo)系o-xy,坐標(biāo)原點在光軸與圖像平面的交點為o,x軸和y軸分別平行于相機(jī)坐標(biāo)系的Xc軸和Yc軸;圖像像素坐標(biāo)系o-uv,其中,(u,v)是計算機(jī)圖像坐標(biāo)系中,空間任意一點Pw的成像點P的實際圖像坐標(biāo),單位為像素。
圖1 小孔透視成像幾何模型
點Pw在世界坐標(biāo)系的坐標(biāo)(Xw,Yw,Zw)和對應(yīng)的相機(jī)坐標(biāo)(Xc,Yc,Zc) 可以通過旋轉(zhuǎn)矩陣R和平移矩陣T表示如下:
點P在相機(jī)坐標(biāo)系中的坐標(biāo)為(Xc,Yc,Zc),其對應(yīng)在圖像坐標(biāo)系中P′的坐標(biāo)為(x,y),兩者關(guān)系可由針孔相機(jī)模型得到:
其中,f為相機(jī)的焦距。點P′在圖像坐標(biāo)系中的坐標(biāo)為(x,y),其對應(yīng)在像素坐標(biāo)系中P″的坐標(biāo)為(u,v),兩者關(guān)系可表示為:
其中,dx、dy為單個像素在x和y方向的物理尺寸,單位為mm;(u0,v0)為圖像平面的中心像素坐標(biāo),根據(jù)式(1)~(3)可得針孔相機(jī)模型的數(shù)學(xué)表達(dá)式為:
其中,M1為相機(jī)的內(nèi)參矩陣,且只與相機(jī)內(nèi)部結(jié)構(gòu)有關(guān),M2為相機(jī)外參矩陣,由相機(jī)在世界坐標(biāo)系中的方位決定,確定內(nèi)參和外參系數(shù)的過程即為相機(jī)標(biāo)定。
不同棋盤格尺寸會產(chǎn)生不同的世界坐標(biāo)點(Xw,Yw,Zw),因此,鏡頭畸變所產(chǎn)生的距離測量誤差也將改變。以重投影誤差為精度指標(biāo),針對不同的棋盤格尺寸作相應(yīng)的對比實驗。
張正友標(biāo)定法指出,若要標(biāo)定相機(jī),至少需要兩個不同方向的圖片才能求出內(nèi)外參,共9 個參數(shù)[18],但標(biāo)定圖片數(shù)量過多,會造成累積誤差。以有效焦距和主點坐標(biāo)作為精度指標(biāo),對標(biāo)定圖片數(shù)量這一影響因子進(jìn)行對比實驗分析。
角點是棋盤格中一個非常重要的特征,它可以定義為圖像邊緣上曲率極大值的點或圖像灰度劇烈變化的點。角點的提取精度直接影響后續(xù)標(biāo)定及三維重建。不同的棋盤格打印方式會產(chǎn)生不一樣清晰度的棋盤角點,Harris 角點檢測算法[19-22]檢測出的角點坐標(biāo)必然會產(chǎn)生偏差,通過有效焦距、主點坐標(biāo)及重投影誤差來對比普通打印及彩印的標(biāo)定效果。
文中所用相機(jī)選用的是大恒圖像公司MER-500-7UM 型號的CMOS 工業(yè)相機(jī),分辨率為2 592×1 944,像元尺寸為2.2 μm×2.2 μm,鏡頭選用的是日本的kowa 8mm 光學(xué)鏡頭。實驗裝置如圖2 所示,將打印好的棋盤格圖像粘貼到亞克力板上,調(diào)整平板支架的位置,讓相機(jī)采集不同角度不同位姿下的圖片。
圖2 實驗裝置
在固定相機(jī)焦距為8 mm 的情況下,選擇行列規(guī)格為10×7 的黑白棋盤格,采用9 種不同尺寸的棋盤格標(biāo)定,尺寸分別為2 mm×2 mm、3 mm×3 mm、4 mm×4 mm、5 mm×5 mm、10 mm×10 mm、15 mm×15 mm、20 mm×20 mm、25 mm×25 mm、30 mm×30 mm。標(biāo)定過程中,用控制變量法來保證同一方向的棋盤格可用不同的尺寸拍攝,保證位姿相同,每組拍攝20 張標(biāo)定圖片,該過程中為避免偶然誤差,共進(jìn)行5 組實驗,得到的誤差統(tǒng)計如表1 所示。
表1 不同棋盤格尺寸的重投影誤差表
從表1 中可以看出,不是棋盤格尺寸越大,平均重投影誤差就越大,當(dāng)棋盤格尺寸小于5 mm 時,重投影誤差反而比5 mm 時還要大,此時主點坐標(biāo)和有效焦距與實際值也相差過大,不夠穩(wěn)定。當(dāng)棋盤格尺寸大于5 mm 時,隨著棋盤格尺寸的增大,其重投影誤差也隨之增大,一般重投影誤差在0.3 個像素內(nèi),可認(rèn)為標(biāo)定效果不錯,因此,棋盤格尺寸適宜選擇為10~15 mm。
針對不同文獻(xiàn)得出的不同結(jié)論,該實驗共進(jìn)行了兩組對比實驗,選擇了3 個標(biāo)定板并將它們命名為A 板、B 板、C 板,其行列規(guī)格分別是10×7、10×7、13×16,與之對應(yīng)的棋盤格尺寸為12 mm×12 mm、20 mm×20 mm、12 mm×12 mm,實驗過程中,將標(biāo)定板放在平板支架上(如圖3 所示),調(diào)整平板支架的角度和位姿,共采集30 張圖片,圖3 為同一角度同一位姿的不同標(biāo)定板圖像,各個標(biāo)定板圖像有效焦距、主點坐標(biāo)與圖像數(shù)量的關(guān)系如圖4 和圖5 所示。
圖3 同位置的A板、B板、C板圖像
從圖4 和圖5 中的曲線可以看出,B 板使得有效焦距趨于穩(wěn)定所需的標(biāo)定圖片數(shù)量最多,A 板其次,C 板最少;當(dāng)圖片數(shù)量達(dá)到8 張時主點橫坐標(biāo)和縱坐標(biāo)接近理想值,當(dāng)標(biāo)定圖片繼續(xù)增多后,結(jié)果趨于平穩(wěn)。綜上所述,結(jié)合前人所得出的結(jié)論,不同標(biāo)定板使得標(biāo)定結(jié)果趨于穩(wěn)定所需的標(biāo)定圖片數(shù)量不同,究其原因在于棋盤格角點數(shù)目和尺寸。當(dāng)棋盤格角點數(shù)目相同時,棋盤格尺寸越大,所需的標(biāo)定圖片數(shù)量越多;當(dāng)棋盤格尺寸相同時,角點數(shù)目越多,標(biāo)定所需的圖片數(shù)量就越少。
圖4 圖片數(shù)量與有效焦距的關(guān)系
圖5 圖片數(shù)量與主點坐標(biāo)的關(guān)系
分別用普通打印和彩印的方式打印棋盤格尺寸為15 mm 的10×7 標(biāo)定紙(如圖6 所示),將其粘貼到標(biāo)定板上,在固定相機(jī)焦距為8 mm 的情況下,分別從不同方向不同角度采集15 張圖片,對兩張標(biāo)定板分別進(jìn)行標(biāo)定,結(jié)果如表2 所示。
圖6 普通打印和彩印的標(biāo)定板對比圖
表2 棋盤格打印方式的相機(jī)參數(shù)對比結(jié)果
從表2 中可以看出,彩印出來的標(biāo)定棋盤格在有效焦距、主點坐標(biāo)以及重投影誤差方面都要比普通打印的精度要高,且與實際值的誤差維持在5 個像素內(nèi),波動較小,因此,在打印標(biāo)定紙時應(yīng)選擇彩印來提升角點的提取精度,提高標(biāo)定精度。
文中通過實驗分析了棋盤格尺寸、標(biāo)定圖片數(shù)量、棋盤格打印方式對相機(jī)標(biāo)定精度的影響。實驗結(jié)果表明,較小的棋盤格尺寸的重投影誤差較??;不同標(biāo)定板使得有效焦距趨于穩(wěn)定所需的標(biāo)定圖片數(shù)量不同,當(dāng)棋盤格角點數(shù)目相同時,棋盤格尺寸越大,所需的標(biāo)定圖片數(shù)量越多;當(dāng)棋盤格尺寸相同時,角點數(shù)目越多,標(biāo)定所需的圖片數(shù)量就越少;彩印出來的標(biāo)定棋盤格主點坐標(biāo)、有效焦距與實際值的誤差維持在5 個像素內(nèi),波動較小、精度較高。