1.概述

最近一段时间要从海康摄像头读取数据,作为程序的输入源,c++版本有海康有自己的demo,较为简单,很容易就实现了,但是为我们其他的程序都是基于python的,因此,需要使用Python调用海康的c++ sdk。

其实海康sdk提供了C#、java等多种语言的demo,但是实际上,都是通过不同语言调用C++,因此本质只提供了C++的SDK

1.1 知识点

使用python实现海康sdk二次开发-移动侦测事件的本质就是ctypes的使用

1.ctypes读入dll

2.ctypes与c++ python的数据对应

3. ctypes回调函数

1.2 直接使用

该程序的Python的源代码已经打包,可以按照以下步骤直接使用

下载地址 (资源审核通过后更新)

下载地址

[1] 按照2.1配置摄像头

[2] 按照2.2下载海康sdk文件

[3] 修改tools下 HkAdapter的类变量dll_path指向下载的海康sdk文件夹下的<库文件>目录(最好将该文件夹下的所有文件复制到一个英文路径的文件夹下)

[4] 修改test.py文件下,main函数中的

userid = login(hksdk, "192.168.8.112", "admin", "hk123456")

中,参数一保持不变,参数2为自己的ip地址,参数3为登录用户名,参数4为登录密码。

[5] python test.py  运行程序

2 Before

2.1 摄像头配置。

需要摄像头启用移动事件侦测。

从web登录海康摄像头,进入配置

从事件 -》普通事件找到移动侦测

点击启用移动侦测

绘制区域,使用红色网格线绘制目标区域

可以适当调节灵敏度

点击保存

java 海康视频sdk 海康sdk开发实例_python

选择区域设置的布防事件,测试时可以拉满  点击保存

java 海康视频sdk 海康sdk开发实例_java 海康视频sdk_02

选择联动方式

注意保证常规联动中的上传中心要被选中

java 海康视频sdk 海康sdk开发实例_java 海康视频sdk_03

至此,设置完成。

2.2 海康sdk下载

解压

java 海康视频sdk 海康sdk开发实例_python_04

最好将库文件夹,拷贝到一个独立的全英文的路径下,如,我这里使用

D:\Backup\solo\hkoython\dll

到此,所有的准确工作已经完成,可以进行二次开发了