본문 바로가기
머신러닝딥러닝/딥러닝

Jetson Nano install mediapipe and ERROR: Failed building wheel for h5py 해결법

by orangecode 2023. 11. 13.
728x90

 

 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로 설치되었으며, opencv4.8.1 버전이 설치되었음을 확인할 수 있다.

 

https://github.com/Melvinsajith/How-to-Install-Mediapipe-in-Jetson-Nano

 

GitHub - Melvinsajith/How-to-Install-Mediapipe-in-Jetson-Nano

Contribute to Melvinsajith/How-to-Install-Mediapipe-in-Jetson-Nano development by creating an account on GitHub.

github.com

 

 

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 설치과정을 진행할 수 있다.

반응형

댓글