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

Cạnh san hô TPU trên Raspberry Pi với Ultralytics YOLOv8 🚀

Máy tính bảng đơn Raspberry Pi với USB Edge TPU Accelerator

Coral Edge là gì TPU?

Rìa san hô TPU là một thiết bị nhỏ gọn có thêm Edge TPU đồng xử lý với hệ thống của bạn. Nó cho phép suy luận ML năng lượng thấp, hiệu suất cao cho TensorFlow Mô hình Lite. Đọc thêm tại Cạnh san hô TPU trang chủ.

Tăng hiệu suất mô hình Raspberry Pi với Coral Edge TPU

Nhiều người muốn chạy mô hình của họ trên thiết bị nhúng hoặc thiết bị di động như Raspberry Pi, vì chúng rất tiết kiệm năng lượng và có thể được sử dụng trong nhiều ứng dụng khác nhau. Tuy nhiên, hiệu suất suy luận trên các thiết bị này thường kém ngay cả khi sử dụng các định dạng như onnx hoặc openvino. Rìa san hô TPU là một giải pháp tuyệt vời cho vấn đề này, vì nó có thể được sử dụng với Raspberry Pi và tăng tốc hiệu suất suy luận rất nhiều.

Cạnh TPU trên Raspberry Pi với TensorFlow Lite (Mới) ⭐

Hướng dẫn hiện có của Coral về cách sử dụng EdgeTPU với Raspberry Pi đã lỗi thời và Coral Edge hiện tại TPU Bản dựng thời gian chạy không hoạt động với hiện tại TensorFlow Phiên bản thời gian chạy Lite nữa. Thêm vào đó, Google dường như đã từ bỏ hoàn toàn dự án Coral và không có bất kỳ bản cập nhật nào từ năm 2021 đến năm 2024. Hướng dẫn này sẽ chỉ cho bạn cách lấy Edge TPU Làm việc với các phiên bản mới nhất của TensorFlow Thời gian chạy Lite và Coral Edge được cập nhật TPU thời gian chạy trên máy tính bảng đơn Raspberry Pi (SBC).

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

Hướng dẫn cài đặt

Hướng dẫn này giả định rằng bạn đã cài đặt hệ điều hành Raspberry Pi đang hoạt động và đã cài đặt ultralytics và tất cả các phụ thuộc. Để có được ultralytics đã cài đặt, hãy truy cập Hướng dẫn bắt đầu nhanh để thiết lập trước khi tiếp tục tại đây.

Cài đặt Edge TPU Runtime

Đầu tiên, chúng ta cần cài đặt Edge TPU Runtime. Có rất nhiều phiên bản khác nhau có sẵn, vì vậy bạn cần chọn phiên bản phù hợp với hệ điều hành của mình.

Hệ điều hành Raspberry Pi Chế độ tần số cao Phiên bản để tải xuống
Mắt bò 32bit Không libedgetpu1-std_ ... .bullseye_armhf.deb
Mắt bò 64bit Không libedgetpu1-std_ ... .bullseye_arm64.deb
Mắt bò 32bit libedgetpu1-max_ ... .bullseye_armhf.deb
Mắt bò 64bit libedgetpu1-max_ ... .bullseye_arm64.deb
Mọt sách 32bit Không libedgetpu1-std_ ... .bookworm_armhf.deb
Mọt sách 64bit Không libedgetpu1-std_ ... .bookworm_arm64.deb
Mọt sách 32bit libedgetpu1-max_ ... .bookworm_armhf.deb
Mọt sách 64bit libedgetpu1-max_ ... .bookworm_arm64.deb

Tải xuống phiên bản mới nhất từ đây.

Sau khi tải xuống tệp, bạn có thể cài đặt nó bằng lệnh sau:

sudo dpkg -i path/to/package.deb

Sau khi cài đặt thời gian chạy, bạn cần cắm Coral Edge của mình TPU vào cổng USB 3.0 trên Raspberry Pi của bạn. Điều này là do, theo hướng dẫn chính thức, một mới udev Quy tắc cần có hiệu lực sau khi cài đặt.

Quan trọng

Nếu bạn đã có Coral Edge TPU thời gian chạy được cài đặt, gỡ cài đặt nó bằng lệnh sau.

# 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 của bạn sang Edge TPU Mô hình tương thích

Để sử dụng Edge TPU, bạn cần chuyển đổi mô hình của mình sang định dạng tương thích. Chúng tôi khuyên bạn nên chạy xuất trên Google Colab, x86_64 máy Linux, sử dụng chính thức Ultralytics Bộ chứa Docker, hoặc sử dụng Ultralytics HUB, kể từ Edge TPU trình biên dịch không có sẵn trên ARM. Xem Chế độ xuất để biết các đối số có sẵn.

Xuất khẩu

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')
yolo export model=path/to/model.pt format=edgetpu  # Export an official model or custom model

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

Chạy mô hình

Sau khi xuất mô hình của bạn, bạn có thể chạy suy luận với nó bằng cách sử dụng mã sau:

Chạy

from ultralytics import YOLO

# Load a model
model = YOLO('path/to/edgetpu_model.tflite')  # Load an official model or custom model

# Run Prediction
model.predict("path/to/source.png")
yolo predict model=path/to/edgetpu_model.tflite source=path/to/source.png  # Load an official model or custom model

Tìm thông tin toàn diện trên trang Dự đoán để biết chi tiết đầy đủ về chế độ dự đoán.

Quan trọng

Bạn nên chạy mô hình bằng cách sử dụng tflite-runtime và không tensorflow. Nếu tensorflow được cài đặt, gỡ cài đặt tensorflow với lệnh sau:

pip uninstall tensorflow tensorflow-aarch64

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

pip install -U tflite-runtime

Nếu bạn muốn một tflite-runtime bánh xe cho tensorflow 2.15.0 Tải xuống từ Ở đây và cài đặt nó bằng cách sử dụng pip hoặc trình quản lý gói bạn chọn.



Đã tạo 2024-02-12, Cập nhật 2024-04-27
Tác giả: glenn-jocher (3), Skillnoob (1)

Ý kiến