Перенос Ultralytics YOLO11 на устройства Apple с помощью CoreML
Узнай, как просто перенести Ultralytics YOLO11 на устройства Apple с помощью CoreML и запускать быстрые автономные задачи компьютерного зрения в приложениях iOS реального времени.
Abirami Vina8 мин. чтения
Появление таких функций, как Apple Intelligence, показывает, что ИИ непосредственно на устройстве становится важной частью использования смартфонов. Для разработчиков это означает, что пользователи всё чаще выбирают приложения для iOS, которые используют такие возможности, как компьютерное зрение, чтобы обеспечивать более интеллектуальную и отзывчивую работу.
Компьютерное зрение — это разновидность искусственного интеллекта (AI), которая позволяет компьютерам понимать и анализировать визуальную информацию, например изображения или видео. На мобильных устройствах его можно использовать в реальном времени, чтобы обнаруживать объекты, классифицировать их и взаимодействовать с ними через камеру телефона. Модели визуального ИИ, такие как Ultralytics YOLO11, можно дообучить распознавать определённые объекты с учётом требований твоего приложения.
Однако Ultralytics YOLO11 не готова к запуску на iOS сразу после установки. Чтобы развернуть YOLO11 на iPhone или других устройствах Apple, особенно для автономной работы, модель нужно преобразовать в формат, оптимизированный для экосистемы Apple.
Именно такую задачу и призвана решать CoreML. CoreML — это платформа машинного обучения Apple, которая запускает модели локально и интегрируется непосредственно в приложения для iOS и macOS. Интеграция с CoreML, поддерживаемая Ultralytics, упрощает экспорт модели для локального развертывания на iPhone.
В этой статье мы подробнее рассмотрим, как экспортировать модель Ultralytics YOLO11 в формат CoreML. Также мы изучим примеры использования в реальном времени, которые показывают преимущества запуска моделей компьютерного зрения непосредственно на устройствах iOS.
Что такое CoreML?#
CoreML — это фреймворк машинного обучения (ML), разработанный Apple. Он позволяет разработчикам интегрировать обученные модели ML непосредственно в приложения для всей экосистемы Apple: iOS (iPhone и iPad), macOS (Mac), watchOS (Apple Watch) и tvOS (Apple TV). Фреймворк упрощает использование машинного обучения на устройствах Apple и повышает его эффективность: модели запускаются непосредственно на устройстве, без подключения к интернету.
В основе CoreML лежит унифицированный формат моделей, поддерживающий широкий спектр задач ИИ, таких как классификация изображений, обнаружение объектов, распознавание речи и обработка естественного языка. Фреймворк оптимизирован для эффективного использования аппаратных ресурсов Apple: CPU (центральный процессор), GPU (графический процессор) и ANE (Apple Neural Engine) быстро и эффективно выполняют модели.
CoreML поддерживает различные типы моделей и совместим с популярными библиотеками машинного обучения, включая TensorFlow, PyTorch, scikit-learn, XGBoost и LibSVM. Благодаря этому разработчикам проще добавлять передовые возможности ML в повседневные приложения и обеспечивать их стабильную работу на устройствах Apple.

Рис. 1. CoreML поддерживает модели из других популярных фреймворков ИИ (Источник).
Ключевые возможности CoreML#
Вот некоторые ключевые возможности, благодаря которым CoreML — надёжный инструмент для интеграции ИИ в приложения Apple:
- Оптимизация модели: CoreML поддерживает такие методы сжатия, как квантование и прореживание, которые уменьшают размер модели и повышают эффективность ее работы.
- Персонализация на устройстве: Фреймворк ML от Apple поддерживает персонализацию непосредственно на устройстве: модели можно обучать и обновлять локально на основе взаимодействий с пользователем.
- Асинхронные предсказания: Этот фреймворк позволяет приложению выполнять предсказания в фоновом режиме, сохраняя плавную и отзывчивую работу интерфейса во время выполнения задач ИИ.
- Многозадачное обучение: CoreML поддерживает модели, способные выполнять несколько задач одновременно, например обнаруживать объекты и распознавать текст на одном изображении.
Как экспортировать Ultralytics YOLO11 в формат CoreML#
Теперь, когда мы познакомились с фреймворком CoreML, давай разберём, как использовать интеграцию с CoreML, поддерживаемую Ultralytics, чтобы экспортировать модель YOLO11 в формат CoreML.
Шаг 1. Настройка среды#
Чтобы воспользоваться возможностями интеграции Ultralytics, сначала установи пакет Ultralytics для Python. Это лёгкая и простая в использовании библиотека, которая упрощает такие задачи, как обучение, оценка, предсказание и экспорт моделей Ultralytics YOLO.
Установить пакет Ultralytics для Python можно, выполнив в терминале команду «pip install ultralytics». Если ты работаешь в среде вроде Jupyter Notebook или Google Colab, добавь перед командой восклицательный знак (!): «!pip install ultralytics».
Если при установке или экспорте в CoreML возникнут проблемы, обратись за помощью к официальной документации Ultralytics или руководству по распространённым проблемам.
Шаг 2. Экспорт Ultralytics YOLO11 в CoreML#
После успешной установки пакета можно загрузить модель Ultralytics YOLO11 и преобразовать ее в формат CoreML.
Если ты не знаешь, какую предварительно обученную модель YOLO11 выбрать, изучи размеры моделей YOLO11 на платформе Ultralytics. Каждая модель по-разному сочетает скорость, размер и точность, поэтому ты сможешь выбрать оптимальный вариант для своего проекта. Также можно использовать собственную модель YOLO11, обученную на твоем наборе данных.
В приведённом ниже фрагменте кода используется предварительно обученный файл модели YOLO11 с именем "yolo11n.pt". В процессе экспорта он преобразуется в пакет CoreML под названием "yolo11n.mlpackage."
Модель "yolo11n" — это версия nano, оптимизированная для высокой скорости и низкого потребления ресурсов. В зависимости от требований проекта можно выбрать и другие размеры: "s" — small, "m" — medium, "l" — large или "x" — extra-large. Каждая версия по-разному сочетает скорость и точность. Те же шаги экспорта подходят и для более новых моделей, например 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 обнаруживает и распознаёт объекты в реальном времени, а отслеживание позволяет удерживать их в поле зрения при движении камеры, благодаря чему виртуальные элементы остаются на своих местах относительно реального мира.
Игроки могут направлять телефоны в разные стороны, исследовать окружение и взаимодействовать с тем, что видят, чтобы собирать предметы или выполнять короткие задания. Всё это работает непосредственно на устройстве без подключения к интернету, обеспечивая плавный и увлекательный игровой процесс.
Приложения для iOS с моделями CoreML для распознавания номерных знаков в реальном времени#
Автоматическое распознавание номерных знаков (ANPR) — это приложение компьютерного зрения для обнаружения и чтения автомобильных номерных знаков. Эту технологию часто используют в системах безопасности, мониторинга дорожного движения и контроля доступа. Благодаря CoreML и моделям вроде YOLO11 теперь ANPR эффективно работает на устройствах iOS.
Приложение ANPR на iPhone особенно полезно в условиях, где важна безопасность. Например, оно поможет сотрудникам быстро определить, разрешён ли въезд автомобилю на охраняемую территорию.
Такое приложение может использовать модель ИИ для компьютерного зрения, например Ultralytics YOLO11, интегрированную через CoreML, чтобы в реальном времени обнаруживать транспортные средства и находить их номерные знаки с помощью камеры устройства. После обнаружения номера технология оптического распознавания символов (OCR) может считать его. Затем приложение сравнивает номер с локальной или облачной базой данных, чтобы проверить доступ или отметить несанкционированный въезд.

Рис. 3. Визуальный ИИ можно использовать для обнаружения и считывания автомобильных номерных знаков. (Источник).
Приложения для повышения доступности могут использовать модели CoreML#
ИИ существенно повлиял на доступность, помогая устранять барьеры для людей с нарушениями зрения. С помощью CoreML и моделей компьютерного зрения, таких как Ultralytics YOLO11, разработчики могут создавать приложения для iOS, которые в реальном времени описывают пользователям окружающий мир, упрощая повседневные задачи и помогая выполнять их самостоятельно.
Например, человек с нарушением зрения может направить камеру iPhone на окружающее пространство. Приложение распознаёт важные объекты, например автомобили, людей или дорожные знаки, с помощью обнаружения объектов и рассказывает, что видит. Это пригодится, например, при переходе оживлённой улицы или в чрезвычайной ситуации.

Рис. 4. Пример использования Ultralytics YOLO11 для обнаружения людей
Главные выводы#
Экспорт Ultralytics YOLO11 в формат CoreML открывает новые возможности для приложений реального времени, в том числе для обнаружения объектов офлайн на устройствах iOS. От игр и безопасности до обеспечения доступности — это сочетание позволяет разработчикам создавать интеллектуальные, эффективные и ориентированные на конфиденциальность приложения, которые полностью работают на устройстве.
Всего за несколько простых шагов ты можешь преобразовать модель Ultralytics YOLO11 и добавить надёжные функции компьютерного зрения на iPhone. И всё это работает без подключения к интернету. Интеграция с CoreML переносит возможности передового ИИ в повседневные мобильные приложения, делая их быстрее и отзывчивее и позволяя запускать их где угодно.
Хочешь узнать больше об ИИ? Загляни в наш репозиторий на GitHub, присоединяйся к нашему сообществу и изучи варианты лицензирования, чтобы начать проект по компьютерному зрению. Узнай, как такие инновации, как ИИ в розничной торговле и компьютерное зрение в логистике, формируют будущее: подробности — на страницах наших решений.
Автор
Комментарии
Задай вопрос, поделись результатами или помоги кому-нибудь.










