当前位置: 首页 > article >正文

c#中添加visionpro控件(联合编程)

vs添加vp控件

创建窗体应用

右键选择项

点击确定

加载CogAcqfifoTool工具拍照

设置参数保存.vpp

保存为QuickBuild或者job, ToolBlock

加载保存的acq工具

实例化相机工具类

//引入命名空间

using Cognex.VisionPro;

//实例化一个相机工具类

 CogAcqFifoTool cogAcqFifoTool = null;

  //窗口加载 

  private void Form1_Load(object sender, EventArgs e)

  {

      //加载文件夹里面的  相机工具  赋值给  winform  窗口里面的 相机工具 

      //地址  保存好的 相机工具地址  

     string path = @"E:\机器视觉14班\VisionPro\课件\15_ConnectCamera\tb.vpp";

    cogAcqFifoTool = CogSerializer.LoadObjectFromFile(path) as CogAcqFifoTool;

//把加载的工具赋值给winform窗体中的控件

   cogAcqFifoEditV21.Subject = cogAcqFifoTool;  }

设置x64兼容平台

右键属性à

注意:如果保存为QuickBuild, job加载完成之后需要点击复位

点击运行拍照

拍照、保存图像实时显示、关闭相机

拍照

添加button与CogDisplay

Button添加点击事件

 private void button1_Click(object sender, EventArgs e){//判断相机是否连接正常//cogAcqFifoTool.Operator == null  连接失败if (cogAcqFifoTool.Operator!=null){//手动调用相机工具的Run方法,运行相机工具cogAcqFifoTool.Run();//获取相机采集到的图像  显示到cogDisplay1cogDisplay1.Image=cogAcqFifoTool.OutputImage;//设置百分比显示cogDisplay1.Fit();}}

实时显示

private void button2_Click(object sender, EventArgs e){if (button2.Text.Equals("实时显示")){button2.Text = "关闭实时";cogDisplay1.StartLiveDisplay(cogAcqFifoTool.Operator,false);}else{button2.Text = "实时显示";//StopLiveDisplay() 关闭实时显示的方法cogDisplay1.StopLiveDisplay();}}

 

保存图像

方式一

 public void SaveImgage1(ICogImage image){//写到本地磁盘//保存的路径string path = Directory.GetCurrentDirectory()+@"\Image1";//判断 是否有当前文件夹if (!Directory.Exists(path)){//说明没有当前文件//创建文件夹Directory.CreateDirectory(path);}//定义图片名称//随机数//当前时间string imageName = $"{DateTime.Now.ToString("yyyyMMddHHmmsss")}.bmp";//1.通过CogImageFileTool工具保存图像CogImageFileTool fileTool=new CogImageFileTool();fileTool.InputImage = image;//保存  //参数1:保存的路径//参数2:保存原图fileTool.Operator.Open($"{path}\\{imageName}",CogImageFileModeConstants.Write);//运行工具fileTool.Run();}

方式二

public void SaveImgage2(CogDisplay display){//写到本地磁盘//保存的路径string path = Directory.GetCurrentDirectory() + @"\Image2";//判断 是否有当前文件夹if (!Directory.Exists(path)){//说明没有当前文件//创建文件夹Directory.CreateDirectory(path);}//定义图片名称string imageName = $"{DateTime.Now.ToString("yyyyMMddHHmmsss")}.jpg";// 通过Bitmap保存图像Bitmap bmp=   (Bitmap)display.CreateContentBitmap(CogDisplayContentBitmapConstants.Image);//保存图像//参数1:路径//参数2:图像的格式bmp.Save($"{path}\\{imageName}", System.Drawing.Imaging.ImageFormat.Jpeg);}

窗体关闭 释放相机

private void Form1_FormClosing(object sender, FormClosingEventArgs e){//释放相机  if (acq.Operator != null){//找到硬件 并且释放相机  acq.Operator.FrameGrabber.Disconnect(false);}}

相关文章:

c#中添加visionpro控件(联合编程)

vs添加vp控件 创建窗体应用 右键选择项 点击确定 加载CogAcqfifoTool工具拍照 设置参数保存.vpp 保存为QuickBuild或者job, ToolBlock 加载保存的acq工具 实例化相机工具类 //引入命名空间 using Cognex.VisionPro; //实例化一个相机工具类 CogAcqFifoTool cogAcqFifoTool n…...

性能测试-mysql监控

mysql常用监控指标 慢查询sql 慢查询:指执行速度低于设置的阀值的sql语句 作用:帮助定位查询速度较慢的sql语句,方便更好的优化数据库系统的性能 开启mysql慢查询日志 参数说明: slow_query_log:慢查询日志开启状态【on&#xf…...

游戏引擎学习第301天:使用精灵边界进行排序

回顾并为今天的内容做准备 昨天,我们解决了一些关于排序的问题,这对我们清理长期存在的Z轴排序问题很有帮助。这个问题我们一直想在开始常规游戏代码之前解决。虽然不确定是否完全解决了问题,但我们提出了一个看起来合理的排序标准。 有两点…...

CSS attr() 函数详解

attr() 是 CSS 中的一个函数,用于获取 HTML 元素的属性值并在样式中使用。虽然功能强大,但它的应用有一些限制和注意事项。 基本语法 element::pseudo-element {property: attr(attribute-name); } 可用场景 1. 在伪元素的 content 属性中使用&#…...

【AI生成PPT】使用ChatGPT+Overleaf自动生成学术论文PPT演示文稿

【AI生成PPT】使用ChatGPTOverleaf自动生成学术论文PPT演示文稿 文章摘要:使用ChatGPTBeamer自动生成学术论文PPT演示文稿​​Beamer​​是什么Overleaf编辑工具ChatGPT生成Beamer Latex代码论文获取prompt设计 生成结果 文章摘要: 本文介绍了一种高效利…...

流复备机断档处理

文章目录 环境症状问题原因解决方案 环境 系统平台:UOS(海光),UOS (飞腾),UOS(鲲鹏),UOS(龙芯),UOS (申威),银河麒麟svs(X86_64&…...

Linux 安装 pytorch+cuda+gpu 大模型开发环境过程记录

Linux 安装 pytorchcudagpu 大模型开发环境过程记录 2025-05-17 本文可用于生产环境,用于大模型训练开发运行。 1. 确定 OS 架构 # cat /etc/os-release NAME"Ubuntu" VERSION"20.04.6 LTS (Focal Fossa)" # uname -m x86_642. 查看磁盘空间…...

局部放大maya的视图HUD文字大小的方法

一、问题描述: 有网友问:有办法局部放大maya的字体吗比如hud中currenttime打开之后画面右下角有个frame 想放大一下能做到吗? 在 Maya 中,可以通过自定义 HUD(Heads-Up Display)元素的字体大小来局部放大特…...

数学复习笔记 16

前言 例题真是经典。 background music 《青春不一样》 2.28 算一个行列式,算出来行列式不等于零,这表示矩阵式可逆的。但是这个算的秩是复合的,感觉没啥好办法了,我直接硬算了,之后再看解析积累好的方法。算矩阵…...

初识Linux · NAT 内网穿透 内网打洞 代理

目录 前言: 内网穿透和打洞 NAPT表 内网穿透 内网打洞 正向/反向代理 前言: 本文算是网络原理的最后一点补充,为什么说是补充呢,因为我们在前面第一次介绍NAT的时候详细介绍的是报文从子网到公网,却没有介绍报文…...

STM32接收红外遥控器的遥控信号

经过几天早晨的学习,终于把遥控器的红外信号给搞通了,特此记录一下;其实说白了,红外遥控就是高低电平的信号,用时间来区分是二进制的0还是1;然后把这些0或1,在组装成一个32位的数基本就算是完事…...

Redis从入门到实战 - 高级篇(下)

一、Redis键值设计 1. 优雅的key结构 Redis的Key虽然可以自定义,但最好遵循下面几个最佳实践约定: 遵循基本格式:[业务名称]:[数据名]:[id]长度不超过44字节不包含特殊字符 例如:我们的登录业务,保存用户信息&…...

NGINX常用功能—笔记

NGINX 是一款高性能的开源 Web 服务器和反向代理服务器,常用于处理高并发场景,其功能丰富且灵活。以下是 NGINX 的常用功能及详细说明: 一、静态资源服务器 功能说明:直接处理 HTML、CSS、JavaScript、图片、视频等静态文件请求&a…...

JVM 性能问题排查实战10连击

🗂️ 目录 前言:理论掌握只是起点,定位能力才是核心全局排查模型:三步法1️⃣Full GC 频繁触发:老年代压力过大2️⃣ OOM 爆炸:元空间泄漏 or 缓存未清理3️⃣ CPU 飙升却不是 GC:线程阻塞或热方…...

【jvm第8集】jvm调优工具(图形化工具)

文章目录 一、JVM 调优图形化工具分类二、JDK 自带工具JConsoleVisualVM 三、第三方工具MAT(Memory Analyzer Tool)JProfiler(商业工具)YourKit(商业工具) 四、APM工具全链路监控与智能运维(AIO…...

Python测试单例模式

单例模式的核心思想 单例模式确保一个类只有一个实例,并提供一个全局访问点。这在需要控制资源访问(如配置文件、数据库连接等)时非常有用。 一个简单的示例: import threading import timeclass Singleton:instance Nonelock…...

多技术栈 iOS 项目的性能调试实战:从 Flutter 到 Unity(含 KeyMob 工具实测)

多技术栈 iOS 项目的性能调试实战:从 Flutter 到 Unity 随着移动端开发日趋多元化,iOS 项目中纯 Objective-C/Swift 已不再是唯一选择。越来越多团队采用 Flutter、React Native、Unity、WebView 混合等方案构建 App。这种“技术栈混合”带来灵活性的同…...

STM32简易计算机设计

运用 A0上拉按钮和 A1 A2下拉按钮设计按键功能 加上独特的算法检测设计&#xff0c;先计算&#xff08;&#xff09;内在计算乘除在计算加减的值在计算乘除优先级最后计算加减优先级 #include "stm32f10x.h" #include <stdio.h> #include <stdlib.h>…...

GUI实验

题目&#xff1a; 编程包含一个标签和一个按钮&#xff0c;单击按钮时&#xff0c;标签的内容在"你好"和"再见"之间切换。 分析&#xff1a; 导入所需的Java库&#xff1a;程序使用了 javax.swing 包中的一些类来创建图形用户界面。 创建一个 JFrame 对象…...

量子计算 | 量子密码学的挑战和机遇

量子计算在密码学中的应用现主要体现在对现有加密算法的威胁上。最著名的例子是Shor算法&#xff0c;该算法能够在多项式时间内分解大整数&#xff0c;从而威胁到基于大数分解的加密算法&#xff0c;如RSA加密。此外&#xff0c;量子计算还可以加速某些类型的密码分析&#xff…...

linux系统查看硬盘序列号

Linux系统查看硬盘信息指南 方法一&#xff1a;hdparm工具 sudo hdparm -i /dev/sda输出示例&#xff1a;在返回信息中查找"SerialNo"字段为序列号&#xff0c;"Model"字段为硬盘型号注意&#xff1a;必须使用root权限&#xff0c;普通用户需在命令前加s…...

分享一些多模态文档解析思路

多模态文档解析思路小记 作者&#xff1a;Arlene 原文&#xff1a;https://zhuanlan.zhihu.com/p/1905635679293122466 多模态文档解析内容涉及&#xff1a;文本、表格和图片 解析思路v1 基于mineru框架对pdf文件进行初解析 其具备较完整的布局识别和内容识别&#xff0c;并将…...

CSS 选择器入门

一、CSS 选择器基础&#xff1a;快速掌握核心概念 什么是选择器&#xff1f; CSS 选择器就像 “网页元素的遥控器”&#xff0c;用于定位 HTML 中的特定元素并应用样式。 /* 结构&#xff1a;选择器 { 属性: 值; } */ p { color: red; } /* 选择所有<p>元素&#xff0c;…...

【Django】Django DRF 中如何手动调用分页器返回分页数据(APIView,action场景)

&#x1f4e6; Django DRF 中如何手动调用分页器返回分页数据&#xff08;APIView&#xff0c;action场景&#xff09; 在使用 Django REST Framework&#xff08;DRF&#xff09;时&#xff0c;很多人习惯了用 GenericAPIView 或 ViewSet 自动帮我们处理分页。但在某些场景中…...

AI知识梳理——RAG、Agent、ReAct、LangChain、LangGraph、MCP、Function Calling、JSON-RPC

AI技术I AI技术II RAG &#x1f4cc; 高度凝练表达 RAG &#xff08;检索增强生成&#xff09;是一种结合信息检索与生成式人工智能的技术框架&#xff0c;旨在提升大型语言模型&#xff08;LLM&#xff09;的输出准确性和实用性。通过在生成响应前引入外部知识库的信息&#…...

Vue组件通信方式及最佳实践

1. Props / 自定义事件 (父子通信) 使用场景 父子组件直接数据传递 代码实现 <!-- Parent.vue --> <template><Child :message"parentMsg" update"handleUpdate" /> </template><script setup> import { ref } from vue…...

【实用教程】如何快速搭建一套私有的埋点系统?

这篇教程将基于开源项目-ClkLog&#xff0c;教大家快速搭建一套自有的埋点系统&#xff0c;从0开始完成数据采集、分析与展示&#xff0c;全流程掌控用户行为数据。 ClkLog是一款支持私有化部署的全开源用户行为数据采集与分析系统&#xff0c;兼容Web、App、小程序多端埋点&am…...

深入解析 Uniswap:自动做市商模型的数学推导与智能合约架构

目录 1. 自动做市商&#xff08;AMM&#xff09;模型的数学推导1.1 恒定乘积公式推导1.2 价格影响与滑点 2. Uniswap 智能合约架构解析2.1 核心合约&#xff08;Core&#xff09;2.1.1 工厂合约&#xff08;Factory&#xff09;2.1.2 交易对合约&#xff08;Pair&#xff09; 2…...

spring配置并使用rabbitmq

本篇博客默认你已经成功安装了rabbitmq。如未安装&#xff0c;可参照官网https://www.rabbitmq.com/docs/platforms&#xff0c;选择对应平台进行安装 一、虚拟主机 虚拟主机的概念&#xff1a; 虚拟主机不是指vm虚拟机&#xff0c;而是指一个通过逻辑进行资源隔离和分区的机…...

Android开发——不同布局的定位属性 与 通用属性

目录 不同布局的定位属性1. 线性布局&#xff08;LinearLayout&#xff09;2. 相对布局&#xff08;RelativeLayout&#xff09;3. 约束布局&#xff08;ConstraintLayout&#xff09;4. 表格布局&#xff08;TableLayout&#xff09;5. 网格布局&#xff08;GridLayout&#x…...