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

Làm thế nào để xuất khẩu sang NCNN từ YOLO11 để triển khai trơn tru

Triển khai các mô hình thị giác máy tính trên các thiết bị có sức mạnh tính toán hạn chế, chẳng hạn như hệ thống di động hoặc nhúng, có thể rất khó khăn. Bạn cần đảm bảo sử dụng định dạng được tối ưu hóa để có hiệu suất tối ưu. Điều này đảm bảo rằng ngay cả các thiết bị có sức mạnh xử lý hạn chế cũng có thể xử lý tốt các tác vụ thị giác máy tính nâng cao.

Xuất khẩu sang NCNN tính năng định dạng cho phép bạn tối ưu hóa các mô hình Ultralytics YOLO11 của mình cho các ứng dụng dựa trên thiết bị nhẹ. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cách chuyển đổi các mô hình của mình sang NCNN định dạng, giúp các mô hình của bạn hoạt động tốt hơn trên nhiều thiết bị di động và nhúng khác nhau.

Tại sao bạn nên xuất sang NCNN?

NCNN tổng quan

Khung NCNN do Tencent phát triển là một khung tính toán suy luận mạng nơ-ron hiệu suất cao được tối ưu hóa dành riêng cho các nền tảng di động, bao gồm điện thoại di động, thiết bị nhúng và thiết bị IoT. NCNN tương thích với nhiều nền tảng khác nhau, bao gồm Linux, Android , iOS và macOS.

NCNN được biết đến với tốc độ xử lý nhanh trên CPU di động và cho phép triển khai nhanh chóng các mô hình học sâu lên nền tảng di động. Điều này giúp xây dựng các ứng dụng thông minh dễ dàng hơn, đưa sức mạnh của AI vào tầm tay bạn.

Các tính năng chính của NCNN Mô hình

NCNN các mô hình cung cấp nhiều tính năng chính cho phép máy học trên thiết bị bằng cách giúp các nhà phát triển chạy mô hình của họ trên thiết bị di động, nhúng và biên:

  • Hiệu quả và hiệu suất cao : NCNN Các mô hình được tạo ra để hiệu quả và nhẹ, được tối ưu hóa để chạy trên các thiết bị di động và nhúng như Raspberry Pi với tài nguyên hạn chế. Chúng cũng có thể đạt hiệu suất cao với độ chính xác cao trên nhiều tác vụ dựa trên tầm nhìn máy tính.

  • Lượng tử hóa : NCNN các mô hình thường hỗ trợ lượng tử hóa, đây là một kỹ thuật làm giảm độ chính xác của trọng số và kích hoạt của mô hình. Điều này dẫn đến cải thiện hơn nữa về hiệu suất và giảm dấu chân bộ nhớ.

  • Khả năng tương thích: NCNN Các mô hình tương thích với các framework deep learning phổ biến như TensorFlow, CaffeONNX. Khả năng tương thích này cho phép các nhà phát triển sử dụng các mô hình và quy trình làm việc hiện có một cách dễ dàng.

  • Dễ sử dụng: NCNN Các mô hình được thiết kế để dễ dàng tích hợp vào các ứng dụng khác nhau, nhờ khả năng tương thích với các khung học tập sâu phổ biến. Ngoài ra NCNN Cung cấp các công cụ thân thiện với người dùng để chuyển đổi mô hình giữa các định dạng khác nhau, đảm bảo khả năng tương tác trơn tru trên toàn cảnh phát triển.

Tùy chọn triển khai với NCNN

Trước khi chúng ta xem xét mã để xuất các mô hình YOLO11 sang NCNN định dạng, chúng ta hãy hiểu làm thế nào NCNN các mô hình thường được sử dụng.

NCNN Các mô hình, được thiết kế cho hiệu quả và hiệu suất, tương thích với nhiều nền tảng triển khai khác nhau:

  • Triển khai di động: Tối ưu hóa cụ thể cho Android và iOS, cho phép tích hợp liền mạch vào các ứng dụng di động để suy luận hiệu quả trên thiết bị.

  • Hệ thống nhúng và thiết bị IoT: Nếu bạn thấy rằng chạy suy luận trên Raspberry Pi với Ultralytics Hướng dẫn không đủ nhanh, chuyển sang một NCNN Mô hình xuất khẩu có thể giúp tăng tốc mọi thứ. NCNN rất tốt cho các thiết bị như Raspberry Pi và NVIDIA Jetson, đặc biệt là trong những tình huống bạn cần xử lý nhanh ngay trên thiết bị.

  • Triển khai máy tính để bàn và máy chủ: Có khả năng được triển khai trong môi trường máy tính để bàn và máy chủ trên Linux, Windows và macOS, hỗ trợ phát triển, đào tạo và đánh giá với khả năng tính toán cao hơn.

Xuất khẩu sang NCNN : Chuyển đổi mô hình YOLO11 của bạn

Bạn có thể mở rộng khả năng tương thích của mô hình và tính linh hoạt triển khai bằng cách chuyển đổi các mô hình YOLO11 sang NCNN định dạng.

Cài đặt

Để cài đặt các gói cần thiết, hãy chạy:

Cài đặt

# Install the required package for YOLO11
pip install ultralytics

Để biết hướng dẫn chi tiết và các biện pháp thực hành tốt nhất liên quan đến quy trình cài đặt, hãy xem hướng dẫn Cài đặt Ultralytics của chúng tôi. Trong khi cài đặt các gói cần thiết cho YOLO11, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo hướng dẫn Các vấn đề thường gặp của chúng tôi để biết các giải pháp và mẹo.

Sử dụng

Trước khi tìm hiểu hướng dẫn sử dụng, điều quan trọng cần lưu ý là mặc dù tất cả các mẫu Ultralytics YOLO11 đều có thể xuất, nhưng bạn có thể đảm bảo rằng mẫu bạn chọn có hỗ trợ chức năng xuất tại đây .

Sử dụng

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to NCNN format
model.export(format="ncnn")  # creates '/yolo11n_ncnn_model'

# Load the exported NCNN model
ncnn_model = YOLO("./yolo11n_ncnn_model")

# Run inference
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to NCNN format
yolo export model=yolo11n.pt format=ncnn  # creates '/yolo11n_ncnn_model'

# Run inference with the exported model
yolo predict model='./yolo11n_ncnn_model' source='https://ultralytics.com/images/bus.jpg'

Để biết thêm chi tiết về các tùy chọn xuất được hỗ trợ, hãy truy cập Ultralytics trang tài liệu về các tùy chọn triển khai.

Triển khai YOLO11 đã xuất NCNN Mô hình

Sau khi xuất thành công Ultralytics Các mô hình YOLO11 NCNN định dạng, bây giờ bạn có thể triển khai chúng. Bước đầu tiên chính và được khuyến nghị để chạy NCNN mô hình là sử dụng YOLO ("./model_ncnn_model"), như đã nêu trong đoạn mã sử dụng trước đó. Tuy nhiên, để biết hướng dẫn chi tiết về việc triển khai NCNN các mô hình trong nhiều bối cảnh khác nhau, hãy xem các tài nguyên sau:

  • Android : Blog này giải thích cách sử dụng NCNN các mô hình để thực hiện các nhiệm vụ như phát hiện đối tượng thông qua Android ứng dụng.

  • macOS: Hiểu cách sử dụng NCNN mô hình để thực hiện các tác vụ thông qua macOS.

  • Linux: Khám phá trang này để tìm hiểu cách triển khai NCNN mô hình trên các thiết bị tài nguyên hạn chế như Raspberry Pi và các thiết bị tương tự khác.

  • Windows x64 sử dụng VS2017: Khám phá blog này để tìm hiểu cách triển khai NCNN Mô hình trên Windows x64 sử dụng Visual Studio Community 2017.

Tóm tắt

Trong hướng dẫn này, chúng tôi đã đề cập đến việc xuất khẩu Ultralytics Các mô hình YOLO11 đến NCNN định dạng. Bước chuyển đổi này rất quan trọng để cải thiện hiệu quả và tốc độ của các mô hình YOLO11, giúp chúng hiệu quả hơn và phù hợp hơn với môi trường điện toán có tài nguyên hạn chế.

Để được hướng dẫn chi tiết về cách sử dụng, vui lòng tham khảo chính thức NCNN tài liệu.

Ngoài ra, nếu bạn quan tâm đến việc khám phá các tùy chọn tích hợp khác cho Ultralytics YOLO11, hãy nhớ truy cập trang hướng dẫn tích hợp của chúng tôi để biết thêm thông tin chi tiết và hiểu biết sâu sắc.

FAQ

Làm thế nào để tôi xuất khẩu Ultralytics Các mô hình YOLO11 NCNN định dạng?

Để xuất khẩu của bạn Ultralytics Mô hình YOLO11 để NCNN định dạng, hãy làm theo các bước sau:

  • Python: Sử dụng export hàm từ YOLO lớp.

    from ultralytics import YOLO
    
    # Load the YOLO11 model
    model = YOLO("yolo11n.pt")
    
    # Export to NCNN format
    model.export(format="ncnn")  # creates '/yolo11n_ncnn_model'
    
  • CLI: Sử dụng yolo lệnh với export lý lẽ.

    yolo export model=yolo11n.pt format=ncnn  # creates '/yolo11n_ncnn_model'
    

Để biết các tùy chọn xuất chi tiết, hãy kiểm tra trang Xuất trong tài liệu.

Những lợi thế của việc xuất khẩu mô hình YOLO11 sang NCNN ?

Xuất khẩu của bạn Ultralytics Các mô hình YOLO11 NCNN mang lại nhiều lợi ích:

  • Hiệu quả: NCNN Các mô hình được tối ưu hóa cho các thiết bị di động và nhúng, đảm bảo hiệu suất cao ngay cả với tài nguyên tính toán hạn chế.
  • Định lượng hóa: NCNN Hỗ trợ các kỹ thuật như lượng tử hóa giúp cải thiện tốc độ mô hình và giảm mức sử dụng bộ nhớ.
  • Khả năng tương thích rộng: Bạn có thể triển khai NCNN mô hình trên nhiều nền tảng, bao gồm Android, iOS, Linux và macOS.

Để biết thêm chi tiết, hãy xem Xuất sang NCNN trong tài liệu.

Tại sao tôi nên sử dụng NCNN cho các ứng dụng AI di động của tôi?

NCNN, được phát triển bởi Tencent, được tối ưu hóa đặc biệt cho các nền tảng di động. Những lý do chính để sử dụng NCNN bao gồm:

  • Hiệu suất cao: Được thiết kế để xử lý hiệu quả và nhanh chóng trên CPU di động.
  • Đa nền tảng : Tương thích với các khuôn khổ phổ biến như TensorFlow và ONNX , giúp việc chuyển đổi và triển khai mô hình trên nhiều nền tảng khác nhau trở nên dễ dàng hơn.
  • Hỗ trợ cộng đồng: Hỗ trợ cộng đồng tích cực đảm bảo cải tiến và cập nhật liên tục.

Để hiểu thêm, hãy truy cập NCNN Tổng quan trong tài liệu.

Những nền tảng nào được hỗ trợ NCNN triển khai mô hình ?

NCNN rất linh hoạt và hỗ trợ nhiều nền tảng khác nhau:

  • Di động: Android, iOS.
  • Hệ thống nhúng và thiết bị IoT: Các thiết bị như Raspberry Pi và NVIDIA Máy bay phản lực.
  • Máy tính để bàn và Máy chủ: Linux, Windows và macOS.

Nếu các mô hình đang chạy trên Raspberry Pi không đủ nhanh, hãy chuyển đổi sang NCNN định dạng có thể tăng tốc mọi thứ như chi tiết trong Hướng dẫn Raspberry Pi của chúng tôi.

Tôi có thể triển khai như thế nào Ultralytics YOLO11 NCNN mô hình trên Android ?

Để triển khai các mô hình YOLO11 của bạn trên Android :

  1. Xây dựng cho Android: Theo NCNN Xây dựng cho Android hướng dẫn.
  2. Tích hợp với ứng dụng của bạn: Sử dụng NCNN Android SDK để tích hợp mô hình đã xuất vào ứng dụng của bạn để suy luận hiệu quả trên thiết bị.

Để biết hướng dẫn từng bước, hãy tham khảo hướng dẫn của chúng tôi về Triển khai Mô hình YOLO11 NCNN .

Để biết thêm hướng dẫn nâng cao và trường hợp sử dụng, hãy truy cập Ultralytics trang tài liệu.

📅 Được tạo cách đây 8 tháng ✏️ Đã cập nhật cách đây 1 tháng

Ý kiến