Tin tổng hợp

Jetson Nano – Hướng dẫn cài đặt cơ bản

  • 10/02/2022
  •  

    1.Chọn phiên bản Jetson Nano B01 như hình trên bên phải

    2. Các phụ kiện:

    -USB camera Logitech C270

    -CSI MIPI Camera (IMX219-77) và cover meka

    -Loa kok USB 2.0 portable speaker

    -case meka bảo vệ kit

    3.Hướng dẫn cài OS theo hướng dẫn sau https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#intro

    -Donload phần mềm  Etcher

    và download Jetson Nano OS theo link sau : https://developer.nvidia.com/jetson-nano-sd-card-image

    Nhấp vào “Select drive” và chọn thiết bị chính xác.Nhấp vào “Flash!” Etcher sẽ mất khoảng 10 phút để ghi và xác thực hình ảnh nếu thẻ microSD của bạn được kết nối qua USB.
    Sau khi Etcher kết thúc, Windows có thể  tháo thẻ nhớ microSD lắp vào Jetson Nano.

    4.Caì đặt Mediapipe cho Jetson Nano theo các bước sau:

    Mở terminal gõ các lệnh sau:

    # Tăng dung lượng ram
    # ===============================
    &git clone https://github.com/JetsonHacksNano/installSwapfile.git
    &cd installSwapfile

    &./installSwapfile.sh

    # setup ban đầu Python và pip
    # ===================

    &sudo apt update
    &sudo apt-get update
    &sudo apt-get install python3-pip
    &sudo pip3 install -U pip testresources setuptools==49.6.0

    # Cài thư viện Tensorflow
    # ================================

    &sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran

    # Caì một số thư viện
    # =================================

    &sudo pip3 install -U –no-deps numpy==1.19.4 future==0.18.2 mock==3.0.5 keras_preprocessing==1.1.2 keras_applications==1.0.8 gast==0.4.0 protobuf pybind11 cython pkgconfig

    # Lưu trự dưới dạng nhị phân
    &sudo env H5PY_SETUP_REQUIRES=0 pip3 install -U h5py==3.1.0

    &sudo apt-get install python3-opencv

    #Cài đặt Mediapipe
    #=======================================

    &git clone https://github.com/google/mediapipe.git
    &cd mediapipe

    # Cài đặt thư viện cho mediapipe
    # ===============================================
    &sudo apt-get install -y libopencv-core-dev libopencv-highgui-dev libopencv-calib3d-dev &libopencv-features2d-dev libopencv-imgproc-dev libopencv-video-dev

    # cấp quyền cho file cài opencv
    &sudo chmod 744 setup_opencv.sh

    # Cài opencv trong khoảng 1 tiếng
    # ====================================================
    &./setup_opencv.sh

     

    # Cuối cùng
    &sudo pip3 install opencv_contrib_python
    &git clone https://github.com/PINTO0309/mediapipe-bin
    &cd mediapipe-bin

    &sudo apt install curl

    &./v0.8.5/numpy119x/mediapipe-0.8.5_cuda102-cp36-cp36m-linux_aarch64_numpy119x_jetsonnano_L4T32.5.1_download.sh

    &sudo pip3 install numpy-1.19.4-cp36-none-manylinux2014_aarch64.whl
    &sudo pip3 install mediapipe-0.8.5_cuda102-cp36-none-linux_aarch64.whl
    &pip3 install dataclasses

    #download ví dụ theo link sau: https://github.com/feitgemel/BodyPos/tree/master/MediaPipe/Demo

    &git clone https://github.com/feitgemel/BodyPos.git
    &cd BodyPos
    &cd MediaPipe
    &cd Demo
    &python3 MediaPipe-Holistic.py

    5. Sửa lỗi Jetson nano không nhận camera CSI , tiến hành cài đặt OpenCV 4.5.2 như sau  :

    a,Mở rộng bộ nhớ ram
    $ sudo apt-get update
    $ sudo apt-get upgrade
    $ sudo apt-get install nano
    $ sudo apt-get install dphys-swapfile
    $ sudo nano /sbin/dphys-swapfile
    $ sudo nano /etc/dphys-swapfile
    $ sudo reboot.
    b,Cài đặt script
    $ free -m
    $ wget https://github.com/Qengineering/Install-OpenCV-Jetson-Nano/raw/main/OpenCV-4-5-2.sh
    $ sudo chmod 755 ./OpenCV-4-5-2.sh
    $ ./OpenCV-4-5-2.sh
    $ rm OpenCV-4-5-2.sh
    $ sudo /etc/init.d/dphys-swapfile stop
    $ sudo apt-get remove –purge dphys-swapfile
    $ sudo rm -rf ~/opencv
    $ sudo rm -rf ~/opencv_contrib
    c,Cài các thưu viện
    $ sudo sh -c “echo ‘/usr/local/cuda/lib64’ >> /etc/ld.so.conf.d/nvidia-tegra.conf”
    $ sudo ldconfig
    $ sudo apt-get install build-essential cmake git unzip pkg-config zlib1g-dev
    $ sudo apt-get install libjpeg-dev libjpeg8-dev libjpeg-turbo8-dev
    $ sudo apt-get install libpng-dev libtiff-dev libglew-dev
    $ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
    $ sudo apt-get install libgtk2.0-dev libgtk-3-dev libcanberra-gtk*
    $ sudo apt-get install python-dev python-numpy python-pip
    $ sudo apt-get install python3-dev python3-numpy python3-pip
    $ sudo apt-get install libxvidcore-dev libx264-dev libgtk-3-dev
    $ sudo apt-get install libtbb2 libtbb-dev libdc1394-22-dev libxine2-dev
    $ sudo apt-get install gstreamer1.0-tools libgstreamer-plugins-base1.0-dev
    $ sudo apt-get install libgstreamer-plugins-good1.0-dev
    $ sudo apt-get install libv4l-dev v4l-utils v4l2ucp qv4l2
    $ sudo apt-get install libtesseract-dev libxine2-dev libpostproc-dev
    $ sudo apt-get install libavresample-dev libvorbis-dev
    $ sudo apt-get install libfaac-dev libmp3lame-dev libtheora-dev
    $ sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev
    $ sudo apt-get install libopenblas-dev libatlas-base-dev libblas-dev
    $ sudo apt-get install liblapack-dev liblapacke-dev libeigen3-dev gfortran
    $ sudo apt-get install libhdf5-dev libprotobuf-dev protobuf-compiler
    $ sudo apt-get install libgoogle-glog-dev libgflags-dev
    d, Download OpenCV 4.5.2
    $ cd ~
    $ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.2.zip
    $ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.2.zip
    $ unzip opencv.zip
    $ unzip opencv_contrib.zip
    $ mv opencv-4.5.2 opencv
    $ mv opencv_contrib-4.5.2 opencv_contrib
    $ rm opencv.zip
    $ rm opencv_contrib.zip
    e,Build make
    $ cd ~/opencv
    $ mkdir build
    $ cd build
    $ cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr \
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
    -D EIGEN_INCLUDE_PATH=/usr/include/eigen3 \
    -D WITH_OPENCL=OFF \
    -D WITH_CUDA=ON \
    -D CUDA_ARCH_BIN=5.3 \
    -D CUDA_ARCH_PTX=”” \
    -D WITH_CUDNN=ON \
    -D WITH_CUBLAS=ON \
    -D ENABLE_FAST_MATH=ON \
    -D CUDA_FAST_MATH=ON \
    -D OPENCV_DNN_CUDA=ON \
    -D ENABLE_NEON=ON \
    -D WITH_QT=OFF \
    -D WITH_OPENMP=ON \
    -D BUILD_TIFF=ON \
    -D WITH_FFMPEG=ON \
    -D WITH_GSTREAMER=ON \
    -D WITH_TBB=ON \
    -D BUILD_TBB=ON \
    -D BUILD_TESTS=OFF \
    -D WITH_EIGEN=ON \
    -D WITH_V4L=ON \
    -D WITH_LIBV4L=ON \
    -D OPENCV_ENABLE_NONFREE=ON \
    -D INSTALL_C_EXAMPLES=OFF \
    -D INSTALL_PYTHON_EXAMPLES=OFF \
    -D BUILD_opencv_python3=TRUE \
    -D OPENCV_GENERATE_PKGCONFIG=ON \
    -D BUILD_EXAMPLES=OFF ..
    f,Make
    $ make -j4
    $ sudo rm -r /usr/include/opencv4/opencv2
    $ sudo make install
    $ sudo ldconfig
    $ make clean
    $ sudo apt-get update
    g, Cleaning
    $ sudo /etc/init.d/dphys-swapfile stop
    $ sudo apt-get remove –purge dphys-swapfile
    $ sudo rm -rf ~/opencv
    $ sudo rm -rf ~/opencv_contrib
    Nếu không được tiếp tục
    sau đó dùng pip cài 2 thư vện sau:

    opencv_python-4.5.2.54-cp36-cp36m-linux_aarch64.whl

    mediapipe-0.8.5_cuda102-cp36-cp36m-linux_aarch64.whl

    6. Cài đặt và sử dụng visual studio code :
    $ git clone https://github.com/JetsonHacksNano/installVSCode.git
    $ cd installVSCode
    $ ./installVSCode.sh