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

64位win7+opencv3.0.0+cuda6.5配置过程

2015-09-16 14:37 507 查看
64位win7+opencv3.0.0+cuda6.5配置过程

作;1.安装之前确认自己的显卡是否支持CUDA,,并;2.从http://www.nvidia.cn/;3.从https://developer.nvi;4.从http://opencv.org/dow;5.从;二、配置CMAKE;由于未重新编译的OpenCV不支持CUDA,所以;1.点击cmake

64位Windows7+OpenCV3.0.0+CUDA6.5
一、准备工作
1. 安装之前确认自己的显卡是否支持CUDA,,并记住自己显卡的计算能力。本机显卡为GF840M计算能力为5.0
2. 从http://www.nvidia.cn/Download/index.aspx?lang=cn下载最新驱动并安装。
3. 从https://developer.nvidia.com/cuda-downloads下载最新版的CUDA Toolkit6.5 64位,安装,并将C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\bin添加到环境变量中(检查是否已经默认添加),然后重启电脑。具体安装过程可参考
4. 从http://opencv.org/downloads.html下载opencv3.0.0beta版本,并解压到D:\software\OpenCV300
5. 从
二、配置CMAKE
由于未重新编译的OpenCV不支持CUDA,所以需要对OpenCV 源文件进行重新编译产生新的库文件。
1. 点击cmake-gui.exe, 开启对话框,并添加源代码路径(sources文件夹)如下图所示。并添加输出工程文件路径(图中使用自建的vs2012_gpu文件夹)。点击Configure, 产生选项。

2. 在弹出对话框中选择目标平台:我这里选择
VS11 Win64,然后点击Finish

3.为了加快编译,可以将CUDA_ARCH_BIN中的数字设置为目标GPU的Compute Capability。比如本机显卡为GF840m,将CUDA_ARCH_BIN设置为3.0、3.5、5.0,CUDA_ARCH_PTX为5.0。并确定WITH_CUDA 选项已被勾选。
再次点击Configure按钮完成配置(注意这里要再Configure一次)。最后点击Generate按钮生成OpenCV工程文件。
注意:CUDA_ARCH_BIN和CUDA_ARCH_PTX的值参看
,希望能有高人指点

三、编译OPENCV
1.以管理员身份打开VS2012,然后打开OpenCV.sln文件,选择View-> Properties Manager->分别选中ALL_BUILD中的Debug和Release上的
Microsoft.Cpp.Win64.user,依次添加Executable Directories、Include Directories和Library Directories。

2.执行编译即可(Debug/Release)。(这个过程比较漫长,win7 64位,4GB内存,大概需要3小时)
3. 点击CMakeTarget下的INSTALL->右键->仅本工程build,之后会在
D:\software\OpenCV300\opencv\vs2012_gpu\install文件夹下的bin文件夹中存放相应的动态库,在lib文件夹下存放相应的静态库。
4.将D:\software\OpenCV300\opencv\vs2012_gpu\install\x64\vc11\bin加入环境变量,并重启。
四、测试

1. 打开vs2012,新建一个控制台应用程序,为vs2012配置OpenCV环境:选择View-> Properties Manager->分别选中Debug和Release上的
Microsoft.Cpp.Win64.user,点击右键-->Properties:VC++
Directories,Include Directories

3.选中工程->Properties->Configuration
Properties->Linker->Input->AdditionalDependencies:Debug和
Release,添加相应的.lib库;
注意:图片相关需要加opencv_imgcodecs300d.lib
视频相关需要加opencv_videoio300d.lib
4.在D:\software\OpenCV300\opencv\sources\samples\gpu下找个demo测试。并在代码加入(如果iDevicesNum结果非0,说明安装配置正确。)
int iDevicesNum = getCudaEnabledDeviceCount();
cout<<iDevicesNum<<endl;

参考:http://qingqingzjin.blog.163.com/blog/static/1881032672014323114530887/ http://wenku.uu456.com/view/9893ec57763231126edb11b8.html http://stackoverflow.com/questions/22823186/opencv-gpu-mat-hanging
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: