安装OPenCV (GPU加速附带错误指南)

by 20150517

1.1下载openCV

首先是下载opencv,在openCV的最新版本中有提供对GPU的支持。因此我们最好下载opencv3.1

在http://opencv.org/网址中找到下载连接,

https://github.com/Itseez/opencv/archive/3.1.0.zip(此处可以使用wget命令)


安装OPenCV (GPU加速附带错误指南)_第1张图片
图1.1opencv下载


我用的是ubuntuServer版,没有desktop,因此试图在github上找到链接


安装OPenCV (GPU加速附带错误指南)_第2张图片

发现github上的这个链接似乎不能用git,那就不用wget。

git clonehttps://github.com/Itseez/opencv.git(https://github.com/Itseez/opencv.git)


好,opencv下载之后的目录如下:


1.2编译Opencv

接下来编译:

(此处参考opencev的官方文档:http://opencv.org/quickstart.html)

1.2.3第一步:检测依赖包似乎否安装

编译之前,先检查是否安装依赖的包:

sudo apt-get installbuild-essential

sudo apt-get installcmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-devlibswscale-dev

sudo apt-get install python-dev python-numpy libtbb2 libtbb-devlibjpeg-dev libpng-dev libtiff-dev libjasper-dev

libdc1394-22-dev

1.2.4第二步build Opencv

当保证opencv所以来的文件已经ubuntu环境下安装之后

cd~/opencv##切换到opencv所在的目录下

mkdir build##创建bild文件,用于存放build文件

cd ./build##进入刚刚创建的build目录

具体操作如下:


安装OPenCV (GPU加速附带错误指南)_第3张图片

接下来,进入此目录之后,进行cmdke

cmake -DCMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

##注意这里是..代表biuld的父目录。


PS:

这句话是说:将来安装的时候会放在/usr/local/下;build类型为发布版。

然后在build目录下进行编译:

运行效果如下:

make –j 20#用20个线程进行进行编译


新版本的Opencv对Cuda进行了支持。如果你的电脑上安装有Cuda,则会出现一下信息


Make完毕之后,代表着编译结束。

接下来在当前目录下,安装编译好的opencv

sudomake install

另外也可以选择生成opencv的文档

cd~/opencv/build/doc/

make -j7 html_docs

安装类库:(在build目录下执行)

sudo make install

至此opencv安装成功。现在测试:

使用vim输入一下内容:

#include

#include

using namespace cv;

int main(int argc, char** argv )

{

if ( argc != 2 )

{

printf("usage: DisplayImage.out\n");

return -1;

}

Mat image;

image = imread( argv[1], 1 );

if ( !image.data )

{

printf("No image data \n");

return -1;

}

namedWindow("Display Image", WINDOW_AUTOSIZE );

imshow("Display Image", image);

waitKey(0);

return 0;

}

gedit CMakeLists.txt

写入如下内容

cmake_minimum_required(VERSION 2.8)

project( DisplayImage )

find_package( OpenCV REQUIRED )

add_executable( DisplayImage DisplayImage.cpp )

target_link_libraries( DisplayImage ${OpenCV_LIBS} )

cd ~/opencv-lena

cmake .

make

./DisplayImage lena.jpg##此一个用程序用于显示图片。

最后,安装openCV对python的支持:

1.3安装python-opencv

可直接使用apt安装

sudo apt-get install python-opencv

sudo apt-get install python-numpy ##此类库包含opencv有关科学计算操作的函数

第二章TenseorFlow安装

2.1阅读文档

https://www.tensorflow.org/versions/r0.8/get_started/os_setup.html

2.2安装TensorFlow

#安装PIP

#Ubuntu/Linux 64-bit

$ sudo apt-get install python-pip python-dev

# Mac OS X

$ sudo easy_install pip

#Install TensorFlow

# Ubuntu/Linux 64-bit, CPU only:

$ sudo pip install --upgradehttps://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

# Ubuntu/Linux 64-bit, GPU enabled. Requires CUDA toolkit 7.5 and CuDNNv4.For

# other versions, see "Install from sources" below.

$ sudo pip install --upgradehttps://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

# Mac OS X, CPU only:

$ sudo easy_install --upgrade six

$ sudo pip install --upgrade

https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0-py2-none-any.whl

根据

# Ubuntu/Linux64-bit,GPUenabled.RequiresCUDA toolkit 7.5andCuDNN v4.For

# other versions, see "Install from sources" below.

$ sudo pip install --upgradehttps://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

接下来是下载CuDNNv4

NVIDIA

CuDNN安装说明

CuDNN是专门针对Deep Learning框架设计的一套GPU计算加速方案,目前支持的DL库包括Caffe,ConvNet, Torch7等。

CuDNN可以在官网免费获得,注册帐号后即可下载。官网没有找到安装说明,下载得到的压缩包内也没有Readme.不过google一下就会找到许多说明。基本原理是把lib文件加入到系统能找到的lib文件夹里,把头文件加到系统能找到的include文件夹里就可以。这里把他们加到CUDA的文件夹下(参考这里)


安装OPenCV (GPU加速附带错误指南)_第4张图片



安装OPenCV (GPU加速附带错误指南)_第5张图片

https://github.com/tiangolo/caffe/blob/ubuntu-tutorial-b/docs/install_apt2.md

具体过程如下:在安装好cuda7.5之后。我们可以安装Cudnnv4,

下载并安装了cudnn之后,下载安装tensorFlow

并测试,测试代码如下:


安装OPenCV (GPU加速附带错误指南)_第6张图片


实验过程中遇到的错误:

Deeper-anpr提取图片,出现以下错误:


安装OPenCV (GPU加速附带错误指南)_第7张图片

错误的原因:

'module' object has no

attribute 'CV_LOAD_IMAGE_GRAYSCALE

也就是说cv这个模块没有LoadImage()这个函数

你打开cv的源代码看看,或者使用dir(cv)看看这个模块都有什么属性

猜测可能是cv.OpenImage()

你可能感兴趣的:(安装OPenCV (GPU加速附带错误指南))