使用C++自编译opencv源码给python扩展CV2模块

公司最近做起了无人商店项目,需要识别人脸.人脸识别采用了海康的摄像头直接从摄像机抓图来自己识别人脸!先使用了标准的OpenCV   python库,最后效果不理想达不到可以需求的识别速度,希望能提高!

于是希望通过自己编译opencv的源码添加更多功能编译成pyd文件供python调用!

参考文档  https://docs.opencv.org/3.3.1/d3/d52/tutorial_windows_install.html  编译文档 https://docs.opencv.org/3.3.1/d5/de5/tutorial_py_setup_in_windows.html

各种安装包如下

第一步安装python3

64位系统 下的Python3.5。python3.5、pip为必备前提。python可在官网下载:https://www.python.org/downloads/windows/,建议使用exe installer,pip会随之安装。环境变量中加入python安装路径,

安装numpy,打开CMD窗口使用pip安装

pip install numpy

第二步安装vs2015_x64位的编译环境,安装选项如下,然后一路NEXT安装通过


第三步安装  cmake,cuda, doxygen的exe安装包,完成后重启机器,让所有的安装都生效

第四步 源码准备
双击opencv-3.4.0-vc14_vc15.exe 将源码解压到D盘根目录

在sources目录下新建一个dep文件夹,将eigen  openexr  TBB的源码解压到这个目录中

把OpenBLAS已经编译完成的压缩包 OpenBLAS-v0.2.19-Win64-int32.zip 解压到D盘根目录


第五步 启动cmake配置编译的参数


第三步选择刚OpenBLAS压缩包解压的路径,引入包和dll文件
第四步选择配置的时候一定要记得选着VS的版本和当前安装版本一致,否者会出现找不到编译器的异常
第五步检查生成代码完成后,直接点击第六步,通过VS打开项目
将debug改成Release 模式

找到INSTALL 鼠标右键选择菜单的生成按钮,大约几个小时候编译完成!编译完成后我们就可以在
python的安装目录下Python\Python35\Lib\site-packages找到生成好的PYD文件

此时我们就可以import CV2这个python模块 不报错就表示引起包成功