
Neurala VIAを使った自動外観検査のデモ作成
近年、AIによる外観検査の自動化が注目されています。あるイベント用に、AI自動外観検査システム開発のソフトウェア「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枚ありました)。


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


次に画像のなかで評価して欲しい領域(Region of Interest)を設定します。マウスでドラッグして保存するだけです。
実はこの時点(ほとんど待った感じはないのですが)で、すでにある程度学習と評価が終わっています。Confusion Matrix(評価結果)をみると、検証用データはすべて正しく判断されているようです。念のため、Optimizeボタンを押して最適化も実行しておきます。Optimizeはフル最適化の設定で10分ほど待たされます。
以上で学習完了です。Deploy 画面で学習結果をInspectorに移行します。
いよいよ検査
検査の前に、(今回のデモでは必要なのですが)良品・不良品にたいする出力(Behavior)を設定します。それぞれを検出したとき、Modbusのどのアドレスに何の値を出力するか定義します。ここでは、デフォルトの適当な値にしています。
それでは最後にInspect画面に移動し、Start Inspect - Live(もしくはTEST)ボタンを押します。シャッターが切れるたびにライブ画像が更新され、左側に判定が表示されます。実際の工場検査ではModbusの出力のほうを利用すると思いますが、今回のデモはこのライブ映像で行います。


光の加減が開発時とイベント会場で違うので、展示会場での設置時に学習をやり直しましたが、(こまかい調整はしていないですが)20分ぐらいで一通りできました。
まとめ
VIAによる自動外観検査をデモ作成を通してご紹介しましたが、学習から検査までとても簡単に実現できる様子を感じていただけたら幸いです。ご質問・コメントなどございましたら、以下のボタンよりお気軽にお問い合せください。
このコラムの著者

株式会社ユビキタスAI
企画室 主席研究員
吉田 一茂​(よしだ かずしげ)
マイクロソフトの開発部門で25年間エンジニアを経験。言語・アプリケーション・OS開発をはじめ、組込からクラウドまで幅広いプログラミングをカバーする。帰国にあたりユビキタスAIに入社、企画室にて新規事業アイデアの立案やPoC作成、組織にわたる社内支援などを担当している。
より詳しく技術や関連製品について知りたい方へ
- 全製品・サービス一覧
- Linux/Android高速起動
- セキュリティ
- ソフトウェア開発支援・検証
- ミドルウェア
- ネットワークマネジメント
- リアルタイムOS
- BIOS
- AI
- コンサルティング/サービス
- マルチメディア
- エミュレータ/プログラマ
- 産業一覧
Automotive
自動車
Infortainment/ADAS(先進運転支援システム)/ECU/ドライブレコーダー
Industrial
産業用機器
ファクトリーオートメーション(FA)/ビルディングオートメーション(BAS)/オフィスオートメーション(OA)/プロセスオートメーション(PA)/POS
Consumer
民生機器
Digital Camera/Digital TV/IoT家電
Medical / Healthcare
医療 / ヘルスケア機器
手術用ロボット/血糖計/輸液ポンプ/体外血液循環装置/内視鏡/治療機器
Smart Energy
スマートエネルギー
太陽光発電/照明/EV/PHV/蓄電池/燃料電池/スマートメーター
PC / Server
PC / サーバー
ノートPC / デスクトップPC/産業用PC/エンタープライズサーバー/データセンター