版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第9章HALCON測量9.1機器視覺與測量9.2HALCON一維測量9.2.1一維測量過程9.2.2模糊測量9.2.3一維測量典型相關算子9.3HALCON二維測量9.3.1區(qū)域處理9.3.2輪廓處理9.3.3幾何運算9.4HALCON三維測量9.4.1雙目立體視覺測量9.4.2激光三角測量9.5HALCON測量助手HALCON編程基礎與工程應用9.1機器視覺與測量
基于機器視覺的測量原理:
基于機器視覺的檢測過程:對感興趣對象或區(qū)域進行成像,然后根據(jù)其圖像信息用圖像處理軟件進行處理,根據(jù)處理結果自動判斷檢測對象的位置、尺寸、外觀信息,并依據(jù)人為預先設定的標準進行合格與否的判斷,輸出其判斷信息給執(zhí)行機構。機器視覺檢測系統(tǒng)采用CCD相機或CMOS相機將被檢測的對象信息轉換成圖像信號,傳送給專用的圖像處理系統(tǒng),根據(jù)像素分布和亮度、顏色等信息,轉變成數(shù)字化信號,圖像處理系統(tǒng)再對這些信號進行各種運算來抽取對象的特征,如面積、數(shù)量、位置、長度,再根據(jù)預設的值和其他條件輸出結果,包括尺寸、角度、個數(shù)、合格/不合格、有/無等,實現(xiàn)自動識別功能。機器視覺在測量領域的優(yōu)勢:
機器視覺檢測系統(tǒng)的優(yōu)勢主要體現(xiàn)在非接觸測量、能夠長時間穩(wěn)定工作等。非接觸測量可以避免在測量過程中對被測對象的損壞,基于機器視覺的測量系統(tǒng)可以同時進行多項測量,實現(xiàn)測量工作的快速完成,適用于在線測量;而對于微小尺寸對象的測量也是機器視覺系統(tǒng)的長處,它可以利用高倍鏡頭放大被測對象,使得測量精度達到微米以上。相比于人工測量,機器視覺測量不僅能保證測量精度,還能保持測量的重復性和客觀性,能夠長時間穩(wěn)定工作,可以節(jié)省大量勞動力資源。事實表明,基于機器視覺技術的圖像測量具有良好的連續(xù)性和高精度,大大提高了工業(yè)在線測量的實時性和準確性,同時生產(chǎn)效率和產(chǎn)品質量控制也得到明顯提升。HALCON編程基礎與工程應用9.2HALCON一維測量
一維測量過程:構造測量對象——建立測量區(qū)域創(chuàng)建一個矩形或扇環(huán)形的ROI(測量區(qū)域),然后作等距的投影線,等距投影線與測量線或測量?。ㄒ卜Q為輪廓線)垂直,長度等于ROI的寬度。提取邊緣(對)輪廓線計算——求取投影線的平均灰度值輪廓線平滑——消除噪聲求輪廓線一階導數(shù)通過局部極值找到邊緣HALCON編程基礎與工程應用9.2HALCON一維測量
模糊測量:
模糊測量是對標準測量的一種擴展,并不是意味著測量是“模糊的”,而是用模糊隸屬函數(shù)來控制邊緣的選擇。所謂的模糊隸屬函數(shù),就是將邊緣的特征值轉化為隸屬度值,基于這些隸屬值做出是否選擇邊緣的決定,即當隸屬度值大于你設定的模糊閾值(FuzzyThresh)時,邊緣就會被選中,反之則反。舉個簡單的例子方便理解:比如在測量開關引腳之間的寬度和距離時,引腳可能會有反射(左圖),直接用一維測量會產(chǎn)生錯誤的結果(中圖),這時將“大頭針的寬度大約為9像素寬”這個信息轉化為模糊隸屬函數(shù)。比如對于預期的寬度9像素,對應的隸屬度值為1;對于與預期的大小相差3個像素以上,則隸屬度值為0,中間的值采用線性插值,即寬度為da’yu8.像素的隸屬度值就為0.67。當你設置的閾值為0.5時,那寬度為7.5-10.5像素之間的邊緣對才會被選中。通過這樣的模糊測量則可以正確測量引腳的寬度(右圖)。HALCON編程基礎與工程應用9.2HALCON一維測量
模糊測量的主要步驟為:(1)使用算子create_funct_1d_pairs創(chuàng)建模糊函數(shù);(2)使用算子set_fuzzy_measure或set_fuzzy_measure_norm_pair為模糊集指定模糊隸屬函數(shù)。注意:可以重復調用算子定義多個模糊集,但是不能對同一模糊集指定多個模糊隸屬函數(shù),指定第二個模糊函數(shù)意味著放棄第一個定義的模糊函數(shù)并將其替換為第二個模糊函數(shù)。之前為模糊集指定的模糊函數(shù)可以通過reset_fuzzy_measure刪除。(3)使用算子fuzzy_measure_pos、fuzzy_measure_pairs或fuzzy_measure_pairing提取模糊測量的邊緣對。
一維測量典型相關算子gen_measure_rectangle2:通過一個矩形創(chuàng)建一個線性測量對象gen_measure_arc:通過一個圓弧創(chuàng)建一個扇環(huán)測量對象measure_pos:提取測量區(qū)域內垂直于矩形或者扇環(huán)的邊緣measure_pairs:提取測量區(qū)域內垂直于矩形或者扇環(huán)的邊緣對measure_thresh:提取測量區(qū)域內輪廓線上具有指定灰度值的點measure_projection:提取測量區(qū)域內投影線上的一維灰度值分布HALCON編程基礎與工程應用9.2HALCON一維測量
close_measure:關閉測量對象(測量句柄)close_all_measures:關閉所有測量對象(測量句柄)write_measure:保存測量對象到文件;測量對象文件后綴是.msrread_measure:從文件中讀取測量對象translate_measure:移動測量對象到新的參考點create_funct_1d_pairs:通過一個二維數(shù)組創(chuàng)建一個離散一維函數(shù),即生成模糊函數(shù)set_fuzzy_measure:指定一個模糊函數(shù)set_fuzzy_measure_norm_pair:設置歸一化的模糊隸屬度函數(shù)fuzzy_measure_pos:提取垂直于矩形或扇環(huán)的直邊,與measure_pos不同的是,它使用模糊函數(shù)來判斷和選擇邊緣。fuzzy_measure_pairs:提取垂直于矩形或扇環(huán)的直邊對。與measure_pairs不同的是,它使用模糊函數(shù)來判斷和選擇邊緣對fuzzy_measure_pairing:提取垂直于矩形或扇環(huán)的直邊對。提取算法與fuzzy_measure_pairs相同,但其可以使用參數(shù)Pairing提取彼此相交或者包含的邊緣對。reset_fuzzy_measure:重置一個模糊函數(shù)HALCON編程基礎與工程應用9.3HALCON二維測量
區(qū)域處理
區(qū)域處理主要指的就是Blob分析,其只能提取像素精度的邊緣,主要包括四個步驟:(1)預處理;(2)圖像區(qū)域的分割;(3)區(qū)域的處理;(4)特征的提取1.預處理常用算子圖像:mean_image和binomial_filter:消除噪聲;median_image:抑制小斑點或細線;gray_opening_shape和gray_closing_shape:灰度值的開運算和閉運算;smooth_image:圖像平滑;anisotropic_diffusion:保留邊緣的圖像平滑;sub_image:圖像灰度值的相減。區(qū)域:fill_up:填充;opening_circle和opening_rectangle1:開運算,抑制噪聲;closing_circle和closing_rectangle1:閉運算,填充間隙。HALCON編程基礎與工程應用9.3HALCON二維測量
2.區(qū)域分割算子threshold;binary_threshold;auto_threshold;dyn_threshold;fast_threshold和local_threshold:分割出感興趣的區(qū)域;gray_histo;histo_to_thresh和intensity:獲得圖片的灰度值;connection:計算連通區(qū)域;watershed:分水嶺算子,根據(jù)拓撲結構來分割圖片;regiongrowing:區(qū)域生長算子,按照強度分割圖片。3.區(qū)域處理算子select_shape;select_gray:選擇有特定特征的區(qū)域;dilation_rectangle1:擴張有矩形元素的區(qū)域;union1;Union2:合并多個區(qū)域;Intersection:獲得兩區(qū)域的交集;difference:計算兩個區(qū)域的不同;complement:計算區(qū)域的補集;shape_trans:擬合區(qū)域;skeleton:計算區(qū)域的框架。HALCON編程基礎與工程應用9.3HALCON二維測量
4.特征提取算子area_center:得到區(qū)域的面積和中心坐標;smallest_circle:確定包圍區(qū)域的最小封閉圓;smallest_rectangle1:計算平行坐標軸的最小外接矩形參數(shù);smallest_rectangle2:計算區(qū)域任意方向最小外接矩形參數(shù);inner_rectangle1:計算平行于坐標軸的最大內接矩形;inner_circle:計算最大內接圓;diameter_region:計算區(qū)域邊界的最大距離;orientation_region:計算區(qū)域方向;
輪廓處理
輪廓處理適用于高精度測量,可提取像素精度邊緣或者亞像素精度的邊緣,其主要包括5個步驟:(1)創(chuàng)建輪廓;(2)選擇輪廓;(3)分割輪廓;(4)利用已知形狀擬合輪廓段;(5)提取未知輪廓的特征。1.創(chuàng)建輪廓輪廓處理從輪廓的創(chuàng)建開始,獲取輪廓的常用方法是提取邊緣。邊緣是一張圖片中亮暗區(qū)域的過渡位置,它可以由圖片梯度計算得出。HALCON編程基礎與工程應用9.3HALCON二維測量
像素精度的邊緣和線條:提取像素精度的邊緣可以使用邊緣濾波器。邊緣濾波器生成的邊緣圖像,通過閾值算子選取具有給定的最小邊緣幅度的像素提取邊緣區(qū)域,再對得到的邊緣區(qū)域進行細化,就可以得到一個像素精度的邊緣。常見的像素精度邊緣濾波器是運算速度較快的Sobel_amp和速度較慢但已經(jīng)包括閾值化和細化的edges_image,而且其結果比Sobel_amp更精確。edges_image及其在彩色圖像中對應的算子edges_color的參數(shù)Filter可以設置為“Sobel_fast”,它的速度也很快,但其只適合噪聲或紋理小,邊緣銳利的圖像。除了邊緣之外,還可以提取具有一定的寬度的細線。一般采用濾波算子bandpass_image,其結合了閾值和細化。HALCON編程基礎與工程應用9.3HALCON二維測量
亞像素精度的邊緣和線條:亞像素精度邊緣是比像素精度邊緣精度更高,即所謂的XLD輪廓。提取亞像素精度邊緣的常用算子有:edges_sub_pix:用于一般邊緣提??;edges_color_sub_pix:用于提取彩色圖像中的邊緣;zero_crossing_sub_pix:以亞像素精度提取圖像中的零交叉點提取亞像素精度細線(有一定寬度)的常用算子有:lines_gauss:一般的線提??;lines_facet:用facet模型進行線提?。籰ines_color:彩色圖像中的線提取;提取XLD輪廓的另一種快速方法是亞像素精度閾值分割,即算子thresholdold_sub_pix,其可以應用于整個圖像。HALCON編程基礎與工程應用2.選擇輪廓9.3HALCON二維測量
根據(jù)特征選擇輪廓主要算子:select_shape_xld;select_contures_xld;select_xld_point通過輪廓合并將接近的輪廓段合并成一個XLD主要算子:union_collinear_contours_xld;union_cocircular_contours_xld;union_adjacent_contours_xld;union_cotangential_contours_xld集合論算子選擇輪廓主要算子:intersection_closed_contours_xld(intersection_closed_polygons_xld);difference_closed_contours_xld(difference_closed_polygons_xld);symm_difference_closed_contours_xld(symm_difference_closed_polygons_xld);union2_closed_contours_xld(union2_closed_polygons_xld)簡化輪廓主要算子:shape_trans_xld:可以將輪廓轉換為最小的封閉圓、具有相同參數(shù)(長短軸之比和面積)的橢圓、凸區(qū)域或最小的封閉矩形(平行于坐標軸或具有任意方向)HALCON編程基礎與工程應用9.3HALCON二維測量
3.分割輪廓所獲得的輪廓通常由或多或少復雜的形狀組成。通過算子segment_contours_xld將輪廓分割成不太復雜的輪廓段(如直線、圓等)可以更容易地分析輪廓。4.利用已知形狀擬合輪廓來提取特征
將形狀基元擬合到輪廓或輪廓段以獲得它們特定的形狀參數(shù),利用擬合得到的參數(shù)可以生成相應的輪廓進行可視化或進一步處理,主要的算子有:HALCON編程基礎與工程應用fit_line_contour_xld:擬合線段fit_circle_contour_xld:擬合圓fit_ellipse_contour_xld:擬合橢圓fit_rectangle2_contour_xld:擬合矩形gen_contour_polygon_xld:生成線段gen_circle_contour_xld:生成圓gen_ellipse_contour_xld:生成橢圓gen_rectangle2_contour_xld:生成矩形9.3HALCON二維測量
HALCON編程基礎與工程應用5.提取未知輪廓的特征9.3HALCON二維測量
如果不能用已知的形狀基元來描述,HALCON提供了一些算子計算輪廓的一般特征:area_center_xld:求XLD包圍的區(qū)域的面積和重心以及邊界點的排列順序diameter_xld:計算XLD上距離最遠的兩個點的坐標及其距離elliptic_axis_xld:獲得XLD的等效橢圓參數(shù)length_xld:XLD的長度orientation_xld:XLD的方向smallest_circle_xld:獲得XLD的最小封閉圓的圓心和半徑smallest_rectangle1_xld:獲得XLD的最小包圍矩形(與坐標軸平行)的左上與右下角的坐標smallest_rectangle2_xld:獲得XLD的最小外接矩形(任意方向)的參數(shù)
幾何運算
HALCON為幾何運算提供了一系列算子,用于計算點、線、線段、輪廓或區(qū)域等元素之間的關系。HALCON編程基礎與工程應用HALCON編程基礎與工程應用點線線段輪廓區(qū)域點distance_ppdistance_pldistance_psdistance_pcdistance_pr線distance_pl–distance_sldistance_lcdistance_lr線段distance_psdistance_sldistance_ssdistance_scdistance_sr輪廓distance_pcdistance_lcdistance_scdistance_ccdistance_cc_min–區(qū)域distance_prdistance_lrdistance_sr–distance_rr_mindistance_rr_min_dilangle_ll:兩條直線之間的夾角angle_lx:直線與垂直軸的夾角get_points_ellipse:橢圓上對應特定角度的點intersection_lines:兩條直線的交點projection_pl:點在直線上的投影HALCON編程基礎與工程應用9.4HALCON三維測量
雙目立體視覺測量
雙目立體視覺是機器視覺的一種重要形式,它是基于視差原理并由多幅圖像獲取物體三維幾何信息的方法。雙目立體視覺系統(tǒng)一般由雙相機從不同角度同時獲得被測物體的兩幅數(shù)字圖像,或由單相機在不同時刻獲得被測物的兩幅數(shù)字圖像,并基于視差原理恢復出物體的三維幾何信息,重建物體三維輪廓及位置。1.雙目立體視覺測量的原理兩個具有相同內參的相機平行放置,且連接兩臺相機光學中心的直線與第一臺相機的x軸重合。然后將點投影到兩臺相機的成像平面中,得到P點在兩個圖像平面坐標中的坐標,即共軛點:共軛點在這兩個成像平面內的位置差稱為視差d:給定相機參數(shù)和兩個共軛點的圖像坐標,則P的坐標,即其與立體相機系統(tǒng)的距離為9.4HALCON三維測量
2.雙目立體視覺的系統(tǒng)結構和精度分析雙目立體視覺的一般結構為交叉擺放的兩個相機從不同角度觀測同一物體。各種雙目立體視覺系統(tǒng)的結構各有優(yōu)缺點,這些結構適用于不同的應用場合。對要求大測量范圍和較高測量精度的場合,采用基于雙相機的雙目立體視覺系統(tǒng)比較合適;對測量范圍要求比較小,對視覺系統(tǒng)體積和質量要求嚴格,需要高速實時測量對象,基于光學成像的單相機雙目立體視覺系統(tǒng)是最佳選擇。雙目立體視覺系統(tǒng)的安裝方法影響測量結果的精度。測量的精度可由下式得出:HALCON編程基礎與工程應用
上式中表示測量得出的被測點與雙目立體視覺系統(tǒng)之間距離的精度,z指被測點與雙目立體視覺系統(tǒng)的絕對距離,f指相機的焦距,b表示雙目立體視覺系統(tǒng)的基線距,表示被測點視差精度。為了得到更高的精度,應使相機的焦距以及基線長度增大,同時應該使被測物體盡可能的靠近立體視覺系統(tǒng)。另外這個精度和視差的精度有直接的關系。如果b和z之間的比值過大,立體圖像對之間的交迭區(qū)域將非常小,這樣就不能夠得到足夠的物體表面信息。b/z可以取的最大值取決于物體的表面特征。一般情況下,如果物體高度變化不明顯,b/z可以取的大一些;如果物體表面高度變化明顯,則b/z的值要小一些。無論在任何情況下,要確保立體圖像對之間的交迭區(qū)域足夠大并且兩個相機應該大約對齊,也就是說每個相機繞光軸旋轉的角度不能太大。3.雙目立體視覺的標定
為了進行雙目立體視覺系統(tǒng)的標定,需要得到空間點的三維坐標以及該點在左右兩幅圖像中坐標的對應關系,另外還需要給定兩個相機的初始參數(shù)。拍攝標定板圖像時,要保證標定板在左右兩個相機中都能夠完整成像。如果使用HALCON標準標定板,首先可以通過算子find_caltab在標定板圖像中分離出標定板區(qū)域,然后利用算子find_marks_and_pose,該算子通過亞像素閾值、亞像素邊緣提取、圓心確定等一系列操作,計算標定板上每個點的圖像坐標以及標定板與相機之間大約的位姿關系,即相機的外參初始值。
如果使用自定義的標定板,可以使用HALCON中的圖像濾波、亞像素邊緣及線提取、亞像素輪廓處理等基本算子求取標志點的坐標并估算相機的外參初始值。9.4HALCON三維測量
HALCON編程基礎與工程應用HALCON編程基礎與工程應用9.4HALCON三維測量
獲得標志點相應的坐標以及相機的初始參數(shù)后,通過調用算子binocular_calibration來確定兩個相機的內參、外參以及兩個相機之間的相對位姿關系。算子:find_caltab:分割圖像中的標準標定板區(qū)域find_marks_and_pose:抽取標定點并計算相機的內參。輸出MARKS坐標數(shù)組,以及估算的相機外參。binocular_calibration:計算雙目立體視覺系統(tǒng)的所有參數(shù)4.校正立體圖像對
為了能夠更精確地進行匹配,提高運算的效率,在獲得相機的內外參后首先對立體圖像對進行校正。校正的過程其實就是將圖像投影到一個公共的圖像平面上,這個公共的圖像平面方向由雙目立體視覺系統(tǒng)基線與兩個原始圖像平面交線的叉集確定。HALCON中將標定過程中獲得的相機內參以及兩個相機相對位姿關系作為參數(shù)傳遞給算子gen_binocular_rectification_map,再將獲得的兩個圖像的映射圖傳遞給算子map_image,即可得到校正后的兩幅圖像,并可獲得校正后虛擬立體視覺系統(tǒng)中兩個相機的內參和外參。算子:gen_binocular_rectification_map:產(chǎn)生變換映射,該映射描述左右兩相機的圖像到圖像校正后的基平面之間的映射map_image:校正圖像HALCON編程基礎與工程應用9.4HALCON三維測量
5.獲得圖像中三維信息
為了得到圖像中某點的三維信息,需要在另一幅圖像中找到該點的對應點坐標。因此想獲得物體的深度信息,首先需要對校正后的立體圖像對進行匹配。由于經(jīng)過校正后,兩幅圖像中的對應點在圖像的同一行中,因此在匹配時只需要在相應的行中尋找匹配點。為了得到更佳的匹配結果,如果被測物體表面沒有明顯的特征信息,則需要測量時在物體表面增加特征點。另外要避免被測物體上有重復圖案在同一行中。將校正后的圖像以及虛擬立體視覺系統(tǒng)中的相機內外參數(shù)傳遞給binocular_disparity,這時可以設置匹配窗大小、相似度計算方式等參數(shù),在匹配中使用圖像金字塔可提高匹配速度,并且可以自我檢測匹配結果的正確性。算子返回一個視差圖(物體表面三維信息的表示)和一個匹配分值圖(表示匹配結果的準確程度)。算子binocular_distance與binocular_disparity類似,只不過返回一個深度圖(物體表面在第一個相機坐標系中的深度信息)和一個匹配分值圖。得到視差圖之后,可以從中得到點的x,y,z坐標,可以使用算子disparity_to_point_3d和disparity_image_to_xyz。如果想知道立體視覺系統(tǒng)中兩個給定點的距離,可以從視差圖確定相應的視差并將它們轉換為距離,使用算子disparity_to_distance。算子:binocular_disparity:基于相關性的方法計算得到視差圖和匹配分值圖binocular_distance:確定深度圖和匹配分值圖disparity_to_point_3d:在經(jīng)過校正的立體系統(tǒng)中,將圖像點及其視差轉換為3D點HALCON編程基礎與工程應用9.4HALCON三維測量
激光三角測量1.激光三角測量的原理
用Sheet-of-light技術進行激光三角測量的基本原理是將由激光線投影儀產(chǎn)生的細長的發(fā)光直線投射到待重建的物體的表面上,然后用相機對投射的線進行成像。激光線的投影建立了一個光平面。相機的光軸和光平面形成角度,稱為三角測量角。激光線和相機視野之間的交點取決于物體的高度。因此,如果物體的高度有變化,那么激光線和相機視點的交叉點會發(fā)生移動,相機拍攝到的物體表面激光線的成像就不是直線,而是物體表面的輪廓。利用這個輪廓,我們就可以得到該物體的高度差。為了重建物體的整個表面,即獲得一組物體的高度輪廓,物體必須相對于激光投影儀和相機組成的系統(tǒng)移動,使得整個物體表面都被掃描,從而完成整個物體表面的重建。HALCON編程基礎與工程應用9.4HALCON三維測量
2.硬件系統(tǒng)及精度分析
激光三角測量所需的硬件包括一個可以投射細長光線的激光投影儀、一個相機、一個移動平臺(一般是傳送帶)和被測對象。激光器、相機和移動平臺的位置關系必須是不變的,而物體的位置隨著平臺的移動而相對于激光器和相機移動。激光投射到物體上形成的激光線輪廓要大致和相機所采集圖像的行平行。激光線投影儀、相機和要測量的物體之間的位置關系有三種配置方式(如圖9-30所示):(1)相機視點垂直于對象,光平面傾斜;(2)相機視點傾斜,光平面垂直于對象;(3)相機視點和光平面都傾斜。HALCON編程基礎與工程應用9.4HALCON三維測量
使用哪個方式取決于測量的物體的幾何特性。當相機視點垂直于物體時,如果被測量的是長方體,則會被成像為一個矩形,當相機視點傾斜時,由于透視變形,將成像為梯形。同時還要注意陰影和遮擋,如果一個目標點被激光線照亮但在相機視野中不可見,就會發(fā)生遮擋;如果目標點在相機視野中可見但是沒有被激光線照亮,則會產(chǎn)生陰影效果。對于這三種方式,光平面和相機光軸之間的角度,應在30°到60°范圍內,以獲得良好的測量精度。如果角度較小,精度會降低。如果角度較大,精度會提高。
HALCON編程基礎與工程應用9.4HALCON三維測量
3.標定利用HALCON標準標定板
首先,相機按常規(guī)進行標定,即確定相機的內外參。然后,必須根據(jù)標定板的附加圖像來標定光平面和標定物體相對于測量裝置的移動位姿。算子:get_calib_data:獲得存儲在標定模型中的存儲數(shù)據(jù)set_origin_pose:設置3D坐標原點find_calib_object:尋找Halcon標定板,并從標定模型中獲取標定點的數(shù)據(jù)get_calib_data_observ_points:從標定數(shù)據(jù)模型中獲取標定信息pose_to_hom_mat3d:將三維位姿轉換為齊次變換矩陣hom_mat3d_invert:求3D齊次變換矩陣的逆矩陣hom_mat3d_compose:將兩個3D齊次變換矩陣相乘affine_trans_point_3d:進行兩個坐標系之間的3D坐標的仿射變換create_pose:創(chuàng)建一個3D位姿利用特定的3D標定對象
利用特定3D標定對象的方法比標定板方法簡單但是精度略低。標定對象必須與create_sheet_of_light_calib_object創(chuàng)建的CAD模型相對應,并且其尺寸必須能完全覆蓋被測物的體積。如圖9-33就是一個3D標定對象。為了標定帶有特定3D標定對象的激光三角測量系統(tǒng),需要先用此系統(tǒng)獲得3D標定對象的視差圖(如圖9-34所示),然后利用視差圖和算子calibrate_sheet_of_light進行標定。HALCON編程基礎與工程應用9.4HALCON三維測量
算子:create_sheet_of_light_calib_object:創(chuàng)建一個標定對象create_sheet_of_light_model:創(chuàng)建模型來執(zhí)行激光三角測量set_sheet_of_light_param:設置相機初始參數(shù)(只支持除法模型的針孔相機)calibrate_sheet_of_light:用特定的3D對象進行激光三角測量裝置的標定4.執(zhí)行測量
激光三角測量被用來獲取被測對象的深度信息。該高度信息由一個視差圖和X,Y,Z圖像或3D對象模型。圖像X、Y和Z以及3D對象模型只能用于已標定的測量裝置,而視差圖也可以用于未標定的裝置。執(zhí)行測量的主要步驟:(1)獲取要測量的每個輪廓圖,例如,使用grab_image_async。(2)使用measure_profile_sheet_of_light測量每個圖像的輪廓。(3)通過連續(xù)調用get_sheet_of_light_result獲取測量結果,如果需要3D對象模型,只需調用一次get_sheet_of_light_result_object_model_3d。(4)如果在未標定的情況獲得了視差圖,但仍需要x、y和z坐標或三維對象模型,則可以隨后標定,并使用set_sheet_of_light_param將標定獲得的相機參數(shù)添加到模型中。然后調用算子apply_sheet_of_light_calibration校正視差圖。最后使用get_sheet_of_light_result或get_sheet_of_light_result_object_model_3d分別從模型中查詢包含坐標x,y和z或3D對象模型的結果圖??梢允褂胓et_sheet_of_light_param查詢已為特定模型設置的所有參數(shù)或默認設置的參數(shù),要查詢Sheet-of-light模型設置的所有參數(shù),可調用query_sheet_of_light_params。HALCON編程基礎與工程應用9.4HALCON三維測量
算子:grab_image_async:異步抓取圖像measure_profile_sheet_of_light:測量各個輪廓get_sheet_of_light_result:查詢測量結果get_sheet_of_light_result_object_model_3d:從3D對象模型中獲得測量結果apply_sheet_of_light_calibration:對輸入的視差圖進行校正get_sheet_of_light_param:獲取Sheet-of-light測量模型設置的參數(shù)值query_sheet_of_light_params:返回一個列表,包含可以為sheet-light模型設置的所有參數(shù)的名稱HALCON編程基礎與工程應用9.5HALCON測量助手
讀取圖片
可以在打開圖像之后再打開測量助手,也可以直接通過測量助手讀取圖像,單張圖像可以選中“圖像窗口”,直接通過“Ctrl+R”打開,也可以選中“圖像文件”直接打開文件路徑選擇,如果需要實時圖像可以使用“圖像采集助手”進行實時采集,如圖9-39。如果讀取的文件沒有進行標定,可以通過“標定助手”直接進入到標定界面,也可以直接讀取標定文件。如圖9-40所示。HALCON編程基礎與工程應用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年開發(fā)區(qū)綜合招商代理合作合同版
- 繪本故事托班課程設計
- 英語初中閱讀課課程設計
- 稅收籌劃課程設計進度
- 主治醫(yī)師資格(全科醫(yī)學301)考試題庫(全真題庫)
- 美麗小蠻腰雕刻課程設計
- 職業(yè)課程設計中的問題
- 游戲美術課程設計
- 職工培訓課程設計
- 汽車行業(yè)維修技能培訓總結
- 人工智能 課件 第五章 機器學習
- 2024-2025學年上學期杭州初中英語八年級期末試卷
- 【MOOC】人因工程學-東北大學 中國大學慕課MOOC答案
- 中考數(shù)學復習第二章方程(組)與不等式(組)第三節(jié)分式方程及其應用課件
- 中國慢性阻塞性肺疾病基層診療指南(2024年)解讀
- 水肥一體化智能種植管理技術實施方案
- 《中華人民共和國學前教育法》專題培訓
- 《房產(chǎn)稅法》課件
- 產(chǎn)品質量培訓
- 海洋氣象預測研究
- 2024急性心梗護理常規(guī)
評論
0/150
提交評論