国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于平面法向量的線結(jié)構(gòu)光視覺(jué)傳感器參數(shù)標(biāo)定*

2023-08-02 06:04:52鄧仕超蔣應(yīng)良高興宇
關(guān)鍵詞:角點(diǎn)靶標(biāo)標(biāo)定

鄧仕超,蔣應(yīng)良,高興宇

(桂林電子科技大學(xué)廣西制造系統(tǒng)與先進(jìn)制造技術(shù)重點(diǎn)實(shí)驗(yàn)室,桂林 541004)

0 引言

三維測(cè)量技術(shù)作為計(jì)算機(jī)視覺(jué)熱點(diǎn)領(lǐng)域,在出現(xiàn)的許多方法中,線結(jié)構(gòu)光三維測(cè)量技術(shù)有著非接觸、成本低、結(jié)構(gòu)簡(jiǎn)單、快速穩(wěn)定、精度較高等優(yōu)點(diǎn),在文物修復(fù)、航空攝影測(cè)量、工業(yè)檢測(cè)等三維重建領(lǐng)域廣泛應(yīng)用[1-3]。線結(jié)構(gòu)光測(cè)量系統(tǒng)的硬件是線結(jié)構(gòu)光視覺(jué)傳感器(LSLVS),由工業(yè)相機(jī)和激光組成,影響系統(tǒng)精度的主要原因是線激光平面的標(biāo)定,因此光平面標(biāo)定是LSLVS標(biāo)定的關(guān)鍵。

線結(jié)構(gòu)光平面標(biāo)定根據(jù)標(biāo)定靶標(biāo)可以分為1D靶標(biāo)、2D靶標(biāo)、3D靶標(biāo)。3D靶標(biāo)由于要求高精度,且制造成本高,因此應(yīng)用一直受到限制。1D靶標(biāo)和2D靶標(biāo)可以自由移動(dòng),應(yīng)用廣泛。周富強(qiáng)等[4]提出的基于一維靶標(biāo)的光平面標(biāo)定可以現(xiàn)場(chǎng)實(shí)現(xiàn)LSLVS的大視場(chǎng)標(biāo)定,但是靶標(biāo)每次只能獲取激光平面里的一個(gè)特征點(diǎn),導(dǎo)致效率不高。陳新禹等[5]提出一種基于單個(gè)同心圓標(biāo)定的方法,通過(guò)P3P和交比原理計(jì)算三維特征點(diǎn)坐標(biāo),利用最小二乘法進(jìn)行平面擬合。洪磊等[6]提出了一種基于單應(yīng)性矩陣的標(biāo)定方法,與交比不變法相比,該方法獲取標(biāo)定點(diǎn)的效率高,靶標(biāo)設(shè)計(jì)簡(jiǎn)單、通用性強(qiáng),定位準(zhǔn)確度為±0.473 mm。王春梅等[7]提出一種基于直角方框共線圓點(diǎn)靶標(biāo)的標(biāo)定方法,只要使光平面與靶標(biāo)圓點(diǎn)中心平面在同一平面就可一次性標(biāo)定光平面,精度較高,不足之處在于采集圖像時(shí)需要調(diào)整相機(jī)的位置,且對(duì)位置的要求高,拍攝的光條輪廓為銳角時(shí)求解過(guò)程繁瑣且易出錯(cuò)。王華等[8]針對(duì)標(biāo)定存在精度低、局限性大等問(wèn)題,提出一種空間高精度線結(jié)構(gòu)光直接標(biāo)定法,標(biāo)定后沿x方向的平均絕對(duì)測(cè)量誤差為0.015 6 mm,z方向?yàn)?.017 4 mm。魏一等[9]直接利用光條像素坐標(biāo)求光條點(diǎn)在相機(jī)坐標(biāo)系的三維坐標(biāo),從而擬合平面?;诮槐鹊姆椒ㄊ芟抻谔卣鼽c(diǎn)數(shù)量而影響平面擬合的精度。張瑞峰等[10]采用較多的特征點(diǎn)對(duì)光平面進(jìn)行擬合,通過(guò)求取圖像的任意光條中心與相機(jī)光心構(gòu)成的直線和靶標(biāo)平面之間的交點(diǎn),改變靶物位姿獲得更多特征點(diǎn)來(lái)完成標(biāo)定,不足之處是易受噪音干擾。于龍龍等[11]先獲得圖像光條直線與相機(jī)光心形成的平面方程,再讓這個(gè)平面與靶物平面相交能夠得到空間直線方程,通過(guò)多條空間直線擬合出激光平面。胡增等[12]提出基于消隱點(diǎn)的激光平面參數(shù)標(biāo)定法,只需獲得一組平移運(yùn)動(dòng)的靶標(biāo)就能夠標(biāo)定出參數(shù),精度與標(biāo)定效率均較高,但受限于魯棒性不高。

針對(duì)以上方法的局限性,本文提出一種LSLVS的參數(shù)標(biāo)定方法。此方法在相機(jī)坐標(biāo)系下利用相機(jī)標(biāo)定出的內(nèi)外參數(shù)來(lái)標(biāo)定靶標(biāo)平面及光心與光條構(gòu)成平面的兩個(gè)法向量,從而得到激光光條的若干特征點(diǎn),最后利用多組特征點(diǎn)擬合出光平面。本文方法不僅提高了棋盤格角點(diǎn)的定位精度,而且也提高了LSLVS的精度。

1 基本原理

1.1 角點(diǎn)檢測(cè)原理

在對(duì)棋盤格進(jìn)行角點(diǎn)檢測(cè)和定位時(shí),傳統(tǒng)方法通常是先通過(guò)findChessboardCorners角點(diǎn)檢測(cè)器檢測(cè)粗角點(diǎn),再使用find4quadcornersubpix角點(diǎn)檢測(cè)器提取亞像素角點(diǎn),但是這兩個(gè)檢測(cè)器提取角點(diǎn)的速度太慢,且對(duì)圖像的質(zhì)量要求較高,魯棒性一般。

DUDA等[13]提出的新的棋盤格角點(diǎn)精確檢測(cè)和定位方法遵循的是基于中心線的角點(diǎn)模型(如圖1所示),需要計(jì)算沿中心線穿過(guò)亮區(qū)的所有像素的積分高于沿另一條中心線穿過(guò)暗區(qū)的像素的積分,若P點(diǎn)剛好為棋盤格的角點(diǎn),那么這兩個(gè)積分之間的差滿足最大。

圖1 基于中心線的連接模型

(1)

式中:Rflocal[x,y,α]函數(shù)為局部Radon變換,目的是為給定像素坐標(biāo)(x,y)周圍的所有可能中心線提供積分;fc[x,y]是用來(lái)計(jì)算給定像素點(diǎn)(x,y)周圍所有可能中心線的最大積分值和最小積分值差的平方的函數(shù),m指定圖像中的角點(diǎn)預(yù)計(jì)有多大。通過(guò)最小-最大搜索將圖像轉(zhuǎn)換為響應(yīng)圖就可識(shí)別棋盤角點(diǎn),與Harris探測(cè)器響應(yīng)圖[14]不同,它是在圖像平面的x和y方向上圍繞選定點(diǎn)旋轉(zhuǎn)。在響應(yīng)圖中確定局部極大值后,可以通過(guò)亞像素峰值算法估計(jì)相應(yīng)角點(diǎn)的亞像素位置。此方法不僅能夠保持高亞像素精度,而且對(duì)低對(duì)比度和圖像噪聲具有更好的魯棒性。

1.2 Huber Loss

當(dāng)前,在對(duì)數(shù)據(jù)進(jìn)行直線擬合處理時(shí),經(jīng)常使用的損失函數(shù)是L2損失和L1損失。L2損失對(duì)異常點(diǎn)敏感,隨著數(shù)據(jù)誤差的增加,其損失是呈平方增加的,這將使損失函數(shù)的值增加,進(jìn)而導(dǎo)致擬合出來(lái)的直線偏離正常數(shù)據(jù),因此L2損失函數(shù)的魯棒性較差。

(2)

式中:e表示生成數(shù)據(jù)與真實(shí)值的殘差,下同。

L1損失的值呈線性增加,比L2損失要更加魯棒,但是其在0處是不可導(dǎo)的,因此對(duì)數(shù)據(jù)優(yōu)化比較困難。

s(e)=|e|

(3)

Huber損失[15]繼承了L2損失和L1損失的優(yōu)點(diǎn),對(duì)數(shù)據(jù)中的異常點(diǎn)沒(méi)有L2損失那么敏感,并且在每一處都可導(dǎo)。如圖2所示,Huber損失在本質(zhì)上是絕對(duì)誤差,只是在誤差很小時(shí),就變?yōu)槠椒秸`差。誤差降到多小時(shí)變?yōu)槎握`差由超參數(shù)τ來(lái)控制,當(dāng)殘差e在[-τ,τ]之間時(shí),等價(jià)為L(zhǎng)2損失,而在[-∞,τ]和[τ,+∞]時(shí)等價(jià)為L(zhǎng)1損失。

圖2 τ=1時(shí)3種損失函數(shù)曲線圖

(4)

2 標(biāo)定方法

2.1 相機(jī)標(biāo)定

在機(jī)器視覺(jué)中,要確定世界坐標(biāo)系(O-XwYwZw)與圖像像素坐標(biāo)系(U-O-V)之間的轉(zhuǎn)換關(guān)系,就必須對(duì)相機(jī)的參數(shù)進(jìn)行標(biāo)定。目前經(jīng)典且高效的方法是張氏標(biāo)定法[16]:

(5)

2.2 法向量標(biāo)定

線結(jié)構(gòu)光三維測(cè)量模型如圖3所示,Oc為相機(jī)坐標(biāo)系原點(diǎn)(即光心);L為線激光投射在靶標(biāo)平面的光條;L′為激光條紋在像素坐標(biāo)系下的成像。

圖3 線結(jié)構(gòu)光三維測(cè)量模型

在二維圖像中,某條直線的方程可以表示為:

(6)

先提取圖像的激光光條中心點(diǎn)的像素坐標(biāo),然后對(duì)提取的中心點(diǎn)使用Huber Loss進(jìn)行直線擬合,得到直線方程的向量表示:

(7)

式中:(u0,v0)為直線方程中的一點(diǎn),(m,n)為直線的方向向量。聯(lián)立式(6)、式(7)可以推出α=n,β=-m,γ=m·v0-n·u0。

在相機(jī)坐標(biāo)系下的空間直線與相機(jī)光心構(gòu)成一個(gè)平面,此平面過(guò)相機(jī)坐標(biāo)系原點(diǎn),故這個(gè)平面方程的常數(shù)項(xiàng)系數(shù)為0,如圖3所示,假設(shè)這個(gè)平面的法向量為no=(A0,B0,C0)T,則此平面的方程可以表示為:

(8)

對(duì)式(6)的像素坐標(biāo)進(jìn)行一個(gè)空間變換,將其轉(zhuǎn)換到相機(jī)坐標(biāo)系后可表示為:

(9)

即:

(10)

聯(lián)立式(8)和式(10)可以得到此平面的法向量:

(11)

把世界坐標(biāo)系建在棋盤格靶標(biāo)平面上,其坐標(biāo)原點(diǎn)與棋盤格第一個(gè)角點(diǎn)重合,Z軸垂直于靶標(biāo)平面(如圖3所示)。取靶標(biāo)平面的法向量nw=(0,0,1)T,平面靶標(biāo)上的第一個(gè)特征點(diǎn)p0=(0,0,0),其在相機(jī)坐標(biāo)系下的坐標(biāo)為pc0=(x0,y0,z0),因此靶標(biāo)平面在相機(jī)坐標(biāo)系下的法向量:

nc=[r1r2r3]·nw=r3

(12)

特征點(diǎn)的坐標(biāo)為:

(13)

故靶標(biāo)平面在相機(jī)坐標(biāo)系下的方程可以表示為:

(14)

至此兩個(gè)平面的法向量均已標(biāo)定,并且統(tǒng)一到了相機(jī)坐標(biāo)系下。將獲得的兩個(gè)法向量進(jìn)行叉乘,即可求得在相機(jī)坐標(biāo)系下兩平面相交的空間直線的點(diǎn)向式方程:

(15)

式中:(a,b,c)為相機(jī)坐標(biāo)系下空間直線的方向向量,(xp,yp,zp)為此空間直線上的一點(diǎn),可由式(8)與式(14)得到。

2.3 光平面標(biāo)定

采集棋盤靶標(biāo)在不同位姿下的圖像,通過(guò)式(15)可以獲得在相機(jī)坐標(biāo)系下的若干條空間直線。最后通過(guò)最小二乘法對(duì)這些空間坐標(biāo)擬合出激光平面[17],從而求得激光平面方程:

AC·XC+BC·YC+CC·ZC+DC=0

(16)

式中:AC、BC、CC、DC為相機(jī)坐標(biāo)系下激光平面方程的系數(shù),為方便計(jì)算設(shè)DC=1。

采集的圖像經(jīng)過(guò)相機(jī)標(biāo)定后可以獲得像素坐標(biāo)系與相機(jī)坐標(biāo)系之間的投影關(guān)系:

(17)

相機(jī)內(nèi)參K即為投影矩陣,聯(lián)立式(16)與式(17)能夠得到像素坐標(biāo)(u,v)對(duì)應(yīng)相機(jī)坐標(biāo)系下的空間坐標(biāo)(XC,YC,ZC)的具體計(jì)算表達(dá)式:

(18)

至此,線結(jié)構(gòu)光傳感器參數(shù)標(biāo)定完成,通過(guò)圖像中的激光條紋中心能夠獲得物體表面在相機(jī)坐標(biāo)系下的三維成像。

3 實(shí)驗(yàn)與分析

實(shí)驗(yàn)所用平臺(tái)如圖4所示,傳感器中的一字線激光波長(zhǎng)為650 nm,功率100 mW,工作電壓為DC 12 V。相機(jī)選用某公司的MV-HS510GC工業(yè)相機(jī),分辨率為2000 ×2000 pixel,鏡頭為手動(dòng)聚焦的定焦鏡頭BT-23C0814MP5,焦距為8 mm。參照物選擇內(nèi)角點(diǎn)為11×8的棋盤格。

圖4 實(shí)驗(yàn)平臺(tái)

標(biāo)定激光平面的完整流程如下:

步驟1:拍攝激光照射在棋盤格空白區(qū)域的圖像,改變棋盤格位姿,理論上2幅圖像就能滿足要求,為提高擬合的精度,一共采集12幅有效圖像;

步驟2:使用高精度亞像素角點(diǎn)檢測(cè)方法[13]對(duì)圖像進(jìn)行角點(diǎn)檢測(cè)和定位,然后對(duì)相機(jī)使用張正友標(biāo)定法獲得相機(jī)內(nèi)外參數(shù);

步驟3:使用基于Hessian的Steger算法對(duì)所采集的圖像的激光條紋中心進(jìn)行提取[18],然后通過(guò)Huber Loss[15]函數(shù)對(duì)中心點(diǎn)進(jìn)行直線擬合,得到圖像光條直線的某一點(diǎn)及方向向量;

步驟4:利用相機(jī)的內(nèi)外參分別求出在相機(jī)坐標(biāo)系下棋盤格平面的法向量及圖像光條直線與光心所構(gòu)成平面的法向量,然后求這兩個(gè)平面相交形成的空間直線的點(diǎn)向式方程;

步驟5:重復(fù)步驟3和步驟4,能夠得到相機(jī)坐標(biāo)系下12條空間直線點(diǎn)向式方程。每條直線在Y軸方向等距提取若干空間特征點(diǎn),將所獲得的特征點(diǎn)應(yīng)用最小二乘法進(jìn)行平面擬合。

為驗(yàn)證本文所提方法的有效性,采用文獻(xiàn)[10-11]以及本文所提算法使用同一組實(shí)驗(yàn)圖像對(duì)LSLVS進(jìn)行標(biāo)定,得到的激光平面方程如表1所示。

表1 光平面標(biāo)定結(jié)果

從表1能夠看出,本文方法與文獻(xiàn)[10-11]方法的標(biāo)定結(jié)果非常接近,因此本文所提方法是可行的。為了確定本文所提方法的傳感器系統(tǒng)精度如何,使用表1中標(biāo)定的3個(gè)平面方程分別對(duì)圖5所示長(zhǎng)度為7±0.06 mm的標(biāo)準(zhǔn)量塊生成點(diǎn)云。

圖5 量塊圖像

然后進(jìn)行5次對(duì)比測(cè)量,得到的測(cè)量結(jié)果如表2所示。

表2 量塊測(cè)量結(jié)果

可以看出,本文標(biāo)定的LSLVS所測(cè)量量塊的平均測(cè)量誤差約為0.036 mm,測(cè)量的精度高于文獻(xiàn)[10]的方法,其原因一方面是文獻(xiàn)[10]方法在圖像光條中心點(diǎn)提取與實(shí)際中心點(diǎn)有偏差時(shí),光心與歸一化平面中心點(diǎn)所構(gòu)成的射線與靶標(biāo)平面相交時(shí)形成的特征點(diǎn)的偏差會(huì)進(jìn)一步被放大。另一方面,本文使用的角點(diǎn)檢測(cè)算法對(duì)噪聲更魯棒,損失函數(shù)在誤差很小時(shí)變?yōu)槠椒秸`差。雖然本文方法的平均測(cè)量誤差比文獻(xiàn)[11]方法略高,但也在標(biāo)準(zhǔn)量塊的尺寸偏差范圍之內(nèi)。

4 結(jié)論

本文提出了一種線結(jié)構(gòu)光視覺(jué)傳感器標(biāo)定方法,通過(guò)標(biāo)定兩個(gè)平面的法向量,從而得到這兩平面相交的空間直線方向向量,改變靶標(biāo)位姿能夠獲得多條空間直線的方向向量,最后在每條直線上等距取點(diǎn)進(jìn)行激光平面擬合。首先,本文方法獲得了較多的特征點(diǎn),解決了傳統(tǒng)方法特征點(diǎn)少導(dǎo)致系統(tǒng)精度低的問(wèn)題。其次,基于快速角點(diǎn)檢測(cè)算法與損失函數(shù),提升了系統(tǒng)標(biāo)定的速度與抗干擾能力。實(shí)驗(yàn)表明此方法魯棒性較好,能夠適應(yīng)較復(fù)雜的環(huán)境。但此方法在曝光不足時(shí)存在特征點(diǎn)識(shí)別不準(zhǔn)確,曝光過(guò)度時(shí)存在激光光條提取出錯(cuò)的情況,這也是下一步需要解決的難題。

猜你喜歡
角點(diǎn)靶標(biāo)標(biāo)定
“百靈”一號(hào)超音速大機(jī)動(dòng)靶標(biāo)
使用朗仁H6 Pro標(biāo)定北汽紳寶轉(zhuǎn)向角傳感器
納米除草劑和靶標(biāo)生物的相互作用
基于FAST角點(diǎn)檢測(cè)算法上對(duì)Y型與X型角點(diǎn)的檢測(cè)
基于勻速率26位置法的iIMU-FSAS光纖陀螺儀標(biāo)定
基于邊緣的角點(diǎn)分類和描述算法
電子科技(2016年12期)2016-12-26 02:25:49
復(fù)雜場(chǎng)景中航天器靶標(biāo)的快速識(shí)別
船載高精度星敏感器安裝角的標(biāo)定
基于圓環(huán)模板的改進(jìn)Harris角點(diǎn)檢測(cè)算法
前列腺特異性膜抗原為靶標(biāo)的放射免疫治療進(jìn)展
青浦区| 喀喇| 准格尔旗| 商洛市| 聂拉木县| 会昌县| 鄂伦春自治旗| 齐河县| 碌曲县| 石狮市| 微山县| 洛扎县| 昌平区| 彭泽县| 怀化市| 崇信县| 莫力| 临潭县| 汶川县| 本溪| 山阳县| 尼玛县| 长垣县| 通辽市| 太谷县| 通河县| 丰台区| 拉萨市| 东安县| 石泉县| 满洲里市| 沅陵县| 凤翔县| 晋江市| 泗水县| 盐源县| 天祝| 宜兰县| 凤山市| 临夏县| 岗巴县|