アプリケーションの概要
工場や組み立てラインのオートメーションは急速に進歩しており、製造プロセスはよりインテリジェントなものとなっています。欠陥はプロセスの多くの段階で発生する可能性があり、検査は品質保証の重要なステップです。マシン ビジョン カメラは一般的な自動検査方法であり、欠陥のない製品をラインから送り出すために役立ちます。
エッジ AI とニューラル ネットワーク モデルには、従来のコンピュータ ビジョンのアプローチでよく見られる位置決めや向きに対する厳密な要件はありません。部品の小さな欠陥でも認識して分類することが可能です。ニューラル ネットワークは、堅牢でデータ駆動型の目視検査アプローチを提供するため、導入のハードルも低くなります。
C7™ NPU を搭載したマイクロプロセッサは、ビジョン タスクのニューラル ネットワークを高速化します。モデルは低レイテンシで動作し、カメラのフレームレート (> 60 FPS) と組み立てラインに追従します。画像信号プロセッサ (ISP)機能を実行するビジョン プリプロセッサ アクセラレータ (VPAC) など、追加のオンチップ アクセラレータを使用すると、高品質で高スループットの画像前処理を実行できます。これにより、ノイズを低減し、AI ベースの分析に使用するデータを準備できます。
評価を開始する
データ収集
トレーニング データは、工場ラインで使用されているものとほぼ同等のカメラから収集された画像です。照明は、リング ライトなどの追加の照明器具を含め、工場の状態と一致している必要があります。カメラ レンズは画質にも影響を与える可能性があるため、最終システムで使用されるレンズ (複数の選択肢がある場合は複数のレンズ) と一致している必要があります。
データセットのグラウンド トゥルースは、欠陥部品の上にバウンディング ボックスを配置して示すことも、画像マスクを使用して、欠陥のある特定の領域のピクセルを分離して示すこともできます。前者はネジのような小さい単純な部品の場合、後者は PCB のような大きい複雑なオブジェクトの場合に適しています。モデル アーキテクチャによって必要なアノテーション タイプが変わる可能性があるため、データにラベル付けする前にモデル タイプを選択します。
データ品質の評価
データセットには、実際の欠陥のタイプだけでなく、工場ラインで想定されている対象物の向きも含まれている必要があります。照明器具の部分的な故障も含め、照明の変動を想定しておくことで、機器の軽微な故障に対するモデルの堅牢性が向上します。
データセットには、欠陥がないサンプルと欠陥があるサンプルが含まれている必要があります。すべてのサンプルに欠陥があるとは限りません。画像内に欠陥が示されている必要があります。モデルをトレーニングしても、人の目で確認できない欠陥を識別できるようにすることはできません。
モデルを構築してトレーニング
CCStudio™ Edge AI Studio またはedgeai-modelmakerを使用すると、TI がサポートしているニューラルネットワーク向けにモデルをトレーニングできます。熟練した開発者は、異常検出にオートエンコーダーモデルを使用して、このタスクに取り組むことができます。
用途に適したモデルを検索
欠陥に最適なモデルタイプを選択してください。
- 物体検出モデル (YOLOX など):亀裂、部品の欠落、その他の大きな欠陥など、個別の独立した欠陥の発見に最適です。
- セマンティック セグメンテーション モデル (DeepLabv3 など):変色やテクスチャの問題など、表面レベルの問題を検出するのに最適です。
解像度と速度のバランス:
重要な小さい欠陥を捕捉するのに十分な高解像度を選択する必要がありますが、検査プロセスの速度を低下させるほど詳細である必要はありません。ほとんどのシステムでは、キャプチャされた元の画像を縮小して処理するデータの量を減らすことで、処理効率が向上します。
次のような場合は異常検出を検討してください。
欠陥が予測不可能な状況や、定義が困難な状況では、(オートエンコーダーを使用する) 異常検出モデルはより簡単なアプローチとなります。これらのモデルは、"正常な"製品がどのように見えるかを学習し、それと異なるものを潜在的な欠陥としてフラグ付けします。欠陥のサンプルをトレーニングする必要はありません。ただし、この種のモデルは Edge AI Studio や edgeai-modelmaker ではサポートされていないため、開発者はオートエンコーダー ニューラルネットワークを実装し、サポートされている形式 (ONNX など) にエクスポートする必要があります。
モデルの展開
モデルの展開では、ターゲット ハードウェア アクセラレータ用にモデルを事前にコンパイルする必要があります。Edge AI Studio や edgeai-modelmaker などのツールを使用すると、コンパイルが自動的に行われます。そうでない場合、モデルのコンパイルは BYOM (Bring Your Own Model) フローで TI の GitHub 上にある edgeai-tidl-tools などのソフトウェア パッケージを使用して別途実行する必要があります。
モデル アーティファクトは、ONNX Runtime、LiteRT(以前の tensorflow-lite)、TVMなどのランタイムを通じてデプロイされ、ハードウェア アクセラレーションのバックエンド ソフトウェアとしてTI Deep Learning (TIDL)が使用されます。
モデルをエンド ツー エンドのビジョン アプリケーションにデプロイするには edgeai-gst-apps を使用します。これにより、画像の前処理と後処理に加えて、AI モデル自体の高速化など、複数のハードウェア アクセラレーション ステージからパイプラインが構成されます。
TI では、edgeai-gst-apps に加えて、YOLOX-Nano オブジェクト検出ネットワークと edgeai-gst-apps をベースラインとして小型部品 (丸端子) の欠陥を検出するデモを作成しました。このモデルは、Edge AI Studio を使用してトレーニングを実施し、良好な部品と複数の種類の欠陥を認識できるようにしました。追加の後処理と可視化により、良好な部品と欠陥部品の数の統計値が表示されます。
お客様に最適なデバイスの選択
デバイスの選択は、必要な AI 性能のレベルとカメラのスループット (解像度とフレームレート) によって異なります。
以下の表に示すベンチマークは、SDK バージョン 10.1 を使用して作成されたものです。
| 製品番号 | プロセッシング コア | NPU が利用可能 | 欠陥検出ベンチマーク | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
YOLOX-Nano (416x416) のパフォーマンス |
SSD - Mobilenetv2 (512x512) のパフォーマンス |
DeepLabv3 セグメンテーション (512 x 512) のパフォーマンス | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| AM62A7 | 4x Arm® | 2 TOPS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| TDA4VE-Q1 | 4x Arm® | 8 TOPS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
FPS (フレーム/秒)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
開始に必要なすべてのハードウェア、ソフトウェア、およびリソース
ハードウェア
SK-AM62A-LP
AM62A は AM6xA ファミリの中で最も低コストの AI アクセラレーション対応デバイスであり、評価用途に最適です。画像の取得やライブデータでのモデル評価には、一般的な USB カメラやウェブカメラを使用できます
ソフトウェアおよび開発ツール
PROCESSOR-SDK-LINUX-AM62A
エッジ AI プロセッサ SDK は Linux ベースであり、コンパイル済みモデルをハードウェア アクセラレーションで実行するために必要なソフトウェア コンポーネントが含まれています。他のエッジ AI アクセラレーション プロセッサは、AM62A に置き換えることができます
CCStudio™ Edge AI Studio
このツールには、TI のエッジ AI プロセッサ向けにモデルの学習、コンパイル、デプロイを行うためのツールが含まれています。一般的なモデルの事前生成されたベンチマークを確認できるモデル選択ツールが用意されています。
コマンド ライン ツール
Linux および TIDL をサポートするマイクロプロセッサ デバイス向けツール。TI のエッジ AI ソリューションは、豊富なツールと最適化されたライブラリを提供することで、DNN の開発およびデプロイにおける製品ライフサイクル全体を簡素化します。
産業用 | ビジョン
C7™ NPU 搭載のプロセッサを使用して、画像から微細な障害物や経路をリアルタイムで検出