Halcon模板图像gen_contour_region_xld/find_shape_model

Halcon模板图像

文章目录

  • Halcon模板图像
    • 1. 从参考图像的特定区域中创建模板
    • 2. 使用XLD轮廓创建模板

本文将讲述如何创建合适的模板。可以从参考图像的特定区域中创建,也可以使用XLD轮廓创建合适的模板。接下来将分别介绍这两种方法。

1. 从参考图像的特定区域中创建模板

模板匹配的第一步,是准备好合适的模板。模板一般来源于参考图像,在后续的步骤中将根据这个模板在检测图像上寻找目标。可以利用ROI创建图像模板。ROI的选择既关系到生成模板的质量,也关系到搜索的准确度,ROI的形状、大小、方向等都是影响因素。但是,有的匹配方法也可以不使用模板图像,如基于形状的模板匹配,可以使用XLD轮廓作为模板。
在创建图像模板时,需要先明确要进行匹配的目标对象,再围绕该目标创建ROI以屏蔽掉目标以外的其他区域图像。这是为了在搜索模板时,只检测经过裁剪的ROI图像,以把范围缩小到局部关键区域,这样会大大减少搜索时间。
从参考图像中创建模板是常用的方法。首先在参考图像上选择一块区域作为ROI,该区域仅包括需要检测的目标图像部分。选择ROI时,可以使用任意形状。例如,比较常用的是创建一个矩形框,使用gen rectangle算子就可以在参考图像上用鼠标绘制一个矩形框,将目标选择出来;也可以使用gen_ellips等算子创建其他形状。如果ROI并不规则,也可以使用gen region polygon算子绘制多边形选区。如果对这些形状的参数不太确定,如坐标位置、宽高、半径等,可以将鼠标指针悬停在图像上并观察图像窗口右下角的坐标,由此估计要选择的形状区域的大致参数;也可以使用估计的参数将形状绘制出来,以观察选择的形状区域是否理想。
除了手动创建选区外,某些情况下,也可以使用图像处理算法自动提取ROI。例如,要从千净的背景中提取一个六角形螺母的形状,手动创建形状选区可能会分割得不够准确,矩形、椭圆形、多边形都很难完全地提取出六角形的形状轮廓,这时可以使用灰度阈值等图像预处理方法提取出六角形螺母的形状区域。
选择好ROI以后,可以通过 reduce_domain算子将这部分图像区域裁剪为一个模板图像。该模板图像只包括目标对象的图像,并且可以是任意形状。如果想得到质量比较好的模板,ROI中应尽可能少的包含噪声和杂乱场景。

2. 使用XLD轮廓创建模板

对于某些匹配方式而言,除了使用图像区域创建模板外,还可以使用XLD轮廓创建模板,如基于相关性的模板匹配、基于形状的模板匹配等。有时很难从参考图像中选择一块合适的包含被测目标的ROI,如图像中的目标边界模糊或者存在杂点等。
也可以考虑创建XLD轮廓作为模板。首先使用图像处理方法提取出目标的轮廓区域,然后使用gen_contour_region_xld算子创建XLD轮廓。接着使用create_shape_model_xld算子根据输入的轮廓创建模板,在检测时,使用find_shape_model算子在检测图像中搜索符合条件的轮廓区域。如果要显示结果,则使用dev_display_shape_matching_results 算子将匹配成功的区域绘制出来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/638461.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【万字解析】Webpack 优化构建性能(分析->优化)

Webpack 优化构建性能 1. 分析构建性能 分析构建体积 全局安装 webpack-bundle-analyzer 插件 npm i -g webpack-bundle-analyzer运行 webpack-bundle-analyzer webpack-bundle-analyzer分析构建速度 // webpack.config.jsconst SpeedMeasurePlugin require("speed-me…

玩转浏览器开发者工具:发现前端世界的秘密花园

解锁网页背后的奥秘 对于许多前端开发者和网页设计师来说,浏览器的开发者工具是不可或缺的利器。通过这些工具,我们可以深入了解网页的内部结构、调试代码、测试设计以及优化性能。在本文中,我们将带你探索浏览器开发者工具的奥秘&#xff0…

huggingface学习 | 云服务器使用hf_hub_download下载huggingface上的模型文件

系列文章目录 huggingface学习 | 云服务器使用git-lfs下载huggingface上的模型文件 文章目录 系列文章目录一、hf_hub_download介绍二、找到需要下载的huggingface文件三、准备工作及下载过程四、全部代码 一、hf_hub_download介绍 hf_hub_download是huggingface官方支持&…

快速上手Flask(二) flask-restful以及全局响应配置

文章目录 快速上手Flask(二) flask-restful以及全局响应配置什么是flask-restful安装flask_restfulflask_restful 使用flask 使用app.route 装饰器自定义路由 全局响应配置flask的自带的jsonify方法JSONIFY_PRETTYPRINT_REGULARJSONIFY_MIMETYPE重写jsonify方法 快速上手Flask(…

力扣【四数之和】

一、题目描述 18. 四数之和 给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] (若两个四元组元素一一对应,则认为两个四元组重复&#x…

大数据开发之电商数仓(hadoop、flume、hive、hdfs、zookeeper、kafka)

第 1 章:数据仓库 1.1 数据仓库概述 1.1.1 数据仓库概念 1、数据仓库概念: 为企业制定决策,提供数据支持的集合。通过对数据仓库中数据的分析,可以帮助企业,改进业务流程、控制成本,提高产品质量。 数据…

C#中chart控件

C#中chart控件 图表的5大集合 例子 第一步:创建工程 放入chart控件 series集合 选择图标类型 选择绘制曲线的宽度和颜色。 显示数据标签 Title集合 添加标题 调整标题字体:大小和颜色 CharsArea集合 对坐标轴进行说明 设置间隔 设置刻度…

【线性代数与矩阵论】矩阵的谱半径与条件数

矩阵的谱半径与条件数 2023年11月18日 文章目录 矩阵的谱半径与条件数1. 矩阵的谱半径2. 谱半径与范数的关系3. 矩阵的条件数下链 1. 矩阵的谱半径 定义 设 A ∈ C n n {A\in \mathbb C^{n \times n} } A∈Cnn , λ 1 , λ 2 , ⋯ , λ n { \lambda_1,\lambda_2…

第11章_常用类和基础API拓展练习(字符串相关练习,日期时间API练习,比较器练习,其它API练习)

文章目录 第11章_常用类和基础API拓展练习字符串相关练习1:阅读题1、length说明2、阅读代码,分析结果3、阅读代码,分析结果4、阅读代码,分析结果5、阅读代码,分析结果6、阅读代码,分析结果7、阅读代码&…

【Linux】Linux基本操作(二):rm rmdir man cp mv cat echo

承接上文: 【【Linux】Linux基本操作(一):初识操作系统、ls、cd、touch、mkdir、pwd 】 目录 1.rmdir指令 && rm 指令: rmdir -p #当子目录被删除后如果父目录也变成空目录的话,就连带父目录一…

Elasticsearch 字段更新机制

目录 不支持原地更新 更新过程 段合并(Segment Merge) 结论 不支持原地更新 Elasticsearch 不支持原地更新(in-place update)索引中的单个字段。由于 Elasticsearch 使用了不可变的倒排索引,一旦文档被写入&#x…

崩溃了!我说用attach进行问题定位,面试官问我原理

Arthas(阿尔萨斯)是一款开源的Java诊断和监控工具,可以在生产环境中进行实时的应用程序分析和故障排查。Arthas的实现原理主要基于Java Instrumentation API和Java Agent技术。 Java Agent 是 Java 编程语言提供的一种特殊机制,允…

多模态是什么意思,在生活工业中有哪些应用?

问题描述:多模态是什么意思,在生活工业中有哪些应用? 问题解答: 多模态(Multimodal)指的是同时利用多种不同模式或传感器的情境、系统或技术。在不同领域,多模态可以涉及到多种感官或信息源的…

第4周:综合应用和实战项目 Day 25-27: 模型调优和优化学习高级技巧

第4周:综合应用和实战项目 Day 25-27: 模型调优和优化学习高级技巧 在这个阶段,我们将专注于提高模型的性能,通过使用高级技巧如正则化、dropout、批标准化等。这些技术对于防止过拟合和提高模型的泛化能力非常重要。 重点学习内容&#xff…

springboot(ssm电子产品销售网站 在线购物商城系

springboot(ssm电子产品销售网站 在线购物商城系统Java系统 开发语言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0)…

3.php开发-个人博客项目输入输出类留言板访问IPUA头来源

目录 知识点 : 输入输出 配置环境时: 搜索框: 留言板: 留言板的显示(html): php代码显示提交的留言: 写入数据库 对留言内容进行显示: php全局变量-$_SERVER 检测来源 墨…

AMEYA360:航顺HK32AUTO39A—适用车载娱乐系统优化方案

车载娱乐系统,顾名思义最开始其功能主要是为驾驶员和乘客提供娱乐体验,但现在智能座舱时代到来,车载信息娱乐系统已成为“人-车-环境”交互的重要载体,是除了驾驶以外的其他任务的中心。 从功能模块上看,车载娱乐系统从…

【算法练习Day50】下一个更大元素II接雨水

​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:练题 🎯长路漫漫浩浩,万事皆有期待 文章目录 下一个更大元素II接雨水单调…

批量终结ascp linux系统中,批量停止kill进程

假如我想批量kill ascp进程 #!/bin/bash# Get PIDs of all running ascp processes pids$(ps -ef | grep [a]scp | awk {print $2})# Loop through each PID and try to terminate the process gracefully for pid in $pids; doecho "Attempting to gracefully terminat…

Apache Wicket 9.10.0发布

Apache Wicket 是一个开源的面向 Java 组件的 Web 应用框架,为政府、商店、大学、城市、银行、电子邮件提供商等成千上万的 Web 应用和网站提供支持。 Wicket 的开发中使用了语义版本,因此与 9.0.0 相比,9.10 版本没有出现 API 中断。 9.10…