Science/Research 詳細

マシンビジョンにおけるディープラーニング・ニューラルネットワークの導入方法

May, 13, 2025--マシンビジョンシステムやアプリケーションの開発には、数多くのディープラーニング手法が利用可能である。市販のソフトウエアツールを使用すれば、専門家でなくてもディープラーニングを活用できる。

学習内容:
・自動化やマシンビジョンアプリケーションに適した、異常検知や画像セグメンテーションなどのディープラーニングのさまざまな手法について。
・マシンビジョンにおいてディープラーニングを活用するべき状況について。
・マシンビジョンアプリケーションへのディープラーニング導入の始め方について。

 人工知能やディープラーニングに関する議論では、「ニューラルネットワーク」、「ブラックボックス」、「ラベリング」といった用語をよく耳にする。これらの概念は、一般の人にとって理解しにくい。また、ディープラーニング技術を真に習得し、適切に活用するには、確かなプログラミングスキルが必要だと思い込んでしまう人もいる。残念ながら、こうした印象は、ディープラーニング技術がマシンビジョン、ひいては生産自動化にもたらす可能性を見落としている。ディープラーニングは、コンピュータ科学者やプログラマーだけのものではない。

まずは基礎から:ディープラーニングとは?
 機械学習のサブセットであるディープラーニングは、人間の脳の複雑な構造やプロセスをリアルに模倣し、独立した意思決定を行う能力を持つ多層ニューラルネットワークに基づいている。包括的なトレーニングプロセスにおいて、ディープラーニングモデルは、データを分析することで特定のパターンや関係性を識別する。
 理論的な側面については以上である。では、なぜこの技術がマシンビジョンの分野でこれほど成功しているのだろうか?それは、マシンビジョンが膨大な量の画像データを生成するからである。これは、ニューラルネットワークを効果的にトレーニングするための完璧な基盤となる。これが技術的な側面である。同時に、ユーザーもこの技術の恩恵を受けている。ディープラーニングが実現する認識率は、かつてないほど向上している。これにより、マシンビジョンをベースにした全く新しいアプリケーションの自動化も可能になる。ディープラーニングは、マシンビジョン全体に新たな推進力を与える開発である。
 そのため、ディープラーニングの活用に価値を見出す人の数は着実に増加している。規模の大小を問わず、多くの企業が人工知能(AI)やディープラーニングの導入を検討している。しかしながら、多くの場合、導入をためらうような懸念事項がある。とはいえ、ディープラーニングの活用は想像するほど複雑ではない。ディープラーニングの活用を容易にするツールも存在する。

アプリケーションごとに最適なディープラーニング手法
 導入において最も重要なのは、「具体的に何を自動化したいのか」という点だ。インテグレーター、プラントオペレーター、機械メーカーなど、この課題に取り組むすべての人々が利用できるディープラーニング手法は、常に拡大している。

異常検知
 異常検知は、欠陥を非常に迅速かつ容易に認識することを可能にし、品質管理プロセスにおける欠陥検査の効率をさらに向上させる。この技術の大きな利点の1つは、従来のディープラーニング手法と比較して、必要なトレーニングデータが大幅に少ないことである。実際、完全なトレーニングセッションに必要な画像は20~100枚だけだ。さらに、異常検知には良質な画像があれば十分なので、トレーニングデータセットをはるかに迅速に生成できる。良好な画像に基づいて学習された異常検知モデルは、学習画像からの構造的な逸脱、つまり異常を検知できるようになる。これにより、これまで明らかではなかった欠陥も検知できるようになる。

グローバルコンテキスト異常検知
 グローバルコンテキスト異常検知はさらに一歩進んでおり、部品の欠落、変形、配置ミスなど、全く新しい異常のバリエーションを認識できる。その結果、故障検知は構造上の欠陥だけでなく、論理的な異常も対象とする。これは、半導体製造におけるプリント基板の検査や印刷の検証など、全く新しい可能性への道を開く。

分類
 分類は、画像データを用いて、オブジェクトを良品や不良品など、特定のカテゴリーまたはクラスに分類する。これにより、個々の画像に対して一定の確率でクラスを判定することが可能になる。

オブジェクト検知
 ディープラーニングに基づくオブジェクト検知技術は、オブジェクトの位置とクラスを特定する。このプロセスは、画像内の位置を含め、異なるオブジェクトクラスやオブジェクトインスタンスのさまざまなオブジェクトエンティティを認識することができる。

セグメンテーション
 ディープラーニングに基づくセグメンテーションには、セマンティックセグメンテーションとインスタンスセグメンテーションの2種類がある。
 セマンティックセグメンテーションは、学習済みの物体、構造物、および欠陥の位置をピクセル単位で正確に分類する。このプロセスでは、画像内の各ピクセルに特定のクラスが割り当てられる。学習データに基づいてモデルを学習させることで、新しい画像内の各ピクセルに対して高い確率で特定のクラスを予測できる。このアプローチにより、これまでは不可能だった、あるいは多大なプログラミング労力をかけてしか実現できなかった検査タスクが可能になる。
 インスタンスセグメンテーションは、セマンティックセグメンテーションの利点と物体検知の利点を組み合わせたものである。このタイプのセグメンテーションにより、物体をピクセル単位で正確に異なるクラスに割り当てることができる。この技術は、物体が非常に接近していたり​​、接触していたり​​、重なり合ったりしているようなアプリケーションで特に役立つ。代表的なアプリケーションとしては、ランダムに配置された物体をビンからつかむこと(ランダムビンピッキング)や、自然に形成された構造物を識別・測定することなどが挙げられる。

エッジ抽出
 この技術は、ディープラーニングを用いてエッジをロバストに抽出する、比較的新しくユニークな手法である。画像内に存在する多数のエッジから、必要なエッジのみを確実に抽出する。また、低コントラストやノイズの多い状況でもエッジをロバストに認識できるため、従来のエッジ認識フィルタでは識別できないエッジも抽出できる。この技術は、通常、ルールベースのマシンビジョン手法と組み合わせて使用​​される。

ディープOCR
 OCR(光学式文字認識)は、テキストの識別と分類に使用できる。ディープラーニングアルゴリズムに基づくこの技術は、ディープOCRとも呼ばれる。斜めのテキスト、歪んだ文字、反射面に印刷または刻印された文字、テクスチャの強い色付き背景など、認識が難しい状況でも、ロバストな結果を得ることができる。ディープOCRでは、文字が自動的にグループ化されるため、単語を識別できる。これにより、例えば、似たような外観の文字の誤認識を回避するなど、認識性能が向上する。

ディープカウンティング
 ディープカウンティングにより、多数の物体を非常に迅速に特定し、個数を数えることができる。この技術は、部品の形状だけでなく、ディープラーニングのアプローチを用いて、色、模様、質感といった他の特徴も考慮する。特に、ディープカウンティングは、反射率の高い非晶質素材で作られた物体であっても、非常に堅牢な結果を達成できることが大きな利点である。また、互いに接触したり、部分的に重なり合ったりする大量の物体も、確実に記録できる。そのため、この技術は、食品・飲料業界における幅広い製品の個数計測や、ナットやボルトなどの小型製品の正確かつ完全な梱包に最適である。

ディープラーニングが最も効果を発揮する分野とは?
 ディープラーニングは全く新しい応用分野を開拓し、マシンビジョンにあまり精通していない人や、アルゴリズムを自分でプログラミングしたくない人を含め、より多くの人々がマシンビジョンを利用できるようになる。AIシステムは、通常、独自の画像ファイルでセットアップできる。その利点は、ニューラルネットワークを学習させることで、AIが従来のアルゴリズムよりも堅牢な結果をもたらすことが多いことである。例えば、従来のマッチングは、すべての物体が全く同じに見える場合に非常に有効だ。しかし、AIが真価を発揮するのは、果物や野菜のように自然に変化が生じるような、データに大きなばらつきがある場合である。このような場合、表面が良好な状態とそうでない状態を事前に明確に定義することは困難だ。もう1つのユースケースは、非常に高い品質基準を持つ製造業でである。
 一部の企業では、製造エラーがほとんど発生せず、ルールベースシステムに提供できるエラー画像も存在しない。1万個の物体のうち1個しか欠陥が発生しない可能性もある。しかし、企業はこれがどのように機能するかを事前に正確に把握していない。 そこで、AIベースの異常検知が役立つ。この技術は良品のみに基づいて学習されるため、不良品の外観を事前に把握する必要はない。このようなアプリケーションは、従来のルールベースプログラミングでは実現不可能だった。
 しかし、完璧なマシンビジョンアプリケーションを実現する理想的な方法は、ディープラーニングアルゴリズムとルールベースマシンビジョン技術を組み合わせることである。そのようなアプリケーションの一例としては、次のようなものが挙げられる。企業はAIを用いて事前分類を行い、関心領域を特定する。この領域内では、従来の手法を用いて高精度な測定を行うことができる。これにより、アプリケーション全体の速度が向上し、結果の精度が向上する。

マシンビジョンにおけるディープラーニングの活用方法
 アプリケーションを実行するには、まず、カメラ、適切な照明、そして高性能CPU、あるいはさらに優れたGPUを搭載した産業用PCなどの適切なコンピュータハードウエアで構成される、標準的なマシンビジョンシステムが必要である。しかし、あらゆるマシンビジョンシステムの中核を成すのは、MVTecをはじめとするさまざまな企業が提供する強力なマシンビジョンソフトウエアである。

学習用画像データの最適な準備
 ディープラーニングアプリケーションを使用するには、まず学習用画像にラベルを付ける必要がある。ラベル付けの目的は、画像におけるAIモデルの目的の出力を記述することだ。このような情報としては、画像のクラスや画像内の物体の位置などが挙げられる。直感的なユーザーインタフェースを備えたソフトウエアを使えば、初心者でも簡単にラベル付けを行うことができ、プログラミングスキルがなくても使用できる。次のステップ(データの準備)に進む際には、画像データが最適に準備された形式で入手できる必要があることに留意する。
 特に実用的な点は、異常検知などのいわゆる「教師なし」手法と呼ばれるディープラーニング技術の学習には、良好な画像があれば十分であるということである。これらの画像は簡単に入手できる。さらに、必要な画像データセットの数は、検査対象物の状態に応じて20~100枚の良好な画像だ。学習プロセス自体はボタンを押すだけで実行される。

ディープラーニングのブラックボックスを垣間見る
 ディープラーニングに対する批判の1つは、意思決定プロセスの透明性の欠如である。以下に説明する最新の技術開発は、このブラックボックス内部で何が起こっているかを完全に明らかにすることはできないが、ニューラルネットワークの内部動作に関する一定の知見を提供している。ヒートマップを用いて意思決定に関連する画像領域を強調表示するツールがある。これは、ディープラーニングアルゴリズムの動作を追跡したり、影響を与えたりする方法である。
 分布外検知(OOD)技術により、動作中に誤った分類によって生じる予期せぬ動作を特定し、適切な対策を講じることができる。ディープラーニング分類器を使用する場合、システムは通常、学習済みのクラスに未知のオブジェクトを割り当てる。これは、例えば、これまでに遭遇したことのないエラータイプや異物を処理する場合に問題を引き起こす可能性がある。新しいディープラーニング機能は、トレーニングデータに含まれていないオブジェクトが分類された場合に、ユーザーに警告を発する。例えば、システムが赤または黄色のラベルのボトルのみでトレーニングされている場合、緑のラベルのボトルが分類される可能性がる。この場合、「分布外」というメッセージと、オブジェクトが学習済みクラスからどれだけ逸脱しているかを示すOODスコアが表示される。
 また、しきい値を設定することでディープラーニングの結果に影響を及ぼすことも可能である。例えば、異常検知を目的としてしきい値を非常に高く設定すると、OK結果のみが得られる。一方、しきい値を低く設定すると、システムはそれに応じてOK結果の数を減らし、「偽陰性」をなくす。これにより、モデルが異常に反応する感度を柔軟かつ個別に調整できる。

ディープラーニング入門:マシンビジョンとの組み合わせが最適
 企業がディープラーニングの多くのメリットを活用したいのであれば、その技術を的確に導入し、長期的に活用するための綿密な戦略が必要である。しかし、他のAI手法と同様に、ディープラーニングにはある程度の複雑さが伴う。マシンビジョンは、この分野において重要な技術であることが証明されており、実績のあるディープラーニング手法を効率的かつ収益性の高い方法で活用することができる。