将 Ultralytics YOLO11 模型导出为 NCNN 模型格式

阿比拉米-维纳

5 分钟阅读

2025 年 6 月 18 日

将 Ultralytics YOLO11 模型导出为 NCNN 模型格式,以便在功率和计算资源有限的边缘设备上运行高效、低延迟的人工智能推断。

人工智能解决方案正变得越来越普遍,甚至在灾难管理、废物管理和消防等高风险领域也是如此。随着采用率的不断提高,人工智能模型的部署环境也越来越多样化--不仅在服务器或云端,还直接部署在现场操作的设备上。

例如,由小型处理器驱动的无人机和带有边缘组件的设备可以在灾区发挥关键作用。这些设备配备热像仪,可以在现场收集和分析数据,找到被困在废墟下的人员。计算机视觉是人工智能的一个分支,可以解读图像和视频中的视觉信息。

然而,在边缘设备上部署视觉人工智能模型并不像看起来那么简单。人工智能模型需要进行优化,以便在计算能力和内存有限的硬件上高效运行。这就是为什么像 NCNN 这样的人工智能框架至关重要的原因。它们有助于转换和优化模型,以便在低功耗设备上实现实时性能,同时又不影响准确性。

特别是,Ultralytics YOLO11Ultralytics YOLO模型可以使用Ultralytics支持的 NCNN 集成,轻松导出为 NCNN 模型格式。将 YOLO11 转换为 NCNN 模型格式后,模型运行速度更快,占用内存更少,并且可以在不同设备上流畅运行,而不会降低精度。

在本文中,我们将探讨 Ultralytics 支持的NCNN 集成,并介绍如何将 YOLO11 模型导出为 NCNN 模型格式。让我们开始吧!

NCNN 概述:轻量级神经网络框架

NCNN 是腾讯开发的开源神经网络推理框架。它专为移动和边缘环境设计,以最小的占用空间实现高性能推理。因此,它非常适合部署在资源受限的设备上,如智能手机、无人机和物联网(IoT)设备。

NCNN 框架因其高效性、可移植性和针对移动 CPU(中央处理器)的优化而在人工智能和深度学习领域大受欢迎。它使开发人员能够在内存和处理能力有限的经济型设备上运行神经网络模型。NCNN 设计简单灵活,支持多种计算机视觉模型,可在多个平台上运行,包括 Android、Linux、iOS 和 macOS。

图 1.NCNN 格式的模型可在许多平台上部署。

NCNN 性能优化的主要特点

以下是使 NCNN 成为具有影响力和广泛应用的神经网络推理框架的一些主要特点:

  • 轻量级、独立于硬件的运行时: NCNN 框架经过优化,可在标准 CPU 上运行模型,无需 GPU(图形处理单元)或 NPU(神经处理单元)等专用硬件。
  • 模型量化: 对于内存和速度要求较高的应用,NCNN 支持量化方法,可缩小模型大小,缩短推理时间。它有助于在移动和嵌入式设备上顺利运行人工智能模型。
  • 开源和可访问性: 作为一个开源框架,NCNN 可供任何人免费使用、修改和改进。这鼓励了创新,并在各种用例中得到广泛采用。
  • 活跃的开发和社区:NCNN 由腾讯和不断壮大的开发者社区在 GitHub 上积极维护,并定期更新和改进模型兼容性。

将 YOLO11 输出为 NCNN 模型格式:快速指南

既然我们已经讨论了什么是 NCNN,那就让我们仔细看看如何将 YOLO11 模型导出为 NCNN 格式。

步骤 1:安装 Ultralytics Python 软件包

在导出模型之前,第一步是使用软件包安装程序 pip 安装Ultralytics Python软件包。在终端或命令提示符下运行 "pip install ultralytics "即可完成安装。如果使用的是 Jupyter Notebook 或 Google Colab,请在命令前添加感叹号,如下所示:"!pip install ultralytics"。

Ultralytics 软件包为各种计算机视觉任务提供了训练、测试、微调和导出视觉人工智能模型的工具。如果在安装过程中或导出模型时遇到任何问题,Ultralytics 官方文档和常见问题指南是排除故障的重要资源。

步骤 2:导出 Ultralytics YOLO11

安装 Ultralytics 软件包后,您就可以加载 YOLO11 模型并将其导出为 NCNN 格式。下面的示例使用了一个预训练模型("yolo11n.pt"),并将其导出为 NCNN 格式,将输出保存在名为"/yolo11n_ncn_model "的文件夹中。 

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="ncnn")  

导出的 YOLO11 模型可以部署到各种轻量级设备上,如智能手机、嵌入式系统或物联网平台。部署过程也非常简化。 

例如,请看下面的代码片段,它展示了如何加载导出模型并运行推理。推理是指使用训练有素的模型对未见过的新数据进行预测的过程。在这个示例中,模型是在一张从公开 URL 获取的男子骑自行车的图片上进行测试的。

ncnn_model = YOLO("./yolo11n_ncnn_model")

results = ncnn_model("https://images.pexels.com/photos/19431209/pexels-photo-19431209/free-photo-of-a-man-riding-a-bike-on-a-road.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)

运行代码后,您会在 "runs/detect/predict "文件夹中找到输出图像。

图 2.使用以 NCNN 格式导出的 YOLO11 模型检测物体。图片由作者提供。

为何选择使用 NCNN 进行实时检测

在探索 Ultralytics 支持的各种集成时,你可能会注意到有多种导出选项。那么,什么时候应该选择 NCNN 格式呢?

当您需要在资源有限的设备上部署 YOLO11 模型时,NCNN 导出格式是一个可靠的选择。它尤其适用于直接在设备上运行的实时应用程序,如边缘设备,而无需连接到云。这意味着模型可以在现场处理物体检测等任务。

以下是 NCNN 非常适合的一些常见情况:

  • 移动部署: NCNN 格式针对 Android 和 iOS 进行了优化,因此可以轻松地将模型集成到移动应用程序中,从而以最小的延迟在设备上进行快速推理。
  • 嵌入式系统和物联网设备:如果要在 Raspberry Pi 或 NVIDIA Jetson 等设备上部署,导出到 NCNN 可帮助提高性能和响应速度。
  • 桌面和服务器部署:虽然 NCNN 非常适合低功耗设备,但它也支持 Linux、Windows 和 macOS 等桌面和服务器环境。这为开发人员提供了灵活的部署选择。
图 3.使用 NCNN 部署 YOLO11 模型的选项。图片由作者提供。

利用 NCNN 部署 YOLO11 模型的用例

接下来,让我们深入了解一些实际用例,在这些用例中,将 YOLO11 模型导出到 NCNN 可以发挥真正的作用。

用于消防的视觉人工智能头盔

配备摄像头和嵌入式微型计算机的安全头盔可用于建筑和消防等领域,以提高安全性和意识。实时视觉人工智能模型(如 YOLO11)可在这些设备上运行,以检测各种类型的物体和设备。例如,这种头盔可以帮助消防员在能见度低的条件下探测到人员、障碍物或危险。

然而,在可穿戴设备上直接运行全尺寸模型可能会导致性能缓慢和电池电量迅速耗尽。在这种情况下,使用 NCNN 集成是一个明智的选择。它可以实现低延迟、高能效的推理。 

垃圾分类和智能垃圾箱

同样,智能垃圾箱也可以集成摄像头和紧凑型边缘人工智能处理器,以便在丢弃材料时对其进行识别和分类。像 YOLO11 这样的视觉人工智能模型可以进行定制训练,以检测纸张、塑料、橡胶等不同类型的废料。

一旦识别出垃圾,就可以根据其可再利用性自动将其分门别类。通过使用边缘人工智能和以 NCNN 格式导出的 YOLO11 模型,这些垃圾箱可以在本地处理数据,而无需互联网连接。这样,它们就能自主运行,并以最小的延迟做出实时分类决定。

图 4.使用 YOLO11 检测塑料废料。

利用无人机和计算机视觉监控牛群

有时,偏远地区的农业区缺乏稳定的互联网连接,甚至没有稳定的电力供应,这限制了他们在线运行人工智能应用的能力。在这种情况下,可以使用边缘设备和无人机来处理各种任务。 

监控牛、羊和家禽等牲畜就是一个很好的例子。这可以通过 YOLO11 等视觉人工智能模型来实现,这些模型可用于跟踪动物的移动,检测受伤、生病或异常行为的迹象,并在动物失踪时向农场主发出警报。NCNN 集成还可以直接在边缘设备上运行和处理这些数据,非常适合偏远或离网地区农场的图像和视频分析。

图 5.使用 YOLO11 监控牲畜的情况。

主要收获

使用 Ultralytics 支持的 NCNN 集成导出 YOLO11 模型是将 Vision AI 引入低功耗环境的简单方法。无论是灾区的无人机、智能垃圾分类箱,还是远程农场的牲畜监控,YOLO 和 NCNN 都能实现快速、高效和便携的实时人工智能推断。这种方法有助于使人工智能系统在最重要的时候更加易用和可靠。

想了解有关人工智能的更多信息?探索我们的GitHub 存储库,与我们的社区建立联系,了解我们的许可选项,启动您的计算机视觉项目。在我们的解决方案页面,了解零售业的人工智能医疗保健领域的计算机视觉等创新如何塑造未来。

让我们共同打造人工智能的未来

开始您的未来机器学习之旅

免费开始
链接复制到剪贴板