상세 컨텐츠

본문 제목

라즈베리파이 4B 모델 bookworm 버전에서 mediapipe & opencv 인스톨

IT

by gyaree 2024. 5. 24. 08:52

본문

반응형

 

라즈베리파이 4B 8GB 메모리 모델



라즈베리파이 4B OS 버전 12 bookworm 버전에 opencv 와 mediapipe 인스톨은 정말 힘든 과정입니다.

구글을 검색해도 가장 최신 정보가 2년 전 또는 그 이상 오래된 정보 뿐입니다. 그러다보니 유튜브 동영상이나 구글로 검색한 설치법으로 아무리 시도를 해도 전부 실패였습니다.


라즈베리파이 4B 보드가 출시된지도 꽤나 지난 시점이라서 현재 라즈베리파이에 제공하는 Imager를 이용해서 SD 메모리에 OS를 인스톨하면 가장 최신 버전인 "Debian GNU/Linux 12 (bookworm)" 이 인스톨 됩니다.


 
구글에는 거의 모든 정보가 예전 OS 환경에서 인스톨한 것만 있어서 최신 OS에는 맞지 않습니다. 
 
 어마어마한 삽질 끝에 드디어 설치 성공했습니다.
 
 
 

opencv 와 mediapipe 인스톨

 

  1. 사전 요구 사항 설치
    • 라즈베리 파이 운영 체제가 최신인지 확인하고, 필요한 패키지들을 업데이트합니다.
터미널에서 다음을 입력합니다.
 
sudo apt-get update
sudo apt-get upgrade
 
 
 
 

2. Python 및 pip 설치

  • Python 3 및 pip가 설치되어 있는지 확인합니다. 만약 설치되어 있지 않다면 설치합니다.
터미널에서 다음을 입력합니다.
 
sudo apt-get install python3 python3-pip
 
 
 
 

3. 가상 환경 설정 (선택 사항)

  • 프로젝트 격리를 위해 가상 환경을 설정할 수 있습니다.
터미널에서 다음을 입력합니다.
 

 

python3 -m venv mediapipe-env  ---->>> (현재 폴더에서 mediapipe-env 이름으로 가상환경을 만든다는 뜻)
source mediapipe-env/bin/activate  ----->>>>> 가상환경 활성화 명령
 
 
 
 

가상환경 활성화

 
source /path/to/mediapipe-env/bin/activate ----->>> /path/to는 가상환경 mediapipe-env가 있는 경로를 적는다.
 


해당 시스템에서는 다음과 같은 경로가 된다.
 
source /home/noel/mediapipe-env/bin/activate ---->>> noel 계정의 홈폴더에 있다는 뜻.
 
 
 
 

부팅할 때 가상환경이 자동으로 실행되게 하는 법.

 

계정의 홈폴더의 .bashrc 파일을 오픈해서 위 명령어를 입력.

 
cd ~/
 
nano .bashrc 또는 vi .bashrc(라즈베리에서 vi를 사용하려면 sudo apt install vim 으로 vim을 인스톨해야 단축키가 제대로 작동)
 
 
 
제일 마지막 줄에 다음 추가
 
source /home/noel/mediapipe-env/bin/activate
 


저장한다.



그래야 시스템이 재시작하면 자동으로 mediapipe가 가상환경 하에 사용 가능. 


이 설정은 사용자에 따라서 편리할 수도 불편할 수도 있기때문에 자신의 환경에 맞게 설정하기 바랍니다. 실수를 줄이기 위해서는 수동으로 가상환경을 활성화 하는 게 나을 듯합니다.
 
 
 
 

4. Mediapipe 의존성 설치

  • Mediapipe는 여러 의존성을 가지고 있으므로, pip를 사용하여 설치합니다.
터미널에서 다음을 입력합니다.
 
 
pip install mediapipe-rpi4   --->>> 라즈베리파이 4B 보드에서는 필수
 
 
 
 
 
 

5. Mediapipe 설치

  • Mediapipe를 직접 설치합니다.
터미널에서 다음을 입력합니다.
 

 

pip install mediapipe
 
 
 
 
 
 

6. OpenCV 설치 (5번까지 과정이 완료된 후 opencv와 mediapipe의 버전이 제대로 확인 된다면 6번은 패스)

  • Mediapipe는 OpenCV를 필요로 합니다. OpenCV를 설치합니다.
터미널에서 다음을 입력합니다.
 
 
sudo apt-get install libopencv-dev
pip install opencv-python
 
 
 
 
 
 
 
7. 테스트 코드 실행
  • Mediapipe가 제대로 설치되었는지 확인하기 위해 간단한 테스트 코드를 실행합니다.

터미널에서 다음을 차례대로 입력합니다.

 

python
import cv2
import mediapipe as mp
mp_hands = mp.solutions.hands hands = mp_hands.Hands() mp_drawing = mp.solutions.drawing_utils cap = cv2.VideoCapture(0) while cap.isOpened(): ret, frame = cap.read() if not ret: break frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) results = hands.process(frame_rgb) if results.multi_hand_landmarks: for hand_landmarks in results.multi_hand_landmarks: mp_drawing.draw_landmarks(frame, hand_landmarks, mp_hands.HAND_CONNECTIONS) cv2.imshow('Hand Tracking', frame) if cv2.waitKey(5) & 0xFF == 27: break cap.release() cv2.destroyAllWindows()
 
 
 

 

 

opencv & Mediapipe 설치 버전을 확인하기

 

방법 1: pip show 명령어 사용

터미널에서 다음 명령어를 입력하여 Mediapipe 패키지 정보를 확인할 수 있습니다.


 
pip show mediapipe
 

이 명령어를 실행하면 Mediapipe 패키지의 이름, 버전, 설치 경로 등의 정보가 표시됩니다.

 

방법 2: Python 코드 사용

Python 코드로 Mediapipe의 버전을 확인할 수 있습니다. 다음 코드를 Python 인터프리터나 스크립트에서 실행해 보세요.

터미널에서 다음 명령어를 입력합니다.

python
import mediapipe as mp
print(mp.__version__)
 
 
 
 
 
방법 3: Python 코드 사용
 
터미널에서 다음 명령어를 입력합니다.
 
 
python -c "import mediapipe as mp; print(mp.__version__)"
 
 
 

2024.05.22 - [IT] - 라즈베리파이 11 bullseye의 기본 레포지토리

 

라즈베리파이 11 bullseye의 기본 레포지토리

리눅스는 버전별로 앱을 깔기 위해서 각자 고유의 레포지토리를 가지고 있습니다. 유저가 필요한 앱을 인스톨할 때, 리눅스는 이 레포지토리에 있는 것을 기반으로 가져와 컴퓨터에 깔게 됩니

webtoonboom.tistory.com

2024.05.21 - [IT] - 라즈베리파이 11 bullseye에 레포지토리 추가하는 법

 

라즈베리파이 11 bullseye에 레포지토리 추가하는 법

라즈베리파이에서 필요한 패키지를 설치하다가 "패키지를 찾을 수 없습니다"라는 에러 메시지가 나타날 때가 있습니다.이럴 때, 어떻게 해야 할까요?특정 패키지가 있는 레포지토리를 추가하면

webtoonboom.tistory.com

2024.05.20 - [IT] - 라즈베리파이 11 bullseye에서 OpenCV-Python 설치 및 문제 해결 가이드

 

라즈베리파이 11 bullseye에서 OpenCV-Python 설치 및 문제 해결 가이드

라즈베리파이에서 OpenCV-Python 설치 및 문제 해결 가이드이번 설치는 Mac OS 카탈리나 10.15.3에서 패러렐데스크탑 15.1.2(47123) 버전을 이용해서 라즈베리파이 버전 11 bullseye를 가상으로 인스톨하고 진

webtoonboom.tistory.com

 

 

반응형

관련글 더보기