opencv与GPU混合编程之重新编译gpu库
来源:互联网 发布:金和软件 编辑:程序博客网 时间:2024/06/05 11:12
这是我第二次发博客,心里有点小激动。。。
言归正传,有缘接触到GPU,并学习opencv与GPU混合编程,将其应用项目中去。在网上看了不少资料,发现现在参与opencv与GPU混合编程大牛不少,但是关于这方面的资料还是很少,建议有学习opencv与GPU混合编程的freshman可以去http://www.cnblogs.com/dwdxdy/p/3528711.html看看混合编程的参考示例。
以下说到的重新编译gpu库是因为我们使用第三种方法编程时需要用到opencv里面的gpu模块,如果不重新编译,即调用getCudaEnabledDeviceCount()会返回0值,返回0值是什么意思呢,就是说你调用设备的时候,没有设备可以调,这就相当于你无法用gpu里面的cuda,那样无法进行gpu加速啦。
下面我们说说编译gpu库,csdn有很多前辈已经有很详细的教程,具体可以参考
http://blog.csdn.net/fengbingchun/article/details/9831837
http://blog.csdn.net/quanquanyu/article/details/8917765
我来分享下我重新编译过程出现的问题及总结:
1.首先需要知道vs的版本,比如我用到的是vs2008专业版的,可以运行64平台程序(只需安装时添加x64编译器),你要跑32位程序,需要选择
这样你得到的lib,及bin文件可以在32位平台用了,如果你要在64位平台运行程序,需要改成Visual studio 9 2008Win64
注意我是用的vs2008的。有些人不确定自己到底用的是哪个版本,可以打开vs空项目,选择帮助,关于Microsoft Visual Studio查看。
2.尽量用比较新的opencv版本。比方说我用opencv2.3.1时发现缺少文件stream_accessor.hpp。
3.tbb、python2.7、Qt安装不是必须的步骤,如果你只是用gpu模块,可以不用安装。
4.Cmake设置时可以不用设置。
5.参考http://blog.csdn.net/wangyaninglm/article/details/39997113可以减少opencv.sln运行时间,首先查看自己电脑的cuda版本,链接https://developer.nvidia.com/cuda-gpus,然后修改CUDA_ARCH_BIN,清空CUDA_ARCH_PTX值。
6.编译opencv库时有可能出现问题,时刻记住代码没有问题,多找几个opencv版本试试。
7.如何使用编译好的lib,bin。可以参考opencv的默认存放路径,主要使用的是bin文件夹(包含dll文件)、lib文件夹(包括库文件)、include文件夹(主要是头文件)。如下
D:\opencv2.4.9\build文件包括
x64文件夹和x86文件夹包含
include文件夹包含
最后配置的时候就可以按照这个文件摆放路径配置。
最后:opencv和gpu混合编译正式开始
- opencv与GPU混合编程之重新编译gpu库
- GPU编程入门(5) 基础纹理混合
- 双GPU-c++MATLAB混合编程
- 【计算机视觉】OpenCV之GPU与OpenCL的相关内容说明
- 编译Opencv的GPU,利用CUDA加速
- OpenCV 2.4.12 GPU编译及使用
- Win10平台 OpenCV GPU模块的编译
- 【opencv】VS2015+opencv2.4.13 GPU模块编译
- GPU编程与CG语言
- 项目优化之:GPU编程
- OpenGL核心技术之GPU编程
- GPU编程
- GPU编程
- opencv的GPU编程(一)
- 《GPU编程与CG语言之阳春白雪下里巴人》 读书笔记1
- 《GPU编程与CG语言之阳春白雪下里巴人》 读书笔记2
- QT GPU混合使用
- GPU是什么?GPU编程是什么?
- 【容器】STL之效率比较
- ViewPager详解 <一> : 基础知识
- 在vs2010配置及删除opencv的 环境目录
- HDU 3488 Tour 费用流
- 作数的类型
- opencv与GPU混合编程之重新编译gpu库
- Android的NDK的UDPsocket通信
- jQuery取得select选中的文本与值
- Redis源码分析(二十二)--- networking网络协议传输
- 关于autorelease pool一个较好的理解
- 那该死的DATALINK
- Oracle数据字典
- C++虚函数表解析
- JAVA学习第五十六课 — IO流(十)对象的序列化和反序列化 & RandomAccessFile