Halcon的提取中心線算法
Halcon提取中心線的一般流程:
read_image (Image, 'C:/Users/Administrator/Desktop/china.png') *計算提線參數 MaxLineWidth := 5 Contrast := 10 calculate_lines_gauss_parameters (MaxLineWidth, [Contrast,0], Sigma, Low, High) *提取中心線 lines_gauss (Image, Lines, Sigma, Low, High, 'light', 'true', 'parabolic', 'true') *合并共直線線段 union_collinear_contours_xld (Lines, UnionContours, 10, 1, 10, rad(30), 'attr_keep') *按長度篩選線段 select_contours_xld (UnionContours, SelectedContours, 'contour_length', 20, 999999, -0.5, 0.5) *顯示結果 dev_display (Image) dev_set_color ('red') dev_display (SelectedContours)
MaxLineWidth = 5,Contract = 10,由于最大線寬太小,較寬線區域會生成多條中心線:

MaxLineWidth = 20,Contract = 10,線寬設置合理,生成的中心線比較居中:

MaxLineWidth = 40,Contract = 10,最大線寬過大,部分不夠亮的區域未生成中心線:

MaxLineWidth = 40,Contract = 255,最大對比度時,不夠亮的區域不會生成中心線:


浙公網安備 33010602011771號