本文へスキップ
IFAI

オープンソース

製造現場の外観検査を自動化:オープンソース「Anomalib」とOpenVINOで推論速度4倍

公開 拡散指数 52

機械学習エンジニアがオープンソースの「Anomalib」を用いた製造業向け外観検査手法を解説しました。正常画像のみで学習する教師・生徒モデルにより欠陥をピクセル単位で特定でき、IntelのOpenVINOを活用することでCPU推論速度を約4倍の30.2fpsまで引き上げています。

製造現場の外観検査を自動化:オープンソース「Anomalib」とOpenVINOで推論速度4倍
画像:aws.amazon.com

Anomalibは、製造業における外観検査の自動化に特化したオープンソースの深層学習ライブラリです。欠陥データの収集やアノテーションに膨大な工数をかけることなく、高精度な異常検知パイプラインを構築できます。

製造現場における最大の課題は、不良品サンプルの少なさです。良品は大量にあっても、傷や凹みといった欠陥のパターンを事前に網羅することは困難です。Anomalibは正常画像のみを用いて学習するワンクラス学習を採用することで、この問題を解消しています。

正常品画像だけで欠陥を特定する仕組み

この手法の中核となるのは、ピラミッド型の教師・生徒ネットワーク構造です。教師モデルにはImageNetで事前学習済みのResNet18を使用し、生徒モデルにはランダム初期化された同一構成のResNet18を配置します。

検査時には、教師と生徒の両ネットワークが生成する特徴量の差分をピクセル単位で算出します。この差分スコアによって異常の確率を評価し、欠陥のサイズや位置をピクセルレベルで精密に特定します。

CPU環境での検証とOpenVINOによる高速化

ML6のエンジニアは、製造業向け検査の標準データセットであるMVTecの7カテゴリを用いて検証を実施しました。入力解像度は244x244、ハイパーパラメータはデフォルト値を使用しています。

検証環境にはAWS EC2のt3.xlargeインスタンスを採用しました。構成は4コアのIntel Xeon Platinum 8175M 2.50GHz vCPUと8GB RAMで、高価なGPUは一切使用していません。

評価結果では各カテゴリで高いスコアを記録し、特にレザーカテゴリでは満点を達成しました。

推論速度の面でも大きな改善が見られました。通常のPyTorch実装をCPU上で動かした場合の速度には限界がありますが、Anomalibの機能でIntelのOpenVINO形式にエクスポートしたところ、ボトルカテゴリの推論速度は約30.2fpsに達し、素のPyTorch比で約4倍の高速化を確認できました。

AnomalibはGitHubで公開されており、ベンチマークツールや各種ハードウェア向けのエクスポート機能が揃っています。

なぜ重要か

工場のライン検査やエッジ環境での開発において、極めて実用的な選択肢です。欠陥画像の収集・分類という重労働から解放されるだけでなく、OpenVINOを組み合わせることで安価なCPU上で30fpsの実用的なリアルタイム処理が成立します。

一方で、ワンクラス学習は正常画像の品質に大きく依存します。学習データに不良品が紛れ込んでいたり、現場の照明環境が激しく変動したりすると誤検知の原因になります。実ラインへ投入する前のしきい値調整は不可欠です。

情報源 (2)

  1. [1]
    medium.com(新しいタブで開きます)原文medium.com
  2. [2]

毎日のAIピックアップ