VisionPro-PMA工具

VisionPro-PMA工具

模板匹配的核心概念

康耐视(Cognex)的VisionPro是一款广泛应用工业自动化的机器视觉软件平台,其模板匹配(Pattern Matching)功能是核心工具之一,常用与目标定位、特征识别和质量检测等场景。

模板匹配:通过预先定义的参考(模板),在实时图像中快速定位相似区域。

适用场景:定位工件、验证特征是否存在、检测位置偏移、二维码/条形码定位。

核心技术:VisionPro的PatMax和PatFlex算法是其核心专利技术,具有高精度和控干扰能力,支持旋转、缩放、光照变化和部分遮挡。

熟悉模板

步骤1:选择Image Source添加图像来源;

步骤2:模板匹配工具主体;

步骤3:ToolGroup(工具组)的输出是指将多个视觉工具(如PatMax、Caliper、Blob等)组合成一个逻辑单元后,该组工具对外暴露的结果数据。

CogPMAlignTool

InputImage:添加图片来源

Results.Item[0].GetPose():方法返回的是一个表示匹配结果位置和方向的变换矩阵,通常是一个CogTransform2DLinear类型的对象。

Results.Item[0].GetPose().TranslationX:这些值指的是模板匹配后原点坐标在原始图像像素坐标之后的位置。

Results.Item[0].GetPose().TranslationY:和TranslationX一样。

Results.Item[0].GetPose().Rotation:这是模板匹配后的旋转角度。

Results.Item[0].Score:这是一个分数值,用来评估匹配的质量。分数越高,意味着匹配越准确。

在这里插入图片描述

  • 抓取训练图像

在这里插入图片描述

  • 选着Current.TranImage

在这里插入图片描述

  • 适应图像–>中心原点–>训练区域–>区域形状–>所选空间名称–>选择模式–>查看原点、边长、旋转、倾斜–>查看训练原点内部:所选空间名称、原点、边长、旋转、倾斜。
  • 根据模板类型选择区域形状。

在这里插入图片描述

  • 角度:用户可以设定查找的角度范围以及步长。例如,如果你预计目标物体可能会有±15度的旋转,那么你可以在工具设置中指定这个角度范围。
  • 缩放:用户需要定义查找的缩放范围。如果目标物体可能会有不同的尺寸,那么就需要设置适当的最小和最大缩放比例来确保能够正确识别目标。
  • 查找概述:根据物品多少来决定检测数量,如果查找概述和实际数量不匹配会出现物品不足。
  • 接受阈值:这是用来决定是否接受某个匹配结果的一个分数阈值,只有得分高于此阈值的结果才会被认为时有效的匹配。
  • 计分时考虑杂斑:如果选择计分时考虑杂斑,这些非目标特征将会影响最终的得分值,导致得分较低没因为他们被视为不想管的信息而拉低了整体匹配的质量评分。

其他内容根据实际情况选择。

在这里插入图片描述

  • 可选

在这里插入图片描述

  • 上方步骤完成后可选择训练,完成模板匹配,如一些模板无法匹配可以根据上方步骤进行调整;最终效果能够实现请不要轻易更改内容该页面内容。
  • 忽略极性:使用在多变的光照条件呈现亮度不同、对象表面特性反射率或吸收了率不同和图案设计复杂性凸显元素和纹理。
  • 如常用该模板可以进行保存模式,下次或数据一样可以选择加载模式使用之前模板数据。

在这里插入图片描述

模板算法

算法描述
PatMax基于集合特征的匹配,适用于高精度、复杂形状的定位,支持选择、缩放和透视变换
PatFlex针对柔性变形或表面纹理变化的场景(软包装、橡胶件)
PatQuick快速匹配,适用于对速度要求较高,但精度略低
PatMax与PatQuickPatMax与PatQuick充分发挥两者的优势,在速度、精度和鲁棒性之间实现平衡
patMax - 高灵敏度目标特征微弱,微小特征检测(如芯片引脚、精密焊点)
透视 PatMax传统PatMax支持旋转、缩放,但**透视变形(如倾斜视角)**需要更高级算法,
PatMax Pro(或部分版本中的“透视模式”)通过仿射变换或投影变换模型支持透视校正

在这里插入图片描述

  • List item

模板匹配成功后可以在结果中查看模板结果

在这里插入图片描述

CogFixtyreTool

CogFixtyreTool工具用于建立定位坐标系。

  • InputImage:指的是用于进行坐标系转换和对齐操作的输入图像。
  • RunParams.UnfixturedFromFixturedTransform:它代表了一个从固定坐标系到未固定坐标系的变换。
  • RunParams.UnfixturedFromFixturedTransform.TranslationX:它代表了从固定坐标系到未固定坐标系变换中的 X 轴方向上的平移量。换句话说,它是用来描述目标对象在新的坐标系下相对于原坐标系沿水平方向(X轴)移动了多少距离。
  • RunParams.UnfixturedFromFixturedTransform.TranslationY:它代表了从固定坐标系到未固定坐标系变换中的 Y 轴方向上的平移量。换句话说,它是用来描述目标对象在新的坐标系下相对于原坐标系沿水平方向(Y轴)移动了多少距离。
  • RunParams.UnfixturedFromFixturedTransform.Rotation:这个属性表示的是从固定坐标系(Fixtured Coordinate Space)到未固定坐标系(Unfixtured Coordinate Space)之间的旋转变换角度。
  • OutputImage:是一个重要的输出参数,它代表了经过坐标变换后生成的新图像。

te Space)到未固定坐标系(Unfixtured Coordinate Space)之间的旋转变换角度。

  • OutputImage:是一个重要的输出参数,它代表了经过坐标变换后生成的新图像。

在这里插入图片描述

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

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

相关文章

2025最新最全【大模型学习路线规划】零基础入门到精通_大模型 开发 学习路线

第一阶段:基础理论入门 目标:了解大模型的基本概念和背景。 内容: 人工智能演进与大模型兴起。 大模型定义及通用人工智能定义。 GPT模型的发展历程。 第二阶段:核心技术解析 目标:深入学习大模型的关键技术和工…

使用CSS3DRenderer/CSS2DRenderer给模型上面添加html标签

先放一下预览图 主要使用css2dRender和css3dRender,添加图片和标签。 思路:使用css3dRender添加一个图片,然后获取的位置坐标,使用css3dRender添加一个文字标签,也设置这个位置坐标,此外z轴设置一个高度&a…

完美隐藏滚动条方案 (2024 最新验证)

完美隐藏滚动条方案 (2024 最新验证) css /* 全局隐藏竖直滚动条但保留滚动功能 */ html {overflow: -moz-scrollbars-none; /* Firefox 旧版 */scrollbar-width: none; /* Firefox 64 */-ms-overflow-style: none; /* IE/Edge */overflow-y: overlay; …

Linux 内核配置机制详细讲解

本文是对 Linux 内核配置机制 make menuconfig 的 超详细分步解析,涵盖其工作原理、界面操作、配置逻辑及底层实现: 一、内核配置系统概述 Linux 内核的配置系统是一个 基于文本的交互式配置工具链,核心目标是通过定义 CONFIG_XXX 宏来控制内…

视频裂变加群推广分享引流源码

源码介绍 视频裂变加群推广分享引流源码 最近网上很火,很多人都在用,适合引流裂变推广 测试环境:PHP7.4(PHP版本不限制) 第一次访问送五次观看次数,用户达到观看次数后需要分享给好友或者群,好友必须点击推广链接后才会增加观看次…

python-leetcode-每日温度

739. 每日温度 - 力扣(LeetCode) class Solution:def dailyTemperatures(self, temperatures: List[int]) -> List[int]:n len(temperatures)answer [0] * nstack [] # 存储索引for i, temp in enumerate(temperatures):while stack and temperat…

文件下载技术的终极选择:`<a>` 标签 vs File Saver.js

文件下载技术的终极选择&#xff1a;<a> 标签 vs File Saver.js 在 Web 开发中&#xff0c;文件下载看似简单&#xff0c;实则暗藏玄机。工作种常纠结于 <a> 标签的原生下载和 File Saver.js 等插件的灵活控制之间。本文将从原理、优缺点、场景对比到实战技巧&…

deepseek sse流式输出

链接 semi-ui-vue聊天组件 - 可以用这个组件优化界面 sse服务端消息推送 webflux&webclient Hi-Dream-Blog - 参考这个博客&#xff0c;可以在后台将markdown语法转为html 文章目录 链接效果代码pom.xmlDeepSeekControllerWebConfigDeepSeekClientAiChatRequestAiChatM…

Linux时间日期类指令

1、data指令 基本语法&#xff1a; date &#xff1a; 显示当前时间date %Y : 显示当前年份date %m &#xff1a; 显示当前月份date %d &#xff1a; 显示当前哪一天date “%Y-%m-%d %H:%M:%S" &#xff1a; 显示年月日时分秒date -s 字符串时间 &#xff1a; 设置系统时…

SQLMesh 系列教程9- 宏变量及内置宏变量

SQLMesh 的宏变量是一个强大的工具&#xff0c;能够显著提高 SQL 模型的动态化能力和可维护性。通过合理使用宏变量&#xff0c;可以实现动态时间范围、多环境配置、参数化查询等功能&#xff0c;从而简化数据模型的开发和维护流程。随着数据团队的规模扩大和业务复杂度的增加&…

鹏哥c语言数组(初阶数组)

前言&#xff1a; 对应c语言视频54集 内容&#xff1a; 一维数组的创建 数组是一组相同元素的集合&#xff0c; 数组的创建方式 type_t就是数组的元素类型&#xff0c;const_n是一个常量表达式&#xff0c;用来指定数组的大小 c99标准之前的&#xff0c;数组的大小必须是…

爬虫运行后如何保存数据?

爬虫运行后&#xff0c;将获取到的数据保存到本地或数据库中是常见的需求。Python 提供了多种方式来保存数据&#xff0c;包括保存为文本文件、CSV 文件、JSON 文件&#xff0c;甚至存储到数据库中。以下是几种常见的数据保存方法&#xff0c;以及对应的代码示例。 1. 保存为文…

计算机视觉:经典数据格式(VOC、YOLO、COCO)解析与转换(附代码)

第一章&#xff1a;计算机视觉中图像的基础认知 第二章&#xff1a;计算机视觉&#xff1a;卷积神经网络(CNN)基本概念(一) 第三章&#xff1a;计算机视觉&#xff1a;卷积神经网络(CNN)基本概念(二) 第四章&#xff1a;搭建一个经典的LeNet5神经网络(附代码) 第五章&#xff1…

linux--多进程基础(2)GDB多进程调试(面试会问)

将其中的命令记住就行。 总结&#xff1a;GDB下默认调试父进程&#xff0c;可以设置调试父进程还是子进程&#xff0c;也可以设置调试模式&#xff0c;调试模式默认是on即一个在调试另一个直接运行&#xff0c;off就是另一个进程挂起&#xff0c;最后可以查看调试进程 一般默认…

Cramér-Rao界:参数估计精度的“理论底线”

Cramr-Rao界&#xff1a;参数估计精度的“理论底线” 在统计学中&#xff0c;当我们用数据估计一个模型的参数时&#xff0c;总希望估计结果尽可能精确。但精度有没有一个理论上的“底线”呢&#xff1f;答案是有的&#xff0c;这就是Cramr-Rao界&#xff08;Cramr-Rao Lower …

【复习】Redis

数据结构 Redis常见的数据结构 String&#xff1a;缓存对象Hash&#xff1a;缓存对象、购物车List&#xff1a;消息队列Set&#xff1a;点赞、共同关注ZSet&#xff1a;排序 Zset底层&#xff1f; Zset底层的数据结构是由压缩链表或跳表实现的 如果有序集合的元素 < 12…

Git add --- error: Filename too long

0 Preface/Foreword 1 解决办法 git config --system core.longpaths true

在 Spring Boot 中使用 `@Autowired` 和 `@Bean` 注解

文章目录 在 Spring Boot 中使用 Autowired 和 Bean 注解示例背景 1. 定义 Student 类2. 配置类&#xff1a;初始化 Bean3. 测试类&#xff1a;使用 Autowired 注解自动注入 Bean4. Spring Boot 的自动装配5. 总结 在 Spring Boot 中使用 Autowired 和 Bean 注解 在 Spring Bo…

【AI+智造】DeepSeek价值重构:当采购与物控遇上数字化转型的化学反应

作者&#xff1a;Odoo技术开发/资深信息化负责人 日期&#xff1a;2025年2月24日 引言&#xff1a;从事企业信息化工作16年&#xff0c;我见证过无数企业从手工台账到ERP系统的跨越。但真正让采购和物控部门脱胎换骨的&#xff0c;是融合了Deepseek AI的Odoo数字化解决方案——…

qt-C++笔记之创建和初始化 `QGraphicsScene` 和 `QGraphicsView` 并关联视图和场景的方法

qt-C++笔记之创建和初始化 QGraphicsScene 和 QGraphicsView 并关联视图和场景的方法 code review! 参考笔记 1.qt-C++笔记之创建和初始化 QGraphicsScene 和 QGraphicsView 并关联视图和场景的方法 2.qt-C++笔记之QGraphicsScene和 QGraphicsView中setScene、通过scene得到vie…