目錄
- 一、提取剎車盤孔洞輪廓
- 二、形狀模板的創建-設置-訓練-查找
- 三、找到亮的圓孔
- 四、獲得匹配結果
- 五、使用'use_polarity'進行模板匹配
- 六、計算四個圓對應的矩形框
- 七、創建四個圓對應的模板并查找
一、提取剎車盤孔洞輪廓
小技巧總結,使用boundary 函數提取區域邊界,在邊界范圍內提取邊緣這樣可以減少其他紋理干擾
boundary ->dilation_circle -> reduce_domain -> edges_sub_pix
read_image (Image, 'brake_disk/brake_disk_part_01')
binary_threshold (Image, Region, 'smooth_histo', 'light', UsedThreshold)
connection (Region, Holes)
select_shape (Holes, SmallHoles, 'area', 'and', 5000, 10000)
boundary (SmallHoles, RegionBorder, 'inner_filled')
dilation_circle (RegionBorder, RegionBorderDilation, 3.5)
union1 (RegionBorderDilation, ROI)
reduce_domain (Image, ROI, ImageReduced)
edges_sub_pix (ImageReduced, Edges, 'canny', 0.5, 20, 40)
fit_circle_contour_xld (Edges, 'algebraic', -1, 0, 0, 3, 2, RowCenter, ColumnCenter, Radius, StartPhi, EndPhi, PointOrder)
二、形狀模板的創建-設置-訓練-查找
create_generic_shape_model (ModelID)
set_generic_shape_model_param (ModelID, 'metric', 'ignore_local_polarity')
train_generic_shape_model (ContCircle, ModelID)
set_generic_shape_model_param (ModelID, 'angle_start', 0.0)
set_generic_shape_model_param (ModelID