Jetson Nano에 OpenCV 4.1.0 설치

Jetson Nano에 OpenCV 4.1.0 설치

2022-10-05 last update

7 minutes reading OpenCV Jetson JetsonNano

개요



상당히 빠져서 자신에게 메모의 의미도 포함하고 있습니다.
Jetson Nano에 OpenCV4.1.0을 설치했습니다.

참고
(1) htps : //에서 v lk. 응아아. 이 m /로 보이는 lt / Topi c / 1049296 / Ji-Tsu-Nano / How-to-in s t-l-o-cv-py-on-fu-r-py 3ー6
(2) htps : // 기주 b. 이 m/아 s단 V/지 P/bぉb/마s r/sc리 pt/인 s단l_오페인 cv4.0.0_이야. sh

절차



Clean Jetson nano 준비



Clean이란, Miss SD에 이미지를 구워, user 설정등의 초기 설정을 끝낸 직후의 Jetson nano입니다.
이것은 필수는 아니지만, 여러가지 작업 후 OpenCV를 설치하려고했지만, 어쨌든 실패했기 때문에 Jetson Nano를 다시 설치했습니다.

스왑 영역 만들기



컴파일 도중 메모리 부족으로 오류가 발생하므로 스왑 공간을 만듭니다.
컴파일 후 지우므로 장소는 어디서나 좋습니다.
$ fallocate -l 4G swapfile
$ chmod 600 swapfile
$ mkswap swapfile
$ sudo swapon swapfile
$ swapon -s
(ここになにか表示されるとOKです)

설치 스크립트 준비



이것을 조금 사용자 정의하고 사용합니다. OpenCV 4.0.0을 설치하고 싶다면 괜찮을까요?
htps : // 기주 b. 이 m/아 s단 V/지 P/bぉb/마s r/sc리 pt/인 s단l_오페인 cv4.0.0_이야. sh

변경 내용은 4.0.0으로 된 부분을 모두 4.1.0으로 바꾼 것입니다.
파일 이름은 install_opencv4.1.0_Nano.sh로 지정했습니다.
#!/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 :)"

스크립트 실행


mkdir opencv
sh install_opencv4.1.0_Nano.sh opencv
(コンパイル/インストールが始まります)

오로지 기다리다



몇 시간이 걸리므로 display 연결하거나 screen 명령을 사용하여 SSH가 끊어져도 괜찮게하는 것이 좋습니다.

설치 후 시도



python2.7에서 확인
python
Python 2.7.15rc1 (default, Nov 12 2018, 14:31:15) 
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> 

python3.6에서 확인
python3
Python 3.6.7 (default, Oct 22 2018, 11:32:17) 
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> 

둘 다 오류가 발생하지 않습니다! 했다

남은 작업



다시 시작하면 swap 영역이 사라지므로 만든 파일을 지웁니다.