빠른 시작 가이드: 라즈베리 파이와 Ultralytics YOLO11
이 종합 가이드는 라즈베리파이 디바이스에 Ultralytics YOLO11 배포에 대한 자세한 안내를 제공합니다. 또한 이 작고 강력한 장치에서 YOLO11 의 기능을 보여주기 위한 성능 벤치마크도 소개합니다.
Watch: 라즈베리 파이 5 업데이트 및 개선 사항.
참고
이 가이드는 최신 Raspberry Pi OS Bookworm(데비안 12)을 실행하는 Raspberry Pi 4 및 Raspberry Pi 5로 테스트되었습니다. Raspberry Pi 3와 같은 구형 라즈베리파이 기기에서 이 가이드를 사용하는 것은 동일한 라즈베리파이 OS 북웜이 설치되어 있는 한 정상적으로 작동할 것으로 예상됩니다.
라즈베리 파이란 무엇인가요?
라즈베리 파이는 작고 저렴한 싱글 보드 컴퓨터입니다. 취미용 홈 오토메이션부터 산업용에 이르기까지 다양한 프로젝트와 애플리케이션에 널리 사용되고 있습니다. 라즈베리 파이 보드는 다양한 운영 체제를 실행할 수 있으며, 센서, 액추에이터 및 기타 하드웨어 구성 요소와 쉽게 통합할 수 있는 GPIO(범용 입력/출력) 핀을 제공합니다. 다양한 사양의 다양한 모델로 제공되지만, 모두 저렴하고 컴팩트하며 다용도로 사용할 수 있다는 기본 설계 철학은 동일합니다.
라즈베리 파이 시리즈 비교
라즈베리 파이 3 | 라즈베리 파이 4 | 라즈베리 파이 5 | |
---|---|---|---|
CPU | 브로드컴 BCM2837, Cortex-A53 64비트 SoC | 브로드컴 BCM2711, Cortex-A72 64비트 SoC | Broadcom BCM2712, Cortex-A76 64비트 SoC |
CPU 최대 주파수 | 1.4GHz | 1.8GHz | 2.4GHz |
GPU | 비디오코어 IV | 비디오코어 VI | 비디오코어 VII |
GPU 최대 주파수 | 400Mhz | 500Mhz | 800Mhz |
메모리 | 1GB LPDDR2 SDRAM | 1GB, 2GB, 4GB, 8GB LPDDR4-3200 SDRAM | 4GB, 8GB LPDDR4X-4267 SDRAM |
PCIe | N/A | N/A | 1xPCIe 2.0 인터페이스 |
최대 전력 소모 | 2.5A@5V | 3A@5V | 5A@5V(PD 사용) |
라즈베리 파이 OS란 무엇인가요?
라즈베리파이 OS (이전의 라즈비안)는 라즈베리파이 재단에서 배포하는 소형 싱글 보드 컴퓨터인 라즈베리파이 제품군을 위한 데비안 GNU/Linux 배포판을 기반으로 하는 유닉스 계열 운영체제입니다. 라즈베리파이 OS는 ARM CPU가 탑재된 라즈베리파이에 고도로 최적화되어 있으며, Openbox 스태킹 윈도우 매니저와 함께 수정된 LXDE 데스크톱 환경을 사용합니다. 라즈베리 파이 OS는 라즈베리 파이에서 가능한 한 많은 데비안 패키지의 안정성과 성능을 개선하는 데 중점을 두고 활발히 개발 중입니다.
라즈베리 파이 OS를 라즈베리 파이로 플래시하기
라즈베리 파이를 손에 넣은 후 가장 먼저 해야 할 일은 마이크로 SD 카드에 라즈베리 파이 OS를 플래시하고, 장치에 삽입한 후 OS로 부팅하는 것입니다. 라즈베리파이의 자세한 시작하기 설명서를 따라 장치를 처음 사용할 준비를 하세요.
설정 Ultralytics
다음 컴퓨터 비전 프로젝트를 구축하기 위해 라즈베리파이에서 Ultralytics 패키지를 설정하는 방법에는 두 가지가 있습니다. 둘 중 하나를 사용할 수 있습니다.
Docker로 시작하기
라즈베리파이에서 Ultralytics YOLO11 를 시작하는 가장 빠른 방법은 미리 빌드된 라즈베리파이용 도커 이미지로 실행하는 것입니다.
아래 명령어를 실행하여 Docker 컨테이너를 가져와 라즈베리파이에서 실행합니다. 이 예제는 파이썬3 환경의 데비안 12(Bookworm)가 포함된 arm64v8/debian 도커 이미지를 기반으로 합니다.
이 작업이 완료되면 라즈베리 파이에서 NCNN 사용 섹션으로 건너뜁니다.
Docker 없이 시작
Ultralytics 패키지 설치
여기서는 선택적 종속성과 함께 Ultralytics 패키지를 라즈베리 파이에 설치하여 다른 형식으로 PyTorch 모델을 다른 형식으로 내보낼 수 있습니다.
-
패키지 목록 업데이트, pip 설치 및 최신 버전으로 업그레이드
-
설치
ultralytics
선택적 종속성이 있는 pip 패키지 -
디바이스 재부팅
라즈베리 파이에서 NCNN 사용
에서 지원하는 모든 모델 내보내기 형식 중 Ultralytics, NCNNNCNN 은 모바일/임베디드 플랫폼(예: ARM 아키텍처)에 고도로 최적화되어 있기 때문에 라즈베리 파이 디바이스로 작업할 때 최고의 추론 성능을 제공합니다.
모델을 NCNN 로 변환하고 추론 실행
내보낸 모델로 추론을 실행하기 위해 PyTorch 형식의 YOLO11n 모델을 NCNN 으로 변환합니다.
예
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model to NCNN format
model.export(format="ncnn") # creates 'yolo11n_ncnn_model'
# Load the exported NCNN model
ncnn_model = YOLO("yolo11n_ncnn_model")
# Run inference
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
팁
지원되는 내보내기 옵션에 대한 자세한 내용은 배포 옵션에 대한Ultralytics 문서 페이지를 참조하세요.
라즈베리 파이 5 YOLO11 벤치마크
YOLO11 벤치마크는 Ultralytics 팀에서 속도와 정확도를 측정하는 9가지 모델 형식( PyTorch, TorchScript, ONNX, OpenVINO, TF SavedModel , TF GraphDef , TF Lite, PaddlePaddle, NCNN)으로 실행했습니다. 벤치마크는 기본 입력 이미지 크기 640의 FP32 정밀도로 라즈베리 파이 5에서 실행되었습니다.
비교 차트
다른 모델은 크기가 너무 커서 라즈베리 파이에서 실행하기 어렵고 적절한 성능을 제공하지 않기 때문에 YOLO11n 및 YOLO11s 모델에 대한 벤치마크만 포함했습니다.

상세 비교 표
아래 표는 라즈베리 파이 5에서 실행되는 9가지 형식(PyTorch, TorchScript, ONNX, OpenVINO, TF SavedModel , TF GraphDef , TF Lite, PaddlePaddle, NCNN)의 두 가지 모델(YOLO11n, YOLO11s)에 대한 벤치마크 결과로, 각 조합의 상태, 크기, mAP50-95(B) 메트릭 및 추론 시간을 보여줍니다.
성능
형식 | 상태 | 디스크 크기(MB) | mAP50-95(B) | 추론 시간(ms/im) |
---|---|---|---|---|
PyTorch | ✅ | 5.4 | 0.6100 | 405.238 |
TorchScript | ✅ | 10.5 | 0.6082 | 526.628 |
ONNX | ✅ | 10.2 | 0.6082 | 168.082 |
OpenVINO | ✅ | 10.4 | 0.6082 | 81.192 |
TF SavedModel | ✅ | 25.8 | 0.6082 | 377.968 |
TF GraphDef | ✅ | 10.3 | 0.6082 | 487.244 |
TF Lite | ✅ | 10.3 | 0.6082 | 317.398 |
PaddlePaddle | ✅ | 20.4 | 0.6082 | 561.892 |
MNN | ✅ | 10.1 | 0.6106 | 112.554 |
NCNN | ✅ | 10.2 | 0.6106 | 88.026 |
형식 | 상태 | 디스크 크기(MB) | mAP50-95(B) | 추론 시간(ms/im) |
---|---|---|---|---|
PyTorch | ✅ | 18.4 | 0.7526 | 1011.60 |
TorchScript | ✅ | 36.5 | 0.7416 | 1268.502 |
ONNX | ✅ | 36.3 | 0.7416 | 324.17 |
OpenVINO | ✅ | 36.4 | 0.7416 | 179.324 |
TF SavedModel | ✅ | 91.1 | 0.7416 | 714.382 |
TF GraphDef | ✅ | 36.4 | 0.7416 | 1019.83 |
TF Lite | ✅ | 36.4 | 0.7416 | 849.86 |
PaddlePaddle | ✅ | 72.5 | 0.7416 | 1276.34 |
MNN | ✅ | 36.2 | 0.7409 | 273.032 |
NCNN | ✅ | 36.2 | 0.7419 | 194.858 |
Ultralytics 8.3.39로 벤치마킹했습니다.
결과 재현
모든 내보내기 형식에서 위의 Ultralytics 벤치마크를 재현하려면 다음 코드를 실행하세요:
예
벤치마킹 결과는 시스템의 정확한 하드웨어 및 소프트웨어 구성과 벤치마크를 실행할 당시 시스템의 현재 작업량에 따라 달라질 수 있다는 점에 유의하세요. 가장 신뢰할 수 있는 결과를 얻으려면 많은 수의 이미지가 포함된 데이터 세트를 사용하세요. data='coco8.yaml'
(밸 이미지 4개) 또는 data='coco.yaml'
(5000 VAL 이미지).
라즈베리 파이 카메라 사용
컴퓨터 비전 프로젝트에 라즈베리 파이를 사용할 때는 추론을 수행하기 위해 실시간 비디오 피드를 확보하는 것이 필수적일 수 있습니다. 라즈베리파이의 온보드 MIPI CSI 커넥터를 사용하면 공식 라즈베리파이 카메라 모듈을 연결할 수 있습니다. 이 가이드에서는 라즈베리파이 카메라 모듈 3을 사용해 비디오 피드를 수집하고 YOLO11 모델을 사용해 추론을 수행했습니다.
팁
라즈베리파이에서 제공하는 다양한 카메라 모듈에 대해 자세히 알아보고, 라즈베리파이 카메라 모듈을 시작하는 방법도 알아보세요.
참고
라즈베리파이 5는 라즈베리파이 4보다 더 작은 CSI 커넥터를 사용하므로(15핀 대 22핀), 라즈베리파이 카메라에 연결하려면 15핀 대 22핀 어댑터 케이블이 필요합니다.
카메라 테스트
카메라를 라즈베리파이에 연결한 후 다음 명령을 실행합니다. 약 5초 동안 카메라의 실시간 비디오 피드가 표시됩니다.
팁
자세히 알아보기 rpicam-hello
공식 라즈베리 파이 문서에서 사용 방법
카메라로 추론하기
라즈베리 파이 카메라를 사용하여 YOLO11 모델을 추론하는 방법에는 두 가지가 있습니다.
사용법
다음을 사용할 수 있습니다. picamera2
카메라 및 추론 YOLO11 모델에 액세스하기 위해 라즈베리 파이 OS가 사전 설치되어 제공됩니다.
예
import cv2
from picamera2 import Picamera2
from ultralytics import YOLO
# Initialize the Picamera2
picam2 = Picamera2()
picam2.preview_configuration.main.size = (1280, 720)
picam2.preview_configuration.main.format = "RGB888"
picam2.preview_configuration.align()
picam2.configure("preview")
picam2.start()
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
while True:
# Capture frame-by-frame
frame = picam2.capture_array()
# Run YOLO11 inference on the frame
results = model(frame)
# Visualize the results on the frame
annotated_frame = results[0].plot()
# Display the resulting frame
cv2.imshow("Camera", annotated_frame)
# Break the loop if 'q' is pressed
if cv2.waitKey(1) == ord("q"):
break
# Release resources and close windows
cv2.destroyAllWindows()
다음을 사용하여 TCP 스트림을 시작해야 합니다. rpicam-vid
를 연결하여 나중에 추론할 때 이 스트림 URL을 입력으로 사용할 수 있도록 합니다. 다음 명령을 실행하여 TCP 스트림을 시작합니다.
자세히 알아보기 rpicam-vid
공식 라즈베리 파이 문서에서 사용 방법
팁
이미지/비디오 입력 유형을 변경하려면 추론 소스에 대한 문서를 확인하세요.
라즈베리 파이 사용 시 모범 사례
YOLO11 을 실행하는 라즈베리 파이에서 성능을 극대화하기 위해 따라야 할 몇 가지 모범 사례가 있습니다.
-
SSD 사용
라즈베리파이를 24시간 내내 계속 사용하는 경우, SD 카드는 지속적인 쓰기를 견디지 못하고 파손될 수 있으므로 시스템용으로 SSD를 사용하는 것이 좋습니다. 라즈베리파이 5의 온보드 PCIe 커넥터를 통해 이제 라즈베리파이 5용 NVMe 베이스와 같은 어댑터를 사용해 SSD를 연결할 수 있습니다.
-
GUI 없는 플래시
라즈베리 파이 OS를 플래시할 때 데스크톱 환경(라즈베리 파이 OS 라이트)을 설치하지 않도록 선택할 수 있으며, 이렇게 하면 장치의 RAM을 약간 절약하여 컴퓨터 비전 처리를 위한 더 많은 공간을 확보할 수 있습니다.
-
라즈베리 파이 오버클럭
라즈베리파이 5에서 Ultralytics YOLO11 모델을 실행하는 동안 성능을 조금 더 향상시키고 싶다면 CPU 기본 2.4GHz에서 2.9GHz로, GPU 800MHz에서 1GHz로 오버클럭할 수 있습니다. 시스템이 불안정해지거나 충돌이 발생하면 오버클럭 값을 100MHz 단위로 낮추세요. 오버클럭은 열 발생을 증가시키고 열 스로틀링을 유발할 수 있으므로 적절한 냉각 장치를 갖추고 있는지 확인하세요.
a. 소프트웨어 업그레이드
b. 구성 파일을 편집하려면 엽니다.
c. 하단에 다음 줄을 추가합니다.
d. 저장하고 종료하려면 CTRL + X를 누른 다음 Y를 누르고 Enter 키를 누릅니다.
e. 라즈베리 파이 재부팅
다음 단계
라즈베리파이에 YOLO 를 성공적으로 설치하신 것을 축하드립니다! 추가 학습 및 지원은 Ultralytics YOLO11 문서 및 카슈미르 월드 재단을 참조하세요.
감사 및 인용
이 가이드는 멸종 위기 종 보존을 위해 YOLO 을 사용하는 단체인 카슈미르 월드 재단을 위해 다안 엘팅크가 처음에 만들었습니다. 물체 감지 기술 분야에서 선구적인 작업과 교육에 중점을 둔 이 단체의 공로를 인정합니다.
카슈미르 월드 재단의 활동에 대한 자세한 내용은 웹사이트에서 확인할 수 있습니다.
자주 묻는 질문
도커를 사용하지 않고 라즈베리파이에서 Ultralytics YOLO11 설정하려면 어떻게 해야 하나요?
Docker가 없는 라즈베리파이에서 Ultralytics YOLO11 을 설정하려면 다음 단계를 따르세요:
- 패키지 목록 업데이트 및 설치
pip
: - 선택적 종속성과 함께 Ultralytics 패키지를 설치합니다:
- 변경 사항을 적용하려면 장치를 재부팅합니다:
자세한 지침은 도커 없이 시작하기 섹션을 참조하세요.
라즈베리파이에서 AI 작업을 위해 Ultralytics YOLO11 의 NCNN 형식을 사용해야 하는 이유는 무엇인가요?
Ultralytics YOLO11의 NCNN 형식은 모바일 및 임베디드 플랫폼에 고도로 최적화되어 있어 라즈베리파이 기기에서 AI 작업을 실행하는 데 이상적입니다. NCNN 형식은 ARM 아키텍처를 활용하여 추론 성능을 극대화하여 다른 형식에 비해 더 빠르고 효율적인 처리를 제공합니다. 지원되는 내보내기 옵션에 대한 자세한 내용은 배포 옵션에 대한Ultralytics 문서 페이지를 참조하세요.
YOLO11 모델을 라즈베리파이에서 사용할 수 있도록 NCNN 형식으로 변환하려면 어떻게 해야 하나요?
Python 또는 CLI 명령을 사용하여 PyTorch YOLO11 모델을 NCNN 형식으로 변환할 수 있습니다:
예
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model to NCNN format
model.export(format="ncnn") # creates 'yolo11n_ncnn_model'
# Load the exported NCNN model
ncnn_model = YOLO("yolo11n_ncnn_model")
# Run inference
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
자세한 내용은 라즈베리 파이에서 NCNN 사용 섹션을 참조하세요.
YOLO11 실행과 관련된 라즈베리 파이 4와 라즈베리 파이 5의 하드웨어 차이점은 무엇인가요?
주요 차이점은 다음과 같습니다:
- CPU: 라즈베리파이 4는 브로드컴 BCM2711, 코어텍스-A72 64비트 SoC를, 라즈베리파이 5는 브로드컴 BCM2712, 코어텍스-A76 64비트 SoC를 사용합니다.
- 최대 CPU 주파수: 라즈베리파이 4의 최대 주파수는 1.8GHz이며, 라즈베리파이 5는 2.4GHz에 달합니다.
- 메모리: 라즈베리 파이 4는 최대 8GB의 LPDDR4-3200 SDRAM을 제공하며, 라즈베리 파이 5는 4GB 및 8GB 버전으로 제공되는 LPDDR4X-4267 SDRAM을 탑재하고 있습니다.
이러한 개선 사항 덕분에 라즈베리 파이 5의 YOLO11 모델이 라즈베리 파이 4에 비해 더 나은 성능 벤치마크를 달성할 수 있었습니다. 자세한 내용은 라즈베리 파이 시리즈 비교 표를 참조하세요.
라즈베리 파이 카메라 모듈이 Ultralytics YOLO11 에서 작동하도록 설정하려면 어떻게 해야 하나요?
YOLO11 추론을 위해 라즈베리 파이 카메라를 설정하는 방법에는 두 가지가 있습니다:
-
사용
picamera2
:import cv2 from picamera2 import Picamera2 from ultralytics import YOLO picam2 = Picamera2() picam2.preview_configuration.main.size = (1280, 720) picam2.preview_configuration.main.format = "RGB888" picam2.preview_configuration.align() picam2.configure("preview") picam2.start() model = YOLO("yolo11n.pt") while True: frame = picam2.capture_array() results = model(frame) annotated_frame = results[0].plot() cv2.imshow("Camera", annotated_frame) if cv2.waitKey(1) == ord("q"): break cv2.destroyAllWindows()
-
TCP 스트림 사용:
자세한 설정 지침은 카메라로 추론하기 섹션을 참조하세요.