通过 CoreML 将 Ultralytics YOLO11 部署到 Apple 设备
了解如何轻松地通过 CoreML 将 Ultralytics YOLO11 部署到 Apple 设备上,为实时 iOS 应用启用快速离线计算机视觉任务。
Abirami Vina6 分钟阅读
随着 Apple 推出 Apple Intelligence 等功能,很明显,端侧 AI 正成为我们使用手机的重要组成部分。对开发者来说,这一转变意味着用户正在采用具备计算机视觉等功能的 iOS 应用,以获得更智能、响应更迅速的体验。
计算机视觉是一种人工智能 (AI) 技术,能让计算机理解和分析图像或视频等视觉信息。在移动设备上,它可以通过手机摄像头实时检测、分类目标并与目标交互。像 Ultralytics YOLO11 这样的视觉 AI 模型可以根据应用需求进行定制训练,以识别特定目标。
不过,Ultralytics YOLO11 并不能开箱即用地在 iOS 上运行。要在 iPhone 或其他 Apple 设备上部署 YOLO11,特别是用于离线场景时,需要将其转换为针对 Apple 生态系统优化的格式。
CoreML 正是为解决这类问题而设计的。CoreML 是 Apple 的机器学习框架,旨在让模型能够本地运行并直接集成到 iOS 和 macOS 应用中。在 Ultralytics 的支持下,CoreML 集成让你能够轻松导出模型,以便在 iPhone 上本地部署。
本文将详细介绍如何将 Ultralytics YOLO11 模型导出为 CoreML 格式。我们还将探索实时应用案例,展示在 iOS 设备上直接运行计算机视觉模型的优势。
什么是 CoreML?#
CoreML 是 Apple 开发的机器学习 (ML) 框架,让开发者可以将训练好的 ML 模型直接集成到 Apple 生态系统中的各类应用,包括 iOS(iPhone 和 iPad)、macOS(Mac)、watchOS(Apple Watch)和 tvOS(Apple TV)。它旨在让 Apple 设备上的机器学习变得易于使用且高效,使模型可以直接在设备上运行,无需互联网连接。
CoreML 的核心是统一的模型格式,支持图像分类、目标检测、语音识别和自然语言处理等多种 AI 任务。该框架经过优化,可充分利用 Apple 硬件,借助 CPU(中央处理器)、GPU(图形处理器)和 ANE(Apple Neural Engine)快速高效地执行模型。
CoreML 支持多种模型类型,并兼容 TensorFlow、PyTorch、scikit-learn、XGBoost 和 LibSVM 等常见机器学习库。这让开发者更容易将先进的 ML 功能引入日常应用,同时确保应用能在各种 Apple 设备上流畅运行。

图 1. CoreML 支持来自其他常见 AI 框架的模型(来源)。
CoreML 的主要功能#
以下是让 CoreML 成为在 Apple 应用中集成 AI 的可靠工具的一些主要功能:
- 模型优化:CoreML 支持量化和剪枝等压缩技术,以减小模型体积并提升运行时效率。
- 设备端个性化:Apple 的 ML 框架支持设备端个性化,可根据用户交互在本地训练和更新模型。
- 异步预测:该框架允许应用在后台运行预测任务,在处理 AI 任务的同时保持用户界面流畅、响应迅速。
- 多任务学习:CoreML 支持能够同时执行多项任务的模型,例如在同一张图像中检测物体并识别文本。
如何将 Ultralytics YOLO11 导出为 CoreML 格式#
现在我们已经更好地了解了 CoreML 框架,接下来看看如何使用 Ultralytics 支持的 CoreML 集成,将 YOLO11 模型导出为 CoreML 格式。
第 1 步:设置环境#
要使用 Ultralytics 提供的集成功能,首先安装 Ultralytics Python 软件包。这是一个轻量、易用的库,可简化 Ultralytics YOLO 模型的训练、评估、预测和导出等任务。
你可以在命令终端中运行“pip install ultralytics”来安装 Ultralytics Python 软件包。如果你使用 Jupyter Notebook 或 Google Colab 等环境,请在命令前加上感叹号 (!):“!pip install ultralytics”。
如果在安装过程中或导出到 CoreML 时遇到问题,请查阅 Ultralytics 官方文档或常见问题指南寻求帮助。
第 2 步:将 Ultralytics YOLO11 导出为 CoreML#
软件包成功安装后,你就可以加载 Ultralytics YOLO11 模型并将其转换为 CoreML 格式了。
如果你不确定该使用哪个预训练 YOLO11 模型,可以在 Ultralytics Platform 上查看 YOLO11 模型尺寸。每种尺寸在速度、体积和准确性之间都有不同的权衡,你可以为项目挑选最合适的型号。如果你已在自己的数据集上训练了 YOLO11 模型,也可以使用该定制训练模型。
下面的代码片段使用了一个名为 "yolo11n.pt" 的预训练 YOLO11 模型文件。导出过程中,该文件会转换为名为 "yolo11n.mlpackage" 的 CoreML 软件包。
“yolo11n”模型是 nano 版本,针对速度和低资源占用进行了优化。根据项目需求,你也可以选择其他尺寸的模型,例如小型“s”、中型“m”、大型“l”或超大型“x”。每个版本在速度和准确性之间都有不同的权衡。同样的导出步骤也适用于更新的模型,例如 Ultralytics YOLO26。
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="coreml")第 3 步:使用导出的 CoreML 模型运行推理#
导出为 CoreML 格式后,Ultralytics 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" 文件夹中。

图 2. 使用导出的 Ultralytics YOLO11 CoreML 格式模型检测目标。图片由作者提供。
导出的 CoreML 模型可以在哪里使用?#
将 Ultralytics YOLO11 导出为 CoreML 格式后,你就可以灵活构建各种计算机视觉应用,并让应用在 iPhone、iPad 和 Mac 上高效运行。接下来,我们来看看这种集成在哪些真实场景中特别有用。
由 CoreML 模型驱动的增强现实和游戏应用#
增强现实 (AR)通过在实时摄像头画面上叠加虚拟元素,将数字内容与现实世界融合。它正成为移动游戏的重要组成部分,带来更具互动性和沉浸感的体验。
将 Ultralytics YOLO11 导出为 CoreML 格式后,iOS 开发者可以构建 AR 游戏,通过手机摄像头识别长椅、树木或标志等现实世界中的物体。随后,游戏可以在这些物体上叠加金币、线索或生物等虚拟物品,丰富玩家周围的环境。
在幕后,这一功能依靠目标检测和目标跟踪实现。Ultralytics YOLO11 可以实时检测和识别物体,而跟踪功能则会在摄像头移动时持续追踪这些物体,确保虚拟元素始终与现实世界对齐。
玩家可以举起手机探索周围环境,并与看到的内容互动,从而收集物品或完成快速挑战。所有这些都可以直接在设备上运行,无需互联网连接,让体验流畅而引人入胜。
集成 CoreML 模型、支持实时 ANPR 的 iOS 应用#
自动车牌识别 (ANPR)是一种用于检测和读取车辆牌照的计算机视觉应用,常见于安防、交通监控和门禁系统。借助 CoreML 和 YOLO11 等模型,ANPR 现在可以在 iOS 设备上高效运行。
在注重安全的场景中,iPhone 上的 ANPR 应用尤其有用。例如,它可以帮助团队快速判断进入限制区域的车辆是否经过授权。
此类应用可以通过 CoreML 集成 Ultralytics YOLO11 等视觉 AI 模型,利用设备摄像头实时检测车辆并定位车牌。检测到车牌后,光学字符识别 (OCR) 技术可以读取车牌号码。随后,应用可以将该号码与本地或云端数据库进行比对,以验证通行权限或标记未经授权的车辆。

图 3. 视觉 AI 可用于检测和读取车牌号码。(来源)。
面向无障碍的应用可以利用 CoreML 模型#
AI 对无障碍领域产生了巨大影响,帮助消除视障人士面临的障碍。借助 CoreML 和 Ultralytics YOLO11 等计算机视觉模型,开发者可以构建 iOS 应用,实时描述用户周围的世界,让日常任务变得更轻松,并提升用户的独立性。
例如,视障人士可以用 iPhone 摄像头拍摄周围环境。应用会使用目标检测识别车辆、行人或路标等关键元素,并用语音描述看到的内容。这在穿行繁忙街道或了解紧急情况等场景中都能派上用场。

图 4. 使用 Ultralytics YOLO11 检测行人的示例
要点#
将 Ultralytics YOLO11 导出为 CoreML 格式,为实时应用开辟了新机会,包括在 iOS 设备上离线进行目标检测。从游戏和安全到无障碍应用,这种组合让开发者能够构建完全在设备上运行的智能、高效且注重隐私的应用。
只需几个简单步骤,你就能转换 Ultralytics YOLO11 模型,为 iPhone 添加可靠的计算机视觉功能。更重要的是,这些功能无需互联网连接即可运行。总的来说,CoreML 集成将先进 AI 的强大能力带入日常移动应用,让应用运行更快、响应更迅速,并能随处运行。
想进一步了解 AI?浏览我们的 GitHub 代码库,加入我们的社区,并查看我们的许可选项,为你的计算机视觉项目起步。前往我们的解决方案页面,了解零售业中的 AI和物流领域的计算机视觉等创新如何塑造未来。
作者
评论
提出问题、分享你的结果,或帮助其他人。










