目前业内流行的相机除Basler相机以外都有提供给halcon更兼容的动态链接库,虽然说halcon自带的GigE接口能兼容一般GigE接口的相机但是对于较低版本的halcon来说导出来的外部程序可能无法打开相机,就比如我使用的halcon12版本的导出C#程序后出现无法打开相机切卡死的情况。
1、进入海康威视的安装目录
2、进入对应版本的halcon文件夹
3、复制hAcqMVision.dll到halcon安装目录下的 bin > x64-win64(对应电脑的操作系统)
4、找到 MVision 接口,连接相机可行后导出代码即可
窗口设计:
代码:
public partial class Form1 : Form{//相机句柄HTuple hv_AcqHandle = null;//halcon窗口句柄HTuple handle;//单采集的图像HObject image = null;//抓取图像的线程Thread brabT;//线程开关bool isRun = true;public Form1(){InitializeComponent();handle = hWindowControl1.HalconWindow;}#region but事件相关//打开相机private void button1_Click(object sender, EventArgs e){openCam();if (hv_AcqHandle == null){return;}brabT = new Thread(brabImage);//开启线程并挂起它brabT.Start();brabT.Suspend();}//开始采集private void button2_Click(object sender, EventArgs e){if (brabT != null){//继续执行线程brabT.Resume();}}//停止采集private void button3_Click(object sender, EventArgs e){if (brabT != null){//暂停线程brabT.Suspend();}}//单采集private void button4_Click(object sender, EventArgs e){HOperatorSet.GrabImage(out image, hv_AcqHandle);HOperatorSet.DispImage(image, handle);}//当窗口关闭时private void Form1_FormClosing(object sender, FormClosingEventArgs e){if (brabT != null){isRun = false;//brabT.Join();//继续执行线程//brabT.Resume();终止多余线程brabT.Abort();}}#endregion#region 相机相关//抓取图片线程private void brabImage(){HTuple w, h;HObject ho_Image;while (isRun){try{HOperatorSet.GrabImage(out ho_Image, hv_AcqHandle);if (ho_Image != null){HOperatorSet.GetImageSize(ho_Image, out w, out h);HOperatorSet.SetPart(handle, 0, 0, h, w);HOperatorSet.DispImage(ho_Image, handle);//显示玩之后释放图片ho_Image.Dispose();}}catch (Exception){MessageBox.Show("相机已断开,请重新连接!");Thread.Sleep(3000);openCam();}}}private void openCam() {//释放相机句柄HOperatorSet.CloseAllFramegrabbers();try{//连接相机HOperatorSet.OpenFramegrabber("MVision", 1, 1, 0, 0, 0, 0, "progressive", 8,"default", -1, "false", "auto", "GEV:00D23303857", 0, -1, out hv_AcqHandle);MessageBox.Show("相机连接成功!");}catch (Exception){MessageBox.Show("相机连接失败!");}}#endregion}
本文发布于:2024-01-30 13:04:06,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170659104920200.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |