都是halcon用来创建基于形状模板的算子
一.相同点
大部分参数基本都是一样的定义;
用法基本一致;
二,不同点
create_shape_model 主要应用于模板没有太大的形变的条件下,局部可以有轻微变形
没有变形的情况,正常使用即可
create_shape_model (ImageReduced, 'auto', -0.39, 0.78, 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID)
find_shape_model (Image, ModelID, -0.39, 0.78, 0.7, 1, 0.5, 'least_squares', 0, 0.9, Row, Column, Angle, Score)
有局部变形的情况
create_shape_model (ImageReduced, 'auto', -0.39, 0.78, 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID) 创建模板正常使用
find_shape_model (SearchImage, ModelID, 0, 0, 0.4, 1, 0.5, 'max_deformation 1', 0, 0.9, Row, Column, Angle, Score)
在匹配模板时,SubPixel参数需设置成局部最大变形量即可
create_scale_shape_model 主要应用于模板在X和Y方向有相同的形变的场合
create_scaled_shape_model (ImageReduced, 5, rad(-45), rad(90), 'auto', 0.8, 1.0, 'auto', 'none', 'ignore_global_polarity', 40, 10, ModelID)
在创建模板时,只需要设置缩放比例即可,例如本例种的0.8到1.0
create_aniso_shape_model 主要应用于模板在X和Y方向有不同的形变的场合
create_aniso_shape_model (ImageReduced, 'auto', -0.39, 0.79, 'auto', 0.9, 1.1, 'auto', 0.9, 1.1, 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID)
在创建模板时,只需要设置X方向和Y方向的缩放比例即可,例如本例种的0.9到1.1和0.9到1.1
原文链接:https://blog.csdn.net/weixin_39829336/article/details/111768417