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モデル形式にエクスポートする方法を順を追って説明します。それでは始めましょう!
Link to this sectionNCNNの概要:軽量なニューラルネットワークフレームワーク#
NCNNは、Tencentが開発したオープンソースのニューラルネットワーク推論フレームワークです。モバイルおよびエッジ環境向けに特別に設計されており、最小限のフットプリントで高性能な推論を実現します。これにより、スマートフォン、ドローン、IoTデバイスなど、リソースが制限されたデバイスへのデプロイに最適です。
NCNNフレームワークは、その効率性、ポータビリティ、およびモバイルCPU(Central Processing Units)向けの最適化により、AIおよびディープラーニングコミュニティで人気を博しています。開発者は、限られたメモリと計算能力を備えた安価なデバイス上で、ニューラルネットワークモデルを動かすことができます。シンプルかつ柔軟に設計されたNCNNは、幅広いコンピュータビジョンモデルをサポートし、Android、Linux、iOS、macOSなど複数のプラットフォームで動作します。

Fig 1。NCNN形式のモデルは多くのプラットフォームでデプロイ可能です。
Link to this sectionNCNNパフォーマンス最適化の主な特徴#
NCNNが影響力のある広く利用されているニューラルネットワーク推論フレームワークである理由となっている主な特徴をいくつか紹介します。
- 軽量でハードウェアに依存しないランタイム: NCNNフレームワークは標準的なCPU上でモデルを実行するように最適化されており、GPU(Graphics Processing Units)やNPU(Neural Processing Units)のような専門的なハードウェアを必要としません。
- モデル量子化: メモリと速度が重要なアプリケーションでは、NCNNはモデルサイズを削減し推論時間を改善する量子化手法をサポートしています。これにより、AIモデルをモバイルデバイスや組み込みデバイスでスムーズに実行できます。
- オープンソースで利用可能: オープンソースのフレームワークとして、NCNNは誰でも自由に使用、変更、改善が可能です。これにより、さまざまなユースケースでの革新と幅広い採用が促進されます。
- 活発な開発とコミュニティ: NCNNは、Tencentと拡大する開発者コミュニティによってGitHub上で活発にメンテナンスされており、定期的なアップデートとモデル互換性の向上が行われています。
Link to this sectionYOLO11からNCNNモデル形式へのエクスポート:クイックガイド#
NCNNとは何かを説明しましたので、次はYOLO11モデルをNCNN形式にエクスポートする方法を詳しく見ていきましょう。
Link to this sectionステップ1:Ultralytics Pythonパッケージのインストール#
モデルをエクスポートする前の最初のステップは、パッケージインストーラーであるpipを使用してUltralytics Pythonパッケージをインストールすることです。これは、ターミナルまたはコマンドプロンプトで「pip install ultralytics」を実行することで行えます。Jupyter NotebookやGoogle Colabで作業している場合は、コマンドの前に感嘆符を付けて、「!pip install ultralytics」のようにしてください。
Ultralyticsパッケージは、さまざまなコンピュータビジョンのタスクに向けてビジョンAIモデルを学習、テスト、ファインチューニング、およびエクスポートするためのツールを提供します。インストール中やモデルのエクスポート中に問題が発生した場合は、公式のUltralyticsドキュメントと一般的な問題のガイドがトラブルシューティングに役立つ優れたリソースとなります。
Link to this sectionステップ2:Ultralytics YOLO11のエクスポート#
Ultralyticsパッケージをインストールしたら、YOLO11モデルを読み込み、NCNN形式にエクスポートできます。以下の例では、事前学習済みモデル("yolo11n.pt")を使用してNCNN形式でエクスポートし、出力を「/yolo11n_ncnn_model」という名前のフォルダに保存しています。
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="ncnn")エクスポートされた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」フォルダに出力画像が生成されます。

Fig 2. NCNN形式のエクスポートされたYOLO11モデルを使用してオブジェクトを検出。画像は著者提供。
Link to this sectionなぜNCNNによるリアルタイム検出を選択するのか#
Ultralyticsがサポートする様々なインテグレーションを確認すると、利用可能なエクスポートオプションが複数あることに気づくかもしれません。では、いつNCNN形式を選ぶべきなのでしょうか?
NCNNエクスポート形式は、リソースが限られたデバイスでYOLO11モデルをデプロイする必要がある場合に信頼できる選択肢です。特に、クラウドへの接続を必要とせず、エッジデバイスのようなデバイス上で直接動作するリアルタイムアプリケーションに役立ちます。つまり、モデルは物体検出などのタスクをその場で処理できるということです。
NCNNが適している一般的なシナリオをいくつか挙げます:
-
モバイルデプロイ: NCNN形式はAndroidおよびiOS用に最適化されており、モデルをモバイルアプリに簡単に統合して、最小限のレイテンシで高速なオンデバイス推論を実現できます。
-
組み込みシステムおよびIoTデバイス: Raspberry PiやNVIDIA Jetsonのようなデバイスにデプロイする場合、NCNNへエクスポートすることでパフォーマンスと応答性を向上させることができます。
-
デスクトップおよびサーバーデプロイ: NCNNは低電力デバイス向けに優れていますが、デスクトップおよびサーバー環境のLinux、Windows、macOSもサポートしています。これにより、開発者はデプロイに対して柔軟なオプションを持つことができます。

Fig 3. NCNNを使用したYOLO11モデルデプロイのオプション。画像は著者提供。
Link to this sectionNCNNを使用したYOLO11モデルデプロイのユースケース#
次に、YOLO11モデルをNCNNにエクスポートすることが真の違いを生む実用的なユースケースをいくつか掘り下げてみましょう。
Link to this section消防用ビジョンAIヘルメット#
カメラと組み込みマイクロコンピュータを搭載した安全ヘルメットは、建設や消防などの分野で、安全性と認識力を向上させるために使用できます。YOLO11のようなリアルタイムビジョンAIモデルをこれらのデバイス上で実行し、さまざまな種類のオブジェクトや機器を検出できます。例えば、このようなヘルメットは、視界が悪い状況下で消防士が人、障害物、または危険物を検出するのに役立ちます。
しかし、ウェアラブルデバイス上でフルサイズのモデルを直接実行すると、パフォーマンスが低下し、バッテリーを急速に消耗する可能性があります。この場合、NCNNインテグレーションを使用するのが賢明な選択です。これにより、低レイテンシでエネルギー効率の高い推論が可能になります。
Link to this section廃棄物分類とスマートゴミ箱#
同様に、スマートゴミ箱には、カメラと小型のエッジAIプロセッサを統合し、廃棄される材料を識別および分類できます。YOLO11のようなビジョンAIモデルは、紙、プラスチック、ゴムなど、異なる種類の廃棄物材料を検出するようにカスタム学習させることができます。
廃棄物が識別されると、その再利用性に基づいて自動的に個別のコンパートメントに分類されます。NCNN形式でエクスポートされたYOLO11モデルとともにエッジAIを使用することで、これらのゴミ箱はインターネット接続なしでローカルにデータを処理できます。これにより、最小限の遅延で自律的に動作し、リアルタイムで分類の判断を行うことができます。

Fig 4。YOLO11を使用したプラスチック廃棄物材料の検出。
Link to this sectionドローンとコンピュータビジョンを使用した家畜監視#
場合によっては、遠隔地の農業地域では安定したインターネット接続や安定した電力が不足しており、オンラインでAIアプリケーションを実行することが制限されます。そのような場合、エッジデバイスやドローンを使用してさまざまなタスクを処理できます。
良い例として、牛、羊、家禽などの家畜の監視があります。これはYOLO11のようなビジョンAIモデルを使用して行うことができ、動物の動きを追跡し、怪我、病気、または異常行動の兆候を検出し、動物が行方不明になったときに農家に警告するために使用されます。NCNNインテグレーションにより、このデータをエッジデバイス上で直接実行および処理することが可能となり、遠隔地やオフグリッド地域の農場での画像およびビデオ分析に最適です。

Fig 5。YOLO11を使用して家畜を監視する様子。
Link to this section重要なポイント#
UltralyticsがサポートするNCNNインテグレーションを使用してYOLO11モデルをエクスポートすることは、低電力環境にビジョンAIをもたらす直接的な方法です。被災地のドローン、スマート廃棄物分別箱、遠隔地の農場での家畜監視のいずれであっても、YOLOとNCNNは高速、効率的、かつポータブルなリアルタイムAI推論を可能にします。このアプローチは、AIシステムが最も重要な時に、よりアクセスしやすく信頼性の高いものにするのに役立ちます。
AIについてもっと知りたいですか?GitHubリポジトリを探索し、コミュニティとつながり、ライセンスオプションをチェックして、コンピュータビジョンプロジェクトを立ち上げましょう。小売におけるAIや医療におけるコンピュータビジョンのような革新がどのように未来を形作っているかについては、ソリューションページでご確認ください。






