一个基于可变比例的匹配的halcon实例及详解

一个基于可变比例的匹配的halcon实例及详解

ID:41494341

大小:122.20 KB

页数:3页

时间:2019-08-26

一个基于可变比例的匹配的halcon实例及详解_第1页
一个基于可变比例的匹配的halcon实例及详解_第2页
一个基于可变比例的匹配的halcon实例及详解_第3页
资源描述:

《一个基于可变比例的匹配的halcon实例及详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、一个基于可变比例的匹配的实例及详解 楼主#更多发布于:2014-03-2610:05昨天说到的有两个有用的例子和大家分享,一个是基于1:1比例的匹配的实例,一个是基于可变比例的匹配, 今天的例子是基于可变比例的匹配。 *读取一个轮廓模型(shapemodel),使这个模型可放大或缩小地进行寻找匹配。 dev_close_window() dev_open_window(0,0,600,600,'black',WindowHandle) read_image(Image,'L:/Halcontest/mk3.jpg') *选取一张有各种大小,角度,甚至变形的商标的图片做测试 *

2、read_image(Image,'L:/Halcontest/mk5.jpg') gen_rectangle1(ROI,57.8333,49.5,181.167,342.833) *画一个矩形选择ROI,矩形在左上角,覆盖一个完整的,无变形规定尺寸的商标,作为模板 reduce_domain(Image,ROI,ImageReduced) *大图和这个矩形的ROI相减就会得到一个左上角的商标的图案作为模板,命名ImageReduced inspect_shape_model(ImageReduced,ModelImages,ModelRegions,5,40) *创建一个对

3、比的模型,后面两个参数:第一个是层数(NumLevels,如5层),第二个是对比度阈值(具体用法效果还不是很明白) *这里看到前面有位朋友之前提到不理解金字塔层数的意义,这里解释一下,如图:  金字塔层数在inspect_shape_model设置为5层,那么相应的在create_scaled_shape_model创建为5层,在find_scaled_shape_model查找为5层,上图中的5个紫色的箭头指的是就是金字塔层数,层数越多越容易被查找,反应的速度也就越快,一般是1-10层,但要注意保证最底层依然能被识别,主要是作为模板的图片的精度影响。一般5层左右识别的速度都

4、可以接受了。 create_scaled_shape_model(ImageReduced,5,rad(-180),rad(360),0,0.1,5.0,0,['none','no_pregeneration'],'ignore_global_polarity',40,10,ModelID)*创建一个比例不变的匹配的轮廓模型 *create_scaled_shape_model(Template::NumLevels,AngleStart,AngleExtent,AngleStep,ScaleMin,ScaleMax,ScaleStep,Optimization,Metric

5、,Contrast,MinContrast:ModelID)*01、Template,//reduce_domain后的模板图像 *02、NumLevels,//金字塔的层数,可设为“auto”或0—10的整数*03、AngleStart,//模板旋转的起始角度 *04、AngleExtent,//模板旋转角度范围,>=0*05、AngleStep,//旋转角度的步长,>=0and<=pi/16 *06、ScaleMin,//模板最小比例*07、ScaleMax,//模板最大比例 *08、ScaleStep,//模板比例的步长*09、Optimization,//设置模板优化

6、和模板创建方法 *10、Metric,//匹配方法设置*11、Contrast,//设置对比度 *12、MinContrast,//设置最小对比度*13、ModelID,//输出模板句柄 *write_shape_model(ModelID,'mk.shm') *把这个模型保存成一个shm模板*clear_shape_model(ModelID) stop() *read_shape_model('mk.shm',ModelID)find_scaled_shape_model(Image,ModelID,rad(-180),rad(360),0.1,5.0,0.5,0,0.5

7、,'least_squares',5,0.8,Row,Column,Angle,Scale,Score) *匹配一个比例不变的轮廓模型,参数和创建的参数差不多get_shape_model_contours(ModelContours,ModelID,1) forI:=0to

8、Score

9、-1by1    vector_angle_to_rigid(0,0,0,Row【i】,Column【i】,Angle【i】,HomMat2DRotate)  hom_mat2d_scale(HomMat2DRotat

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。