Saltar para o conteúdo

CoreML Exportação para YOLO11 Modelos

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

O formato de exportação CoreML permite-lhe otimizar os seus Ultralytics YOLO11 modelos para uma deteção eficiente de objectos em aplicações iOS e macOS. Neste guia, iremos guiá-lo através dos passos para converter os seus modelos para o formato CoreML , facilitando o desempenho dos seus modelos em dispositivos Apple.

CoreML

CoreML Visão geral

CoreML é a estrutura básica de aprendizagem automática da Apple que se baseia no Accelerate, BNNS e Metal Performance Shaders. Fornece um formato de modelo de aprendizagem automática que se integra facilmente em aplicações iOS e suporta tarefas como a análise de imagens, processamento de linguagem natural, conversão de áudio para texto e análise de som.

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

Principais caraterísticas dos modelos CoreML

A estrutura CoreML da Apple oferece funcionalidades robustas para a aprendizagem automática no dispositivo. Eis as principais caraterísticas que fazem do CoreML uma ferramenta poderosa para os programadores:

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

CoreML Modelos suportados

  • Aprendizagem automática no dispositivo: Garante a privacidade dos dados e um processamento rápido, executando modelos diretamente no dispositivo do utilizador, eliminando a necessidade de conetividade de rede.

  • Desempenho e otimização: Utiliza o CPU, GPU e o Neural Engine do dispositivo para um desempenho ótimo com uma utilização mínima 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 de fácil utilização para uma integração perfeita nas aplicações. Suporta tarefas específicas do domínio através de estruturas como Visão e Linguagem Natural.

  • Funcionalidades avançadas: Inclui capacidades de formação no dispositivo para experiências personalizadas, previsões assíncronas para experiências de ML interactivas e ferramentas de inspeção e validação de modelos.

CoreML Opções de implementação

Antes de analisarmos o código para exportar os modelos YOLO11 para o formato CoreML , vamos perceber onde são normalmente utilizados os modelos CoreML .

CoreML oferece várias opções de implementação para modelos de aprendizagem automática, incluindo:

  • Implementação no dispositivo: Este método integra diretamente os modelos CoreML na sua aplicação iOS . É particularmente vantajoso para garantir baixa latência, maior privacidade (uma vez que os dados permanecem no dispositivo) e funcionalidade offline. No entanto, esta abordagem pode ser limitada pelas capacidades de hardware do dispositivo, especialmente para modelos maiores e mais complexos. A implementação no dispositivo pode ser executada das duas formas seguintes.

    • Modelos incorporados: Estes modelos estão incluídos no pacote de aplicações e estão imediatamente acessíveis. São ideais para modelos pequenos que não requerem actualizações frequentes.

    • Modelos descarregados: Estes modelos são obtidos a partir de um servidor, conforme necessário. Esta abordagem é adequada para modelos maiores ou que necessitem de actualizações regulares. Ajuda a manter o tamanho do pacote de aplicações mais pequeno.

  • Implementação baseada na nuvem: os modelos CoreML estão alojados em servidores e são acedidos pela aplicação iOS através de pedidos de API. Esta opção escalável e flexível permite actualizações fáceis do modelo sem revisões da aplicação. É ideal para modelos complexos ou aplicações de grande escala que requerem actualizações regulares. No entanto, requer uma ligação à Internet e pode apresentar problemas de latência e segurança.

Exportação de modelos YOLO11 para CoreML

A exportação de YOLO11 para CoreML permite um desempenho optimizado de aprendizagem automática no dispositivo no ecossistema da Apple, oferecendo vantagens 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 YOLO11
pip install ultralytics

Para obter instruções detalhadas e melhores práticas relacionadas com o processo de instalação, consulte o nosso guia de instalaçãoYOLO11 . Ao instalar os pacotes necessários para YOLO11, se encontrar alguma dificuldade, consulte o nosso guia de Problemas comuns para obter soluções e dicas.

Utilização

Antes de se debruçar sobre as instruções de utilização, não deixe de consultar a gama de modelosYOLO11 propostos por Ultralytics. Isto ajudá-lo-á a escolher o modelo mais adequado às necessidades do seu projeto.

Utilização

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

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

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

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

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

Para mais informações sobre o processo de exportação, visite a página de documentaçãoUltralytics sobre exportação.

Implantação de modelos exportados YOLO11 CoreML

Depois de exportar com êxito os modelos Ultralytics YOLO11 para CoreML, a próxima fase crítica é a implantação eficaz desses modelos. Para obter orientações detalhadas sobre a implantação de modelos CoreML em vários ambientes, consulte estes recursos:

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

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

  • Integração de um modelo de ML central na sua aplicação: Um guia completo sobre a integração de um modelo CoreML numa aplicação iOS , detalhando os passos desde a preparação do modelo até à sua implementação na aplicação para várias funcionalidades.

Resumo

Neste guia, explicámos como exportar modelos Ultralytics YOLO11 para o formato CoreML . Seguindo as etapas descritas neste guia, é possível garantir a máxima compatibilidade e desempenho ao exportar modelos YOLO11 para CoreML.

Para mais informações sobre a utilização, visite a documentação oficialCoreML .

Além disso, se pretender saber mais sobre outras integrações de Ultralytics YOLO11 , visite a nossa página de guia de integração. Encontrará aí muitos recursos e informações valiosos.

FAQ

Como é que exporto modelos YOLO11 para o formato CoreML ?

Para exportar o seu Ultralytics YOLO11 para o formato CoreML , primeiro é necessário garantir que tem o ultralytics instalado. Pode instalá-lo utilizando:

Instalação

pip install ultralytics

Em seguida, pode exportar o modelo utilizando os seguintes comandos Python ou CLI :

Utilização

from ultralytics import YOLO

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

Para mais informações, consulte a secção Exportar modelos YOLO11 para CoreML da nossa documentação.

Quais são as vantagens de utilizar CoreML para implementar modelos YOLO11 ?

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

  • Processamento no dispositivo: Permite a inferência de modelos locais nos dispositivos, garantindo a privacidade dos dados e minimizando a latência.
  • Otimização do desempenho: Tira partido de todo o potencial do CPU, GPU e do Neural Engine do dispositivo, optimizando a velocidade e 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 vasta gama de tarefas de aprendizagem automática, como a análise de imagens, o processamento de áudio e o processamento de linguagem natural, utilizando a estrutura CoreML .

Para obter mais detalhes sobre a integração do seu modelo CoreML numa aplicação iOS , consulte o guia sobre a integração de um modelo de ML principal na sua aplicação.

Quais são as opções de implementação para os modelos YOLO11 exportados para CoreML?

Depois de exportar o seu modelo YOLO11 para o formato CoreML , tem várias opções de implementação:

  1. Implementação no dispositivo: Integre diretamente os modelos CoreML na sua aplicação para uma maior privacidade e funcionalidade offline. Isso pode ser feito como:

    • Modelos incorporados: Incluídos no pacote de aplicações, acessíveis de imediato.
    • Modelos descarregados: Obtidos de um servidor conforme necessário, mantendo o tamanho do pacote de aplicações mais pequeno.
  2. Implementação baseada na nuvem: Alojar modelos CoreML em servidores e aceder-lhes através de pedidos de API. Esta abordagem permite actualizações mais fáceis e pode lidar com modelos mais complexos.

Para obter orientações detalhadas sobre a implantação dos modelos CoreML , consulte CoreML Opções de implantação.

Como é que o CoreML garante um desempenho optimizado para os modelos YOLO11 ?

CoreML assegura um desempenho optimizado para os Ultralytics YOLO11 modelos, utilizando várias técnicas de otimização:

  • Aceleração de hardware: Utiliza o CPU, o GPU e o Neural Engine do dispositivo para uma computação eficiente.
  • Compressão de modelos: Fornece ferramentas para comprimir modelos para reduzir o 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 a otimização do desempenho, visite a documentação oficialCoreML .

Posso executar a inferência diretamente com o modelo CoreML exportado?

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

Inferência em curso

from ultralytics import YOLO

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

Para mais informações, consulte a secção Utilização do guia de exportação CoreML .

📅C riado há 10 meses ✏️ Atualizado há 2 meses

Comentários