王志中
摘 要:為實現視覺測量系統的快速標定,提出基于柵格識別的攝像機標定方法。通過研究系統標定原理,給出易于制作、可夜間工作的二維平面網格靶標設計方案。根據針孔攝像機模型,建立靶標上柵格點的世界坐標和圖像坐標的對應關系,實現標定過程。其中,柵格點的圖像坐標通過以下步驟獲得:(1)由形態學預處理、otsu二值化獲得高對比度、低噪聲的二值圖像;(2)改進傳統擊中-擊不中算法(HMT),將算法中完全匹配準則弱化為自定義閾值的模糊匹配。通過改進HMT算法檢測出二值圖像中的目標點集,再利用柵格的幾何特性剔除點集中干擾點;(3)對目標點集利用最小二乘擬合、雙線性插值等算法校正系統畸變,獲得精確圖像坐標。實驗結果表明,該方法快速可行、操作簡單、精度高,適用于圖像測量系統、測距系統等工程應用。
關鍵詞:攝像機標定;二維平面網格靶標;柵格識別;擊中-擊不中;畸變校正
引言
在視覺測量技術中,攝像機標定是測量的前提和基礎,標定精度對測量結果有著重要影響[1]。攝像機標定是指建立攝像機圖像像素與場景點位置之間的關系,其途經是根據攝像機模型,由已知特征點的圖像坐標和世界坐標求解攝像機的模型參數[2]。
文章提出基于柵格識別的測量系統快速標定方法,利用制作精良、可夜間工作的二維平面網格靶標實現單平面傳統標定。柵格識別主要利用圖像處理相關知識,改進傳統形態學擊中-擊不中(HMT)算法,準確檢測出網格節點,引入最小二乘擬合,雙線性插值算法校正系統畸變,快速實現攝像機垂直像素當量和水平當量的標定。
1 標定原理與靶標設計
在傳統標定方法中,為求解攝像機的全部參數,采用三維標定塊或者多次標定法。然而在特定應用中,并不需要知道攝像機的全部參數。例如,在大部分二維測量系統中,攝像機外部參數可以被忽略,或目標物體的放置位置與攝像機位姿固定,部分外部參數已知,利用單幅圖像便可標定攝像機內部參數。再比如,對具體的尺寸測量系統而言,檢測目標是物體待測尺寸,不用測出物體表面各點的空間幾何位置對應關系。因此文章提出基于二維平面網格的攝像機快速標定方法,利用平面靶標實現一次標定的方法操作簡單、快速,更適用于系統測量工程應用。
1.1 單平面標定原理
假設不考慮鏡頭畸變,保持標定平面與攝像機光軸垂直,建立攝像機透視模型如圖1所示,靶標平面坐標系為XW-YW,視為在世界坐標系中ZW=0,實際圖像像素坐標系為XS-YS。在圖1中,世界坐標系中的點M1(Xw1,Yw1,0),M2(Xw2,Yw2,0),與圖像平面中m1(u1,v1),m2(u2,v2)分別對應,則存在下式:
L1=(mm/pixel) (1)
L2=(mm/pixel) (2)
上式中,L1和L2稱為系統的像素當量,指每個像素代表的實際長度值。在測量系統中,當被測物體和靶標處于同一位置時,根據標定的水平、垂直像素當量L1、L2,以及待測物特征點的像素坐標,便可確定物體的大小、形變等特征。
1.2 2D平面網格靶標設計
文章設計了二維平面網格靶標系統,相對與三維靶標更易于操作,尺寸可以制作的非常精確,且在背光照明系統中應用方便。系統主要由平面網格靶標,攝像設備、望遠裝置、計算機構成。望遠裝置安裝在攝像設備的前端,攝像設備通過接口與計算機連接。靶標前方貼有精確刻度的柵格漫反射防水膜,燈箱底色為黑色且不透光,網格線為紅色且透光;燈箱體外設有光線傳感器,箱內有光線控制器和散射光源,其中散射光源由光線控制器控制其開關。系統組成如圖2所示。
2 基于改進HMT算法的系統標定
(1)制作二維平面靶標,獲得柵格點的世界坐標;(2)獲取原始柵格圖像;(3)利用圖像處理相關知識識別柵格,得到柵格的像素坐標;(4)根據式(1)、式(2)計算系統水平和垂直像素當量,實現系統標定。
2.1 圖像預處理
圖像預處理主要用于濾除待標定圖像的干擾噪聲以及對光照不均的修正。其中典型算法有中值濾波、高斯濾波、top-hat算法、同態濾波算法等。由于后續點集提取算法均針對二值圖像,常用的二值算法有otsu二值化。這些算法在大量文獻中都有詳細介紹,在此不贅述。如圖4,是采用otsu二值化后的網格圖像。
圖4 二維平面靶標 圖5 otsu二值化后的圖像
2.2 柵格識別
在數字圖像處理技術中,擊中-擊不中變換(HMT)經常用于檢測具有特定結構形狀的像素,然而針對實際網格圖像,不能找到一個唯一確定的結構元素對來準確識別出網格全部交叉點。因此文章改進了傳統HMT算法,引入自定義閾值,能準確識別出所有柵格點。
定義結構元素對B,相似性閾值T,根據改進HMT算法,掃描二值化的預處理圖像,計算以該點為中心的局部方塊與結構元素的相似性,只有當該點的相似值大于閾值T才認為該點為十字交叉點。最后根據柵格的幾何約束特性去掉點集中的干擾數據最終準確識別出柵格點。
2.2.1 改進HMT算法
傳統HMT算法定義為設定兩個非空不相交結構元BFG、BBG,結構元素對B={BFG,BBG},對目標集合X作擊中-擊不中變換(HMT)的結果是x的點集,當且僅當B的原點與X一致,并且BFG可填入X,BBG可填入X的補集XC:
(3)
ε(*)為腐蝕運算,定義為:
(4)
其中Bx表示結構B平移x個像素。
利用HMT算法可以提取與給定領域結構完全匹配的所有像素。但實際圖像由于光照不均、噪聲影響等因素影響,二值化后的局部網格圖像形狀、大小不完全一致,不一定呈現完整的十字結構,一般包含如下幾種圖像:
圖6 二值化后的局部網格圖像
(圖中每個小方塊代表一個或幾個像素點,“●”表示坐標原點)
針對以上情況,通過標準HMT變換,無法定義一個唯一結構元素對,使得所有網格被完全檢測。因此,需對傳統HMT算法進行改進,將算法中完全匹配條件弱化為相似匹配:即選擇結構元素對B,通過掃描圖像X計算以該點為中心的局部像素集與結構元素的相似度S,設定相似性閾值T,當該點相似度S大于T,則認為該點是目標點,反之則不是。
(5)
其中,“∽”--計算結構元素與局部目標圖像的相似度符號;T1,T2--自定義閾值。
相似度S按下式計算:
(6)
“☉”為同或運算符,即運算符左右兩邊相同則結果為1,不同為0;NB為結構元素B的像素數目。
2.2.2 過濾干擾點
改進HMT算法輸出為點集{(x0,y0),(x1,y1),...,(xn,yn)},其中包含了毛刺、干擾等數據點,因此首先根據點集的數據曲線來剔除毛刺,進一步可利用網格間的長寬約束特性來濾除干擾。利用約束去干擾的具體算法如下:
橫向坐標點集{x0,x1,...,xn}存在:
則取集合 中的點 為目標點。最終獲得
橫坐標點集 ,而縱坐標則可通過橫坐標來確定。其中△是根據網格制作精度和攝像機放大倍數等情況自定義的。
2.3 畸變校正
建立畸變前后的一個映射表是最直接最簡單的畸變校正方法,在文獻[4]中有詳細介紹,其過程如下:
(1)在實際成像過程中,由于鏡頭畸變,通過交叉點提取算法得到的點集(xi', yi') (i = 0, 1, ..., m),是畸變后的交叉點位置。
(2)徑向畸變被認為是攝像機畸變的主要因素,則圖像中心的畸變最小或是零畸變,選取圖像最中心的幾個交叉特征點,利用最小二乘原理使殘方差最小,進行直線擬合。由此獲得的特征點是沒有畸變的理想交叉點坐標(xi,yi) (i=0,1,...,m)。
(3)建立校正點的坐標映射表(xi', yi') → (xi,yi)。對圖像中任一點(非校正點)的畸變映射采用對其鄰近校正點的映射關系做雙線性插值得到,以完成整幅圖像的映射表建立。
3 實驗與分析
由于實驗條件有限,二維平面網格靶標采用打印的網格紙代替,靶標中每一小方格的大小為8mm×8mm。采用Matlab7.9仿真標定過程。原始的二維網格圖像如圖5所示,圖6是對輸入圖像進行otsu二值化→改進HMT算法→過濾干擾點后得到的目標節點。從圖5可以看出,本次實驗拍攝的圖像徑向畸變不明顯,甚至可以忽略。只需對其做扭轉校正,結果如圖8所示。最后隨機選出12個節點計算像素當量,標定結果見表1。
使靶標與攝像機保持3-5m的距離,令圖像中第一個網格交點的世界坐標為(0,0),其圖像坐標為(),根據標定結果取L1=0.1766,L2=0.1741,隨機選取6個柵格交叉點,反推這些點的世界坐標位置,根據表2所示:
表1 標定結果
4 結束語
文章提出了一種利用二維平面網格靶標實現攝像機部分參數的快速標定方法。該方法只需校正畸變和標定像素比例,避免了計算攝像機全部參數,更適用于圖像測量系統、距離測量等工程應用。文章詳細描述了系統的標定原理、給出了易于制作的、可以全天候工作的二維平面靶標設計方案。同時,結合數字圖像處理的相關知識,改進了形態學擊中-擊不中算法,將完全匹配條件弱化為模糊匹配,檢測出目標節點。最后利用最小二乘擬合、雙線性插值校正系統徑向畸變。實驗結果表明,通過改進HMT算法標記的節點與目標節點完全吻合,系統操作簡單快,標定結果精度高,且還可以通過制作更精良的靶標,來進一步提高系統精度。
參考文獻
[1]朱楓,周靜,郝穎明.基于幾何方法的攝像機內外參數求解[J].計算機工程與應用,2005.
[2]張廣軍.機器視覺[M].北京:科學出版社,2005.
[3]徐經緯,郝泳濤.基于平面方格點的攝像機標定改進算法[J].計算機工程,2010.
[4]張廣軍.視覺測量[M].北京:科學出版社,2008.
(圖中每個小方塊代表一個或幾個像素點,“●”表示坐標原點)
針對以上情況,通過標準HMT變換,無法定義一個唯一結構元素對,使得所有網格被完全檢測。因此,需對傳統HMT算法進行改進,將算法中完全匹配條件弱化為相似匹配:即選擇結構元素對B,通過掃描圖像X計算以該點為中心的局部像素集與結構元素的相似度S,設定相似性閾值T,當該點相似度S大于T,則認為該點是目標點,反之則不是。
(5)
其中,“∽”--計算結構元素與局部目標圖像的相似度符號;T1,T2--自定義閾值。
相似度S按下式計算:
(6)
“☉”為同或運算符,即運算符左右兩邊相同則結果為1,不同為0;NB為結構元素B的像素數目。
2.2.2 過濾干擾點
改進HMT算法輸出為點集{(x0,y0),(x1,y1),...,(xn,yn)},其中包含了毛刺、干擾等數據點,因此首先根據點集的數據曲線來剔除毛刺,進一步可利用網格間的長寬約束特性來濾除干擾。利用約束去干擾的具體算法如下:
橫向坐標點集{x0,x1,...,xn}存在:
則取集合 中的點 為目標點。最終獲得
橫坐標點集 ,而縱坐標則可通過橫坐標來確定。其中△是根據網格制作精度和攝像機放大倍數等情況自定義的。
2.3 畸變校正
建立畸變前后的一個映射表是最直接最簡單的畸變校正方法,在文獻[4]中有詳細介紹,其過程如下:
(1)在實際成像過程中,由于鏡頭畸變,通過交叉點提取算法得到的點集(xi', yi') (i = 0, 1, ..., m),是畸變后的交叉點位置。
(2)徑向畸變被認為是攝像機畸變的主要因素,則圖像中心的畸變最小或是零畸變,選取圖像最中心的幾個交叉特征點,利用最小二乘原理使殘方差最小,進行直線擬合。由此獲得的特征點是沒有畸變的理想交叉點坐標(xi,yi) (i=0,1,...,m)。
(3)建立校正點的坐標映射表(xi', yi') → (xi,yi)。對圖像中任一點(非校正點)的畸變映射采用對其鄰近校正點的映射關系做雙線性插值得到,以完成整幅圖像的映射表建立。
3 實驗與分析
由于實驗條件有限,二維平面網格靶標采用打印的網格紙代替,靶標中每一小方格的大小為8mm×8mm。采用Matlab7.9仿真標定過程。原始的二維網格圖像如圖5所示,圖6是對輸入圖像進行otsu二值化→改進HMT算法→過濾干擾點后得到的目標節點。從圖5可以看出,本次實驗拍攝的圖像徑向畸變不明顯,甚至可以忽略。只需對其做扭轉校正,結果如圖8所示。最后隨機選出12個節點計算像素當量,標定結果見表1。
使靶標與攝像機保持3-5m的距離,令圖像中第一個網格交點的世界坐標為(0,0),其圖像坐標為(),根據標定結果取L1=0.1766,L2=0.1741,隨機選取6個柵格交叉點,反推這些點的世界坐標位置,根據表2所示:
表1 標定結果
4 結束語
文章提出了一種利用二維平面網格靶標實現攝像機部分參數的快速標定方法。該方法只需校正畸變和標定像素比例,避免了計算攝像機全部參數,更適用于圖像測量系統、距離測量等工程應用。文章詳細描述了系統的標定原理、給出了易于制作的、可以全天候工作的二維平面靶標設計方案。同時,結合數字圖像處理的相關知識,改進了形態學擊中-擊不中算法,將完全匹配條件弱化為模糊匹配,檢測出目標節點。最后利用最小二乘擬合、雙線性插值校正系統徑向畸變。實驗結果表明,通過改進HMT算法標記的節點與目標節點完全吻合,系統操作簡單快,標定結果精度高,且還可以通過制作更精良的靶標,來進一步提高系統精度。
參考文獻
[1]朱楓,周靜,郝穎明.基于幾何方法的攝像機內外參數求解[J].計算機工程與應用,2005.
[2]張廣軍.機器視覺[M].北京:科學出版社,2005.
[3]徐經緯,郝泳濤.基于平面方格點的攝像機標定改進算法[J].計算機工程,2010.
[4]張廣軍.視覺測量[M].北京:科學出版社,2008.
(圖中每個小方塊代表一個或幾個像素點,“●”表示坐標原點)
針對以上情況,通過標準HMT變換,無法定義一個唯一結構元素對,使得所有網格被完全檢測。因此,需對傳統HMT算法進行改進,將算法中完全匹配條件弱化為相似匹配:即選擇結構元素對B,通過掃描圖像X計算以該點為中心的局部像素集與結構元素的相似度S,設定相似性閾值T,當該點相似度S大于T,則認為該點是目標點,反之則不是。
(5)
其中,“∽”--計算結構元素與局部目標圖像的相似度符號;T1,T2--自定義閾值。
相似度S按下式計算:
(6)
“☉”為同或運算符,即運算符左右兩邊相同則結果為1,不同為0;NB為結構元素B的像素數目。
2.2.2 過濾干擾點
改進HMT算法輸出為點集{(x0,y0),(x1,y1),...,(xn,yn)},其中包含了毛刺、干擾等數據點,因此首先根據點集的數據曲線來剔除毛刺,進一步可利用網格間的長寬約束特性來濾除干擾。利用約束去干擾的具體算法如下:
橫向坐標點集{x0,x1,...,xn}存在:
則取集合 中的點 為目標點。最終獲得
橫坐標點集 ,而縱坐標則可通過橫坐標來確定。其中△是根據網格制作精度和攝像機放大倍數等情況自定義的。
2.3 畸變校正
建立畸變前后的一個映射表是最直接最簡單的畸變校正方法,在文獻[4]中有詳細介紹,其過程如下:
(1)在實際成像過程中,由于鏡頭畸變,通過交叉點提取算法得到的點集(xi', yi') (i = 0, 1, ..., m),是畸變后的交叉點位置。
(2)徑向畸變被認為是攝像機畸變的主要因素,則圖像中心的畸變最小或是零畸變,選取圖像最中心的幾個交叉特征點,利用最小二乘原理使殘方差最小,進行直線擬合。由此獲得的特征點是沒有畸變的理想交叉點坐標(xi,yi) (i=0,1,...,m)。
(3)建立校正點的坐標映射表(xi', yi') → (xi,yi)。對圖像中任一點(非校正點)的畸變映射采用對其鄰近校正點的映射關系做雙線性插值得到,以完成整幅圖像的映射表建立。
3 實驗與分析
由于實驗條件有限,二維平面網格靶標采用打印的網格紙代替,靶標中每一小方格的大小為8mm×8mm。采用Matlab7.9仿真標定過程。原始的二維網格圖像如圖5所示,圖6是對輸入圖像進行otsu二值化→改進HMT算法→過濾干擾點后得到的目標節點。從圖5可以看出,本次實驗拍攝的圖像徑向畸變不明顯,甚至可以忽略。只需對其做扭轉校正,結果如圖8所示。最后隨機選出12個節點計算像素當量,標定結果見表1。
使靶標與攝像機保持3-5m的距離,令圖像中第一個網格交點的世界坐標為(0,0),其圖像坐標為(),根據標定結果取L1=0.1766,L2=0.1741,隨機選取6個柵格交叉點,反推這些點的世界坐標位置,根據表2所示:
表1 標定結果
4 結束語
文章提出了一種利用二維平面網格靶標實現攝像機部分參數的快速標定方法。該方法只需校正畸變和標定像素比例,避免了計算攝像機全部參數,更適用于圖像測量系統、距離測量等工程應用。文章詳細描述了系統的標定原理、給出了易于制作的、可以全天候工作的二維平面靶標設計方案。同時,結合數字圖像處理的相關知識,改進了形態學擊中-擊不中算法,將完全匹配條件弱化為模糊匹配,檢測出目標節點。最后利用最小二乘擬合、雙線性插值校正系統徑向畸變。實驗結果表明,通過改進HMT算法標記的節點與目標節點完全吻合,系統操作簡單快,標定結果精度高,且還可以通過制作更精良的靶標,來進一步提高系統精度。
參考文獻
[1]朱楓,周靜,郝穎明.基于幾何方法的攝像機內外參數求解[J].計算機工程與應用,2005.
[2]張廣軍.機器視覺[M].北京:科學出版社,2005.
[3]徐經緯,郝泳濤.基于平面方格點的攝像機標定改進算法[J].計算機工程,2010.
[4]張廣軍.視覺測量[M].北京:科學出版社,2008.