没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Halcon中的create_shape_model详细解答和现场应用终结 create_shape_model 是一个在机器视觉和图像处理库中常用的函数,特别是在像Halcon、Cognex VisionPro等工业视觉软件中。这个函数的主要目的是根据一组训练图像(通常是同一物体的多个视角或姿态的图像)来创建一个形状模型(Shape Model)。这个形状模型随后可以用于在实时图像中快速且准确地识别和定位该物体。 基本概念 形状模型(Shape Model):一个数学表示,描述了物体的轮廓或边缘特征,以及这些特征之间的空间关系。它允许软件在复杂或变化的背景中识别出物体。 训练图像(Training Images):用于创建形状模型的图像集合。这些图像应该包含物体的多个视角或姿态,以便模型能够学习到物体的所有重要特征。 create_shape_model 函数的基本用法 虽然不同软件的具体实现和参数可能有所不同,但create_shape_model函数的基本用法通常包括以下几个步骤: 准备训练图像:收集并准备一组高质量的图像,这些图像应该清晰地展示物体的所有重要特征。 调用c
资源推荐
资源详情
资源评论
create_shape_model 是 Halcon 中的一个算子,用于创建形状模板。形状模板是一种用于检测和匹配特
定形状的工具,常用于目标识别、物体定位和测量等应用中。
按照角度步长旋转模板,以此模板来寻找实例
create_shape_model(
Template : : //第一个,模板:参数输入图像,模板图像
NumLevels , //第二个:参数金字塔层数,可设为“auto”或 0—10 的整数
AngleStart , //第三个:参数模板起始角度,模板旋转的起始角度
AngleExtent , //第四个:参数模板角度搜索范围,模板可旋转角度范围, >=0
AngleStep , //第五个:参数模板角度步长,>=0 and <=pi/16
Optimization , //第六个:参数优化,设置模板优化和模板创建方法
Metric , //第七个:参数极性,匹配方法设置
Contrast , //第八个:参数模板前景背景对比度,
MinContrast :第九个:参数最小对比度(实例),设置最小对比度
ModelID ) 第十个:参数输出的句柄模型,输出模板句柄
1. NumLevels:金字塔的层数越大,找到匹配使用的时间就越小。(金字塔的层数越大,
提取到的特征越少,精准度越低,所以对应的识别时间少,如果金字塔的层数设置的太大,模
板不容易识别出来,这是需要将 find_shape_model 函数中 MinScore 和 Greediness 参数设置的
低 一 些 。)另外必须保证最 高 层 的图像具有 足 够 的信息(至 少 四 个点)。可 以 通 过
inspect_shape_model 函数查看设置的结果。如果最高层金字塔的消息太少,算法内部会自
动减少金字塔层数,如果最底层金字塔的信息太少,函数就会报错。如果设为 auto,算法
会自动计算金字塔的层数,我们可以通过 get_shape_model_params 函数查看金字塔的层
数。如果金字塔的层数太大,模板不容易识别出来,这是需要将 find_shape_model 函数中
MinScore 和 Greediness 参数设置的低一些。如果金字塔层数太少找到模板的时间会增加。
可以先使用 inspect_shape_model 函数的输出结果来选择一个较好的金字塔层数。
注意点:最大金子塔层数当输入 0 是为自动。
2. 参数 AngleStart、AngleExtent 定义了模板可能发生旋转的范围。注意模板在
find_shape_model 函数中只能找到这个范围内的匹配。参数 AngleStep 定义了旋转角度范
围内的步长。如果在 find_shape_model 函数中没有指定亚像素精度,这个参数指定的精度
是可以实现 find_shape_mode 函数中的角度的。参数 AngleStep 的选择是基于目标的大小
的,如果模板图像太小不能产生许多不同离散角度的图像,因此对于较小的模板图像
AngleStep 应该设置的比较大。如果 AngleExtent 不是 AngleStep 的整数倍, 将会相应的修
改 AngleStep。
如果选择 complete pregeneration,不同角度的模板图像将会产生并保存在内存中。用
来存储模板的内存与旋转角度的数目和模板图像的的点数是成正比的。因此,如果
AngleStep 太小或是 AngleExtent 太大, 将会出现该模型不再适合(虚拟)内存的情况。在
任何情况下,模型是完全适合主存储器的,因为这避免了操作系统的内存分页,使得寻找匹
配模板的时间变短。由于 find_shape_model 函数中的角度可以使用亚像素精度,一个直径
小于 200 像素的模板可以选择 AngleStep>= 1.
如果选择 AngleStep='auto' (or 0 向后兼容),create_shape_model 将会基于模板的大小
自动定义一个合适的角度步长. 自动计算出来的 AngleStep 可以使用
get_shape_model_params 函数查看。
如果没有选择 complete pregeneration, 该模型会在每一层金字塔上建立在一个参考
的位置。这样在 find_shape_model 函数运行时,该模型必须转化为不同的角度和尺度在运
行时在。正因为如此,匹配该模型可能需要更多的时间。
资源评论
视觉人机器视觉
- 粉丝: 7107
- 资源: 231
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功