Ultralytics YOLO11モデルをNCNNモデル形式にエクスポート
Ultralytics YOLO11モデルをNCNN形式にエクスポートし、電力や計算リソースに制約のあるエッジデバイスで、効率的かつ低遅延の推論を実行します。
Abirami Vina9 分で読めます
AIソリューションは、災害管理、廃棄物管理、消防など、重大な結果を伴う分野でも普及しつつあります。導入が進むにつれて、AIモデルはサーバーやクラウドだけでなく、現場で稼働するデバイス上など、より多様な環境に展開されています。
たとえば、小型プロセッサーを搭載したエッジデバイスを備えるドローンや機器は、災害現場で重要な役割を果たす可能性があります。サーマルカメラを搭載したこれらのデバイスは、現場でデータを収集・分析し、がれきの下に閉じ込められた人を捜索できます。これは、画像や動画の視覚情報を解釈する人工知能の一分野であるコンピュータービジョンによって実現します。
しかし、エッジデバイスへのビジョンAIモデルのデプロイは、見た目ほど簡単ではありません。AIモデルは、計算能力とメモリに制約のあるハードウェア上で効率よく動作するよう最適化する必要があります。そのため、NCNNのようなAIフレームワークが不可欠です。こうしたフレームワークは、精度をほとんど損なわずに、低消費電力デバイスでリアルタイムに動作するようモデルを変換、最適化するのに役立ちます。
特に、Ultralytics YOLO11などのUltralytics YOLOモデルは、UltralyticsがサポートするNCNN統合を使用して、簡単にNCNNモデル形式へエクスポートできます。YOLO11をNCNNモデル形式に変換すると、精度の低下を最小限に抑えながら、モデルの実行速度を高め、メモリ使用量を減らし、さまざまなデバイスでスムーズに動作させることができます。
この記事では、UltralyticsがサポートするNCNN統合を紹介し、YOLO11モデルをNCNNモデル形式にエクスポートする方法を説明します。
NCNNの概要:軽量なニューラルネットワークフレームワーク#
NCNNは、Tencentが開発したオープンソースのニューラルネットワーク推論フレームワークです。モバイルおよびエッジ環境向けに特別に設計されており、最小限のフットプリントで高性能な推論を実現します。そのため、スマートフォン、ドローン、IoT(モノのインターネット)デバイスなど、リソースに制約のあるデバイスへの展開に最適です。
NCNNフレームワークは、効率性、移植性、モバイルCPU(中央処理装置)向けの最適化により、AIおよびディープラーニングのコミュニティで広く使われるようになりました。メモリと処理能力が限られた手頃なデバイス上で、ニューラルネットワークモデルを実行できます。シンプルさと柔軟性を重視して設計されたNCNNは、幅広いコンピュータービジョンモデルをサポートし、Android、Linux、iOS、macOSなど複数のプラットフォームで動作します。

図1。NCNN形式のモデルはさまざまなプラットフォームに展開できます。
NCNNの性能最適化における主な機能#
NCNNが影響力の大きい広く使われるニューラルネットワーク推論フレームワークとなっている主な機能をご紹介します。
- 軽量でハードウェアに依存しないランタイム: NCNNフレームワークは一般的なCPU上でモデルを実行するよう最適化されており、GPU(グラフィックス処理装置)やNPU(ニューラル処理装置)などの専用ハードウェアを必要としません。
- モデル量子化:メモリと速度が重要なアプリケーション向けに、NCNNはモデルサイズを縮小し、推論時間を短縮する量子化手法をサポートしています。これにより、モバイルデバイスや組み込みデバイスでAIモデルをスムーズに実行できます。
- オープンソースで利用しやすい: オープンソースフレームワークであるNCNNは、誰でも無料で利用、変更、改善できます。これにより、さまざまな用途でイノベーションと幅広い導入が促進されます。
- 活発な開発とコミュニティ: NCNNはTencentと拡大を続ける開発者コミュニティによってGitHub上で積極的に保守されており、定期的なアップデートとモデル互換性の改善が行われています。
Ultralytics YOLO11をNCNNモデル形式にエクスポートする:簡単なガイド#
NCNNについて説明したところで、Ultralytics YOLO11モデルをNCNN形式にエクスポートする方法を詳しく見ていきましょう。
ステップ1:Ultralytics Pythonパッケージをインストールする#
モデルをエクスポートする前に、まずパッケージインストーラーのpipを使ってUltralytics Pythonパッケージをインストールします。ターミナルまたはコマンドプロンプトでpip install ultralyticsを実行します。Jupyter NotebookまたはGoogle Colabを使用する場合は、次のようにコマンドの前に感嘆符を追加します: !pip install ultralytics。
Ultralyticsパッケージには、さまざまなコンピュータービジョンタスク向けのビジョンAIモデルをトレーニング、テスト、ファインチューニング、エクスポートするためのツールが用意されています。インストール中やモデルのエクスポート中に問題が発生した場合は、トラブルシューティングに役立つリソースとして、Ultralyticsの公式ドキュメントとCommon Issues guideをご覧ください。
ステップ2:Ultralytics YOLO11のエクスポート#
Ultralyticsパッケージをインストールしたら、YOLO11モデルを読み込み、NCNN形式にエクスポートできます。以下の例では、事前トレーニング済みのYOLO11nモデル(yolo11n.pt)を使用してNCNN形式にエクスポートし、出力をyolo11n_ncnn_modelという名前のフォルダーに保存します。
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="ncnn")エクスポートしたUltralytics YOLO11モデルは、スマートフォン、組み込みシステム、IoTプラットフォームなど、さまざまな軽量デバイスにデプロイできます。デプロイのプロセスも非常に効率的です。
たとえば、以下のコードスニペットでは、エクスポートしたモデルを読み込んで推論を実行する方法を示しています。推論とは、トレーニング済みモデルを使って、未学習の新しいデータに対する予測を行うプロセスです。この例では、一般公開されているURLから取得した、自転車に乗る男性の画像でモデルをテストします。
ncnn_model = YOLO("./yolo11n_ncnn_model")
results = ncnn_model("https://images.pexels.com/photos/19431209/pexels-photo-19431209/free-photo-of-a-man-riding-a-bike-on-a-road.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)コードを実行すると、出力画像がruns/detect/predictフォルダーに保存されます。

図2. NCNN形式にエクスポートしたUltralytics YOLO11モデルによる物体検出。画像提供:著者。
NCNNによるリアルタイム検出を選ぶ理由#
Ultralyticsがサポートするさまざまなインテグレーションを確認すると、複数のエクスポートオプションがあることに気付くかもしれません。では、NCNN形式はどのような場合に選ぶべきでしょうか。
NCNNエクスポート形式は、リソースが限られたデバイスにUltralytics YOLO11モデルをデプロイする際に、信頼性の高い選択肢です。クラウドへの接続が不要で、エッジデバイスなどのデバイス上で直接動作するリアルタイムアプリケーションに特に役立ちます。これにより、モデルは物体検出などのタスクをその場で実行できます。
NCNNが適している一般的なシナリオをいくつか紹介します。
- モバイルへのデプロイ: NCNN形式はAndroidとiOS向けに最適化されているため、モデルをモバイルアプリに簡単に組み込むことができ、レイテンシーを最小限に抑えながらデバイス上で高速に推論できます。
- 組み込みシステムとIoTデバイス: Raspberry PiやNVIDIA Jetsonなどのデバイスにデプロイする場合、NCNN形式にエクスポートすると、性能と応答性を高めることができます。
- デスクトップとサーバーへのデプロイ: NCNNは低消費電力デバイスに適していますが、デスクトップやサーバー環境向けにLinux、Windows、macOSもサポートしています。これにより、開発者は柔軟なデプロイ方法を選択できます。

図3. NCNNを使用したUltralytics YOLO11モデルのデプロイオプション。画像提供:著者。
NCNNを使用したUltralytics YOLO11モデルのデプロイ事例#
次に、Ultralytics YOLO11モデルをNCNN形式にエクスポートすることで大きな効果が得られる、実用的なユースケースをいくつか見ていきましょう。
消防活動向けビジョンAIヘルメット#
カメラと組み込み型マイクロコンピューターを搭載した安全ヘルメットは、建設や消防などの現場で、安全性と状況認識の向上に活用できます。Ultralytics YOLO11のようなリアルタイムビジョンAIモデルをこれらのデバイス上で実行すれば、さまざまな種類の物体や装備を検出できます。たとえば、視界が悪い状況で、人や障害物、危険要因の検出を消防士に支援できます。
ただし、ウェアラブルデバイス上で大規模なモデルを直接実行すると、処理が遅くなり、バッテリーも急速に消耗する可能性があります。このような場合、NCNNインテグレーションを使用するのが効果的です。低レイテンシーで電力効率の高い推論が可能になります。
廃棄物の分類とスマートごみ箱#
同様に、スマートごみ箱はカメラや小型のエッジAIプロセッサと組み合わせることで、廃棄される素材を識別し、分別できます。YOLO11などのビジョンAIモデルは、紙、プラスチック、ゴムなど、さまざまな廃棄物を検出するようカスタムトレーニングできます。
廃棄物を識別した後、再利用可能性に基づいて別々の区画に自動で仕分けできます。エッジAIとNCNN形式にエクスポートしたUltralytics YOLO11モデルを組み合わせることで、ごみ箱はインターネット接続なしでデータをローカル処理できます。そのため自律的に動作し、遅延を最小限に抑えてリアルタイムで仕分けを判断できます。

図4。YOLO11によるプラスチック廃棄物の検出。
ドローンとコンピュータービジョンを活用した牛のモニタリング#
遠隔地の農業地域では、安定したインターネット接続や継続的な電源を利用できないことがあり、AIアプリケーションをオンラインで実行するのが難しい場合があります。そのような場合、エッジデバイスやドローンを使ってさまざまなタスクに対応できます。
牛、羊、家禽などの家畜のモニタリングが好例です。YOLO11のようなビジョンAIモデルを使用して、動物の動きを追跡し、負傷、病気、異常行動の兆候を検出し、動物が行方不明になった際に農家へ通知できます。NCNNインテグレーションを使えば、こうしたデータをエッジデバイス上で直接実行・処理できるため、遠隔地や電力網のない農場での画像・動画解析に適しています。

図5。YOLO11を使用した家畜のモニタリング例。
重要なポイント#
UltralyticsがサポートするNCNN統合を使ってYOLO11モデルをエクスポートすることは、低消費電力環境にビジョンAIを導入する簡単な方法です。災害地域でのドローン、スマートごみ分別箱、遠隔地の農場での家畜モニタリングなど、YOLOとNCNNを組み合わせると、高速で効率的かつポータブルなリアルタイムAI推論が可能になります。このアプローチにより、最も重要な場面でAIシステムをより利用しやすく、信頼性の高いものにできます。
AIについて詳しく知りたい方は、GitHubリポジトリをご覧いただき、コミュニティに参加し、コンピュータービジョンプロジェクトを始めるためにライセンスオプションをご確認ください。ソリューションページでは、小売業におけるAIや医療分野のコンピュータービジョンなどのイノベーションが未来をどのように形作っているかをご覧いただけます。
執筆者
コメント
質問したり、結果を共有したり、ほかの人をサポートしたりできます。










