本發(fā)明一種結合標定與校正的攝像機三維測量裝置、系統(tǒng)及方法屬于三維結構光測量領域。
背景技術:
結構光三維測量技術,需要從多角度采集標定模型數據,確定攝像機標定參數,完成攝像機的標定工作。為了達到多角度這一目的,需要不斷移動標定設備,由于每次移動都會存在測量誤差,而該誤差會隨移動次數的增加而累加,這就會影響標定參數計算的準確性,從而影響最終的測量精度。可見,如何降低測量次數,是避免誤差累計,提高測量精度的有效技術手段。然而,還沒有查閱到相關的技術手段。
技術實現要素:
針對上述問題,本發(fā)明公開了一種結合標定與校正的攝像機三維測量裝置、系統(tǒng)及方法,通過設定立方體標定物,充分利用立方體標定物的多個標定面,達到一次采集數據即能夠得到攝像機從多角度采集數據的效果,有效減少了測量次數,避免了誤差的累加;同時,結合了牛頓迭代的畸變矯正算法,進一步提高了標定參數計算值的穩(wěn)定性,最終達到了提高三維測量精度的目的。
本發(fā)明的內容是這樣實現的:
一種結合標定與校正的攝像機三維測量裝置,包括待測物體、設置在待測物體上方的立體標定模塊、用于對待測物體和立體標定模塊同時成像的攝像機和用于接收攝像機圖像數據的pc機;所述立體標定模塊為正六面體,每個面均為10×10的白色和彩色相間的方格矩陣,六個面中的彩色顏色各異;所述攝像機能夠同時拍攝到立體標定模塊的三個面。
一種結合標定與校正的攝像機三維測量裝置,包括待測物體、設置在待測物體上方的立體標定模塊、用于對待測物體和立體標定模塊同時成像的攝像機和用于接收攝像機圖像數據的pc機;所述立體標定模塊為正六面體,每個面具有10×10的方格,所述方格中,有1×3的區(qū)域采用異色圖案排列組合的形式,其它區(qū)域采用異色圖案相間的方格矩陣;所述攝像機能夠同時拍攝到立體標定模塊的三個面。
一種結合標定與校正的攝像機三維測量系統(tǒng),包括標定模塊和校正模塊;
所述標定模塊用于計算攝像機的內參數和外參數,包括:
信息獲取單元:用于獲取立體標定模塊上的標定點世界坐標值(xw,yw,zw);攝像機對立體標定模塊拍攝圖像,將圖像數據傳遞給pc機,所述pc機用于獲得立體標定模塊圖像中三個面的標定點圖像像素坐標測量值(u',v');
參數計算單元:用于計算攝像機的內參數和外參數;利用信息獲取單元計算得到的標定點坐標來計算攝像機的內參數和外參數;
所述校正模塊用于計算畸變系數,校正畸變,得到測量值,包括:
信息整合單元:用于確定畸變校正系數的種類和數量;將標定模塊中得到的內參數和外參數代入到畸變校正算法模型中,確定畸變校正系數的種類和數量;
參數計算單元:用于計算畸變校正系數;根據信息整合單元得到的畸變校正系數的種類和數量,利用畸變校正算法計算畸變校正系數;
實體測量單元:用于校正實物圖像;將參數計算單元得到的畸變校正系數代入到牛頓迭代畸變校正法,并對事物圖像進行畸變校正,得到最終圖像。
上述結合標定與校正的攝像機三維測量系統(tǒng),參數計算單元中采用的畸變校正算法,如下:
步驟a、建立圖像像素坐標理論值(u,v)、圖像像素坐標測量值(u',v')、圖像像素坐標系原點坐標值(u0,v0)、圖像物理坐標值(x,y)、畸變系數k1和畸變系數k2之間的關系方程:
步驟b、在攝像機拍攝到立體標定模塊的3個面中,每個平面取n個像素標定角點,第i個像素標定角點的圖像像素坐標理論值為(ui,vi),圖像像素坐標測量值為(ui',vi'),對于立體標定模塊的第i個面的第j個像素標定角點,方程組為:
令:
有:dk=d
按照k=(dtd)-1dtd,求解k中的畸變系數k1和畸變系數k2。
一種在以上結合標定與校正的攝像機三維測量裝置上實現的結合標定與校正的攝像機三維測量方法,包括以下步驟:
步驟a、測量立體標定模塊六個側面上的標定點的世界坐標值(xwi,ywi,zwi),其中,i表示側面的標號;
步驟b、攝像機對立體標定模塊進行圖像采集,得到立體標定模塊六個側面上標定點的圖像像素坐標測量值(ui',vi')和圖像物理坐標值(x,y);
步驟c、總結歸納攝像機成像問題的硬件影響因素與環(huán)境影響因素,通過權系數法將其抽象為相關變量;為了規(guī)劃目標進行統(tǒng)一變量的操作,獲得變量間的約束關系,根據表達式間的轉化得到以攝像機參數為待求變量的非線性齊次方程;
步驟d、通過線性化和泰勒展開操作,將非線性其次方程變換為矩陣方程,并求解攝像機內參數;
步驟e、將步驟e所得的攝像機內參數解帶入到攝像機外參數的解析式中,求解攝像機外參數;
步驟f、計算畸變系數k1和k2;
步驟g、將畸變系數k1和k2帶入到牛頓迭代畸變矯正算法中,對圖像物理坐標值(xi,yi)進行畸變校正,得到修正后標定點的圖像物理坐標值(xe,ye);
步驟h、利用逼近算法衡量,標定點的實際圖像像素坐標校正值和圖像像素坐標理論值(ue',ve')之間逼近的程度,尋找牛頓迭代的畸變矯正算法的迭代次數,得到矯正后的圖像像素坐標(ue,ve)。
上述結合標定與校正的攝像機三維測量方法,所述步驟c具體為:
通過權系數法將攝像機成像問題的硬件影響因素抽象為變量,用攝像機內參數表示;
其中,α=f/a,β=f/b,f為攝像機焦距,像素點大小為a×b,單位為毫米,(u0,v0)為像素坐標系原點坐標;
通過權系數法將攝像機成像問題的環(huán)境影響因素抽象為變量,用攝像機外參數表示:
(r,t)=(r1,r2,r3,t)
其中,r=(r1,r2,r3)為三維正交單位旋轉矩陣,t為三維平移向量;
為了規(guī)劃目標,采取統(tǒng)一變量操作,并定義透視投影矩陣h,令:
h=λk(r,t)=λk(r1,r2,r3,t)=(h1,h2,h3)
其中,λ為比例系數,hi為透視投影矩陣第i列;
根據圖像像素坐標系與世界坐標系之間的關系,有如下公式:
將λk(r1,r2,t)展開,有
因為該計算過程在笛卡爾坐標系下,根據旋轉矩陣中r1和r2的相互正交性質,即
||r1||=||r2||=1
將r1和r2帶入上述兩個公式,得到變量間的約束關系式:
令:
由計算可知b為對稱矩陣,將其表示為六維向量b:
b=[b11,b12,b22,b13,b23,b33]t
設變量vij,得到
通過計算得到:
vij=[mi1mj1,mi1mj2+mi2mj1,mi2mj2,mi3mj1+mi1mj3,mi3mj2+mi2mj3,mi3mj3]t
其中,hi=[mi1,mi2,mi3]為透視投影矩陣h第i列的值;
再對約束關系式
上式為以攝像機參數為待求變量的非線性齊次方程。
上述結合標定與校正的攝像機三維測量方法,所述步驟d具體為:
將非線性齊次方程展開為
記為:
通過對其進行線性化和泰勒展開操作,并省略二階及二階以上導數得到:
x=[δf,δu0,δv0]
線性化之后的矩陣方程式即為:
ax-w=0
最后,將標定點的圖像像素坐標測量值(ui',vi')和世界坐標值(xwi,ywi,zwi)帶入方程中,求解攝像機內參數的值。
上述結合標定與校正的攝像機三維測量方法,所述步驟e具體為:將步驟d所得到攝像機內參數值,帶入下式:
解得攝像機的外參數值。
上述結合標定與校正的攝像機三維測量方法,所述步驟f具體為:
根據簡化后的鉛垂畸變模型,換算為由圖像像素坐標理論值(u,v)和圖像像素坐標測量值(ui',vi')所表示的畸變模型表達式為:
在攝像機拍攝到立體標定模塊的3個面中,每個平面取n個像素標定角點,第i個像素標定角點的圖像像素坐標理論值為(ui,vi),圖像像素坐標測量值為(ui',vi'),對于立體標定模塊的第i個面的第j個像素標定角點,方程組為:
令:
有:dk=d
利用線性最小二乘法對k'=(dtd)-1dtd求解,即可得到畸變系數k1和k2的值。
上述結合標定與校正的攝像機三維測量方法,所述步驟h具體為:
利用逼近算法計算校正值與原始估計值的差值(xe-x')(ye-y'),并對所述差值進行判斷,如果:
所述差值超出規(guī)定的誤差范圍,返回步驟g,繼續(xù)進行牛頓迭代;
所述差值在規(guī)定的誤差范圍內,結束牛頓迭代,確定迭代次數,最后得到的(xe,ye)即為畸變校正后的圖像物理坐標值,再將最后得到的(xe,ye)換算得到校正后的圖像像素坐標(ue,ve)。
有益效果:
在本發(fā)明三維測量裝置中,設置了立體標定模塊;在本發(fā)明三維測量系統(tǒng)和方法中,不僅利用立體標定模塊實現了一次采集數據即能夠得到攝像機從多角度采集數據的效果,有效減少了測量次數,避免了誤差的累加,而且結合了牛頓迭代的畸變矯正算法,進一步提高了標定參數計算值的穩(wěn)定性,最終達到了提高三維測量精度的目的。
附圖說明
圖1是本發(fā)明結合標定與校正的攝像機三維測量裝置的結構示意圖。
圖2是本發(fā)明結合標定與校正的攝像機三維測量系統(tǒng)的模塊示意圖。
圖3是本發(fā)明結合標定與校正的攝像機三維測量方法流程圖。
圖4是測試模板的示意圖。
圖中:1待測物體、2立體標定模塊、3攝像機、4pc機。
具體實施方式
下面結合附圖對本發(fā)明具體實施方式進行進一步詳細描述。
具體實施例一
本實施例是結合標定與校正的攝像機三維測量裝置實施例。
本實施例的結合標定與校正的攝像機三維測量裝置,結構示意圖如圖1所示,該裝置包括待測物體1、設置在待測物體1上方的立體標定模塊2、用于對待測物體1和立體標定模塊2同時成像的攝像機3和用于接收攝像機3圖像數據的pc機4;所述立體標定模塊2為正六面體,每個面均為10×10的白色和彩色相間的方格矩陣,六個面中的彩色顏色各異;所述攝像機3能夠同時拍攝到立體標定模塊2的三個面。
具體實施例二
本實施例是結合標定與校正的攝像機三維測量裝置實施例。
本實施例的結合標定與校正的攝像機三維測量裝置,結構示意圖如圖1所示,該裝置包括待測物體1、設置在待測物體1上方的立體標定模塊2、用于對待測物體1和立體標定模塊2同時成像的攝像機3和用于接收攝像機3圖像數據的pc機4;所述立體標定模塊2為正六面體,每個面具有10×10的方格,所述方格中,有1×3的區(qū)域采用異色圖案排列組合的形式,其它區(qū)域采用異色圖案相間的方格矩陣;所述攝像機3能夠同時拍攝到立體標定模塊2的三個面。
具體實施例三
本實施例是結合標定與校正的攝像機三維測量系統(tǒng)實施例。
本實施例的結合標定與校正的攝像機三維測量系統(tǒng),模塊示意圖如圖2所示,該系統(tǒng)包括標定模塊和校正模塊;
所述標定模塊用于計算攝像機3的內參數和外參數,包括:
信息獲取單元:用于獲取立體標定模塊2上的標定點世界坐標值(xw,yw,zw);攝像機3對立體標定模塊2拍攝圖像,將圖像數據傳遞給pc機4,所述pc機4用于獲得立體標定模塊2圖像中三個面的標定點圖像像素坐標測量值(u',v');
參數計算單元:用于計算攝像機3的內參數和外參數;利用信息獲取單元計算得到的標定點坐標來計算攝像機3的內參數和外參數;
所述校正模塊用于計算畸變系數,校正畸變,得到測量值,包括:
信息整合單元:用于確定畸變校正系數的種類和數量;將標定模塊中得到的內參數和外參數代入到畸變校正算法模型中,確定畸變校正系數的種類和數量;
參數計算單元:用于計算畸變校正系數;根據信息整合單元得到的畸變校正系數的種類和數量,利用畸變校正算法計算畸變校正系數;
實體測量單元:用于校正實物圖像;將參數計算單元得到的畸變校正系數代入到牛頓迭代畸變校正法,并對事物圖像進行畸變校正,得到最終圖像。
具體實施例四
本實施例是結合標定與校正的攝像機三維測量系統(tǒng)實施例。
本實施例的結合標定與校正的攝像機三維測量系統(tǒng),在具體實施例三的基礎上,進一步限定參數計算單元中采用的畸變校正算法,如下:
步驟a、建立圖像像素坐標理論值(u,v)、圖像像素坐標測量值(u',v')、圖像像素坐標系原點坐標值(u0,v0)、圖像物理坐標值(x,y)、畸變系數k1和畸變系數k2之間的關系方程:
步驟b、在攝像機3拍攝到立體標定模塊2的3個面中,每個平面取n個像素標定角點,第i個像素標定角點的圖像像素坐標理論值為(ui,vi),圖像像素坐標測量值為(ui',vi'),對于立體標定模塊2的第i個面的第j個像素標定角點,方程組為:
令:
有:dk=d
按照k=(dtd)-1dtd,求解k中的畸變系數k1和畸變系數k2。
具體實施例五
本實施例是結合標定與校正的攝像機三維測量方法實施例。
本實施例的結合標定與校正的攝像機三維測量方法,在具體實施例一或具體實施例二所述的結合標定與校正的攝像機三維測量裝置上實現。該結合標定與校正的攝像機三維測量方法,流程圖如圖3所示,該方法包括以下步驟:
步驟a、測量立體標定模塊2六個側面上的標定點的世界坐標值(xwi,ywi,zwi),其中,i表示側面的標號;
步驟b、攝像機3對立體標定模塊2進行圖像采集,得到立體標定模塊2六個側面上標定點的圖像像素坐標測量值(ui',vi')和圖像物理坐標值(x,y);
步驟c、總結歸納攝像機成像問題的硬件影響因素與環(huán)境影響因素,通過權系數法將其抽象為相關變量;為了規(guī)劃目標進行統(tǒng)一變量的操作,獲得變量間的約束關系,根據表達式間的轉化得到以攝像機參數為待求變量的非線性齊次方程;
步驟d、通過線性化和泰勒展開操作,將非線性其次方程變換為矩陣方程,并求解攝像機內參數;
步驟e、將步驟e所得的攝像機內參數解帶入到攝像機外參數的解析式中,求解攝像機外參數;
步驟f、計算畸變系數k1和k2;
步驟g、將畸變系數k1和k2帶入到牛頓迭代畸變矯正算法中,對圖像物理坐標值(xi,yi)進行畸變校正,得到修正后標定點的圖像物理坐標值(xe,ye);
步驟h、利用逼近算法衡量,標定點的實際圖像像素坐標校正值和圖像像素坐標理論值(ue',ve')之間逼近的程度,尋找牛頓迭代的畸變矯正算法的迭代次數,得到矯正后的圖像像素坐標(ue,ve)。
在以上步驟中,步驟c具體為:
通過權系數法將攝像機成像問題的硬件影響因素抽象為變量,用攝像機內參數表示;
其中,α=f/a,β=f/b,f為攝像機焦距,像素點大小為a×b,單位為毫米,(u0,v0)為像素坐標系原點坐標;
通過權系數法將攝像機成像問題的環(huán)境影響因素抽象為變量,用攝像機外參數表示:
(r,t)=(r1,r2,r3,t)
其中,r=(r1,r2,r3)為三維正交單位旋轉矩陣,t為三維平移向量;
為了規(guī)劃目標,采取統(tǒng)一變量操作,并定義透視投影矩陣h,令:
h=λk(r,t)=λk(r1,r2,r3,t)=(h1,h2,h3)
其中,λ為比例系數,hi為透視投影矩陣第i列;
根據圖像像素坐標系與世界坐標系之間的關系,有如下公式:
將λk(r1,r2,t)展開,有
因為該計算過程在笛卡爾坐標系下,根據旋轉矩陣中r1和r2的相互正交性質,即
||r1||=||r2||=1
將r1和r2帶入上述兩個公式,得到變量間的約束關系式:
令:
由計算可知b為對稱矩陣,將其表示為六維向量b:
b=[b11,b12,b22,b13,b23,b33]t
設變量vij,得到
通過計算得到:
vij=[mi1mj1,mi1mj2+mi2mj1,mi2mj2,mi3mj1+mi1mj3,mi3mj2+mi2mj3,mi3mj3]t
其中,hi=[mi1,mi2,mi3]為透視投影矩陣h第i列的值;
再對約束關系式
上式為以攝像機參數為待求變量的非線性齊次方程。
步驟d具體為:
將非線性齊次方程展開為
記為:
通過對其進行線性化和泰勒展開操作,并省略二階及二階以上導數得到:
x=[δf,δu0,δv0]
線性化之后的矩陣方程式即為:
ax-w=0
最后,將標定點的圖像像素坐標測量值(ui',vi')和世界坐標值(xwi,ywi,zwi)帶入方程中,求解攝像機內參數的值。
步驟e具體為:將步驟d所得到攝像機內參數值,帶入下式:
解得攝像機的外參數值。
步驟f具體為:
根據簡化后的鉛垂畸變模型,換算為由圖像像素坐標理論值(u,v)和圖像像素坐標測量值(ui',vi')所表示的畸變模型表達式為:
在攝像機3拍攝到立體標定模塊2的3個面中,每個平面取n個像素標定角點,第i個像素標定角點的圖像像素坐標理論值為(ui,vi),圖像像素坐標測量值為(ui',vi'),對于立體標定模塊2的第i個面的第j個像素標定角點,方程組為:
令:
有:dk=d
利用線性最小二乘法對k'=(dtd)-1dtd求解,即可得到畸變系數k1和k2的值。
步驟h具體為:
利用逼近算法計算校正值與原始估計值的差值(xe-x')(ye-y'),并對所述差值進行判斷,如果:
所述差值超出規(guī)定的誤差范圍,返回步驟g,繼續(xù)進行牛頓迭代;
所述差值在規(guī)定的誤差范圍內,結束牛頓迭代,確定迭代次數,最后得到的(xe,ye)即為畸變校正后的圖像物理坐標值,再將最后得到的(xe,ye)換算得到校正后的圖像像素坐標(ue,ve)。
具體實施例六
本實施例是驗證本發(fā)明有益效果的對比實驗實施例。
本實施例的結合標定與校正的攝像機三維測量方法,在具體實施例一或具體實施例二所述的結合標定與校正的攝像機三維測量裝置上實現a攝像機內參數計算值穩(wěn)定性對比實驗與b測量精度對比實驗。
實驗一、攝像機內參數計算值穩(wěn)定性對比實驗
為了驗證本發(fā)明提高了攝像機內參數解值的穩(wěn)定性,與張正友標定法進行了對比。分別采用兩種方法多次測量內參數,并計算內參數的方差,通過對比方差大小來對比兩種方法的穩(wěn)定性。方差計算結果如表1所示:
表1兩種標定方法的內參數方差
從表1中的數據可以看出,本發(fā)明方法得到的內參數的方差均小于張正友方法,這個結果表明利用本發(fā)明方法求解內參數具有更好的穩(wěn)定性。
實驗二、測量精度對比實驗
實驗一已經驗證了本發(fā)明方法具有更好的內參數穩(wěn)定性。為了說明結合牛頓迭代的畸變校正可以進一步提高最終的測量精度,將發(fā)明中的方法分別與另外兩種典型方法進行對比,這兩種方法分別是:1)只進行標定不進行校正的方法;2)同時結合標定和校正的張正友方法。在對比實驗中,通過獲取線段兩端點的世界坐標來計算線段長度,再利用得到的線段計算長度與實際長度之間的誤差來評價測量精度的高低。在上述思想的指導下,采用一張繪有6條長度分別為30、50、70、90、120和150mm線段的紙張作為測試模板,測試模板的示意圖如圖4所示。
首先采用分辨率為1280×1024的ueyecmos相機對測試模板進行成像,然后分別通過三種方法得到各線段的測量長度,計算結果如表2所示。
表2三種標定法得到的線段測量長度對比表
從表2中的誤差項可以看出,無論線段長度為多少,采用本發(fā)明方法得到的測量誤差均小于另外兩種方法,這個結果驗證了本發(fā)明達到了提高測量精度的目的。