编译OpenCV244使其支持GPU-CUDA

准备工作:

1、        在编译openCV 之前,首先确定本机显卡类型是否支持NVIDIA,因为openCV的GPU加速采用的是CUDA,而只有NVIDIA显卡设备才支持NVIDIA运算。

2、        去官网https://developer.nvidia.com/cuda-toolkit下载CUDA Toolkit,这里采用的是CUDA Toolkit5.0;从 https://www.threadingbuildingblocks.org/下载TBB工具包,这里采用的是tbb44。

将CUDA进行安装,安装过程参考本人博客 http://blog.csdn.net/wpynicholas/article/details/50853462  《GPU编程——CUDAVS2010下环境搭建》,并将tbb解压到固定任意目录。

3、        从https://cmake.org/download/下载编译工具CMake,并进行安装。这里采用的是CMake3.3.1,

 编译过程:

1、        运行CMake,选择opencv源码所在目录和编译生成的目标目录,如图所示


2、        点击configure 按钮,弹出对话框,如下图所示,选择所编译的工程环境。


我这里选择的是编译VS2010 的Win32版本,如需编译Win64版本,选择Win64,如你安装的是别的版本VS,选择对应的版本即可。

然后点击Finish按钮,等待,如下图所示。


3、        勾选BUILD_EXAMPLES、WITH_CUBLAS、WITH_CUDA、WITH_CUFFT WITH_NVCUVID WITH_FAST_MATH、WITH_TBB,再次点击configure按钮,如下图所示。


修改红色区域内的TBB所在的头文件路径,即前面准备工作步骤2中你解压TBB所在的目录下的include目录。修改以后,再次点击configure按钮,如下图所示


查看TBB的TBB_LIB路径和TBB_STDDEF路径是否正确,不正确则修改,注意这里要区分32位和64位,如你编译32位的,选择32位路径,如你编译64位,选择对应的64位路径。修改完成,再次点击configure按钮,如下图所示。


查看下面的信息是否正确,如果正确,则点击Generate 按钮,如下面显示Generating done,则显示生成成功。

4、        进入对应的生成结果目录,如下图所示,会生成VS的OpenCV相应的工程及解决方案,如下图所示。


5、        双击打开OpenCV解决方案,进行编译即可,编译过程中有时候会出现找不到头文件或者CUDA的库无法解析的情况,你不一定会遇到,但是我遇到了,我重新配置了一些VS工程CUDA对应的头文件以及库目录即可。编译过程比较耗时,耐心等待就可以了。


编译好以后,新建工程进行测试,代码如下:

#include "stdafx.h"
#include <opencv2/opencv.hpp>  
#include <opencv2/gpu/gpu.hpp>  

using namespace cv;

int _tmain(int argc, _TCHAR* argv[])
{
	int iDevicesNum = gpu::getCudaEnabledDeviceCount();  

	printf("Gpu device num = %d\r\n",iDevicesNum); 
	system("pause");
	
	return 0;
}

运行输出Gpu device num,其输出的是本机中GPU设备的个数,当不为0时,则说明编译成功。

 

 

本来打算将自己编译好的上传到资源里,结果一看太大,如果有需要的不打算自己进行编译,可以给我留言。我这里有编译好的x86版本和x64版本,采用的是OpenCV244、VS2010、CUDA5.0、TBB44。


 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值