halcon模板匹配实践(3)inspect_shape_model

算子介绍

inspect_shape_model创建形状模型的表示。运算符对于确定参数NumLevels和Contrast尤其有用,它们可以快速,方便地用于create_shape_model,create_scaled_shape_model或create_aniso_shape_model中。模型的表示是在多个图像金字塔级别上创建的,其中级别的数量由NumLevels确定。在其典型用法中,使用NumLevels和Contrast的不同参数多次调用inspect_shape_model,直到获得满意的模型为止。之后,使用由此获得的参数调用create_shape_model,create_scaled_shape_model或create_aniso_shape_model。

 

举例说明

《Halcon机器视觉算法原理与编程实战》,11-12.hdev

* -------------------  形状模板匹配程序  ----------------
*第1步:选择模板中的目标
Row1 := 281
Column1 := 160
Row2 := 440
Column2 := 312
*用矩形框选定一个目标区域
gen_rectangle1 (ROI, Row1, Column1, Row2, Column2)
*显示ROI区域
dev_display (ROI)
 *剪裁出这个区域
reduce_domain (ModelImage, ROI, ImageROI)
*第2步,创建模板
 *检查模板参数
inspect_shape_model (ImageROI, ShapeModelImages, ShapeModelRegions, 4, 50)
 *显示金字塔各层级的图像,以检查层数的合理性
dev_display (ShapeModelRegions)
area_center (ShapeModelRegions, AreaModelRegions, RowModelRegions,ColumnModelRegions)
count_obj (ShapeModelRegions, HeightPyramid)
 *确定金字塔的层级
for i := 1 to HeightPyramid by 1
if (AreaModelRegions[i - 1] >= 15)
        NumLevels := i
    endif
endfor
 *使用ROI图像创建模板
create_shape_model (ImageROI, NumLevels, 0, rad(360), 'auto', 'none', 'ignore_global_polarity', 50, 10, ModelID)
*获取轮廓信息,用于结果显示
get_shape_model_contours (ShapeModel, ModelID, 1)


本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864