使用 OpenCv 2.4.10 + Cuda 7.5 + W10 不支持 GPU [英] No GPU Support using OpenCv 2.4.10 + Cuda 7.5 + W10
问题描述
我正在尝试使用以下方法启动和运行 GPU:
- OpenCv 2.4.10
- Visual Studio 2013
- Cuda 工具包 7.5(已测试并运行的 cuda 示例)
- Windows 10 x64
- 采用 NVIDIA GEFORCE GTX 860M 的联想 Y50
我使用 CMake 编译 OpenCv,WITH_CUDA=ON,然后通过打开 OpenCv.sln 安装库并构建 ALLBUILD 和 INSTALL 项目.
将我的项目配置设置为:
VC++ 目录
VC++ Directories
- 包括目录:
- C:\Program Files\NVIDIA GPU 计算工具包\CUDA\v7.5\include
- C:\OpenCv\opencv\build\install\include(包含编译的库)
- C:\OpenCv\opencv\build\include
Linker-general-附加库
Linker-general-Additional libraries
- C:\OpenCv\opencv\build\x64\vc12\lib
- C:\OpenCv\opencv\build\install\x64\vc12\lib
链接器输入附加依赖
- opencv_calib3d2410d.lib
- opencv_contrib2410d.lib
- opencv_core2410d.lib
- opencv_features2d2410d.lib
- opencv_flann2410d.lib
- opencv_gpu2410d.lib
- opencv_highgui2410d.lib
- opencv_imgproc2410d.lib
- opencv_legacy2410d.lib
- opencv_ml2410d.lib
- opencv_nonfree2410d.lib
- opencv_objdetect2410d.lib
- opencv_ocl2410d.lib
- opencv_photo2410d.lib
- opencv_stitching2410d.lib
- opencv_superres2410d.lib
- opencv_ts2410d.lib
- opencv_video2410d.lib
- opencv_videostab2410d.lib
我的环境变量:路径= C:\Program Files\NVIDIA GPU Computing;Toolkit\CUDA\v7.5;C:\OpenCv\opencv\build\install\x64\vc12\bin;C:\OpenCv\opencv\build\x64\vc12\垃圾箱
My environment variables: Path= C:\Program Files\NVIDIA GPU Computing;Toolkit\CUDA\v7.5;C:\OpenCv\opencv\build\install\x64\vc12\bin;C:\OpenCv\opencv\build\x64\vc12\bin
测试代码:
#include "opencv2\opencv.hpp" #include "opencv2\gpu\gpu.hpp" using namespace cv::gpu; using namespace std; int main() { { setDevice(0); int gpu = getCudaEnabledDeviceCount(); cout << gpu ; system("pause"); return 0; } }in
但是 setDevice 抛出
But setDevice throws
没有 GPU 支持(该库编译时没有 CUDA 支持)EmptyDeviceInfoFuncTable::setDevice, 文件c:\builds\2_4_PackSlave-win64-vc12-shared\opencv\dynamicuda\include\opencv2/dynamiccuda/dynamicuda.hpp.第 84 行
no GPU support (The library is compiled without CUDA support) in EmptyDeviceInfoFuncTable::setDevice, file c:\builds\2_4_PackSlave-win64-vc12-shared\opencv\dynamicuda\include\opencv2/dynamiccuda/dynamicuda.hpp. line 84
如果我评论 setDevice(0) 仍然没有检测到 gpu,getCudaEnabledDeviceCount 返回 0.
and if i comment setDevice(0) the gpu is still not detected, getCudaEnabledDeviceCount returns 0.
推荐答案
问题是 Opencv 2.4.10 支持 CUDA 4.2 而我的显卡只兼容 CUDA 6.5 和 7.5 ,我通过安装 OpenCV 3.0.0 解决了
The problem is that Opencv 2.4.10 supports CUDA 4.2 and my video card is compatible only with CUDA 6.5 and 7.5 , I solved by installing OpenCV 3.0.0
这篇关于使用 OpenCv 2.4.10 + Cuda 7.5 + W10 不支持 GPU的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!