基於組件的模板匹配:算法
應用場合:組件匹配是形狀匹配的擴展,但不支持大小縮放匹配,通常用於多個對象(工件)定位的場合。post
算法步驟:component
1.獲取組件模型裏的初始控件 gen_initial_components()orm
參數:對象
ModelImage [Input] 初始組件的圖片圖片
InitialComponents [Output] 初始組件的輪廓區域ip
ContrastLow [Input] 對比度下限it
ContrastHigh [Input] 對比度上限ast
MinSize [Input] 初始組件的最小尺寸form
Mode[Input] 自動分段的類型
GenericName [Input] 可選控制參數的名稱
GenericValue [Input] 可選控制參數的值
2.根據圖像模型,初始組件,訓練圖片來訓練組件和組件相互關係 train_model_components()
3.建立組件模型 create_trained_component_model()
4.尋找組件模型 find_component_model()
5.釋放組件模型 clear_component_model()
基於形狀的模板匹配:
應用場合:定位對象內部的灰度值能夠有變化,但對象輪廓必定要清晰平滑。
1.建立形狀模型:create_shape_model()
2.尋找形狀模型:find_shpae_model()
3.釋放形狀模型:clear_shape_model()
基於灰度的模板匹配:
應用場合:定位對象內部的灰度值沒有大的變化,沒有缺失部分,沒有干擾圖像和噪聲的場合。
1.建立模板:create_template()
2.尋找模板:best_match()
3.釋放模板:clear_template()
基於互相關匹配:
應用場合:搜索對象有輕微的變形,大量的紋理,圖像模糊等場合,速度快,精度低。
1.建立模板:create_ncc_model()
2.尋找模板:find_ncc_model()
3.釋放模板:clear_ncc_model()
基於變形匹配:
應用場合:搜索對象有輕微的變形。
1.建立模板:create_local_deformable_model()
2.尋找模板:find_local_deformable_model()
3.釋放模板:clear_deformable_model()
基於描述匹配:
應用場合:搜索對象有輕微的變形,透視的場合,根據一些描述點的位置和灰度值來進行匹配。
1.建立模板:create_calib_descriptor_model()
2.尋找模板:find_calib_descriptor_model()
3.釋放模板:clear_descriptor_model()