1、概述:
工业相机SDK是用于控制相机的一个独立组件,支持获取实时图像数据、配置参数、对图像进行后续处理等功能。工业相机SDK兼容GigE Vision协议、USB3 Vision协议、Camera Link协议、CoaXPress协议,目前支持Windows、Linux、Mac以及Android系统,不同的操作系统下需要加载使用配套的SDK版本并参考相应SDK开发指南。SDK对相机的控制上,最基本的功能有参数设置和图像获取两部分。需要 强调的是,工业相机是没有密码的,除非有IP冲突,否则是随连随用的。

2、工业相机二次开发的Demo示例

要想使用工业相机的SDK,需要先下载海康的MVS软件–官方下载地址,根据你的操作系统机器选择下载视觉工业相机客户端MVS。二次开发的Demo示例在软件目录下的MVS\Development\Samples中,打开如图:

根据你开发所用的语言环境不同选择对应的文件夹,这里我用到的是C++语言,开发软件是VS2015,所以选择VC文件夹,里面的demo示例程序如下:

根据我的需求,我只用到了红框所示的两个程序,但是这里能实现的功能还是很完善的,也可以参考海康的官方参考文档:https://www.hikrobotics.com/machinevision/service/download?module=1

3、VS2015配置海康SDK

  3.1.1 添加附加包含目录

    项目 --- 属性 --- 属性页 --- C/C++ --- 常规--- 附加包含目录添加如下路径:

E:\code\Libraries\HKSDK\Includes

  3.1.2 添加附加库目录

    项目 --- 属性 --- 属性页 --- 链接器 --- 常规 --- 附加库目录,添加如下路径

E:\code\Libraries\HKSDK\Libraries\win64

  3.1.3 添加附加依赖项

    项目 --- 属性 --- 属性页 --- 链接器 --- 输入 --- 附加依赖项,添加

MvCameraControl.lib

在自己的项目的头文件引用#include "MvCameraControl.h"即可。

4、具体开发步骤:

这里我采用的是型号为MV-CA050-10GC的海康工业相机,开发平台是VS2015,界面是在Qt5框架上开发的。(在VS2015中配置Qt这里不再赘述,网上有很多教程)

1)先连接相机用MVS软件测试

  具体怎么连接可以参考MVS软件安装目录(D:\MVS\MVS\Development\Documentations)下的《示例程序说明VS2008.pdf》说明

2)SDK开发

参考MVS安装目录:D:\MVS\MVS\Development\Samples\VC\VS下BasicDemo实例

操作相机的函数都在MyCamera类中,我们可以直接复制这两个文件到自己的项目里;

3)操作相机的流程:

具体的函数说明可以到安装目录《工业相机SDK使用手册.chm》查询

5、遇到的问题

1)运行BasiceDemo实例时出现如下错误"Open Fail:Error = 80000203:No permission"

这是因为MVS软件正在使用相机,相机的端口被占用了,把MVS软件关闭就行了。

VS2015配置海康威视工业相机SDK二次开发的更多相关文章

  1. 大华门禁SDK二次开发(一)-技术沟通

    项目中需要能够查询门禁信号和控制门禁设备,因此需要基于大华门禁SDK进行二次开发,开发语言C#.门禁开发中遇到了一些问题,经过与大华技术的邮件沟通也一一解决.做这个开发的时候,发现网上的资料比较少,想 ...

  2. 海康相机SDK二次开发只有视频无声音问题

    海康SDK相信做企业开发的的同仁,在项目中经常会用到,毕竟使用范围这么广. 本次就开发遇到的奇葩问题来说明一下我们的解决方案. 场景 虽然海康有4200客户端,但是对于高度定制化的项目,肯定不能再使用 ...

  3. 大华门禁SDK二次开发(二)-SignalR应用

    经过与大华技术支持的沟通,门禁服务程序已经开发好了,可以正常接收门禁开关事件,可以发送开门命令.基于项目实时性要求,这里使用SignalR实现门禁状态.控制命令的实时传送. 几种场景需求 根据Sign ...

  4. lync sdk 二次开发

    1.关于 UI Suppression Mode http://blog.thoughtstuff.co.uk/2014/08/the-6-things-you-need-to-know-about- ...

  5. ArcEngine10.1二次开发错误: 无法嵌入互操作类型,请改用适用的接口

    在之前配置ArcEngine.VS2010二次开发程序的时候,遇见"无法嵌入互操作类型,请改用适用的接口"的错误,在网上查了下,下面引用解决方法. 解决方式为在提示错误的引用上面右 ...

  6. 17 win7 sp1 x64/VS2015下配置creo4.0二次开发环境——调用了众多开源库(ceres-solver,PCL1.8.0,office 2016COM接口,MySql数据库等)

    0 引言 本次开发环境的配置是在综合考虑了开源库的版本.VS版本以及CREO4.0的版本,同时针对甲方需求选择了win7 sp1 x64系统. 配置的过程中遇到了形形色色的问题,但是一一解决了.通过这 ...

  7. VS2015配置Andriod开发环境

    原文:VS2015配置Andriod开发环境 折腾了好久终于配置OK了,分享给大家! 第一步: http://xamarin.com/download下载XamarinInstaller 第二步: 运 ...

  8. Revit二次开发环境配置(Revit 2020 +Visual Studio 2019)

    Revit二次开发环境搭建(Revit 2019+Visual Studio 2017)准备内容 Revit 2019开发环境的搭建,需要安装的内容如下: Revit 2019(主要的开发环境) Vi ...

  9. 【基于spark IM 的二次开发笔记】第一天 各种配置

    [基于spark IM 的二次开发笔记]第一天 各种配置 http://juforg.iteye.com/blog/1870487 http://www.igniterealtime.org/down ...

随机推荐

  1. Python_DOM

    Dom简介:Js通过标签筛选让html多文件联动 1.找到标签 获取单个元素 docum ent.getElemrntByID('i1') 获取多个元素(列表)document.getElemrnts ...

  2. 2018.1.15复习_ css+js

    [1]几个常见的css标签:--------------------------------------------------background-color; 设置背景颜色background-p ...

  3. NLP之统计句法分析(PCFG+CYK算法)

    一.认识句法分析 首先,了解一下句法分析到底是什么意思?是做什么事情呢?顾名思义,感觉是学习英语时候讲的各种句法语法.没错!这里就是把句法分析过程交给计算机处理,让它分析一个句子的句法组成,然后更好理 ...

  4. Camtasia制作视频分割与视频拼接

    视频的分割与拼接是在制作和编辑视频中经常用到的方法,运用Camtasia视频编辑器能够让视频制作更加的简单和便捷.Camtasia是一款录频软件和视频编辑器,可以进行屏幕录制.拖放视频等操作.小编采用 ...

  5. kubelet CPU 使用率过高问题排查

    kubelet CPU 使用率过高问题排查 问题背景 客户的k8s集群环境,发现所有的worker节点的kubelet进程的CPU使用率长时间占用过高,通过pidstat可以看到CPU使用率高达100 ...

  6. ConvTranspose2d

    nn.ConvTranspose2d的功能是进行反卷积操作 nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride=1, p ...

  7. sqli-labs-master less02-04

    sql注入0-4关只存在注入方式的区别 第一关 ?id=1'--+ ' 第二关 ?id=1--+ 无 第三关 ?id=1')--+ ') 第四关 ?id=1")--+ ") 过程同 ...

  8. Plant Leaves Classification植物叶子分类:基于孪生网络的小样本学习方法

    目录 Abstract Introduction PROPOSED CNN STRUCTURE INITIAL CNN ANALYSIS EXPERIMENTAL STRUCTURE AND ALGO ...

  9. Hyper-V 中设置虚拟机静态 IP

    一.新建虚拟网络交换机 二.配置网络 网络共享默认使用 192.168.137.0/255 作为内网地址,192.168.137.1 作为网关 三.配置虚拟机静态 IP 安装完成虚拟机后修改配置文件: ...

  10. C#设计模式-组合模式(Composite Pattern)

    概念 组合是一种结构型设计模式, 你可以使用它将对象组合成树状结构, 并且能像使用独立对象一样使用它们. 组合模式(Composite Pattern)是将对象组合成树形结构以表示'部分-整体'的层次 ...