Triển khai liền mạch Ultralytics YOLO11 bằng tích hợp MNN
Tìm hiểu cách xuất và triển khai các model Ultralytics YOLO11 với tích hợp MNN để suy luận nhanh trên các nền tảng di động, nhúng và công suất thấp.

Ngày nay, các cải tiến về AI đã mở rộng ra ngoài môi trường máy chủ từ xa. Các giải pháp AI đang được tích hợp vào các thiết bị biên (edge device) như cảm biến và điện thoại thông minh. Nhờ sự chuyển dịch công nghệ này, dữ liệu giờ đây có thể được xử lý trực tiếp tại nơi khởi tạo, cho phép phản hồi nhanh hơn, cải thiện quyền riêng tư và giảm sự phụ thuộc vào kết nối đám mây liên tục.
Kết quả là edge AI đang thu hút sự chú ý trong nhiều ngành công nghiệp. Thị trường phần mềm edge AI dự kiến sẽ đạt 8,88 tỷ USD vào năm 2031 khi ngày càng nhiều hệ thống chuyển hướng sang quy trình xử lý nhanh hơn và cục bộ hơn.
Cụ thể, computer vision, một nhánh của AI tập trung vào việc thấu hiểu hình ảnh và video, đang được áp dụng nhanh chóng tại biên. Từ việc đếm các sản phẩm thực phẩm khi đóng gói cho đến việc hỗ trợ phương tiện giao thông phát hiện người đi bộ, computer vision hỗ trợ vô số ứng dụng thực tế trên các lĩnh vực khác nhau.
Điều này có thể thực hiện được thông qua các model computer vision. Ví dụ, Ultralytics YOLO11 là một model hỗ trợ nhiều tác vụ vision AI như object detection, instance segmentation, object tracking và pose estimation. Nó được thiết kế để hoạt động nhanh, hiệu quả và vận hành tốt trên các thiết bị có tài nguyên phần cứng hạn chế.

Hình 1. Phát hiện và theo dõi thực phẩm đang được đóng gói bằng YOLO11 (Nguồn).
Ngoài việc phù hợp cho triển khai tại biên, thông qua nhiều integrations được hỗ trợ bởi Ultralytics, YOLO11 có thể được xuất sang nhiều định dạng phù hợp với các môi trường phần cứng khác nhau.
Một trong những tùy chọn hiệu quả nhất là MNN (Mobile Neural Network), một công cụ inference engine nhẹ được thiết kế cho các thiết bị có tài nguyên thấp. Việc xuất YOLO11 sang MNN cho phép nó chạy trực tiếp trên điện thoại di động, hệ thống nhúng và các nền tảng biên khác, nơi việc xử lý nhanh trên thiết bị là rất quan trọng.
Trong bài viết này, chúng ta sẽ khám phá cách thức hoạt động của MNN integration, nêu bật các trường hợp sử dụng phổ biến và hướng dẫn cách bắt đầu thực hiện inference bằng một model YOLO11 đã được xuất. Hãy bắt đầu ngay!
Link to this sectionTổng quan về MNN: Một framework deep learning#
Việc chạy các computer vision models trên các thiết bị nhỏ hơn như điện thoại di động, cảm biến công nghiệp và hệ thống cầm tay không phải lúc nào cũng đơn giản. Các thiết bị này thường có bộ nhớ hạn chế, bộ xử lý chậm hơn và giới hạn điện năng nghiêm ngặt.
Mobile Neural Network, hay MNN, là một inference engine nhẹ và có hiệu suất cao được Alibaba phát triển để giúp các model AI chạy hiệu quả trên phần cứng có tài nguyên thấp trong khi vẫn duy trì hiệu suất thời gian thực. MNN hỗ trợ nhiều nền tảng, bao gồm Android, iOS và Linux, đồng thời hoạt động trên nhiều loại phần cứng như CPU và GPU.

Hình 2. Cái nhìn tổng quan về framework MNN (Nguồn).
Tích hợp MNN được hỗ trợ bởi Ultralytics giúp việc xuất các model YOLO11 sang định dạng MNN trở nên dễ dàng. Nói một cách đơn giản, điều này có nghĩa là các model có thể được chuyển đổi từ định dạng YOLO sang MNN.
Sau khi chuyển đổi, chúng có thể được triển khai trên các thiết bị hỗ trợ framework MNN để thực hiện inference hiệu quả ngay trên thiết bị. Một lợi ích chính của việc sử dụng định dạng MNN là nó đơn giản hóa việc triển khai YOLO11 trong các tình huống mà kích thước, tốc độ và hiệu quả tài nguyên là rất quan trọng.
Link to this sectionCác tính năng chính của MNN inference backend#
Trước khi đi sâu vào cách sử dụng MNN integration, hãy cùng xem xét lý do tại sao framework MNN là một lựa chọn tuyệt vời để chạy các model AI trên thiết bị thực tế. Nó được xây dựng để xử lý các ràng buộc đặc thù của môi trường biên trong khi vẫn mang lại hiệu suất nhanh và đáng tin cậy.
Thú vị là, MNN được Alibaba sử dụng nội bộ trong hơn 30 ứng dụng, bao gồm Taobao, Tmall, Youku, DingTalk và Xianyu, trong nhiều tình huống khác nhau như video trực tiếp, nội dung dạng ngắn, tìm kiếm hình ảnh và kiểm tra bảo mật trên thiết bị. Nó hỗ trợ triển khai quy mô lớn và thực hiện hàng triệu lượt inference mỗi ngày trong môi trường production.
Dưới đây là một số tính năng chính của framework MNN:
- Backend auto-selection: MNN có thể tự động chọn backend thực thi phù hợp nhất, chẳng hạn như CPU hoặc GPU, dựa trên phần cứng mà nó đang chạy.
- Multi-threaded execution: Nó hỗ trợ đa luồng, cho phép tận dụng tối đa bộ xử lý đa nhân để thực hiện inference nhanh hơn.
- Hỗ trợ model quantization: Nó cho phép bạn giảm đáng kể kích thước model bằng cách sử dụng lượng tử hóa FP16 hoặc INT8, giúp cải thiện tốc độ inference trong khi sử dụng ít bộ nhớ hơn.
- Nhẹ và nhanh: MNN có dung lượng rất nhỏ, với thư viện cốt lõi khoảng 400 KB trên Android và khoảng 5 MB trên iOS, điều này làm cho nó trở nên lý tưởng cho các thiết bị di động và nhúng.
Link to this sectionHiểu cách thức hoạt động của MNN integration#
Tiếp theo, hãy cùng tìm hiểu cách xuất các model YOLO11 sang định dạng MNN.
Bước đầu tiên là cài đặt Ultralytics Python package, cung cấp mọi thứ cần thiết để xuất các model YOLO11 sang định dạng MNN. Bạn có thể thực hiện việc này bằng cách chạy "pip install ultralytics" trên terminal hoặc sử dụng command prompt. Nếu bạn đang sử dụng Jupyter Notebook hoặc Google Colab, hãy thêm dấu chấm than trước lệnh này.
Nếu bạn gặp bất kỳ vấn đề nào trong quá trình cài đặt, hãy tham khảo Common Issues guide để biết các mẹo khắc phục sự cố.
Sau khi môi trường đã được thiết lập, bạn có thể load một model YOLO11 đã được huấn luyện sẵn như "yolo11n.pt" và xuất nó sang định dạng MNN như được hiển thị trong đoạn mã dưới đây. Nếu bạn đã huấn luyện model YOLO11 tùy chỉnh của riêng mình, bạn có thể xuất nó bằng cách thay thế tên tệp bằng đường dẫn đến model của bạn.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="mnn")Sau khi chuyển đổi model sang MNN, bạn có thể sử dụng nó trên các nền tảng di động và nhúng khác nhau tùy theo nhu cầu ứng dụng của bạn.
Ví dụ, giả sử bạn muốn thử nghiệm model đã xuất trên video về giao thông. Trong trường hợp đó, bạn có thể load model YOLO11 ở định dạng MNN để phát hiện các đối tượng như phương tiện, người đi bộ và biển báo giao thông trực tiếp trên thiết bị, như ví dụ dưới đây.
mnn_model = YOLO("yolo11n.mnn")
results = mnn_model("https://videos.pexels.com/video-files/27783817/12223745_1920_1080_24fps.mp4", save=True)Khi inference hoàn tất, video đầu ra với các đối tượng đã được phát hiện sẽ được tự động lưu trong thư mục 'runs/detect/predict'. Ngoài ra, nếu bạn muốn chạy inference trực tiếp bằng gói MNN Python, bạn có thể xem Ultralytics documentation chính thức để biết thêm chi tiết và ví dụ.

Hình 3. Phân tích giao thông sử dụng model YOLO11 đã xuất sang định dạng MNN. Hình ảnh bởi tác giả.
Link to this sectionCác trường hợp sử dụng triển khai model edge AI được kích hoạt bởi YOLO11 và MNN#
Triển khai YOLO11 với MNN cho phép thực hiện các tác vụ computer vision nhanh chóng, hiệu quả như object detection trong các môi trường mà việc xử lý dựa trên đám mây không thực tế hoặc không khả thi. Hãy xem cách tích hợp này có thể đặc biệt hữu ích trong các tình huống thực tế.
Link to this sectionEdge AI trên di động để nhận diện dịch bệnh trên thực vật#
Các ứng dụng nhận diện dịch bệnh trên thực vật sử dụng image classification đang ngày càng phổ biến đối với những người làm vườn, nhà nghiên cứu và người yêu thiên nhiên. Chỉ với một bức ảnh, người dùng có thể nhanh chóng nhận diện các dấu hiệu sớm của dịch bệnh, chẳng hạn như đốm lá hoặc đổi màu. Vì các ứng dụng này thường được sử dụng ở ngoài trời nơi internet có thể bị hạn chế hoặc không khả dụng, việc dựa vào xử lý đám mây có thể không đáng tin cậy.
Sau khi huấn luyện, model YOLO11 có thể được xuất sang định dạng MNN và chạy trực tiếp trên thiết bị di động. Sau đó, model có thể phân loại loài thực vật và phát hiện các triệu chứng dịch bệnh có thể nhìn thấy tại chỗ mà không cần gửi bất kỳ dữ liệu nào đến máy chủ.

Hình 4. Ví dụ về việc sử dụng YOLO11 để phát hiện các dấu hiệu của bệnh gỉ sắt (một loại bệnh trên thực vật) trên lá (Nguồn).
Link to this sectionThực hiện inference hiệu quả trên thiết bị trong sản xuất#
Theo dõi gói hàng chính xác là yếu tố thiết yếu trên các dây chuyền sản xuất bận rộn trong các cơ sở manufacturing. YOLO11 có thể được sử dụng để theo dõi và đếm từng mặt hàng khi chúng di chuyển qua các trạm kiểm soát chính, cập nhật số lượng theo thời gian thực và gắn cờ mọi sự sai lệch. Điều này giúp giảm thiểu các lô hàng bị bỏ sót hoặc không được tính toán, đồng thời hỗ trợ các hoạt động trôi chảy và đáng tin cậy hơn.

Hình 5. Theo dõi và đếm gói hàng sử dụng YOLO11 (Nguồn).
Tích hợp MNN có thể tạo ra tác động đặc biệt trong bối cảnh này. Sau khi model YOLO11 được xuất sang định dạng MNN, nó có thể chạy trực tiếp trên các thiết bị nhỏ gọn, tiêu thụ ít điện năng được lắp đặt dọc theo băng tải.
Vì toàn bộ quá trình xử lý diễn ra cục bộ, hệ thống có thể cung cấp phản hồi tức thì và không cần kết nối internet. Điều này đảm bảo hiệu suất nhanh và đáng tin cậy trên sàn nhà máy, giúp quá trình sản xuất diễn ra hiệu quả trong khi vẫn duy trì độ chính xác và khả năng kiểm soát cao.
Link to this sectionƯu điểm của việc xuất YOLO11 sang định dạng model MNN#
Dưới đây là một số lợi ích chính của MNN integration do Ultralytics cung cấp:
- Thời gian phản hồi nhanh hơn: Vì inference chạy trên thiết bị, các dự đoán diễn ra trong thời gian thực với độ trễ tối thiểu.
- Cải thiện data privacy: Dữ liệu được lưu trữ trên thiết bị, giảm nhu cầu gửi hình ảnh hoặc video nhạy cảm lên đám mây.
- Mã nguồn mở và được duy trì tích cực: Được hỗ trợ bởi Alibaba và một cộng đồng năng động, MNN đáng tin cậy và thường xuyên được cập nhật các cải tiến về hiệu suất.
Link to this sectionCác yếu tố cần cân nhắc khi sử dụng framework MNN#
Trước khi chọn MNN làm framework triển khai, điều quan trọng là phải đánh giá mức độ phù hợp với các yêu cầu, mục tiêu triển khai và hạn chế kỹ thuật của dự án. Dưới đây là một số yếu tố chính cần cân nhắc:
- Khả năng tương thích liên tục: Các bản cập nhật framework hoặc thay đổi đối với nền tảng mục tiêu của bạn có thể yêu cầu kiểm tra lại hoặc điều chỉnh để đảm bảo mọi thứ vẫn hoạt động trơn tru.
- Ít công cụ gỡ lỗi hơn: So với các framework lớn hơn, MNN có các công cụ hạn chế hơn để gỡ lỗi và kiểm tra hành vi của model, điều này có thể làm cho việc khắc phục sự cố trở nên khó khăn hơn.
- Hiệu suất phụ thuộc vào phần cứng: Tốc độ và hiệu quả của model sẽ khác nhau tùy thuộc vào thiết bị. Hãy kiểm tra phần cứng mục tiêu để đảm bảo nó đáp ứng được các mục tiêu hiệu suất của bạn.
Link to this sectionCác điểm chính cần lưu ý#
Sự hỗ trợ của Ultralytics đối với MNN integration giúp việc xuất các model YOLO11 để sử dụng trên thiết bị di động và nhúng trở nên dễ dàng. Đây là một tùy chọn thiết thực cho các ứng dụng yêu cầu phát hiện nhanh, đáng tin cậy mà không phụ thuộc vào quyền truy cập đám mây hoặc kết nối liên tục.
Thiết lập này giúp hợp lý hóa việc triển khai trong khi vẫn duy trì hiệu suất và giữ mức yêu cầu tài nguyên ở mức thấp. Cho dù bạn đang xây dựng các hệ thống nhà thông minh, công cụ thực địa hay thiết bị công nghiệp nhỏ gọn, việc xuất YOLO11 sang MNN cung cấp một cách linh hoạt và hiệu quả để chạy các tác vụ computer vision trực tiếp trên các thiết bị biên.
Hãy tham gia community đang phát triển của chúng tôi! Khám phá GitHub repository của chúng tôi để đi sâu hơn vào AI. Bạn đã sẵn sàng bắt đầu các dự án computer vision của mình chưa? Hãy xem các licensing options của chúng tôi. Tìm hiểu thêm về AI in healthcare và computer vision in retail trên các trang giải pháp của chúng tôi!






