游江,唐力偉,鄧士杰
(軍械工程學(xué)院火炮工程系,河北石家莊050003)
機(jī)器視覺空間目標(biāo)姿態(tài)自動測量方法研究
游江,唐力偉,鄧士杰
(軍械工程學(xué)院火炮工程系,河北石家莊050003)
針對空間目標(biāo)姿態(tài)測量問題,提出基于機(jī)器視覺的空間目標(biāo)姿態(tài)自動測量方法,并對其中較為關(guān)鍵的目標(biāo)靶自動分割及特征點(diǎn)自動排序問題進(jìn)行研究。首先改進(jìn)圓形目標(biāo)靶的設(shè)計,通過設(shè)置區(qū)域面積及矩形度閾值,實(shí)現(xiàn)目標(biāo)靶的自動分割,并提出基于向量夾角的圓心點(diǎn)陣順序排序法,實(shí)現(xiàn)特征點(diǎn)準(zhǔn)確快速地自動排序,最終基于張正友標(biāo)定法,完成相機(jī)標(biāo)定,獲取目標(biāo)靶在相機(jī)坐標(biāo)系下的旋轉(zhuǎn)矩陣,進(jìn)而計算目標(biāo)靶的空間姿態(tài)變化。實(shí)驗(yàn)結(jié)果驗(yàn)證:姿態(tài)解算的最大相對誤差≤3%,整個姿態(tài)解算過程自動化程度較高,平均耗時2.026 s,能夠滿足工程測試需要。關(guān)鍵詞:機(jī)器視覺;自動分割;自動排序;向量夾角;姿態(tài)測試;
隨著科技的發(fā)展進(jìn)步,常需要測量空間目標(biāo)的姿態(tài)變化。目前在工程測試領(lǐng)域,按照測試性質(zhì)主要分為機(jī)械測量法[1]、電測量法[2]和光學(xué)測量法[3]。其中機(jī)械測量法和電測量法較為簡單方便,但均為接觸式測量,測量效率低,精度較差[4],特別是在沖擊較大的場合,測量結(jié)果存在較大誤差,并且傳統(tǒng)的姿態(tài)測量設(shè)備和技術(shù)在精度、效率及自動化程度上存在局限性[5]。
隨著機(jī)器視覺技術(shù)的發(fā)展,由于其具有高精度、非接觸、響應(yīng)快、穩(wěn)定性好、操作方便靈活等優(yōu)點(diǎn),被廣泛應(yīng)用于航空航天、汽車制造,精密測量等領(lǐng)域[6]。機(jī)器視覺是通過獲取目標(biāo)不同姿態(tài)下的圖像信息,基于成像原理,利用特征點(diǎn)坐標(biāo)關(guān)系,恢復(fù)目標(biāo)的三維信息,進(jìn)而完成測量[7-8]。
為了實(shí)現(xiàn)自動化測量,本文提出了一種基于機(jī)器視覺的空間目標(biāo)姿態(tài)自動測量方法。首先改進(jìn)傳統(tǒng)目標(biāo)靶的設(shè)計,通過CCD拍攝目標(biāo)靶的圖像信息,設(shè)置區(qū)域面積和矩形度閾值自動分割目標(biāo)靶,再利用canny算子檢測特征圓邊緣,并采用最小二乘法擬合圓心,提出基于向量夾角的特征點(diǎn)順序排序法,完成圓心點(diǎn)陣的自動排序,最終基于張正友標(biāo)定法,標(biāo)定相機(jī),獲取目標(biāo)靶相對相機(jī)坐標(biāo)系的變換矩陣,進(jìn)而計算目標(biāo)靶的空間姿態(tài)變化。通過CZJC_ 01轉(zhuǎn)角儀,進(jìn)行實(shí)驗(yàn)驗(yàn)證,最大相對誤差≤3%,整個姿態(tài)解算過程平均耗時2.026 s,具有較高的測量精度和效率,能夠滿足工程測試要求。
目前常用的目標(biāo)靶多為黑白棋盤格[9],這種目標(biāo)靶對圖像質(zhì)量要求較高,并且在畸變較大的場合,角點(diǎn)提取精度較差,不適合工程應(yīng)用。相反,由于圓形靶標(biāo),形狀獨(dú)特,易于提取,因此本文采用實(shí)心圓陣目標(biāo)靶[10-11]。然而傳統(tǒng)的圓形目標(biāo)靶,不便于在復(fù)雜背景下的自動提取,且需要人工確定邊界點(diǎn)。因此為了實(shí)現(xiàn)整個目標(biāo)靶空間姿態(tài)測試的自動化,基于以下準(zhǔn)則改進(jìn)了圓形目標(biāo)靶。
1)合適的尺寸:保證相機(jī)成像時,目標(biāo)靶盡可能覆蓋整個成像區(qū)域[12],從而提高特征點(diǎn)提取精度;
2)目標(biāo)靶便于和背景分離:目標(biāo)靶與背景存在顏色、形狀等較大差別,便于快速準(zhǔn)確的自動分割目標(biāo)靶;
3)特征點(diǎn)易于提取和排序:保證快速準(zhǔn)確獲取特征點(diǎn)坐標(biāo),且實(shí)現(xiàn)目標(biāo)靶特征點(diǎn)與其投影點(diǎn)的對應(yīng);
4)特征點(diǎn)采用合適的算法,便于實(shí)現(xiàn)穩(wěn)定且高精度提取。
相比傳統(tǒng)圓形目標(biāo)靶做了兩點(diǎn)改進(jìn):
1)增加了10 mm的矩形邊框,便于通過檢測連通區(qū)域的面積及矩形度,設(shè)定閾值,實(shí)現(xiàn)目標(biāo)靶自動分割提取;
2)3個邊界圓半徑按照左上角,左下角,右上角依次為4,12,15 mm,其余圓半徑為8 mm,以此可以通過檢測特征圓面積,確定邊界點(diǎn);而且可以將邊界點(diǎn)作為方位基準(zhǔn),實(shí)現(xiàn)圓心點(diǎn)陣的自動排序,最終實(shí)現(xiàn)目標(biāo)靶空間姿態(tài)的自動測量。
最終設(shè)計的圓形目標(biāo)靶如圖1所示。
圖1 目標(biāo)靶結(jié)構(gòu)
2.1 目標(biāo)靶自動分割
為了實(shí)現(xiàn)自動化的測量目標(biāo)空間姿態(tài),首要的就是快速準(zhǔn)確的從背景中自動分割提取出目標(biāo)靶。本文采用基于邊緣的圖像分割技術(shù),設(shè)定區(qū)域面積和矩形度閾值,從而實(shí)現(xiàn)目標(biāo)靶的自動分割。
1)區(qū)域面積。對標(biāo)定圖像邊緣提取后填充,通過設(shè)定合適閾值,去除部分非目標(biāo)靶的封閉區(qū)域。
2)矩形度。由于背景中可能存在與目標(biāo)靶面積相當(dāng)?shù)倪B通區(qū)域,因此需要進(jìn)一步通過計算封閉區(qū)域的矩形度,將其剔除。通過檢測目標(biāo)靶封閉區(qū)域信息,獲取包圍連通區(qū)域所需最小矩形信息以及連通區(qū)域總像素數(shù),計算其矩形度r。
其中,narea為連通區(qū)域所占像素總數(shù),a、b分別為包圍連通區(qū)域所需最小矩形的長和寬。通過設(shè)定合適的閾值,即可從復(fù)雜背景中分割出目標(biāo)靶。
目標(biāo)靶分割前后如圖2所示。
圖2 目標(biāo)靶自動分割前后對比
2.2 特征圓圓心提取
為了完成相機(jī)標(biāo)定以及空間姿態(tài)的測量,必須快速準(zhǔn)確的提取特征圓圓心坐標(biāo)。由3.1節(jié)得到的目標(biāo)靶,通過檢測連通區(qū)域,可以獲取目標(biāo)靶的特征圓,進(jìn)而獲取圓心坐標(biāo)。
目前圓心獲取常用的兩種方法:
1)區(qū)域檢測,獲取特征圓區(qū)域,求取區(qū)域質(zhì)心,進(jìn)而找到橢圓中心。計算簡單,實(shí)時性較強(qiáng),但容易受到外界因素干擾,精度和穩(wěn)定性不高;
2)檢測邊緣,擬合獲取圓心。實(shí)時性不高,但對于外界因素的影響具有較高的魯棒性和提取精度,并可以達(dá)到亞像素精度。
為了保證標(biāo)定精度,本文采用第2種方法,采用canny算子,檢測特征圓邊緣,最后采用最小二乘法擬合邊緣,獲取特征圓圓心。
特征點(diǎn)的正確匹配是實(shí)現(xiàn)攝像機(jī)自動標(biāo)定及空間姿態(tài)自動測量的關(guān)鍵[13],直接決定了相機(jī)標(biāo)定以及姿態(tài)測量的準(zhǔn)確性,因此必須快速且準(zhǔn)確的完成目標(biāo)靶上特征點(diǎn)的自動排序。
3.1 邊界點(diǎn)確定
在第2節(jié)可以獲得目標(biāo)靶內(nèi)所有特征圓所占像素數(shù),由目標(biāo)靶的物理結(jié)構(gòu)可知,3個邊界圓與其余特征圓具有不同的尺寸,因此不論目標(biāo)靶處于何種姿態(tài),以及相機(jī)畸變,光照不均等因素影響,均可以根據(jù)特征圓所占像素數(shù),確定邊界點(diǎn),記為A、B和C。
3.2 特征點(diǎn)排序
由于鏡頭畸變,光照不均等問題,實(shí)際提取的圓心點(diǎn)陣像素坐標(biāo),不具有相同的間隔。由相機(jī)畸變模型可知,外圍的點(diǎn)間距畸變較大。因此傳統(tǒng)的基于交比不變原理設(shè)置閾值法,不能滿足要求,在畸變較大的場合,會存在排序錯亂的情況。
因此提出基于向量夾角的順序排序法。如圖3所示,首先根據(jù)邊界點(diǎn),利用邊界向量夾角閾值準(zhǔn)則,查找邊界AB及AC上的特征點(diǎn),并按照距點(diǎn)A的歐式距離排序,實(shí)現(xiàn)邊界線上特征點(diǎn)排序;進(jìn)而依次以AC以及AB對應(yīng)位置點(diǎn)為基準(zhǔn),基于基準(zhǔn)向量夾角閾值準(zhǔn)則,查找對應(yīng)位置特征點(diǎn),并及時將已匹配點(diǎn)從點(diǎn)陣中去除,提高搜索效率,直到完成所有點(diǎn)的排序。具體步驟如下所示:
圖3 特征點(diǎn)排序示意圖
1)確定邊界點(diǎn)A、B和C,并計算向量AB與AC夾角θ;
2)查找邊界線AB及AC上特征點(diǎn),并排序
①取圓心點(diǎn)陣中任意一點(diǎn)(A、B、C除外),設(shè)為點(diǎn)P,分別計算向量AP與AB、AC夾角,記為θ1、θ2;
②判斷,若θ1≤α且,則為邊界線AB上點(diǎn),如點(diǎn)P1,記入L1;
若θ2≤α且,則為邊界線AC上點(diǎn),如點(diǎn)P2,記入H;
否則,即為非邊界點(diǎn),如點(diǎn)P3,記入M;
③分別計算L1及H點(diǎn)與A的歐式距離,并將特征點(diǎn)坐標(biāo)按照其距離從小到大排列;
④將點(diǎn)A坐標(biāo),記入H中,并位于首位;
3)依次以邊界線AC上特征點(diǎn)為基準(zhǔn),查找該列上特征點(diǎn),并排序;
①分別取點(diǎn)Hi及Hi+1(i=1);
②取Li作為基準(zhǔn)列,取點(diǎn),記為Bj(即第i列第j+1行點(diǎn));
④計算向量HiBj與Hi+1Qk夾角,記為β;
⑤直到j(luò)=7,即找到第i+1列中所有行位置點(diǎn),即Li+1;
⑥將未排序點(diǎn)陣中,去除Li+1對應(yīng)點(diǎn);令i=i+1,重復(fù)步驟①;
4)最終排序:將H中所有點(diǎn),對應(yīng)記入矩陣L每一列的首元素;
目標(biāo)靶特征點(diǎn)排序前后如圖4所示。
圖4 特征點(diǎn)陣排序前后示意圖
4.1 相機(jī)標(biāo)定
如圖5所示,以目標(biāo)靶AC邊為X軸,以AB邊為Y軸,以垂直目標(biāo)靶平面向外為Z軸,建立隨體坐標(biāo)系(即目標(biāo)靶坐標(biāo)系)。
圖5 建立隨體坐標(biāo)系示意圖
將由排序后的特征點(diǎn)陣像素坐標(biāo),及特征點(diǎn)在隨體坐標(biāo)系中的物理坐標(biāo),作為Zhang算法標(biāo)定工具箱[14]的輸入,優(yōu)化相機(jī)參數(shù),獲取目標(biāo)靶相對相機(jī)坐標(biāo)系的變換矩陣。
4.2 姿態(tài)解算
設(shè)隨體坐標(biāo)系X軸與轉(zhuǎn)角儀橫軸平行時為初始姿態(tài)0,記為C0,由C0繞轉(zhuǎn)角儀橫軸(即隨體坐標(biāo)系X軸)旋轉(zhuǎn)α1,再繞Z軸旋轉(zhuǎn)β1,到姿態(tài)1,記為C1,由歐拉角空間旋轉(zhuǎn)矩陣變換理論(詳見文獻(xiàn)[15]),可知兩個姿態(tài)間的變換關(guān)系為
即初始姿態(tài)0到姿態(tài)1的真實(shí)旋轉(zhuǎn)矩陣為
由4.1節(jié)相機(jī)標(biāo)定可以獲取相機(jī)坐標(biāo)系相對隨體坐標(biāo)系的旋轉(zhuǎn)矩陣和平移向量,設(shè)姿態(tài)0和姿態(tài)1,相對相機(jī)坐標(biāo)系的旋轉(zhuǎn)矩陣分別為Rc0、Rc1。則兩個姿態(tài)間的變換關(guān)系為
即初始姿態(tài)0到姿態(tài)1的測量獲得的旋轉(zhuǎn)矩陣為
則可以求出α1及β1:
5.1 實(shí)驗(yàn)組成
實(shí)驗(yàn)系統(tǒng)主要由計算機(jī)、面陣CCD,圖像采集設(shè)備Core,8×8實(shí)心圓陣列目標(biāo)靶,CZJC_01轉(zhuǎn)角測量儀。CCD像元尺寸為5.5μm×5.5μm,像素數(shù)為2048×2048;鏡頭焦距為65~80 mm;相機(jī)通過26pins相機(jī)接口線與記錄采集設(shè)備Core進(jìn)行傳輸;Core通過e-SATA接口與計算機(jī)進(jìn)行數(shù)據(jù)交換。測試系統(tǒng)圖6所示。
圖6 測試系統(tǒng)圖
5.2 實(shí)驗(yàn)步驟
1)將計算機(jī)、采集設(shè)備Core及相機(jī),按照正確方式連接,將目標(biāo)靶固定于CZJC_01轉(zhuǎn)角測量儀;
2)打開計算機(jī),運(yùn)行CoreView記錄軟件,對相機(jī)初始參數(shù)進(jìn)行設(shè)置,使目標(biāo)靶圖像清晰;
3)控制轉(zhuǎn)角測量儀分別沿著X軸、Z軸方向轉(zhuǎn)動,帶動靶標(biāo)轉(zhuǎn)動,同時采集目標(biāo)靶圖像;
4)按照以下流程處理目標(biāo)靶圖像,解算目標(biāo)靶的空間姿態(tài)變化。
流程如圖7所示。
圖7 目標(biāo)靶的空間姿態(tài)自動解算流程
5.3 實(shí)驗(yàn)結(jié)果
5.3.1 自動排序算法性能測試
本文改進(jìn)設(shè)計的目標(biāo)靶,以及提出的排序算法,原理上具有旋轉(zhuǎn)排序適應(yīng)性。在0°~360°內(nèi)場景,拍攝不同角度、不同方向和不同光照條件下的目標(biāo)靶,任意選取25張標(biāo)定圖像進(jìn)行測試,均未出現(xiàn)排序錯亂情況。排序過程的消耗時間如圖8所示
圖8 自動排序算法用時
由上圖可以看出,最大排序時間為0.070 8 s,平均排序時間為0.066 2 s。因此本文的基于向量夾角的順序排序法,具有較高的運(yùn)行效率和準(zhǔn)確性。
5.3.2 姿態(tài)自動測量算法時效性測試
任意選取25張?zhí)幱诓煌臻g姿態(tài)的目標(biāo)靶圖像,按照圖7所示的后期姿態(tài)自動解算流程處理,計算任兩張目標(biāo)靶間的姿態(tài)變化,其涉及的處理步驟、耗時以及需要操作的次數(shù)如表1所示(以下各處理環(huán)節(jié)耗時,除相機(jī)標(biāo)定外,均為平均時間)。
表1 空間姿態(tài)變化解算各操作步驟、耗時及次數(shù)
由上表可以看出,任意兩張目標(biāo)靶間空間姿態(tài)變化解算,平均耗時約為2.026 s,具有較好的時效性,能夠滿足工程應(yīng)用。
5.3.3 姿態(tài)自動測量算法精度測試
在實(shí)驗(yàn)室CZJC_01轉(zhuǎn)角測量儀上,分別繞X、Z軸轉(zhuǎn)動,并分別進(jìn)行了單方向軸和雙方向測試,結(jié)果如表2和圖9所示(參考值是由轉(zhuǎn)角儀顯示結(jié)果,測量精度為0.001°)。
表2 轉(zhuǎn)角測試結(jié)果
圖9 轉(zhuǎn)角測量結(jié)果
從測量結(jié)果看,隨著轉(zhuǎn)角的增大,相對誤差越來越小,最大相對誤差≤3%。在X(或Z)軸轉(zhuǎn)動時,Z (或X)軸也會有較小的角度變化,主要是由目標(biāo)靶的安裝誤差,非絕對平面等因素造成,但附加誤差均較小。另外,相比繞X軸轉(zhuǎn)動,繞Z軸轉(zhuǎn)動測量誤差較小,特別是在轉(zhuǎn)角較大時,誤差相對較大;主要由于繞X軸轉(zhuǎn)動時,目標(biāo)靶平面與相機(jī)成像平面夾角隨著X轉(zhuǎn)角增大而變大,致使目標(biāo)靶在圖像占有率較低,特征圓所占像素數(shù)較少,圓心提取精度較差,導(dǎo)致相機(jī)標(biāo)定誤差較大,進(jìn)而影響了姿態(tài)的解算。
本文基于機(jī)器視覺技術(shù),建立了空間目標(biāo)姿態(tài)自動測量系統(tǒng),改進(jìn)了目標(biāo)靶的設(shè)計,并通過設(shè)置區(qū)域面積和矩形度閾值,實(shí)現(xiàn)了目標(biāo)靶的自動分割,并提出基于向量夾角的特征點(diǎn)順序排序算法,完成圓心點(diǎn)陣的快速準(zhǔn)確的自動排序,最終標(biāo)定相機(jī),計算目標(biāo)靶姿態(tài)變化。實(shí)驗(yàn)結(jié)果表明:提出的基于向量夾角的特征點(diǎn)順序排序算法,效率高,穩(wěn)定性好;最終的姿態(tài)解算結(jié)果接近真實(shí)值,最大誤差≤3%,整個姿態(tài)解算平均耗時約2.026s,滿足工程需要,具有較好的實(shí)用價值。
[1]韓冬,何聞.超低頻標(biāo)準(zhǔn)振動系統(tǒng)基礎(chǔ)設(shè)計技術(shù)[J].振動與沖擊,2008,27(9):20-22。
[2]滑廣軍,李強(qiáng),楊益民,等.某大型超靜定框架的動態(tài)應(yīng)力測試與有限元分析[J].振動與沖擊,2008,27(8): 170-172
[3]CHUNG H,LIANG J,KUSHIYAMA S,et al.Digital image processing for non-linear system identification[J].International Journal of Non-linear Mechanics,2004,39 (5):691-707.
[4]歹英杰,汪偉,鄧士杰,等.基于立體機(jī)器視覺的動目標(biāo)空間位姿測試研究[J].振動與沖擊,2015,34(16):188-212.
[5]朱曉林,高誠輝,何炳蔚,等.基于機(jī)器視覺的機(jī)械零件圖像尺寸自動標(biāo)注方法[J].中國工程機(jī)械學(xué)報,2010,8(3):324-328.
[6]張梁,徐錦法,夏青元.雙目立體視覺的無人機(jī)位姿估計算法及驗(yàn)證[J].哈爾濱工業(yè)大學(xué)學(xué)報,2014,46(5): 66-72.
[7]陳愛華,高誠輝,何炳蔚.立體視覺中的圖像立體匹配算法[J].中國工程機(jī)械學(xué)報,2014,12(3):194-198.
[8]郭繼平,李阿蒙,于冀平,等.雙目立體視覺動態(tài)角度測量方法[J].中國測試,2015,41(7):21-23,36.
[9]SHI X F,HONG N,CAI T F.An automatic and robust chessboard corner extraction[J].Transaction on Edutainment VI,2011(6758):49-56.
[10]夏仁波,劉偉軍,趙吉賓,等.基于圓形標(biāo)志點(diǎn)的全自動相機(jī)標(biāo)定方法[J].儀器儀表學(xué)報,2009,30(2):368-373.
[11]徐鵬,汪建業(yè),王燕儒.攝像機(jī)標(biāo)定中靶標(biāo)圓心像點(diǎn)坐標(biāo)的精確計算[J].紅外與激光工程,2011,40(7):1342-1346.
[12]張春燕,鄒偉.一種魚眼鏡頭標(biāo)定板的設(shè)計、檢測與排序方法[J].計算機(jī)工程與應(yīng)用,2015,51(15):188-192.
[13]梁力,尹東斐,王川.高精度攝像機(jī)標(biāo)定模板的設(shè)計及設(shè)別算法[J].西安交通大學(xué)學(xué)報,2011,45(4):82-85.
[14]BOUGUET J.Visual methods for three-dimensional modeling[D].Pasadena:California Institute of Technology,1999.
[15]胡茂林.空間和變換[M].北京:科學(xué)出版社,2007:123-124.
(編輯:劉楊)
Research of automatic measurement method of space target’s posture based on machine vision
YOU Jiang,TANG Liwei,DENG Shijie
(Department of Guns Engineering,Ordnance Engineering College,Shijiazhuang 050003,China)
Aiming at the problem of the measurement of target’s posture,a non-contact automatic measurement system of space posture based on the machine vision was established,and the key steps of automatic division of the target and ranking of the points have been researched.Firstly the design of target was improved,and then the automatic division of the target was realized by setting the area and rectangularity threshold.Then the ranking arithmetic based on vector angle was proposed to realize the fast and exactly automatic ranking of the points.Finally the camera was calibrated by Zhang’s method,and the conversion of the target’s posture was calculated.The experiment result shows that:the largest relative error of the measurement of the posture is no more than 3%,and the automatic testing method is of high automaticity,and the average time of posture testing is about 2.026 s.Therefore the proposed method meets the engineering test requirement.
machine vision;automatic division;automatic ranking;vector angle;posture measurement
A
1674-5124(2016)11-0107-06
10.11857/j.issn.1674-5124.2016.11.022
2016-05-10;
2016-07-15
游江(1992-),男,河南南陽市人,碩士,主要從事機(jī)器視覺及性能測試方面研究。
唐力偉(1961-),男,天津市人,教授,博導(dǎo),主要從事兵器性能檢測、故障診斷等研究。