(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-20
(45)【発行日】2023-07-28
(54)【発明の名称】ビジョンシステムで画像内のパターンを検出及び分類するためのシステム及び方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20230721BHJP
【FI】
G06T7/00 300D
G06T7/00 350C
(21)【出願番号】P 2020568316
(86)(22)【出願日】2019-06-06
(86)【国際出願番号】 US2019035840
(87)【国際公開番号】W WO2019236885
(87)【国際公開日】2019-12-12
【審査請求日】2021-08-18
(32)【優先日】2018-06-06
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-01-16
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504382671
【氏名又は名称】コグネックス・コーポレイション
(74)【代理人】
【識別番号】100119378
【氏名又は名称】栗原 弘幸
(72)【発明者】
【氏名】ワン,レイ
(72)【発明者】
【氏名】アナンド,ヴィヴェク
(72)【発明者】
【氏名】ヤコブソン,ロウェル ディー.
(72)【発明者】
【氏名】リ,デイヴィッド ワイ.
【審査官】新井 則和
(56)【参考文献】
【文献】米国特許出願公開第2008/0069400(US,A1)
【文献】米国特許出願公開第2018/0330504(US,A1)
【文献】特開2007-220004(JP,A)
【文献】特開2003-110298(JP,A)
【文献】特開2017-172627(JP,A)
【文献】米国特許出願公開第2018/0315199(US,A1)
【文献】中国特許出願公開第108108731(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G06V 10/00-10/98
(57)【特許請求の範囲】
【請求項1】
製造工程において撮像される実行時画像内のパターンを検出するためのシステムであって、
前記製造工程における部品に対応する関心のあるパターンを含む1以上のトレーニング画像に関連する1以上のテンプレート
画像に基づいてトレーニングされたパターン検出ツールと、
前記1以上のトレーニング画像でトレーニングされたニューラルネット分類器と、
前記製造工程の実行時に、下記(a)又は(b)すなわち
(a)トレーニングされた前記ニューラルネット分類器が、
部品の実行時画像に基づく1以上のテンプレート画像を前記パターン検出ツールに提供し、トレーニングされた前記パターン検出ツールが、前記
部品の前記実行時画像と組み合わされた1以上の前記テンプレート画像に基づいてパターンマッチングを実行する:あるいは
(b)トレーニングされた前記パターン検出ツールが、
部品の実行時画像から検出されたパターンをトレーニングされた前記ニューラルネット分類器に提供し、トレーニングされた前記ニューラルネット分類器が、検出された前記パターン
及び前記
部品の前記実行時画像に基づいてパターンマッチングを実行する:テンプレートマッチングプロセスを
なすよう構成されてなるプロセッサ及びメモリと、
を備え
、
前記パターンマッチングに基づいて前記プロセッサは前記実行時画像内に前記部品の位置合わせ又は欠陥の少なくとも一つを決定するよう構成されてなる、
上記システム。
【請求項2】
前記パターン検出ツールが複数の前記テンプレート
画像を使用してトレーニングされるように適合されている、請求項1記載のシステム。
【請求項3】
前記パターン検出ツールが単一の前記テンプレート
画像を用いてトレーニングされる、請求項1記載のシステム。
【請求項4】
前記ニューラルネット
分類器が畳み込みニューラルネットワーク(CNN)を含む、請求項1記載のシステム。
【請求項5】
前記プロセッサと連携し、前記パターンマッチングの結果を表示するよう構成されたディスプレイをさらに有する、請求項1記載のシステム。
【請求項6】
前記結果は前記実行時画像内の位置に関する座標データを含む請求項5記載のシステム。
【請求項7】
前記部品の前記実行時画像は前記製造工程内の静止したシーンに対応するものである請求項1記載のシステム。
【請求項8】
前記パターン検出ツールは前記テンプレート画像のサブセットのみを用いてトレーニングされ、前記サブセットは各々の前記テンプレート画像へのマッチングの確率に基づいて選択されるものである請求項1記載のシステム。
【請求項9】
前記プロセッサは、さらに、前記部品の位置合わせ又は欠陥の前記少なくとも一つを前記製造工程内の組立ロボットコントローラに提供するよう構成されてなる請求項1記載のシステム。
【請求項10】
製造工程において撮像される実行時画像内のパターンを検出するための、プロセッサ及びメモリ上で実行される、方法であって、
前記製造工程における部品に対応する関心のあるパターンを含む1以上のトレーニング画像に関連する1以上のテンプレート画像に基づいてパターン検出ツールをトレーニングする工程と、
前記1以上のトレーニング画像でニューラルネット分類器をトレーニングする工程と、
前記製造工程の実行時に、下記(a)又は(b)すなわち
(a)トレーニングされた前記ニューラルネット分類器が、部品の実行時画像に基づく1以上のテンプレート画像を前記パターン検出ツールに提供し、トレーニングされた前記パターン検出ツールが、前記部品の前記実行時画像と組み合わされた1以上の前記テンプレート画像に基づいてパターンマッチングを実行する:あるいは
(b)トレーニングされた前記パターン検出ツールが、部品の実行時画像から検出されたパターンをトレーニングされた前記ニューラルネット分類器に提供し、トレーニングされた前記ニューラルネット分類器が、検出された前記パターン及び前記部品の前記実行時画像に基づいてパターンマッチングを実行する:テンプレートマッチングプロセスと、
を有し、
前記パターンマッチングに基づいて前記プロセッサは前記実行時画像内に前記部品の位置合わせ又は欠陥の少なくとも一つを決定するよう構成されてなる、
上記方法。
【請求項11】
前記パターン検出ツールをトレーニングする工程が複数の前記テンプレート画像を使用して行われる、請求項10記載の方法。
【請求項12】
前記パターン検出ツールをトレーニングする工程が単一の前記テンプレート画像を用いて行われる、請求項10記載の方法。
【請求項13】
前記ニューラルネット分類器をトレーニングする工程が畳み込みニューラルネットワーク(CNN)をトレーニングすることを含む、請求項10記載の方法。
【請求項14】
前記プロセッサと連携するディスプレイが提供され、前記パターンマッチングの結果を前記ディスプレイに表示する工程をさらに有する、請求項10記載の方法。
【請求項15】
前記結果は前記実行時画像内の位置に関する座標データを含む請求項14記載の方法。
【請求項16】
前記製造工程内の静止したシーンから前記部品の前記実行時画像を取得する工程をさらに有する請求項10記載の方法。
【請求項17】
前記パターン検出ツールをトレーニングする工程が前記テンプレート画像のサブセットのみを用いてトレーニングされるものであり、前記サブセットは各々の前記テンプレート画像へのマッチングの確率に基づいて選択されるものである請求項10記載のシ方法。
【請求項18】
前記プロセッサは、さらに、前記部品の位置合わせ又は欠陥の前記少なくとも一つを前記製造工程内の組立ロボットコントローラに提供するよう構成されてなる請求項10記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マシンビジョンシステム及び方法に関し、より具体的にはパターン検索及び認識ツールに関する。
【背景技術】
【0002】
本明細書では「ビジョンシステム」とも呼ぶマシンビジョンシステムは、製造環境において様々なタスクを実行するために使用される。概して、ビジョンシステムは、製造中のオブジェクトを含むシーンのグレースケール画像又はカラー画像を取得する画像センサ(若しくは「イメージャ」)を備えた1台以上のカメラからなる。オブジェクトの画像を分析して、データ/情報をユーザ及び関連する製造工程に提供することができる。画像によって生成されたデータは、通常ビジョンシステムにより1台以上のビジョンシステムプロセッサで分析及び処理され、これらのビジョンシステムプロセッサは専用に構築されるか、汎用コンピュータ(例えばPC、ラップトップ、タブレット又はスマートフォン)内でインスタンス化された1以上のソフトウェアアプリケーションの一部であってもよい。
【0003】
一般的なビジョンシステムのタスクには、位置合わせと検査が含まれる。位置合わせタスクでは、マサチューセッツ州ネイティックのコグネックスコーポレーションから市販されている周知のパットマックス(R)システムなどのビジョンシステムツールが、シーンの画像内の特徴を(実際のモデル又は合成モデルを使用して)トレーニングされたパターンと比較して、撮像されたシーンにおけるパターンの有無と姿勢を決定する。この情報は、後続の検査(又はその他の)操作で欠陥を検索したり、部品の拒否などの他の操作を実行したりするために使用できる。
【0004】
検索可能なパターン(例えば円形、正方形、スクリューの画像など)の所定のリストを含めることができる従来のパターン検出ツールの性能を向上させることが望ましい。そのようなツールはしばしば、微妙な違いがある特定のトレーニングされたパターン(例えば円と小さいノッチのある円)を適切に区別できないことがある。
【発明の概要】
【0005】
本発明は従来技術のこの発明の欠点を、ニューラルネットワーク(「ニューラルネット」とも呼ぶ)分類器(「アナライザ」と呼ぶこともある)を組み込んだ、画像内のパターンを検出するためのシステム及び方法を提供することによって克服する。パターン検出ツールは、ツールの前又は後で実行できる分類器と連結されて、サブピクセル精度でラベリングされたパターン検出結果を持つ。複数のテンプレートを検出できるパターン検出ツールの場合、ニューラルネット分類器がパターン検出ツールに、最初にトレーニングされたテンプレートのサブセットでのみ作業するように通知するとその性能が改善される。代替的に、パターン検出ツールの性能は、ニューラルネットワークを使用して、パターン検出ツールを実行する前に画像を再構成/除去すると改善できる。追加的に、ニューラルネットワークを使用して、画像内の各画素についてパターンに属する画素がマッチングする可能性に基づいて重み付け値を計算することができる。同様に、最初にパターンを検出するツールの場合、ニューラルネット分類器は、当該ツールが正しいパターンを見つけたか否かを判断することができる。
【0006】
例示的な実施形態において、画像内のパターンを検出するためのシステム及び方法は、関心のあるパターンを含む1以上のトレーニング画像に関連する1以上のテンプレートに基づいてトレーニングされたパターン検出ツールを含んでいる。ニューラルネット分類器は、1以上のトレーニング画像でトレーニングされ、実行時にテンプレートマッチングプロセスが動作して、(a)トレーニングされたニューラルネット分類器が、実行時画像に基づく1以上のテンプレートをパターン検出ツールに提供し、トレーニングされたパターン検出ツールが、実行時画像と組み合わされた1以上のテンプレート画像に基づいてパターンマッチングを実行するか、又は(b)トレーニングされたパターン検出ツールが、実行時画像から検出されたパターンをトレーニングされたニューラルネット分類器に提供し、トレーニングされたニューラルネット分類器が、検出されたパターンと実行時画像に基づいてパターンマッチングを実行する。パターン検出ツールは、複数のテンプレート又は単一のテンプレートを使用してトレーニングされるように適合されている。ニューラルネットは、畳み込みニューラルネットワーク(CNN)を含む。
【0007】
別の実施形態では、画像内のパターンを検出するためのシステムと方法が提供され、画像内に1以上の候補形状を特定するようにトレーニングされ、実行時動作中に画像内に1以上の形状が存在する確率を識別するように構成されたニューラルネットワークを含んでいる。それによりニューラルネットワークは、(a)確率しきい値を超える1以上の候補形状の特徴を有する重み付きマスクを生成し、及び/又は(b)ニューラルネットワークアナライザが確率しきい値を超える1以上の候補形状の特徴の存在を識別する画像で、1以上の候補形状のモデルの特徴が置換された再構成画像を生成する。例示的に、パターン検出ツールは、1以上の候補形状に関連する1以上のモデルを使用して、(a)重み付きマスク及び/又は(b)再構成画像内に1以上の候補形状を検出するようにトレーニングされる。ニューラルネットワークは、各ピクセルが1以上の形状の識別に関係するスコアを有している重み付きマスクを定義する。再構成画像はバイナリ画像として定義できる。例示的に、ニューラルネットワークアナライザは、1以上の候補形状のタイプの存在に関するデータをパターン検出ツールに提供し、パターン検出ツールはプロセスを、当該タイプを特定することに関連するプロセスに制限する。概して、ニューラルネットワークは畳み込みニューラルネットワーク(CNN)を含んでいてもよい。
【0008】
以下に本発明を添付図面を参照して説明する。
【図面の簡単な説明】
【0009】
【
図1】ニューラルネットワーク分類器と組み合わせたパターン検出ツールを使用して、異なる形状及び/又はパターンを含む撮像されたオブジェクトを分析するように構成されたビジョンシステムの図である。
【0010】
【
図2】1以上の画像テンプレートの同じセットでトレーニングされたニューラルネットワーク分類器とパターン検出ツールを含むスマートパターン検出ツールのトレーニング手順を示すブロック図である。
【0011】
【
図3】ニューラルネット分類器がパターン検出ツールの前に実行する、
図2のトレーニングされたスマートパターン検出ツールを使用した入力画像に対する実行時動作のブロック図である。
【0012】
【
図4】単一のテンプレートについて1以上の画像でトレーニングされたニューラルネットワーク分類器とパターン検出ツールを含むスマートパターン検出ツールのトレーニング手順を示すブロック図である。
【0013】
【
図5】ニューラルネット分類器がパターン検出ツールの後に実行する、
図4のトレーニングされたスマートパターン検出ツールを使用する入力画像に対する実行時動作のブロック図である。
【0014】
【
図6】最初にニューラルネットワークを適用して画像内の候補を検索/決定し、次にパターン検出ツールを適用して検索/決定を絞り込むための手順の概要を示すフローチャートである。
【0015】
【
図7】
図6の手順におけるニューラルネットワークのトレーニング及び実行時動作を示すフローチャートである。
【0016】
【
図8】
図7のニューラルネットワーク手順によって提供される画像結果を使用するパターン検出ツールの実行時動作を示すフローチャートである。
【0017】
【
図9】
図5のパターン検出ツールに関連する重み付きマスクの作成を示すブロック図である。
【0018】
【
図10】
図9による重み付きマスクを生成するための、例示的な関心のある形状と、関心のある形状及び関心のある形状のモデルを含む取得した画像データの処理を示す図である。
【0019】
【
図11】取得した画像データにおける関心のある形状を再構成又は除去するための、
図5によるニューラルネットワークの使用を示すブロック図である。
【0020】
【
図12】
図11による再構成及び/又は除去されたバージョンの形状(例えばバイナリ画像)を生成するための、関心のある形状を含む例示的な取得したデータの処理を示す図である。
【発明を実施するための形態】
【0021】
I.システムの概要
【0022】
図1は、例示的なシステム及び方法によって使用するための一般化されたビジョンシステム構成100を示す。ビジョンシステムは、部品/表面検査、ロボット制御、部品の位置合わせなどを含む、任意の許容可能な環境で実装できる。このシステムは、光学系O及び画像センサ(「センサ」又は「イメージャ」とも呼ぶ)Sを有する少なくとも1台のビジョンシステムカメラアセンブリ110を含み、オンボード照明又は別個の照明(図示せず)も含んでいてもよい。カメラアセンブリは、1以上の静止又は移動するオブジェクト130を含んでよいシーン120を撮像する。この例では、オブジェクトは、輪郭形状、ならびに幾何学的に規則的もしくは不規則な多様な内部形状132、134、136及び138を含む。より一般的に、パターンは任意の幾何学的形状又はオブジェクトの任意の2D画像であってもよい。
【0023】
カメラアセンブリ110及び関連するセンサSは、ビジョンシステムプロセッサ140と相互接続されており、ビジョンシステムプロセッサ140は完全に又は部分的にカメラアセンブリ110内に配置でき、又は別個の処理装置、例えばサーバ、PC、ラップトップ、タブレット又はスマートフォン(コンピュータ160)内に配置することができる。コンピューティングデバイスは、ディスプレイ/タッチスクリーン162、キーボード164及びマウス166などの適切なユーザインターフェースを含んでいてもよい。
【0024】
例示的に、ビジョンシステムプロセス(プロセッサ)140は、様々なビジョンシステムツール及び関連するソフトウェア/ファームウェアを操作して、実行時に取得及び/又は保存されたオブジェクト130の画像を処理及び分析する。プロセス(プロセッサ)140は、特定のパラメータに従って機能し、トレーニング手順を使用してオブジェクトで検出される特定の形状を認識するようにトレーニングすることができる。プロセス(プロセッサ)140は、上記のパットマックス(R)ソフトウェアパッケージ及びそのバリエーション、例えばパットマックス(R)マルチモデルに見られるようなパターン検出ツール142を含め、様々なビジョンシステムコンポーネントを含む。パターン検出ツールは、トレーニングされたパターンや標準形状のパターン(正方形、円など)を使用でき、これらはトレーニングテンプレートに含まれている。以下に説明するように、ビジョンシステムプロセス(プロセッサ)は、ニューラルネットワークプロセス(プロセッサ)150も含み、又はこれと連動している。ニューラルネットワークプロセス(プロセッサ)(「ニューラルネット」とも呼ぶ)は、分類器の形で様々なパターンで動作して、システム100のパターン検出速度及び性能を強化する。
【0025】
パターン検出の結果は、コンピュータインターフェース162を介してユーザ及び/又は他の下流の利用デバイス又はプロセス(プロセッサ)180に送信することができる、このような装置又はプロセス(プロセッサ)は、組立ロボットコントローラ、ライン検査、部品の検査/拒否、品質管理などを含んでいてもよい。
【0026】
パターンマッチングの従来の手法は、慣用的なパターンマッチングツール、例えばパットマックス(R)又はパットマックス(R)マルチモデルを、関心のある形状又は特徴を有するモデル画像を使用してトレーニングすることを伴うことが認識されている。実行時にパターンマッチングツールは、検査されるオブジェクトの取得した画像内のトレーニングされたパターンとの正確なマッチングを特定する努力において1以上(場合によっては全部)のトレーニングされたテンプレートを通して実行する。
【0027】
他方、本実施形態は、従来のパターン検出ツールを強化するためにニューラルネットプロセスを利用するスマートパターン検出ツールを提供し、それによりパターン検出ツールにツール結果に検出されたパターンを自動的にラベリングする能力、又は関連するニューラルネット分類器を使用してパターンを確実に検出する能力を提供する。この手法により操作において、テンプレートを含む画像のデータベースでスマートパターン検出ツールをトレーニングすることが可能になる。トレーニング後は、実行時にスマートパターン検出ツールは、従来のパターン検出器の最良の特徴とニューラルネット分類器を組み合わせて、高精度の姿勢(位置、スケール、回転など)を有する正しくラベリングされたパターン検出結果を提供する。
【0028】
II.ニューラルネットワークを使用して検索を絞り込むパターン検出
【0029】
図2を参照すると、これは実行時に先立つトレーニング時手順200を表すブロック図を示している。ツール210は、慣用的なパターン検出ツール220と、1組/複数のトレーニングされたパターン(テンプレート)240の中から正しいパターンを検出する際にパターン検出ツールを支援する、関連するニューラルネット分類器を含む。
【0030】
より具体的には、トレーニング時に、従来のパターンの検出ツール220(例えばパットマックス(R)マルチモデル)は、1以上のテンプレート画像でトレーニングされる。同時に、ニューラルネット分類器(例えば畳み込みニューラルネットワーク(CNN))230は、各テンプレートによって表されるパターンの複数の例示的な画像でトレーニングされる。ニューラルネット分類器230は、入力画像を処理し、入力画像内に検出されたテンプレートラベルのサブセットを報告するようにトレーニングされる。
【0031】
図3は、(事前分類を使用する)実行時手順300を示しており、トレーニングされたニューラルネットワーク分類器310は最初に(カメラ110によって取得した及び/又は以前の取得から保存された)実行時入力画像320で実行され、各テンプレートの確率を決定する。スマートパターン検出ツールは、結果が最良のものをフィルタリングし、次にトレーニングされたパターン検出ツール350に、N個のテンプレート(
図2の240)のフルセットではなく、これらのマッチングしたM個のテンプレートのサブセットで作業するように通知する。したがって最も良くマッチングするM個のテンプレート340のサブセットが検索パラメータとして、トレーニングされたパターン検出ツール350に提供される。入力画像320はパターン検出ツール350に提供され、検索パラメータは、ツール350の出力としてマッチングしたテンプレート結果360を生成するために使用される。これらの結果は、ユーザに表示でき、又は下流の利用操作(例えば部品の位置合わせ、検査など)において使用できる。有利には、このプロセス300は、マッチングしたテンプレートを生成する際に通常ならば必要とする計算量を削減する。
【0032】
本明細書の実施形態によれば、様々な専有及び市販(例えばオープンソース)のニューラルネットワークアーキテクチャ及び関連する分類器を使用できる。例えばテンソルフロー、マイクロソフトCNTKなど。
【0033】
上述したトレーニング時手順200及び実行時手順300を使用できる応用例は、基準の形状が異なる部品によって変化し得る場合に(十字、菱形など)、正しい基準を検出することである。例示的に、従来のパターン検出ツールは、それぞれの可能な基準パターンを表すテンプレート画像でトレーニングされる。さらに、ニューラルネット分類器(例えばテンソルフロー)は、各基準パターンと関連付けられたラベルと共に、各基準パターンの外観との変化を示す複数の画像でトレーニングされる。実行時には、最初にトレーニングされたニューラルネット分類器が実行されて、実行時画像に検出されたラベルのセットを返す。この情報を使用して、システムはパターン検出ツール(例えばパットマックス(R)マルチモデル)に、ニューラルネット分類器によって生成されたラベルで表されるテンプレートのセットでのみ実行するように通知し、それによって位置合わせを迅速化し、より信頼性の高い結果を生み出す。
【0034】
図4に示す構成では、従来のパターン検出ツールが特定のパターンを検出して、ニューラルネット分類器がそれが正しいマッチングであるか否か判定する(即ち事後分類)。トレーニング時に、従来のパターン検出ツール410は、単一の画像テンプレート440を用いてトレーニングされる。次に、ツール410に関連付けられたニューラルネット分類器(例えばテンソルフロー)430が、所望のテンプレートに対する複数の画像でトレーニングされる。分類器430の入力は、従来のパターン検出ツール440に入力されたものと同じ画像である。
【0035】
図5は、(事後分類を使用する)実行時手順500を示しており、パターン検出ツール550の最初に入力画像520内のパターンを検出する。入力画像520は、従来のパターン検出ツール(例えばパットマックス(R))の出力から計算される任意選択の境界ボックスと共に、トレーニングされたニューラルネットワーク分類器510に提供される。次に、分類器510は従来のパターン検出が正しい/マッチングしたパターン560を検出したか判定する。分類器の出力510は、トレーニングされたテンプレートが検出されたことの全体的な信頼性である。
【0036】
例として、操作上の使用ケースは、円とノッチのある円などのわずかな違いを有する非常に紛らわしい形状を伴う。従来のパターン検出ツール(例えばパットマックス(R))350がノッチのある円を表すテンプレート画像でトレーニングされると仮定する。次に、ニューラルネット分類器510は、他の紛らわしい形状(ノッチのない円)と共に所望の形状(ノッチのある円)を含む画像でトレーニングされる。実行時に、入力画像は従来のパターン検出ツールの出力から計算された任意選択の境界ボックスと共に、トレーニングされたニューラルネット分類器510に供給され、次に分類器は従来のパターン検出が正しいパターン(ノッチのある円)を検出したか判定する。この手順により、この例示的なケースでパターン検出の堅牢性が改善される。
【0037】
従来のパターン検出ツールと、1以上のテンプレートでトレーニングするその能力は、代替実施形態において極めて可変であることに留意されたい。上記の事前分類手順と事後分類手順は、それぞれ代替実施形態において異なるタイプのパターン検出ツール及び関連するテンプレートを含むように修正することができる。
【0038】
III.トレーニングされたパターンツールを使用して検索を絞り込むパターン検出
【0039】
図6を参照すると、
図1の構成100によって実施できる別の例示的な実施形態に従うスマートパターン検出のための全体的な(一般化された)手順600が示されている。幾つかのパターンは、取得した画像で動作する従来のトレーニングされたパターン検出ツールを使用して特定するのがより困難であることが判明することがあると考えられる。場合によっては、ニューラルネットワーク/ディープラーニングアーキテクチャの固有の特性が、最初に画像内のパターン候補を特定する際にメリットを提供できる。したがって手順600では、ニューラルネットワークは、様々なパターンタイプを特定するようにトレーニングされ、ステップ610で取得した画像に適用される。それによって所与のタイプの形状に関連するスコアを有する候補のリストを生成する。次に、手順600はスコアに基づいて、従来のパターン検出ツール(例えばパットマックス(R)マルチモデル)を、特定の閾値を超えるスコアを有する形状候補に適用する(ステップ620)。パターン検出ツールは、ニューラルネットワークによって識別された特定の形状を検索するか、各候補における様々なタイプの形状を検索できる。
【0040】
有利には、ニューラルネットワークは可能な候補を効率的に識別できる一方で、サブピクセルレベルでのモデルフィッティングなどの計算困難なタスクは、パターン検出ツールによって堅牢な方法で処理することができる。
【0041】
ニューラルネットワークが特定の形状を認識するためのトレーニングは、
図7の手順700のステップ710に記載されている。トレーニングされると、実行時(ステップ720)にニューラルネットワークはトレーニングされた構成を使用して、取得した画像がトレーニングされた形状の一部であるように見えるかどうかに基づいて、当該画像の各ピクセルにスコア(確率)を割り当てる。その結果(ステップ730)は、画像内のピクセルがそれぞれスコアを割り当てられた確率画像である。ステップ730からの確率画像は保存でき、次にパターン検出ツールに(例えばマスクとして)提供できる。パターン検出ツールでは、候補形状を有さないように見えるピクセルは、パターン検出ツールが動作する画像結果からマスクされる(ステップ740)。ニューラルネットワークの結果は、確率画像内の候補形状のタイプを含んでいてもよい。形状タイプの情報により、パターン検出ツールは確率画像における(選択された位置での)検索を、専ら結果によって提供される形状タイプに狭めることができる(ステップ750)。それゆえパターン検出ツールは、候補形状に関係のないツールの実行を回避するので、より迅速かつ効率的に動作できる。
【0042】
上記の手順600は、種々の応用において有利である。例えばニューラルネットワークを使用して最初に画像をスクリーニングすることは、局所的な歪みが大きい場合に有用である。なぜなら、ニューラルネットワークは、パターン検出によって分析するのがより簡単な方法で、確率に基づいて画像を本質的に再構成するからである。例として、入ってくる画像は非常にテクスチャ化されて、定義されたコントラストラインを欠いていることがある。ニューラルネットワークによって処理した後、結果として生じる確率画像は、長方形、三角形、円などを表す高コントラストの定義された境界を持つバイナリ表現である。具体的な例では、ニューラルネットワークは、すり減る(非常にテクスチャ化された領域を生み出す)ことがあるロープ又はケーブルの端で形状を効果的に解像できる。ニューラルネットワークはパターン検出ツールに、暗い背景の上の明るい長方形、又はその逆を提供する。
【0043】
図3の手順800で説明したように、実行時に、トレーニングされた(関心のある形状に関するモデルベースのテンプレートを用いてトレーニングされた)パターン検出ツールは、ニューラルネットワークから確率画像(マスク)、及び(任意選択で)画像内で識別された候補形状のタイプに関する情報を受け取る(ステップ810)。パターン検出ツールは画像上で、選択された領域に焦点を合わせ、識別された画像タイプに関連するツール及びプロセスを使用して動作する(ステップ820)。次に、パターン検出ツールは検出された形状が画像内に配置された結果を生成し、形状に関する適切な座標(及びその他の)データがステップ830の後続操作に出力される。
【0044】
さらに、
図9を参照すると、取得した画像内の関心のある形状に関連して重み付きマスクを作成して使用するための例示的な手順900のブロック図が示されている。そこに示されているように、画像910はニューラルネットワーク920に入力される。適切にトレーニングされた技術を使用して、ニューラルネットワーク920は関心のある形状930の重み付きマスクを出力する。上記のように、各ピクセルは、関心のある形状の一部である可能性に基づいてスコア付けされる。次に、重み付きマスク930は、生画像データ910と共に、パターン検出(テンプレートマッチング)ツール(例えばコグネックスサーチマックス(R)、パットマックス(R)など)に入力される。これによりツール940は、画像950内における関心のある形状の位置と、重み付きマスク930に含まれるデータに基づくことができる追加のマッチングスコア情報960を出力する。
【0045】
手順900は、
図10の略
図1000に図示されている。例示的な関心のある形状1010は、連続境界を有するU字型構造として示されている。しかし関連する取得した画像1012は、壊れた境界1014及び介入する形状1016を提供する。さらに、関心のある画像形状1012は、シーン内部で予想される形状1010の向きに対してある角度で回転している。取得した画像と予想される形状の間に、他の歪みに基づく違いも存在し得る。本明細書で説明されるように、関心のある形状データ1010及び画像データ1012は、ニューラルネットワーク1020に入力される。結果として得られる画像の出力重み付きマスク1030は、基礎となる関心のある形状を近似して、介入する形状データ1016を省略した一連の形状セグメント1040として表現される。ここに示されているように、セグメント1040は、確率/可能性がより高い周囲ピクセルの範囲を包含する。この領域は、関心のある形状のエッジの一般的な輪郭を近似している。この表現1040は、従来のモデルトレーニングされたパターン検出(テンプレートマッチング)ツールによってより容易にマッチングされる。
【0046】
別の例示的な実施形態において、ニューラルネットワークを使用して画像内の関心のある形状を再構成及び/又は除去することができる。
図11の手順1100に示されているように、ニューラルネットワーク1120は取得した画像データ1110を受け取り、トレーニングを使用して関心のある形状1130の再構成を出力し、その中で各ピクセルは当該ピクセルが関心のある形状(即ちニューラルネットワークのトレーニングの対象)に属する可能性によってスコア付けされている。次に、この再構成は、関心のある形状のテンプレートを含むモデルベースのパターン検出(テンプレートマッチング)ツール1140に入力される。ツールは、関心のある形状1150の粗い位置を出力する。この粗い位置は、該当する場合は下流のプロセスによって使用されることができ、及び/又は任意選択で再びモデルトレーニングされたパターン検出ツール1160(ブロック1140と同じツールか又は異なるツール)に入力され得る。生画像データ1110もパターン検出ツール1160に提供される。入力1110及び1150からのツール1160の出力は、画像1110内の関心のある形状の精緻な位置1170である。
【0047】
手順1100の例として
図12の略
図1200は画像内の2つの入力形状1210及び1212を示している。各形状は、上記のようにニューラルネットワーク再構成1220及び1222を受ける。それにより取得した画像データにおいて使用するために再構成された形状1230及び1232がそれぞれ生み出される。その結果、再構成は、既存の歪んだ又は不明瞭な形状に取って代わることができる。したがってニューラルネットワークを使用して画像データ内の不完全な又は歪んだ形状の除去及び/又は再構成を効果的に提供することができ、そのようなデータは下流操作によってより効果的に使用され得る。この下流操作には上記のパターン検出ツール又は別の適切なツールを使用するパターン検出が含まれる。ここに示されているように、形状は予想される形状/モデル形状の境界に適合する明確に定義された境界を持つバイナリ画像として表現できる。
【0048】
IV.結論
【0049】
上述したシステム及び方法が、従来のパターンマッチング応用とニューラルネット分類器の組み合わせを使用してトレーニングされたパターンの検出及びマッチングのためのより信頼できる高速の技術を提供することは明らかであろう。この手法により、テンプレートの数が削減され、又は検出されたパターンをフィルタリングすることが可能になり、その結果として正しいマッチングに関するシステム及び方法の決定が強化される。さらに、上記のシステム及び方法は、ニューラルネットワークを撮像された形状の再構成/除去ツールとして使用すること、及び/又は関心のある形状にあまり関係のないピクセルを排除し、それにより検索時間を大幅に短縮することだけでなく、正しい形状にロックオンする可能性を大幅に高めることを効果的に可能にする。この技術は、特に画像内の形状が歪んでいるか、又は形状の特徴が欠落している場合に効果的である。
【0050】
以上は本発明の例示的な実施形態を詳細に説明したものである。本発明の精神と範囲を逸脱することなく種々の改変及び追加を行うことができる。上述した種々の実施形態の各々の特徴は、関連する新しい実施形態において多数の特徴の組み合わせを提供するために適切である限り、別の記載された実施形態の特徴と組み合わされてよい。さらに、以上に本発明の装置と方法の多数の別個の実施形態を説明したが、ここに記載されたものは本発明の原理の応用を例示したものにすぎない。例えば本明細書中で使用される「プロセス」及び/又は「プロセッサ」という言葉は電子ハードウェア及び/又はソフトウェアをベースとする多様な機能及びコンポーネント(或いは機能的「モジュール」又は「エレメント」と呼ぶことがある)を含むものと広く解釈すべきであることにも留意されたい。さらに、表示されたプロセス又はプロセッサは他のプロセス及び/又はプロセッサと組み合わせ、又は種々のサブプロセス又はサブプロセッサに分割されてよい。そのようなサブプロセス及び/又はサブプロセッサは、本明細書に記載された実施形態に従って多様に組み合わせることができる。同様に、本明細書中の何らかの機能、プロセス及び/又はプロセッサは、プログラム命令の非一時的コンピュータ可読媒体からなる電子ハードウェア、ソフトウェア、或いはハードウェアとソフトウェアの組み合わせを用いて実施できることが明確に想定されている。加えて、本明細書で使用される様々な方向及び/又は向きを表わす用語、例えば「垂直」、「水平」、「上」、「下」、「底部」、「頂部」、「側部」、「前部」、「後部」、「左」、「右」、及びこれに類するものは、相対的な表現法として用いられているにすぎず、重力の作用方向など固定した座標系を基準とした絶対的な向きを表わすものではない。加えて、特定の測定、値又は特徴に関して「実質的に」又は「近似的に」という言葉が用いられている場合、それは所期の結果を達成するための通常の操作範囲内にある量を指しているが、システムに許容された誤差の範囲内の固有の不正確さや誤りに起因するある程度のばらつきを含む(例えば1~5パーセント)。したがってこの説明は例としてのみ受け取られるべきであり、それ以外に本発明の範囲を限定することを意味するものではない。
【0051】
以下に特許請求の範囲を記載する。