关于python调用海康威视SDK
项目场景:
Win10系统,64位,Anaconda3
python 3.8(基于anaconda环境)
opencv 3.4.1
Visual Studio 2015
硬件:DS-2CD3T86FWDV2-I5S
相机SDK:CH-HCNetSDKV6.1.6.45_build20210302_win64(先将头文件和库文件改为include和lib)
至于环境什么的有两位博主写的很好,大家可以借鉴。我主要查漏补缺,讲一下我遇到的问题。
https://blog.csdn.net/yinweizhehd/article/details/118722052?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162832140816780255261960%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162832140816780255261960&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-18-118722052.first_rank_v2_pc_rank_v29&utm_term=python%E8%B0%83%E7%94%A8%E6%B5%B7%E5%BA%B7SDK&spm=1018.2226.3001.4187
https://blog.csdn.net/c20081052/article/details/95082377?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allfirst_rank_v2~rank_v25-11-95082377.nonecase&utm_term=python%E8%AF%BB%E5%8F%96%E6%B5%B7%E5%BA%B7%E5%A8%81%E8%A7%86%E6%91%84%E5%83%8F%E5%A4%B4
问题一:
HKIPcamera.cpp中出现的问题
比如少}之类的,统一解决。
解决方案:
在79行添加}
将 “码流回调成功!“改为"码流回调成功!.”
将L"PlayM4_InputData failed \n"前面的L删除
或者直接注释这句话//OutputDebugString(L"PlayM4_InputData failed \n”);
问题二:
能够生成.dll和.lib文件,但是test.py的时候一直报错
import HKIPcamera
import _HKIPcamera
ImportError: DLL load failed: 找不到指定的模块。
解决方案:
这个问题有很多原因,采用下面的方式一一解决:
方式一:https://blog.csdn.net/GottaYiWanLiu/article/details/106187962
采用这位博主的方式
方式二:将CH-HCNetSDKV6.1.6.45_build20210302_win64\lib下的18个dll文件还有下载的opencv3.4.x下所有的dll文件全部拷贝到test.py同目录下。
方式三:一般采用上面的两个方式都能解决问题,如果还是没解决,基本可以确定你在vs2015\2017中使用的anaconda环境和你最后跑test的环境不一样,在vs中用的什么环境,还用环境下的python跑!!!!