Bỏ để qua phần nội dung

Hướng dẫn bắt đầu nhanh: Raspberry Pi và Pi Camera với YOLOv5 và YOLOv8

Hướng dẫn toàn diện này nhằm mục đích đẩy nhanh hành trình của bạn với YOLO mô hình phát hiện đối tượng trên Raspberry Pi bằng Pi Camera. Cho dù bạn là sinh viên, người có sở thích hay chuyên nghiệp, hướng dẫn này được thiết kế để giúp bạn thiết lập và chạy trong vòng chưa đầy 30 phút. Các hướng dẫn ở đây được kiểm tra nghiêm ngặt để giảm thiểu các vấn đề thiết lập, cho phép bạn tập trung vào việc sử dụng YOLO cho các dự án cụ thể của bạn.



Xem: Raspberry Pi 5 cập nhật và cải tiến.

Điều kiện tiên quyết

  • Raspberry Pi 3, 4 hoặc 5
  • Máy ảnh Pi
  • Hệ điều hành Raspberry Pi 64-bit

Kết nối Pi Camera với Raspberry Pi của bạn thông qua cáp CSI và cài đặt Hệ điều hành Raspberry Pi 64-bit. Xác minh máy ảnh của bạn bằng lệnh sau:

libcamera-hello

Bạn sẽ thấy nguồn cấp dữ liệu video từ máy ảnh của mình.

Chọn của bạn YOLO Phiên bản: YOLOv5 hoặc YOLOv8

Hướng dẫn này cung cấp cho bạn sự linh hoạt để bắt đầu với một trong hai YOLOv5 hoặc YOLOv8. Cả hai phiên bản đều có những ưu điểm và trường hợp sử dụng độc đáo. Sự lựa chọn là của bạn, nhưng hãy nhớ rằng, mục tiêu của hướng dẫn không chỉ là thiết lập nhanh chóng mà còn là nền tảng vững chắc cho công việc phát hiện đối tượng trong tương lai của bạn.

Chi tiết cụ thể về phần cứng: Trong nháy mắt

Để hỗ trợ bạn đưa ra quyết định phần cứng sáng suốt, chúng tôi đã tóm tắt các chi tiết cụ thể về phần cứng chính của Raspberry Pi 3, 4 và 5 trong bảng dưới đây:

Tính năng Mâm xôi Pi 3 Mâm xôi Pi 4 Mâm xôi Pi 5
CPU ARM Cortex-A53 lõi tứ 1.2GHz 1.5GHz Quad-core 64-bit ARM Cortex-A72 2.4GHz Quad-core 64-bit Arm Cortex-A76
CỪU ĐỰC 1GB LPDDR2 LPDDR2GB, 4GB hoặc 8GB LPDDR4 Thông tin chi tiết chưa có sẵn
Cổng USB 4 x USB 2.0 2 x USB 2.0, 2 x USB 3.0 2 x USB 3.0, 2 x USB 2.0
Mạng lưới Ethernet & Wi-Fi 802.11n Gigabit Ethernet & Wi-Fi 802.11ac Gigabit Ethernet với hỗ trợ PoE +, Wi-Fi® băng tần kép 802.11ac
Hiệu năng Chậm hơn, có thể yêu cầu nhẹ hơn YOLO Mô hình Nhanh hơn, có thể chạy phức tạp YOLO Mô hình Thông tin chi tiết chưa có sẵn
Yêu cầu năng lượng Nguồn điện 2.5A Nguồn điện USB-C 3.0A Thông tin chi tiết chưa có sẵn
Tài liệu chính thức Liên kết Liên kết Liên kết

Vui lòng đảm bảo làm theo các hướng dẫn cụ thể cho mô hình Raspberry Pi của bạn để đảm bảo quá trình thiết lập diễn ra suôn sẻ.

Bắt đầu nhanh với YOLOv5

Phần này phác thảo cách thiết lập YOLOv5 trên Raspberry Pi với Pi Camera. Các bước này được thiết kế để tương thích với ngăn xếp camera libcamera được giới thiệu trong Raspberry Pi OS Bullseye.

Cài đặt các gói cần thiết

  1. Cập nhật Raspberry Pi:

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get autoremove -y
    
  2. Sao chép YOLOv5 Kho:

    cd ~
    git clone https://github.com/Ultralytics/yolov5.git
    
  3. Cài đặt các phụ thuộc cần thiết:

    cd ~/yolov5
    pip3 install -r requirements.txt
    
  4. Đối với Raspberry Pi 3, hãy cài đặt các phiên bản tương thích của PyTorch và Torchvision (bỏ qua Raspberry Pi 4):

    pip3 uninstall torch torchvision
    pip3 install torch==1.11.0 torchvision==0.12.0
    

Thay đổi detect.py

Để kích hoạt luồng TCP qua SSH hoặc CLI, sửa đổi nhỏ là cần thiết trong detect.py.

  1. Mở detect.py:

    sudo nano ~/yolov5/detect.py
    
  2. Tìm và sửa đổi is_url dòng để chấp nhận các luồng TCP:

    is_url = source.lower().startswith(('rtsp://', 'rtmp://', 'http://', 'https://', 'tcp://'))
    
  3. Bình luận ra view_img dòng:

    # view_img = check_imshow(warn=True)
    
  4. Lưu và thoát:

    CTRL + O -> ENTER -> CTRL + X
    

Khởi tạo luồng TCP với Libcamera

  1. Bắt đầu luồng TCP:

    libcamera-vid -n -t 0 --width 1280 --height 960 --framerate 1 --inline --listen -o tcp://127.0.0.1:8888
    

Giữ phiên đầu cuối này chạy cho các bước tiếp theo.

Diễn YOLOv5 Suy luận

  1. Chạy YOLOv5 Detection:

    cd ~/yolov5
    python3 detect.py --source=tcp://127.0.0.1:8888
    

Bắt đầu nhanh với YOLOv8

Thực hiện theo phần này nếu bạn quan tâm đến việc thiết lập YOLOv8 thay vì. Các bước khá giống nhau nhưng được thiết kế riêng cho YOLOv8nhu cầu cụ thể của họ.

Cài đặt các gói cần thiết

  1. Cập nhật Raspberry Pi:

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get autoremove -y
    
  2. Cài đặt ultralytics Python gói:

    pip3 install ultralytics
    
  3. Khởi động lại:

    sudo reboot
    

Khởi tạo luồng TCP với Libcamera

  1. Bắt đầu luồng TCP:

    libcamera-vid -n -t 0 --width 1280 --height 960 --framerate 1 --inline --listen -o tcp://127.0.0.1:8888
    

Diễn YOLOv8 Suy luận

Để thực hiện suy luận với YOLOv8, bạn có thể sử dụng như sau Python Đoạn mã:

from ultralytics import YOLO

model = YOLO('yolov8n.pt')
results = model('tcp://127.0.0.1:8888', stream=True)

while True:
    for result in results:
        boxes = result.boxes
        probs = result.probs

Các bước tiếp theo

Chúc mừng bạn đã thiết lập thành công YOLO trên Raspberry Pi của bạn! Để tìm hiểu và hỗ trợ thêm, hãy truy cập UltralyticsQuỹ Thế giới Kashmir.

Lời cảm ơn và trích dẫn

Hướng dẫn này ban đầu được tạo ra bởi Daan Eeltink cho Kashmir World Foundation, một tổ chức chuyên sử dụng YOLO để bảo tồn các loài có nguy cơ tuyệt chủng. Chúng tôi ghi nhận công việc tiên phong và tập trung giáo dục của họ trong lĩnh vực công nghệ phát hiện đối tượng.

Để biết thêm thông tin về các hoạt động của Kashmir World Foundation, bạn có thể truy cập trang web của họ.



Đã tạo 2023-11-12, Cập nhật 2024-02-03
Tác giả: glenn-jocher (2)

Ý kiến