(57)【要約】      （修正有）【課題】三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査のためのシステム及び方法を提供する。【解決手段】３Ｄビジョンシステムを用いて３Ｄ物体の少なくとも一つの３Ｄ画像を取得すること、前記３Ｄビジョンシステムを用いて前記３Ｄ画像の３Ｄ視覚ランタイムマスクを抽出すること、前記３Ｄビジョンシステムを用いて前記３Ｄランタイム視覚マスクを３Ｄリファレンス視覚マスクと比較すること、前記３Ｄビジョンシステムを用いて、前記３Ｄランタイム視覚マスクと前記３Ｄリファレンス視覚マスクの間に画素の差が存在するか否かを決定すること、を含む。【選択図】図４
2017032548.tif 000002
【特許請求の範囲】
【請求項１】
三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査の方法において、
前記３Ｄビジョンシステムを用いて、３Ｄ物体の少なくとも一つの３Ｄ画像を取得する工程と、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像を３Ｄリファレンス画像にレジスターする工程と、
前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、
前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像との、３Ｄ分散モデルを超える３Ｄ差を検出する工程と、を含む
ことを特徴とする方法。
【請求項２】
前記方法が、前記少なくとも一つの３Ｄ画像をフィルタ処理する工程をさらに含み、
前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像にレジスターする工程が、前記少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像にレジスターすることを含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記方法が、前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像をフィルタ処理する工程をさらに含み、
前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像を前記３Ｄリファレンス画像と比較する工程が、前記フィルタ処理された、前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像と比較することを含む
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記レジスターされた少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出する工程が、前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出することを含む
ことを特徴とする請求項３に記載の方法。
【請求項５】
前記方法が、前記３Ｄビジョンシステムをトレーニングする工程をさらに含み、
前記トレーニングする工程が、
前記３Ｄビジョンシステムを用いて、前記３Ｄ物体の少なくとも一つの３Ｄトレーニング画像を取得する工程と、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程と、
前記３Ｄビジョンシステムを用いて、前記３Ｄリファレンス画像に基づいて３Ｄ分散モデルを推定する工程と、を含む
ことを特徴とする請求項１に記載の方法。
【請求項６】
前記方法が、前記少なくとも一つの３Ｄトレーニング画像をフィルタ処理する工程をさらに含み、
前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程が、前記少なくとも一つのフィルタ処理された３Ｄトレーニング画像に基づいて、前記３Ｄリファレンス画像を推定することを含む
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記方法が、前記３Ｄリファレンス画像をフィルタ処理する工程をさらに含み、
前記３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定する工程が、前記フィルタ処理された３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定することを含む
ことを特徴とする請求項５に記載の方法。
【請求項８】
三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査の方法において、
前記３Ｄビジョンシステムを用いて、３Ｄ物体の少なくとも一つの３Ｄ画像を取得する工程と、
前記３Ｄビジョンシステムを用いて、前記３Ｄ画像の３Ｄ視覚ランタイムマスクを抽出する工程と、
前記３Ｄビジョンシステムを用いて、前記３Ｄランタイム視覚マスクを３Ｄリファレンス視覚マスクと比較する工程と、
前記３Ｄビジョンシステムを用いて、前記３Ｄランタイム視覚マスクと前記３Ｄリファレンス視覚マスクの間に画素の差が存在するか否かを決定する工程と、を含む
ことを特徴とする方法。
【請求項９】
前記方法が、画素の差が３Ｄ分散モデルを超えるか否かを決定する工程をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記方法が、ケアマスクを作成する工程をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１１】
前記方法が、前記ケアマスクを前記少なくとも一つの３Ｄ画像に適用する工程をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１２】
三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査の方法において、
前記３Ｄビジョンシステムを用いて、３Ｄ物体の少なくとも一つの３Ｄ画像を取得する工程と、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像を３Ｄリファレンス画像にレジスターする工程と、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出する工程と、を含む
ことを特徴とする方法。
【請求項１３】
前記３Ｄ差は、３Ｄ分散モデルを超えるものであることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記方法が、前記少なくとも一つの３Ｄ画像をフィルタ処理する工程をさらに含み、
前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像にレジスターする工程が、前記少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像にレジスターすることを含む
ことを特徴とする請求項１２に記載の方法。
【請求項１５】
前記方法が、前記少なくとも一つのフィルタ処理された３Ｄ画像をフィルタ処理する工程をさらに含み、
前記少なくとも一つのフィルタ処理された３Ｄ画像を前記３Ｄリファレンス画像と比較する工程が、前記フィルタ処理された少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像と比較することを含む
ことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出する工程が、前記少なくとも一つのフィルタ処理された３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出することを含むことを特徴とする請求項１４に記載の方法。
【請求項１７】
前記方法が、前記３Ｄビジョンシステムをトレーニングする工程をさらに含み、
前記トレーニングする工程が、
前記３Ｄビジョンシステムを用いて、前記３Ｄ物体の少なくとも一つの３Ｄトレーニング画像を取得する工程と、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程と、
前記３Ｄビジョンシステムを用いて、前記３Ｄリファレンス画像に基づいて３Ｄ分散モデルを推定する工程と、を含む
ことを特徴とする請求項１２に記載の方法。
【請求項１８】
前記方法が、前記少なくとも一つの３Ｄトレーニング画像をフィルタ処理する工程をさらに含み、
前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程が、前記少なくとも一つのフィルタ処理された３Ｄトレーニング画像に基づいて、前記３Ｄリファレンス画像を推定することを含む
ことを特徴とする請求項１７に記載の方法。
【請求項１９】
前記方法が、前記３Ｄリファレンス画像をフィルタ処理する工程をさらに含み、
前記３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定する工程が、前記フィルタ処理された３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定することを含む
ことを特徴とする請求項１７に記載の方法。
【請求項２０】
前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、前記少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出する工程と、が、
前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像にレジスターする工程と、
前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、
前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像との３Ｄ差を検出する工程と、をさらに含む
ことを特徴とする請求項１２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２０１５年６月２６日に出願された「自動工業検査における３Ｄビジョンの使用」と称される米国仮出願番号第６２／１８５，４４４号に基づくとともにその利益を主張し、当該仮出願の内容はここに引用することにより盛り込まれているものとする。
【０００２】
本出願は、さらに、２０１６年１月１９日に出願された「自動工業検査における３Ｄビジョンの使用」と称される米国仮出願番号第６２／２８０，６２５号に基づくとともにその利益を主張し、当該仮出願の内容はここに引用することにより盛り込まれているものとする。
【０００３】
（連邦政府の支援による研究に関する言明）
該当無し。
【０００４】
工業コンピュータビジョンにおいて、検査のための追加のデータソースとして３Ｄ画像の採用が増えている。本出願は、工業コンピュータビジョンシステムにおける自動視覚的検査３Ｄ画像データの使用を探る。以下の開示は、自動ビジュアル工業検査のためのシステム及び方法を提供し、３Ｄ工業検査と２Ｄ工業検査の違いを検証し、そして、自動３Ｄ工業検査アプローチの背後にある技術的詳細について例を含めて提供する。
【背景技術】
【０００５】
工業コンピュータビジョンは、コンピュータビジョンの学問的／教育的及び政治的／軍事的応用と同じアルゴリズム及びアプローチの多くを使用するものの、異なる制約を有する。工業コンピュータビジョンシステムは、学問的／教育的コンピュータビジョンシステムに比べ、より高いロバスト性、信頼性及び安定性を暗示することができる。また、政治的／軍事的応用に比べてより低いコストを暗示することができる。コンピュータビジョンの他の応用分野に比べて、自動工業検査システムは、低コスト、許容精度、高ロバスト性、高信頼性、並びに検査される製造プロセスに内在又は伴うものに見合う高い機械的及び温度安定性を暗示することができる。
【０００６】
工業コンピュータビジョンシステムが信頼できるものであるために、その部品、ハードウェアとソフトウェアの両方、は、各々信頼できるものでなければならない。極めて重要なハードウェア部品のうちの一つは、カメラである。民生用３Ｄカメラは民生用応用に用いられる。これらのカメラの例として、Ｍｉｃｒｏｓｏｆｔ製のＫｉｎｅｃｔ（登録商標）  Ｖ２などの飛行時間カメラ、Ｉｎｔｅｌ製のＲｅａｌｓｅｎｓｅ（登録商標）  ３Ｄなどのステレオカメラ、Ｌｙｔｒｏ製のＩＬＬＵＭ（登録商標）などの光照射野測定カメラがある。これらのカメラは工業応用での使用に十分な信頼性はないものの、構造化された照明に基づくものと同じ画像化原理が、工業３Ｄカメラに用いられている。
【０００７】
２Ｄ画像を用いて物体を自動的に視覚的に検査するための技法は、当該分野において周知である。例えば、米国特許第５，６４０，２００号、「効率的な画像レジストレーションを使用するゴールデンテンプレート比較」、１９９７年６月１７日、Ｄａｖｉｄ  Ｊ．  Ｍｉｃｈａｅｌを参照されたく、その全体が参照により本明細書に盛り込まれている。検査のための２Ｄ画像の使用において、３Ｄ画像は２Ｄ画像に変換され、その後、２Ｄ画像として検査される。しかしながら、そのようにすることで、３Ｄ形状又は体積についての情報が失われる。３Ｄ画像から変換された２Ｄ画像を検査することにより、検査結果が、変換された２Ｄ画像において最も目立つ特徴に偏ってしまう可能性もある。３Ｄデータをスライスする又は３Ｄデータを２Ｄ画像に数学的に投影することで３Ｄ画像を２Ｄ画像に変換するための技法は、コンピュータグラフィックレンダリング分野において周知である。
【０００８】
上で議論した２Ｄ検査に対して、３Ｄポイントクラウドを直接検査することは当該分野では知られていない。本明細書において、直接検査された３Ｄ画像のための３Ｄ検査技法、そして３Ｄデータの断片(patches)を処理するためにこれらの技法を直接応用することについて記載する。
【発明の概要】
【０００９】
本実施形態は、三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査のためのシステム及び方法を提供することによって、従来技術のデメリットを克服する。当該システム及び方法は、前記３Ｄビジョンシステムを用いて３Ｄ物体の少なくとも一つの３Ｄ画像を取得すること、前記３Ｄビジョンシステムを用いて前記３Ｄ画像の３Ｄ視覚ランタイムマスクを抽出すること、前記３Ｄビジョンシステムを用いて前記３Ｄランタイム視覚マスクを３Ｄリファレンス視覚マスクと比較すること、前記３Ｄビジョンシステムを用いて、前記３Ｄランタイム視覚マスクと前記３Ｄリファレンス視覚マスクの間に画素の差が存在するか否かを決定すること、を含むことを特徴とする。
【００１０】
本発明の別の実施形態によれば、三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査のための方法が開示される。この方法は、前記３Ｄビジョンシステムを用いて３Ｄ物体の少なくとも一つの３Ｄ画像を取得する工程と、前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像を３Ｄリファレンス画像にレジスターする工程と、前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出する工程と、を含み、前記３Ｄ差は３Ｄ分散モデルを超えるものであることを特徴とする。
【００１１】
一部の実施形態では、前記方法が、前記少なくとも一つの３Ｄ画像をフィルタ処理する工程をさらに含み、前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像にレジスターする工程が、前記少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像にレジスターすることを含む。
【００１２】
一部の実施形態では、前記方法が、前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像をフィルタ処理する工程をさらに含み、前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像を前記３Ｄリファレンス画像と比較する工程が、前記フィルタ処理されたレジスターされた少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像と比較することを含む。
【００１３】
一部の実施形態では、前記レジスターされた少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出する工程が、前記レジスターされた少なくとも一つのフィルタ処理された３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出することを含む。
【００１４】
一部の実施形態では、前記方法が、前記３Ｄビジョンシステムをトレーニングする工程をさらに含み、前記トレーニングする工程が、前記３Ｄビジョンシステムを用いて前記３Ｄ物体の少なくとも一つの３Ｄトレーニング画像を取得する工程と、前記３Ｄビジョンシステムを用いて前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程と、前記３Ｄビジョンシステムを用いて、前記３Ｄリファレンス画像に基づいて３Ｄ分散モデルを推定する工程と、を含む。
【００１５】
一部の実施形態では、前記方法が、前記少なくとも一つの３Ｄトレーニング画像をフィルタ処理する工程をさらに含み、前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程が、前記少なくとも一つのフィルタ処理された３Ｄトレーニング画像に基づいて、前記３Ｄリファレンス画像を推定することを含む。
【００１６】
一部の実施形態では、前記方法が、前記３Ｄリファレンス画像をフィルタ処理する工程をさらに含み、  前記３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定する工程が、前記フィルタ処理された３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定することを含む。
【００１７】
本発明の別の実施形態によれば、三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査のための方法が開示される。この方法は、前記３Ｄビジョンシステムを用いて３Ｄ物体の少なくとも一つの３Ｄ画像を取得する工程と、前記３Ｄビジョンシステムを用いて前記３Ｄ画像の３Ｄ視覚ランタイムマスクを抽出する工程と、前記３Ｄビジョンシステムを用いて前記３Ｄランタイム視覚マスクを３Ｄリファレンス視覚マスクと比較する工程と、前記３Ｄビジョンシステムを用いて、前記３Ｄランタイム視覚マスクと前記３Ｄリファレンス視覚マスクの間に画素の差が存在するか否かを決定する工程と、を含むことを特徴とする。
【００１８】
一部の実施形態では、前記方法が、画素の差が３Ｄ分散モデルを超えるか否かを決定する工程をさらに含む。
【００１９】
一部の実施形態では、前記方法が、ケアマスクを作成する工程をさらに含む。
【００２０】
一部の実施形態では、前記方法が、前記ケアマスクを前記少なくとも一つの３Ｄ画像に適用する工程をさらに含む。
【００２１】
一部の実施形態では、前記ケアマスクは、前記３Ｄビジョンシステムとユーザによる入力との組み合わせによって作成することができる。
【００２２】
一部の実施形態では、前記方法が、前記ケアマスクを用いて、前記３Ｄリファレンス視覚マスクと前記３Ｄランタイム視覚マスクの比較のエリアを限定することを含む。
【００２３】
一部の実施形態では、前記方法が、前記比較において前記ケアマスクをバイナリ・マスクとして用い、前記ケアマスク内に含まれない画素を除外することをさらに含む。
【００２４】
一部の実施形態では、前記方法は、前記ケアマスクを重み付きマスクとして用い、前記ケアマスクの一部分内の画素により重みを与えるとともに、ケアマスクの他のエリア内の画素の重みを小さくすることをさらに含む。
【００２５】
本発明の別の実施形態によれば、三次元（３Ｄ）ビジョンシステムを用いる３Ｄビジョン検査のための方法が開示される。この方法は、前記３Ｄビジョンシステムを用いて３Ｄ物体の少なくとも一つの３Ｄ画像を取得する工程と、前記３Ｄビジョンシステムを用いて前記少なくとも一つの３Ｄ画像を３Ｄリファレンス画像にレジスターする工程と、前記３Ｄビジョンシステムを用いて前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、前記３Ｄビジョンシステムを用いて、前記少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出する工程と、を含むことを特徴とする。
【００２６】
一部の実施形態では、前記３Ｄ差は３Ｄ分散モデルを超える。
【００２７】
一部の実施形態では、前記方法が、前記少なくとも一つの３Ｄ画像をフィルタ処理する工程をさらに含み、前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像にレジスターする工程が、前記少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像にレジスターすることを含む。
【００２８】
一部の実施形態では、前記方法が、前記少なくとも一つのフィルタ処理された３Ｄ画像をフィルタ処理する工程をさらに含み、前記少なくとも一つのフィルタ処理された３Ｄ画像を前記３Ｄリファレンス画像と比較する工程が、前記フィルタ処理された少なくとも一つのフィルタ処理された３Ｄ画像を、前記３Ｄリファレンス画像と比較することを含む。
【００２９】
一部の実施形態では、前記少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出する工程が、前記少なくとも一つのフィルタ処理された３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出することを含む。
【００３０】
一部の実施形態では、前記方法が、前記３Ｄビジョンシステムをトレーニングする工程をさらに含み、前記トレーニングする工程が、前記３Ｄビジョンシステムを用いて前記３Ｄ物体の少なくとも一つの３Ｄトレーニング画像を取得する工程と、前記３Ｄビジョンシステムを用いて前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程と、前記３Ｄビジョンシステムを用いて、前記３Ｄリファレンス画像に基づいて３Ｄ分散モデルを推定する工程と、を含む。
【００３１】
一部の実施形態では、前記方法が、前記少なくとも一つの３Ｄトレーニング画像をフィルタ処理する工程をさらに含み、前記少なくとも一つの３Ｄトレーニング画像に基づいて前記３Ｄリファレンス画像を推定する工程が、前記少なくとも一つのフィルタ処理された３Ｄトレーニング画像に基づいて、前記３Ｄリファレンス画像を推定することを含む。
【００３２】
一部の実施形態では、前記方法が、前記３Ｄリファレンス画像をフィルタ処理する工程をさらに含み、  前記３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定する工程が、前記フィルタ処理された３Ｄリファレンス画像に基づいて前記３Ｄ分散モデルを推定することを含む。
【００３３】
一部の実施形態では、前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、前記少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出する工程と、が、前記３Ｄビジョンシステムを用いて前記少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像にレジスターする工程と、前記３Ｄビジョンシステムを用いて前記レジスターされた少なくとも一つの３Ｄ画像を前記３Ｄリファレンス画像と比較する工程と、前記３Ｄビジョンシステムを用いて、前記レジスターされた少なくとも一つの３Ｄ画像と前記３Ｄリファレンス画像の３Ｄ差を検出する工程と、をさらに含む。
【図面の簡単な説明】
【００３４】
【図１】レーザープロファイルセンサの動作の原理を説明する図である。
【図２】２Ｄプリント回路基板の上面図及び距離画像表現を用いた当該プリント回路基板の３Ｄ画像である。
【図３】プリント回路基板の２Ｄ画像及び同じプリント回路基板の３Ｄ画像の斜視図である。
【図４】３Ｄ検査プロセスのトレーニングフェーズ及びランタイムフェーズを説明するフローチャートである。
【図５】多視点３Ｄカメラの仕様をリストしたチャートである。
【図６】欠陥があるプリント回路基板の２Ｄ斜視図である。
【図７】図６の欠陥があるプリント回路基板の距離画像ビュー及びプリントクラウド表現である。
【図８】視覚マスクを含む３Ｄ検査プロセスにおけるトレーニングフェーズ及びランタイムフェーズを説明するフローチャートである。
【図９】オプションのケアマスクを用いる３Ｄ検査プロセスにおけるトレーニングフェーズ及びランタイムフェーズを説明するフローチャートである。
【発明を実施するための形態】
【００３５】
本発明の実施形態について詳細に説明する前に、本発明は、以下の記載又は添付の図面に示される部品の構成及び配置の詳細での応用に限定されるものでないことは理解されるべきである。本発明は、他の形態も可能であると共に、様々な方法で実施又は実行可能である。また、本明細書で用いる表現及び用語は、説明のためのものであり、限定を意図するものでないことは、理解されるべきである。本明細書に記載の「含む」、「備える」又は「有する」及びこれらのバリエーションは、その前にリストされた要素、その同等のもの及び追加の要素を包括することを意味する。別途明記又は限定のない限り、「搭載」、「接続」、「支持」、「結合」及びこれらのバリエーションの用語は、広義に使用され、直接的及び間接的な搭載、接続、支持及び結合を包括する。さらに、「接続」及び「結合」は、物理的又は機械的な接続又は結合に制限されない。
【００３６】
以下の解説は、当業者が本発明の実施形態を作成及び使用することを可能とするために示される。示された実施形態への様々な修正は当業者に明らかであり、本発明の実施形態から逸脱することなく本明細書に記載の包括的な原理を他の実施形態及び応用に適用することができる。したがって、本発明の実施形態は示された実施形態に限定されることは意図されておらず、本明細書に開示された原理及び特徴と一致する最も広い範囲とされるべきである。以下の詳細な記載は、図面を参照して理解されるべきであり、異なる図面における同様の構成要素には同様の符号を付してある。図面は、必ずしも原寸に比例しておらず、選択された実施形態を描写し、本発明の実施形態の範囲を限定することは意図していない。当業者であれば、本明細書に示された例が多くの有用な代替のものを有し、本発明の実施形態の範囲内であることを認識するであろう。
【００３７】
自動検査は、数十年間にわたり工業コンピュータビジョンにおける重要なタスクであった。自動検査は、案内（例えば、組立用案内ロボット）、識別／認識（例えば、バーコード及び特徴の読取り、又は色、形状若しくは質感によるマッチング）、及び計測（寸法測定）とともに、重要な応用である。
【００３８】
この応用のために、検査は、欠陥の発見又は製造プロセスが許容誤差内に維持されているかの決定として定義される。欠陥は、限定を意図しない一例として、許容範囲から外れた測定特徴として定義することができる。
【００３９】
２Ｄ工業コンピュータビジョンにおける品質検査は多くの例が存在する。これらの品質検査は、四つのグループに分類することができ、それらは、表面検査、寸法検査、構造検査、及び動作検査である。２Ｄ工業コンピュータビジョンタスクを分類する他の方法は、システムにより測定される自由度によるもので、位置姿勢、サイズ、形状、色、質感又は照明である。
【００４０】
工業検査として２Ｄビジョンの代わりに３Ｄビジョンを考慮する理由の一つは、２Ｄ検査が不適切な場合である。これは、２Ｄ画像よりも３Ｄ画像からより正確に又は安定して抽出された物理的サイズ、面積又は体積によって検査特性が特徴付けられる場合、及び３Ｄ画像のコストがそれほど高くない場合に起る。これが事実である場合、３Ｄ画像データが使用される可能性がある。
【００４１】
３Ｄカメラ及び３Ｄデータセットを用いる３Ｄコンピュータビジョンと、２Ｄコンピュータビジョン及び２Ｄ画像を比較すると、多くの構成要素がよく知られている。これらは、カメラ及びカメラ較正、多次元画像データ及びそれに関連した表現品、ノイズ除去又は信号強調のための画像フィルタリング、及び画像レジストレーション又は位置姿勢推定を含む。各要素の詳細は、同じ部分の２Ｄ画像と３Ｄ画像を比べても、かなり異なる。
【００４２】
欠陥を調べるために画像化され得る３Ｄ物体の限定を意図しない例は、ブラケット、タービンブレード、歯ブラシ又はタイルを含んでもよい。これら及び他の物体は、金属、プラスチック、木材及び／又はセラミックなどの多様な異なるタイプの材料から作成されてもよい。３Ｄ物体は、表面仕上げが粗いものから滑らかなものまで様々でよく、任意の色又はパターンでもよい。
【００４３】
図１は、レーザープロファイルセンサ１００の動作の原理を説明する図である。三角測定に基づき、カメラ及びレーザーは、物体を、ベースライン分離距離からとらえる(view)ことができる。とらえられたレーザーラインの位置が物体の高さに直接対応することから、これらの位置を距離画像又はポイントクラウドの形で３Ｄ高さデータに変換することができる。これにより３Ｄ高さデータの単一列が生成されるのみであることに留意する。物体全体をカバーするためには、カメラ又は物体の何れかを移動させなければならない。通常、物体がカメラの下で、移動ステージ又はコンベアベルトの上で移動し、あるいは、カメラがロボットにより移動される。図２は、２Ｄプリント回路基板２００の上面図及び距離画像表現２０２を用いたプリント回路基板の３Ｄ画像を示す。
【００４４】
図３は、プリント回路基板３００の２Ｄ画像と、同じプリント回路基板の３Ｄ画像３０２の差の一部を示す。２Ｄ画像は、回路基板の表面の透視マッピング(perspective mapping)である。これには、基板の表面上のパターンに関する情報（画像化光学システムにより歪められた回路基板表面のアルベド）及び入射照明が含まれる。３Ｄ画像は、プリント回路基板自体の３Ｄ形状、サイズ及び寸法に関する情報を含む。アルベド値は、明らかな３Ｄ形状に僅かに影響を及ぼしてもよく、アーチファクトを生じてもよく又は目に見えなくてもよい。
【００４５】
また、図３は、プリント回路基板の２Ｄ画像と、同じプリント回路基板の３Ｄ画像との差を、斜視図で示す。２Ｄ画像は、強い遠近感とともに、かなり異なる見た目を有し得る。前景はかなり広い。遠景はより狭い。一方、両方の図における内在する３Ｄデータは同一である。３Ｄ画像は異なるビューポイントから表示されているだけで、遠近感は画像データにはエンコードされない。
【００４６】
カメラハードウェアもまたかなり異なり得る。３Ｄ工業カメラは、２Ｄ工業カメラ（日用品化されつつある）よりも、一般的に複雑であってコストも高い。
【００４７】
較正プロセスは、２Ｄカメラと３Ｄカメラとではかなり異なる。２Ｄビジョンでは、完全に較正されたカメラ（内因性及び外因性で推定された）は、物体が平坦であるなどの特別な状況を除いて、物体空間における較正を暗示しない。３Ｄビジョンでは、カメラ較正は、しばしば物体空間較正をもたらすことができる。つまり、３Ｄビジョンでは、較正された物体寸法（物理的寸法）が得られる。
【００４８】
２Ｄ工業コンピュータビジョンシステムカメラ光学は、しばしば柔軟かつ交換可能である。したがって、必要なレンズ較正を行わなければならないシステムインテグレーターによって、２Ｄカメラレンズの選択がなされる。この柔軟性は、３Ｄカメラでは、レンズまたは光学的構成が通常は製造業者によって固定されていることから、ほとんど得られない。しかしながら、このことは、３Ｄカメラ製造業者によって製造時に較正（又は部分較正）を達成することができるという利益がある。しかしながら、これは、レンズの交換という選択肢がない、正しい３Ｄカメラ仕様の選択において、システムインテグレーターがより大きな責任を負うこととなる。
【００４９】
画像表現もまた３Ｄでは異なり得る。２Ｄビジョンでは、画像はほぼ常に、モノクロ又は色彩強度の２Ｄアレイとして表現される。３Ｄビジョンでは、画像は、３Ｄポイントの一群（ポイントクラウド）、又は深さ／高さの値からなる２Ｄアレイ（見える表面の距離画像表現）、又はスカラー若しくはベクトル測定値からなる３Ｄアレイ（高密度体積表現）でもよい。いかなる処理も、画像表現に対応しなければならない。
【００５０】
さらに、３Ｄ画像データではノイズが異なる。カメラは、オクルージョン又は信号リターンの悪さが原因で、高密度３Ｄデータを取得しない場合がある。また、カメラ側で、画像データがどこで欠落しているのかを知ることができる。ノイズは、３Ｄカメラの詳細に依存して、ゴースト反射又は隔離された点という形をとる。ノイズ除去のための３Ｄにおける画像フィルタリングの選択は、３Ｄカメラの詳細な特徴に依存すべきである。
【００５１】
したがって、３Ｄビジョンシステムを工業検査に使用することができ、以下に３Ｄビジョンシステムについてより詳細に記載する。本願に記載の工業検査へのアプローチは、いくつかの実施形態において、正常バリエーションの外にある製造部品の３Ｄバリエーションを検出するために用いることができる。欠陥の例としては、３Ｄ物体を３Ｄリファレンス物体と比較したときの、その３Ｄ物体からの材料の欠落、又はその３Ｄ物体への余分な材料などがある。しかしながら、部品の位置、部品の高さ、部品の向きなどの他の欠陥もまた、３Ｄビジョンシステムを用いて検出することができる。
【００５２】
図４は、３Ｄ検査アプローチを要約したものをしめす。このアプローチは、トレーニングフェーズ４００を含み、このフェーズは、検査のセットアップが終わり、リファレンス・アライメント・テンプレートと正常バリエーションの両方が推定されたときに、行われてもよい。さらに、上記アプローチは、ランタイムフェーズ４５０を含み、このフェーズでは、テスト部分が画像化され、レジスターされ、「ゴールデン部分」（アライメントにおいて、これはリファレンス・アライメント・テンプレートである）と比較されて、欠陥がテスト部分の正常バリエーションを超えた場合に、その欠陥が検出される。
【００５３】
トレーニングフェーズ４００は、セットアッププロセス中に起る。これは、許容可能なバリエーションを有する検査対象の物体の３Ｄ画像（「トレーニング画像」）の収集、及びこれらのバリエーションの理解に関連する。さらに、代表的なデータの収集は、検査の成功のカギを握る重要な部分である。代表的なデータセットは、分散モデルを作成し検証するために用いることもできる。トレーニング工程は、以下により具体的に記載するように、１）「良い(good)」サンプルの複数の例を収集して良いサンプルの３Ｄ画像（「トレーニング画像」）を取得し、２）ポイントクラウド・アライメント又は他の適切な３Ｄアライメント技法をもちいて、「良い」サンプルを互いに（又は最初のものと）整列させ、３）徐々に追加して又は「バッチモード」（例えば、統計的部分、各表面パッチの平均＋標準偏差、を作成）の何れかで、全ての整列されたサンプルから良い部分の許容可能なバリエーションを学習すること、を含む。
【００５４】
ブロック４０２において、３Ｄカメラを選択することができる。異なるベンダーから販売されている、異なる画像化原理を用いた工業３Ｄカメラが数多く存在する。用いられている画像化原理の例としては、Ｓｈａｐｅ−ｆｒｏｍ技法、ステレオ方式(Stereo)、構造化照明方式(Structured Light)、飛行時間方式(Time-of-Flight)、ライトフィールド生成(Light field generation)が挙げられる。入手可能な３Ｄ画像化装置は、Ｃｏｇｎｅｘ社製のＤＳ１０００シリーズなどのレーザー光プロファイルカメラ、Ｍｉｃｒｏｓｏｆｔ製のＫｉｎｅｃｔ（登録商標）  Ｖ２などの飛行時間カメラ、Ｉｎｔｅｌ製のＲｅａｌｓｅｎｓｅ（登録商標）  ３Ｄなどのステレオカメラを含んでもよい。
【００５５】
周辺光制限、限られたモーションキャプチャ能、表面特性、ノイズ特性又は分解能が原因で、使用される画像化原理によって検査できるものが限定される場合がある。しかしながら、画像化原理が検査を可能にしたとしても、３Ｄカメラは通常固定の光学を有する。したがって、画素分解能、サイズ、フォーマット及びインターフェースのみを制限する２Ｄカメラの選択とは異なり、３Ｄカメラは通常、固定の撮影範囲、フィールド・オブ・ビュー、照明及びｘ，ｙ，ｚにおける分解能も有する。図５は、３Ｄカメラ仕様５００の例を示す。結論としては、３Ｄカメラの選択は慎重に行う必要がある。
【００５６】
加えて、３Ｄ画像データは、ポイントクラウド（画像化装置からくるｘ，ｙ，ｚ座標を含む３Ｄポイントの収集）又は距離画像（ｚ深さ又はｚ高さデータの２Ｄアレイ）などの異なる表現を有する点で、２Ｄ画像と異なる。
【００５７】
トレーニングフェーズ中、プロセスブロック４０４において、３Ｄトレーニングデータセットを収集するために複数の３Ｄ画像を取得することができる。トレーニング画像を互いに整列させるのに使用できるとともに、平均及び分散データの推定を可能とする３Ｄアライメントモデルを作成するために、その後、許容可能なバリエーションを有する３Ｄ画像を選択することができる。さらなる検証及び試験のために、追加の画像を収集することもできる。
【００５８】
プロセスブロック４０６において、取得された画像をフィルタ処理することができる。一実施例では、アライメントを向上させるためにアーチファクトを除去するために、画像をフィルタ処理してもよい。目標は、アライメントの正確さを低下させ得るアーチファクトの除去である。そのようなアーチファクトは、ある部分への鏡面反射性ハイライトに起因するゴースト・スパイクでもよい。スパイクは、その部分の表面から離れた隔離された点として定義することができる。これらのアーチファクトを除去するために、これらを検出することが必要となる。別個の及び／又は独立したフィルタリングを用いて、アライメント用のアーチファクト及び検査用のアーチファクトを除去することができる。検査フィルタリングは、後のステージで行ってもよい。可能な、限定を意図しないフィルタの例として、検出されたオクルージョンからの欠測データにわたる挿入、隔離された画素などの画像化アーチファクト（スパイク又は穴）の除去、及び密度正規化が挙げられる。このフィルタリングを用いて、アライメントのための画像分解能を選択すること、及びトレーニング画像が同じ画像分解能を有することを保証することもできる。また、フィルタリングを用いて、外れ値又は検査中に考慮すべきでない小さな領域を除去することもできる。加えて、フィルタリングは、Ｃｏｇｎｅｘ製ＶｉｓｉｏｎＰｒｏ（登録商標）などの市販のソフトウェアを用いて又はオープン・ソース・ツールを用いて行うことができる。
【００５９】
プロセスブロック４０８において、３Ｄリファレンス画像を推定することができる。フィルタリングステップ４０６において決定された許容可能なバリエーションを有する３Ｄ画像を用いて、３Ｄアライメントモデルを作成することができる。３Ｄアライメントモデルを用いて、そのアライメントモデルに対するトレーニング画像の相対的アライメント（並進及び回転）を、バッチモードで、一つずつ、増加的に又は一度に推定することができる。この相対的アライメントの推定は、３Ｄ画像を互いに整列させるために当該分野で周知の３Ｄアライメント技法を用いて行うことができる。例えば、Ｃｏｇｎｅｘ製ＶｉｓｉｏｎＰｒｏ（登録商標）のツールキットなどの市販の画像レジストレーション・ツールを用いてもよく、又は、http://www.pointcloud.orgより入手可能なＰＣＬライブラリあるいは３ＤＴＫ、若しくはhttp://sourceforge.net/projects/slam6d/から入手可能な３Ｄツールキットなどのオープン・ソース・レジストレーション・ツールを用いてもよい。次に、オプションで、３Ｄレジストレーション・ツールにより得られた相対的アライメントの推定を用いて、３Ｄ画像を、互いに整列させるとともに、アライメントにできるだけ近づけて再レンダリングしてもよい。再レンダリングは、従来の３Ｄコンピュータグラフィック技法によって行ってもよい。この再レンダリングステップはオプションではあるものの、以下のステップを簡単化できるので望ましい。
【００６０】
プロセスブロック４１０において、再度画像をフィルタ処理することができる。プロセスブロック４１０でのフィルタリングステップを用いて、欠陥を見付けるための適切なスケールを設定するために、分散推定のためにモデルの分解能を調整することができる。アライメントのためのフィルタリングとは異なり、画像内にスパイク及び穴が残されていてもよい。モデルの分解能の調整は、距離画像データに対して直接行ってもよく、又はポイントクラウドデータを再度メッシュ分割(re-meshing)することにより行ってもよい。
【００６１】
最後に、プロセスブロック４１２において、３Ｄ分散モデルを推定することができる。一実施形態では、再レンダリングされた又は整列された３Ｄ画像内の各表面位置又は表面パッチの統計データを推定することができる。これらの統計データは、平均位置、平均表面配向、位置の標準偏差、表面配向の標準偏差などを含んでもよい。オプションで、これらの３Ｄ統計データは、各寸法(dimension)について異なる分解能で収集されてもよい。統計データの収集により、欠落した画素を考慮することができる（例えば、一部のパッチは、収集された画像の視点により一部のトレーニング画像で見ることができない）。通常、欠落画素は、どの表面位置又はパッチにおいても、画像統計データに寄与すべきでない。統計データの収集により、３Ｄデータからの表面パッチの推定の困難性も考慮することができる（たとえは、反射性の及び部分的に透明な部分は、平均表面パッチの推定が困難となる）。
【００６２】
次にランタイム手順４５０について説明すると、単一検査部分の３Ｄ画像の取得、リファレンス部分に対する画像のアライメント、及び存在する欠陥の決定のプロセスが示されている。以下により詳細に記載するように、ランタイム手順４５０は、通常、１）「テスト」サンプルを取得するステップ、２）ポイントクラウド・アライメント又は他の適切な３Ｄアライメント技法を用いて「テスト」サンプルを整列させるステップ、３）整列された「テスト」サンプルを、トレーニング手順４００中に決定された「良い」統計的部分と比較するステップ、及び４）各得られる画像分解能における潜在的欠陥を特定するステップを含んでもよい。潜在的欠陥は、統計的部分との差の閾値（閾値Ｘ標準偏差）を超える「テスト」サンプルの候補表面パッチ、又は「テスト」サンプルとの閾値差を超える平均の「良い」サンプルの候補表面パッチに対応する。欠陥の第一セットは、「テスト」サンプル内のマッチしない特徴に対応してもよい。欠陥の第二セットは、「良い」サンプル内のマッチしない特徴に対応してもよい。
【００６３】
プロセスブロック４５２において、ユーザは３Ｄカメラを選択することができる。トレーニングの間のセットアッププロセス中に用いたものと同じカメラ及び同じ画像化条件を用いることが重要である。さもなければ、カメラのばらつき又は画像化のばらつきが欠陥として現れる可能性がある。プロセスブロック４５４において、欠陥を見つけるために３Ｄテスト画像を取得することができる。
【００６４】
プロセスブロック４５６において、取得された画像をフィルタ処理することができる。第一のフィルタリングステップは、アライメント又は姿勢推定のために画像をフィルタ処理することを含むことができる。目標は、アライメントアルゴリズムの正確さ又はロバスト性を低減させ得るアーチファクトの除去であってもよい。そのようなアーチファクトは、ある部分への鏡面反射性ハイライトに起因するゴースト・スパイクでもよい。スパイクは、その部分の表面から離れた隔離された点として定義することができる。これらのスパイク又は隔離された点の除去には、これらの消去、これらの除去、これらをデータ内の穴又は正しく挿入されたデータと置き換えることが必要となる。
【００６５】
プロセスブロック４５８において、３Ｄテスト画像を３Ｄリファレンス画像にレジスターすることができる。その後、適切な３Ｄアライメント技法を用いて、リファレンス画像に対するテスト部分の並進及び回転を見つけることができる。これは、Ｃｏｇｎｅｘ製ＶｉｓｉｏｎＰｒｏ（登録商標）ツールキットなどの市販の画像レジストレーション・ツールを用いて、又は、http://www.pointcloud.orgより入手可能なＰＣＬライブラリあるいは３ＤＴＫ、若しくはhttp://sourceforge.net/projects/slam6d/から入手可能な３Ｄツールキットなどのオープン・ソース・レジストレーション・ツールを用いて、達成することができる。
【００６６】
プロセスブロック４６０において、画像を再レンダリング及びフィルタ処理することができる。ここで、３Ｄ画像データを、リファレンス画像と整列するよう再レンダリングすることができる。その後、３Ｄ画像データを、典型的には、表面密度にマッチさせるために、フィルタ処理することができる。他の３Ｄ画像データ正規化フィルタリングを、このステップで行ってもよい。
【００６７】
プロセスブロック４６２において、３Ｄテスト画像を３Ｄリファレンス画像と比較することができる。３Ｄテスト画像は、整列され、フィルタ処理され、再レンダリングされた後、リファレンス３Ｄデータと直接比較されてもよい。例えば、表面パッチ又は個別の画素同士を直接比較してもよい。その際の差は、もしこれらが以下に記載する様々な統計的テストのうちの少なくとも一つを満たす場合、潜在的な欠陥として観測される。
【００６８】
プロセスブロック４６４において、３Ｄ分散モデルを超える３Ｄ画像データの差を検出することができる。欠陥として考えるには、特定された潜在的欠陥はさまざまな統計的テストのうちの少なくとも一つを満たす必要がある。統計的テストの例としては、１）「良い」サンプルの最も近い平均表面パッチまでの、整列された「テスト」サンプル表面パッチからの距離が大きすぎる、２）整列された「テスト」サンプル表面パッチの配向が、「良い」サンプルの最も近い平均表面パッチの配向とかなり異なる、３）「テスト」サンプルの最も近い平均表面パッチまでの、整列された「良い」サンプル表面パッチからの距離が大きすぎる、又は４）整列された「良い」サンプル表面パッチの配向が、「テスト」サンプルの最も近い平均表面パッチの配向とかなり異なる、が挙げられる。上記の統計的テストの各々は、固定閾値又は平均からの標準偏差の倍数を設定することにより、システムによって、自動的に選択することができる。統計的テストの結果は、欠陥として指定することができる。
【００６９】
図６は、欠陥があるプリント回路基板６００の２Ｄ画像を示す。基板５００は、欠落した又は誤った位置に置かれた部品に対応する基板上の４つの考えられる欠陥を示す。図７は、欠陥があるプリント回路基板６００を距離画像として示した３Ｄ距離画像７００を示す。統計的テストによって特定された４つの欠陥が、参照符号７０２ａ−ｄに対応する。３Ｄ距離画像７１０は、４つの欠陥７０２ａ−ｄを有する、ポイントクラウドとしてみた場合の欠陥があるプリント回路基板６００の３Ｄ画像を示す。
【００７０】
上述のように、３Ｄアライメント（物体の３Ｄ画像を整列させる）は、２Ｄアライメントと大きく異なる。３Ｄアライメント及び３Ｄ検査においては、例えば、自己オクルージョン、カメラの視野構造及び照明による欠落画素、並びに自己オクルージョンによる３Ｄ画像の欠落部分について、対処しなければならない。さらに、画像の差の特定は、３Ｄ画像と２Ｄ画像でかなり異なる。例えば、３Ｄポイント位置のノイズが原因で、ポイント間の差分（２Ｄ画像で行われるように）は、通常、３Ｄにおいては効果的に機能しない。むしろ、与えられた分解能での平面間又はファセット間の比較によって、通常、より良いデータが提供される。
【００７１】
この応用は、３Ｄ工業コンピュータビジョン検査をカバーする。工業コンピュータビジョンにおいて、検査のための追加のデータソースとして３Ｄ画像の採用が増えている。本出願では、工業コンピュータビジョンシステムでの自動視覚的検査における３Ｄ画像データの使用を記載した。自動ビジュアル工業検査を定義し、３Ｄ工業検査と２Ｄ工業検査の違いを検証した。最後に、自動３Ｄ工業検査アプローチの背後にある技術的詳細を提供するための例を示した。
【００７２】
次に図８を参照すると、欠落画素について３Ｄ画像を論理的に評価するためのプロセスが示されている。欠落画素について３Ｄ画像を論理的に評価することによって、欠落画素が画像化された物体における材料の欠如によるものなのか、あるいは欠落画素がオクルージョン、自己オクルージョン及び／又は画像キャプチャノイズなどの画像化エラーの結果であるのか、を決定するために欠落画素を評価できるよう、画像を評価することができる。図８の論理評価プロセスによって、欠落材料と画像化エラーの相違を提供するための分析を提供することができる。図８は、図４に関して議論したものと同様の３Ｄ検査アプローチを要約したものである。例えば、このアプローチは、トレーニングフェーズ８００を含み、このフェーズは、検査のセットアップが終わり、リファレンス・アライメント・テンプレートと正常バリエーションの両方が推定されたときに、行われてもよい。さらに、上記アプローチは、ランタイムフェーズ８２０を含み、このフェーズでは、テスト部分が画像化され、レジスターされ、「ゴールデン部分」（アライメントにおいて、これはリファレンス・アライメント・テンプレートである）と比較されて、欠陥がテスト部分の正常バリエーションを超えた場合に、その欠陥が検出される。
【００７３】
トレーニング手順８００は、プロセスブロック８０２において３Ｄカメラを選択する工程と、プロセスブロック８０４において３Ｄトレーニングデータセットを収集する（複数３Ｄ画像取得）工程と、プロセスブロック８０６において画像をフィルタ処理する工程と、を実行することができる。これらのプロセスは、上記のトレーニング手順４００に関して議論したものと同じように動作することができる。プロセスブロック８０８において、３Ｄ視覚トレーニングマスクを抽出することができる。一実施形態において、３Ｄ視覚トレーニングマスクは、３Ｄカメラによって自動的に抽出できる。あるいは、ユーザが、取得された画像のエリアを３Ｄトレーニング視覚マスクとして選択してもよい。さらに、３Ｄトレーニング視覚マスクを、３Ｄカメラによる自動生成とユーザ仕様との組み合わせを介して抽出してもよい。他の実施形態では、コントローラ、コンピュータ又は他の適用可能装置などの外部装置を用いて、３Ｄトレーニング視覚マスクを抽出してもよい。３Ｄトレーニング視覚マスクによって、プロセスブロック８０６においてフィルタ処理された画像内の画素の存否を検出するために、フィルタ処理画像を評価することができる。
【００７４】
プロセスブロック８０８で３Ｄトレーニング視覚マスクが抽出されると、プロセスブロック８１０で３Ｄリファレンス画像が推定される。３Ｄリファレンス画像は、上記のトレーニング手順４００で述べたように推定することができる。プロセスブロック８１０で３Ｄリファレンス画像が推定されると、プロセスブロック８１２で３Ｄリファレンス視覚マスクを推定することができる。３Ｄリファレンス画像の推定について上述した方法と同様に、プロセスブロック８０８で抽出された３Ｄトレーニング視覚マスクを用いて、３Ｄリファレンス視覚マスクを推定することができる。３Ｄアライメントモデルを用いて、そのアライメントモデルに対する３Ｄトレーニング視覚マスクの相対的アライメント（並進及び回転）を、バッチモードで、一つずつ、増加的に又は一度に推定することができる。この相対的アライメントの推定は、３Ｄ画像を互いに整列させるために当該分野で周知の３Ｄアライメント技法を用いて行うことができる。例えば、Ｃｏｇｎｅｘ製ＶｉｓｉｏｎＰｒｏ（登録商標）のツールキットなどの市販の画像レジストレーション・ツールを用いてもよく、又は、http://www.pointcloud.orgより入手可能なＰＣＬライブラリあるいは３ＤＴＫ、若しくはhttp://sourceforge.net/projects/slam6d/から入手可能な３Ｄツールキットなどのオープン・ソース・レジストレーション・ツールを用いてもよい。次に、３Ｄレジストレーション・ツールにより得られた相対的アライメントの推定を用いて、３Ｄ画像を、互いに整列させるとともに、アライメントにできるだけ近づけて再レンダリングしてもよい。再レンダリングは、従来の３Ｄコンピュータグラフィック技法によって行ってもよい。この再レンダリングステップはオプションではあるものの、以下のステップを簡単化できるので望ましい。
【００７５】
プロセスブロック８１２で３Ｄリファレンス視覚マスクが推定されると、プロセスブロック８１４で、推定された３Ｄリファレンス画像をフィルタ処理でき、プロセスブロック８１６で３Ｄ分散モデルを推定できる。３Ｄ分散モデル８１６は、上述のトレーニング手順４００において説明したプロセスを用いて推定することができる。
【００７６】
トレーニング手順８００が完了した後、ランタイム手順８２０を実行することができる。ランタイム手順８２０では、プロセスブロック８２４で一以上の３Ｄテスト画像を取得するために、プロセスブロック８２２において、プロセスブロック８０２で選択された３Ｄカメラを用いることができる。一実施形態では、プロセスブロック８２４において３つのテスト画像を取得することができる。その後、プロセスブロック８２６でテスト画像をフィルタ処理することができる。プロセスブロック８２２、８２４及び８２６での、テスト画像を取得するための選択されたカメラの使用及び後続の取得画像のフィルタ処理は、それぞれ、上述したランタイム手順４５０で説明した方法を用いて実行することができる。プロセスブロック８２８において、３Ｄランタイム視覚マスクを抽出することができる。一実施形態において、３Ｄランタイム視覚マスクを３Ｄカメラによって自動で抽出できる。さらに、３Ｄランタイム視覚マスクを、３Ｄカメラによる自動生成とユーザ仕様との組み合わせを介して抽出してもよい。他の実施形態では、コントローラ、コンピュータ又は他の適用可能装置などの外部装置を用いて、３Ｄランタイム視覚マスクを抽出してもよい。３Ｄランタイム視覚マスクによって、プロセスブロック８２６においてフィルタ処理された画像内の画素の存否を検出するために、フィルタ処理画像を評価することができる。
【００７７】
上述のランタイム手順４５０と同様に、プロセスブロック８３０において、３Ｄテスト画像を３Ｄリファレンス画像にレジスターすることができる。プロセスブロック８３２において、画像を再レンダリング及びフィルタ処理することができる。ここで、３Ｄ画像データは、リファレンス画像と整列するよう再レンダリングされる。その後、３Ｄ画像データを、典型的には、表面密度にマッチさせるために、フィルタ処理することができる。他の３Ｄ画像データ正規化フィルタリングを、このステップで行ってもよい。
【００７８】
ランタイム手順４５０で説明したように、プロセスブロック８３４において、３Ｄテスト画像を３Ｄリファレンス画像と比較することができる。３Ｄリファレンス視覚マスクを３Ｄランタイム視覚マスクと比較するプロセスブロック８３４での３Ｄ画像の比較とは反対に、プロセスブロック８３６で実行される比較では、混合画素の構成が正確であることを検証するために、論理比較プロセスを用いることができる。比較方法の例としては、論理演算子（ＡＮＤ、ＯＲ、ＸＯＲなど）の使用が挙げられる。例えば、ＡＮＤ演算子を用いて３Ｄリファレンス視覚マスクを３Ｄランタイム視覚マスクと比較することができる。ＡＮＤ演算子が用いられる場合、画素が、３Ｄリファレンス視覚マスクと３Ｄランタイム視覚マスクの両方に存在する場合のみ、論理値「１」が出力される。比較すると、画素が３Ｄリファレンス視覚マスクと３Ｄランタイム視覚マスクとのうちの少なくとも一つに存在する場合に、論理値「１」が出力される。あるいは、平均化、中央値分析、投票システム、及び／又は上記したようなアライメント方法を含む他の比較方法を用いてもよい。
【００７９】
推定３Ｄリファレンス視覚マスクを３Ｄランタイム視覚マスクと比較することによって、何れの画素の欠落も物体上の材料の欠落に起因するものであって、オクルージョンや画像化ノイズなどに起因する画像化エラーではないことを検証することが可能である。さらに、上述の方法によって、取り込まれた画像内の画素の存否について、トレーニング画像とランタイム画像の両方を効率的に評価することができる。例えば、上記の分析は、与えられた画素が、トレーニング手順８００において存在しかつランタイム手順８２０において欠落している；トレーニング手順８００において欠落しかつランタイム手順８２０において存在している；又はトレーニング手順８００とランタイム手順８２０の両方において欠落していることを、決定することができる。この情報を用いて、取得３Ｄ画像をさらに評価することができる。さらに、比較データを、上述した統計的分析などの取得３Ｄ画像の統計的分析に用いることができる。
【００８０】
次に図９を参照すると、３Ｄ画像を論理的に評価するプロセス９００が示されている。プロセス９００は上述した図４及び図８に示されたものと同様の工程を含む。プロセス９００はトレーニング手順９０２を含む。トレーニング手順は、図８に関連して説明したプロセスブロック８０２、８０４、８０６、８０８、８１０、８１２、８１４及び８１６を含むことができる。プロセスブロック９０４において、オプションのケアマスクを作成することができる。ケアマスクを用いて、３Ｄ物体の関心エリアを選択することができる。一実施形態において、ケアマスクによって選択された関心エリアは、３Ｄ物体の２Ｄエリアでもよい。さらに、ケアマスクによって選択された関心エリアは、３Ｄ物体の取得画像の一以上の特定画素でもよい。例えば、ケアマスクによって選択された関心領域は、３Ｄ物体の取得画像の特定画素のセットでもよい。ケアマスクは、ユーザによって作成されてもよい。例えば、ユーザは、ケアマスクに含まれるべき３Ｄ画像のエリアを選択することができる。あるいは、ケアマスクは、画像化システムによって自動で作成することができる。さらに、ケアマスクは、画像化システムとユーザ入力の組み合わせによって作成することができる。
【００８１】
プロセスブロック９２０において、ランタイム手順が示されている。ランタイム手順９２０は、図８に関連して説明したプロセスブロック８２２、８２４、８２６、８２８、８３０、８３２及び８３８を含むことができる。プロセスブロック９２２において、３Ｄテスト画像を３Ｄリファレンス画像及びケアマスクと比較することができる。ケアマスクは、３Ｄテスト画像と３Ｄリファレンス画像の比較のエリアを限定することができる。一実施形態において、ケアマスクは、比較においてバイナリ・マスクとして使用することができ、これによりケアマスク内に含まれていない画素を除外することができる。あるいは、ケアマスクは重み付きマスクとして使用することができ、これによりケアマスクの一部分内の画素により重みを与えるとともに、ケアマスクの他のエリア内の画素の重みを小さくすることができる。上述したように、ケアマスクはユーザによって作成することができ、したがって、ユーザは、プロセスブロック９０４においてケアマスクの部分によって与えられる重み付けを定めることができる。
【００８２】
プロセスブロック９２４において、ケアマスクを用いて、推定３Ｄリファレンス視覚マスクを３Ｄランタイム視覚マスクと比較することができる。ケアマスクは、３Ｄリファレンス視覚マスクと３Ｄランタイム視覚マスクとの比較のエリアを限定することができる。一実施形態では、比較においてケアマスクをバイナリ・マスクとして用いることができ、これにより、ケアマスク内に含まれていない画素を除外することができる。あるいは、ケアマスクは、重み付きマスクとして使用することができ、これによりケアマスクの一部分内の画素により重みを与えるとともに、ケアマスクの他のエリア内の画素の重みを小さくすることができる。
【図４】
2017032548.tif 000003
【図５】
2017032548.tif 000004
【図８】
2017032548.tif 000005
【図９】
2017032548.tif 000006
【手続補正書】
【提出日】平成28年9月23日(2016.9.23)
【手続補正１】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2017032548.tif 000007
【図２】
2017032548.tif 000008
【図３】
2017032548.tif 000009
【図４】
2017032548.tif 000010
【図５】
2017032548.tif 000011
【図６】
2017032548.tif 000012
【図７】
2017032548.tif 000013
【図８】
2017032548.tif 000014
【図９】
2017032548.tif 000015
【外国語明細書】
2017032548.tif 000016
2017032548.tif 000017
2017032548.tif 000018
2017032548.tif 000019
2017032548.tif 000020
2017032548.tif 000021
2017032548.tif 000022
2017032548.tif 000023
2017032548.tif 000024
2017032548.tif 000025
2017032548.tif 000026
2017032548.tif 000027
2017032548.tif 000028
2017032548.tif 000029
2017032548.tif 000030
2017032548.tif 000031
2017032548.tif 000032
2017032548.tif 000033
2017032548.tif 000034
2017032548.tif 000035
2017032548.tif 000036
2017032548.tif 000037
2017032548.tif 000038
2017032548.tif 000039
2017032548.tif 000040
2017032548.tif 000041
2017032548.tif 000042
2017032548.tif 000043
2017032548.tif 000044
2017032548.tif 000045
2017032548.tif 000046
2017032548.tif 000047
【選択図】図４
【図１】
2017032548.tif 000048
【図２】
2017032548.tif 000049
【図３】
2017032548.tif 000050
【図４】
2017032548.tif 000051
【図５】
2017032548.tif 000052
【図６】
2017032548.tif 000053
【図７】
2017032548.tif 000054
【図８】
2017032548.tif 000055
【図９】
2017032548.tif 000056