(57)【要約】【課題】予め定められた投影パターンを対象物に照射した状態で対象物を撮像した画像に基づいて対象物の位置を計測する構成において、計測のロバスト性を高める解決手段を提供する。【解決手段】計測システムは、投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、対応領域の探索結果に基づいて、投影パターンの照射基準面から対象物の各部までの距離を算出する第１の距離算出部と、第１の距離算出部が距離を算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを入力画像における周辺情報を用いて再構成することで、欠損部分についての距離の推定を試みる第２の距離算出部とを含む。【選択図】図１
2019219277.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた投影パターンを対象物に照射した状態で、前記対象物を撮像した画像である入力画像を取得する取得部を備え、前記投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものであり、
前記照射された投影パターンに含まれる各基準パターンを前記入力画像内で探索することで、各基準パターンが照射された位置および当該照射された基準パターンが示すコードの集合を取得し、前記投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、前記対応領域の探索結果に基づいて、前記投影パターンの照射基準面から前記対象物の各部までの距離を算出する第１の距離算出部と、
前記算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを前記入力画像における周辺情報を用いて再構成することで、前記欠損部分についての距離の推定を試みる第２の距離算出部とを備える、計測システム。
【請求項２】
前記投影パターンを前記照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または当該仮想背景画像に対応する仮想背景画像コードを生成する背景情報生成部をさらに備え、
前記第２の距離算出部は、前記欠損部分に対応する前記入力画像の情報と、前記仮想背景画像または前記仮想背景画像コードとを用いて、前記欠損部分の距離の推定を試みる、請求項１に記載の計測システム。
【請求項３】
前記入力画像の前記欠損部分に対応する部分または当該対応する部分の周辺に、前記仮想背景画像の対応する部分パターンを合成する合成パターン生成部をさらに備え、
前記第２の距離算出部は、前記入力画像に合成する前記仮想背景画像の前記部分パターン、および、前記仮想背景画像を生成する際の平面の距離、の少なくとも一方を順次変化させつつ、前記対応領域の探索を試みる、請求項２に記載の計測システム。
【請求項４】
前記第２の距離算出部は、前記入力画像の前記欠損部分に対応する部分において探索されたコードの少なくとも一部と、前記仮想背景画像コードの対応するコードとを組合せて生成される１または複数のコード列に対して、前記投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を探索する処理を繰返す、請求項２に記載の計測システム。
【請求項５】
前記背景情報生成部は、前記照射基準面から異なる複数の距離にある平面について、複数の前記仮想背景画像または前記仮想背景画像コードを生成する、請求項２〜４のいずれか１項に記載の計測システム。
【請求項６】
前記第２の距離算出部は、前記欠損部分に対応する前記入力画像の情報と、前記仮想背景画像または前記仮想背景画像コードとの間の位置関係を、エピポーララインに沿って変化させる、請求項２〜４のいずれか１項に記載の計測システム。
【請求項７】
前記第２の距離算出部は、前記欠損部分の推定した距離が当該推定に用いた前記仮想背景画像または前記仮想背景画像コードを生成した際の距離と異なっている場合に、前記欠損部分の距離の推定が成功であると決定する、請求項２〜６のいずれか１項に記載の計測システム。
【請求項８】
予め定められた投影パターンを対象物に照射した状態で、前記対象物を撮像した画像である入力画像を取得するステップを備え、前記投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものであり、
前記照射された投影パターンに含まれる各基準パターンを前記入力画像内で探索することで、各基準パターンが照射された位置および当該照射された基準パターンが示すコードの集合を取得し、前記投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、前記対応領域の探索結果に基づいて、前記投影パターンの照射基準面から前記対象物の各部までの距離を算出するステップと、
前記算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを前記入力画像における周辺情報を用いて再構成することで、前記欠損部分についての距離の推定を試みるステップとを備える、計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、予め定められた投影パターンを対象物に照射した状態で対象物を撮像した画像に基づいて対象物の位置を計測する計測システムおよび計測方法に関する。
【背景技術】
【０００２】
従来から、光学的な手法を用いて対象物の三次元形状を計測する技術が知られている。例えば、特開２０１２−０７９２９４号公報（特許文献１）は、複数種類の符号が二次元に並ぶ投影符号列の各符号に、符号の種類ごとに異なる色または輝度を有する点をシンボルとおして割り当てることで得られた二次元の点列を含む投影パターンを被写体に投影し、投影パターンが投影された被写体を撮像することにより得られた撮像画像を用いて被写体の三次元計測を行う画像情報処理装置を開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−０７９２９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の特許文献１に開示される方法では、所定数の情報符号列を用いて符号誤り検出を行うことで情報符号列を復元する。しかしながら、所定数の情報符号列を取得できない場合には、目的の情報符号列を復元できない可能性がある。すなわち、周辺探索だけでは、情報符号列を復元できず、計測できない欠損部分が生じ得る。
【０００５】
本技術は、予め定められた投影パターンを対象物に照射した状態で対象物を撮像した画像に基づいて対象物の位置を計測する構成において、計測のロバスト性を高める解決手段を提供することを一つの目的とする。
【課題を解決するための手段】
【０００６】
本技術の一つの実施形態に従う計測システムは、予め定められた投影パターンを対象物に照射した状態で、対象物を撮像した画像である入力画像を取得する取得部を含む。投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものである。計測システムは、照射された投影パターンに含まれる各基準パターンを入力画像内で探索することで、各基準パターンが照射された位置および当該照射された基準パターンが示すコードの集合を取得し、投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、対応領域の探索結果に基づいて、投影パターンの照射基準面から対象物の各部までの距離を算出する第１の距離算出部と、投影パターンを照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または当該仮想背景画像に対応する仮想背景画像コードを生成する背景情報生成部と、第１の距離算出部が距離を算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを入力画像における周辺情報を用いて再構成することで、欠損部分についての距離の推定を試みる第２の距離算出部とを含む。
【０００７】
この開示によれば、距離を算出できなかった部分である欠損部分についても可能な限り距離の算出が実現される。
【０００８】
上述の開示において、計測システムは、投影パターンを照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または当該仮想背景画像に対応する仮想背景画像コードを生成する背景情報生成部をさらに含む。第２の距離算出部は、欠損部分に対応する入力画像の情報と、仮想背景画像または仮想背景画像コードとを用いて、欠損部分の距離の推定を試みる。
【０００９】
この開示によれば、投影パターンの照射基準面からの距離を算出できなかった欠損部分に対して、投影パターンを照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または仮想背景画像コードを用いた推定処理を適用することで、計測の解像度より小さい幅の形状変化を有する対象物であっても、その距離情報を検出できる。
【００１０】
上述の開示において、画像計測システムは、入力画像の欠損部分に対応する部分または当該対応する部分の周辺に、仮想背景画像の対応する部分パターンを合成する合成パターン生成部をさらに含む。第２の距離算出部は、入力画像に合成する仮想背景画像の部分パターン、および、仮想背景画像を生成する際の平面の距離、の少なくとも一方を順次変化させつつ、対応領域の探索を試みる。
【００１１】
この開示によれば、回帰的に対応領域の探索を試みることで、欠損部分の距離を推定できる確率を高めることができる。
【００１２】
上述の開示において、第２の距離算出部は、入力画像の欠損部分に対応する部分において探索されたコードの少なくとも一部と、仮想背景画像コードの対応するコードとを組合せて生成される１または複数のコード列に対して、投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を探索する処理を繰返す。
【００１３】
この開示によれば、投影パターンと入力画像内の照射先との対応関係をより確実に確定でき、距離の算出精度を高めることができる。
【００１４】
上述の開示において、背景情報生成部は、照射基準面から異なる複数の距離にある平面について、複数の仮想背景画像または仮想背景画像コードを生成する。
【００１５】
この開示によれば、異なる複数の距離についての仮想背景画像または仮想背景画像コードを適用することで、欠損部分の距離を推定できる確率を高めることができる。
【００１６】
上述の開示において、第２の距離算出部は、欠損部分に対応する入力画像の情報と、仮想背景画像または仮想背景画像コードとの間の位置関係を、エピポーララインに沿って変化させる。
【００１７】
この開示によれば、仮想背景画像または仮想背景画像コードとの間の位置関係をエピポーララインに沿って変化させることで、仮想背景画像または仮想背景画像コードの高さを異ならせることを実現でき、処理速度を高めることができる。
【００１８】
上述の開示において、第２の距離算出部は、欠損部分の推定した距離が当該推定に用いた仮想背景画像または仮想背景画像コードを生成した際の距離と異なっている場合に、欠損部分の距離の推定が成功であると決定する。
【００１９】
この開示によれば、仮想背景画像または仮想背景画像コードを生成した際の距離を誤って欠損部分の距離として算出する可能性を低減できる。
【００２０】
本技術の別の実施形態に従う計測方法は、予め定められた投影パターンを対象物に照射した状態で、対象物を撮像した画像である入力画像を取得するステップを含む。投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものである。計測方法は、照射された投影パターンに含まれる各基準パターンを入力画像内で探索することで、各基準パターンが照射された位置および当該照射された基準パターンが示すコードの集合を取得し、投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、対応領域の探索結果に基づいて、投影パターンの照射基準面から対象物の各部までの距離を算出するステップと、当該距離を算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを入力画像における周辺情報を用いて再構成することで、欠損部分についての距離の推定を試みるステップとを含む。
【００２１】
この開示によれば、距離を算出できなかった部分である欠損部分についても可能な限り距離の算出が実現される。
【発明の効果】
【００２２】
本技術によれば、予め定められた投影パターンを対象物に照射した状態で対象物を撮像した画像に基づいて対象物の位置を計測する構成において、計測のロバスト性を高めることができる。
【図面の簡単な説明】
【００２３】
【図１】本実施の形態に従う計測システムの適用例を示す模式図である。
【図２】本実施の形態に従う計測システムを構成する計測ヘッドの構成例を示す模式図である。
【図３】本実施の形態に従う計測システムに含まれる画像計測装置の構成例を示す模式図である。
【図４】本実施の形態に従う計測システムの計測ヘッドから照射される投影パターンの一例を示す図である。
【図５】本実施の形態に従う計測システムが実行する三次元計測の原理を説明するための図である。
【図６】本実施の形態に従う計測システムによる計測形態の一例を示す模式図である。
【図７】図６に示すワークを撮像することで得られる入力画像に対するプリミティブの検出結果の一例を示す図である。
【図８】図７（Ｂ）に示すプリミティブ検出結果に対応する三次元情報の復元結果の一例を示す図である。
【図９】図８に示す三次元情報の復元結果に対して三次元情報を推定する処理を説明するための図である。
【図１０】本実施の形態に従う計測システムによる三次元情報を推定できる処理を説明する模式図である。
【図１１】本実施の形態に従う計測システムにおける周辺探索の処理を説明する模式図である。
【図１２】本実施の形態に従う計測システムによる三次元情報を推定する処理内容を概説するための図である。
【図１３】本実施の形態に従う計測システムが提供する三次元情報を推定する処理を実現するための機能構成の一例を示す模式図である。
【図１４】本実施の形態に従う計測システムが提供する三次元情報を推定する処理手順を示すフローチャートである。
【図１５】本実施の形態に従う計測システムが提供する三次元情報の推定処理（画像ベース）を説明するための図である。
【図１６】本実施の形態に従う計測システムにおけるエピポーララインを説明するための図である。
【図１７】本実施の形態に従う計測システムが提供する三次元情報の推定処理の処理過程を示す図である。
【図１８】本実施の形態に従う計測システムが提供する三次元情報の推定処理（コードベース）を説明するための図である。
【発明を実施するための形態】
【００２４】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００２５】
＜Ａ．適用例＞
まず、本発明が適用される場面の一例について説明する。
【００２６】
図１は、本実施の形態に従う計測システム１の適用例を示す模式図である。図１を参照して、本実施の形態に従う計測システム１は、計測ヘッド１０および画像計測装置１００を含む。
【００２７】
画像計測装置１００は、計測ヘッド１０から予め定められた投影パターンを対象物に照射した状態で、当該対象物を計測ヘッド１０で撮像した画像である入力画像を取得する。典型的には、構造化照明に従う投影パターンが採用される。すなわち、投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものが採用される。
【００２８】
画像計測装置１００は、投影パターンの情報および取得した入力画像に現れる投影パターンの情報を用いて三次元計測処理を実行することで、三次元計測結果（三次元計測結果画像）を取得する。
【００２９】
より具体的には、画像計測装置１００は、照射された投影パターンに含まれる各基準パターン（以下、「プリミティブ」とも称す。）を入力画像内で探索することで、各プリミティブが照射された位置および当該照射されたプリミティブが示すコードの集合を取得する。そして、画像計測装置１００は、投影パターンに設定される単位領域（以下、「ワード」とも称す。）に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域（以下、「格子状コードパターン」とも称す。）を当該コードの集合から探索する。最終的に、画像計測装置１００は、格子状コードパターンの探索結果に基づいて、投影パターンの照射基準面から対象物の各部までの距離を算出する。この算出された距離の集合を三次元計測結果画像として表現できる。
【００３０】
三次元計測結果画像には、距離を算出できなかった部分である欠損部分が存在し得る。本実施の形態に従う計測システム１は、このような欠損部分の距離を推定する。より具体的には、画像計測装置１００は、投影パターンを照射基準面から任意の距離にある平面に照射した場合に撮像されるであろうパターン画像（仮想背景画像）を生成する（図１においては、（１）〜（３）の３種類）。なお、パターン画像（仮想背景画像）ではなく、パターン画像（仮想背景画像）に対応する仮想背景画像コードを用いてもよい。
【００３１】
画像計測装置１００は、算出できなかった部分（欠損部分）について、当該欠損部分に対応する不完全なコードを入力画像における周辺情報を用いて再構成することで、欠損部分についての距離の推定を試みる。
【００３２】
典型例として、入力画像における周辺情報として高さ情報などを用いて、画像計測装置１００は、距離を算出できなかった部分（欠損部分）に対応する入力画像の情報と仮想背景画像とを用いて、欠損部分の距離の推定を試みる。すなわち、本実施の形態に従う画像計測装置１００においては、三次元計測結果画像のうち距離が存在しない欠損部分を抽出し、抽出した欠損部分に対応する入力画像の領域を特定し、特定した入力画像の領域に異なる高さの仮想背景画像を当てはめることで、合成画像を生成する。画像計測装置１００は、生成した合成画像に基づいて、欠損部分に含まれる各部の高さを推定する。これによって、解像度より小さい幅の形状変化を有する対象物であっても、その距離情報を検出できる。
【００３３】
＜Ｂ．装置構成＞
次に、本実施の形態に従う計測システム１を構成する装置構成例について説明する。
【００３４】
（ｂ１：計測ヘッド１０）
図２は、本実施の形態に従う計測システム１を構成する計測ヘッド１０の構成例を示す模式図である。図２を参照して、計測ヘッド１０は、処理部１１と、投光部１２と、撮像部１３と、表示部１４と、記憶部１５とを含む。
【００３５】
処理部１１は、計測ヘッド１０における全体処理を司る。処理部１１は、典型的には、プロセッサと、プロセッサで実行される命令コードを格納するストレージと、命令コードを展開するメモリとを含む。この場合、処理部１１において、プロセッサが命令コードをメモリ上に展開して実行することで各種処理を実現する。処理部１１の全部または一部を専用のハードウェア回路（例えば、ＡＳＩＣ（Application Specific Integrated Circuit）またはＦＰＧＡ（Field-Programmable Gate Array）など）を用いて実装してもよい。
【００３６】
表示部１４は、計測ヘッド１０において取得あるいは算出された各種情報を外部へ通知する。
【００３７】
記憶部１５は、撮像部１３により撮像された画像や予め設定されるキャリブレーションパラメータなどを格納する。
【００３８】
通信インターフェイス（Ｉ／Ｆ）部１６は、計測ヘッド１０と画像計測装置１００との間のデータの遣り取りを担当する。
【００３９】
（ｂ２：画像計測装置１００）
図３は、本実施の形態に従う計測システム１に含まれる画像計測装置１００の構成例を示す模式図である。典型的には、画像計測装置１００は、汎用コンピュータを用いて実現される。図３を参照して、画像計測装置１００は、プロセッサ１０２と、メインメモリ１０４と、ストレージ１０６と、入力部１０８と、表示部１１０と、光学ドライブ１１２と、下位インターフェイス部１１４と、上位インターフェイス部１１６とを含む。これらのコンポーネントは、プロセッサバス１１８を介して接続されている。
【００４０】
プロセッサ１０２は、ＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）などで構成され、ストレージ１０６に格納されたプログラム（一例として、ＯＳ１０６０および三次元計測プログラム１０６２）を読出して、メインメモリ１０４に展開して実行することで、後述するような各種処理を実現する。
【００４１】
メインメモリ１０４は、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）などの揮発性記憶装置などで構成される。ストレージ１０６は、例えば、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などの不揮発性記憶装置などで構成される。
【００４２】
ストレージ１０６には、基本的な機能を実現するためのＯＳ１０６０に加えて、画像計測装置１００としての機能を提供するための三次元計測プログラム１０６２が格納される。
【００４３】
入力部１０８は、キーボードやマウスなどで構成され、ユーザ操作を受付ける。表示部１１０は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ１０２からの処理結果などを出力する。
【００４４】
下位インターフェイス部１１４は、計測ヘッド１０との間のデータの遣り取りを担当する。上位インターフェイス部１１６は、図示しない上位装置（例えば、ＰＬＣ（プログラマブルコンピュータ））との間のデータの遣り取りを担当する。
【００４５】
画像計測装置１００は、光学ドライブ１１２を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体１１５（例えば、ＤＶＤ（Digital Versatile Disc）などの光学記録媒体）から、その中に格納されたプログラムが読取られてストレージ１０６などにインストールされる。
【００４６】
画像計測装置１００で実行される三次元計測プログラム１０６２などは、コンピュータ読取可能な記録媒体１１５を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に従う三次元計測プログラム１０６２が提供する機能は、ＯＳが提供するモジュールの一部を利用する形で実現される場合もある。
【００４７】
図３には、プロセッサ１０２がプログラムを実行することで、画像計測装置１００として必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路（例えば、ＡＳＩＣまたはＦＰＧＡなど）を用いて実装してもよい。
【００４８】
＜Ｃ．三次元計測＞
次に、本実施の形態に従う計測システム１による三次元計測について説明する。本実施の形態においては、構造化照明と称される手法を用いて三次元計測を実現する。構造化照明の手法では、予め定められた投影パターンを対象物に照射するともに、投影パターンが照射された状態で対象物を撮像することで得られる画像（以下、「入力画像」とも称す）に基づいて対象物の位置（投光部または受光部からの距離）を計測する計測システムに関する。すなわち、対象物の形状が計測される。
【００４９】
本実施の形態においては、構造化照明の一例として、予め定められた投影パターン（典型的には、濃淡パターン）をもつ計測光が照射する方法を採用する。
【００５０】
本実施の形態に従う計測システム１は、予め定められた投影パターンを投光部１２から対象物に照射した状態で、当該対象物を撮像した画像である入力画像を取得する取得部に相当する撮像部１３を有している。以下の説明においては、投光部１２の照射面を投影パターンＰの「照射基準面」とみなす。
【００５１】
計測システム１において、計測ヘッド１０に含まれる投光部１２と撮像部１３との間でキャリブレーションが実行されており、投光部１２および撮像部１３の光学パラメータおよび両者を関連付ける行列は予め決定されている。投光部１２および撮像部１３の光学パラメータは、いずれも同じ基準点に基づいて決定されており、投光部１２の投影面の高さを指定すれば、投光部１２から照射される投影パターンが撮像部１３の受光面上のどの画素に対応するのかを算出できる。
【００５２】
投光部１２から照射される投影パターンは、投光部１２の光軸に対する対象物の位置や傾きに応じて大きさや位置（隣接する要素間の間隔の伸縮）が変化することになり、このような情報に基づいて、三角測量の原理によって、対象物の形状を計測できる。
【００５３】
図４は、本実施の形態に従う計測システム１の計測ヘッド１０から照射される投影パターンの一例を示す図である。図５は、本実施の形態に従う計測システム１が実行する三次元計測の原理を説明するための図である。
【００５４】
計測ヘッド１０の投光部１２からは、例えば、図４に示すような投影パターンＰを含む計測光を対象物に照射する。計測ヘッド１０の撮像部１３は、投影パターンＰが投影された状態で対象物を撮像する。
【００５５】
図５に示す投影パターンＰは、空間コードを格子状に配置したもの（以下、「格子状コード」とも称す。）であって、所定方向において所定長のパターンについて自己相関が生じないような固有のコードが割当てられている。より具体的には、投影パターンＰは、複数種類のプリミティブ（基準パターンに相当）の組合せによって規定される。図５（Ａ）には、４種類のプリミティブが示される。各プリミティブは、それぞれに割当てられたコード（図５（Ａ）に示す例では、１〜４の４つの数値）を示す。
【００５６】
各プリミティブは、４つの大きな正方形Ｑａ〜Ｑｄと、中心部に位置する１つの小さな正方形Ｑｅ）とで構成される。正方形Ｑａ〜Ｑｄの各々は、プリミティブ位置Ｒがコーナとなるように配置されている。プリミティブ位置Ｒは、小さな正方形Ｑｅの中心位置でもある。
【００５７】
図５（Ａ）に示すように、大きな正方形Ｑａ〜Ｑｄの交点（格子のコーナ一点）がプリミティブ位置Ｒと定義される。なお、プリミティブ位置Ｒについての大きさおよび形状については限定されない。プリミティブの各々が三次元点の１つとして復元される。
【００５８】
図５（Ａ）に示すように、プリミティブ位置Ｒが「白」のときｐ０＝１とし、「黒」のときｐ０＝０とし、プリミティブ位置Ｒの左上の大きい正方形Ｑｂが「白」のときｐ１＝１とし、「黒」のときｐ１＝０と表現する。プリミティブの種類は、２ｐ１＋ｐ０と数値表現できる。
【００５９】
図５（Ｂ）には、投影パターンＰ（図４参照）の部分に含まれるプリミティブの種類を数値で表現したものである。すなわち、投影パターンＰに含まれる各プリミティブの種類を特定し、各特定したプリミティブの種類を数値で表現することにより、投影パターンＰと等価な行列Ｋを生成できる。
【００６０】
以下の説明においては、投影パターンＰの面内方向をＸ方向およびＹ方向と規定するとともに、光軸方向（高さ）方向をＺ方向と規定する。
【００６１】
図５（Ｃ）には、図５（Ｂ）に示す行列Ｋの部分行列を示す。行列Ｋに設定される所定の大きさ（ワード高さＨｗｏｒｄ×ワード幅Ｗｗｏｒｄ）の部分行列を想定する。このような部分行列を「ワード」とも称する。すなわち、各ワードは、所定数のプリミティブの種類の組合せ（図５（Ｃ）に示す例では、３×３）によって規定される。投影パターンＰは、すべてのワードの各々がユニークとなるように、プリミティブが配置されることで生成される。
【００６２】
投影パターンＰが対象物に照射した状態で撮像することで取得される入力画像から、行列Ｋに含まれるすべてのワードが抽出される。なお、プリミティブを抽出して、ワードを特定あるいは再構成する処理を（ワードの）「デコード」とも称す。
【００６３】
図５（Ｃ）には、抽出された３つのワード（ワードＷ１，Ｗ２，Ｗ３）を示している。入力画像に写るパターンからすべてのワードを抽出したときに、各抽出したワード中に部分行列の数値の並びがユニークであれば、そのワードのパターン中での位置が特定される。すなわち、投影パターンＰにおける位置（ワードの位置）を特定できる。
【００６４】
計測ヘッド１０（投光部１２）から投影パターンＰを照射する場合において、対象物の表面形状に応じて、照射された像から特定されるワードの位置は変化することになる。
【００６５】
このような投影パターンＰを対象物に照射した状態で対象物を撮像して得られる画像に含まれるプリミティブから規定されるワードの大きさおよび隣接するワード間の位置ずれに基づいて、計測ヘッド１０から対象物の各部までの距離および対象物の三次元形状を計測できる。
【００６６】
例えば、図５（Ｃ）に示す例においては、隣り合うワードＷ１〜Ｗ３は一部のプリミティブを共有している。
【００６７】
画像計測装置１００（図２参照）は、それぞれの計測ヘッド１０から出力される画像に対して、プリミティブの抽出処理、ならびに、抽出されたプリミティブにより特定されたワードの位置および大きさの評価処理を実行することで、対象物の三次元形状の計測結果を出力する。
【００６８】
なお、図５（Ａ）には、４種類のプリミティブを使用する例を示すが、プリミティブの種類数は４種類に限定されない。また、図５（Ａ）に示すようなプリミティブの形状および色に限定されることなく、任意の形状および色を採用できる。
【００６９】
また、プリミティブの検出手法としては、各プリミティブをモデルとしたパターンマッチングや、黒画素方向／白画素方向および中央値の色を条件とするフィルタ処理などを採用できる。
【００７０】
例えば、５Ｍ画素のカメラ（≒２５００×２０００画素）を採用し、その視野を視野５００ｍｍ×４００ｍｍとする。ここで、１つのプリミティブが５画素で形成され、１ワードが５×５（計２５個）のプリミティブにより構成される場合を想定する。
【００７１】
この場合には、プリミティブのピッチは、約１ｍｍ（＝５００ｍｍ／（２５００画素／５画素））となり、最小検出幅は５ｍｍ（＝１ｍｍ×５画素）となる。１つのワードを検出するためには、５×５画素が必要であるので、投光部１２と撮像部１３との間の対応付けには、５ｍｍ×５ｍｍの面積が必要となる。なお、三次元情報の空間分解能（Ｘ−Ｙ方向）」は、プリミティブの単位（この例では、１ｍｍ×１ｍｍ）となる。
【００７２】
なお、以下の説明においては、復元された（あるいは、復元されるべき）三次元空間上の点の集合を「点群」とも称す。すなわち、「点群」は、各プリミティブに対応して計算される（あるいは、計算されるべき）三次元空間上の点の集合を意味する。
【００７３】
＜Ｄ．解決すべき課題および解決手段＞
次に、本実施の形態に従う計測システム１が解決すべき課題および解決手段について説明する。
【００７４】
図６は、本実施の形態に従う計測システム１による計測形態の一例を示す模式図である。図６を参照して、平坦状のワーク４の三次元形状の測定を想定する。平坦状のワーク４の上面には、所定幅を有する突起部５が形成されている。図６に示す例においては、突起部５の幅は、図５（Ｃ）において説明したワードを再構成するために必要な距離（ワード幅Ｗｗｏｒｄ）より狭いとする。すなわち、突起部５の露出面に照射されて現れるパターンと、突起部５以外のワーク４の露出面に照射されて現れるパターンとの間にはギャップが生じるとともに、現れるプリミティブの大きさなども異なったものとなる。
【００７５】
その結果、検出されたプリミティブの種類から再構成されるワードは、いずれのプリミティブ種類の組合せにも合致しなくなり、パターン中の各ワードの位置を特定できない。その結果、突起部５の形状情報を取得できない（高さ情報が欠損する）状態になる。
【００７６】
図７は、図６に示すワークを撮像することで得られる入力画像に対するプリミティブの検出結果の一例を示す図である。図７（Ａ）には、平坦部を視野とする入力画像に対するプリミティブの検出結果の一例を示し、図７（Ｂ）には、凸部を視野とする入力画像に対するプリミティブの検出結果の一例を示す。
【００７７】
図７（Ａ）を参照して、計測面が平坦であれば、ワードの再構成に必要な数のプリミティブを検出できる。これによって、投光部１２と撮像部１３との間を対応付けることができるので、各点について三次元情報を復元できる。
【００７８】
これに対して、図７（Ｂ）に示すように、計測面にワード幅以下の凹凸がある場合であって、段差が相対的に大きい場合には、段差により生じるプリミティブの歪み、コントラストの低下、相対的に大きな視差の発生などにより、プリミティブの検出に失敗する（図７（Ｂ）の「プリミティブ検出不可」の領域）。この結果、ワードの再構成に必要な数のプリミティブが揃わないので、投光部１２と撮像部１３との間を対応付けることができず、プリミティブの検出に失敗した領域だけではなく、その周辺も含めて、点群の三次元情報を復元できないことになる（図７（Ｂ）の「点群欠損」の領域）。このように、点群欠損の領域について検出されるコードは不完全なコードとなっている。
【００７９】
図８は、図７（Ｂ）に示すプリミティブ検出結果に対応する三次元情報の復元結果の一例を示す図である。平坦状のワーク４に形成された突起部５の幅がワードを再構成するために必要な幅に満たない場合には、図８に示すように、突起部５の周辺については、点群の三次元情報が存在しない（点群欠損の領域）となる。
【００８０】
図９は、図８に示す三次元情報の復元結果に対して三次元情報を推定する処理を説明するための図である。図９に示す例において、点群欠損となった領域については、ワードを再構成できるだけのプリミティブを検出できていないが、実際には、４つのプリミティブの検出には成功している。本実施の形態に従う計測システム１は、このような点群欠損となった領域内で検出されたプリミティブを、後述するような仮想背景画像を用いて救済することで、点群の三次元情報を推定する。
【００８１】
すなわち、本実施の形態に従う計測システム１は、このような、投影パターンＰに含まれる単一のワードの大きさより変化幅の小さい部分（点群欠損領域）などについて、三次元情報を推定する処理を提供する。
【００８２】
なお、図９において、Ｘ１は、入力画像上の点群欠損領域のうちプリミティブが検出できている右側の境界を示し、Ｘ２は、入力画像上の点群の三次元情報を復元できている領域（ワードを再構成できている領域）の左側の境界を示す。
【００８３】
図１０は、本実施の形態に従う計測システム１による三次元情報を推定できる処理を説明する模式図である。図１０（Ａ）に示すように、単一のワードの大きさに相当するワードサイズより細かい変化については高さを検出できない。例えば、上述の図６に示すワーク４表面に形成された突起部５などを想定する。
【００８４】
このような高さを検出できない部分について、図１０（Ｂ）に示すように、１または複数の仮想背景画像８を用意する。仮想背景画像８は、投影パターンＰを１または複数の高さの平面に照射したときに、当該平面に現れるパターンを示す画像である。図１０（Ｂ）には、３つの異なる高さｈ１，ｈ２，ｈ３のそれぞれに対応付けて、３つの仮想背景画像（１）〜（３）が用意されている例を示す。
【００８５】
そして、突起部５または突起部５の周辺部に現れたパターンと、仮想背景画像８の対応する領域のパターンとを合成した画像に対して、プリミティブを抽出し、その抽出されたプリミティブの種類および種類の組合せからワードを特定する。仮想背景画像８、あるいは、仮想背景画像８の合成対象の範囲を順次異ならせて、ワードのデコードが成功するまで処理を繰返す。最終的にワードがデコードされると、そのデコードされたワードを用いて、最初の計測では検出できなかった高さを推定する。
【００８６】
図１０に示す例では、仮想背景画像（２）および仮想背景画像（３）は、突起部５の高さとは離れているので、ワードを適切にデコードできない。すなわち、高さ情報が欠損する部分と仮想背景画像８とが適合しないので、ワードをデコードできない。
【００８７】
これに対して、仮想背景画像（１）に対応する高さは、突起部５の高さと近いので、ワードをデコードできる可能性が高まる。なお、ワードのデコードにおいては、周辺探索が実行されるので、高さ方向にはある程度の余裕があり、ワーク４（または、突起部５）の高さと対象の仮想背景画像の高さとが近ければ、ワードを復元できることになる。
【００８８】
ここで、周辺探索について説明する。図１１は、本実施の形態に従う計測システム１における周辺探索の処理を説明する模式図である。図１１には、照射されたパターンから検出された各プリミティブをコード化した結果の一例を示す。すなわち、検出された各プリミティブの種類を対応する符号で表現した例を示す。
【００８９】
周辺探索では、任意の注目プリミティブを基準にして、上下左右で隣接しているプリミティブを検出することでワードを復元する。周辺探索の範囲を広くすれば、デコード処理に時間を要する。また、隣接するプリミティブが欠損している場合、周辺探索ではワードを復元することができない。
【００９０】
図１２は、本実施の形態に従う計測システム１による三次元情報を推定する処理内容を概説するための図である。図１２（Ａ）には、一例として、１ワードが５×５（計２５個）のプリミティブにより構成される例を示す。ここで、１つのプリミティブが５×５画素で構成されている場合には、ワードのデコードには、２５×２５画素の面積が必要となる。つまり、図１２（Ａ）に示す高さ情報を検出できる最小単位（解像度）は２５×２５画素となる。言い換えれば、２５×２５画素以下の細かい部分の高さ情報については検出できない。
【００９１】
図１２（Ｂ）に示すように、単一のワード内における対象物の高さ変化量（段さ）が相対的に小さい場合には、計測ヘッド１０の投光部１２と撮像部１３との間に生じる視差が小さいので、周辺探索によって、対応するプリミティブを検出できるのでワードを復元できる可能性が高い。
【００９２】
これに対して、図１２（Ｃ）に示すように、単一のワード内における対象物の高さ変化量（段さ）が相対的に大きい場合には、計測ヘッド１０の投光部１２と撮像部１３との間に生じる視差も大きくなり、周辺探索では対応するプリミティブを検出できなくなる。その結果、ワードを復元できる可能性が低くなる。
【００９３】
そこで、図１２（Ｄ）に示すように、抽出されたもののワードへのデコードはできないプリミティブ断片Ｐ１と仮想背景画像の対応する領域から抽出されるプリミティブ断片Ｐ２とを突き合わせることで、いずれかの仮想背景画像に対応付けられる高さとは異なる高さが算出されると、プリミティブ断片同士が結合して、適切に復号できたことが分かる。
【００９４】
なお、周辺探索の範囲を広くすれば、デコード処理に時間が要するという課題が生じ得る。周辺探索に必要な配列情報（コード列）を取得できなければ、本来の高さ情報を復元できない。
【００９５】
そのため、周辺探索を試みたものの、高さ情報を復元できなかった場合には、周辺部の平均高さを周辺情報として採用し、当該平均高さに対応する仮想パターンを用いて、高さ情報の復元を再度試みてもよい。さらに高さ情報の復元が失敗した場合には、仮想背景画像の高さを１ステップずつ変化させて同様の処理を繰返すようにしてもよい。ここで、１ステップとは、周辺探索の対象となる視差分（高さ情報と同義）とすることができる。
【００９６】
＜Ｅ．機能構成＞
次に、本実施の形態に従う計測システム１が提供する三次元情報を推定する処理を実現するための機能構成について説明する。
【００９７】
図１３は、本実施の形態に従う計測システム１が提供する三次元情報を推定する処理を実現するための機能構成の一例を示す模式図である。図１３に示す各機能は、典型的には、画像計測装置１００のプロセッサ１０２が三次元計測プログラム１０６２を実行することで実現される。
【００９８】
図１３を参照して、画像計測装置１００は、計測ヘッド１０と接続されており、投影パターンＰを対象物に照射した状態で、対象物を撮像することで得られる入力画像に基づいて、三次元情報および二次元画像（入力画像と実質的に同一）を出力する。より具体的には、画像計測装置１００は、１次パターン検出部１５０と、１次三次元情報復元部１５２と、欠損部分抽出部１５４と、パターン生成部１５６と、仮想背景画像生成部１５８と、合成パターン生成部１６０と、２次三次元情報復元部１６２と、合成画像除去部１６４とを含む。
【００９９】
パターン生成部１５６は、予め定められた投影パターンＰを生成し、投光部１２および１次パターン検出部１５０へ出力する。投光部１２は、パターン生成部１５６から指示された投影パターンＰを対象物に照射する。
【０１００】
１次パターン検出部１５０は、照射された投影パターンＰに含まれる各プリミティブ（基準パターン）を入力画像内で探索することで、各プリミティブが照射された位置および当該照射されたプリミティブが示すコードの集合を生成する。より具体的には、１次パターン検出部１５０は、撮像部１３が対象物を撮像することで生成される入力画像を受けて、当該入力画像中に現れるパターンからプリミティブおよびワードを検出する。そして、１次パターン検出部１５０は、生成したコードの集合を取得し、投影パターンＰに設定されるワード（単位領域に相当）に含まれる所定数のプリミティブが示すコードの配列と同一の配列を示す格子状コードパターン（対応領域に相当）を当該コードの集合から探索する。
【０１０１】
１次パターン検出部１５０は、検出したプリミティブおよびワードの位置を１次三次元情報復元部１５２へ出力する。また、１次パターン検出部１５０は、撮像部１３からの入力画像を合成パターン生成部１６０へ出力する。
【０１０２】
１次三次元情報復元部１５２は、格子状コードパターン（対応領域に相当）の探索結果に基づいて、投影パターンＰの照射基準面（投光部１２の照射面）から対象物の各部までの距離を算出する。より具体的には、１次三次元情報復元部１５２は、１次パターン検出部１５０からのプリミティブおよびワードの位置に基づいて、入力画像に対応する視野内の三次元情報を復元する。復元された三次元情報は欠損部分抽出部１５４へ出力される。
【０１０３】
欠損部分抽出部１５４は、１次三次元情報復元部１５２からの三次元情報に基づいて、三次元情報を取得できなかった領域（高さ情報が欠損している部分）を特定する。欠損部分の情報は、合成パターン生成部１６０へ出力される。
【０１０４】
仮想背景画像生成部１５８は、背景情報生成部に相当し、投影パターンＰを照射基準面（投光部１２の照射面）から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像を生成する。仮想背景画像生成部１５８は、仮想背景画像に代えて、仮想背景画像に対応する仮想背景画像コードを生成するようにしてもよい。このように、仮想背景画像生成部１５８は、パターン生成部１５６からの投影パターンＰの情報に基づいて、任意の高さに対応する１または複数の仮想背景画像８を生成する。通常、仮想背景画像生成部１５８は、照射基準面から異なる複数の距離にある平面について、複数の仮想背景画像８または仮想背景画像コードを生成する。生成された仮想背景画像８は、合成パターン生成部１６０へ出力される。
【０１０５】
合成パターン生成部１６０は、入力画像の欠損部分に対応する部分または当該対応する部分の周辺に、仮想背景画像の対応する部分パターンを合成する。より具体的には、合成パターン生成部１６０は、欠損部分抽出部１５４からの欠損部分の情報に基づいて、仮想背景画像生成部１５８から提供される仮想背景画像８から対応する画像を抽出するとともに、１次パターン検出部１５０からの入力画像に付加することで、合成画像を生成する。合成パターン生成部１６０は、生成された合成画像を２次三次元情報復元部１６２へ出力する。
【０１０６】
２次三次元情報復元部１６２は、欠損部分について、当該欠損部分に対応する不完全なコードを入力画像における周辺情報を用いて再構成することで、当該欠損部分についての距離の推定を試みる。本実施の形態において、２次三次元情報復元部１６２は、１次三次元情報復元部１５２が距離を算出できなかった部分である欠損部分に対応する入力画像の情報と、仮想背景画像または仮想背景画像コードとを用いて、欠損部分の距離の推定を試みる。
【０１０７】
すなわち、２次三次元情報復元部１６２は、生成された合成画像に基づいて、欠損部分についての三次元情報を復元する。
【０１０８】
２次三次元情報復元部１６２は、１次三次元情報復元部１５２により復元された三次元情報に、欠損部分についての復元した三次元情報を加えて、最終的な三次元情報として出力する。ここで、２次三次元情報復元部１６２は、入力画像に合成する仮想背景画像の部分パターン、および、仮想背景画像を生成する際の平面の距離、の少なくとも一方を順次変化させつつ、格子状コードパターン（対応領域に相当）の探索を試みる。詳細については、後述する。また、２次三次元情報復元部１６２は、合成画像を合成画像除去部１６４へ出力する。
【０１０９】
合成画像除去部１６４は、合成パターン生成部１６０での処理と逆の処理を実行する。より具体的には、合成画像除去部１６４は、２次三次元情報復元部１６２からの合成画像から、合成された画像を除去して、二次元画像として出力する。
【０１１０】
なお、図１３には示していないが、２次三次元情報復元部１６２から出力される三次元情報に基づいて、ロボットを制御するなどの各種アプリケーション処理が実行されてもよい。
【０１１１】
＜Ｆ．処理手順＞
次に、本実施の形態に従う計測システム１が提供する三次元情報を推定する処理を実現するための処理手順について説明する。
【０１１２】
図１４は、本実施の形態に従う計測システム１が提供する三次元情報を推定する処理手順を示すフローチャートである。図１４に示す各ステップは、典型的には、画像計測装置１００のプロセッサ１０２が三次元計測プログラム１０６２を実行することで実現される。
【０１１３】
図１４を参照して、画像計測装置１００は、投影パターンＰを対象物に照射する（ステップＳ１００）とともに、投影パターンＰを対象物に照射した状態で対象物を撮像する（ステップＳ１０２）。そして、画像計測装置１００は、ステップＳ１０２において取得した入力画像に含まれるパターンを検出する（ステップＳ１０４）。より具体的には、画像計測装置１００は、入力画像に含まれるプリミティブを検出するとともに、検出されたプリミティブの種類に対応するワードを検出する。すなわち、画像計測装置１００は、入力画像からワードをデコードする。
【０１１４】
続いて、画像計測装置１００は、検出されたプリミティブおよびワードの位置に基づいて、入力画像に対応する視野内の三次元情報を復元する（ステップＳ１０６）。より具体的には、画像計測装置１００は、検出されたプリミティブおよびワードの位置に基づく三角測量によって、各プリミティブ位置における高さを算出する。
【０１１５】
そして、画像計測装置１００は、復元された三次元情報に欠損部分が存在するか否かを判断する（ステップＳ１０８）。欠損部分が存在しなければ（ステップＳ１０８においてＮＯ）、画像計測装置１００は、復元した三次元情報を出力し（ステップＳ１２６）、処理は終了する。
【０１１６】
これに対して、欠損部分が存在していれば（ステップＳ１０８においてＹＥＳ）、画像計測装置１００は、欠損部分に関して、三次元情報の復元が成功した周辺部の平均高さに対応する仮想背景画像８を生成する（ステップＳ１１０）。続いて、画像計測装置１００は、生成した仮想背景画像８を入力画像の欠損部分に合成して合成画像を生成する（ステップＳ１１２）。そして、画像計測装置１００は、ステップＳ１１２において生成された合成画像から、欠損部分の三次元情報を復元する（ステップＳ１１４）。
【０１１７】
画像計測装置１００は、復元に成功した部分の高さが画像合成に用いられた仮想背景画像８の高さと同一であるか否かを判断する（ステップＳ１１６）。
【０１１８】
復元に成功した部分の高さが画像合成に用いられた仮想背景画像８の高さと同一であれば（ステップＳ１１６においてＹＥＳ）、画像計測装置１００は、復元結果を破棄する（ステップＳ１２０）。そして、処理はステップＳ１２２に進む。この場合に得られる三次元情報は、仮想背景画像８の情報を主体的に用いて復元されたものと考えられ、欠損部分の本来の高さではない可能性が高いからである。
【０１１９】
一方、復元に成功した部分の高さが画像合成に用いられた仮想背景画像８の高さと同一でなければ（ステップＳ１１６においてＮＯ）、画像計測装置１００は、ステップＳ１１４において復元された三次元情報を採用する（ステップＳ１１８）。
【０１２０】
すなわち、画像計測装置１００は、欠損部分の推定した距離が当該推定に用いた仮想背景画像８（または、後述の仮想背景画像コード）を生成した際の距離と異なっている場合に、欠損部分の距離の推定が成功であると決定する。このような判断処理は、仮想背景画像８を生成した際の距離を欠損部分の距離と誤って推定することを防止することを目的としている。
【０１２１】
ステップＳ１１８またはＳ１２０の実行後、画像計測装置１００は、所定の高さ範囲の仮想背景画像８をすべて試したか否かを判断する（ステップＳ１２２）。
【０１２２】
所定の高さ範囲の仮想背景画像８のうちまだ試していないものがあれば（ステップＳ１２２においてＮＯ）、画像計測装置１００は、欠損部分に関して、高さを変えて仮想背景画像８を生成する（ステップＳ１２４）。そして、ステップＳ１１２以下の処理が繰返される。
【０１２３】
一方、所定の高さ範囲の仮想背景画像８をすべて試していれば（ステップＳ１２２においてＹＥＳ）、画像計測装置１００は、復元した三次元情報を出力する（ステップＳ１２６）。すなわち、ステップＳ１１８において採用された三次元情報が出力される。但し、いずれの三次元情報も採用されなければ、三次元情報の復元が依然としてできていないことを示す情報を出力するようにしてもよい。そして、処理は終了する。
【０１２４】
なお、欠損部分の周辺で三次元情報の復元が成功した領域の平均高さに対応する仮想背景画像８が生成されるようにしてもよい。最初に生成された仮想背景画像８を用いても、三次元情報を適切に復元できなかった場合には、仮想背景画像８を生成する高さを変えて仮想背景画像８を再度生成する。
【０１２５】
仮想背景画像８の高さを変化させるステップの大きさとしては、周辺探索の探索範囲に相当する高さとしてもよい。所定の高さ範囲の間で仮想背景画像８の生成および三次元情報の復元を繰返し実行する。所定の高さ範囲は、有効測定範囲または検出ワークの形状に基づいた範囲としてもよい。
【０１２６】
＜Ｇ．推定処理：画像ベース＞
次に、本実施の形態に従う計測システム１が提供する三次元情報の推定処理（図１４に示すステップＳ１１２，Ｓ１２２，Ｓ１２４に相当）の詳細について説明する。
【０１２７】
図１５は、本実施の形態に従う計測システム１が提供する三次元情報の推定処理（画像ベース）を説明するための図である。
【０１２８】
まず、（１）入力画像上の点群欠損領域のうちプリミティブが検出できている右側の境界Ｘ１、および、入力画像上で点群の三次元情報を復元できている領域（ワードを再構成できている領域）の左側の境界Ｘ２を探索する（図９参照）。そして、（２）入力画像上でＸ１までの領域を部分入力画像１８として切り出す（図１５（Ａ）参照）。
【０１２９】
続いて、（３）点群検出領域の境界Ｘ２に近い側の点群の平均高さＺ０を算出する（図９参照）。そして、（４）平均高さＺ０における点群欠損領域と点群検出領域との関係に基づいて、Ｘ１−α〜Ｘ２＋α区間で高さが平均高さＺ０の仮想背景画像８（平均高さＺ０）を生成する（図１５（Ａ）参照）。
【０１３０】
そして、（５）部分入力画像に対して裏側（レイヤの奥側）から仮想背景画像８（平均高さＺ０）を重ね合わせる（図１５（Ｂ）参照）。ここで、重ね合わせる初期位置は、部分入力画像の右端と仮想背景画像８の左端とが一致する位置とする。
【０１３１】
（６）境界Ｘ１より右側の領域について、プリミティブの検出およびワードの再構成を試みる。もし、ワードを再構成できなければ、重ね合わせ位置を変えて（５）および（６）の処理を繰返す。すなわち、図１５（Ｂ）〜図１５（Ｄ）に示すように、部分入力画像１８と仮想背景画像８との相対的な位置関係を変化させる。
【０１３２】
ここで、重ね合わせ位置を変えるということは、高さを変えて仮想背景画像８を生成すること（図１４のステップＳ１２４）に相当する。すなわち、重ね合わせ位置を変えるということは、部分入力画像１８に対して、仮想背景画像８をエピポーララインに沿って平行移動することを意味する。これは、仮想背景画像８の高さを変えることと等価になる。すなわち、欠損部分に対応する入力画像の情報と、仮想背景画像との間の位置関係を、エピポーララインに沿って変化させることで、仮想背景画像８の高さを変える処理を実現する。
【０１３３】
図１６は、本実施の形態に従う計測システム１におけるエピポーララインを説明するための図である。図１６を参照して、投光部１２の視野と撮像部１３の視野との重複領域内において、対象物が奥行き方向に変化した場合に、両光軸の交点が変化する線がエピポーララインに相当する。エピポーララインに沿ってパターンをずらすことは、投光部１２の投影面からの距離を変更することを意味する。
【０１３４】
なお、厳密に言えば、高さが変化することで、照射される投影パターンＰには大きさ（スケール）の変化が生じることになるが、このような大きさ（スケール）の変化については、パターン検出の歪み許容範囲内に収まるとみなす。つまり、大きさ（スケール）が変化しても、パターンを適切に検出できると考える。
【０１３５】
より具体的には、図１５（Ｂ）〜図１５（Ｄ）に示すように、部分入力画像１８と仮想背景画像８との間の距離を変化させながら（すなわち、仮想背景画像８の高さを変化させながら）、三次元情報を復元できた部分については、その復元できた値を逐次確定する。
【０１３６】
なお、プリミティブの探索については、一定範囲の変形（すなわち、高さの変動）を許容するため、点群欠損領域側に多少の高さのばらつきが存在してもよいこととする。
【０１３７】
最終的に、（７）境界Ｘ１から境界Ｘ２の間の領域に対して、ワードを再構成できれば、三次元情報の推定処理は終了する。
【０１３８】
図１７は、本実施の形態に従う計測システム１が提供する三次元情報の推定処理の処理過程を示す図である。
【０１３９】
図１７（Ａ）に示す例では、部分入力画像１８と仮想背景画像８との間がある距離においては、投影パターンＰにずれがあり、プリミティブの検出およびワードの再構成が適切に行えず、検出失敗となっている。
【０１４０】
一方、図１７（Ｂ）に示す例では、部分入力画像１８と仮想背景画像８との間が適切な距離にあり、この場合には、プリミティブの検出およびワードの再構成を適切に実行でき、検出成功となっている。
【０１４１】
＜Ｈ．推定処理：コードベース＞
上述の説明においては、高さを変化させて生成した仮想背景画像８を用いた処理、すなわち画像ベースでの処理を採用した例を示したが、デコードされた各プリミティブの種類を示す値（コード；上述の例では、０〜３のいずれかの値）を用いた処理、すなわちコードベースでの処理を採用してもよい。この場合には、ワードを再構成できるか否かが問題となる。
【０１４２】
すなわち、本実施の形態に従う計測システム１が提供する三次元情報の推定処理（図１４に示すステップＳ１１２，Ｓ１２２，Ｓ１２４に相当）をコードベースで実行する場合について説明する。
【０１４３】
図１８は、本実施の形態に従う計測システム１が提供する三次元情報の推定処理（コードベース）を説明するための図である。
【０１４４】
まず、（１）入力画像上の点群欠損領域のうちプリミティブが検出できている右側の境界Ｘ１、および、入力画像上で点群の三次元情報を復元できている領域（ワードを再構成できている領域）の左側の境界Ｘ２を探索する（図９参照）。そして、（２）入力画像上でＸ１までの領域を検出されている各プリミティブをコード化して入力画像コード１８Ｃとして切り出す（図１８参照）。
【０１４５】
続いて、（３）点群検出領域の境界Ｘ２に近い側の点群の平均高さＺ０を算出する（図９参照）。そして、（４）平均高さＺ０における点群欠損領域と点群検出領域との関係に基づいて、Ｘ１−α〜Ｘ２＋α区間で高さが平均高さＺ０の仮想背景画像コード８Ｃ（平均高さＺ０）を生成する（図１８参照）。
【０１４６】
そして、（５）入力画像コード１８Ｃに対して仮想背景画像コード８Ｃを重ね合わせる。ここで、重ね合わせる初期位置は、入力画像コード１８Ｃの最右列と仮想背景画像コード８Ｃのｍ列とが一致する位置とする。初期位置においては、「オーバラップ部」に相当する列が重ね合わされることになる。
【０１４７】
（６）重ね合わせたコードについて、プリミティブの検出およびワードの再構成を試みる。もし、ワードを再構成できなければ、重ね合わせ位置をｍ列から順次インクリメントして重ね合わせ位置を変えて（５）および（６）の処理を繰返す。ここで、重ね合わせ位置をｍ列から順次インクリメントして重ね合わせ位置を変えることは、入力画像コード１８Ｃと仮想背景画像コード８Ｃとの相対関係をエピポーララインに沿って変化させることを意味する。すなわち、欠損部分に対応する入力画像の情報と、仮想背景画像コードとの間の位置関係を、エピポーララインに沿って変化させることで、仮想背景画像コード８Ｃの高さを変える処理を実現する。
【０１４８】
図１８に示す処理は、画像計測装置１００の２次三次元情報復元部１６２（図１３参照）によって実現されることになる。すなわち、２次三次元情報復元部１６２は、入力画像の欠損部分に対応する部分において探索されたコードの少なくとも一部と、仮想背景画像コードの対応するコードとを組合せて生成される１または複数のコード列に対して、投影パターンＰに設定されるワード（単位領域に相当）に含まれる所定数の基準パターンが示すコードの配列と同一の配列を探索する処理を繰返す。
【０１４９】
コードベースの推定処理においては、周辺探索を行いながら、ワードの再構成が試みられるので、複数の高さやばらつきなどによって、完全に位置が一致しなくても、ワードを再構成できる。
【０１５０】
最終的に、（７）境界Ｘ１から境界Ｘ２の間の領域に対して、ワードを再構成できれば、三次元情報の推定処理は終了する。
【０１５１】
行方向にいてワードがユニークに配置されているとの条件を適用することで、存在しないワードや同じワードは成立しないと判断できる。
【０１５２】
＜Ｉ．付記＞
上述したような本実施の形態は、以下のような技術思想を含む。
［構成１］
予め定められた投影パターン（Ｐ）を対象物に照射した状態で、前記対象物を撮像した画像である入力画像を取得する取得部（１０）を備え、前記投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものであり、
前記照射された投影パターンに含まれる各基準パターンを前記入力画像内で探索することで、各基準パターンが照射された位置および当該照射された基準パターンが示すコードの集合を取得し、前記投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、前記対応領域の探索結果に基づいて、前記投影パターンの照射基準面から前記対象物の各部までの距離を算出する第１の距離算出部（１５０，１５２）と、
前記投影パターンを前記照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または当該仮想背景画像に対応する仮想背景画像コードを生成する背景情報生成部（１５８）と、
前記第１の距離算出部が距離を算出できなかった部分である欠損部分に対応する前記入力画像の情報と、前記仮想背景画像または前記仮想背景画像コードとを用いて、前記欠損部分の距離の推定を試みる第２の距離算出部（１６２）とを備える、計測システム。
【０１５３】
前記第１の距離算出部が距離を算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを前記入力画像における周辺情報を用いて再構成することで、前記欠損部分についての距離の推定を試みる第２の距離算出部とを備える、計測システム。
［構成２］
前記投影パターンを前記照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または当該仮想背景画像に対応する仮想背景画像コードを生成する背景情報生成部をさらに備え、
前記第２の距離算出部は、前記欠損部分に対応する前記入力画像の情報と、前記仮想背景画像または前記仮想背景画像コードとを用いて、前記欠損部分の距離の推定を試みる、構成１に記載の計測システム。
［構成３］
前記入力画像の前記欠損部分に対応する部分または当該対応する部分の周辺に、前記仮想背景画像の対応する部分パターンを合成する合成パターン生成部（１６０）をさらに備え、
前記第２の距離算出部は、前記入力画像に合成する前記仮想背景画像の前記部分パターン、および、前記仮想背景画像を生成する際の平面の距離、の少なくとも一方を順次変化させつつ、前記対応領域の探索を試みる、構成２に記載の計測システム。
［構成４］
前記第２の距離算出部は、前記入力画像の前記欠損部分に対応する部分において探索されたコードの少なくとも一部と、前記仮想背景画像コードの対応するコードとを組合せて生成される１または複数のコード列に対して、前記投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を探索する処理を繰返す、構成２に記載の計測システム。
［構成５］
前記背景情報生成部は、前記照射基準面から異なる複数の距離にある平面について、複数の前記仮想背景画像または前記仮想背景画像コードを生成する、構成２〜４のいずれか１項に記載の計測システム。
［構成６］
前記第２の距離算出部は、前記欠損部分に対応する前記入力画像の情報と、前記仮想背景画像または前記仮想背景画像コードとの間の位置関係を、エピポーララインに沿って変化させる、構成２〜４のいずれか１項に記載の計測システム。
［構成７］
前記第２の距離算出部は、前記欠損部分の推定した距離が当該推定に用いた前記仮想背景画像または前記仮想背景画像コードを生成した際の距離と異なっている場合に、前記欠損部分の距離の推定が成功であると決定する、構成２〜６のいずれか１項に記載の計測システム。
［構成８］
予め定められた投影パターン（Ｐ）を対象物に照射した状態で、前記対象物を撮像した画像である入力画像を取得するステップ（Ｓ１００，Ｓ１０２）を備え、前記投影パターンは、それぞれ固有のコードが割当てられた複数種類の基準パターンを所定規則に従って配置したものであり、
前記照射された投影パターンに含まれる各基準パターンを前記入力画像内で探索することで、各基準パターンが照射された位置および当該照射された基準パターンが示すコードの集合を取得し、前記投影パターンに設定される単位領域に含まれる所定数の基準パターンが示すコードの配列と同一の配列を示す対応領域を当該コードの集合から探索し、前記対応領域の探索結果に基づいて、前記投影パターンの照射基準面から前記対象物の各部までの距離を算出するステップ（Ｓ１０４，Ｓ１０６）と、
前記第１の距離算出部が距離を算出できなかった部分である欠損部分について、当該欠損部分に対応する不完全なコードを前記入力画像における周辺情報を用いて再構成することで、前記欠損部分についての距離の推定を試みるステップ（Ｓ１１０，Ｓ１１２〜Ｓ１２６）とを備える、計測方法。
【０１５４】
＜Ｊ．利点＞
本実施の形態に従う画像計測システムは、投影パターンの照射基準面からの距離を算出できなかった欠損部分に対して、投影パターンを照射基準面から任意の距離にある平面に照射した場合に撮像されるであろう仮想背景画像または仮想背景画像コードを用いた推定処理を適用することで、計測の解像度より小さい幅の形状変化を有する対象物であっても、その距離情報を検出できる。
【０１５５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１５６】
１  計測システム、４  ワーク、５  突起部、８  仮想背景画像、８Ｃ  仮想背景画像コード、１０  計測ヘッド、１１  処理部、１２  投光部、１３  撮像部、１４，１１０  表示部、１５  記憶部、１６  通信インターフェイス（Ｉ／Ｆ）部、１８  部分入力画像、１８Ｃ  入力画像コード、１００  画像計測装置、１０２  プロセッサ、１０４  メインメモリ、１０６  ストレージ、１０８  入力部、１１２  光学ドライブ、１１４  下位インターフェイス部、１１５  記録媒体、１１６  上位インターフェイス部、１１８  プロセッサバス、１５０  １次パターン検出部、１５２  １次三次元情報復元部、１５４  欠損部分抽出部、１５６  パターン生成部、１５８  仮想背景画像生成部、１６０  合成パターン生成部、１６２  ２次三次元情報復元部、１６４  合成画像除去部、１０６０  ＯＳ、１０６２  三次元計測プログラム、Ｐ  投影パターン、Ｐ１，Ｐ２  プリミティブ断片、Ｒ  プリミティブ位置、Ｗ１，Ｗ２，Ｗ３  ワード、Ｗｗｏｒｄ  ワード幅、Ｘ１，Ｘ２  境界。
【図１】
2019219277.tif 000003
【図２】
2019219277.tif 000004
【図３】
2019219277.tif 000005
【図４】
2019219277.tif 000006
【図５】
2019219277.tif 000007
【図６】
2019219277.tif 000008
【図７】
2019219277.tif 000009
【図８】
2019219277.tif 000010
【図９】
2019219277.tif 000011
【図１０】
2019219277.tif 000012
【図１１】
2019219277.tif 000013
【図１２】
2019219277.tif 000014
【図１３】
2019219277.tif 000015
【図１４】
2019219277.tif 000016
【図１５】
2019219277.tif 000017
【図１６】
2019219277.tif 000018
【図１７】
2019219277.tif 000019
【図１８】
2019219277.tif 000020