将Ultralytics YOLO11 模型导出为NCNN 模型格式,以便在功率和计算资源有限的边缘设备上运行高效、低延迟的人工智能推断。
将Ultralytics YOLO11 模型导出为NCNN 模型格式,以便在功率和计算资源有限的边缘设备上运行高效、低延迟的人工智能推断。
人工智能解决方案正变得越来越普遍,即使在灾害管理、废物管理和消防等高风险领域也是如此。随着采用率持续增长,人工智能模型正被部署在更多样化的环境中——不仅在服务器或云端,还直接部署在现场运行的设备上。
例如,由小型处理器驱动的带有边缘组件的无人机和设备可以在灾区发挥关键作用。这些设备配备热像仪,可以收集和分析现场数据,以定位被困在废墟下的人员。这可以通过计算机视觉来实现,计算机视觉是人工智能的一个分支,可以解释来自图像和视频的视觉信息。
然而,在边缘设备上部署视觉人工智能模型并不像看起来那么简单。人工智能模型需要进行优化,以便在计算能力和内存有限的硬件上高效运行。这就是为什么像NCNN 这样的人工智能框架至关重要的原因。它们有助于转换和优化模型,以便在低功耗设备上实现实时性能,同时又不影响准确性。
尤其是Ultralytics YOLO 模型,如 Ultralytics YOLO11可以使用Ultralytics 支持的NCNN 集成,轻松导出为NCNN 模型格式。将YOLO11 转换为NCNN 模型格式后,模型运行速度更快,占用内存更少,并且可以在不同设备上流畅运行,而不会降低精度。
在本文中,我们将探讨Ultralytics 支持的NCNN 集成,并介绍如何将YOLO11 模型导出为NCNN 模型格式。让我们开始吧!
NCNN 是腾讯开发的开源神经网络推理框架。它专为移动和边缘环境设计,以最小的占用空间实现高性能推理。因此,它非常适合部署在资源受限的设备上,如智能手机、无人机和物联网(IoT)设备。
NCNN 框架因其高效性、可移植性和针对移动 CPU(中央处理器)的优化而在人工智能和深度学习领域大受欢迎。它使开发人员能够在内存和处理能力有限的经济型设备上运行神经网络模型。NCNN 设计简单灵活,支持多种计算机视觉模型,可在多个平台上运行,包括Android、Linux、iOS 和 macOS。

以下是使NCNN 成为具有影响力和广泛应用的神经网络推理框架的一些主要特点:
既然我们已经讨论了什么是NCNN ,那就让我们仔细看看如何将YOLO11 模型导出为NCNN 格式。
在导出模型之前,第一步是使用软件包安装程序 pip 安装Ultralytics Python 软件包。在终端或命令提示符下运行 "pip installultralytics"即可完成安装。如果你在 Jupyter Notebook 或Google Colab 中工作,请在命令前添加感叹号,如下所示:"!pip installultralytics"。
Ultralytics 软件包为各种计算机视觉任务提供了训练、测试、微调和导出视觉人工智能模型的工具。如果在安装过程中或导出模型时遇到任何问题,Ultralytics 官方文档和常见问题指南是排除故障的重要资源。
安装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 "文件夹中找到输出图像。

在探索Ultralytics 支持的各种集成时,你可能会注意到有多种导出选项。那么,什么时候应该选择NCNN 格式呢?
当您需要在资源有限的设备上部署YOLO11 模型时,NCNN 导出格式是一个可靠的选择。它尤其适用于直接在设备上运行的实时应用程序,如边缘设备,而无需连接到云。这意味着模型可以在现场处理物体检测等任务。
以下是NCNN 非常适合的一些常见情况:

接下来,让我们深入了解一些实际用例,在这些用例中,将YOLO11 模型导出到NCNN 可以发挥真正的作用。
配备摄像头和嵌入式微型计算机的安全头盔可用于建筑和消防等领域,以提高安全性和意识。实时视觉人工智能模型(如YOLO11)可在这些设备上运行,以detect 各种类型的物体和设备。例如,这种头盔可以帮助消防员在能见度低的条件下detect 人员、障碍物或危险。
然而,在可穿戴设备上直接运行全尺寸模型可能会导致性能缓慢和电池电量迅速耗尽。在这种情况下,使用NCNN 集成是一个明智的选择。它可以实现低延迟、高能效的推理。
同样,智能垃圾箱也可以集成摄像头和紧凑型边缘人工智能处理器,以便在丢弃材料时对其进行识别和分类。像YOLO11 这样的视觉人工智能模型可以进行定制训练,以detect 纸张、塑料、橡胶等不同类型的废料。
垃圾一旦被识别出来,就能根据其可再利用性自动分门别类。通过使用边缘人工智能和以NCNN 格式导出的YOLO11 模型,这些垃圾箱可以在本地处理数据,而无需互联网连接。这样,它们就能自主运行,并以最小的延迟做出实时分类决定。

有时,偏远地区的农业区域缺乏稳定的互联网连接,甚至没有持续的电力供应,这限制了它们在线运行 AI 应用程序的能力。在这种情况下,可以使用边缘设备和无人机来处理各种任务。
监控牛、羊和家禽等牲畜就是一个很好的例子。这可以通过YOLO11 等视觉人工智能模型来实现,这些模型可用于track 动物的移动,detect 受伤、生病或异常行为的迹象,并在动物失踪时向农场主发出警报。NCNN 集成还可以直接在边缘设备上运行和处理这些数据,非常适合偏远或离网地区农场的图像和视频分析。

使用Ultralytics 支持的NCNN 集成导出YOLO11 模型是将 Vision AI 引入低功耗环境的简单方法。无论是灾区的无人机、智能垃圾分类箱,还是远程农场的牲畜监控,YOLO 和NCNN 都能实现快速、高效和便携的实时人工智能推断。这种方法有助于使人工智能系统在最重要的时候更加易用和可靠。
想了解更多关于人工智能的信息吗?请浏览我们的 GitHub 仓库,与 我们的社区 建立联系,并查看 我们的许可选项,以快速启动您的计算机视觉项目。在我们的解决方案页面上,了解 人工智能在零售业 和 计算机视觉在医疗保健领域 等创新技术如何塑造未来。