微信公众号:OpenCV学堂 关注获取更多计算机视觉与深度学习知识
软件版本支持
CMake3.13 或者以上版本
代码语言:javascript复制https://cmake.org/
VS2017专业版或者以上版本
3050ti CUDA11.3
OpenCV4.8源码包
代码语言:javascript复制https://github.com/opencv/opencv/releases/tag/4.8.0
OpenCV4.8 扩展模块源码包
代码语言:javascript复制https://github.com/opencv/opencv_contrib/releases/tag/4.8.0
把OpenCV4.8与OpenCV4.8扩展包都解压缩到D盘,目录分别如下:
代码语言:javascript复制D:opencv-4.8.0
D:opencv_contrib-4.8.0
编译生成
打开CMake,设置好如下的目录选项
然后点击【Configure】弹出对话框如下:
点击【Finish】完成 配置生成。然后点击【Generate】完成生成。
然后设置扩展模块路径
设置完成以后,搜索CUDA关键字,全部勾上相关选项之后继续点击【Configrure】,运行完成以后,再次搜索CUDA关键字,选择如下:
点击【Generate】,生成如下:
从newbuild文件夹中选择OpenCV.sln 工程文件 双击打开如下:
然后切换到Release模式,点击INSTALL右键生成,等待两个小时以后基本上会完成编译,我最终完成编译之后的结果。
技巧提示:
代码语言:javascript复制1.无法下载第三方文件,请手动下载以后放到source/.cache文件夹内相关位置即可。
2.无需编译XFeature2D、FaceModel、Test等模块,统统取消勾选(默认是勾选的)
配置运行测试
重新配置好OpenCV CUDA的支持,修改包含目录、库目录、链接器,然后设置好新的环境变量路径。启动VS2017,运行OpenCV的人脸检测案例,运行结果如下:
运行YOLOv8 姿态评估案例,效果如下
其中在OpenCV中启用GPU推理执行,需要设置下面两行代码:
代码语言:javascript复制net.setPreferableBackend(cv::dnn::DNN_BACKEND_CUDA);
net.setPreferableTarget(cv::dnn::DNN_TARGET_CUDA);
推荐阅读
Ubuntu系统下编译OpenCV4.8源码记录
Pytoorch轻松学 – RetinaNet自定义对象检测
基于OpenCV实现精准线线间距测量
OpenVINO2023异步回调流水线提升推理吞吐率
NNCF压缩与量化YOLOv8模型与OpenVINO部署测试
技能 | 三种主流的深度学习模型部署框架
深度学习模型C 推理,推荐看看 OpenVINO2022
OpenCV4系统化学习路线图(2023版)