OpenCV/CUDA/Qt 环境配置小结

本文档提供了在Windows环境下配置OpenCV、Qt和CUDA的详细步骤,包括环境变量设置、路径添加等内容,并附带了生成lib文件的Matlab脚本。
部署运行你感兴趣的模型镜像

OpenCV Qt CUDA windows环境下 配置


反复装过几次,每次都网搜攻略;自个做个记录 方便以后使用。


碰到OpenCV各种奇怪的错误 先看看 图片imread() 有没有读空 再找其他问题


基本套路就是:1 Bin 2 include 3 lib/.lib


  1. 将Bin加入环境变量:选择相应平台 vc等——  G:\OpenCV\opencv2.4.6\build\x86\vc11\bin; G:\OpenCV\opencv2.4.6\build\x64\vc11\bin
  2. 加入VC的include  lib路径名






完成 
生成lib的matlab脚本:

path = 'C:\Qt\Qt5.1.0\5.1.0\msvc2012_64\lib'
filenames = dir(path);
out = fopen('lib.txt', 'w+');

for i = 3:size(filenames)
    idx = strfind(filenames(i).name, '.lib');
    if isempty(idx)
        continue
    end
    fprintf(out, '%s\n', filenames(i).name )
    
end

QT:





CUDA:













您可能感兴趣的与本文相关的镜像

PyTorch 2.8

PyTorch 2.8

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### OpenCV 4.7.0 cudaarithm 模块构建错误解决方案 在构建 OpenCV 时,如果遇到 `cudaarithm` 模块下 `cuda_compile_1_generated_minmaxloc.cu.o` 文件生成时的错误,通常与 CUDA 配置、编译器版本或依赖项不匹配有关。以下是详细的分析和解决方法。 #### 问题原因分析 1. **CUDA 版本与 OpenCV 不兼容**:OpenCV 的某些版本可能需要特定的 CUDA 版本支持。例如,OpenCV 4.7.0 可能要求 CUDA 11.x 或更高版本[^3]。 2. **编译器配置问题**:CMake 在检测 CUDA 编译器时可能出现错误配置,导致生成的文件无法正确编译。 3. **链接器错误**:缺少必要的库文件或链接选项,例如 `-lcudart` 或其他 CUDA 相关的库[^4]。 4. **环境变量未正确设置**:CUDA 路径未正确添加到环境变量中,或者 CMake 配置时未指定正确的 CUDA 工具链路径。 #### 解决方案 以下是逐步解决问题的方法: 1. **确认 CUDA 版本** 确保安装的 CUDA 版本与 OpenCV 兼容。可以通过以下命令检查 CUDA 版本: ```bash nvcc --version ``` 如果版本不兼容,请卸载当前版本并安装适合的 CUDA 版本[^5]。 2. **更新 CMake 和编译器** 确保使用的是最新版本的 CMake(建议至少为 3.20),因为较新的 CMake 对 CUDA 支持更好。此外,确保 GCC 版本与 CUDA 兼容(通常推荐 GCC 9 或更低版本)[^6]。 3. **调整 CMake 配置** 在 CMake 配置阶段,明确指定 CUDA 工具链路径和相关参数。例如: ```bash cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D WITH_CUDA=ON \ -D ENABLE_FAST_MATH=1 \ -D CUDA_FAST_MATH=1 \ -D WITH_CUBLAS=1 \ -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda \ .. ``` 这里需要注意以下几点: - `-D WITH_CUDA=ON` 启用 CUDA 支持。 - `-D CUDA_TOOLKIT_ROOT_DIR` 指定 CUDA 安装路径。 - `-D CUDA_ARCH_BIN` 设置目标架构(例如 `7.5` 表示 Turing 架构)[^7]。 4. **检查链接器选项** 如果仍然出现链接错误,可以手动修改 CMake 配置文件或在编译时添加必要的链接选项。例如,确保 `-lcudart` 被正确链接: ```makefile target_link_libraries(opencv_test_objdetect PRIVATE cudart) ``` 5. **清理旧构建文件** 如果之前尝试过多次构建,可能会残留旧的构建文件。建议删除整个构建目录并重新开始: ```bash rm -rf build/ mkdir build && cd build cmake .. make -j$(nproc) ``` 6. **调试输出** 如果问题仍未解决,可以启用详细日志以获取更多信息: ```bash make VERBOSE=1 ``` #### 示例代码 以下是一个完整的构建脚本示例: ```bash #!/bin/bash # 定义路径 OPENCV_SOURCE_DIR="/path/to/opencv" BUILD_DIR="build" # 创建构建目录 mkdir -p $BUILD_DIR && cd $BUILD_DIR # 配置 CMake cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D WITH_CUDA=ON \ -D ENABLE_FAST_MATH=1 \ -D CUDA_FAST_MATH=1 \ -D WITH_CUBLAS=1 \ -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda \ -D CUDA_ARCH_BIN="7.5" \ $OPENCV_SOURCE_DIR # 编译 make -j$(nproc) # 安装 sudo make install ``` ### 注意事项 - 如果仍然遇到问题,可以尝试禁用 `cudaarithm` 模块进行测试: ```bash cmake -D OPENCV_DNN_CUDA=OFF .. ``` - 确保系统已正确安装所有依赖项,例如 `libjpeg-turbo` 和 `libpng`。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值