Ir para o conteúdo

Exportação CoreML para Modelos YOLO26

A implementação de modelos de visão computacional em dispositivos Apple, como iPhones e Macs, requer um formato que garanta um desempenho perfeito.



Assista: Como Exportar Ultralytics YOLO26 para CoreML para Inferência 2x Mais Rápida em Dispositivos Apple 🚀

O formato de exportação CoreML permite otimizar seus modelos Ultralytics YOLO26 para uma detecção de objetos eficiente em aplicativos iOS e macOS. Neste guia, vamos guiá-lo pelos passos para converter seus modelos para o formato CoreML, facilitando o bom desempenho de seus modelos em dispositivos Apple.

CoreML

Pipeline CoreML do Apple CoreML

CoreML é a estrutura fundamental de aprendizado de máquina da Apple que se baseia em Accelerate, BNNS e Metal Performance Shaders. Ele fornece um formato de modelo de aprendizado de máquina que se integra perfeitamente em aplicações iOS e suporta tarefas como análise de imagem, processamento de linguagem natural, conversão de áudio em texto e análise de som.

As aplicações podem tirar partido do Core ML sem necessidade de uma ligação de rede ou chamadas de API, porque a framework Core ML funciona utilizando computação no dispositivo. Isto significa que a inferência do modelo pode ser realizada localmente no dispositivo do utilizador.

Principais funcionalidades dos modelos CoreML

A framework CoreML da Apple oferece recursos robustos para machine learning no dispositivo. Aqui estão os principais recursos que tornam o 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.

Estruturas de aprendizagem profunda CoreML

  • Machine Learning On-device: Garante a privacidade dos dados e o processamento rápido, executando modelos diretamente no dispositivo do usuário, eliminando a necessidade de conectividade de rede.

  • Desempenho e Otimização: Utiliza 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 integração perfeita em aplicativos. Suporta tarefas específicas de domínio por meio de frameworks como Vision e Natural Language.

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

Opções de Implementação do CoreML

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

O CoreML oferece várias opções de implementação para modelos de machine learning, incluindo:

  • Implantação no Dispositivo: Este método integra diretamente os modelos CoreML em seu aplicativo iOS. É particularmente vantajoso para garantir baixa latência, privacidade aprimorada (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 seguintes duas maneiras:

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

    • Modelos Baixados: Esses modelos são obtidos de um servidor conforme necessário. Esta abordagem é adequada para modelos maiores ou aqueles que precisam de atualizações regulares. Ajuda a manter o tamanho do pacote do aplicativo menor.

  • Implantação Baseada na Nuvem: Os modelos CoreML são hospedados em servidores e acessados pelo aplicativo iOS por meio de solicitações de API. Essa opção escalável e flexível permite atualizações fáceis do modelo sem revisões do aplicativo. É 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 apresentar problemas de latência e segurança.

Exportando 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 perfeita com as plataformas iOS, macOS, watchOS e tvOS.

Instalaçã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 do 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.

Utilização

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

Utilização

from ultralytics import YOLO

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

# Export the model to CoreML format
model.export(format="coreml")  # creates 'yolo26n.mlpackage'

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

# Run inference
results = coreml_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO26n PyTorch model to CoreML format
yolo export model=yolo26n.pt format=coreml # creates 'yolo26n.mlpackage'

# Run inference with the exported model
yolo predict model=yolo26n.mlpackage source='https://ultralytics.com/images/bus.jpg'

Argumentos de Exportação

ArgumentoTipoPadrãoDescrição
formatstr'coreml'Formato de destino para o modelo exportado, definindo a compatibilidade com vários ambientes de implementação.
imgszint ou tuple640Tamanho de imagem desejado para a entrada do modelo. Pode ser um inteiro para imagens quadradas ou uma tupla (height, width) para dimensões específicas.
halfboolFalseAtiva a quantização FP16 (meia precisão), reduzindo o tamanho do modelo e potencialmente acelerando a inferência em hardware suportado.
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 Supressão Não Máxima (NMS), essencial para um pós-processamento de detecção preciso e eficiente.
batchint1Especifica o tamanho do lote de inferência do modelo de exportação ou o número máximo de imagens que o modelo exportado processará simultaneamente em predict modo.
devicestrNoneEspecifica o dispositivo para exportação: GPU (device=0CPU (device=cpu), MPS para Apple silicon (device=mps).

Dica

Certifique-se de usar um macOS ou uma máquina x86 Linux 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.

Implantando Modelos YOLO26 CoreML Exportados

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

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

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

  • Integrando um Modelo Core ML em Seu Aplicativo: Um guia abrangente sobre como integrar um modelo CoreML em um aplicativo iOS, detalhando as etapas desde a preparação do modelo até a implementação no aplicativo para várias funcionalidades.

Resumo

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

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

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

FAQ

Como exporto modelos YOLO26 para o formato CoreML?

Para exportar o seu Ultralytics YOLO26 modelos para o formato CoreML, primeiro você precisa garantir que tem o ultralytics pacote instalado. Você pode instalá-lo usando:

Instalação

pip install ultralytics

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

Utilização

from ultralytics import YOLO

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

Para mais detalhes, consulte a seção Exportando Modelos YOLO26 para CoreML da nossa documentação.

Quais são os benefícios de usar CoreML para implantar modelos YOLO26?

CoreML oferece inúmeras vantagens para a implantação de modelos Ultralytics YOLO26 em dispositivos Apple:

  • Processamento On-device: Permite a inferência de modelo local em dispositivos, garantindo a privacidade dos dados e minimizando a latência.
  • Otimização de Desempenho: Aproveita todo o potencial da CPU, GPU e Neural Engine do dispositivo, otimizando tanto a velocidade quanto a eficiência.
  • Facilidade de Integração: Oferece uma experiência de integração perfeita com os ecossistemas da Apple, incluindo iOS, macOS, watchOS e tvOS.
  • Versatilidade: Suporta uma ampla gama de tarefas de machine learning, 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 em um aplicativo iOS, consulte o guia sobre Integração de um Modelo Core ML em Seu Aplicativo.

Quais 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 On-Device: Integre diretamente os modelos CoreML em seu aplicativo para privacidade aprimorada e funcionalidade offline. Isso pode ser feito como:

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

Para obter orientação detalhada sobre como implantar modelos CoreML, consulte Opções de Implantação do CoreML.

Como o CoreML garante desempenho otimizado para modelos YOLO26?

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

  • Aceleração de Hardware: Usa a CPU, GPU e o Neural Engine do dispositivo para computação eficiente.
  • Compressão de Modelo: Fornece ferramentas para comprimir modelos para reduzir seu tamanho 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 obter mais informações sobre otimização de desempenho, visite a documentação oficial do CoreML.

Posso 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 a Inferência

from ultralytics import YOLO

coreml_model = YOLO("yolo26n.mlpackage")
results = coreml_model("https://ultralytics.com/images/bus.jpg")
yolo predict model=yolo26n.mlpackage source='https://ultralytics.com/images/bus.jpg'

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



📅 Criado há 1 ano ✏️ Atualizado há 4 dias
glenn-jocherRizwanMunawarlakshanthadUltralyticsAssistantY-T-Gwillie.maddox@gmail.comlakshanthadMatthewNoyceRizwanMunawarabirami-vina

Comentários