Windows7 32位机上,OpenCV中配置GPU操作步骤

来源:互联网 发布:phpstorm格式化js代码 编辑:程序博客网 时间:2024/05/16 08:44

1、  查看本机配置,查看显卡类型是否支持NVIDIA GPU,本机显卡为NVIDIA GeForce 8400 GS;

2、  从http://www.nvidia.cn/Download/index.aspx?lang=cn下载最新驱动并安装;

3、  从https://developer.nvidia.com/cuda-toolkit根据本机类型下载相应最新版的CUDA Toolkit5.0,安装,并通过样本程序验证其安装正确;

4、  将C:\ProgramFiles\NVIDIA GPU Computing Toolkit\CUDA\v5.0\bin添加到环境变量中(检查是否已经默认添加);

5、  从http://threadingbuildingblocks.org/下载最新版的TBB4.1,解压缩,并将其bin目录D:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\bin\ia32\vc10添加到环境变量中,注销或重启;

6、  从http://opencv.org/downloads.html 下载最新版本的OpenCV2.4.6,并解压缩到D:\soft\OpenCV2.4.6文件夹中;

7、  从http://www.cmake.org/cmake/resources/software.html下载最新版本的CMake2.8.11.2并安装;

8、  打开CMake,在Where isthe source code:中选择D:\soft\OpenCV2.4.6\opencv文件夹,在Where to buildthe binaries:中选择D:/soft/OpenCV2.4.6/vs2010_GPU文件夹,此文件夹为手动创建;

9、  点击Configure按钮,在弹出的对话框中选择VisualStudio 10,然后点击Finish;

10、             如果有红色框出现,勾选BUILD_EXAMPLES、WITH_TBB、WITH_CUBLAS、WITH_CUDA、WITH_CUFFT,然后再次点击Configure按钮;

11、             如果还有红色框出现,TBB_INCLUDE_DIRS,将其值改为D:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\include为TBB中include所在的目录,然后再次点击Configure按钮;

12、             如何还有红色框出现,TBB_LIB_DIR、TBB_STDDEF_PATH,再次点击Configure按钮;

13、             如果在下方信息框中有:Use TBB: YES(ver 4.1 interface 6105),Use Cuda: YES(ver5.0),证明我们已经将inteltbb和CUDA正确配置;

14、             点击Generate按钮,此时会在D:\soft\OpenCV2.4.6\vs2010_GPU文件夹下生成OpenCV.sln文件;

15、             以管理员身份,使用vs2010打开OpenCV.sln文件,选择View--> Properties Manager-->分别选中ALL_BUILD中的DebugRelease上的Microsoft.Cpp.Win32.user,依次添加inteltbbCUDAExecutable DirectoriesInclude DirectoriesLibrary Directories,点击右键-->PropertiesVC++ DirectoriesInclude DirectoriesD:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\includeC:\Program Files\NVIDIAGPU Computing Toolkit\CUDA\v5.0\includeLibrary DirectoriesD:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\lib\ia32\vc10  C:\Program Files\NVIDIA GPU ComputingToolkit\CUDA\v5.0\lib\Win32Executable DirectoriesD:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\bin\ia32\vc10 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\bin

16、             选中modules中的opencv_gpu,点击右键,选择Properties-->Linker-->Input-->Ignore SpecificDefault Libraries加入libcmtlibcmtd

17、             分别在DebugRelease下,选择Solution Explorer里的Solution OpenCV,点击右键,运行”Rebuild Solution”,点击CMakeTargets下的INSTALLbuild;会在D:\soft\OpenCV2.4.3\vs2010\install文件夹下的bin文件夹中存放相应的动态库,在lib文件夹下存放相应的静态库;

18、             打开vs2010,新建一个控制台应用程序,为vs2010配置OpenCV环境:选择View--> Properties Manager-->分别选中DebugRelease上的Microsoft.Cpp.Win32.user,点击右键-->PropertiesVC++ DirectoriesInclude DirectoriesD:\Soft\OpenCV2.4.6\vs2010_GPU\install\includeD:\Soft\OpenCV2.4.6\vs2010_GPU\install\include\opencvD:\Soft\OpenCV2.4.6\vs2010_GPU\install\include\opencv2Library DirectoriesD:\Soft\OpenCV2.4.6\vs2010_GPU\install\lib

19、             选中工程-->Properties-->Configuration Properties-->Linker-->Input-->AdditionalDependenciesDebugRelease,添加相应的.lib库;

20、               D:\soft\OpenCV2.4.6\vs2010_GPU\install\bin加入到windows系统环境变量Path中,重启。

 

说明

(1)、安装CUDA Toolkit时最好不要修改其默认的安装目录;

(2)、其中TBB不是必须的,也可不用安装,即第51112步可省略;

(3)、为了缩短编译时间,可以通过CMake中改变CUDA_ARCH_BINCUDA_ARCH_PTX值进行设置,将BUILD_EXAMPLES和WITH_TBB的勾选去掉

(4)、在编译前最好把360安全卫士和杀毒软件关闭;

(5)、也可不用管理员身份打开OpenCV.sln,第15步的属性配置也不是必须的;

(6)、也可以不用修改opencv_gpu模块的属性配置,默认即可,即第16步也不是必须的;

(7)、编译过程中会弹出数次对话框,如出现宏对话框则点击Cancel选项,其它则选择Yes选项;

(8)、编译成功后的库也可以直接应用于OpenCV中的OpenCL模块。

 

示例如下,如果iDevicesNum结果非0,说明安装配置正确。

#include "stdafx.h"#include <opencv2/opencv.hpp>#include <opencv2/gpu/gpu.hpp> using namespace cv;using namespace cv::gpu; int_tmain(int argc, _TCHAR* argv[]){   int iDevicesNum = getCudaEnabledDeviceCount();    cout<<iDevicesNum<<endl;    return 0;}


参考文献:

1、  http://opencv.willowgarage.com/wiki/OpenCV_GPU

2、  http://docs.opencv.org/modules/gpu/doc/introduction.html

3、  http://wenku.baidu.com/view/81e29c6f011ca300a6c390dd.html

4、  http://blog.cuvilib.com/2011/03/22/how-to-build-opencv-2-2-with-gpu-cuda-on-windows-7/

5、  http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-microsoft-windows/index.html