Ultralytics YOLO27:
集成

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

将 Ultralytics YOLO11 模型导出为 NCNN 模型格式,以便在电力和计算资源有限的边缘设备上运行高效、低延迟的 AI 推理。

ABAbirami Vina6 min read
将 Ultralytics YOLO11 模型导出为 NCNN 格式

AI 解决方案正变得越来越普遍,即使是在灾害管理、废物管理和消防等高风险领域也是如此。随着采用率持续增长,AI 模型正被部署到更加多样化的环境中——不仅是在服务器或云端,还直接运行在现场作业的设备上。

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

然而,在边缘设备上部署视觉 AI 模型并不像看起来那么简单。AI 模型需要经过优化,才能在计算能力和内存有限的硬件上高效运行。因此,NCNN 等 AI 框架至关重要。它们可以帮助转换和优化模型,使其在低功耗设备上实现实时性能,同时不牺牲准确率。

尤其是 Ultralytics YOLO11 等 Ultralytics YOLO 模型,可以借助 Ultralytics 支持的 NCNN 集成轻松导出为 NCNN 模型格式。将 YOLO11 转换为 NCNN 模型格式后,模型可以运行得更快、占用更少内存,并在不同设备之间流畅运行,同时不会损失准确率。

本文将介绍 Ultralytics 支持的 NCNN 集成,并带你了解如何将 YOLO11 模型导出为 NCNN 模型格式。现在开始吧!

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

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

NCNN 框架凭借高效性、可移植性以及针对移动端 CPU(中央处理器)的优化,在 AI 和深度学习社区中广受欢迎。它使开发者能够在内存和处理能力有限的经济型设备上运行神经网络模型。NCNN 的设计简单灵活,支持广泛的计算机视觉模型,并可在多个平台上运行,包括 Android、Linux、iOS 和 macOS。

NCNN 格式的模型可以部署到多个平台

图 1。NCNN 格式的模型可以部署到多个平台。

NCNN 性能优化的主要特性#

以下是 NCNN 成为高效且广泛使用的神经网络推理框架的一些主要特性:

  • 轻量级、与硬件无关的运行时: NCNN 框架经过优化,可以在标准 CPU 上运行模型,并且不需要 GPU(图形处理器)或 NPU(神经网络处理器)等专用硬件。
  • 模型量化:对于内存和速度至关重要的应用,NCNN 支持能够减小模型大小并缩短推理时间的量化方法。它有助于 AI 模型在移动设备和嵌入式设备上流畅运行。
  • 开源且易于使用: NCNN 作为开源框架,任何人都可以免费使用、修改和改进。这推动了创新,并促进了其在各种使用场景中的广泛采用。
  • 持续开发和活跃社区:腾讯和不断壮大的开发者社区在 GitHub 上持续维护 NCNN,并定期更新和改进模型兼容性。

将 Ultralytics YOLO11 导出为 NCNN 模型格式:快速指南#

现在我们已经介绍了 NCNN,接下来详细了解如何将 Ultralytics YOLO11 模型导出为 NCNN 格式。

第 1 步:安装 Ultralytics Python 软件包#

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

Ultralytics 软件包提供了用于训练、测试、微调和导出视觉 AI 模型的工具,支持多种计算机视觉任务。如果你在安装或导出模型时遇到问题,官方 Ultralytics 文档和常见问题指南都是很好的故障排查资源。

第 2 步:导出 Ultralytics YOLO11#

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

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.export(format="ncnn")

导出的 Ultralytics YOLO11 模型随后可以部署到智能手机、嵌入式系统或 IoT 平台等各种轻量级设备上。部署过程也非常简便。

例如,下面的代码片段展示了如何加载导出的模型并运行推理。推理是指使用训练好的模型对新的、未见过的数据进行预测的过程。在此示例中,模型将在一张男子骑自行车的图像上进行测试,该图像来自一个公开可用的 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" 文件夹中找到输出图像。

使用导出为 NCNN 格式的 Ultralytics YOLO11 模型进行目标检测

图 2。使用导出为 NCNN 格式的 Ultralytics YOLO11 模型进行目标检测。图片由作者提供。

为什么选择使用 NCNN 进行实时检测#

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

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

以下是一些适合使用 NCNN 的常见场景:

  • 移动端部署: NCNN 格式针对 Android 和 iOS 进行了优化,因此可以轻松将模型集成到移动应用中,在设备上以极低延迟快速运行推理。

  • 嵌入式系统和 IoT 设备: 如果你要在 Raspberry Pi 或 NVIDIA Jetson 等设备上进行部署,导出为 NCNN 可以帮助提升性能和响应速度。

  • 桌面端和服务器部署: NCNN 非常适合低功耗设备,同时也支持 Linux、Windows 和 macOS,可用于桌面端和服务器环境。这为开发者提供了灵活的部署选项。

使用 NCNN 部署 Ultralytics YOLO11 模型的选项

图 3。使用 NCNN 部署 Ultralytics YOLO11 模型的选项。图片由作者提供。

使用 NCNN 部署 Ultralytics YOLO11 模型的应用场景#

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

用于消防的视觉 AI 头盔#

配备摄像头和嵌入式微型计算机的安全头盔可用于建筑施工和消防等领域,以提升安全性和态势感知能力。Ultralytics YOLO11 等实时视觉 AI 模型可以在这些设备上运行,用于检测各种类型的物体和设备。例如,这类头盔可以帮助消防员在低能见度环境中检测人员、障碍物或危险因素。

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

废物分类和智能垃圾桶#

同样,智能垃圾桶也可以集成摄像头和紧凑型边缘 AI 处理器,在材料被丢弃时识别并分类。YOLO11 等视觉 AI 模型可以通过定制训练来检测纸张、塑料、橡胶等不同类型的废弃材料。

识别废物后,系统可以根据其可再利用性,将其自动分类到不同的隔间中。通过将边缘 AI 与导出为 NCNN 格式的 Ultralytics YOLO11 模型结合使用,这些垃圾桶可以在本地处理数据,无需互联网连接。因此,它们能够自主运行,以极低延迟做出实时分类决策。

使用 Ultralytics YOLO11 检测塑料废弃物

图 4。使用 YOLO11 检测塑料废弃物。

使用无人机和计算机视觉监测牛群#

有时,偏远地区的农业区域无法接入稳定的互联网,甚至无法获得持续的电力供应,这限制了它们在线运行 AI 应用的能力。在这种情况下,可以使用边缘设备和无人机来处理各种任务。

一个很好的例子是监测牲畜,例如牛、羊和家禽。这可以通过 YOLO11 等视觉 AI 模型实现,用于跟踪动物活动、检测受伤、生病或行为异常的迹象,并在动物走失时提醒农户。NCNN 集成还可以直接在边缘设备上运行并处理这些数据,非常适合在偏远或无电网地区的农场进行图像和视频分析。

使用 Ultralytics YOLO11 监测牲畜

图 5。了解如何使用 YOLO11 监测牲畜。

要点总结#

借助 Ultralytics 支持的 NCNN 集成导出 YOLO11 模型,是将视觉 AI 引入低功耗环境的一种简单方式。无论是灾区的无人机、智能废物分类垃圾桶,还是偏远农场的牲畜监测,YOLO 和 NCNN 都能实现快速、高效且可移植的实时 AI 推理。这种方法有助于让 AI 系统在最关键的时刻变得更加易用和可靠。

想进一步了解 AI?探索我们的 GitHub 代码仓库,加入我们的社区,并查看我们的许可选项,开启你的计算机视觉项目。前往我们的解决方案页面,了解零售业中的 AI医疗保健领域的计算机视觉等创新如何塑造未来。

Explore solutions

用于航拍影像的计算机视觉

用于航拍影像的计算机视觉

使用 Ultralytics YOLO 将无人机和航拍影像转化为针对农业、水产养殖、环境监测、自然保护及地理空间分析的实时洞察。
了解更多
航空航天中的计算机视觉

航空航天中的计算机视觉

借助 Ultralytics YOLO 模型将视觉 AI 引入空中监测。使用计算机视觉解决方案赋能无人机、航空航天工作流、环境保护与地理空间行业。
了解更多

使用 Ultralytics YOLO 模型保护每个站点。视觉 AI 赋能周界监控、威胁检测、车牌识别和工作场所安全。
了解更多
机器人计算机视觉

机器人计算机视觉

借助 Ultralytics YOLO 模型打造更智能的机器。机器人技术中的视觉 AI 可实现自主导航、感知、目标跟踪和实时控制。
了解更多
物流计算机视觉

物流计算机视觉

使用 Ultralytics YOLO 模型提升物流效率。视觉 AI 可实现包裹检测、分拣、车辆跟踪和仓库安全实时监控。
了解更多
零售计算机视觉

零售计算机视觉

使用 Ultralytics YOLO 模型重新构想零售。视觉 AI 为库存跟踪、货架监控、队列管理和更智能的客户洞察提供支持。
了解更多
医疗领域的计算机视觉

医疗领域的计算机视觉

使用 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可实现更快的医学影像处理、更智能的诊断和患者监护。
了解更多
制造业中的计算机视觉

制造业中的计算机视觉

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 可推动质量控制、缺陷检测、PPE 合规和装配线自动化。
了解更多
汽车行业中的计算机视觉

汽车行业中的计算机视觉

使用 Ultralytics YOLO 模型在汽车行业应用计算机视觉。视觉 AI 提升道路安全、驾驶辅助和车辆自动化水平,让道路更加智能。
了解更多
农业中的计算机视觉

农业中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 带入智能农业。为作物监测、牲畜追踪和精准农业提供支持,提升产量与智能化水平。
了解更多
用于航拍影像的计算机视觉

用于航拍影像的计算机视觉

使用 Ultralytics YOLO 将无人机和航拍影像转化为针对农业、水产养殖、环境监测、自然保护及地理空间分析的实时洞察。
了解更多
航空航天中的计算机视觉

航空航天中的计算机视觉

借助 Ultralytics YOLO 模型将视觉 AI 引入空中监测。使用计算机视觉解决方案赋能无人机、航空航天工作流、环境保护与地理空间行业。
了解更多

使用 Ultralytics YOLO 模型保护每个站点。视觉 AI 赋能周界监控、威胁检测、车牌识别和工作场所安全。
了解更多
机器人计算机视觉

机器人计算机视觉

借助 Ultralytics YOLO 模型打造更智能的机器。机器人技术中的视觉 AI 可实现自主导航、感知、目标跟踪和实时控制。
了解更多
物流计算机视觉

物流计算机视觉

使用 Ultralytics YOLO 模型提升物流效率。视觉 AI 可实现包裹检测、分拣、车辆跟踪和仓库安全实时监控。
了解更多
零售计算机视觉

零售计算机视觉

使用 Ultralytics YOLO 模型重新构想零售。视觉 AI 为库存跟踪、货架监控、队列管理和更智能的客户洞察提供支持。
了解更多
医疗领域的计算机视觉

医疗领域的计算机视觉

使用 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可实现更快的医学影像处理、更智能的诊断和患者监护。
了解更多
制造业中的计算机视觉

制造业中的计算机视觉

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 可推动质量控制、缺陷检测、PPE 合规和装配线自动化。
了解更多
汽车行业中的计算机视觉

汽车行业中的计算机视觉

使用 Ultralytics YOLO 模型在汽车行业应用计算机视觉。视觉 AI 提升道路安全、驾驶辅助和车辆自动化水平,让道路更加智能。
了解更多
农业中的计算机视觉

农业中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 带入智能农业。为作物监测、牲畜追踪和精准农业提供支持,提升产量与智能化水平。
了解更多
用于航拍影像的计算机视觉

用于航拍影像的计算机视觉

使用 Ultralytics YOLO 将无人机和航拍影像转化为针对农业、水产养殖、环境监测、自然保护及地理空间分析的实时洞察。
了解更多
航空航天中的计算机视觉

航空航天中的计算机视觉

借助 Ultralytics YOLO 模型将视觉 AI 引入空中监测。使用计算机视觉解决方案赋能无人机、航空航天工作流、环境保护与地理空间行业。
了解更多

使用 Ultralytics YOLO 模型保护每个站点。视觉 AI 赋能周界监控、威胁检测、车牌识别和工作场所安全。
了解更多
机器人计算机视觉

机器人计算机视觉

借助 Ultralytics YOLO 模型打造更智能的机器。机器人技术中的视觉 AI 可实现自主导航、感知、目标跟踪和实时控制。
了解更多
物流计算机视觉

物流计算机视觉

使用 Ultralytics YOLO 模型提升物流效率。视觉 AI 可实现包裹检测、分拣、车辆跟踪和仓库安全实时监控。
了解更多
零售计算机视觉

零售计算机视觉

使用 Ultralytics YOLO 模型重新构想零售。视觉 AI 为库存跟踪、货架监控、队列管理和更智能的客户洞察提供支持。
了解更多
医疗领域的计算机视觉

医疗领域的计算机视觉

使用 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可实现更快的医学影像处理、更智能的诊断和患者监护。
了解更多
制造业中的计算机视觉

制造业中的计算机视觉

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 可推动质量控制、缺陷检测、PPE 合规和装配线自动化。
了解更多
汽车行业中的计算机视觉

汽车行业中的计算机视觉

使用 Ultralytics YOLO 模型在汽车行业应用计算机视觉。视觉 AI 提升道路安全、驾驶辅助和车辆自动化水平,让道路更加智能。
了解更多
农业中的计算机视觉

农业中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 带入智能农业。为作物监测、牲畜追踪和精准农业提供支持,提升产量与智能化水平。
了解更多

让我们共同构建 AI 的未来!

开启你的机器学习未来之旅