マシンビジョンにおけるディープラーニングの真価
〜産業用画像処理ライブラリHALCONで実現する ディープラーニング機能〜

昨今、産業用画像処理においても機械学習やディープラーニングが重要なキーワードとなっている。HALCONの開発元であるMVTec社は、長期にわたってこれらの技術に取り組んでおり、実際の市場で多くの活用実績を誇る。本稿では、産業用画像処理分野におけるHALCONディープラーニング機能の活用例や特徴を紹介する。

はじめに

 ディープラーニングは、音声認識やビッグデータ解析など様々な分野において実用化が進んでおり、産業用画像処理においても適用が期待されている。

産業用画像処理分野で広く利用されている画像処理ライブラリHALCONでは、10年以上前から機械学習の機能を多く取り入れ、お客様に提供してきた。

また、最近ではディープラーニング技術の導入も積極的に進めている。本稿では、HALCONが提供しているディープラーニング機能について紹介する(図1)。

図1 画像処理ライブラリHALCON

HALCONディープラーニング機能概要

 HALCONには2,000を超える画像処理関数群が準備されており、ユーザはこれらを組み合わせて自身のニーズにあったアプリケーションを開発できる。

ディープラーニング機能も、画像処理関数群の中の1つとして、簡単に自社アプリケーションの中に組み込めるようになっている。 HALCONディープラーニング機能の使い方は非常に簡単であり、以下の3ステップで構築できる。

Step1:学習用画像の準備
Step2:「train_dl_classifier」を用いた学習
Step3:「apply_dl_classifier」を用いた分類

まず、ディープラーニングネットワークの学習を行うための画像群を準備する。HALCONのネットワークは、数10万枚の産業用画像群により事前トレーニングされているため、そのネットワークに対して追加学習を行う際は、1クラス当たり数百枚程度の画像でも効率よく学習することが可能となっている(図2)。

図2 学習用画像の準備

続いて、「train_dl_classifier」関数に画像群を入力する(フォルダを指定する)ことで、ネットワークの学習が行われる。ユーザは、HALCONの開発環境HDevelop上で、学習過程や性能を確認しながら、必要に応じていくつかのパラメータを調整しながら、学習を進めることができる(図3)。

図3 train_dl_classifierを用いた学習過程と結果確認の様子

分類は「apply_dl_classifier」関数に画像を渡すことで実行できる。ユーザは、ある画像がどのクラスに属するか、また、その信頼度(スコア)は何点か、といった結果を取得することができる(図4)。

図4 apply_dl_classifierを用いた分類アプリケーション例(採血管の状態検査)

このように、HALCONを用いることで、ディープラーニングの専門家でなくても、非常に簡単にディープラーニング機能を利用することが可能となっている。

現場導入が進むHALCONディープラーニング

1)液晶パネル外観検査
 デジタルカメラなどに使用される液晶ディスプレイを作成している大手電機メーカX社では、ルールベース画像処理による検査工程の自動化が進んでいる。

しかし、高い出荷品質が求められるため、画像処理設定も厳しくなっており、良品を不良品と判断するオーバーキルが多発し、歩留まりを下げているという課題がある。

そこで、従来のルールベース画像処理に、HALCONディープラーニングによる検査を組み合わせることで、出荷品質を維持しつつ、オーバーキルの確率を下げる取り組みが進められている。

HALCONディープラーニングは、1クラス当たり100枚程度の画像でトレーニングすることで機能するが、そのクラスを表す適切な画像が多ければ多いほど、分類性能は向上することが期待される。

今回は約10,000枚の画像を準備し、7,000枚でトレーニングを行い、3,000枚の画像に対して検証を行った。この例では、100%の精度で良否判定できている(図5)。

図5 液晶パネル外観検査

2)自動車金属部品外観検査
 鋳物などの自動車部品検査は、形状が複雑なこともあって、照明条件との兼ね合いなどから、アルゴリズムが非常に複雑になることがある。

大手自動車部品メーカA社では、ディープラーニングを導入することで、ルールベースでは検出することが困難な鋳肌の乱れ、バリ、穴の中や壁面のはがれなどを、官能検査に近い形で検出することに取り組んでいる。

HALCONディープラーニングを用いることで、画像処理知識をもたない部門でも、継続的な検査性能向上が可能となることを期待されている(図6)。

図6 自動車金属部品外観検査

3)食品外観検査装置
 たとえば麺類や菓子など、工業用部品のように決まった形をしていないものは、検査内容を定量化しにくいことがある。検査装置メーカF社は、HALCONを用いた多くの食品検査装置開発の実績があるが、それでも検査が困難な対象があることを良く理解されている。

現在、これまでルールベースでの画像処理検査が困難であった対象物の検査にディープラーニングを適用し、その精度を検証中である。定量化が困難な不定形物検査には、ディープラーニングがその力を発揮する(図7)。

図7 食品外観検査

HALCONディープラーニングの機能特徴

 上述のように、産業用画像処理市場へのディープラーニング導入が進み始めているが、ディープラーニングはすべての課題を解決する魔法のツールではない、ということの理解も同時に進み始めている。

マシンビジョンの課題を解決するために、およそ80%のディープラーニングアプリケーションが、既存の画像処理技術(ルールベースの画像処理)との組み合わせで実現されている。

HALCONは、産業用画像処理の分野で豊富な実績をもつ画像処理ライブラリであり、2,000を超えるルールベース画像処理関数群を提供している。

HALCONユーザは、実績豊富なルールベース画像処理機能とディープラーニング機能を簡単に組み合わせて、自身の課題を解決できる(図8)。また、HALCONディープラーニング機能は、他の画像処理機能と同様に、非常に簡単に扱えるようになっている。

図8 HALCONにおけるルールベースとディープラーニングの組み合わせ

MVTecは画像処理業界における20年の経験を元に、少ない関数とパラメータで必要十分な性能を出せるようなプリトレーニングネットワークと関数、および効果的なパラメータを提供している(図9)。 

図9 簡便なHALCONディープラーニングフレームワーク

さらに、HALCONディープラーニングの分類機能は、CPU単体で動作する。つまり、GPUを搭載していない通常の PC やノートパソコン上で、HALCONのディープラーニング分類機能が利用できる。

検査機にGPUを載せたくない(機器点数を増やしたくない、装置コストを落としたい)ユーザにとって、非常に有効な機能である。 ディープラーニング分類処理時間は、対象画像サイズによって変化する。

図10は、画像サイズごとのディープラーニング分類処理時間の変化を、GPUで処理した場合とCPUで処理した場合に分けて表したグラフである。

図10 HALCONディープラーニング分類処理時間グラフ

一般的に用いられる200×200pixel程度の画像の場合、GPUとCPUで処理時間にそれほど差はないが、画像のサイズが大きくなるにつれて、特にCPUでの処理時間が長くなっていくのが確認できる。

ただしそれでも、たとえば1,000×1,000pixelの画像をCPUで処理する場合であっても、処理時間は0.1秒以下であり、これは市場に存在する他のディープラーニング専用ライブラリやツール群と比べても非常に高速であるといえる。処理の高速性は、HALCONディープラーニング機能の大きなメリットである。

おわりに

 以上、HALCONディープラーニング機能の概要、適用例、特徴について紹介した。HALCONの開発元であるMVTec社は、産業用画像処理におけるディープラーニングの重要性と将来性を理解しており、今後も引き続き、産業用画像処理分野のアプリケーションに即した、ユーザが使いやすいディープラーニング技術をHALCONに導入していく。

HALCONディープラーニング機能を試してみたい方は、弊社ホームページから、無償評価キットであるHALCON Trial Kitをお申込いただきたい。約1ヵ月間、無償でディープラーニング機能を含んだHALCON最新版を評価いただくことができる。

また、弊社にて、ディープラーニング機能体験トレーニングを随時開催しており、こちらへのご参加も検討いただきたい。HALCONが、皆様の生産ラインや検査装置へのディープラーニング導入プロジェクトの一助となれば幸いである。

※映像情報インダストリアル2018年9月号より転載

問い合わせ
株式会社リンクス
TEL.03-6417-3371
E-mail:sales_halcon@linx.jp
https://linx.jp/   

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください