海康威视网络摄像头SDK中Demo的二次开发(运行)
如有问题请邮件联系:2018@yinjinjing.cn
我们买回来的网络摄像头可以在官网下载到SDK开发包:
下载下来SDK后我们解压,就可以看到里面包含一些开发文档以及一些Demo示例:
我们点开Demo示例,可以看到里面有各种语言的示例,这里我们以MFC为例进行说明:
这里,我们需要注意阅读编译环境说明:
其中,MFC综合示例是没有问题的,我们直接导入头文件和库文件就可以运行,但是对于分功能的示例就存在一些问题,这里我们就以分功能中的第一个为例进行演示:
由于电脑上没有安装VS2008,所以这里无视环境,直接用VS2013单向升级后打开:
打开后我们首先要进行一个地方的修改,这是SDK文档的一个失误,就是输出目录不一致,这会直接导致后面执行的出错:
这里我们选择修改配置属性→常规→输出目录(两个保持一致即可),修改为:
.\bin\
接下来我们进行文件的导入,这里需要选择Debug x64,这个的选择和你下载的SDK以及你的系统有关:
右击属性,填入我们头文件的路径:
修改完成后记得点应用,同样的操作我们再添加库文件:
这是我们一定记得选择Debug为x64,否则会各种报错:
紧接着我们生成运行:
提示缺少DLL文件,这时我们把这些文件按照SDK说明文档的做法复制到bin目录下即可正常运行:
注:一定不要漏赋值,否则会造成后面程序运行出错
我们填好我们在相机激活的时候的配置信息之后,就可以顺利使用官方给的Demo了:
附1:如果你需要对摄像机的图像进行抓图并显示到程序页面上,请参考:
基于MFC海康威视摄像头Demo(含抓图显示|不含云台)
效果如图所示:
附2:如果你需要对抓取的图片做图像处理:
请参考:海康威视图像处理Demo
效果如图所示:
附3:如果你需要海康威视相机标定的示例
请参考:海康威视标定DEMO
效果如图所示:
附4:如果你需要视频的多路播放(连接多个相机,用于双目或者多目的开发)
请下载: 海康威视多目Demo
需要详细的说明请参考:海康威视多路播放博客
效果如图所示:
附5:如果你需要对摄像头返回图像的文字,时间,叠加进行更改:
请参考:海康威视摄像机OSD设置、字符叠加(时间,通道名称)
效果如图所示:
附6:如果我们需要在三维重建前进行一个物体的识别并针对特定物体进行优化(此部分博主尚未实现,仅是一种思路,欢迎有比较好的想法的读者可以私信或留言给博主指导!):
请参考:物体识别,Win7下运行TensorFlow Object Detection API详细版教程(零基础操作)
附7:如果你需要利用双目或多目摄像机进行三维重建,达到如下的效果图,请参考博客:双目三维重建—基于特征点匹配的被动式三维重建(OpenCV+OpenGL)
和摄像头SDK相连的程序,如图二所示的程序代码还在整理中,如果您有需要请关注博主博客
附8:如果你还没有选购网络摄像头或者不知道如何选择网络摄像头,请参考博客:海康威视网络摄像头购买指南(焦距&像素等参数)
附9:如果您已经购买了网络摄像机但是不知道如何首次激活使用,请参考博客:海康威视摄像头初始化设置(新相机的第一次配置&相机恢复出厂设置)
附10:如果您需要制作海康威视+OpenCV的播放器,请下载Demo:海康威视+OpenCV播放器(具体博文尚在整理中)
附11:如果您需要进一步附7所示的改进双目三维重建算法的效果,可以参考 :一种基于主体识别技术的三维重建改进算法
传统三维重建算法效果图:
改进后三维重建算法效果图: