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ỳ 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. 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.

FAQ

Coral Edge là gì TPU và nó nâng cao hiệu suất của Raspberry Pi như thế nào với Ultralytics YOLOv8?

Rìa san hô TPU là một thiết bị nhỏ gọn được thiết kế để thêm một Edge TPU đồng xử lý với hệ thống của bạn. Bộ đồng xử lý này cho phép suy luận máy học hiệu suất cao, năng lượng thấp, đặc biệt được tối ưu hóa cho TensorFlow Mô hình Lite. Khi sử dụng Raspberry Pi, Edge TPU tăng tốc suy luận mô hình ML, tăng đáng kể hiệu suất, đặc biệt là đối với Ultralytics YOLOv8 Mô hình. Bạn có thể đọc thêm về Coral Edge TPU trên trang chủ của họ.

Làm cách nào để cài đặt Coral Edge TPU thời gian chạy trên Raspberry Pi?

Để cài đặt Coral Edge TPU thời gian chạy trên Raspberry Pi của bạn, hãy tải xuống bản thích hợp .deb gói cho phiên bản hệ điều hành Raspberry Pi của bạn từ liên kết này. Sau khi tải xuống, hãy sử dụng lệnh sau để cài đặt nó:

sudo dpkg -i path/to/package.deb

Đảm bảo gỡ cài đặt mọi Coral Edge trước đó TPU phiên bản thời gian chạy bằng cách làm theo các bước được nêu trong phần Hướng dẫn Cài đặt .

Tôi có thể xuất khẩu của tôi không Ultralytics YOLOv8 mô hình tương thích với Coral Edge TPU?

Có, bạn có thể xuất Ultralytics YOLOv8 mô hình tương thích với Coral Edge TPU. Đó là khuyến cáo để thực hiện xuất khẩu trên Google Colab, một máy Linux x86_64 hoặc sử dụng Ultralytics Bộ chứa Docker. Bạn cũng có thể sử dụng Ultralytics HUB để xuất khẩu. Đây là cách bạn có thể xuất mô hình của mình bằng cách sử dụng Python và CLI:

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

Để biết thêm thông tin, hãy tham khảo tài liệu về Chế độ xuất .

Tôi nên làm gì nếu TensorFlow đã được cài đặt trên Raspberry Pi của tôi nhưng tôi muốn sử dụng tflite-runtime thay thế?

Nếu bạn có TensorFlow được cài đặt trên Raspberry Pi của bạn và cần chuyển sang tflite-runtime, bạn sẽ cần gỡ cài đặt TensorFlow Sử dụng lần đầu:

pip uninstall tensorflow tensorflow-aarch64

Sau đó, cài đặt hoặc cập nhật tflite-runtime với lệnh sau:

pip install -U tflite-runtime

Đối với một bánh xe cụ thể, chẳng hạn như TensorFlow 2.15.0 tflite-runtime, bạn có thể tải xuống từ liên kết này và cài đặt nó bằng cách sử dụng pip. Hướng dẫn chi tiết có sẵn trong phần chạy mô hình Chạy mô hình.

Làm cách nào để chạy suy luận với một xuất YOLOv8 mô hình trên Raspberry Pi bằng Coral Edge TPU?

Sau khi xuất YOLOv8 mô hình cho một Edge TPU-Định dạng tương thích, bạn có thể chạy suy luận bằng cách sử dụng các đoạn 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

Bạn có thể tìm thấy thông tin chi tiết toàn diện về các tính năng của chế độ dự đoán đầy đủ trên Trang Dự đoán.



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

Ý kiến