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 é 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.
-
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:
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")
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:
Em seguida, pode exportar o modelo utilizando os seguintes comandos Python ou CLI :
Utilização
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:
-
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.
-
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
Para mais informações, consulte a secção Utilização do guia de exportação CoreML .