Qt+OpenCV调用海康相机SDK采集图像(C++)

本文介绍了如何使用Qt5.12.5和OpenCV3.4.9结合海康MVS3.1.0 SDK在C++环境中进行图像采集。首先在QT项目中添加海康相机的库文件,并配置.pro文件。接着,配置OpenCV库,同样添加到.pro文件。随后,创建mycanera类,包含mycanera.h和mycanera.cpp,实现相机的图像采集功能。虽然运行成功,但存在停止采集未生效的问题。

配置环境:

  Qt5.12.5

  OpenCV3.4.9

  海康MVS3.1.0

开发工具:QT Creator-4.11.0

1、开发步骤:

1)创建QT项目,在pro文件中添加相机的引用文件

1.1)添加海康的库:

将海康SDK库MVS\Development\Includes和MVS\Development\Libraries\win64下复制到自己的工程目录下

然后把库添加到.pro文件中

点击下一步之后就会在.pro文件中出现如下代码

然后在这后面加上以下代码,添加依赖项

1 INCLUDEPATH += $$PWD/includes/
2 INCLUDEPATH += $$PWD/includes/GenICam/
3 
4 DEPENDPATH += $$PWD/includes/
5 DEPENDPATH += $$PWD/includes/GenICam/

1.2)配置OpenCV

跟上面配置HKSDK步骤相同库文件目录为OpenCV的安装目录D:/OpenCV/opencv/build/x64/vc14/lib/opencv_world349d.lib

配置完成会在。pro文件中出现如下代码

需要在后面添加如下代码

 INCLUDEPATH += D:\OpenCV\opencv\build\include \
                 D:\OpenCV\opencv\build\include\opencv \
                 D:\OpenCV\opencv\build\include\opencv2
 DEPENDPATH += D:\OpenCV\opencv\build\include \
                 D:\OpenCV\opencv\build\include\opencv \
                 D:\OpenCV\opencv\build\include\opencv2

这样海康SDK和OpenCV库就配置完成了,可以在项目引入他们的头文件了。

2、开发步骤:

新建一个类:mycanera.h和mycaner.cpp生成这两个文件(ps:建文件时将camera打错了,^_^)

mycanera.h文件参考一下代码:

#ifndef MYCANERA_H
#define MYCANERA_H
#include "MvCameraControl.h"
#pragma execution_character_set("utf-8")   //设置当前文件为UTF-8编码
#pragma warning( disable : 4819 )    //解决SDK中包含中文问题;忽略C4819错误
#include <stdio.h>
#include <iostream>
#include "opencv2/core/core.hpp"
#include "opencv2/opencv.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <string>
#include <QDebug>

using namespace std;
using namespace cv;
class MyCanera
{
public:
    MyCanera();
   ~MyCanera();
    //声明相关变量及函数等
    //枚举相机设备列表
  static int EnumDevices(MV_CC_DEVICE_INFO_LIST* pstDevList);

  // ch:连接相机
  int connectCamera(string id);

  //设置相机触发模式
  int setTriggerMode(unsigned int TriggerModeNum);

  //开启相机采集
  int startCamera();

  //发送软触发
  int softTrigger();

  //读取buffer
  int ReadBuffer(Mat &image);

  //设置心跳时间
  int setHeartBeatTime(unsigned int time);

  //设置曝光时间
  int setExposur
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值