Neurala VIAを使った自動外観検査のデモ作成

近年、AIによる外観検査の自動化が注目されています。あるイベント用に、AI自動外観検査システム開発のソフトウェア「VIA - ヴィア 」を使った自動外観検査の展示用デモを作成しましたので、作成の様子や製品の特長をご紹介します。

デモシステム全体写真VIAの画面

「VIA - ヴィア」 とは

VIAを開発したNeurala社 (アメリカ、ボストン)は、特許技術Lifelong-Deep Neural Network©(L-DNN)という独自の画像認識ニューラルネットを柱にしたテクノロジー企業です。L-DNNは、非常に少ない教師データと学習・推論コストで、分類や異常検知できることが特長です。下に掲載したデモでは、ほんの数枚の静止画で新しい物体を学習する様子を実演しています。

VIAは、カメラ画像から不良品を検知または分類することができる、L-DNNを利用した自動外観検査用のPC向けパッケージソフトです。

VIAの特長

  • プログラミングやAIなどの知識・開発なしで、個別の製品向けの自動外観検査を実現
  • 非常に少ない教師データ(数十枚~)・短時間(数秒~十数分)で学習
  • GPUなどを必要とせず、安価な汎用(産業用を含む)PCで動作

VIAを使うことで、非常に低コスト・労力で自動外観検査を導入することができます。特に少量多品種のケースでは、製品ごとに専門家に再学習を依頼する必要がなく、現場で新しい製品の学習を行えるので、とても効率的です。 VIAの入力は、イーサネットでつながった市販のGigEカメラ(最大4台)で行い、検査結果は画面に表示・ログをとるほか、Modbus/TCPとして出力されます。これにより、例えばラインを停止したりアラームを発生したりするようなシステムを、VIA自体を変更することなく拡張することができます。

デモの概要

これまでVIAのデモは、事前に用意した工場ラインのストリーム映像で行っていたのですが、今回ちょっとした工作をして、リアルタイムでの外観検査にトライしてみました。

利用した機材

  • オムロン製産業用PC NYB35 (Core i5, メモリ8GB, Windows10 IoT)
  • オムロン センテック GigE Vision STC-MBS202P0E(モノクロ)
  • PoE対応ネットワークハブ

タミヤの工作シリーズで、簡易ベルトコンベアー(実はキャタピラなんですが)を工作して、その上にカメラを取り付けました。ベルトに100均で購入したボタンをくくりつけ、1つだけ欠けているボタンを配置しています。

デモシステムの全体構成簡易ベルトコンベアーとボタン

ボタンがある定位置のときにシャッターを切るようにするのですが(ハードウェアトリガーというらしいです)、予算と時間の都合でビームセンサなどは利用できなかったので、プラバンと銅鋲でボタン検知装置を作りました。ボタンがプラバンを押すと銅鋲が一度離れ、通過して銅鋲が再び接触して通電します。この電圧をカメラ裏の入力端子に入れると、電圧上昇時にシャッターが切れるしくみです。カメラの設定は以下のような感じです。

カメラの設定画面

学習のようす

VIAは、InspectorとBrainBuilderという2つの Windowsアプリで構成されます。まずは 、Inspectorを使って画像をキャプチャします。CAPTURE IMAGEボタンを押すと、動いているベルトコンベアを撮影したカメラ画像が次々に指定フォルダに保存され、枚数が100枚程度になったらキャプチャをストップします。最初から不良品を除いておく方法もあると思いますが、今回は混在した状態でキャプチャして、目視で不良品の画像を別フォルダに移動しました(5枚ありました)。

Inspectorの画面Inspectorによってキャプチャされた画像

次にBrainBuilderに移動して、キャプチャした画像を取り込みます。学習は良品のデータだけでよいのですが、評価のため不良品のデータも取り込んでおきます。今回アップロードした画像のうち、良品画像78枚が学習に、良品19枚不良品5枚が検証用に使われるように自動的にアレンジされています。

BrainBuilderの画面BrainBuilderでのデータ取り込み

次に画像のなかで評価して欲しい領域(Region of Interest)を設定します。マウスでドラッグして保存するだけです。

Region of Interestの設定

実はこの時点(ほとんど待った感じはないのですが)で、すでにある程度学習と評価が終わっています。Confusion Matrix(評価結果)をみると、検証用データはすべて正しく判断されているようです。念のため、Optimizeボタンを押して最適化も実行しておきます。Optimizeはフル最適化の設定で10分ほど待たされます。

Optimize中の様子

以上で学習完了です。Deploy 画面で学習結果をInspectorに移行します。

いよいよ検査

検査の前に、(今回のデモでは必要なのですが)良品・不良品にたいする出力(Behavior)を設定します。それぞれを検出したとき、Modbusのどのアドレスに何の値を出力するか定義します。ここでは、デフォルトの適当な値にしています。

Behaviorを設定する

それでは最後にInspect画面に移動し、Start Inspect - Live(もしくはTEST)ボタンを押します。シャッターが切れるたびにライブ画像が更新され、左側に判定が表示されます。実際の工場検査ではModbusの出力のほうを利用すると思いますが、今回のデモはこのライブ映像で行います。

検査中の画面検査中の画面

光の加減が開発時とイベント会場で違うので、展示会場での設置時に学習をやり直しましたが、(こまかい調整はしていないですが)20分ぐらいで一通りできました。

まとめ

VIAによる自動外観検査をデモ作成を通してご紹介しましたが、学習から検査までとても簡単に実現できる様子を感じていただけたら幸いです。ご質問・コメントなどございましたら、以下のボタンよりお気軽にお問い合せください。


製品情報

AI による自動外観検査システム開発ソリューション

VIA - ヴィア

複数カメラや立体認識にも対応
製品ページを見る

センサーと機械学習をつかったジェスチャー認識

コラムを読む

機械学習を使ったMPCによる空調制御デモ

コラムを読む

次世代匿名加工技術DNATが機械学習モデルの学習に与える影響

コラムを読む

プライバシー保護 VS 先端技術

コラムを読む

VectorBlox™でNeutrino™のAI最適化検証

コラムを読む

組込み機器のスマート化で取り組むSDGs

コラムを読む