Contents
やっていきましょう。
参考にさせていただきました。
- https://qiita.com/daisuzu_/items/8cc8de8ea8dc557a2aad
- https://qiita.com/wawoon/items/f61338d6e11a8e9521a4
- https://pysource.com/2019/08/26/install-opencv-4-1-on-nvidia-jetson-nano
- https://qiita.com/tsutof/items/2d2248ec098c1b8d3e32
自動インストールのシェルスクリプトを保存
下記、シェルスクリプトをファイル名 install_opencv4.1.0_Nano.shとしてホームディレクトリに保存します。まだ保存するだけです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
#==== Shell script for OpenCV 4.1.0 Installation ==== # File Name : install_opencv4.1.0_Nano.sh ## Update the packages sudo apt update sudo apt install -y nano sudo apt install -y build-essential cmake git libgtk2.0-dev pkg-config libswscale-dev libtbb2 libtbb-dev sudo apt install -y python-dev python3-dev python-numpy python3-numpy sudo apt install -y curl ## Install video & image formats: sudo apt install -y libjpeg-dev libpng-dev libtiff-dev libjasper-dev sudo apt install -y libavcodec-dev libavformat-dev sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev sudo apt install -y libv4l-dev v4l-utils qv4l2 v4l2ucp libdc1394-22-dev ## Download OpenCV and Contrib 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/ ## Create directory mkdir release cd release ## Build cmake \ -D WITH_CUDA=ON \ -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 .. ## Install OpenCv using 4 cores make -j4 sudo make install ## Delete zip files cd ~ rm opencv-4.1.0.zip rm opencv_contrib-4.1.0.zip |
メモリ領域の確保
メモリ領域を確保するために下記4つを、順番にやりますが、一つ一つに時間がかかりますので、進まないからといってターミナルを4つ開かないように!(やって失敗したのは私だけで十分です。)
1 |
$ sudo dd if=/dev/zero of=/swapfile bs=1M count=6144 |
1 |
$ sudo chmod 600 /swapfile |
1 |
$ sudo mkswap /swapfile |
1 |
$ sudo swapon /swapfile |
で、この4つではOpenCV4.1.2もOpenCV4.1.1もうまくいかなかったので、気を取り直して下記の3つをやりました。
おそらく、上記4つは必要ないと思いますので試しに飛ばしてみてください。(リブートしなかったのが良くなかったのか?したかどうかも覚えてませんw)
目的は同様にメモリの確保で、4GBでよいっぽい。デフォルトが2GBなので 式中の割る2を削除すればOKです。
1 |
$ sudo apt-get install zram-config |
1 |
$ sudo sed -i -e "s/mem=\$(((totalmem \/ 2 \/ \${NRDEVICES}) \* 1024))/mem=\$(((totalmem \/ \${NRDEVICES}) \* 1024))/g" /usr/bin/init-zram-swapping |
1 |
$ sudo reboot |
リブートできたら、コンパイル~インストールしましょう。
1 2 |
# Move to home directory $ cd ~ |
1 2 |
# インストールのシェルスクリプトを実行します $ sh install_opencv4.1.0_Nano.sh opencv |
Pythonでインポートして確認
import cv2してprint(cv.__version__)で
4.1.0と出力されたらOKです。
課題:MIPIカメラが使えない
・pythonからvideoCapture(0)したところ、MIPIカメラでは緑一色の画面しか出力されない。numpy.arrayなのでRGBを確認すると、きれいにすべての画素でR, G, B =[0, 255, 0] ですw 助けてくださいw
・安物のwebカメラではvideoCapture(1)したところ、問題なく映像が出力されています。ついでに顔認識などやってみましたが問題なし。
うーん、このままUVCカメラしか使えないのも尺ですしねえ。せっかくの800万画素のソニーIMX219センサが無駄になってしまう・・・
解決法ありましたら、コメントお願いします🙏
いつか4.1.2を入れられるようになりたいです。
Keita N
最新記事 by Keita N (全て見る)
- 2024/1/13 ビットコインETFの取引開始:新たな時代の幕開け - 2024年1月13日
- 2024/1/5 日本ビジネスにおける変革の必要性とその方向性 - 2024年1月6日
- 2024/1/3 アメリカ債権ETFの見通しと最新動向 - 2024年1月3日