《HALCON數(shù)字圖像處理》課件-第11章 標(biāo)定_第1頁
《HALCON數(shù)字圖像處理》課件-第11章 標(biāo)定_第2頁
《HALCON數(shù)字圖像處理》課件-第11章 標(biāo)定_第3頁
《HALCON數(shù)字圖像處理》課件-第11章 標(biāo)定_第4頁
《HALCON數(shù)字圖像處理》課件-第11章 標(biāo)定_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

11.111.211.311.411.5標(biāo)定的目的標(biāo)定理論HALCON標(biāo)定流程HALCON標(biāo)定助手標(biāo)定應(yīng)用例程之二維測量第11章

標(biāo)定HALCON數(shù)字圖像處理11.1

標(biāo)定的目的

相機(jī)需要標(biāo)定的原因之一就是鏡頭畸變。所有光學(xué)相機(jī)鏡頭都存在畸變的問題,畸變屬于成像的幾何失真,它是由于焦平面上不同區(qū)域?qū)τ跋竦姆糯舐什煌纬傻漠嬅媾で冃维F(xiàn)象,這種變形的程度從畫面中心至畫面邊緣依次遞增,主要在畫面邊緣反映的較為明顯。所以相機(jī)標(biāo)定就是為了消除相機(jī)鏡頭在拍攝過程中產(chǎn)生的畸變。鏡頭畸變分類:桶形畸變和枕形畸變,也有的分為徑向畸變和梯形畸變。HALCON數(shù)字圖像處理鏡頭畸變的幾種類型(a)枕形畸變

(b)無畸變(c)桶形畸變(a)遠(yuǎn)心鏡頭零畸變(b)普通鏡頭徑向畸變(c)普通鏡頭梯形畸變HALCON數(shù)字圖像處理11.2

標(biāo)定理論坐標(biāo)系的轉(zhuǎn)換標(biāo)定的內(nèi)外參數(shù)HALCON數(shù)字圖像處理1、坐標(biāo)系的轉(zhuǎn)換在圖像測量、定位過程以及其它機(jī)器視覺應(yīng)用中,為確定空間物體表面某點(diǎn)的三維幾何位置與其在圖像中對應(yīng)點(diǎn)之間的相互關(guān)系,必須建立相機(jī)成像的幾何模型,這些幾何模型參數(shù)就是相機(jī)參數(shù)。這個求解參數(shù)的過程就稱之為相機(jī)標(biāo)定。求解出鏡頭的畸變參數(shù),就可以把有畸變的圖像變換到?jīng)]有畸變狀態(tài)的圖像。HALCON數(shù)字圖像處理針孔相機(jī)模型基于針孔成像原理建立的相機(jī)成像模型。在相機(jī)的成像模型中,包含有幾個坐標(biāo)系:世界坐標(biāo)系、相機(jī)坐標(biāo)系、圖像坐標(biāo)系。相機(jī)成像過程的數(shù)學(xué)模型就是目標(biāo)點(diǎn)在這幾個坐標(biāo)系中的轉(zhuǎn)化過程。HALCON數(shù)字圖像處理三種坐標(biāo)系定義在計(jì)算機(jī)視覺中常采用右手定則來定義上圖中的坐標(biāo)系。圖中存在三個不同層次坐標(biāo)系,以下是對這三種坐標(biāo)系的定義。1.世界坐標(biāo)系(Xw,Yw,Zw)就是現(xiàn)實(shí)坐標(biāo)系,或全局坐標(biāo)系,它是客觀世界的絕對坐標(biāo),由用戶任意定義的三維空間坐標(biāo)系,一般的3D場景用的就是這種坐標(biāo)(HALCON標(biāo)定中以標(biāo)定板為參考坐標(biāo)系基準(zhǔn))。2.相機(jī)坐標(biāo)系(Xc,Yc)以小孔相機(jī)模型針孔平面上的聚焦中心為原點(diǎn),以相機(jī)光軸為Zc構(gòu)成三維坐標(biāo)系,其中Xc、Yc與成像平面坐標(biāo)系平行。HALCON數(shù)字圖像處理3.圖像坐標(biāo)系:分為成像平面坐標(biāo)系和圖像像素坐標(biāo)系。成像平面坐標(biāo)系(x,y):其原點(diǎn)為透鏡光軸與成像平面交點(diǎn),X、Y軸分別平行于相機(jī)坐標(biāo)系Xc軸和Yc軸,是平面直角坐標(biāo)系,單位mm。圖像像素坐標(biāo)系(u,v):固定在圖像上的以像素為單位的平面直角坐標(biāo)系,其原點(diǎn)位于圖像左上角,其橫縱兩軸(對于數(shù)字圖像,是行和列)分別平行于成像平面坐標(biāo)系的橫、縱坐標(biāo)軸X、Y,這個也是HALCON中表示圖像坐標(biāo)系的方法。三種坐標(biāo)系定義成像平面上的投影點(diǎn)(點(diǎn)q)的變化過程

上圖是將相機(jī)平面移至針孔與目標(biāo)物體之間后的模型示意圖,描述的是在這個移動過程中,成像平面上的投影點(diǎn)(點(diǎn)q)的變化情況。

根據(jù)空間一點(diǎn)成像到圖像平面上的路線,先由世界坐標(biāo)系變換到相機(jī)坐標(biāo)系,然后又由相機(jī)坐標(biāo)系變換到成像坐標(biāo)系,但是這個過程有畸變,需要進(jìn)行變換處理,再由成像平面坐標(biāo)系變換到圖像像素坐標(biāo)系。HALCON數(shù)字圖像處理

空間點(diǎn)Pw(Xw,Yw,Zw)轉(zhuǎn)換到點(diǎn)P(Xc,Yc,Zc):

式中,R是旋轉(zhuǎn)矩陣,T是平移向量。

每一個世界坐標(biāo)的對象都可以通過旋轉(zhuǎn)和平移變換到相機(jī)坐標(biāo)系上(旋轉(zhuǎn)過程如下圖)。將目標(biāo)點(diǎn)旋轉(zhuǎn)θ角度,等價于將坐標(biāo)系按相反的方向旋轉(zhuǎn)θ角度。如下圖所示,是二維坐標(biāo)的旋轉(zhuǎn)變換,對于三維坐標(biāo)而言,旋轉(zhuǎn)中繞某一個軸旋轉(zhuǎn),原理與二維坐標(biāo)旋轉(zhuǎn)相同。如果世界坐標(biāo)分別繞X、Y和Z軸旋轉(zhuǎn)α、β、γ,那么旋轉(zhuǎn)矩陣分別為。從世界坐標(biāo)系到相機(jī)坐標(biāo)系HALCON數(shù)字圖像處理總的旋轉(zhuǎn)矩陣,也就是三者的乘積。平移矩陣

,

是世界坐標(biāo)系原點(diǎn)與相機(jī)坐標(biāo)系目標(biāo)點(diǎn)之間的差值。HALCON數(shù)字圖像處理從相機(jī)坐標(biāo)系到圖像坐標(biāo)系屬于透視投影變換關(guān)系,即將3D圖像信息轉(zhuǎn)換成2D圖像信息。其中點(diǎn)P是相機(jī)坐標(biāo)系中的點(diǎn),點(diǎn)p(x,y)是像極坐標(biāo)系中的點(diǎn)P在圖像坐標(biāo)系上的投影點(diǎn)??傻萌缦伦鴺?biāo)轉(zhuǎn)換矩陣:此時投影點(diǎn)p的單位還是mm,并不是pixel(像素),需要進(jìn)一步轉(zhuǎn)換到像素坐標(biāo)系。相機(jī)坐標(biāo)系到圖像坐標(biāo)系HALCON數(shù)字圖像處理圖像像素坐標(biāo)系u-v是以圖像左上角為原點(diǎn),以圖像互為直角的兩個邊緣為坐標(biāo)軸,滿足右手準(zhǔn)則而建立的。圖像由一個個小的像素點(diǎn)組成,圖像像素坐標(biāo)系的橫縱坐標(biāo)正是以像素點(diǎn)為單位,用來描述圖像中每一個像素點(diǎn)在圖像中的位置。圖像成像坐標(biāo)系以光軸與像平面交點(diǎn)為原點(diǎn)建立,圖像成像坐標(biāo)系的兩個坐標(biāo)軸分別與圖像像素坐標(biāo)系的坐標(biāo)軸平行,并且方向相同。圖像成像坐標(biāo)系到圖像像素坐標(biāo)系HALCON數(shù)字圖像處理如圖所示,圖像成像坐標(biāo)系是以毫米為單位的直角坐標(biāo)系X-Y。用(Xf,Yf)來描述圖像像素坐標(biāo)系中的點(diǎn),用(Xd,Yd)來描述圖像成像坐標(biāo)系中的點(diǎn)。圖像成像坐標(biāo)系的原點(diǎn)O在圖像像素坐標(biāo)系中的坐標(biāo)為(Cx,Cy),用dx、dy來表示相鄰像素點(diǎn)中心在X軸方向和Y軸方向的實(shí)際物理距離。圖像成像坐標(biāo)系到圖像像素坐標(biāo)系圖像像素坐標(biāo)系的轉(zhuǎn)化關(guān)系2、標(biāo)定的內(nèi)外參數(shù)外部參數(shù):由前面可知,相機(jī)的外部參數(shù)是用來描述相機(jī)坐標(biāo)系與世界坐標(biāo)系的關(guān)系,它表明相機(jī)在世界坐標(biāo)系中的位置和方位,可用旋轉(zhuǎn)矩陣和平移向量來表示。實(shí)質(zhì)上旋轉(zhuǎn)矩陣只有三個獨(dú)立參數(shù),加上平移向量的三個參數(shù),故一共有6個獨(dú)立的外部參數(shù)。內(nèi)部參數(shù):內(nèi)部參數(shù)只與相機(jī)內(nèi)部結(jié)構(gòu)有關(guān),而與相機(jī)位置參數(shù)無關(guān),主要包括圖像主點(diǎn)坐標(biāo)

(圖像與相機(jī)光軸相交的點(diǎn)),單個像元的高寬

,相機(jī)的有效焦距f和透鏡的畸變失真系數(shù)k等。主點(diǎn)坐標(biāo)

,理論上位于圖像中心處,但實(shí)際上由于相機(jī)制作的精度和使用過程中相機(jī)鏡頭可以轉(zhuǎn)動和拆卸等原因,使得面陣相機(jī)并不能保證其中心為透鏡光軸,且圖像采集數(shù)字化窗口的中心不一定與光學(xué)中心重合,這就使得主點(diǎn)不一定在圖像的中心,故而需要標(biāo)定。。單個像元的高、寬理論上應(yīng)該是相等的,但是由于制造的誤差,兩者不可能完全相等,因此需要根據(jù)實(shí)際情況對其進(jìn)行修正。HALCON數(shù)字圖像處理11.3HALCON標(biāo)定流程相機(jī)參數(shù)確定HALCON標(biāo)定板規(guī)格生成標(biāo)定板HALCON數(shù)字圖像處理1、相機(jī)參數(shù)確定

相機(jī)分兩種,一種是面掃描相機(jī),也稱面陣相機(jī)(AreaScanCamera),一種是線掃描相機(jī),也稱線陣相機(jī)(LineScanCamera)。準(zhǔn)確來說,所謂的面掃描攝像系統(tǒng)是指可以通過單純曝光取得面積影像,而線掃描攝像系統(tǒng),必須保證相機(jī)和目標(biāo)是相對運(yùn)動的,然后利用相對運(yùn)動速度才能取得影像。(1)初始相機(jī)參數(shù):startCamPar:=[f,k,Sx,Sy,Cx,Cy,NumCol,NumRow]f-焦距、k-初始為0.0195、Sx-兩個相鄰像素點(diǎn)的水平距離、Sy-兩個相鄰像素點(diǎn)的垂直距離、Cx、Cy-圖像中心點(diǎn)的位置、NumCol、NumRow-圖像長和寬。

HALCON數(shù)字圖像處理(2)caltab_points,讀取標(biāo)定板描述文件里面描述的點(diǎn)(X,Y,Z),描述文件由gen_caltab生成。(3)find_caltab,找到標(biāo)定板的位置。(4)find_marks_and_pose,輸出標(biāo)定點(diǎn)的位置和外參startpose。(5)camera_calibration,輸出內(nèi)參和所有外部參數(shù)。HALCON數(shù)字圖像處理2、HALCON標(biāo)定板規(guī)格(1)30*30規(guī)定的標(biāo)定板的規(guī)格(2)40*40規(guī)定的標(biāo)定板的規(guī)格(3)50*50規(guī)定的標(biāo)定板的規(guī)格(4)60*60規(guī)定的標(biāo)定板的規(guī)格以30*30規(guī)定的標(biāo)定板的規(guī)格為例:

黑色圓點(diǎn)行數(shù):7

黑色圓點(diǎn)列數(shù):7

外邊框長度:30mm*30mm

內(nèi)邊框長度:28.125mm*28.125mm

,即黑色邊框線寬為一個圓點(diǎn)半徑(0.9375)

黑色圓點(diǎn)半徑:0.9375mm

圓點(diǎn)中心間距:3.75mm

裁剪寬度:30.75mm*30.75mm

,即由黑色邊框向外延伸0.375mm

邊角:由黑色外邊框向內(nèi)縮進(jìn)一個中心邊距的長度HALCON數(shù)字圖像處理3、生成標(biāo)定板(1)方法一:用HALCON軟件自動生成的.ps文件來制作標(biāo)定板,這個也是最簡單有效的方法。打開HALCON軟件,調(diào)用算子:gen_caltab(::XNum,YNum,MarkDist,DiameterRatio,CalTabDescrFile,CalTabPSFile:)具體參數(shù)如下:XNum:每行黑色標(biāo)志圓點(diǎn)的數(shù)量。YNum:每列黑色標(biāo)志圓點(diǎn)的數(shù)量。MarkDist:兩個就近黑色圓點(diǎn)中心之間的距離。DiameterRatio:黑色圓點(diǎn)半徑與圓點(diǎn)中心距離的比值。CalTabDescrFile:標(biāo)定板描述文件的文件路徑(.descr標(biāo)定板描述文件)。CalTabPSFile:標(biāo)定板圖像文件的文件路徑(.ps標(biāo)定板圖形文件)。HALCON數(shù)字圖像處理(2)方法二:用HALCON軟件自動生成的.descr文件來制作標(biāo)定板。打開HALCON,輸入算子gen_caltab,打開如圖11-10所示的算子窗口,生成一個.descr的文件,點(diǎn)擊打開文件夾,會看到.descr文件,然后用寫字板打開(注意要用寫字板,記事本打開會有一些數(shù)據(jù)不可見)。HALCON數(shù)字圖像處理11.4HALCON標(biāo)定助手1、標(biāo)定注意事項(xiàng)HALCON中的標(biāo)定助手為圖像處理提供了一種很簡便的標(biāo)定方式,不僅簡化了標(biāo)定步驟,也省去了繁瑣的編程過程,我們只需要采集到符合標(biāo)定標(biāo)準(zhǔn)的標(biāo)定板圖像,了解設(shè)備的參數(shù)信息,比如相機(jī)類型、標(biāo)定板厚度等。(1)標(biāo)定板材質(zhì)選用玻璃或者陶瓷材質(zhì)為最好。(2)光源盡量在標(biāo)定板前方,在與相機(jī)相反的方向。(3)標(biāo)定板采集圖像盡量在12幅以上,數(shù)量越多,所得的參數(shù)就越精確。(4)為了保證參數(shù)的精確性,要保證標(biāo)定板的四角全部在視野范圍內(nèi)。主要是因?yàn)橐话銟?biāo)定板的四角畸變量比較大,需要通過四角的畸變程度獲得準(zhǔn)確的畸變系數(shù)。(5)要保證標(biāo)定板的標(biāo)志點(diǎn)灰度值與其背景灰度值的差值在100以上,否則HALOCN會提示有品質(zhì)問題。HALCON數(shù)字圖像處理標(biāo)定板圖像(a)(b)(c)(d)HALCON數(shù)字圖像處理2、

HALCON標(biāo)定助手標(biāo)定過程步驟1:打開標(biāo)定助手,設(shè)定描述文件,標(biāo)定板厚度,相機(jī)類型、焦距等參數(shù)。圖中,表示Sx和Sy按照1:1的關(guān)系關(guān)聯(lián),同步調(diào)節(jié),因?yàn)槊骊囅鄼C(jī)的像元一般是方形的,寬和高是一樣的。如果取消關(guān)聯(lián),那么Sx和Sy可以異步調(diào)節(jié)。步驟2:加載圖像,可以實(shí)時采集,也可以采集好后再一起標(biāo)定,建議先采集后標(biāo)定。圖中所示加載標(biāo)定板圖像的窗口,還需要將其中的一幅圖像設(shè)置為參考位姿。HALCON數(shù)字圖像處理步驟3:在采集圖片合格后,點(diǎn)擊上一步驟圖中的“標(biāo)定”按鈕,標(biāo)定結(jié)果就出來了,如圖所示,在這一步的窗口中,會有標(biāo)定之后的相機(jī)內(nèi)外參數(shù)等標(biāo)定結(jié)果。步驟4:生成代碼,在標(biāo)定完成之后,可以選擇生成代碼。HALCON數(shù)字圖像處理11.5標(biāo)定應(yīng)用例程之二維測量

采用HALCON標(biāo)定助手生成的代碼只能獲取相機(jī)的內(nèi)外參數(shù),對于實(shí)際應(yīng)用還需要進(jìn)一步處理,完成的標(biāo)定代碼是更加復(fù)雜的,包含內(nèi)外參數(shù)的獲取、將圖像坐標(biāo)轉(zhuǎn)換到世界坐標(biāo)系、獲取像素實(shí)際物理距離、生成用于矯正的Map圖像、將畸變圖像矯正等。在之前,我們已經(jīng)介紹了HALCON標(biāo)定助手的使用,并且學(xué)習(xí)了相關(guān)算子。接下來我們通過這些算子進(jìn)行圖像的校正,然后再測量出圖像中劃痕的長度。HALCON數(shù)字圖像處理應(yīng)用例程中的相關(guān)算子1.創(chuàng)建標(biāo)定數(shù)據(jù)模型,用于儲存標(biāo)定數(shù)據(jù),標(biāo)定描述文件,標(biāo)定過程中的設(shè)置

CalibSetup;NumCameras;NumCalibObjects;CalibDataID。2.設(shè)置相機(jī)參數(shù)和相機(jī)類型CalibDataID;CameraIdx;CameraType;CameraParam。3.在標(biāo)定模型中指定標(biāo)定板所使用的標(biāo)定板描述文件CalibDataID;CalibObjIdx;CalibObjDescr。4.圖像中尋找標(biāo)定板所在區(qū)域CalPlate;CalPlateDescr;SizeGauss;MarkThresh;MinDiamMarks。5.獲得標(biāo)定板黑圓點(diǎn)的信息和預(yù)估外參數(shù)StartCamParam;StartThresh;DeltaThresh;MinThresh;Alpha;MinContLength;MaxDiamMarks;RCoord,CCoord;StartPose。HALCON數(shù)字圖像處理7.設(shè)置3D坐標(biāo)原點(diǎn)PoseIn;DX,DY,DZ;PoseNewOrigin。8.生成圖像坐標(biāo)系到世界坐標(biāo)系映射Map;CameraParam;WorldPose;WidthIn,HeightIn;WidthMapped,HeightMapped;Scale;MapType。9.獲得存儲在標(biāo)定模型中的存儲數(shù)據(jù)CalibDataID;ItemType;ItemIdx;DataName;DataValue。HALCON數(shù)字圖像處理基于HALCON標(biāo)定助手的二維測量

以下是例程中用到的目標(biāo)圖像及標(biāo)定文件。其中圖(a)是待檢測圖像,圖(b)是校正檢測之后的圖像,圖(c)-(h)是標(biāo)定過程用到的一部分標(biāo)定板圖像。(a)(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論