首页 > 技术文章 > 在NVIDIA TX1上编译OpenCV 3.2.0

liozeng 2017-04-08 17:55 原文

   /*============安装官方给的Opencv依赖包==================*/

  •   GCC 4.4.4 or later
  •   CMake 2.6 or higher
  •   Git
  •   GTK+2.x or higher, including headers(libgtk2.0-dev)--->控制opencv gui)
  •   pkg-config
  •   python 2.6 or later and Numpy 1.5 or later with developer packages(python-dev, python-numpy)
  •   ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
  •   [optional] libtbb2 libtbb-dev
  •   [optional] libdc1394 2.x
  •   [optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev

 

   /*=============安装依赖包==================*/

1 $ sudo apt-get install build-essential
2 $ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
3 $ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev # 处理图像所需的包
4 $ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
5 $ sudo apt-get install libxvidcore-dev libx264-dev # 处理视频所需的包
6 $ sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能
7 $ sudo apt-get install ffmpeg

** 其他一些包在之后的cmake的时候缺失的时候会进行安装,如果安装失败可以手动下载相应的包然后放入提示的目录下。而cmake下载tar.gz文件的时候可能不支持,需要进行配置,具体操作可以参考这里

/*==================下载opencv 3.2.0=======================*/
这里需要下载opencv和opencv_contrib(后者会在cmake配置的时候用到),这是因为opencv3以后SIFT和SURF之类的属性被移到了contrib中。
$ wget https://github.com/opencv/opencv/archive/3.2.0.zip       # 从github上直接下载或者clone也可
$ wget https://github.com/opencv/opencv_contrib/archive/3.2.0.zip

/*==================配置编译opencv=======================*/
将上述opencv包解压,然后cmake配置属性
$ cd opencv-3.1.0
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/home/o2/anaconda2/envs/tensorflow
-D INSTALL_PYTHON_EXAMPLES=ON
-D INSTALL_C_EXAMPLES=OFF
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.2.0/modules
-D PYTHON_EXCUTABLE=/home/o2/anaconda2/envs/tensorflow/bin/python
-D WITH_TBB=ON
-D WITH_V4L=ON
-D WITH_QT=ON
-D WITH_GTK=ON
-D WITH_OPENGL=ON
-D BUILD_EXAMPLES=ON ..

# cmake命令的使用方式:cmake [<some optional parameters>] <path to the OpenCV source directory>。
如果命令报错的话可以试着把-D后面的空格去掉在执行一次。

$ make $ sudo make install

CMAKE_INSTALL_PREFIX:安装的python目录前缀,其实就是指定了python模块的安装路径:CMAKE_INSTALL_PREFIX/lib/python2.7/site-packages。获取该路径的方式可以用python -c "import sys; print sys.prefix"
PYTHON_EXCUTABLE:指定python路径
OPENCV_EXTRA_MODULES_PATH: 指定opencv所需模块的路径,就是之前我们所说的contrib
其他cmake的具体变量说明可以看这里
/*==================完成安装并测试opencv=======================*/
编译之后应该会在CMAKE_INSTALL_PREFIX/lib/python2.7/site-packages/目录下找到cv2.so。打开python console,检测opencv版本

版本python -c "import cv2; print cv2.__version__"。如果正确安装的话则会输出3.2.0
/*===========================全文完===========================*/

推荐阅读