Ultralytics YOLO11モデルをNCNNモデル形式にエクスポートする
Ultralytics YOLO11モデルをNCNNモデル形式にエクスポートし、電力とコンピューティングリソースに制約のあるエッジデバイスで、効率的かつ低レイテンシーのAI推論を実行します。

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の公式ドキュメントとよくある問題のガイドがトラブルシューティングに役立ちます。
ステップ2:Ultralytics YOLO11をエクスポートする#
Ultralyticsパッケージをインストールしたら、YOLO11モデルを読み込み、NCNN形式にエクスポートできます。以下の例では、事前学習済みモデル(「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や医療におけるコンピュータービジョンなどのイノベーションが、ソリューションページで未来をどのように形作っているかをご覧ください。









