前两天搞定了python环境下的dlib-19.19.0库和demo调用,地址:https://blog.csdn.net/yiyayiya557/article/details/104924445
因为项目问题,python环境下的硬件设备跑不起来,只能选择切换到C++环境下,使用硬件环境和dlib。
————————————————————————————
言归正传,现在介绍C++环境下的dlib-19.19.0和demo配置,我首先已经在python环境下配置成功。
1. 安装opencv
dlib要求dnn模块,而这个要求opencv版本>3.4,因此与python环境保持一致,选择下载windows版本的4.1.2版本进行安装,opencv-4.1.2-vc14_vc15.exe。安装完,很舒服,自带VC14和VC15的dll库,不用再编译VS2015环境了。
配置系统路径:
D:\OpenCV412\opencv\build\include;
D:\OpenCV412\opencv\build\x64\vc14\bin;
D:\OpenCV412\opencv\build\x64\vc14\lib;
D:\OpenCV412\opencv\build
如下是编译过程失败,提示缺少dnn模块的信息。
2. 建议安装CUDA、cudnn或pthread
编译过程中,寻找这几个是否安装,因为我之前已安装,此处不再赘述,记得很好安装CUDA、cudnn。
我安装的版本:cuda_10.1.168_425.25_windows.exe、cudnn-10.1-windows7-x64-v7.6.5.32.zip
3. 撰写CMakeLists.txt
cmake_minimum_required(VERSION 2.8.12)
PROJECT(face_detection)
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS})
include(./dlib/dlib/dlib/cmake)
MACRO(add_example name)
ADD_EXECUTABLE(${name} ${name}.cpp)
TARGET_LINK_LIBRARIES(${name} ${OpenCV_LIBS} dlib::dlib)
ENDMACRO()
add_example(face_detection_opencv_haar)
add_example(face_detection_opencv_dnn)
add_example(face_detection_dlib_hog)
add_example(face_detection_dlib_mmod)
add_example(run-all)
4. 下载dlib
地址:https://github.com/davisking/dlib
解压放在demo根目录下,位置:“./dlib/dlib”
5. 编译
在demo根目录下,编译CMakeLists.txt,shift+右键,进入命令窗口,输入
cmake . -G "Visual Studio 14 2015 Win64" -T host=x64
等待一会,编译通过
6. 生成工程
cmake --build .
debug模式下dlib运行较慢,改为release模式
cmake --build . --config Release
生成成功,大功告成!