Opencv嵌入式图像处理(二)Jeston Tk1 安装OpenCV

来源:互联网 发布:游戏的网络销售怎么样 编辑:程序博客网 时间:2024/06/05 00:34

转载自:http://blog.csdn.net/sx1503198/article/details/51774142

Tegra 平台为OpenCV提供了GPU加速的功能。除了opencv中的GPU模块外,例如核心的Core模块等一系列OpenCV中的常用模块都可以使用GPU加速。但是GPU加速的前提是你已经安装好Cuda并且用nvcc device 编译OpenCV。 
在Jetson配置OpenCV和Cuda有两种方法,一种是使用官方的Jetpack安装方法,可以安装最新的Tegra4OpenCV。这需要你有一台Ubuntu 14.04 LST X64系统的电脑,并使得Jetson Tk1进入Recovery模式,此方法在后续教程中再涉及。

最新Jetpcak安装包下载地址:链接:http://pan.baidu.com/s/1c2x8tFi 密码:1mi9 
更新时间2016/6/16

第二种方式是下载好各个部分的安装包下载好以后直接在Jeston tk1上安装,此种方法的好处是不用使用Ubuntu X64的系统,可以减少使用Windows用户的使用负担。但此方法仅限于教程版本安装,每个版本的安装方法不同,不可兼容,阅读是请务必注意Cuda, Tegra4OpenCV, OpenCV相对应的版本号。安装步骤也请严格按照Cuda->Tegra4OpenCV->OpenCV的顺序,切忌颠倒。

1. 安装Cuda

首先确认你的Tk1的系统是R21.4,否则你可能需要刷机或是安装低版本的Cuda。确认方法:

0.1 进入超级用户模式

sudo -s
  • 1
  • 1

0.2 查看版本号

uname -m && cat /etc/*release
  • 1
  • 1

红框里面是版本号

  1. 下载 cuda-repo-l4t-r21.3-6-5-prod_6.5-50_armhf.deb 安装包(注意版本号!!)

    下载链接:http://pan.baidu.com/s/1qXVzAR6 密码:r17y 
    (r19.8版本以后,Nvidia官网不再提供单独的cuda,Tegra4opencv安装包,此安装包为JetPackTK1-1.2-cuda6.5-Linux-x64.run中析出的版本,以方便大家安装)

  2. 安装Cuda 
    cd 到你保存安装包的路径下

dpkg -i cuda-repo-l4t-r21.3-6-5-local_6.5-50_armhf.debsudo apt-get updatesudo apt-get install cuda-toolkit-6-5
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

可能遇到的问题(持续更新中)

  1. 没有启用Universe的源,会提示无cuda-toolket-6-5 解决方法:sudo apt-add-repository universe
  2. 使用了非官方的Ubuntu source,有些国内的服务器虽然速度快,但是基本不更新,所有建议不要修改Source.list里的内容
  3. 没有更新源:sudo apt-get update

3.添加用户组

sudo usermod -a -G video $USER
  • 1
  • 1

4.添加环境变量

gedit ~/.bashrc
  • 1
  • 1

在记事本的最后添加:

# Add CUDA bin & library paths:export PATH=/usr/local/cuda/bin:$PATHexport LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIBRARY_PATH
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

点击保存退出(这一步一定要在超级用户下完成) 
source ~/.bashrc

5.检查CUDA是否安装完成

nvcc -V
  • 1
  • 1

如果出现一下信息表示已经安装完成:

nvcc: NVIDIA (R) Cuda compiler driverCopyright (c) 2005-2014 NVIDIA CorporationBuilt on Tue_Feb_17_22:53:16_CST_2015Cuda compilation tools, release 6.5, V6.5.45this message indicates you have successfully installed Cuda
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

第四行为安装的CUDA版本号。

2. 安装OpenCV

安装好了CUDA之后我们就可以安装OpenCV了,安装OpenCV主要分为安装Tegra4OpenCV和OpenCV源码两个部分。

1.安装一些必要的组件

1.1 基本的g++编译器和cmake    sudo apt-get install build-essential make cmake cmake-curses-gui g++1.2 输入输出库    sudo apt-get install libavformat-dev libavutil-dev libswscale-dev 1.3 Video4Linux摄像头模块    sudo apt-get install libv4l-dev 1.4 Eigen3模块    sudo apt-get install libeigen3-dev 1.5 OpenGL开发模块(并不是OpenGL全体)    sudo apt-get install libglew1.6-dev 1.6 GTK库函数     sudo apt-get install libgtk2.0-dev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

2.下载 libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb**(注意版本!!)**

下载地址:链接:http://pan.baidu.com/s/1miKY9nE 密码:ol4n

3.启用Universe源

sudo apt-add-repository universesudo apt-get update
  • 1
  • 2
  • 1
  • 2

4.安装Tegra4OpenCV

sudo dpkg -i libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.debsudo apt-get updatesudo apt-get install libopencv4tegra libopencv4tegra-dev
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

注意:此方法不适用于最新的libopencv4tegra-repo_2.4.12.3_armhf_l4t-r21.deb安装包,如果希望安装最新版本请使用Jetpack安装。

5.下载Opencv linux 2.4.10 
注意:此处如果用2.4.9编译会在83%出现编译错误,这是2.4.9自身的一个BUG,2.4.10已经修复。

下载链接:http://pan.baidu.com/s/1o8myB4Q 密码:glkr 
读者也可自行前往OpenCV.org下载源码。

6.编译OpenCV 
cd 到含有OpenCV的文件夹下:

unzip opencv-2.4.10.zipcd  /**YOUR_PATH_OPENCV**/opencv-2.4.10/mkdir buildcd buildcmake -DWITH_CUDA=ON -DCUDA_ARCH_BIN="3.2" -DCUDA_ARCH_PTX="" -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF ..
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

这一步通过以后会出现config OK 的标志,表示检查已经成功,可以编译了。 
最后一句中 .. 的意思表示你的MakeFile文件在上一层文件夹,如果系统提示找不到MakeFile文件的话可以将它改为包含OpenCV Makefile的路径。

7.编译OpenCV

sudo make -j4 install 
  • 1
  • 1

这里写图片描述

出现上图表示已经开始编译,编译过程大约需要20分钟。

这里写图片描述

可以看到OpenCV的GPU模块使用NVCC进行编译

这里写图片描述

core模块也使用NVCC进行了编译。

这里写图片描述

如果最后没有出现错误(如上图)表示OpenCV已经安装成功。

8.配置环境变量

echo "# Use OpenCV and other custom-built libraries." >> ~/.bashrcecho "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/" >> ~/.bashrcsource ~/.bashrc
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

这样OpenCV的配置就大功告成了,接下来我们就可以在Jeston tk1上使用基于GPU加速的OpenCV函数库了! 
(经昨夜隔壁实验室宝宝的测试,此方法亦可用在大疆妙算Mainfold 图像处理单元上)

阅读全文
0 0
原创粉丝点击