Jetson NanoにOpenCVをインストール

ソース: OpenCV logo

目次

swapファイルを生成

コンパイル途中にメモリー不足などの問題を防ぐため, swapという交換用ファイルを任意のパスに生成しておく。 このファイルは,OS再起動の後に自動的に消えるが, 全てのインストールが終わったら,手作業で交換用ファイルを削除しても良い。

  $ fallocate -l 4G swapfile
  $ chmod 600 swapfile
  $ mkswap swapfile
  $ sudo swapon swapfile
  $ swapon -s

インストールのスクリプトを生成

OpenCV 4.0.0をインストールためのリンク

以上は,OpenCV 4.0.0をインストールためのリンクで,ここでは,OpenCV 4.1.0をインストールしたいため, バージョン番号の部分に少し手を加える。

  #!/bin/bash
  #
  # Copyright (c) 2018, NVIDIA CORPORATION.  All rights reserved.
  #
  # NVIDIA Corporation and its licensors retain all intellectual property
  # and proprietary rights in and to this software, related documentation
  # and any modifications thereto.  Any use, reproduction, disclosure or
  # distribution of this software and related documentation without an express
  # license agreement from NVIDIA Corporation is strictly prohibited.
  #

  if [ "$#" -ne 1 ]; then
      echo "Usage: $0 <Install Folder>"
      exit
  fi
  folder="$1"
  user="nvidia"
  passwd="nvidia"

  echo "** Install requirement"
  sudo apt-get update
  sudo apt-get install -y build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
  sudo apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
  sudo apt-get install -y python2.7-dev python3.6-dev python-dev python-numpy python3-numpy
  sudo apt-get install -y libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
  sudo apt-get install -y libv4l-dev v4l-utils qv4l2 v4l2ucp
  sudo apt-get install -y curl
  sudo apt-get update

  echo "** Download opencv-4.1.0"
  cd $folder
  curl -L https://github.com/opencv/opencv/archive/4.1.0.zip -o opencv-4.1.0.zip
  curl -L https://github.com/opencv/opencv_contrib/archive/4.1.0.zip -o opencv_contrib-4.1.0.zip
  unzip opencv-4.1.0.zip 
  unzip opencv_contrib-4.1.0.zip 
  cd opencv-4.1.0/

  echo "** Building..."
  mkdir release
  cd release/
  cmake -D WITH_CUDA=ON -D CUDA_ARCH_BIN="5.3" -D CUDA_ARCH_PTX="" -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.1.0/modules -D WITH_GSTREAMER=ON -D WITH_LIBV4L=ON -D BUILD_opencv_python2=ON -D BUILD_opencv_python3=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

  make -j3
  sudo make install
  sudo apt-get install -y python-opencv python3-opencv

  echo "** Install opencv-4.1.0 successfully"
  echo "** Bye :)"

以上のスクリプトを sh のフォーマットで保存する。例えば install_opencv4.1.0_Nano.sh

スクリプトを実行する

  mkdir opencv
  sh install_opencv4.1.0_Nano.sh opencv

インストールのプロセスが割と時間かかるため,インストールが終わるまで待つ。 ここで,tmuxとかに任せてバックグラウンドでやれば,なんかあった時にattachすれば済むのでおすすめ。

インストールされたOpenCVをテスト

コマンドラインに python を叩くと import cv2 をためしたらエラーがなければ終わり。

ただ,pyenvなどのpython環境管理ツールを使っている方なら, pyenvを使って入れたpythonにおいてはOpenCVを読み込めない場合がある。 解決案としては,OpenCVのライブラーのソフトリンクをpyenvのpythonの下に置くこと。

例えば,以下のようなpyenvのpythonのライブラリーのパスがある。

  /home/{username}/.anyenv/envs/pyenv/versions/3.6.8/lib/python3.6/site-packages

また,インストールされたOpenCVのライブラリーのパスが以下となる。

  /usr/local/lib/python3.6/dist-packages/cv2/python-3.6/cv2.cpython-36m-aarch64-linux-gnu.so

この場合は,以下のコマンドでソフトリンクを作れる。

  cd /home/{username}/.anyenv/envs/pyenv/versions/3.6.8/lib/python3.6/site-packages
  ln -s /usr/local/lib/python3.6/dist-packages/cv2/python-3.6/cv2.cpython-36m-aarch64-linux-gnu.so ./

また,事前にpyenvのpythonのpipを使って, pip install numpy でnumpyを入れておくと さっきのように import cv2 でテストしてエラーがなければおしまい。

このページを編集

Xin Li
Xin Li
講師

機械学習及び深層学習の応用に関する研究に従事し,不均一・偏りのあるデータに対するサンプリング手法および学習アルゴリズムに注目している。詳細はこちら

comments powered by Disqus
次へ
前へ

関連項目