VisionPro使用 C# 开发

2023-05-16

 

VisionPro 常用控件的说明

  1. 工具设置窗体
    1. CogPMAlignEditV2  [ 模版匹配设置窗体控件 ]

CogPMAlignEditV2.Subject : 工具关联对象

如:CogPMAlignEditV2.Subject = CogPMAlignTool1;

CogPMAlignTool1 的类型为CogPMAlignTool

    1. CogFixtureEditV2   [ 坐标定位设置窗体控件 ] 

CogFixtureEditV2.Subject : 工具关联对象

如:CogFixtureEditV2.Subject = CogFixtureTool1;

CogFixtureTool1的类型为CogFixtureTool

 

    1. CogCalibNPointToNPointEditV2  [  N点坐标矫正设置窗体控件 ]

CogCalibNPointToNPointEditV2.Subject : 工具关联对象

如:CogCalibNPointToNPointEditV2.Subject = CogCalibNPointToNPointTool1;

CogCalibNPointToNPointTool1的类型为CogCalibNPointToNPointTool

-------------------------------------------------

其中:

未矫正X : 像素坐标X

未矫正Y : 像素坐标Y

原始的已校正X : 物理坐标 X

原始的已校正Y : 物理坐标 Y

-------------------------------------------------

    1. CogFindCircleEditV2  [ 圆形寻找设置窗体控件 ]

CogFindCircleEditV2.Subject : 工具关联对象

如:CogFindCircleEditV2.Subject = CogFindCircleTool1;

CogFindCircleTool1的类型为CogFindCircleTool

    1. CogAcqFifoEditV2  [ 相机信息设置窗体控件 ]

CogAcqFifoEditV2.Subject : 工具关联对象

如:CogAcqFifoEditV2.Subject = CogAcqFifoTool1;

CogAcqFifoTool1的类型为CogAcqFifoTool

    1. CogImageFileEditV2 [ 图像文件设置窗体控件 ]

CogImageFileEditV2.Subject : 工具关联对象

如:CogImageFileEditV2.Subject = CogImageFileTool1;

CogImageFileTool1的类型为CogImageFileTool

    1. cogToolGroupEditV21 [ 工具组管理设置窗体控件 ]

cogToolGroupEditV21.Subject : 工具关联对象

如:cogToolGroupEditV21.Subject = cogToolGroupTool1;

cogToolGroupTool1的类型为cogToolGroupTool

  1. 显示控件

CogDisplay [ 图像显示窗体控件 ]

显示图片:cogDisplay1.Image = image;

获取图片:image = cogDisplay1.Image;

: image  à 图片变量 (类型为 ICogImage

 

//显示图层清空

       cogDisplay1.StaticGraphics.Clear();

cogDisplay1.InteractiveGraphics.Clear()

 

//CogDisplay1中显示文字

//需要引用的空间

using Cognex.VisionPro;

using Cognex.VisionPro.Display;

//实现方法

        private void Create_Font(CogDisplay MyDisplay, string Font, int FontSize,

            double X, double Y, string Label, CogColorConstants Mycolor,

           CogGraphicLabelAlignmentConstants MyAlignment, string GroupName)

        {

//创建窗体显示字符串标签

            CogGraphicLabel MyLabel = new CogGraphicLabel();

//创建窗体显示字体格式

            Font MyFont = new Font(Font, FontSize, FontStyle.Regular);

 

            MyLabel.GraphicDOFEnableBase = CogGraphicDOFConstants.None;

            MyLabel.Interactive = false;

            MyLabel.Font = MyFont;//设置标签的字体属性

            MyLabel.Color = Mycolor;//设置显示标签的额字体显示颜色

            MyLabel.Alignment = MyAlignment;//对齐方式

            MyLabel.SetXYText(X, Y, Label);//文字显示坐标

 

//将文字显示在CogDisplay1的活动图层上

            MyDisplay.InteractiveGraphics.Add(MyLabel, GroupName, false);

  }

 

//将文本图层显示在CogDisplay1的静态图层上

CogDisplay1.StaticGraphics.Add(CogPMAlignTool1.Results.Item(0).CreateResultGraphics(CogPMAlignResultGraphicConstants.CoordinateAxes), "");

附:CogPMAlignTool1 à 匹配工具(下文有说明)

CogPMAlignTool1.Results.Item(0).CreateResultGraphics(CogPMAlignResultGraphicConstants.CoordinateAxes) :意思是创建一个匹配工具的结果图层,这个图层是用来显示一中心坐标得出来的坐标轴

 

VisionPro 工具组文件的使用

  1. 工具组的建立

打开VisionPro,,双击“CogJob1”(这里以CogJob1为列)

在“VisionPro 工具”中选择“CogToolGroup”工具组工具,将其拖到工具表中

然后双击“CogToolGroup”中,在“CogToolGroup1“中添加你需要的工具。

添加完工具并设置配置后,点击保存成工作组文件。

 

  1. 工具组的编程加载

在程序的编写中,需要加载工具组文件

---------------------------------------------------------------------------------------------------------------

在C#中VisionPro提供出来的工具组文件进行加载的方法为

//需要引用的空间

using Cognex.VisionPro.ToolGroup;

//实现代码

object toolgroup = CogSerializer.LoadObjectFromFile(path);

CogToolGroup ToolGroup1 = toolgroup as CogToolGroup;

 

path : 加载工具组文件的物理路径。

如“C:\Users\Administrator\Desktop\Temp\PMAlignTool.vpp”。

---------------------------------------------------------------------------------------------------------------

 

  1. 工具组的编程保存

CogSerializer.SaveObjectToFile(ToolGroup1,path,typeof(System.Runtime.Serialization.Formatters.Soap.SoapFormatter), CogSerializationOptionsConstants.Minimum);

 

ToolGroup1:需要保存的工具组

path : 保存工具组文件的物理路径

 

  1. 工具组的各子工具的编程关联(这样做的话就更灵活的操作组中的工具数据)

//引用的空间

using Cognex.VisionPro;

using Cognex.VisionPro.PMAlign;

 

CogAcqFifoTool CogAcqFifoTool1 = ToolGroup1.Tools["CogAcqFifoTool1"] as CogAcqFifoTool ; //关联相机工具

CogAcqFifoTool1.OutputImage //工具输出的图像,类型为ICogImage

CogAcqFifoTool1.Run()    //运行工具,这里运行后相机获取一张图片,可以通过OutImage获取

 

CogPMAlignTool CogPMAlignTool1 = ToolGroup1.Tools["CogPMAlignTool1"] as CogPMAlignTool ; //关联模版匹配工具

CogPMAlignTool1.InputImage //工具输入的图像,注意的是这个工具用的8位的灰度图像。

CogPMAlignTool1.Run()      //运行工具,对输入的图像进行模版匹配

 

CogCalibNPointToNPointTool CogCalibNPointToNPointTool1=

ToolGroup1.Tools["CogCalibNPointToNPointTool1"]

as CogCalibNPointToNPointTool; //关联模版匹配工具

CogCalibNPointToNPointTool1.InputImage  //工具输入的图像

CogCalibNPointToNPointTool1.OutputImage //工具输出矫正后的图像,类型为ICogImage

CogCalibNPointToNPointTool1.Run()//运行工具,对输入的图像进行矫正计算

 

    附:ICogImage类型的图像可以强转换为8位的灰度图像,如:

     CogImage8Grey image8grey = image As CogImage8Grey; //image 的类型为 ICogImage

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VisionPro使用 C# 开发 的相关文章

  • nginx服务占用百分之百

    一 当nginx达到100 时 xff0c 也就是服务器负载突然上升 1 利用top命令查看cpu使用率较高的php cgi进程 PID USER PR NI VIRT RES SHR S CPU MEM TIME 43 COMMAND 1
  • Gazebo教程(使用roslaunch 启动Gazebo,world以及urdf模型)

    Gazebo教程 xff08 使用roslaunch 启动Gazebo xff0c world以及urdf模型 xff09 关于如何学习ROS可以参考古月居的这篇文章 1 https www zhihu com question 35788
  • dispatch_queue_create---创建队列

    dispatch queue create span class hljs keyword const span span class hljs keyword char span label dispatch queue attr t a
  • Java多种方式解决生产者消费者问题(十分详细)

    一 问题描述 生产者消费者问题 xff08 Producer consumer problem xff09 xff0c 也称有限缓冲问题 xff08 Bounded buffer problem xff09 xff0c 是一个多线程同步问题
  • Http协议WWW-Authenticate

    HTTP协议有一个叫WWW Authenticate的头字段 xff0c 可以用于实现登录验证 它是在RFC 2617中定义的 当服务器接收到一个request xff0c 并在实现下面的代码 xff1a br http response
  • Android 运行时注解

    编译时注解点击此处 xff5e xff5e xff5e 运行时注解 以 64 BindView 为例 下面是实现步骤 新建一个 apt annotation 的 java library xff0c 然后在库中新建一个注解 xff0c 传入
  • 使用k-近邻算法识别手写数字。

    在之前的文章中介绍了k 近邻算法的原理知识并且用Python实现了一个分类器 xff0c 而且完成了一个简单的优化约会网站配对效果的实例 在 机器学习实战 中有关kNN的后一部分内容就是一个手写识别系统 xff0c 可以识别手写的0 9的数
  • 在Ubuntu14.04不能添加PPA源到apt源的问题解决方法

    在Ubuntu14 04使用apt get 更新Git 时 xff0c 需要更新apt源 xff0c 添加一个带有最新Git的源 xff0c 如下命令 xff1a sudo add apt repository ppa git core p
  • 单片机的操作本质【以STM32系列为例】

    单片机的操作本质 摘要寄存器的本质单片机的操作本质操作寄存器的方法 摘要 本文档是笔者学习野火F103视频 课时5 至 课时7 的总结 视频链接 xff1a https study 163 com course introduction 1
  • 《视觉SLAM进阶:从零开始手写VIO》第一讲作业

    目录 1 视觉与IMU融合之后有何优势 xff1f 2 有哪些常见的视觉 43 IMU融合方案 xff1f 有没有工业界应用的例子 xff1f 3 在学术界 xff0c VIO研究有哪些新进展 xff1f 有没有将学习方法应用到VIO的例子
  • GPS坐标与UTM坐标的转换

    1 简介 1 1 消息 gps common定义了两个通用消息 xff0c 供GPS驱动程序输出 xff1a gps common GPSFix和gps common GPSStatus 在大多数情况下 xff0c 这些消息应同时发布 xf
  • NVIDIA Jetson TX2使用笔记(一):开机设置

    0 写在前面 由于项目需要 xff0c 使用 NVIDIA Jetson TX2作为硬件开发平台 xff0c 在此记录使用方法和遇到的问题 NVIDIA Jetson TX2是英伟达的嵌入式开发套件 xff0c 可以进行视觉计算 xff0c
  • ORB-SLAM2的安装与运行

    0 背景简介 ORB SLAM是西班牙Zaragoza大学的Raul Mur Artal编写的视觉SLAM系统 他的论文 ORB SLAM a versatile andaccurate monocular SLAM system 34 发
  • Ubuntu14.04升级cmake版本的方法

    在Ubuntu14 04用以下命令默认安装的cmake版本为2 8 x xff0c 有时我们需要更高版本的cmake xff0c 所以需要升级 span class hljs built in sudo span apt get insta
  • 在TX2上配置ORB-SLAM2错误总结

    Pangolin 错误描述 usr lib gcc aarch64 linux gnu 5 aarch64 linux gnu libGL so undefined reference to 96 drmFreeDevice 解决方法 cd
  • docker镜像迁移/移植

    docker镜像迁移 移植 或者docker save 镜像名 版本号 o 路径 保存的包名 tar 通过这两个命令保存保存镜像 xff0c 下载到本地再上传到其他服务器 然后通过docker load lt 保存的包名 tar 完成镜像移
  • 安装并运行VINS-Mono

    0 A Robust and Versatile Monocular Visual Inertial State Estimator VINS Mono是单目视觉惯性系统的实时SLAM框架 它使用基于优化的滑动窗口配方来提供高精度的视觉惯性
  • 使用小觅双目-惯性相机运行VINS-Mono

    步骤 1 下载相机驱动MYNT EYE SDK 2 xff0c 然后make ros xff08 注意 xff1a 前面的Ubuntu安装也要操作 xff09 xff1b 2 安装VINS Mono xff1b 3 在MYNT EYE VI

随机推荐

  • 在TX2上安装VIINS-Mono——问题总结

    1 ceres solver 我们一般通过以下命令安装Eigen xff1a sudo apt get install libeigen3 dev 默认安装在 usr include eigen3 在CMakeList txt中一般用以下语
  • LeGO-LOAM初探:原理,安装和测试

    前言 最近要搞3D激光SLAM xff0c 先后测试了Autoware xff0c cartographer xff0c loam和LeGO LOAM 今天就带来LeGO LOAM的使用体验 Github xff1a https githu
  • IMU噪声标定——加速度计和陀螺仪的白噪声和零偏不稳定性

    前言 imu utils是一个用于分析IMU性能的ROS工具包 参考资料 Allan Variance Noise Analysis for Gyroscopesvectornav gyroscopeAn introduction to i
  • TF坐标变换

    文章目录 TF坐标变换TF功能包TF工具乌龟例程中的TF创建TF广播器创建TF监听器实现乌龟跟随运动 存在的问题总结参考 TF坐标变换 坐标变换是机器人学中一个非常基础 xff0c 同时也是非常重要的概念 机器人本体和机器人的工作环境中往往
  • Linux下目录文件的操作(opendir,readdir,closedir) 以及DIR,dirent,stat等结构体详解

    From http blog chinaunix net uid 27213819 id 3810699 html 注 xff1a 为什么要说 目录文件 xff1f 其实在linux中 目录也是一种 文件 xff0c 只是它的内容是上级的
  • 堆栈的工作原理

    声明 xff1a 以下均为个人收集的一些资料 xff0c 非原创 每一个使用c语言的都应该知道栈的重要性 xff0c 我们能够使用C C 43 43 语言写出诸多复杂的程序 xff0c 很大功劳一部分有归于栈的实现 xff0c 因为它可以帮
  • RTK+GPS提高定位精度原理解析(一个小白写给另一个小白系列)

    RTK 43 GPS提高定位精度原理解析 xff08 一个小白写给另一个小白系列 xff09 GPS定位原理回顾RTK基本概念RTK组成RTK传输差分示意RTK数据链接坐标转换RTK应用后记 我们在上一篇文章导航定位系统的原理解析 xff0
  • Python 嵌套函数中内部函数引用外部函数循环变量情况

    Python 嵌套函数中内部函数引用外部函数循环变量情况 Python中的嵌套函数也称为闭包 xff08 Closure xff09 有一个特点就是内部函数可以引用外部函数内的变量并且在外部函数返回后保存该引用变量的值 xff1b 但是如果
  • Git查看版本改动—— git diff

    HEAD 表示当前版本 xff0c 也就是最新的提交 上一个版本就是 HEAD xff0c 上上一个版本就是 HEAD xff0c 往上100个版本写100个 比较容易数不过来 xff0c 所以写成 HEAD 100 HEAD 2 相当于
  • PyQt5编程-鼠标事件

    处理鼠标事件的频率不低于键盘事件 包括按下 松开鼠标按键 xff1b 移动鼠标到特定区域或离开特定区域 xff1b 更改鼠标指针的形状 xff0c 等等 1 按下 松开鼠标按键 按下并释放鼠标按钮时 xff0c 将调用以下方法 xff1a
  • latex 正文设置为双栏,图片如何占两栏

    xff08 1 xff09 插入一栏图片时 xff0c 使用的是 xff1a begin figure end figure 96 xff08 2 xff09 插入双栏图片时 xff0c 需在figure的上标中加入星号 begin fig
  • VIO松耦合和紧耦合对比

    松耦合 xff08 结果级融合 xff09 xff1a 两个独立的运动估计过程中分别处理视觉和惯性测量的信息 xff0c 最终将他们的输出 xff08 位置和姿态 xff09 融合作为结果 紧耦合 xff08 特征级融合 xff09 xff
  • zed2相机运行VINS-mono

    zed2相机标定请参考专栏前面博文 xff01 一 zed2相机运行VINS mono 1 下载VINS mono mkdir p vins ws src cd vins ws src git clone https github com
  • C语言指针笔试题

    1 我们先来看第一段代码和它的输出 span class token keyword int span span class token function main span span class token punctuation spa
  • Gazebo 官网教程学习笔记--Model Editor

    终端打开Gazebo Gui 界面 然后快捷键CTRL 43 M 打开 Model Editor xff0c 或者在edit 下选择model editor 界面如下 1 工具栏 包含用于编辑模型的工具 2 调色板 也称为左面板 有两个选项
  • 《大厂算法面试》小书

    算法面试是大多数小伙伴的弱势 xff0c 但是大厂几乎都会考算法 xff0c 如果在面试过程中不刻意准备一下算法 xff0c 很大概率被挂 其实对于前端和移动端来说 xff0c 算法要求的并不是很高 xff0c 只要把一些常见的算法题刷完
  • ROS通信架构上——Topic和Msg

    Topic 异步通信方式 Node间通过publish subscribe机制通信 相关的命令 xff1a rostopic rostopic list 列出当前所有topicrostopic info topic name 显示某个top
  • Type-C显示器是什么,Type-C显示器的5大优势

    在显示器领域内 xff0c USB Type C接口还处于发展阶段 xff0c 目前已经在新推出的一些高端显示器和旗舰显示器中有配置 USB Type C接口的出现 xff0c 将会形成以显示器为核心的桌面解决方案 xff0c 用户可以把任
  • SLAM综述

    SLAM综述 前言一 概述二 Lidar SLAM激光雷达传感器激光雷达SLAM系统 xff08 Lidar SLAM System xff09 2D SLAM3D SLAM深度学习与激光雷达Feature amp Detection xf
  • VisionPro使用 C# 开发

    VisionPro 常用控件的说明 工具设置窗体 CogPMAlignEditV2 模版匹配设置窗体控件 CogPMAlignEditV2 Subject 工具关联对象 如 xff1a CogPMAlignEditV2 Subject 61