发布时间:2023-03-03 19:00
1、安装好cuda驱动
可参考CUDA 环境搭建_ima_zhan的博客-CSDN博客_cuda环境搭建
2、下载opencv 3.11 的源代码和lib
在官网的release页面可以找到各版本的下载
Releases - OpenCV
3、下载cmake 3.23.2,百度去官网下载即可
4、打开cmake,选择源文件为opencv3.11源代码,编译目录为新建的opencv311_build
点击Configure,在配置窗口中进行如下配置:
在WITH中选择WITH_CUDA,WITH_NVCUVID。
在BUILD中选中BUILD_opencv_world将文件编译为一个dll,确实方便引用了,但是文件有点大,我这个最后有200多兆。
Configure中遇到错误可以再次点击Configure试一下,其它错误可以参考5中的解决方法。
完成Configure后点击Generate生成工程,然后点击OpenProject打开工程。
5、编译时遇到的几个问题
1、先选择cuda,点击Configure按钮运行一遍后才能看到cuda的选项,在CUDA_ARCH_BIN中配置自己需要的版本确实可以提高后面在vs中的编译速度。其它一些加速方法,在别人的博客里查到一些很有用,直接引用了 win10 编译opencv4.5.0 (gpu版)_Mr.Q的博客-CSDN博客_win安装opencv
2、文件无法下载
ffmpegedll还有其他一些文件无法自动下载,可以下载后替换.cache文件,主要下载后的文件改为和.cache中一样的名称。下载连接可以在错误提示的文件中查看,在build文件夹的CMakeDownloadLog.txt中有所有几路。
3、编译时cuda选项是用自动选择的选择,若全部选中在vs中编译时会报错。我遇到的情况是这样的,详细原因还未查。
6、编译后的使用时遇到的错误
编译成功后建立了一个mfc工程来测试opencv_world3411d.dll的调用,遇到了几个错误
错误1:
将源文件中的include文件夹添加到
base.hpp中提示,下图错误
运行工程中的Install,会在 opencv311_build目录下生产install目录,其中有include文件夹中包含了需要引用的头文件。将此文件夹添加到C++的包含目录,具体操作如下:
错误2:编译提示“无法解析的外部符号 private:void _cdecl cv::String::deallocate(void)"
需要将install目录下的x64(因为我使用的是x64)目录下的vc16/lib下的opencv_world3411d.lib添加到工程OpenCvCamera的lib列表中,具体操作为
首先将install目录下的x64/vc16/lib目录添加到vc++的库目录,如下
然后在连接器的输入中添加opencv_world3411d.lib,如下
如何用python进行相关性分析_Python 数据相关性分析
【PyTorch】动手学深度学习-梳理与笔记小结|深度学习计算
wallys/3×3 MIMO 802.11ac Mini PCIe2,4GHz / 5GHz Wireless
c#中winform根据邮箱地址和密码一键发送email的实现
vue解决Not allowed to load local resource
基于opencv和np.repeat的图像马赛克和人脸检测马赛克(python源码)
在Jetson Nano上学习ROS的记录(版本Ubuntu18.04,课程来源赵虚左老师的《ROS理论与实践》)第十章-第二节 TF坐标变换实操
Django学习笔记:简单Django+Mysql实现学生信息管理系统实现(注册、登录、增删改查)