Skip to content

Comment exporter vers NCNN à partir de YOLO11 pour un déploiement en douceur ?

Le déploiement de modèles de vision par ordinateur sur des appareils dotés d'une puissance de calcul limitée, tels que les systèmes mobiles ou embarqués, peut s'avérer délicat. Vous devez vous assurer d'utiliser un format optimisé pour des performances optimales. Ce format permet de s'assurer que même les appareils dotés d'une puissance de traitement limitée peuvent traiter correctement les tâches de vision par ordinateur avancées.

La fonction d'exportation au format NCNN vous permet d'optimiser vos modèles pour des applications légères basées sur des appareils. Ultralytics YOLO11 pour des applications légères basées sur des appareils. Dans ce guide, nous vous expliquons comment convertir vos modèles au format NCNN , ce qui permet à vos modèles de fonctionner plus facilement sur divers appareils mobiles et embarqués.

Pourquoi exporter vers NCNN?

NCNN vue d'ensemble

Le cadre NCNN développé par Tencent, est un cadre informatique d'inférence de réseau neuronal haute performance optimisé spécifiquement pour les plateformes mobiles, y compris les téléphones mobiles, les dispositifs intégrés et les dispositifs IoT. NCNN est compatible avec un large éventail de plateformes, y compris Linux, Android, iOS, et macOS.

NCNN est connu pour sa vitesse de traitement sur les processeurs mobiles et permet un déploiement rapide des modèles d'apprentissage profond sur les plateformes mobiles. Cela facilite la création d'applications intelligentes, mettant la puissance de l'IA à portée de main.

Principales caractéristiques des modèles NCNN

NCNN offrent un large éventail de fonctionnalités clés qui permettent l'apprentissage automatique sur appareil en aidant les développeurs à exécuter leurs modèles sur des appareils mobiles, intégrés et périphériques :

  • EfficacitĂ© et haute performance: les modèles NCNN sont conçus pour ĂŞtre efficaces et lĂ©gers, optimisĂ©s pour fonctionner sur des appareils mobiles et embarquĂ©s tels que Raspberry Pi avec des ressources limitĂ©es. Ils peuvent Ă©galement atteindre des performances Ă©levĂ©es avec une grande prĂ©cision pour diverses tâches basĂ©es sur la vision par ordinateur.

  • Quantification: les modèles NCNN prennent souvent en charge la quantification, une technique qui rĂ©duit la prĂ©cision des poids et des activations du modèle. Cela permet d'amĂ©liorer encore les performances et de rĂ©duire l'empreinte mĂ©moire.

  • CompatibilitĂ©: Les modèles NCNN sont compatibles avec les cadres d'apprentissage profond les plus rĂ©pandus tels que TensorFlowCaffe, et ONNX. Cette compatibilitĂ© permet aux dĂ©veloppeurs d'utiliser facilement les modèles et les flux de travail existants.

  • FacilitĂ© d'utilisation: les modèles NCNN sont conçus pour ĂŞtre facilement intĂ©grĂ©s dans diverses applications, grâce Ă  leur compatibilitĂ© avec les cadres d'apprentissage profond les plus rĂ©pandus. En outre, NCNN propose des outils conviviaux pour convertir les modèles entre diffĂ©rents formats, ce qui garantit une interopĂ©rabilitĂ© fluide dans l'ensemble du paysage de dĂ©veloppement.

Options de déploiement avec NCNN

Avant d'examiner le code permettant d'exporter les modèles YOLO11 vers le format NCNN , il convient de comprendre comment les modèles NCNN sont normalement utilisés.

NCNN conçus pour l'efficacité et la performance, sont compatibles avec une variété de plateformes de déploiement :

  • DĂ©ploiement mobile: SpĂ©cifiquement optimisĂ© pour Android et iOS, il permet une intĂ©gration transparente dans les applications mobiles pour une infĂ©rence efficace sur l'appareil.

  • Systèmes embarquĂ©s et appareils IoT: Si vous trouvez que l'exĂ©cution de l'infĂ©rence sur un Raspberry Pi avec le guideUltralytics n'est pas assez rapide, le passage Ă  un modèle exportĂ© NCNN peut aider Ă  accĂ©lĂ©rer les choses. NCNN est idĂ©al pour les appareils tels que Raspberry Pi et NVIDIA Jetson, en particulier dans les situations oĂą vous avez besoin d'un traitement rapide directement sur l'appareil.

  • DĂ©ploiement sur ordinateur et serveur: Capable d'ĂŞtre dĂ©ployĂ© dans des environnements de bureau et de serveur sous Linux, Windows et macOS, il prend en charge le dĂ©veloppement, la formation et l'Ă©valuation avec des capacitĂ©s de calcul plus Ă©levĂ©es.

Exportation vers NCNN: Conversion de votre modèle YOLO11

Vous pouvez étendre la compatibilité des modèles et la flexibilité du déploiement en convertissant les modèles YOLO11 au format NCNN .

Installation

Pour installer les paquets nécessaires, exécutez :

Installation

# Install the required package for YOLO11
pip install ultralytics

Pour des instructions détaillées et les meilleures pratiques liées au processus d'installation, consultez notre guide d'installationUltralytics . Lors de l'installation des paquets requis pour YOLO11, si vous rencontrez des difficultés, consultez notre guide des problèmes courants pour obtenir des solutions et des conseils.

Utilisation

Avant de plonger dans les instructions d'utilisation, il est important de noter que si tous les modèlesUltralytics YOLO11 sont disponibles pour l'exportation, vous pouvez vous assurer que le modèle que vous sélectionnez prend en charge la fonctionnalité d'exportation ici.

Utilisation

from ultralytics import YOLO

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

# Export the model to NCNN format
model.export(format="ncnn")  # creates '/yolo11n_ncnn_model'

# Load the exported NCNN model
ncnn_model = YOLO("./yolo11n_ncnn_model")

# Run inference
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to NCNN format
yolo export model=yolo11n.pt format=ncnn  # creates '/yolo11n_ncnn_model'

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

Pour plus de détails sur les options d'exportation prises en charge, consultez la page de documentationUltralytics sur les options de déploiement.

Déploiement des modèles exportés YOLO11 NCNN

Après avoir exporté avec succès vos modèles Ultralytics YOLO11 au format NCNN , vous pouvez maintenant les déployer. La première étape recommandée pour exécuter un modèle NCNN consiste à utiliser la méthode YOLO("./model_ncnn_model"), comme indiqué dans l'extrait de code précédent. Toutefois, pour obtenir des instructions détaillées sur le déploiement de vos modèles NCNN dans divers autres contextes, consultez les ressources suivantes :

  • Android: Ce blog explique comment utiliser les modèles NCNN pour effectuer des tâches telles que la dĂ©tection d'objets via les applications Android .

  • macOS: Comprendre comment utiliser les modèles NCNN pour effectuer des tâches sous macOS.

  • Linux: Explorez cette page pour apprendre comment dĂ©ployer les modèles NCNN sur des appareils Ă  ressources limitĂ©es tels que Raspberry Pi et d'autres appareils similaires.

  • Windows x64 avec VS2017: Explorez ce blog pour apprendre Ă  dĂ©ployer des modèles NCNN sur windows x64 en utilisant Visual Studio Community 2017.

Résumé

Dans ce guide, nous avons étudié l'exportation des modèles Ultralytics YOLO11 vers le format NCNN . Cette étape de conversion est cruciale pour améliorer l'efficacité et la rapidité des modèles YOLO11 , ce qui les rend plus efficaces et plus adaptés aux environnements informatiques à ressources limitées.

Pour des instructions détaillées sur l'utilisation, veuillez vous référer à la documentation officielle NCNN .

Par ailleurs, si vous souhaitez explorer d'autres options d'intégration pour Ultralytics YOLO11 , n'hésitez pas à consulter notre page de guide d'intégration pour plus d'informations.

FAQ

Comment exporter les modèles Ultralytics YOLO11 vers le format NCNN ?

Pour exporter votre modèle Ultralytics YOLO11 vers le format NCNN , procédez comme suit :

  • Python: Utilisez la fonction export de la classe YOLO .

    from ultralytics import YOLO
    
    # Load the YOLO11 model
    model = YOLO("yolo11n.pt")
    
    # Export to NCNN format
    model.export(format="ncnn")  # creates '/yolo11n_ncnn_model'
    
  • CLI: Utilisez la fonction yolo avec la commande export argument.

    yolo export model=yolo11n.pt format=ncnn  # creates '/yolo11n_ncnn_model'
    

Pour plus de détails sur les options d'exportation, consultez la page Exportation dans la documentation.

Quels sont les avantages de l'exportation des modèles YOLO11 vers NCNN?

L'exportation de vos modèles Ultralytics YOLO11 vers NCNN présente plusieurs avantages :

  • EfficacitĂ©: les modèles NCNN sont optimisĂ©s pour les appareils mobiles et embarquĂ©s, ce qui garantit des performances Ă©levĂ©es mĂŞme avec des ressources informatiques limitĂ©es.
  • Quantification: NCNN prend en charge des techniques telles que la quantification qui amĂ©liorent la vitesse du modèle et rĂ©duisent l'utilisation de la mĂ©moire.
  • Large compatibilitĂ©: Vous pouvez dĂ©ployer les modèles NCNN sur plusieurs plates-formes, notamment Android, iOS, Linux et macOS.

Pour plus de détails, voir la section Export to NCNN dans la documentation.

Pourquoi devrais-je utiliser NCNN pour mes applications mobiles d'IA ?

NCNNdéveloppé par Tencent, est spécifiquement optimisé pour les plateformes mobiles. Les principales raisons d'utiliser NCNN sont les suivantes :

  • Haute performance: Conçu pour un traitement efficace et rapide sur les processeurs mobiles.
  • Multiplateforme: Compatible avec les frameworks les plus rĂ©pandus tels que TensorFlow et ONNX, ce qui facilite la conversion et le dĂ©ploiement des modèles sur diffĂ©rentes plateformes.
  • Soutien de la communautĂ©: Le soutien actif de la communautĂ© garantit des amĂ©liorations et des mises Ă  jour constantes.

Pour en savoir plus, consultez l'aperçu deNCNN dans la documentation.

Quelles sont les plateformes prises en charge pour ledéploiement du modèle NCNN ?

NCNN est polyvalent et prend en charge différentes plates-formes :

  • Mobile: Android, iOS.
  • Systèmes embarquĂ©s et appareils IoT: Appareils tels que Raspberry Pi et NVIDIA Jetson.
  • Ordinateurs de bureau et serveurs: Linux, Windows et macOS.

Si l'exécution des modèles sur un Raspberry Pi n'est pas assez rapide, la conversion au format NCNN peut accélérer les choses, comme indiqué dans notre guide Raspberry Pi.

Comment puis-je déployer les modèles Ultralytics YOLO11 NCNN sur Android?

Pour déployer vos modèles YOLO11 sur Android:

  1. Construire pour Android: Suivez le guide NCNN Build for Android.
  2. Intégrer à votre application: Utilisez le SDK NCNN Android pour intégrer le modèle exporté dans votre application pour une inférence efficace sur l'appareil.

Pour obtenir des instructions étape par étape, consultez notre guide sur le déploiement des modèles YOLO11 NCNN .

Pour des guides plus avancés et des cas d'utilisation, visitez la page de documentationUltralytics .

📅C réé il y a 8 mois ✏️ Mis à jour il y a 1 mois

Commentaires