您的位置:首页 > 运维架构

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

2013-08-08 10:10 274 查看
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中的Debug和Release上的Microsoft.Cpp.Win32.user,依次添加inteltbb和CUDA
的Executable Directories、Include Directories和Library
Directories,点击右键-->Properties:VC++ Directories,Include
Directories:D:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\include
C:\Program Files\NVIDIAGPU Computing Toolkit\CUDA\v5.0\include;Library Directories:D:\soft\OpenCV2.4.6\TBB\tbb41_20130613oss\lib\ia32\vc10
C:\Program Files\NVIDIA GPU ComputingToolkit\CUDA\v5.0\lib\Win32;Executable Directories:D:\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、 分别在Debug和Release下,选择Solution
Explorer里的Solution OpenCV,点击右键,运行”Rebuild Solution”,点击CMakeTargets下的INSTALL,build;会在D:\soft\OpenCV2.4.3\vs2010\install文件夹下的bin文件夹中存放相应的动态库,在lib文件夹下存放相应的静态库;

18、 打开vs2010,新建一个控制台应用程序,为vs2010配置OpenCV环境:选择View-->
Properties Manager-->分别选中Debug和Release上的Microsoft.Cpp.Win32.user,点击右键-->Properties:VC++
Directories,Include Directories:D:\Soft\OpenCV2.4.6\vs2010_GPU\install\include;D:\Soft\OpenCV2.4.6\vs2010_GPU\install\include\opencv;D:\Soft\OpenCV2.4.6\vs2010_GPU\install\include\opencv2;Library
Directories:D:\Soft\OpenCV2.4.6\vs2010_GPU\install\lib;

19、 选中工程-->Properties-->Configuration Properties-->Linker-->Input-->AdditionalDependencies:Debug和Release,添加相应的.lib库;

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



说明

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

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

(3)、为了缩短编译时间,可以通过CMake中改变CUDA_ARCH_BIN、CUDA_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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: