opencv调用海康威视摄像头

本文介绍了如何使用OpenCV调用海康威视MV-CA020-20GC摄像头,首先按照海康威视的说明书进行摄像头设置,然后安装MVS客户端。在VS2017中配置完成后,通过修改海康提供的demo,使用while循环获取每一帧图像并转化为Mat对象进行显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 这里使用的是海康威视的MV-CA020-20GC摄像头,软件使用的是VS2017与opencv3.1.1 (已经配置完成)。

调取摄像头画面需要先按照海康威视的说明书进行设置,设置完成后,安装海康威视的客户端MVS。

客户端安装完成后需要在VS中进行配置,具体配置方法优快云里有很多,这里就不详细说明了。

配置完成后运行以下代码就可以调用摄像头的画面:

#include "MvCameraControl.h"
#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
#define MAX_BUF_SIZE    (1920*1200*3)


void main()
{
	int nRet = -1;
	void* m_handle = NULL;

	//枚举子网内指定的传输协议对应的所有设备
	unsigned int nTLayerType = MV_GIGE_DEVICE;
	MV_CC_DEVICE_INFO_LIST m_stDevList = { 0 };
	nRet = MV_CC_EnumDevices(nTLayerType, &m_stDevList);
	if (nRet != 0)
	{
		printf("error: EnumDevices fail [%x]\n", nRet);
	}

	if (m_stDevList.nDeviceNum == 0)
	{
		printf("no camera found!\n");
	}

	//选择查找到的第一台在线设备,创建设备句柄
	int nDeviceIndex = 0;

	MV_CC_DEVICE_INFO m_stDevInfo = { 0 };
	memcpy(&m_stDevInfo, m_stDevList.pDeviceInfo[nDeviceIndex], sizeof(MV_CC_DEVICE_INFO));

	nRet = MV_CC_CreateHandle(&m_handle, &m_stDevI
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值