halcon_C#联合halcon打开摄像头

1. 创建halcon项目 ->
在这里插入图片描述
在这里插入图片描述
2.测试连接 ->
在这里插入图片描述
3. 在halcon中打开摄像头成功 ->
在这里插入图片描述
4. 插入代码 ->
在这里插入图片描述
5. 导出为.cs文件
在这里插入图片描述
6. 创建VS项目 ->

在这里插入图片描述
7.将action部分代码嵌入winform ->
在这里插入图片描述

8. 编写代码 ->

// 导入HalconDotNet命名空间,这是用于Halcon图像处理的.NET封装库
using HalconDotNet;
// 导入System命名空间,这是.NET基础类库
using System;
// 导入System.Collections.Generic命名空间,用于使用泛型集合
using System.Collections.Generic;
// 导入System.ComponentModel命名空间,用于实现组件和自定义控件的运行时和设计时行为
using System.Data;
// 导入System.Drawing命名空间,用于基本的图形功能
using System.Drawing;
// 导入System.Linq命名空间,用于提供查询功能
using System.Text;
// 导入System.Threading.Tasks命名空间,用于支持异步编程
using System.Windows.Forms;
// 导入System.Threading命名空间,用于多线程操作
using System.Threading;
// 导入System.Net.Mime.MediaTypeNames静态类,用于获取多媒体类型名称
using static System.Net.Mime.MediaTypeNames;// 定义一个命名空间begin
namespace begin
{// 定义一个名为Form1的公共部分类,它继承自Form类public partial class Form1 : Form{// 声明局部图标变量ho_Image,用于存储图像对象,初始值为nullHObject ho_Image = null;// 声明局部控制变量hv_AcqHandle,用于图像采集句柄,初始值为nullHTuple hv_AcqHandle = null;// 声明一个Thread类型的变量show,用于控制显示图像的线程Thread show;// Form1的构造函数public Form1(){// 调用InitializeComponent方法,由设计器生成,用于初始化窗体组件InitializeComponent();}// button1的点击事件处理方法private void button1_Click(object sender, EventArgs e){// 创建一个新的线程show,执行action方法show = new Thread(action);// 启动线程show.Start();}// action方法,用于在单独的线程中执行图像采集和显示private void action(){// 初始化局部和输出图标变量ho_ImageHOperatorSet.GenEmptyObj(out ho_Image);// 打开图像采集设备,获取采集句柄HOperatorSet.OpenFramegrabber("DirectShow", 1, 1, 0, 0, 0, 0, "default", 8, "rgb",-1, "false", "default", "[0] HP Wide Vision HD Camera", 0, -1, out hv_AcqHandle);// 开始图像采集HOperatorSet.GrabImageStart(hv_AcqHandle, -1);// 无限循环,用于连续采集图像while ((int)(1) != 0){// 释放ho_Image占用的资源ho_Image.Dispose();// 异步采集图像HOperatorSet.GrabImageAsync(out ho_Image, hv_AcqHandle, -1);// 在hWindowControl1的HalconWindow中显示图像HOperatorSet.DispObj(ho_Image, hWindowControl1.HalconWindow);// 这里可以添加对采集到的图像进行处理的其他代码}// 关闭图像采集设备HOperatorSet.CloseFramegrabber(hv_AcqHandle);// 释放ho_Image占用的资源ho_Image.Dispose();}// button2的点击事件处理方法private void button2_Click(object sender, EventArgs e){// 关闭图像采集设备HOperatorSet.CloseFramegrabber(hv_AcqHandle);// 终止show线程show.Abort();}}
}

9. 启动项目 ->

在这里插入图片描述


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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

IF=8.5 MIMIC-IV高阶玩法!中国用新指标SHR+机器学习拿一区top,思路太牛了

‍ MIMIC-IV 发文难?那是你还没遇到对的思路!如今机器学习数据库挖掘的文章层出不穷,今天介绍的这篇文章是在MIMIC-IV数据库的基础上,用了一个新指标—应激性高血糖比(SHR),结合机器学习构建预测…

【网络流】——初识(最大流)

网络流-最大流 基础信息引入一些概念基本性质 最大流定义 Ford–Fulkerson 增广Edmons−Karp算法Dinic 算法参考文献 基础信息 引入 假定现在有一个无限放水的自来水厂和一个无限收水的小区,他们之间有多条水管和一些节点构成。 每一条水管有三个属性&#xff1a…

土耳其云手机提升TikTok电商效率

在数字化飞速发展的今天,TikTok不仅是一个社交平台,更是一个巨大的电商市场。随着TikTok电商功能在全球范围内的扩展,土耳其的商家和内容创作者正面临着前所未有的机遇。本文将详细介绍土耳其云手机怎样帮助商家抓住机遇,实现业务…

内置命令和外置命令(用户组配置文件)

通过cat /etc/group来查看用户组的权限,/etc/group文件包含了系统上所有用户组的信息。每一行代表一个用户组。 用户组配置文件格式如下: group_name:password:GID:user_list group_name:用户组的名称。password:用户组的密码。…

达门如何用虚拟现实辅助工程技术造船?

在当代造船以及海事行业中,虚拟现实辅助工程(VR Aided Engineering)技术的使用,正在快速演进并提供新的工业应用案例。该技术改变了从设计阶段到建造,再到船舶运营各个阶段的工作流程,进而提高效率、优化性…

旗晟机器人仪器仪表识别AI智慧算法

在当今迅猛发展的工业4.0时代,智能制造和自动化运维已然成为工业发展至关重要的核心驱动力。其中智能巡检运维系统扮演着举足轻重的角色。工业场景上不仅要对人员行为监督进行监督,对仪器仪表识别分析更是不可缺少的一个环节。那么我们说说旗晟仪器仪表识…

商场导航系统:从电子地图到AR导航,提升顾客体验与运营效率的智能解决方案

商场是集娱乐、休闲、社交于一体的综合性消费空间,随着商场规模的不断扩大和布局的日益复杂,顾客在享受丰富选择的同时,也面临着寻路难、店铺曝光率低以及商场管理效率低下等挑战。商场导航系统作为提升购物体验的关键因素,其重要…

canvas画两个相交的圆(React)

需求:展示两个模块及交集,以两个圆相交的方式,如下图: 一开始画,总会一个圆压住另一个圆,最后看到了paper.js,就可以了,好用,center是圆心,第一个值是X轴坐标…

四、GD32 MCU 常见外设介绍(8)SPI 模块介绍

串行外设接口(Serial Peripheral Interface,缩写为 SPI) 提供了基于SPI 协议的数据发送和接收功能, 可以工作于主机或从机模式。 SPI 接口支持具有硬件 CRC 计算和校验的全双工和单工模式。 8.1.SPI 基础知识 SPI 物理层 SPI接…

【AIGC】构建自己的谷歌搜索引擎服务并使用

一、谷歌 谷歌的搜索引擎需要自己创建服务才能启用检索api。(需自行翻墙和创建自己的谷歌账号) 1.1 API服务创建 1)登陆https://console.cloud.google.com/: 2) 选择新建项目,取号项目名即可(比如:Olin…

钉钉 钉钉打卡 钉钉定位 2024 免费试用 保用

打卡助手定位 如图,表示开启成功,软件已定位到钉钉打卡位置。 测试显示,高德地图位置已成功修改。 开启助手定位后,观察效果,打卡按钮由无法打卡变为可打卡状态,照片还显示打卡地点。 伙伴们担心作弊行为会…

Redis使用场景-热点数据缓存

什么是缓存? 为了把一些经常访问的数据放入缓存中已减少对数据库的访问,从而减少数据库的压力,提高程序的性能。【内存中存储】-效率快 缓存的原理 什么样的数据适合放入缓存中? 1.查询频率高且修改频率低 2.数据安全性低 哪些组件…

数字看板:跨行业需求下的创新与升级

在当今这个数据驱动的时代,数字看板作为信息展示与决策支持的重要工具,正逐步渗透到各行各业之中。从智慧城市到智能制造,从金融分析到医疗健康,数字看板以其直观、动态、高效的特点,成为了连接数据与决策者的桥梁。本…

Mysql 集群搭建 05

文章目录 1. Mysql主从复制集群搭建1.1 主库配置1.2 从库配置 2. 分库分表2.1 拆分策略2.2 实现技术2.2.1 MyCat概述2.2.2 MyCat入门2.2.3 配置 schema.xml 3. 双主双从4. 双主双从读写分离 1. Mysql主从复制集群搭建 主从复制是指将主数据库的 DDL 和 DML 操作通过二进制日志…

阿里云服务器安装Anaconda后无法检测到

前言 问题如标题所言,就是conda -V验证错误,不过后来发现其实就是虽然安装时,同意了写入环境变量,但是其实还没有写入,需要手动写入。下面也会重复一遍安装流程。 安装 到[Anaconda下载处](Download Now | Anaconda)查…

Unity材质球自动遍历所需贴图

Unity材质球自动遍历所需贴图 文章目录 Unity材质球自动遍历所需贴图一、原理二、用法1.代码:2.使用方法 一、原理 例如一个材质球名为:Decal_Text_Cranes_01_Mat , 然后从全局遍历出:Decal_Text_Cranes_01_Albedo赋值给材质球的…

matlab仿真 数字信号载波传输(上)

(内容源自详解MATLAB/SIMULINK 通信系统建模与仿真 刘学勇编著第七 章内容,有兴趣的读者请阅读原书) clear all nsymbol100000;%每种信噪比下的发送符号数 T1;%符号周期 fs100;%每个符号的采样点数 ts1/fs;%采样时间间隔 t0:ts:…

百度竞价推广落地页:优化转化沟通工具的选择与应用

在百度竞价推广中,落地页作为用户点击广告后首先接触到的页面,其设计和优化对于提升转化率至关重要。而转化沟通工具的选择与应用,更是影响用户决策和行动的关键环节。百度竞价托管 www.pansem.com 将探讨在百度竞价推广落地页中,…

简单谈谈 手机版买卖现货白银的好和不好

随着科技的发展,现在买卖现货白银可以在移动设备上进行,那意味着投资者通过手机、平板电脑等都可以进行交易,这进一步解放了投资者交易的场所限制,让投资者有了更大的自由度。有条件的朋友,除了通过个人电脑做现货白银…

苹果电脑暂存盘已满怎么清理 Mac系统如何清理磁盘空间 清理MacBook

Mac电脑用户在长时间使用电脑之后,时常会看到“暂存盘已满”的提示,这无疑会给后续的电脑使用带来烦恼,那么苹果电脑暂存盘已满怎么清理呢,下面将给大家带来一些干货帮你更好地解决这个问题。 首先我们要搞明白为什么暂存盘会满&…