QT(C++)调用海康工业相机SDK采集图像的简单示例

QT(C++)调用海康工业相机SDK采集图像的简单示例

简介
前一篇是用VS(C#)调用海康SDK采集图像,调用halcon库将采集到的图像进行转换,有时在测试相机时会涉及到halcon的license问题,比较麻烦,所以打算利用opencv图像库来转换图像,顺便用QT来实现图像的采集。
在这里插入图片描述
开发环境
Qt 5.4.0 (MSVC 2010, 32 bit)
QT Creator 3.3.0
OpenCV 2.4.9

引用海康的库文件
1.将海康安装目录\MVS\Development\下的Includes文件夹连同里面的文件一起复制到QT工程目录下。
2. 将海康安装目录\MVS\Development\Libraries\win64\下的MvCameraControl.lib文件复制到QT工程文件下的指定位置,例如刚刚复制到QT工程里面的Includes文件夹中(后面引用该库文件会设置在这个位置)。
3. 在QT的pro文件中添加以下代码:
LIBS += -L $ $PWD/Includes/ -lMvCameraControl
INCLUDEPATH += $ $ PWD/Includes
DEPENDPATH += $ $ PWD/Includes
4. 创建的相机类头文件中添加引用#include"Includes/MvCameraControl.h"

此外还需要引用OpenCV的库,具体方法请百度。

1.创建相机类
鼠标右键单击项目文件–添加新文件–选择“C++ Class”–单击右下角“Choose…”,输入类名称,例如Mycamera–下一步–完成。
在这里插入图片描述
头文件mycamera.h

#ifndef MYCAMERA_H
#define MYCAMERA_H
#include"Includes/MvCameraControl.h"
#include"iostream"
#include"opencv2/opencv.hpp"
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
class Mycamera
{
  public:
      Mycamera();
  • 34
    点赞
  • 248
    收藏
    觉得还不错? 一键收藏
  • 69
    评论
海康工业相机是一种常见的工业相机品牌,其SDK(软件开发工具包)提供了编程接口以便开发者可以通过程序进行图像采集和处理等操作。下面是一个简单的实例,以说明如何使用海康工业相机SDK进行图像采集: 首先,你需要在电脑上安装海康工业相机SDK,并添加相应的库文件到项目中。 然后,你需要创建一个工程并引入相关的头文件: #include "HCNetSDK.h" #include "plaympeg4.h" 接着,在程序的初始化阶段,你需要调用SDK的初始化函数: NET_DVR_Init(); 之后,你需要登录相机设备: LONG lUserID; NET_DVR_DEVICEINFO_V30 struDeviceInfo; lUserID = NET_DVR_Login_V30("192.168.0.1", 8000, "admin", "password", &struDeviceInfo); 在成功登录相机设备后,你可以设置采集图像的参数,例如图像分辨率、帧率等: NET_DVR_SetCapturePictureMode(lUserID, NET_DVR_JPEG_MODE); 然后,你可以开始进行图像采集了,可以选择采集方式为实时预览或者抓取一张静态图像: // 实时预览 LONG lRealPlayHandle; HWND hWnd = GetDesktopWindow(); // 获取窗口句柄 lRealPlayHandle = NET_DVR_RealPlay_V30(lUserID, struDeviceInfo.byStartChan, NULL, NULL, hWnd); // 抓取静态图像 NET_DVR_CaptureJPEGPicture(lUserID, struDeviceInfo.byStartChan, &struPicParam, "D:\\test.jpg"); 最后,在程序结束时,你需要释放相关资源并注销登录: NET_DVR_StopRealPlay(lRealPlayHandle); NET_DVR_Logout(lUserID); NET_DVR_Cleanup(); 以上是一个简单的实例,通过调用海康工业相机SDK实现图像采集。在实际应用中,你可以根据需求进行更复杂的图像处理操作,例如图像分析、识别等。请注意在实际操作中根据具体的SDK版本和相机型号进行适配。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 69
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值