本發明涉及雙目立體視覺,具體涉及一種僅利用單個特征點實現動態雙目立體視覺的標定方法及系統。
背景技術:
1、隨著工業相機和圖像處理技術的快速發展,立體視覺被廣泛應用于目標定位、測距和三維結構測量。動態雙目立體視覺(bsv)憑借相機的自由旋轉能力,可以擴大視覺測量范圍,從而實現對移動目標的跟蹤和定位。
2、旋轉相機是動態雙目立體視覺的重要組成部分,僅在水平方向和垂直方向上的旋轉可用于調整視場(fov)。旋轉相機的標定對于準確定位移動目標至關重要。相機標定方法主要包括傳統標定方法和自標定方法;傳統方法必須利用已知控制點的三維坐標和圖像平面上相應的像素坐標,雖然精度高,但需要大量的控制點,而且必須確保在fov范圍內,這在動態bsv的公共fov頻繁變化的情況下并不可取;自標定方法的魯棒性不如傳統方法,但適用于旋轉相機的標定。然而,特征點的誤匹配會導致標定結果偏離真實值,如果需要高精度的結果,就必須采用穩健的算法和長期計算。為了解決特征點誤匹配的問題,現有技術提出基于結構光或不同類型目標的自標定方法,但這些標定算法一般都比較耗時。因此,需要研究一種既能快速完成旋轉相機在線標定,又能同時確保精度的方法。
技術實現思路
1、本發明目的在于提供一種僅利用單個特征點實現動態雙目立體視覺的標定方法及系統,提出利用單個未知尺寸的矩形特征中心點實現動態bsv外參的在線標定,避免使用具有特定尺寸的高精度標定物體,成本低,適合在不要求極高精度的情況下進行動態bsv外參的在線標定。
2、為達成上述目的,本發明提出如下技術方案:
3、第一方面,提出一種僅利用單個特征點實現動態雙目立體視覺的標定方法,包括如下步驟:
4、搭建非變焦動態bsv模型,預先采用張氏方法確定所述bsv模型中左、右相機的內參和初始相對位置,任一所述相機在位置固定的條件下具有水平和垂直旋轉的自由度;
5、采用姿態角測量儀器實時獲取所述bsv模型中左、右相機的旋轉角度的近似值,所述旋轉角度包括相機在垂直方向的俯仰角和在水平方向的偏航角;
6、根據圖像間單應性,分別以獲取的每臺相機的旋轉角度的近似值作為初始值,使用單個特征點通過最小二乘法迭代求解各相機對應的旋轉角度;
7、根據求解的左、右相機的旋轉角度,計算旋轉后所述bsv模型的旋轉矩陣和平移向量;
8、根據視覺幾何學建立基本矩陣關聯對應圖像點,采用無約束非線性優化算法計算所述bsv模型中左、右相機的旋轉角度的偏差;
9、根據計算的所述bsv模型中左、右相機的旋轉角度的偏差,計算旋轉后的所述bsv模型的外部參數,包括最終旋轉矩陣和最終平移向量。
10、進一步的,定義所述bsv模型中旋轉前左、右相機坐標系分別為ol-xlylzl和or-xryrzr,旋轉后左、右相機坐標系分別為ol-xlylzl和or-xryrzr,則所述bsv模型旋轉前后左、右相機間的變換關系,以及所述bsv模型旋轉前后左、右相機相對自身的變換關系如下:
11、所述bsv模型旋轉前后左、右相機坐標系之間的映射關系為:
12、pr=r0pl+t0,pr=rpl+t;
13、其中,pl、pr和pl、pr依次表示bsv模型旋轉前后左、右相機坐標系,r0和r表示bsv模型旋轉前后的旋轉矩陣,t0和t表示bsv模型旋轉前后的平移向量;
14、根據旋轉定理,bsv模型左、右相機旋轉前后相對自身的旋轉矩陣分別為rl、rr,則左相機的旋轉矩陣rl為:
15、
16、右相機旋轉矩陣rr為:
17、
18、其中,pl、yl分別表示左相機的俯仰角和偏航角,rx(pl)表示左相機繞x軸旋轉pl的旋轉矩陣,ry(yl)表示左相機繞y軸旋轉yl的旋轉矩陣;pr、yr分別表示右相機的俯仰角和偏航角,rx(pr)表示右相機繞x軸旋轉pr的旋轉矩陣,ry(yr)表示右相機繞y軸旋轉yr的旋轉矩陣;c表示三角函數cos、s表示三角函數sin。
19、進一步的,根據圖像間單應性,分別以獲取的每臺相機的旋轉角度的近似值作為初始值,使用單個特征點通過最小二乘法迭代求解各相機對應的旋轉角度的過程包括:
20、定義bsv模型中左相機坐標系視為世界坐標系,空間點q在bsv模型左、右相機坐標系的圖像平面旋轉前后的投影點依次為ql(ul,vl),qr(ur,vr)和ql(ul,vl),qr(ur,vr),則由幾何成像原理可得:
21、
22、其中,zl、zl分別表示空間點q在bsv模型旋轉前后在左相機坐標系下的深度;u0、v0分別表示旋轉前空間點q在圖像平面上偏離主點的二維坐標,u和v分別表示旋轉后空間點q在圖像平面上偏離主點的二維坐標,并且u0=ul-cx,v0=vl-cy,u=ul-cx,v=vl-cy,(cx,cy)表示左相機的主點坐標;k1、k2分別表示bsv模型中左、右相機的內參矩陣,fxl、fyl分別表示左相機在水平方向、垂直方向的焦距,fxr、fyr分別表示右相機在水平方向、垂直方向的焦距;
23、定義bsv模型中左、右相機旋轉前后的圖像間單應矩陣分別為h1、h2,h1=k1rlk1-1,h2=k2rrk2-1,則通過單應矩陣h1將bsv模型旋轉前后的空間點q在左相機圖像平面上的投影點進行關聯可得:
24、
25、其中,λ為比例因子,等于zl/zl;
26、根據單特征點在bsv模型中左、右相機旋轉前后的對應關系,單應矩陣h1的方程為:
27、
28、其中,hmn(m,n=1,2,3)表示矩陣h1第m行第n列的值;
29、使用單個特征點通過最小二乘法迭代求解左相機的俯仰角pl和偏航角yl的方程為:
30、
31、同理,根據單應矩陣h2求解右相機的俯仰角pr和偏航角yr。
32、進一步的,根據求解的左、右相機的旋轉角度,計算旋轉后所述bsv模型的旋轉矩陣和平移向量的過程包括:
33、所述bsv模型旋轉前后左、右相機坐標系之間的映射關系調整為:
34、pr=rrr0rl-1pl+rrt0;
35、旋轉后所述bsv模型的旋轉矩陣r和平移向量t分別為:
36、r=rrr0rl-1,t=rrt0。
37、進一步的,定義精確的左相機的俯仰角和偏航角為精確的右相機的俯仰角和偏航角為則:
38、
39、其中,δpl、δyl、δpr和δyr分別表示左、右相機的俯仰角和偏航角的偏差;
40、所述bsv模型中左、右相機相對自身修正后的旋轉矩陣和分別表示為:
41、
42、采用基本矩陣f關聯對應圖像點后,當空間點q在所述bsv模型旋轉后左、右相機成像面上的齊次坐標分別為ul=[ul,vl,1]t、ur=[ur,vr,1]t,則:
43、urtful=0,
44、其中,
45、,(c′x,c′y)為右相機的主點坐標,tx、ty、tz分別為bsv模型旋轉后的平移向量t在各軸方向上的分量,即t=[tx,ty,tz]t;
46、并且,左、右相機的俯仰角和偏航角的偏差δpl、δyl、δpr和δyr采用無約束的非線性優化方法計算:
47、f(δpl,δyl,δpr,δyr)=|urtful|2→min。
48、進一步的,根據計算的所述bsv模型中左、右相機的旋轉角度的偏差,計算旋轉后的所述bsv模型的外部參數的過程為:
49、定義旋轉后所述bsv模型的最終旋轉矩陣為最終平移向量為則:
50、
51、進一步的,所述姿態角測量儀器的俯仰角的測量精度為0.2°,偏航角的測量精度為1°,所有軸的測量范圍均為360°。
52、第二方面,提出一種僅利用單個特征點實現動態雙目立體視覺的標定系統,包括:
53、搭建確定模塊,用于搭建非變焦動態bsv模型,預先采用張氏方法確定所述bsv模型中左、右相機的內參和初始相對位置,任一所述相機在位置固定的條件下具有水平和垂直旋轉的自由度;
54、獲取模塊,用于采用姿態角測量儀器實時獲取所述bsv模型中左、右相機的旋轉角度的近似值,所述旋轉角度包括相機在垂直方向的俯仰角和在水平方向的偏航角;
55、第一計算模塊,用于根據圖像間單應性,分別以獲取的每臺相機的旋轉角度的近似值作為初始值,使用單個特征點通過最小二乘法迭代求解各相機對應的旋轉角度;
56、第二計算模塊,用于根據求解的左、右相機的旋轉角度,計算旋轉后所述bsv模型的旋轉矩陣和平移向量;
57、第三計算模塊,用于根據視覺幾何學建立基本矩陣關聯對應圖像點,采用無約束非線性優化算法計算所述bsv模型中左、右相機的旋轉角度的偏差;
58、第四計算模塊,用于根據計算的所述bsv模型中左、右相機的旋轉角度的偏差,計算旋轉后的所述bsv模型的外部參數,包括最終旋轉矩陣和最終平移向量。
59、第三方面,提出一種電子設備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時,使所述電子設備實現如上述的僅利用單個特征點實現動態雙目立體視覺的標定方法。
60、第四方面,提出一種計算機可讀存儲介質,所述計算機可讀存儲介質用于存儲計算機程序,當所述計算機程序在計算機上運行時,使得所述計算機執行如上述的僅利用單個特征點實現動態雙目立體視覺的標定方法。
61、由以上技術方案可知,本發明的技術方案獲得了如下有益效果:
62、本發明公開的僅利用單個特征點實現動態雙目立體視覺的標定方法及系統,方法包括:搭建非變焦動態bsv模型,預先采用張氏方法確定所述bsv模型中左、右相機的內參和初始相對位置,任一所述相機在位置固定的條件下具有水平和垂直旋轉的自由度;采用姿態角測量儀器實時獲取所述bsv模型中左、右相機的旋轉角度的近似值,所述旋轉角度包括相機在垂直方向的俯仰角和在水平方向的偏航角;根據圖像間單應性,分別以獲取的每臺相機的旋轉角度的近似值作為初始值,使用單個特征點通過最小二乘法迭代求解各相機對應的旋轉角度;根據求解的左、右相機的旋轉角度,計算旋轉后所述bsv模型的旋轉矩陣和平移向量;根據視覺幾何學建立基本矩陣關聯對應圖像點,采用無約束非線性優化算法計算所述bsv模型中左、右相機的旋轉角度的偏差;根據計算的所述bsv模型中左、右相機的旋轉角度的偏差,計算旋轉后的所述bsv模型的外部參數,包括最終旋轉矩陣和最終平移向量;本發明相較于使用大量控制點的傳統標定方法、耗時且算法復雜的自標定方法,僅使用單個未知尺寸的矩形特征中心點求解動態bsv的旋轉角度,實現動態bsv外部參數的快速在線標定。
63、具體的,相較于現有技術,首先本發明的方案簡化了雙目立體視覺的數學模型,相機外參縮減成偏航角和俯仰角,提升了計算效率;其次,方案中的左、右相機標定避免使用具有特定尺寸的高精度標定物體,而矩形特征在生活中非常普遍,克服了復雜環境下標定不便的缺陷;此外,本方案適用于動態bsv系統的在線標定,在實際應用中,系統可以實時進行標定調整,適應環境和視角的變化,從而提高了動態場景下的適應能力和靈活性。
64、應當理解,前述構思以及在下面更加詳細地描述的額外構思的所有組合只要在這樣的構思不相互矛盾的情況下都可以被視為本公開的發明主題的一部分。
65、結合附圖從下面的描述中可以更加全面地理解本發明教導的前述和其他方面、實施例和特征。本發明的其他附加方面例如示例性實施方式的特征和/或有益效果將在下面的描述中顯見,或通過根據本發明教導的具體實施方式的實踐中得知。