YOLO Vision 2026:

Cách chạy Ultralytics YOLO26 trên Raspberry Pi với Coral Edge TPU#

Raspberry Pi with Edge TPU accelerator

Một Raspberry Pi là một nền tảng tiết kiệm điện, chi phí phải chăng để chạy thị giác máy tính ở biên (edge), nhưng suy luận trên thiết bị lại chậm ngay cả với các định dạng đã tối ưu như ONNX hoặc OpenVINO. Kết hợp Pi với một bộ đồng xử lý Coral Edge TPU sẽ giảm tải quá trình suy luận sang phần cứng chuyên dụng và tăng tốc đáng kể. Hướng dẫn này chỉ cho bạn cách cài đặt môi trường chạy (runtime), xuất mô hình Ultralytics YOLO26 sang định dạng Edge TPU và chạy suy luận tăng tốc.



Watch: How to Run Inference on Raspberry Pi using Google Coral Edge TPU

Tại sao nên sử dụng Coral Edge TPU?#

Coral Edge TPU là một thiết bị nhỏ gọn bổ sung bộ đồng xử lý Edge TPU vào hệ thống của bạn, cho phép thực hiện ML inference hiệu suất cao và tiêu thụ điện năng thấp cho các mô hình TensorFlow Lite. Đây là giải pháp phù hợp cho các hệ thống nhúng và triển khai trên thiết bị di động nơi CPU đơn thuần không thể đáp ứng:

  • Inference nhanh hơn — Edge TPU tăng tốc các mô hình lượng tử hóa (quantized) vượt xa những gì CPU Raspberry Pi đạt được khi chạy độc lập.
  • Tiêu thụ điện năng thấp — thiết bị cung cấp lưu lượng xử lý cao trên mỗi watt, lý tưởng cho các hệ thống triển khai sử dụng pin hoặc năng lượng mặt trời.
  • Cắm là chạy (Plug-and-play)USB Accelerator kết nối qua cổng USB 3.0, do đó không cần tích hợp phần cứng bổ sung nào.
Cập nhật runtime cho TensorFlow Lite hiện tại

Hướng dẫn chính thức từ Coral đã lỗi thời: các bản dựng runtime Coral gốc không còn hoạt động với các phiên bản TensorFlow Lite runtime hiện tại và dự án không có bản cập nhật nào từ năm 2021 đến 2025. Hướng dẫn này sử dụng Edge TPU runtime được duy trì tích cực và phiên bản tflite-runtime mới nhất để bộ tăng tốc hoạt động trên bản cài đặt Raspberry Pi OS hiện tại.

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

Hướng dẫn này giả định rằng bạn đã có sẵn một bản cài đặt Raspberry Pi OS hoạt động cùng với ultralytics và các phần phụ thuộc của nó. Nếu chưa, hãy làm theo hướng dẫn bắt đầu nhanh trước.

Với các điều kiện tiên quyết đã sẵn sàng, quy trình làm việc gồm ba bước: cài đặt Edge TPU runtime trên Pi, xuất mô hình của bạn trên máy tính phi-ARM và chạy suy luận trở lại trên Pi.

Cài đặt Runtime Edge TPU#

Runtime được phân phối trong nhiều bản build, vì vậy hãy chọn bản phù hợp với hệ điều hành của bạn. Bản build tần số cao (high-frequency) chạy Edge TPU ở tốc độ xung nhịp cao hơn để có hiệu suất tốt hơn, nhưng nó có thể gây ra hiện tượng giảm hiệu năng do nhiệt (thermal throttling) — hãy sử dụng giải pháp tản nhiệt nếu bạn chọn bản này.

Raspberry Pi OSChế độ tần số caoPhiên bản cần tải xuống
Bullseye 32bitKhônglibedgetpu1-std_ ... .bullseye_armhf.deb
Bullseye 64bitKhônglibedgetpu1-std_ ... .bullseye_arm64.deb
Bullseye 32bitlibedgetpu1-max_ ... .bullseye_armhf.deb
Bullseye 64bitlibedgetpu1-max_ ... .bullseye_arm64.deb
Bookworm 32bitKhônglibedgetpu1-std_ ... .bookworm_armhf.deb
Bookworm 64bitKhônglibedgetpu1-std_ ... .bookworm_arm64.deb
Bookworm 32bitlibedgetpu1-max_ ... .bookworm_armhf.deb
Bookworm 64bitlibedgetpu1-max_ ... .bookworm_arm64.deb

Tải xuống phiên bản mới nhất từ đây, sau đó cài đặt gói .deb:

sudo dpkg -i path/to/package.deb

Sau khi cài đặt runtime, hãy cắm Coral Edge TPU vào cổng USB 3.0 trên Raspberry Pi để quy tắc udev mới có hiệu lực.

Gỡ bỏ bất kỳ runtime nào hiện có trước

Nếu bạn đã cài đặt runtime Coral Edge TPU, hãy gỡ cài đặt nó trước khi cài đặt bản build mới.

# If you installed the standard version
sudo apt remove libedgetpu1-std

# If you installed the high-frequency version
sudo apt remove libedgetpu1-max

Xuất mô hình sang định dạng Edge TPU#

Để sử dụng Edge TPU, hãy chuyển đổi mô hình của bạn sang định dạng tương thích. Hãy thực hiện việc xuất trên nền tảng phi-ARM — Google Colab, máy tính Linux x86_64, Ultralytics Docker container chính thức, hoặc Ultralytics Platform — vì Edge TPU compiler không có sẵn trên ARM. Xem mục Chế độ Xuất (Export mode) để biết các đối số có sẵn.

Xuất mô hình
from ultralytics import YOLO

# Load a model
model = YOLO("path/to/model.pt")  # Load an official model or custom model

# Export the model
model.export(format="edgetpu")

Mô hình đã xuất được lưu trong thư mục <model_name>_saved_model/ với tên <model_name>_full_integer_quant_edgetpu.tflite.

Giữ nguyên hậu tố `_edgetpu.tflite`

Tên tệp phải kết thúc bằng _edgetpu.tflite. Nếu bạn đổi tên nó thành bất kỳ tên nào khác, Ultralytics sẽ tải nó như một mô hình TensorFlow Lite thông thường thay vì phát hiện Edge TPU và bộ tăng tốc sẽ không được sử dụng.

Chạy Inference trên Edge TPU#

Trước khi chạy mô hình, hãy cài đặt các thư viện chính xác trên Raspberry Pi. Nếu TensorFlow đã được cài đặt, hãy gỡ cài đặt trước:

pip uninstall tensorflow tensorflow-aarch64

Sau đó cài đặt hoặc cập nhật tflite-runtime:

pip install -U tflite-runtime

Bây giờ bạn có thể chạy inference:

Chạy mô hình
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")

Tìm chi tiết đầy đủ về chế độ dự đoán trên trang Dự đoán (Predict).

Inference với nhiều Edge TPU

Nếu bạn có nhiều Edge TPU, bạn có thể chọn một thiết bị cụ thể bằng đối số device.

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

Điểm chuẩn (Benchmarks)#

Các số liệu dưới đây được đo trên Raspberry Pi OS Bookworm 64-bit và một USB Coral Edge TPU. Chúng chỉ hiển thị thời gian inference (không bao gồm tiền xử lý/hậu xử lý) và đóng vai trò là tham chiếu tương đối cho sự tăng tốc mà Edge TPU cung cấp trên các dòng Pi và các chế độ.

Về các con số này

Các bài kiểm thử này được ghi lại với các mô hình YOLOv8. Thời gian inference tuyệt đối thay đổi theo phiên bản mô hình và kích thước hình ảnh, nhưng mức tăng tốc tương đối giữa các dòng Pi và các chế độ xung nhịp vẫn giữ nguyên.

Kích thước hình ảnhMô hìnhThời gian Inference tiêu chuẩn (ms)Thời gian Inference tần số cao (ms)
320YOLOv8n32.226.7
320YOLOv8s47.139.8
512YOLOv8n73.560.7
512YOLOv8s149.6125.3

Trung bình:

  • Raspberry Pi 5 nhanh hơn 22% so với Raspberry Pi 4B ở chế độ tiêu chuẩn.
  • Raspberry Pi 5 nhanh hơn 30.2% so với Raspberry Pi 4B ở chế độ tần số cao.
  • Chế độ tần số cao nhanh hơn 28.4% so với chế độ tiêu chuẩn.

Kết luận#

Coral Edge TPU biến Raspberry Pi thành một thiết bị suy luận mạnh mẽ, tiết kiệm điện cho Ultralytics YOLO26. Hãy xuất mô hình của bạn trên máy tính phi-ARM, giữ nguyên hậu tố _edgetpu.tflite và chạy mô hình đó với tflite-runtime trên Pi để đạt được suy luận biên tăng tốc. Để có thêm các tùy chọn triển khai, hãy xem hướng dẫn Raspberry Pi.

Câu hỏi thường gặp#

  • Coral Edge TPU là một thiết bị nhỏ gọn bổ sung bộ đồng xử lý Edge TPU vào hệ thống của bạn. Bộ đồng xử lý này cho phép ML inference hiệu suất cao và tiêu thụ điện năng thấp, được tối ưu hóa đặc biệt cho các mô hình TensorFlow Lite. Trên Raspberry Pi, nó tăng tốc inference vượt xa những gì CPU đạt được khi chạy đơn lẻ, giúp cải thiện đáng kể hiệu suất cho các mô hình Ultralytics YOLO26.

  • Tải xuống gói .deb phù hợp với phiên bản Raspberry Pi OS của bạn từ liên kết này, sau đó cài đặt:

    sudo dpkg -i path/to/package.deb

    Hãy đảm bảo gỡ cài đặt bất kỳ phiên bản Coral Edge TPU runtime nào trước đó bằng cách làm theo các bước trong phần Cài đặt Edge TPU Runtime (Install the Edge TPU Runtime).

  • Có. Hãy chạy lệnh xuất trên Google Colab, máy tính Linux x86_64, hoặc Ultralytics Docker container; bạn cũng có thể sử dụng Ultralytics Platform. Dưới đây là cách xuất bằng Python và CLI:

    Xuất mô hình
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("path/to/model.pt")  # Load an official model or custom model
    
    # Export the model
    model.export(format="edgetpu")

    Để biết thêm thông tin, hãy tham khảo tài liệu Chế độ Xuất (Export mode).

  • Nếu bạn đã cài đặt TensorFlow và cần chuyển sang tflite-runtime, hãy gỡ cài đặt TensorFlow trước:

    pip uninstall tensorflow tensorflow-aarch64

    Sau đó cài đặt hoặc cập nhật tflite-runtime:

    pip install -U tflite-runtime

    Để biết hướng dẫn chi tiết, hãy tham khảo phần Chạy suy luận trên Edge TPU (Run Inference on the Edge TPU).

  • Sau khi xuất mô hình YOLO26 của bạn sang định dạng tương thích với Edge TPU, hãy chạy suy luận bằng các đoạn mã sau. Tệp mô hình phải giữ nguyên hậu tố _edgetpu.tflite để Ultralytics tải nó trên Edge TPU:

    Chạy mô hình
    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")

    Thông tin chi tiết toàn diện về chế độ dự đoán có trên trang Dự đoán (Predict).

Bình luận