Ultralytics Android Ứng dụng: Phát hiện đối tượng theo thời gian thực với YOLO Mô hình
Các Ultralytics Android Ứng dụng là một công cụ mạnh mẽ cho phép bạn chạy YOLO mô hình trực tiếp trên của bạn Android thiết bị phát hiện đối tượng theo thời gian thực. Ứng dụng này sử dụng TensorFlow Lite để tối ưu hóa mô hình và nhiều đại biểu phần cứng khác nhau để tăng tốc, cho phép phát hiện đối tượng nhanh chóng và hiệu quả.
Xem: Bắt đầu với Ultralytics Ứng dụng HUB (IOS & Android)
Lượng tử hóa và tăng tốc
Để đạt được hiệu suất thời gian thực trên Android thiết bị, YOLO các mô hình được lượng tử hóa theo độ chính xác FP16 hoặc INT8. Lượng tử hóa là một quá trình làm giảm độ chính xác số của mô hình weights and biases , do đó làm giảm kích thước mô hình và lượng tính toán cần thiết. Điều này dẫn đến thời gian suy luận nhanh hơn mà không ảnh hưởng đáng kể đến độ chính xác của mô hình.
Lượng tử hóa FP16
Lượng tử hóa FP16 (hoặc nửa chính xác) chuyển đổi số dấu phẩy động 32 bit của mô hình thành số dấu phẩy động 16 bit. Điều này làm giảm một nửa kích thước của mô hình và tăng tốc quá trình suy luận, đồng thời duy trì sự cân bằng tốt giữa độ chính xác và hiệu suất.
Lượng tử hóa INT8
Lượng tử hóa INT8 (hoặc số nguyên 8 bit) làm giảm thêm kích thước và yêu cầu tính toán của mô hình bằng cách chuyển đổi các số dấu phẩy động 32 bit của nó thành số nguyên 8 bit. Phương pháp lượng tử hóa này có thể dẫn đến tăng tốc đáng kể, nhưng có thể làm giảm nhẹ độ chính xác trung bình (mAP) do độ chính xác số thấp hơn.
Giảm mAP trong các mô hình INT8
Độ chính xác số giảm trong các mô hình INT8 có thể dẫn đến một số mất thông tin trong quá trình lượng tử hóa, điều này có thể dẫn đến giảm nhẹ mAP. Tuy nhiên, sự đánh đổi này thường được chấp nhận khi xem xét mức tăng hiệu suất đáng kể được cung cấp bởi lượng tử hóa INT8.
Đại biểu và sự thay đổi hiệu suất
Các đại biểu khác nhau có sẵn trên Android thiết bị để tăng tốc suy luận mô hình. Các đại biểu này bao gồm: CPU, GPU, Hexagon và NNAPI. Hiệu suất của các đại biểu này khác nhau tùy thuộc vào nhà cung cấp phần cứng của thiết bị, dòng sản phẩm và chipset cụ thể được sử dụng trong thiết bị.
- CPU: Tùy chọn mặc định, với hiệu suất hợp lý trên hầu hết các thiết bị.
- GPU: Sử dụng thiết bị GPU để suy luận nhanh hơn. Nó có thể cung cấp một hiệu suất tăng đáng kể trên các thiết bị có GPU mạnh mẽ.
- Hexagon: Tận dụng DSP Hexagon của Qualcomm để xử lý nhanh hơn và hiệu quả hơn. Tùy chọn này khả dụng trên các thiết bị có bộ xử lý Qualcomm Snapdragon.
- NNAPI : Các Android Neural Networks API (NNAPI) đóng vai trò là lớp trừu tượng để chạy các mô hình ML trên Android thiết bị. NNAPI có thể sử dụng nhiều bộ tăng tốc phần cứng khác nhau, chẳng hạn như CPU , GPU và chip AI chuyên dụng (ví dụ: Google Cạnh của 's TPU hoặc Pixel Neural Core).
Dưới đây là bảng hiển thị các nhà cung cấp chính, dòng sản phẩm, thiết bị phổ biến và đại diện được hỗ trợ của họ:
Vendor | Dòng sản phẩm | Thiết bị phổ biến | Các đại biểu được hỗ trợ |
---|---|---|---|
Qualcomm | Snapdragon (ví dụ: 800 series) | Samsung Galaxy S21, OnePlus 9, Google Điểm ảnh 6 | CPU, GPU, Lục giác, NNAPI |
Samsung | Exynos (ví dụ: Exynos 2100) | Samsung Galaxy S21 (Phiên bản toàn cầu) | CPU, GPU, NNAPI |
MediaTek | Dimensity (ví dụ: Dimensity 1200) | Realme GT, Xiaomi Redmi Note | CPU, GPU, NNAPI |
HiSilicon | Kirin (ví dụ: Kirin 990) | Huawei P40 Pro, Huawei Mate 30 Pro | CPU, GPU, NNAPI |
NVIDIA | Tegra (ví dụ: Tegra X1) | NVIDIA Shield TV, Nintendo Switch | CPU, GPU, NNAPI |
Xin lưu ý rằng danh sách các thiết bị được đề cập không đầy đủ và có thể thay đổi tùy thuộc vào chipset và kiểu thiết bị cụ thể. Luôn kiểm tra các mô hình của bạn trên các thiết bị mục tiêu của bạn để đảm bảo khả năng tương thích và hiệu suất tối ưu.
Hãy nhớ rằng việc lựa chọn đại diện có thể ảnh hưởng đến hiệu suất và khả năng tương thích của mô hình. Ví dụ: một số kiểu máy có thể không hoạt động với một số đại diện nhất định hoặc đại diện có thể không sẵn dùng trên một thiết bị cụ thể. Do đó, điều cần thiết là phải kiểm tra mô hình của bạn và đại diện được chọn trên các thiết bị mục tiêu của bạn để có kết quả tốt nhất.
Bắt đầu với Ultralytics Android App
Để bắt đầu với Ultralytics Android Ứng dụng, hãy làm theo các bước sau:
Tải xuống Ultralytics Ứng dụng từ Google Cửa hàng Play.
Khởi chạy ứng dụng trên Android thiết bị và đăng nhập bằng Ultralytics tài khoản. Nếu bạn chưa có tài khoản, hãy tạo một tài khoản tại đây.
Sau khi đăng nhập, bạn sẽ thấy danh sách các khóa đào tạo của mình YOLO Mô hình. Chọn một mô hình để sử dụng để phát hiện đối tượng.
Cấp cho ứng dụng quyền truy cập vào camera của thiết bị.
Hướng camera của thiết bị vào các đối tượng bạn muốn phát hiện. Ứng dụng sẽ hiển thị các hộp giới hạn và nhãn lớp trong thời gian thực khi nó phát hiện các đối tượng.
Khám phá cài đặt của ứng dụng để điều chỉnh ngưỡng phát hiện, bật hoặc tắt các lớp đối tượng cụ thể, v.v.
Với Ultralytics Android Ứng dụng, giờ đây bạn có sức mạnh phát hiện đối tượng theo thời gian thực bằng cách sử dụng YOLO mô hình ngay trong tầm tay bạn. Tận hưởng việc khám phá các tính năng của ứng dụng và tối ưu hóa cài đặt của ứng dụng cho phù hợp với các trường hợp sử dụng cụ thể của bạn.