Meet YOLO26: next-gen vision AI.

Link to this sectionExportação CoreML para Modelos YOLO26#

Implantar modelos de visão computacional em dispositivos Apple como iPhones e Macs requer um formato que garanta um desempenho contínuo.



Watch: How to Export Ultralytics YOLO26 to CoreML for 2x Fast Inference on Apple Devices 🚀

O formato de exportação CoreML permite que você otimize seus modelos Ultralytics YOLO26 para uma detecção de objetos eficiente em aplicativos iOS e macOS. Neste guia, vamos orientar você pelos passos para converter seus modelos para o formato CoreML, facilitando o bom desempenho dos seus modelos em dispositivos Apple.

Link to this sectionCoreML#

Apple CoreML deployment pipeline

CoreML é o framework de aprendizado de máquina fundamental da Apple que é construído sobre Accelerate, BNNS e Metal Performance Shaders. Ele fornece um formato de modelo de aprendizado de máquina que se integra perfeitamente a aplicativos iOS e oferece suporte a tarefas como análise de imagem, processamento de linguagem natural, conversão de áudio para texto e análise de som.

Os aplicativos podem aproveitar o Core ML sem a necessidade de uma conexão de rede ou chamadas de API porque o framework Core ML funciona usando computação no próprio dispositivo. Isso significa que a inferência do modelo pode ser realizada localmente no dispositivo do usuário.

Link to this sectionPrincipais Recursos dos Modelos CoreML#

O framework CoreML da Apple oferece recursos robustos para aprendizado de máquina no dispositivo. Aqui estão os principais recursos que fazem do CoreML uma ferramenta poderosa para desenvolvedores:

  • Suporte Abrangente a Modelos: Converte e executa modelos de frameworks populares como TensorFlow, PyTorch, scikit-learn, XGBoost e LibSVM.

CoreML supported deep learning frameworks

  • Aprendizado de Máquina no Dispositivo: Garante a privacidade dos dados e um processamento rápido ao executar modelos diretamente no dispositivo do usuário, eliminando a necessidade de conectividade de rede.

  • Desempenho e Otimização: Usa a CPU, GPU e Neural Engine do dispositivo para um desempenho ideal com uso mínimo de energia e memória. Oferece ferramentas para compressão e otimização de modelos, mantendo a precisão.

  • Facilidade de Integração: Fornece um formato unificado para vários tipos de modelos e uma API amigável para uma integração contínua em aplicativos. Oferece suporte a tarefas específicas de domínio por meio de frameworks como Vision e Natural Language.

  • Recursos Avançados: Inclui recursos de treinamento no dispositivo para experiências personalizadas, previsões assíncronas para experiências interativas de ML e ferramentas de inspeção e validação de modelos.

Link to this sectionOpções de Implantação CoreML#

Antes de examinarmos o código para exportar modelos YOLO26 para o formato CoreML, vamos entender onde os modelos CoreML são geralmente usados.

O CoreML oferece várias opções de implantação para modelos de aprendizado de máquina, incluindo:

  • Implantação no Dispositivo: Este método integra diretamente os modelos CoreML ao seu aplicativo iOS. É particularmente vantajoso para garantir baixa latência, maior privacidade (já que os dados permanecem no dispositivo) e funcionalidade offline. Essa abordagem, no entanto, pode ser limitada pelas capacidades de hardware do dispositivo, especialmente para modelos maiores e mais complexos, e pode ser executada das duas seguintes maneiras:

    • Modelos Embutidos: Estes modelos são incluídos no pacote do aplicativo e ficam acessíveis imediatamente. Eles são ideais para modelos pequenos que não exigem atualizações frequentes.

    • Modelos Baixados: Estes modelos são buscados em um servidor conforme a necessidade. Esta abordagem é adequada para modelos maiores ou aqueles que precisam de atualizações regulares. Ela ajuda a manter o tamanho do pacote do aplicativo menor.

  • Implantação Baseada em Nuvem: Os modelos CoreML são hospedados em servidores e acessados pelo aplicativo iOS por meio de solicitações de API. Esta opção escalável e flexível permite atualizações fáceis de modelos sem revisões de aplicativos. É ideal para modelos complexos ou aplicativos de grande escala que exigem atualizações regulares. No entanto, requer uma conexão com a internet e pode trazer problemas de latência e segurança.

Link to this sectionExportando Modelos YOLO26 para CoreML#

Exportar YOLO26 para CoreML permite um desempenho otimizado de aprendizado de máquina no dispositivo dentro do ecossistema da Apple, oferecendo benefícios em termos de eficiência, segurança e integração contínua com plataformas iOS, macOS, watchOS e tvOS.

Link to this sectionInstalação#

Para instalar o pacote necessário, execute:

Instalação
# Install the required package for YOLO26
pip install ultralytics

Para instruções detalhadas e melhores práticas relacionadas ao processo de instalação, consulte nosso guia de instalação YOLO26. Ao instalar os pacotes necessários para o YOLO26, se você encontrar alguma dificuldade, consulte nosso guia de Problemas Comuns para soluções e dicas.

Link to this sectionUso#

Antes de mergulhar nas instruções de uso, certifique-se de conferir a variedade de modelos YOLO26 oferecidos pela Ultralytics. Isso o ajudará a escolher o modelo mais adequado para os requisitos do seu projeto.

O formato CoreML oferece suporte aos modos Export, Predict e Validate. A inferência e a validação com CoreML funcionam apenas no macOS. Exporte seu modelo e, em seguida, carregue o modelo exportado para executar a inferência ou validar sua precisão.

Exportar
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to CoreML format
model.export(format="coreml")  # creates 'yolo26n.mlpackage'
Prever
from ultralytics import YOLO

# Load the exported CoreML model
model = YOLO("yolo26n.mlpackage")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Validar
from ultralytics import YOLO

# Load the exported CoreML model
model = YOLO("yolo26n.mlpackage")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionArgumentos de Exportação#

ArgumentoTipoPadrãoDescrição
formatstr'coreml'Formato de destino para o modelo exportado, definindo a compatibilidade com vários ambientes de implantação.
imgszint ou tuple640Desired image size for the model input. Can be an integer for square images or a tuple (height, width) for specific dimensions.
dynamicboolFalsePermite tamanhos de entrada dinâmicos, aumentando a flexibilidade no manuseio de dimensões de imagem variáveis.
halfboolFalseAtiva a quantização FP16 (precisão média), reduzindo o tamanho do modelo e potencialmente acelerando a inferência em hardware compatível.
int8boolFalseAtiva a quantização INT8, comprimindo ainda mais o modelo e acelerando a inferência com perda mínima de precisão, principalmente para dispositivos de borda.
nmsboolFalseAdiciona a Supressão Não-Máxima (NMS), essencial para um pós-processamento de detecção preciso e eficiente.
batchint1Specifies export model batch inference size or the max number of images the exported model will process concurrently in predict mode.
devicestrNoneSpecifies the device for exporting: GPU (device=0), CPU (device=cpu), MPS for Apple silicon (device=mps).
Dica

Certifique-se de usar uma máquina macOS ou Linux x86 ao exportar para CoreML.

Para mais detalhes sobre o processo de exportação, visite a página de documentação da Ultralytics sobre exportação.

Link to this sectionImplantando Modelos CoreML YOLO26 Exportados#

Tendo exportado com sucesso seus modelos Ultralytics YOLO26 para CoreML, a próxima fase crítica é implantar esses modelos de forma eficaz. Para obter orientação detalhada sobre a implantação de modelos CoreML em vários ambientes, confira estes recursos:

  • CoreML Tools: Este guia inclui instruções e exemplos para converter modelos de TensorFlow, PyTorch e outras bibliotecas para Core ML.

  • ML and Vision: Uma coleção de vídeos abrangentes que cobrem vários aspectos do uso e implementação de modelos CoreML.

  • Integrating a Core ML Model into Your App: Um guia abrangente sobre como integrar um modelo CoreML em um aplicativo iOS, detalhando desde a preparação do modelo até a implementação no aplicativo para várias funcionalidades.

Link to this sectionResumo#

Neste guia, analisamos como exportar modelos Ultralytics YOLO26 para o formato CoreML. Ao seguir os passos descritos neste guia, você pode garantir a máxima compatibilidade e desempenho ao exportar modelos YOLO26 para CoreML.

Para mais detalhes sobre o uso, visite a documentação oficial do CoreML.

Além disso, se você quiser saber mais sobre outras integrações do Ultralytics YOLO26, visite nossa página de guia de integração. Você encontrará muitos recursos e insights valiosos lá.

Link to this sectionFAQ#

Link to this sectionComo exporto modelos YOLO26 para o formato CoreML?#

To export your Ultralytics YOLO26 models to CoreML format, you'll first need to ensure you have the ultralytics package installed. You can install it using:

Instalação
pip install ultralytics

Em seguida, você pode exportar o modelo usando os seguintes comandos Python ou CLI:

Uso
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
model.export(format="coreml")

Para mais detalhes, consulte a seção Exporting YOLO26 Models to CoreML de nossa documentação.

Link to this sectionQuais são os benefícios de usar o CoreML para implantar modelos YOLO26?#

O CoreML oferece inúmeras vantagens para implantar modelos Ultralytics YOLO26 em dispositivos Apple:

  • Processamento no Dispositivo: Permite inferência de modelo local em dispositivos, garantindo privacidade de dados e minimizando a latência.
  • Otimização de Desempenho: Aproveita todo o potencial da CPU, GPU e Neural Engine do dispositivo, otimizando velocidade e eficiência.
  • Facilidade de Integração: Oferece uma experiência de integração contínua com os ecossistemas da Apple, incluindo iOS, macOS, watchOS e tvOS.
  • Versatilidade: Oferece suporte a uma ampla gama de tarefas de aprendizado de máquina, como análise de imagem, processamento de áudio e processamento de linguagem natural usando o framework CoreML.

Para mais detalhes sobre como integrar seu modelo CoreML a um aplicativo iOS, confira o guia sobre Integrating a Core ML Model into Your App.

Link to this sectionQuais são as opções de implantação para modelos YOLO26 exportados para CoreML?#

Depois de exportar seu modelo YOLO26 para o formato CoreML, você tem várias opções de implantação:

  1. Implantação no Dispositivo: Integre diretamente modelos CoreML ao seu aplicativo para maior privacidade e funcionalidade offline. Isso pode ser feito como:

    • Modelos Embutidos: Incluídos no pacote do aplicativo, acessíveis imediatamente.
    • Modelos Baixados: Buscados de um servidor conforme necessário, mantendo o tamanho do pacote do aplicativo menor.
  2. Implantação Baseada em Nuvem: Hospede modelos CoreML em servidores e acesse-os via solicitações de API. Essa abordagem suporta atualizações mais fáceis e pode lidar com modelos mais complexos.

Para obter orientação detalhada sobre a implantação de modelos CoreML, consulte CoreML Deployment Options.

Link to this sectionComo o CoreML garante um desempenho otimizado para modelos YOLO26?#

O CoreML garante um desempenho otimizado para modelos Ultralytics YOLO26 utilizando várias técnicas de otimização:

  • Aceleração de Hardware: Usa a CPU, GPU e Neural Engine do dispositivo para computação eficiente.
  • Compressão de Modelo: Fornece ferramentas para comprimir modelos a fim de reduzir sua pegada sem comprometer a precisão.
  • Inferência Adaptativa: Ajusta a inferência com base nas capacidades do dispositivo para manter um equilíbrio entre velocidade e desempenho.

Para mais informações sobre otimização de desempenho, visite a documentação oficial do CoreML.

Link to this sectionPosso executar a inferência diretamente com o modelo CoreML exportado?#

Sim, você pode executar a inferência diretamente usando o modelo CoreML exportado. Abaixo estão os comandos para Python e CLI:

Executando Inferência
from ultralytics import YOLO

coreml_model = YOLO("yolo26n.mlpackage")
results = coreml_model("https://ultralytics.com/images/bus.jpg")

Para obter informações adicionais, consulte a seção Usage do guia de exportação CoreML.

Comentários