了解如何通过CoreML 轻松将Ultralytics YOLO11 移植到苹果设备,并为实时iOS 应用程序实现快速离线计算机视觉任务。

了解如何通过CoreML 轻松将Ultralytics YOLO11 移植到苹果设备,并为实时iOS 应用程序实现快速离线计算机视觉任务。

随着苹果公司推出Apple Intelligence 等功能,设备上的人工智能显然正在成为我们使用手机的核心部分。对于开发者来说,这种转变意味着用户正在采用使用计算机视觉等功能的iOS 应用程序,以提供更智能、反应更灵敏的体验。
计算机视觉是一种人工智能(AI),能让计算机理解和分析图像或视频等视觉信息。在移动设备上,它可以通过手机摄像头对物体进行实时detect、classify和交互。视觉人工智能模型,如 Ultralytics YOLO11等视觉人工智能模型可以根据应用的需要进行定制训练,以识别特定对象。
不过,YOLO11 并不是开箱就能在iOS 上运行的。要在 iPhone 或其他苹果设备上部署YOLO11 ,尤其是离线使用,需要将其转换为针对苹果生态系统进行优化的格式。
这正是CoreML 要解决的问题。CoreML 是苹果公司的机器学习框架,旨在本地运行模型,并无缝集成到iOS 和 macOS 应用程序中。Ultralytics 支持CoreML 集成,可以轻松导出模型,在 iPhone 上进行本地部署。
在本文中,我们将详细介绍如何将YOLO11 模型导出为CoreML 格式。我们还将探讨实时使用案例,展示直接在iOS 设备上运行计算机视觉模型的优势。让我们开始吧!
CoreML 是苹果公司开发的机器学习 (ML) 框架,开发人员可以将训练有素的 ML 模型直接集成到苹果生态系统的应用程序中,包括iOS (iPhone 和 iPad)、macOS(Mac)、watchOS(Apple Watch)和 tvOS(Apple TV)。它旨在通过使模型能够直接在设备上运行,而无需互联网连接,从而使机器学习在苹果设备上变得易用和高效。
CoreML 的核心是一种统一的模型格式,支持广泛的人工智能任务,如图像分类、物体检测、语音识别和自然语言处理。该框架经过优化,可充分利用苹果的硬件,使用CPU (中央处理器)、GPU (图形处理器)和 ANE(苹果神经引擎)快速高效地执行模型。
CoreML 支持多种模型类型,并与TensorFlow、PyTorch、scikit-learn、XGBoost 和 LibSVM 等流行的机器学习库兼容。这样,开发人员就能更轻松地将高级 ML 功能引入日常应用程序,同时确保它们在苹果设备上流畅运行。

以下是使CoreML 成为将人工智能集成到苹果应用程序的可靠工具的一些关键功能:
现在,我们对CoreML 框架有了更深入的了解,下面就让我们来看看如何使用Ultralytics 支持的CoreML 集成,将YOLO11 模型导出为CoreML 格式。
要使用Ultralytics 提供的集成功能,首先要安装Ultralytics Python 软件包。这是一个轻量级的易用库,可以简化训练、评估、预测和输出Ultralytics YOLO 模型等任务。
在命令终端运行 "pip install Ultralytics "即可安装 ultralyticsPython 软件包。如果使用的是 Jupyter Notebook 或Google Colab 等环境,请在命令前加上感叹号(!):"!pip installultralytics"。
如果在安装过程中或导出到CoreML 时遇到任何问题,请查看Ultralytics 官方文档或常见问题指南以获得帮助。
软件包安装成功后,您就可以加载YOLO11 模型并将其转换为CoreML 格式。
如果您不确定使用哪种预训练的YOLO11 模型,您可以探索Ultralytics 支持 的一系列模型 。每种模型都能在速度、大小和准确性之间取得不同的平衡,您可以选择最适合您项目的模型。如果您已经在自己的数据集上训练了一个YOLO11 模型,也可以使用自定义训练的模型。
在下面的代码片段中,使用了一个名为 "yolo11n.pt "的预训练YOLO11 模型文件。在导出过程中,它被转换成一个名为 "yolo11n.mlpackage "的CoreML 包。
“yolo11n”模型是 nano 版本,针对速度和低资源使用进行了优化。根据您的项目需求,您还可以选择其他模型尺寸,例如“s”(小型)、“m”(中型)、“l”(大型)或“x”(超大型)。每个版本都在性能和准确性之间提供不同的平衡。
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="coreml")
导出为CoreML 格式后,YOLO11 可以轻松集成到iOS 应用程序中,从而在 iPhone、iPad 和 Mac 等设备上实现实时计算机视觉任务,如物体检测。
例如,下面的代码片段演示了如何加载导出的CoreML 模型并执行推理。推理是使用训练有素的模型对新数据进行预测的过程。在本例中,模型分析了一家人玩球的图像。
coreml_model = YOLO("yolo11n.mlpackage")
results = coreml_model("https://images.pexels.com/photos/4933841/pexels-photo-4933841.jpeg", save=True)
运行代码后,输出图像将保存在 "runs/detect/predict "文件夹中。

将YOLO11 输出到CoreML 可以灵活地构建各种计算机视觉应用程序,这些应用程序可以在 iPhone、iPad 和 Mac 上高效运行。接下来,让我们来看看这种集成在现实世界中特别有用的一些应用场景。
增强现实(AR)通过将虚拟元素叠加到实时相机视图上,将数字内容与现实世界融合在一起。 它正在成为手机游戏的关键组成部分,创造更具互动性和沉浸感的体验。
通过将YOLO11 导出为CoreML 格式,iOS 开发人员可以制作 AR 游戏,利用手机摄像头识别长椅、树木或标志等现实世界中的物体。然后,游戏可以在这些物体上叠加虚拟物品,如硬币、线索或生物,以增强玩家周围的环境。
在幕后,这是通过对象检测和对象跟踪来实现的。YOLO11 能实时检测和识别物体,而跟踪功能则能在摄像机移动时保持这些物体在视野中,确保虚拟元素与现实世界保持一致。
玩家可以利用手机扫描周围环境,与所见之物互动,收集物品或完成快速挑战。所有这些操作都可以在设备上直接运行,无需互联网连接,从而带来流畅且引人入胜的体验。
自动车牌识别(ANPR)是一种计算机视觉应用程序,用于detect 和读取车辆牌照。它通常用于安防、交通监控和门禁系统。借助CoreML 和YOLO11 等模型,ANPR 现在可以在iOS 设备上高效运行。
在安全至上的环境中,iPhone 上的车牌识别 (ANPR) 应用程序尤其有用。例如,它可以帮助团队快速确定进入限制区域的车辆是否已获得授权。
这种应用程序可以使用通过CoreML 集成的视觉人工智能模型(如YOLO11)来detect 车辆,并使用设备的摄像头实时定位车牌。一旦检测到车牌,光学字符识别(OCR)技术就能读取车牌号码。然后,该应用程序可以将该号码与本地或云端数据库进行比较,以验证车辆是否可以进入或标记未经授权的车辆。

人工智能对无障碍环境产生了巨大影响,帮助视障人士打破障碍。借助CoreML 等工具和YOLO11 等计算机视觉模型,开发人员可以构建能够实时描述用户周围世界的iOS 应用程序,从而使日常工作变得更轻松、更独立。
例如,视力障碍人士可以将他们的 iPhone 摄像头对准周围环境。该应用程序使用目标检测来识别关键元素,如车辆、行人或街道标志,并叙述它所看到的内容。这可以用于诸如在繁忙的街道上导航或理解紧急情况等场景。

将YOLO11 输出为CoreML 格式为实时应用创造了新的机会,包括iOS 设备上的离线对象检测。从农业、安全性到可访问性,这一组合使开发人员能够构建完全在设备上运行的智能、高效和注重隐私的应用程序。
只需几个简单的步骤,您就可以转换YOLO11 模型,为 iPhone 添加可靠的计算机视觉功能。最重要的是,它无需互联网连接即可运行。总之,CoreML 集成为日常移动应用程序带来了先进人工智能的力量,使其速度更快、反应更灵敏,并可随时随地运行。
想了解更多关于 AI 的信息吗?浏览我们的 GitHub 仓库,与 我们的社区 交流,并查看 我们的许可选项,以启动您的计算机视觉项目。在我们的解决方案页面上,了解 零售业中的 AI 和 物流业中的计算机视觉 等创新如何塑造未来。

