jetson nano install mediapipe
1. Jetson Nano에서 update를 진행한다.
sudo apt update
2. mediapipe 설치를 위한 전제조건 및 종속성을 설치한다.
sudo apt-get update
sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran
sudo apt-get install python3-pip
sudo pip3 install -U pip testresources setuptools==49.6.0
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
sudo env H5PY_SETUP_REQUIRES=0 pip3 install –U h5py==3.1.0
3. opencv-python 설치하기
sudo apt-get install python3-opencv
sudo apt-get remove python3-opencv
3단계인 python3-opencv 설치 과정에서 h5py 파일 오류가 계속 발생해서 애를 먹었는데, 에러 코드도 길고 어디가 원인인지 찾기 쉽지 않아서 고생했었다.
발생했던 에러를 해결하려고 에러구문을 여러개 검색해봤는데 그 중에 몇개를 기록해두었다.
ERROR: Failed building wheel for h5py
Failed to build h5py
ERROR: Could not build wheels for h5py, which is required to install pyproject.toml-based projects
h5py building wheel에 실패했다는 에러
ERROR: Could not find a version that satisfies the requirement h5py==3.1.0 (from versions: 2.2.1, 2.3.0b1, 2.3.0, 2.3.1, 2.4.0b1, 2.4.0, 2.5.0, 2.6.0, 2.7.0rc2, 2.7.0, 2.7.1, 2.8.0rc1, 2.8.0, 2.9.0rc1, 2.9.0, 2.10.0, 3.0.0rc1, 3.0.0, 3.1.0)
ERROR: No matching distribution found for h5py==3.1.0
h5py == 3.1.0 버전이 맞지 않다는 에러
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 /home/keti/.local/lib/python3.6/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmp8wspcqpo
cwd: /tmp/pip-install-2iijez9z/h5py_fe49e73e35ab4226bd3f1c8b6622c8f1
from Cython import __version__ as cython_version
ModuleNotFoundError: No module named 'Cython'
Cython 모듈을 찾지 못했다는 에러
Cython은 이전 과정에서 분명히 설치가 되었었다.
최종적으로 해당 에러를 해결할 수 있었던 해결책은 Cython 버전을 낮추는 것이었다.
해결책은 맨 아래 적어두었으니 쭉 내려가길 바란다.
4. swapram을 늘리고 mediapipe를 설치합니다.
# swapram 늘리기
git clone https://github.com/JetsonHacksNano/installSwapfile.git
cd installSwapfile
./installSwapfile.sh
# mediapipe 설치하기
cd
git clone https://github.com/google/mediapipe.git
cd mediapipe
sudo apt-get install -y libopencv-core-dev libopencv-highgui-dev libopencv-calib3d-dev libopencv-features2d-dev libopencv-imgproc-dev libopencv-video-dev
sudo chmod 744 setup_opencv.sh
./setup_opencv.sh
swapram
리눅스 운영 체제에서 사용되는 스왑 메모리(또는 스왑 공간)에 대한 용어입니다.
스왑 메모리는 주 메모리(RAM)의 부족한 용량을 보충하기 위해 디스크 공간을 사용하는 메커니즘입니다.
5. opencv_contrib_python를 설치합니다.
sudo pip3 install opencv_contrib_python
sudo apt install curl
cd Downloads
sudo apt install unzip
unzip mediapipe-bin.zip cd mediapipe-bin
sudo pip3 install numpy-1.19.4-cp36-none-manylinux2014_aarch64.whl mediapipe-0.8.5_cuda102-cp36-none-linux_aarch64.whl
pip3 install dataclasses
mediapipe 설치가 완료되게 되면 , 미디어파이프 버전은 0.8.5 cuda102로 설치되었으며, opencv는 4.8.1 버전이 설치되었음을 확인할 수 있다.
https://github.com/Melvinsajith/How-to-Install-Mediapipe-in-Jetson-Nano
opencv설치 시 h5py error 해결하기
ERROR: Failed building wheel for h5py
Failed to build h5py
ERROR: Could not build wheels for h5py, which is required to install pyproject.toml-based projects
h5py 오류 때문에 거의 2일 내내 고생했었는데, 원인은 Cython 버전에서 찾을 수 있었다.
pip install Cython==0.29
pip list를 확인해보면 Cython 버전이 3.0.4나 3.0.5 등 3점대 버전으로 설치되어 있는 걸 확인할 수 있는데, 해당 Cython 버전은 0.29 대로 낮추면 h5py에 대한 wheel 제대로 설치되면서 mediapipe 설치과정을 진행할 수 있다.
'머신러닝딥러닝 > 딥러닝' 카테고리의 다른 글
few shot learning 개념, 원리 (1) | 2023.12.07 |
---|---|
Supervised Learning, Unsupervised Learning, Semi-supervised Learning 지도학습 , 비지도학습, 반지도학습 개념과 예시 알아보기 (1) | 2023.12.05 |
Jetson Nano install pytorch, torchvision 설치 방법 (0) | 2023.11.13 |
GridSearchCV 하이퍼파라미터 튜닝 및 파라미터 정리 (0) | 2023.05.23 |
Batch Normalization VS Layer Normalization (0) | 2023.05.18 |
댓글