Ultralytics YOLO11 🚀와 함께 라즈베리 파이의 코랄 엣지 TPU
코랄 엣지란 무엇인가요 TPU?
Coral Edge TPU 는 시스템에 Edge TPU 코프로세서를 추가하는 소형 장치입니다. 이를 통해 다음과 같은 저전력, 고성능 ML 추론이 가능합니다. TensorFlow 라이트 모델. 자세한 내용은 Coral Edge TPU 홈페이지에서 확인하세요.
Watch: Google 코랄 엣지를 사용하여 라즈베리 파이에서 추론을 실행하는 방법 TPU
코랄 엣지로 라즈베리파이 모델 성능 향상하기 TPU
많은 사람들이 전력 효율이 높고 다양한 애플리케이션에서 사용할 수 있는 Raspberry Pi와 같은 임베디드 또는 모바일 장치에서 모델을 실행하려고 합니다. 그러나 이러한 장치에서는 일반적으로 다음과 같은 형식을 사용하는 경우에도 추론 성능이 좋지 않습니다. ONNX 또는 OpenVINO. 코랄 엣지( TPU )는 라즈베리 파이와 함께 사용하면 추론 성능을 크게 향상시킬 수 있기 때문에 이 문제에 대한 훌륭한 해결책이 될 수 있습니다.
라즈베리 파이의 엣지 TPU TensorFlow 라이트(신규)⭐ (신규)
라즈베리 파이에서 Edge TPU 를 사용하는 방법에 대한 Coral의 기존 가이드는 오래되었으며, 현재 Coral Edge TPU 런타임 빌드는 현재 TensorFlow 라이트 런타임 버전에서 더 이상 작동하지 않습니다. 또한 Google 은 Coral 프로젝트를 완전히 포기한 것으로 보이며 2021년부터 2025년 사이에 업데이트가 없었습니다. 이 가이드에서는 최신 버전의 TensorFlow 라이트 런타임과 업데이트된 Coral Edge TPU 런타임으로 Edge TPU 를 라즈베리파이 단일 보드 컴퓨터(SBC)에서 작동시키는 방법을 보여드립니다.
전제 조건
- 라즈베리 파이 4B (2GB 이상 권장) 또는 라즈베리 파이 5 (권장)
- 데스크톱이 있는 Raspberry Pi OS Bullseye/Bookworm(64비트)(권장)
- 코랄 USB 가속기
- 모델 내보내기를 위한 비ARM 기반 플랫폼 Ultralytics PyTorch 모델
설치 연습
이 가이드는 이미 작동하는 라즈베리 파이 OS가 설치되어 있고 다음을 설치했다고 가정합니다. ultralytics
및 모든 종속성. 얻으려면 ultralytics
설치된 경우 빠른 시작 가이드 를 클릭하여 설정을 완료한 후 계속 진행하세요.
Edge TPU 런타임 설치
먼저 Edge TPU 런타임을 설치해야 합니다. 다양한 버전이 있으므로 사용 중인 운영 체제에 맞는 버전을 선택해야 합니다. 고주파 버전은 더 높은 클럭 속도로 Edge TPU 를 실행하여 성능을 향상시킵니다. 하지만 Edge TPU 열 스로틀링이 발생할 수 있으므로 일종의 냉각 메커니즘을 마련하는 것이 좋습니다.
라즈베리 파이 OS | 고주파 모드 | 다운로드할 버전 |
---|---|---|
Bullseye 32비트 | 아니요 | libedgetpu1-std_ ... .bullseye_armhf.deb |
Bullseye 64비트 | 아니요 | libedgetpu1-std_ ... .bullseye_arm64.deb |
Bullseye 32비트 | 예 | libedgetpu1-max_ ... .bullseye_armhf.deb |
Bullseye 64비트 | 예 | libedgetpu1-max_ ... .bullseye_arm64.deb |
북웜 32비트 | 아니요 | libedgetpu1-std_ ... .bookworm_armhf.deb |
북웜 64비트 | 아니요 | libedgetpu1-std_ ... .bookworm_arm64.deb |
북웜 32비트 | 예 | libedgetpu1-max_ ... .bookworm_armhf.deb |
북웜 64비트 | 예 | libedgetpu1-max_ ... .bookworm_arm64.deb |
파일을 다운로드한 후 다음 명령어를 사용하여 설치할 수 있습니다:
런타임을 설치한 후, 코랄 엣지( TPU )를 라즈베리파이의 USB 3.0 포트에 연결해야 합니다. 이는 공식 가이드에 따르면 새로운 udev
규칙을 설치한 후에 적용해야 합니다.
중요
Coral Edge TPU 런타임이 이미 설치되어 있는 경우 다음 명령을 사용하여 제거하세요.
Edge로 내보내기 TPU
Edge TPU 를 사용하려면 모델을 호환 가능한 형식으로 변환해야 합니다. ARM에서는 Edge TPU 컴파일러를 사용할 수 없으므로 공식 Ultralytics Docker 컨테이너를 사용하거나 Ultralytics HUB를 사용하여 Google Colab, x86_64 Linux 시스템에서 내보내기를 실행하는 것이 좋습니다. 사용 가능한 인수는 내보내기 모드를 참조하세요.
모델 내보내기
내보낸 모델은 <model_name>_saved_model/
폴더에 <model_name>_full_integer_quant_edgetpu.tflite
. 모델이 접미사( _edgetpu.tflite
그렇지 않으면 ultralytics TPU 모델을 사용하고 있다는 것을 알지 못합니다.
모델 실행
모델을 실제로 실행하려면 먼저 올바른 라이브러리를 설치해야 합니다.
만약 tensorflow
가 설치되어 있으면 다음 명령으로 tensorflow 을 제거합니다:
그런 다음 설치/업데이트 tflite-runtime
:
이제 다음 코드를 사용하여 추론을 실행할 수 있습니다:
모델 실행
전체 예측 모드에 대한 자세한 내용은 예측 페이지에서 종합 정보를 확인하세요.
다중 엣지 TPU를 사용한 추론
여러 개의 Edge TPU가 있는 경우 다음 코드를 사용하여 특정 TPU 을 선택할 수 있습니다.
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/<model_name>_full_integer_quant_edgetpu.tflite") # Load an official model or custom model
# Run Prediction
model.predict("path/to/source.png") # Inference defaults to the first TPU
model.predict("path/to/source.png", device="tpu:0") # Select the first TPU
model.predict("path/to/source.png", device="tpu:1") # Select the second TPU
벤치마크
벤치마크
라즈베리 파이 오스 북웜 64비트와 USB 코랄 엣지 TPU 로 테스트했습니다.
참고
표시된 것은 추론 시간이며, 사전/사후 처리는 포함되지 않습니다.
이미지 크기 | 모델 | 표준 추론 시간(ms) | 고주파 추론 시간(ms) |
---|---|---|---|
320 | YOLOv8n | 32.2 | 26.7 |
320 | YOLOv8s | 47.1 | 39.8 |
512 | YOLOv8n | 73.5 | 60.7 |
512 | YOLOv8s | 149.6 | 125.3 |
이미지 크기 | 모델 | 표준 추론 시간(ms) | 고주파 추론 시간(ms) |
---|---|---|---|
320 | YOLOv8n | 22.2 | 16.7 |
320 | YOLOv8s | 40.1 | 32.2 |
512 | YOLOv8n | 53.5 | 41.6 |
512 | YOLOv8s | 132.0 | 103.3 |
평균적으로:
- Raspberry Pi 5는 표준 모드에서 Raspberry Pi 4B보다 22% 더 빠릅니다.
- 라즈베리 파이 5는 고주파 모드에서 라즈베리 파이 4B보다 30.2% 더 빠릅니다.
- 고주파 모드는 표준 모드보다 28.4% 더 빠릅니다.
자주 묻는 질문
코랄 엣지란 무엇인가 TPU 그리고 어떻게 라즈베리파이의 성능을 향상시키는가 Ultralytics YOLO11 ?
Coral Edge TPU 는 시스템에 Edge TPU 코프로세서를 추가할 수 있도록 설계된 소형 장치입니다. 이 코프로세서는 저전력, 고성능 머신 러닝 추론을 가능하게 하며, 특히 TensorFlow 라이트 모델에 최적화되어 있습니다. 라즈베리 파이를 사용하는 경우, Edge TPU 는 ML 모델 추론을 가속화하여 특히 Ultralytics YOLO11 모델의 성능을 크게 향상시킵니다. Coral Edge에 대한 자세한 내용은 홈페이지 TPU 에서 확인할 수 있습니다.
라즈베리파이에 Coral Edge TPU 런타임을 설치하려면 어떻게 해야 하나요?
라즈베리 파이에 Coral Edge TPU 런타임을 설치하려면, 해당 런타임을 다운로드하세요. .deb
에서 라즈베리 파이 OS 버전용 패키지를 다운로드하십시오. 이 링크. 다운로드가 완료되면 다음 명령을 사용하여 설치합니다:
설치 연습 섹션에 설명된 단계에 따라 이전 Coral Edge TPU 런타임 버전을 제거해야 합니다.
내 Ultralytics YOLO11 모델을 Coral Edge TPU 와 호환되도록 내보낼 수 있나요?
예, 코랄 엣지 TPU 호환되도록 Ultralytics YOLO11 모델을 내보낼 수 있습니다. 내보내기는 Google Colab, x86_64 Linux 머신 또는 Ultralytics Docker 컨테이너를 사용하여 수행하는 것이 좋습니다. 내보내기를 위해 Ultralytics HUB를 사용할 수도 있습니다. Python 및 CLI 사용하여 모델을 내보내는 방법은 다음과 같습니다:
모델 내보내기
자세한 내용은 내보내기 모드 문서를 참조하세요.
라즈베리파이에 TensorFlow 이 이미 설치되어 있는데 대신 tflite-runtime을 사용하려면 어떻게 해야 하나요?
라즈베리 파이에 TensorFlow 가 설치되어 있고 다음과 같이 전환해야 하는 경우 tflite-runtime
를 사용하여 TensorFlow 을 먼저 제거해야 합니다:
그런 다음 설치 또는 업데이트 tflite-runtime
를 다음 명령어로 대체합니다:
자세한 지침은 모델 실행하기 섹션을 참조하세요.
코랄 엣지 TPU 를 사용하여 라즈베리 파이에서 내보낸 YOLO11 모델로 추론을 실행하려면 어떻게 해야 하나요?
YOLO11 모델을 Edge TPU 호환 형식으로 내보낸 후 다음 코드 스니펫을 사용하여 추론을 실행할 수 있습니다:
모델 실행
전체 예측 모드 기능에 대한 자세한 내용은 예측 페이지에서 확인할 수 있습니다.