(57)【要約】【課題】ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、対象物の３次元形状を複数個の頂点の集まりとして空間離散的に計測する技術において、対象物を計測する精度を向上させる。【解決手段】対象物が撮像された撮像画像に基づき、その撮像画像からその撮像画像の境界線を抽出し（Ｓ４０１）、その抽出された境界線に基づき、その境界線が、ライン方向と交差する仮想的な複数の計算参照線の各々と交差する回数を、各計算参照線に関する境界線の密集度として空間離散的に計算し（Ｓ４０２ないしＳ４０５）、その計算された密集度に基づき、複数の基準線間のピッチを可変に決定する（Ｓ４０６）。【選択図】図１３
2006226815.tif 000002
【特許請求の範囲】
【請求項１】
ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、前記ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、前記対象物の３次元形状を複数個の頂点の集まりとして空間離散的に計測する３次元計測方法であって、
前記対象物が撮像された撮像画像に基づき、その撮像画像からその撮像画像の境界線を抽出する境界線抽出工程と、
その抽出された境界線に基づき、その境界線が、前記ライン方向と交差する仮想的な複数の計算参照線の各々と交差する回数を、各計算参照線に関する前記境界線の密集度として空間離散的に計算する密集度計算工程と、
その計算された密集度に基づき、前記複数の基準線間のピッチを可変に決定するピッチ決定工程と
を含む３次元計測方法。
【請求項２】
前記ピッチ決定工程は、前記計算された密集度が高い計算参照線の位置ほど狭くなるように前記複数の基準線間のピッチを可変に決定する請求項１に記載の３次元計測方法。
【請求項３】
前記複数の計算参照線は、前記ライン方向と交差する方向に等ピッチで並ぶように定義される請求項１または２に記載の３次元計測方法。
【請求項４】
前記撮像画像は、前記対象物に前記パターン光を投影することによってその対象物が撮像されたパターン光投影画像であり、
前記境界線抽出工程は、そのパターン光投影画像から変換された輝度画像に基づいて前記境界線を抽出する請求項１ないし３のいずれかに記載の３次元計測方法。
【請求項５】
前記撮像画像は、前記対象物に前記パターン光が投影されない状態においてその対象物が撮像されたパターン光非投影画像であり、
前記境界線抽出工程は、そのパターン光非投影画像から変換された輝度画像に基づいて前記境界線を抽出する請求項１ないし３のいずれかに記載の３次元計測方法。
【請求項６】
前記境界線は、前記撮像画像の外周境界と内部境界とを含み、
前記境界線抽出工程は、
前記撮像画像に基づき、その撮像画像から前記外周境界を抽出する第１抽出工程と、
前記撮像画像に基づき、その撮像画像から前記内部境界を抽出する第２抽出工程と
を含む請求項１ないし５のいずれかに記載の３次元計測方法。
【請求項７】
前記撮像画像は、前記対象物に前記パターン光が投影されない状態においてその対象物が撮像されたパターン光非投影画像であり、
前記第２抽出工程は、そのパターン光非投影画像から変換された輝度画像に基づいて前記内部境界を抽出する請求項６に記載の３次元計測方法。
【請求項８】
前記パターン光は、（ａ）少なくとも１つの明部が前記ライン方向に延びるように形成されるスリット光であって、前記ライン方向と交差する方向に前記対象物上を走査されることにより、その対象物に時系列的に照射されるものと、（ｂ）共に前記ライン方向に延びる明部と暗部とが列方向に並んだパターン光であって、前記対象物に一斉に照射されるものとのうちの少なくとも一方を含む請求項１ないし７のいずれかに記載の３次元計測方法。
【請求項９】
さらに、
前記取得された２次元的な画像に基づき、前記各基準線に関連付けて、複数個の３次元頂点の３次元座標値を計算する３次元座標値計算工程と、
その３次元座標値計算工程によって計算された複数個の３次元頂点のうち、前記境界線より内部に位置する複数個の３次元頂点である内部３次元頂点のうちの少なくとも２個の代表頂点の座標値を用いた補間により、前記境界線のうち前記ライン方向に概して平行に延びるセグメントと前記各基準線との交点に対応する各３次元頂点である境界線上３次元頂点の３次元座標値を計算する頂点補間工程と
を含む請求項１ないし８のいずれかに記載の３次元計測方法。
【請求項１０】
前記少なくとも２個の代表頂点は、前記複数個の内部３次元頂点のうち前記境界線に実質的に最も近い２個の３次元頂点を含む請求項９に記載の３次元計測方法。
【請求項１１】
前記各３次元頂点は、前記ライン方向に平行なｘ方向におけるｘ座標値と、前記ライン方向と交差するｙ方向におけるｙ座標値と、それらｘ方向とｙ方向との双方に直角なｚ方向におけるｚ座標値とによって定義され、
前記頂点補間工程は、前記境界線上３次元頂点のｚ座標値を、前記少なくとも２個の代表頂点のｙ座標値およびｚ座標値を用いた補間によって計算する請求項９または１０に記載の３次元計測方法。
【請求項１２】
前記境界線上３次元頂点のｙ座標値は、前記境界線のｙ座標値に基づいて決定される請求項１１に記載の３次元計測方法。
【請求項１３】
前記３次元座標値計算工程は、前記複数個の３次元頂点が計算されるべき計算領域を、前記境界線の内側領域に設定する計算領域設定工程を含む請求項９ないし１２のいずれかに記載の３次元計測方法。
【請求項１４】
前記ピッチ決定工程は、前記計算された密集度の、前記複数の基準線と交差する基準方向における分布に基づき、前記撮像画像が分割された各ローカル領域内に存在する基準線の数の密度の、前記基準方向における分布を基準線数密度分布として決定する密度分布決定工程を含む請求項１ないし１３のいずれかに記載の３次元計測方法。
【請求項１５】
前記ピッチ決定工程は、さらに、前記決定された基準線数密度分布と、前記撮像画像の全領域に存在する基準線の数とに基づき、前記各ローカル領域内に存在する基準線のピッチの、前記基準方向における分布を決定するピッチ分布決定工程を含む請求項１４に記載の３次元計測方法。
【請求項１６】
ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、前記ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、前記対象物の３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測する３次元計測方法であって、
前記取得された２次元的な画像に基づき、前記各基準線に関連付けて、複数個の３次元頂点の３次元座標値を計算する３次元座標値計算工程と、
その３次元座標値計算工程によって計算された複数個の３次元頂点のうち、前記取得された２次元的な画像の境界線より内部に位置する複数個の３次元頂点である内部３次元頂点のうちの少なくとも２個の代表頂点の座標値を用いた補間により、前記境界線のうち前記ライン方向に概して平行に延びるセグメントと前記各基準線との交点に対応する各３次元頂点である境界線上３次元頂点の３次元座標値を計算する頂点補間工程と
を含む３次元計測方法。
【請求項１７】
請求項１ないし１６のいずれかに記載の方法を実行するためにコンピュータによって実行されるプログラム。
【請求項１８】
請求項１７に記載のプログラムをコンピュータ読取り可能に記録した記録媒体。
【請求項１９】
ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、前記ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、前記対象物の３次元形状を複数個の頂点の集まりとして空間離散的に計測する３次元計測装置であって、
前記対象物が撮像された撮像画像に基づき、その撮像画像からその撮像画像の境界線を抽出する境界線抽出部と、
その抽出された境界線に基づき、その境界線が、前記ライン方向と交差する仮想的な複数の計算参照線の各々と交差する回数を、各計算参照線に関する前記境界線の密集度として空間離散的に計算する密集度計算部と、
その計算された密集度に基づき、前記複数の基準線間のピッチを可変に決定するピッチ決定部と
を含む３次元計測装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することにより、その対象物の３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測する技術に関するものであり、特に、その対象物を計測する精度を向上させる技術に関するものである。
【背景技術】
【０００２】
光を対象物に照射することにより、その対象物の３次元形状を計測する技術が既に知られている。この３次元計測技術によれば、ライン方向に延びる明部を少なくとも一つ有するパターン光が、外界との境界を有する対象物に投影されることにより、その対象物の３次元形状が複数個の３次元頂点の集まりとして空間離散的に計測される。
【０００３】
この種の３次元計測技術には既にいくつかの手法が存在し、三角測量を利用するアクティブステレオ法と称される手法も存在する（例えば、特許文献１参照。）。そのアクティブステレオ法は、対象物に投影するパターンの種類により、いくつかに分類され、例えば、光切断法とも称されるスリット光投影法、空間コード化法とも称される繰返しパターン投影法などに分類される。
【０００４】
スリット光投影法によれば、対象物に１本のスリット光が投影され、そのスリット光の投影方向が順次、そのスリット光が延びる方向と直交する方向に変化させられることにより、対象物が１本のスリット光によって走査される。
【０００５】
これに対し、繰返しパターン投影法によれば、空間を複数の領域に、２進コードを付して分割するための複数種類のパターン光が時間的に順次、対象物に投影される。各パターン光ごとに、その対象物が撮像された画像すなわちパターン光投影画像から輝度画像が生成され、その輝度画像から２値化画像が生成され、その２値化画像から空間コード画像が生成される。
【０００６】
いずれの手法を採用する場合でも、ライン方向に延びる明部を少なくとも一つ有するパターン光が、外界との境界を有する対象物に投影され、その結果取得された２次元的な画像が、ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照されることにより、対象物の３次元形状が複数個の３次元頂点の集まりとして空間離散的に計測される。
【０００７】
具体的には、例えば、上述の繰返しパターン投影法を用いて対象物の３次元形状を計測することが必要である場合には、上記生成された空間コード画像が、パターン光のライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照され、それにより、対象物の３次元形状が複数の３次元頂点の集まりとして空間離散的に計測される。その結果、対象物が多面体として近似的に計測される。
【特許文献１】特開２０００−２３０８０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
対象物の３次元形状を光学的に計測するために、前記複数の基準線と、対象物に前記パターン光が投影されることによってその対象物上に形成される複数の投影線との複数の交点が計算される。計算された各交点は、頂点とも称され、それら交点の数が多いほど、対象物を計測する精度が向上する。
【０００９】
「対象物上の複数の投影線」は、具体的には、例えば、スリット光投影法によって対象物を計測する場合には、その対象物上において走査されるスリット光が時間離散的にサンプリングされる結果、系列的にかつ空間的に並んだ複数の明部を意味する。すなわち、スリット光投影法によって対象物を計測する場合には、明部と基準線との交点が、対象物上の頂点を構成するのである。
【００１０】
また、「対象物上の複数の投影線」は、例えば、繰返しパターン投影法によって対象物を計測する場合には、空間的に並んだ複数のコード境界を意味する。すなわち、繰返しパターン投影法によって対象物を計測する場合には、コード境界と基準線との交点が、対象物上の頂点を構成するのである。
【００１１】
したがって、対象物を計測する際に要求される精度がその対象物のうちの全領域内において一様ではない場合には、その要求精度が高い領域において、低い領域におけるより、基準線の数を増加させて、それら基準線と対象物上の複数の投影線（例えば、明部、コード境界）との交点の数を増加させることが望ましい。
【００１２】
基準線の数を増加させるためには、基準線間のピッチを減少させることが必要である。また、特定の領域について、基準線と対象物上の投影線との交点の数を増加させることは、その特定の領域において、それ以外の領域より、交点の密度が増加することを意味する。したがって、要求精度が画像の全領域内において一様ではない場合には、その要求精度に応じて交点の密度が増加するように、基準線間のピッチを可変に決定することが望ましい。
【００１３】
しかしながら、従来の３次元計測方法においては、それら複数の基準線が、対象物の全領域内において、等ピッチで並ぶように定義されていた。
【００１４】
そのため、この従来の３次元計測方法を実施する場合には、対象物において視覚的特徴量（例えば、形状、凹凸、色、輝度等）の変化（以下、「視覚的変化」という。）が大きいために要求精度が高い領域において実際の精度が不足する傾向や、視覚的変化が小さいために要求精度が低い領域において３次元計測が無意味に行われる傾向があった。
【００１５】
対象物において視覚的特徴量の変化が大きい領域の一典型例は、その対象物の境界およびその近傍である。一方、前記パターン光を対象物に投影することによって取得された２次元的な画像の境界線は、前記ライン方向を横切る横断セグメントと、ライン方向に概して平行に延びる平行セグメントとに分割される。それら横断セグメントと平行セグメントとのうち、前記基準線により平行であるのは、横断セグメントである。したがって、複数の基準線は、横断セグメントの領域において、それ以外の領域より、狭いピッチで並ぶように、画像に割り当てられることが望ましい。
【００１６】
しかしながら、前述の従来の３次元計測方法においては、前述のように、それら基準線が等ピッチで画像に割り当てられるため、前記２次元画像の境界線のうちの横断セグメントにおいて、対象物の計測精度が不足する傾向があった。
【００１７】
ところで、前記パターン光を対象物に投影することによって取得された２次元的な画像の境界線の計測精度を向上させるためには、その境界線とパターン光のうちの対象物上の投影線との交点の数ができる限り多数であることが望ましい。
【００１８】
しかしながら、一般に、平行セグメントと対象物上の投影線との交点の数は、横断セグメントと対象物上の投影線との交点の数より少ない。それにもかかわらず、前述の従来の３次元計測方法においては、そのことに起因して、平行セグメントにおいて横断セグメントより、計測精度が低下することを十分抑制する適切な対策が何ら講じられていなかった。
【００１９】
そのため、この従来の３次元計測方法においては、平行セグメントにつき、対象物上の投影線との交点の数が少ないことが原因で、その平行セグメントの計測精度が低下する傾向があった。
【００２０】
以上要するに、この従来の３次元計測方法を実施する場合には、対象物を３次元的に計測する際に、そのうちの特定の部位（例えば、境界）において計測精度が低下する傾向があったのである。
【００２１】
以上説明した事情を背景とし、本発明は、ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、その対象物の３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測する技術において、その対象物を計測する精度を向上させることを課題としてなされたものである。
【課題を解決するための手段】
【００２２】
本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。
【００２３】
さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。
【００２４】
（１）  ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、前記ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、前記対象物の３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測する３次元計測方法であって、
前記対象物が撮像された撮像画像に基づき、その撮像画像からその撮像画像の境界線を抽出する境界線抽出工程と、
その抽出された境界線に基づき、その境界線が、前記ライン方向と交差する仮想的な複数の計算参照線の各々と交差する回数を、各計算参照線に関する前記境界線の密集度として空間離散的に計算する密集度計算工程と、
その計算された密集度に基づき、前記複数の基準線間のピッチを可変に決定するピッチ決定工程と
を含む３次元計測方法。
【００２５】
この３次元計測方法においては、対象物が撮像された撮像画像の境界線が、前記ライン方向と交差する仮想的な複数の計算参照線の各々と交差する回数が、各計算参照線に関する境界線の密集度として空間離散的に計算される。境界線と各計算参照線とが交差する回数が多いほど、その境界線の視覚的特徴量が変化する程度（以下、「視覚的変化度」という。）が増加する。
【００２６】
したがって、その交差回数を境界線の密集度として計算することは、境界線のうち、各計算参照線に対応する各領域ごとに、境界線の視覚的変化度を誘導することを意味する。
【００２７】
さらに、この３次元計測方法においては、計算された密集度に基づき、前記複数の基準線間のピッチが可変に決定される。したがって、この３次元計測方法によれば、境界線内の全領域における視覚的変化度の分布すなわち要求解像度の分布が反映されるように、それら複数の基準線間のピッチを決定することが可能となる。
【００２８】
よって、この３次元計測方法によれば、対象物を再現する画像の解像度が向上するように基準線の分布すなわち前述の交点の密度を適正化することが可能となる。すなわち、基準線間のピッチを、計測すべき対象物の視覚的変化度に適応するように決定することが可能となるのである。
【００２９】
さらに、この３次元計測方法においては、前記計算された密集度に基づいて決定されたピッチで並ぶ複数の基準線を用いることにより、対象物の３次元形状が複数個の３次元頂点の集まりとして空間離散的に計測される。
【００３０】
したがって、この３次元計測方法によれば、基準線間のピッチを、再現すべき対象物の視覚的変化度に適応するように決定することにより、対象物の３次元形状の計測精度を向上させることが容易となる。
【００３１】
（２）  前記ピッチ決定工程は、前記計算された密集度が高い計算参照線の位置ほど狭くなるように前記複数の基準線間のピッチを可変に決定する（１）項に記載の３次元計測方法。
【００３２】
この３次元計測方法においては、計算された密集度が高い計算参照線の位置ほど狭くなるように前記複数の基準線間のピッチが可変に決定される。したがって、この３次元計測方法によれば、境界線の視覚的変化度が大きいほど、基準線間のピッチが減少し、境界線と対象物上の投影線との交点の数が増加して、計測精度が増加する。
【００３３】
（３）  前記複数の計算参照線は、前記ライン方向と交差する方向に等ピッチで並ぶように定義される（１）または（２）項に記載の３次元計測方法。
【００３４】
（４）  前記撮像画像は、前記対象物に前記パターン光を投影することによってその対象物が撮像されたパターン光投影画像であり、
前記境界線抽出工程は、そのパターン光投影画像から変換された輝度画像に基づいて前記境界線を抽出する（１）ないし（３）項のいずれかに記載の３次元計測方法。
【００３５】
この３次元計測方法によれば、同じパターン光投影画像を用いることにより、基準線間のピッチの決定と、対象物の再現（例えば、空間コード化法による対象物の３次元形状の計測）とを行うことが可能となる。したがって、この３次元計測方法によれば、基準線間のピッチを決定するために特別に画像を取得する工程を追加せずに済む。
【００３６】
（５）  前記撮像画像は、前記対象物に前記パターン光が投影されない状態においてその対象物が撮像されたパターン光非投影画像であり、
前記境界線抽出工程は、そのパターン光非投影画像から変換された輝度画像に基づいて前記境界線を抽出する（１）ないし（３）項のいずれかに記載の３次元計測方法。
【００３７】
この３次元計測方法によれば、境界線を抽出するために前記パターン光投影画像より、輝度が一様である光を対象物に投影して取得された画像である点で適しているパターン非投影画像を利用することにより、境界線をより正確に抽出することが容易となる。
【００３８】
（６）  前記境界線は、前記撮像画像の外周境界と内部境界とを含み、
前記境界線抽出工程は、
前記撮像画像に基づき、その撮像画像から前記外周境界を抽出する第１抽出工程と、
前記撮像画像に基づき、その撮像画像から前記内部境界を抽出する第２抽出工程と
を含む（１）ないし（５）項のいずれかに記載の３次元計測方法。
【００３９】
本項における「外周境界」は、例えば、対象物と空間とを仕切る境界を意味するように定義することが可能である。これに対し、「内部境界」は、例えば、対象物内において視覚的特徴量が互いに異なる複数の領域を互いに仕切る境界を意味するように定義することが可能である。「内部境界」は、例えば、対象物が複数の色で着色されている場合に観念することが可能である。
【００４０】
（７）  前記撮像画像は、前記対象物に前記パターン光が投影されない状態においてその対象物が撮像されたパターン光非投影画像であり、
前記第２抽出工程は、そのパターン光非投影画像から変換された輝度画像に基づいて前記内部境界を抽出する（６）項に記載の３次元計測方法。
【００４１】
この３次元計測方法によれば、一般に、外周境界より精度よく抽出することが困難である内部境界を、前述のように、対象物の視覚的変化度を抽出するために前記パターン光投影画像より適しているパターン光非投影画像を利用することにより、精度よく抽出することが可能となる。
【００４２】
（８）  前記パターン光は、（ａ）少なくとも１つの明部が前記ライン方向に延びるように形成されるスリット光であって、前記ライン方向と交差する方向に走査されることにより、前記対象物に時系列的に照射されるものと、（ｂ）共に前記ライン方向に延びる明部と暗部とが列方向に並んだパターン光であって、前記対象物に一斉に照射されるものとのうちの少なくとも一方を含む（１）ないし（７）項のいずれかに記載の３次元計測方法。
【００４３】
（９）  さらに、
前記取得された２次元的な画像に基づき、前記各基準線に関連付けて、複数個の３次元頂点の３次元座標値を計算する３次元座標値計算工程と、
その３次元座標値計算工程によって計算された複数個の３次元頂点のうち、前記境界線より内部に位置する複数個の３次元頂点である内部３次元頂点のうちの少なくとも２個の代表頂点の座標値を用いた補間により、前記境界線のうち前記ライン方向に概して平行に延びるセグメントと前記各基準線との交点に対応する各３次元頂点である境界線上３次元頂点の３次元座標値を計算する頂点補間工程と
を含む（１）ないし（８）項のいずれかに記載の３次元計測方法。
【００４４】
この３次元計測方法においては、前記取得された２次元的な画像に基づき、前記各基準線に関連付けて、複数個の３次元頂点の３次元座標値が計算される。しかしながら、前記境界線のうち前記ライン方向に概して平行に延びるセグメントすなわち前述の平行については、そのようにして３次元座標値が計算できた３次元頂点が存在しない可能性が高い。なぜなら、その平行セグメントは、前記パターン光のうちの対象物上の投影線と交差する可能性が低く、その交差に関する情報を用いて３次元頂点を取得することができないからである。
【００４５】
本項に係る３次元計測方法においては、その３次元座標値計算工程によって計算された複数個の３次元頂点のうち、前記境界線より内部に位置する複数個の３次元頂点である内部３次元頂点のうちの少なくとも２個の代表頂点の座標値を用いた補間が行われる。この補間により、前記境界線のうち前記ライン方向に概して平行に延びるセグメントと前記各基準線との交点に対応する各３次元頂点である境界線上３次元頂点の３次元座標値が計算される。
【００４６】
すなわち、この３次元計測方法においては、もともと計算できた複数の内部３次元頂点を利用することにより、境界線上３次元頂点が予測されるのである。したがって、この３次元計測方法によれば、境界線上３次元頂点を一応の精度で取得することが可能となり、境界線上３次元頂点を取得することなく対象物の３次元形状を計測する場合より、その計測の精度が向上する。
【００４７】
（１０）  前記少なくとも２個の代表頂点は、前記複数個の内部３次元頂点のうち前記境界線に実質的に最も近い２個の３次元頂点を含む（９）項に記載の３次元計測方法。
【００４８】
この３次元計測方法によれば、複数個の内部３次元頂点のうち、予測すべき境界線上３次元頂点の幾何学的特徴に、他の内部３次元頂点より近似するかほぼ共通する幾何学的特徴を有する少なくとも２個の代表頂点を利用することにより、その境界線上３次元頂点の予測精度を向上させることが容易となる。
【００４９】
（１１）  前記各３次元頂点は、前記ライン方向に平行なｘ方向におけるｘ座標値と、前記ライン方向と交差するｙ方向におけるｙ座標値と、それらｘ方向とｙ方向との双方に直角なｚ方向におけるｚ座標値とによって定義され、
前記頂点補間工程は、前記境界線上３次元頂点のｚ座標値を、前記少なくとも２個の代表頂点のｙ座標値およびｚ座標値を用いた補間によって計算する（９）または（１０）項に記載の３次元計測方法。
【００５０】
本項における「ｙ方向」は、例えば、対象物が前述のスリット投影法によって計測される場合には、パターン光としてのスリット光が走査される方向に一致するように定義される。また、「ｙ方向」は、対象物が前述の繰返しパターン投影法によって計測される場合には、パターン光を形成する明部と暗部とが並ぶ列方向に一致するように定義される。
【００５１】
（１２）  前記境界線上３次元頂点のｙ座標値は、前記境界線のｙ座標値に基づいて決定される（１１）項に記載の３次元計測方法。
【００５２】
この３次元計測方法によれば、内部３次元頂点に関する位置情報と、境界線に関する位置情報とを利用することにより、境界線上３次元頂点の予測精度を向上させることが容易となる。
【００５３】
（１３）  前記３次元座標値計算工程は、前記撮像画像のうち前記複数個の３次元頂点が計算されるべき計算領域を、前記境界線の内側領域に設定する計算領域設定工程を含む（９）ないし（１２）項のいずれかに記載の３次元計測方法。
【００５４】
この３次元計測方法によれば、境界線の外側領域については、３次元頂点のための計算が省略されるため、対象物を計測するための計算時間を短縮し、その計算を高速化することが容易となる。
【００５５】
（１４）  前記ピッチ決定工程は、前記計算された密集度の、前記複数の基準線と交差する基準方向における分布に基づき、前記撮像画像が分割された各ローカル領域内に存在する基準線の数の密度の、前記基準方向における分布を基準線数密度分布として決定する密度分布決定工程を含む（１）ないし（１３）項のいずれかに記載の３次元計測方法。
【００５６】
この３次元計測方法においては、撮像画像の境界線が各計算参照線と交差する回数、すなわち、各計算参照線に関する境界線の密集度の、前述の複数の基準線と交差する基準方向における分布が基準線数密度分布として参照される。その基準線数密度分布に基づき、撮像画像が分割された各ローカル領域内に存在する基準線の数の密度の、前記基準方向における分布が決定される。
【００５７】
ここに、「各ローカル領域内に存在する基準線の数の密度」は、各ローカル領域内に存在する基準線の数の、撮像画像の全領域に存在する基準線の数に対する比率を表す。
【００５８】
したがって、この３次元計測方法によれば、各ローカル領域ごとに設定すべき基準線の数ひいてはそのピッチを、撮像画像の全領域に存在する基準線の数に対して相対的に決定することが可能となる。
【００５９】
（１５）  前記ピッチ決定工程は、さらに、前記決定された基準線数密度分布と、前記撮像画像の全領域に存在する基準線の数とに基づき、前記各ローカル領域内に存在する基準線のピッチの、前記基準方向における分布を決定するピッチ分布決定工程を含む（１４）項に記載の３次元計測方法。
【００６０】
この３次元計測方法においては、撮像画像が分割された各ローカル領域内に存在する基準線の数の密度の、前記基準方向における分布すなわち基準線数密度分布と、撮像画像の全領域に存在する基準線の数すなわち全基準線数とが参照される。それら基準線数密度分布と全基準線数とに基づき、各ローカル領域内に存在する基準線のピッチの、前記基準方向における分布が決定される。
【００６１】
例えば、各ローカル領域ごとに、対応する基準線数密度と全基準線数との積を計算すれば、各ローカル領域ごとに、割り付けるべき基準線の数ひいてはピッチが取得される。
【００６２】
したがって、この３次元計測方法によれば、撮像画像の全領域に割り付けられる基準線の数を固定したまま、前記密集度の分布に適合するように、各ローカル領域ごとに、割り付けるべき基準線の数ひいてはピッチを決定することが可能となる。
【００６３】
（１６）  ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、前記ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、前記対象物の３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測する３次元計測方法であって、
前記取得された２次元的な画像に基づき、前記各基準線に関連付けて、複数個の３次元頂点の３次元座標値を計算する３次元座標値計算工程と、
その３次元座標値計算工程によって計算された複数個の３次元頂点のうち、前記取得された２次元的な画像の境界線より内部に位置する複数個の３次元頂点である内部３次元頂点のうちの少なくとも２個の代表頂点の座標値を用いた補間により、前記境界線のうち前記ライン方向に概して平行に延びるセグメントと前記各基準線との交点に対応する各３次元頂点である境界線上３次元頂点の３次元座標値を計算する頂点補間工程と
を含む３次元計測方法。
【００６４】
この３次元計測方法によれば、前記（９）項に係る３次元計測方法と共通する原理に従い、共通する作用効果を実現することが可能である。この３次元計測方法は、前記（１０）ないし（１５）項のいずれかに記載の特徴的技術と組み合わせて実施することが可能である。
【００６５】
（１７）  （１）ないし（１６）項のいずれかに記載の方法を実行するためにコンピュータによって実行されるプログラム。
【００６６】
このプログラムがコンピュータにより実行されれば、前記（１）ないし（１６）項のいずれかに係る方法におけると基本的に同じ原理に従い、同様な効果が実現され得る。
【００６７】
本項に係るプログラムは、それの機能を果たすためにコンピュータにより実行される指令の組合せのみならず、各指令に従って処理されるファイルやデータをも含むように解釈することが可能である。
【００６８】
また、このプログラムは、それ単独でコンピュータにより実行されることにより、所期の目的を達するものとしたり、他のプログラムと共にコンピュータにより実行されることにより、所期の目的を達するものとすることができる。後者の場合、本項に係るプログラムは、データを主体とするものとすることができる。
【００６９】
（１８）  （１７）項に記載のプログラムをコンピュータ読取り可能に記録した記録媒体。
【００７０】
この記録媒体に記録されているプログラムがコンピュータにより実行されれば、前記（１）ないし（１６）項のいずれかに係る方法と同じ作用効果が実現され得る。
【００７１】
この記録媒体は種々な形式を採用可能であり、例えば、フレキシブル・ディスク等の磁気記録媒体、ＣＤ、ＣＤ−ＲＯＭ等の光記録媒体、ＭＯ等の光磁気記録媒体、ＲＯＭ等のアンリムーバブル・ストレージ等のいずれかを採用し得る。
【００７２】
（１９）  ライン方向に延びる明部を少なくとも一つ有するパターン光を、外界との境界を有する対象物に投影することによって取得された２次元的な画像を、前記ライン方向と交差する仮想的な複数の基準線に関して空間離散的に参照することにより、前記対象物の３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測する３次元計測装置であって、
前記対象物が撮像された撮像画像に基づき、その撮像画像からその撮像画像の境界線を抽出する境界線抽出部と、
その抽出された境界線に基づき、その境界線が、前記ライン方向と交差する仮想的な複数の計算参照線の各々と交差する回数を、各計算参照線に関する前記境界線の密集度として空間離散的に計算する密集度計算部と、
その計算された密集度に基づき、前記複数の基準線間のピッチを可変に決定するピッチ決定部と
を含む３次元計測装置。
【００７３】
この３次元計測装置によれば、前記（１）項に係る３次元計測方法と共通する原理に従い、共通する作用効果を実現することが可能である。この３次元計測装置は、前記（２）ないし（１５）項のいずれかに記載の特徴的技術と組み合わせて実施することが可能である。
【発明を実施するための最良の形態】
【００７４】
以下、本発明のさらに具体的な実施の形態のうちのいくつかを図面に基づいて詳細に説明する。
【００７５】
図１には、本発明の第１実施形態に従う３次元計測方法を実施するのに好適な３次元計測装置１０が示されている。この３次元計測装置１０は、対象物ＯＢＪの３次元形状を空間コード化法によって計測するために、投影部１２と、パターン光制御部１４と、撮像部１６と、３次元画像処理部１８とを備えている。
【００７６】
投影部１２は、複数種類のパターン光を時系列的に対象物ＯＢＪに投影する。パターン光制御部１４は、その投影部１２から対象物ＯＢＪに投影されるパターン光の種類を制御する。撮像部１６は、対象物ＯＢＪを撮像する。３次元画像処理部１８は、投影部１２およびパターン光制御部１４を制御する機能と、撮像部１６による撮像画像に基づいて対象物ＯＢＪの３次元形状を計測する機能とを有する。
【００７７】
図１に示すように、３次元計測装置１０にはｘｙｚ座標系が設定されている。このｘｙｚ座標系のｘ座標軸の方向すなわちｘ方向は、対象物ＯＢＪの正面視において水平方向に一致し、ｙ座標軸の方向すなわちｙ方向は、対象物ＯＢＪの正面視において垂直方向に一致し、ｚ座標軸の方向すなわちｚ方向は、対象物ＯＢＪの奥行き方向に一致する。投影部１２から対象物ＯＢＪに投影される各種類のパターン光は、共にライン方向すなわちｘ方向に延びる明部と暗部とが列方向であるｙ方向に交互に並ぶように構成されている。
【００７８】
図２には、３次元計測装置１０の電気的構成がさらに詳細にブロック図で示されている。投影部１２は、光源としてのＬＥＤアレイ２０を主体として構成されており、そのＬＥＤアレイ２０に光源ドライバ２２が電気的に接続されている。パターン光制御部１４は、パターン光を可変に発生させるパターン光発生器としての投影ＬＣＤ２４を主体として構成されており、その投影ＬＣＤ２４に投影ＬＣＤドライバ２６が電気的に接続されている。撮像部１６は、撮像素子としてのＣＣＤ２８を主体として構成されており、そのＣＣＤ２８にＣＣＤインタフェース３０が電気的に接続されている。
【００７９】
図２に示すように、３次元画像処理部１８は、コンピュータ３２を主体として構成されている。コンピュータ３２は、よく知られているように、ＣＰＵ３４とＲＯＭ３６とＲＡＭ３８とがバス４０を介して互いに接続されることによって構成されている。それらＣＰＵ３４、ＲＯＭ３６およびＲＡＭ３８は、バス４０およびバス４２を介して光源ドライバ２２、投影ＬＣＤドライバ２６およびＣＣＤインタフェース３０に電気的に接続されている。
【００８０】
図２に示すように、ＲＯＭ３６には、３次元形状検出プログラムがメインプログラムとして記憶されている。ＲＯＭ３６には、さらに、境界抽出プログラム、３次元計測プログラム、頂点補間プログラム、最大値画像生成プログラムおよび内部境界抽出プログラムがそれぞれ、３次元検出プログラムの実行中にコールされて実行されるサブルーチンとして記憶されている。それらプログラムの詳細は後述する。
【００８１】
図２に示すように、ＲＡＭ３８には、各種データが一時的に格納される複数のメモリが割り当てられている。それらメモリは、投影画像メモリ４４、輝度画像メモリ４６、差分画像メモリ４８、最大値画像メモリ５０、２値化画像メモリ５２、外周境界メモリ５４、内部境界メモリ５６、出力画像メモリ５８、密集度メモリ６０、空間コード画像メモリ６６および３次元頂点メモリ６８を含んでいる。
【００８２】
図３には、前記３次元形状検出プログラムがフローチャートで概念的に表されている。この３次元形状検出プログラムは、コンピュータ３２の電源投入に伴って実行が開始される。
【００８３】
この３次元形状検出プログラムが実行されると、まず、ステップＳ１（以下、単に「Ｓ１」で表す。他のステップについても同じとする。）において、対象物ＯＢＪの撮像が行われる。
【００８４】
具体的には、このＳ１においては、投影部１２によって複数種類のパターン光が順次対象物ＯＢＪに投影されるごとに、撮像部１６により、対象物ＯＢＪを表す画像がパターン光投影画像として撮像される。さらに、投影部１２によってパターン光が対象物ＯＢＪに投影されない状態（無照射状態）において、撮像部１６により、対象物ＯＢＪを表す画像がパターン光非投影画像として撮像される。複数種類のパターン光に関連付けて取得された複数のパターン光投影画像とパターン光非投影画像とは、投影画像メモリ４４に格納される。
【００８５】
次に、Ｓ２において、前記境界抽出プログラムがコールされて実行される。
【００８６】
図４には、その境界抽出プログラムがフローチャートで概念的に表されている。この境界抽出プログラムにおいては、まず、Ｓ１０１において、複数のパターン光投影画像およびパターン光非投影画像が投影画像メモリ４４から順次読み出され、各投影画像（パターン光有投影画像およびパターン光非投影画像）ごとに輝度画像が生成される。
【００８７】
このＳ１０１においては、輝度値が、ＹＣｂＣｒ空間におけるＹ値として定義されており、各画素のＲＧＢ値より、
【００８８】
Ｙ＝０．２９８９１２・Ｒ＋０．５８６６１１・Ｇ＋０．１１４４７８・Ｂ
【００８９】
なる式を用いて計算される。各画素についてＹ値を求めることにより、各投影画像（パターン光有投影画像およびパターン光非投影画像）ごとに輝度画像が生成される。輝度画像は、例えば、各画素ごとに２５６階調で輝度を表現するように定義される。
【００９０】
図５（ｂ）には、１つのパターン光投影画像に対応する１つの輝度画像上における輝度の変化を説明するために、その輝度画像を構成する複数の画素のうち、あるｘ座標値を共有してｙ方向に一列に並ぶ複数の画素が輝度（「画素値」ともいう。）に関して変化する様子がグラフで表されている。輝度画像には、対象物ＯＢＪにパターン光が投影された部分と、投影されない部分とが存在する。そのため、輝度画像における輝度は、パターン光が投影された部分において、パターン光が投影されない部分より高い。
【００９１】
次に、図４のＳ１０２において、パターン光非投影画像が投影画像メモリ４４から読み出され、そのパターン光非投影画像について輝度画像が生成される。その生成された輝度画像は、輝度画像メモリ４６に格納される。
【００９２】
図５（ａ）には、パターン光非投影画像に対応する１つの輝度画像上における輝度の変化を説明するために、その輝度画像を構成する複数の画素のうち、あるｘ座標値を共有してｙ方向に一列に並ぶ複数の画素が輝度に関して変化する様子がグラフで表されている。
【００９３】
パターン光非投影画像の輝度画像と、パターン光投影画像の輝度画像とを、各画素ごとに輝度に関して互いに比較すると、各輝度画像のうち、対象物ＯＢＪのうちパターン光が投影されない部分に対応する部分については、それら輝度画像間において輝度が互いに一致するが、対象物ＯＢＪのうちパターン光が投影された部分に対応する部分については、パターン光投影画像の輝度画像の輝度が、その投影されたパターン光の輝度分、パターン光非投影画像の輝度より高い。
【００９４】
続いて、図４のＳ１０３において、各種類のパターン光投影画像ごとに、パターン光投影画像の輝度画像の輝度とパターン光非投影画像の輝度画像の輝度との差分が各画素ごとに求められる。複数種類のパターン光投影画像の輝度画像についてそれぞれ、パターン光非投影画像の輝度画像に対する差分画像が生成される。それら生成された複数種類の差分画像は差分画像メモリ４８に格納される。
【００９５】
図５（ｃ）には、同図（ａ）に示すパターン光非投影画像の輝度画像と、同図（ｂ）に示すパターン光投影画像の輝度画像とについての差分画像がグラフで表されている。
【００９６】
その後、図４のＳ１０４において、前記最大値画像生成プログラムがコールされて実行される。
【００９７】
図６には、その最大値画像生成プログラムがフローチャートで概念的に表されている。この最大値画像生成プログラムは、先に取得された複数種類の差分画像を利用することにより、実際には対象物ＯＢＪを全投影状態（全照射状態）において撮像することなく、対象物ＯＢＪが全投影状態において撮像された場合に生成されるべき差分画像を最大値画像として生成するために実行される。その最大値画像は、複数種類の差分画像の輝度を各画素ごとに互いに比較した場合に、同じ画素についての複数の輝度のうちの最大値を各画素に割り付けることによって生成される。
【００９８】
具体的には、この最大値画像生成プログラムにおいては、まず、Ｓ２０１において、出力画像メモリ５８に格納される出力画像が初期化される。この出力画像は、最大値画像を生成するために出力画像メモリ５８上において論理的に形成される画像である。この出力画像は、高さ方向位置ｈと幅方向位置ｗとによって位置が規定される複数の画素を出力画素として有している。この出力画像の初期化は、それら複数の出力画素に割り付けられる画素値（輝度）がすべて０に設定されることを意味する。高さ方向位置ｈの最大値ｈｍａｘと幅方向位置ｗの最大値ｗｍａｘとはいずれも既知である。
【００９９】
図７には、対象物ＯＢＪについてパターン光の数と同数生成された複数の差分画像のうちの３つが代表的に示されている。この例においては、同じ画素の輝度が、それら３つの差分画像について「ａ」、「ｂ」および「ｃ」でそれぞれ表されている。
【０１００】
次に、図６のＳ２０２において、高さ方向位置ｈの現在値が０に設定される。続いて、Ｓ２０３において、その高さ方向位置ｈの現在値が最大値ｈｍａｘ以下であるか否かが判定される。今回は、高さ方向位置ｈの現在値が０であるから、その判定がＹＥＳとなる。
【０１０１】
その後、Ｓ２０４において、幅方向位置ｗの現在値が０に設定される。続いて、Ｓ２０５において、その幅方向位置ｗの現在値が最大値ｗｍａｘ以下であるか否かが判定される。今回は、幅方向位置ｗの現在値が０であるから、その判定がＹＥＳとなる。
【０１０２】
その後、Ｓ２０６において、高さ方向位置ｈの現在値と幅方向位置ｗの現在値とによって規定される今回の出力画素に、複数種類の差分画像の輝度のうちの最大値が割り付けられる。図７に示す例においては、図示された画素に、輝度ａ、ｂおよびｃのうちの最大値（例えば、輝度ａ）が割り付けられる。
【０１０３】
続いて、図６のＳ２０７において、幅方向位置ｗの現在値が１だけインクリメントされ、その後、Ｓ２０５に戻る。Ｓ２０５ないしＳ２０７の実行が必要回数繰り返された結果、高さ方向位置ｈの現在値を共有する今回の出力画素列について最大輝度値の割付けが終了すると、Ｓ２０５の判定がＮＯとなる。
【０１０４】
その後、Ｓ２０８において、高さ方向位置ｈの現在値が１だけインクリメントされ、その後、Ｓ２０３に戻る。Ｓ２０３ないしＳ２０８の実行が必要回数繰り返された結果、今回の出力画像におけるすべての画素列について最大輝度値の割付けが終了すると、Ｓ２０３の判定がＹＥＳとなり、この最大値画像生成プログラムの一回の実行が終了する。その実行によって生成された出力画像は最大値画像として最大値画像メモリ５０に格納される。
【０１０５】
図８（ａ）には、その生成された最大値画像の一例において、あるｘ座標値を共有してｙ方向に一列に並ぶ複数の画素が輝度に関して変化する様子がグラフで表されている。
【０１０６】
続いて、図４のＳ１０５において、その生成された最大値画像が、予め設定された閾値ＴＨのもとに２値化され、それにより、２値化画像が生成される。その生成された２値化画像は２値化画像メモリ５２に格納される。
【０１０７】
図８（ｂ）には、その生成された２値化画像の一例において、あるｙ座標値を共有してｘ方向に一列に並ぶ複数の画素が輝度に関して変化する様子がグラフで表されている。この例においては、その２値化画像のｘ方向における外周境界が、一対の座標値Ｘ１およびＸ２によって規定される。
【０１０８】
その後、図４のＳ１０６において、その生成された２値化画像から外周境界が、画素値の変化（１から０、または０から１）を検出する処理すなわちエッジ検出により、抽出される。その抽出された外周境界は外周境界メモリ５４に格納される。
【０１０９】
図９には、その抽出された外周境界が外周境界メモリ５４に、各ｙ座標値に関連付けて、少なくとも一組のｘ座標値によって表現されて格納される様子が概念的に表されている。
【０１１０】
続いて、図４のＳ１０７において、前記内部境界抽出プログラムがコールされて実行される。
【０１１１】
図１０には、その内部境界抽出プログラムが概念的にフローチャートで表されている。
【０１１２】
この内部境界抽出プログラムにおいては、まず、Ｓ３０１において、輝度画像メモリ４６から、パターン光非投影画像の輝度画像であって図４におけるＳ１０２の実行によって生成されたものが読み出される。
【０１１３】
次に、Ｓ３０２において、その読み出されたパターン光非投影画像の輝度画像に対して２次微分フィルタが適用されることにより、その輝度画像内における輝度の空間的変化量が検出される。
【０１１４】
続いて、Ｓ３０３において、その検出された輝度の空間的変化量に基づき、今回の輝度画像内において輝度が一定以上変化した部分とそうでない部分とを特定するために２値化処理が行われる。その結果生成された２値化画像においては、画素値が１である画素が、輝度の空間的変化量が一定以上である画素を示し、一方、画素値が０である画素が、輝度の空間的変化量が一定以上ではない画素を示す。
【０１１５】
その後、Ｓ３０４において、その生成された２値化画像内において、画素値が１である画素が、内部境界を構成する画素であるとして、内部境界メモリ５６に格納される。
【０１１６】
以上で、この内部境界抽出プログラムの一回の実行が終了し、さらに、図４に示す境界抽出プログラムの一回の実行も終了する。
【０１１７】
図１１（ａ）には、対象物ＯＢＪが、色が異なるために輝度も異なる３つの部分α、βおよびγを有するために、各部分α、βおよびγの境界が内部境界を構成する様子が示され、図１２には、内部境界が、それを構成する複数の画素のｘ座標値とｙ座標値とによって表現されて内部境界メモリ５６に格納される様子が概念的に表されている。
【０１１８】
その後、図３のＳ３において、前記３次元計測プログラムがコールされて実行される。
【０１１９】
この３次元計測プログラムにおいては、まず、Ｓ４０１において、外周境界メモリ５４から対象物ＯＢＪの外周境界を表すデータが読み込まれる。次に、Ｓ４０２において、その読み込まれたデータに基づき、対象物ＯＢＪの外周境界が、パターン光のライン方向すなわちｘ方向と直交する仮想的な複数の計算参照線ＣＲＬと交差する回数が、各計算参照線ＣＲＬに関する外周境界の第１密集度として計算される。それら計算参照線ＣＲＬは、いずれもｙ方向に延びるとともに、予め定められたピッチで等間隔にｘ方向に並ぶように設定される。
【０１２０】
続いて、Ｓ４０３において、内部境界メモリ５６から対象物ＯＢＪの内部境界を表すデータが読み込まれる。その後、Ｓ４０４において、その読み込まれたデータに基づき、対象物ＯＢＪの内部境界が各計算参照線ＣＲＬと交差する回数が、各計算参照線ＣＲＬに関する内部境界の第２密集度として計算される。
【０１２１】
その後、Ｓ４０５において、それら計算された第１および第２密集度が合成された合成密集度が計算される。この合成密集度は、例えば、各計算参照線ＣＲＬごとに、第１および第２密集度を単純に足し算することによって計算することが可能である。計算された合成密集度は密集度メモリ６０に格納される。
【０１２２】
図１１（ｂ）には、同図（ａ）に示す例につき、外周境界が平面図で示されるとともに、その外周境界について計算された第１密集度がグラフで表されている。同図（ｃ）には、同図（ａ）に示す例につき、内部境界が外周境界と共に平面図で示されるとともに、それら内部境界と外周境界とについて計算された合成密集度がグラフで表されている。
【０１２３】
続いて、図１３のＳ４０６において、対象物ＯＢＪの３次元形状を複数の３次元頂点として空間離散的に計測するために空間コード画像に関連付けて参照される仮想的な複数の計測基準線ＭＲ（前記（１）項における「基準線」の一例である。）間のピッチが決定される。それら計測基準線ＭＲは、ｙ方向に平行に延びている。以下、そのピッチを決定する手法をさらに具体的に説明する。
【０１２４】
図１４（ａ）には、対象物ＯＢＪが、それに投影されるパターン光と共に正面図で示されている。ただし、そのパターン光は、前述の複数種類のパターン光を重ね合わせた場合に形成される合成パターン光であり、この合成パターン光における複数のコード境界ＣＢが同図（ａ）において破線で示されている。それらコード境界ＣＢ間のピッチＱは、それら複数種類のパターン光における最小のピッチに等しい。同図（ａ）には、さらに、対象物ＯＢＪが、前記計算された合成密集度に応じて、中密集度領域と、低密集度領域と、高密集度領域とに分割される様子も示されている。
【０１２５】
図１４（ｂ）には、それらコード境界ＣＢが、複数の計測基準線ＭＲと共に平面図で示されている。同図（ｂ）には、さらに、それら計測基準線ＭＲが、合成密集度の分布に応じた対象物ＯＢＪの分割領域に応じて、３つの領域に分割されている。
【０１２６】
具体的には、それら計測基準線ＭＲのうち、対象物ＯＢＪの中密集度領域内に存在する部分は、複数の計測基準線ＭＲが中ピッチで並ぶ中ピッチ領域に設定され、対象物ＯＢＪの低密集度領域内に存在する部分は、複数の計測基準線ＭＲが大ピッチで並ぶ大ピッチ領域に設定され、対象物ＯＢＪの高密集度領域内に存在する部分は、複数の計測基準線ＭＲが小ピッチで並ぶ小ピッチ領域に設定されている。
【０１２７】
本実施形態においては、対象物ＯＢＪの各領域ごとに、前記計算された合成密集度Ｄが３つのレベルのいずれか分類され、その分類に応じて、計測基準線ＭＲ間のピッチＰが３つの値のいずれかに設定される。合成密集度Ｄのレベルと計測基準線ＭＲ間のピッチＰの値との関係が、合成密集度Ｄの上昇につれてピッチＰが減少することを表す関係として、ＲＯＭ３６に記憶されており、図１３のＳ４０６においては、対象物ＯＢＪの各領域ごとに、ＲＯＭ３６に記憶されたその関係に従い、計測基準線ＭＲ間のピッチＰが個別に決定される。
【０１２８】
その後、図１３のＳ４０７において、２値化画像メモリ５２から２値化画像を表すデータが読み出され、その読み出されたデータに基づき、空間コード化法により、空間コード画像が生成される。その生成された空間コード画像においては、各画素ごとに空間モードが割り当てられる。その生成された空間コード画像を表すデータは空間コード画像メモリ６６に格納される。その生成された空間コード画像から複数のコード境界ＣＢが抽出される。
【０１２９】
図１４（ａ）においては、破線で示す複数のコード境界ＣＢが、対象物ＯＢＪ内に存在する領域において湾曲しているが、これは、その領域において対象物ＯＢＪが湾曲していることを示している。さらに、同図（ｂ）には、空間コード画像において同じコード境界ＣＢ上の複数の画素、すなわち、同じ空間コードが割り当てられた複数の画素の各位置が、ｘ座標値とｙ座標値とに関して示されている。
【０１３０】
続いて、図１３のＳ４０８において、その生成された空間コード画像のコード境界ＣＢにおける複数の画素のうち、前記決定されたピッチＰで並んだ複数の計測基準線ＭＲと交差するものが複数の計測対象画素として選択される。
【０１３１】
ただし、それら計測対象画素は、対象物ＯＢＪの外周境界（２値化画像の境界線）の内部に存在するように選択される。それにより、後述の３次元頂点は、対象物のＯＢＪの外周境界の内部に限り、計算されるというように、３次元頂点の計算領域が限定される。
【０１３２】
このＳ４０８においては、さらに、それら選択された複数の計測対象画素のそれぞれにつき、対応する空間コードに基づき、かつ、三角測量の原理に従い、ｘ座標値とｙ座標値とｚ座標値とが計算される。それら計測対象画素は、対象物ＯＢＪの３次元表面を近似する複数の３次元頂点として機能する。
【０１３３】
各３次元頂点は、具体的には、よく知られているように、空間コード画像における各画素に割り当てられた空間コード、各画素に関連して投影部１２がパターン光を対象物ＯＢＪに投影する角度、各画素に関連して撮像部１６が対象物ＯＢＪを撮像する角度、それら投影部１２と撮像部１６との距離等に基づき、三角測量の原理に従って計算される。
【０１３４】
空間コード化法によって対象物ＯＢＪの表面上の各３次元頂点を計算する手法のさらに具体的な内容については、その一例が本出願人の特願２００４−１０５４２６号明細書に詳細に開示されているため、それを参照することによって引用することにより、本明細書においては詳細な説明を省略する。
【０１３５】
以上のようにして、このＳ４０８においては、対象物ＯＢＪの３次元形状を表現するための複数の３次元頂点が取得される。それら取得された複数の３次元頂点を表すデータは３次元頂点メモリ６８に格納される。
【０１３６】
図１４（ｂ）には、そのようにして取得された複数の３次元頂点が「Ｘ」印で示されてる。同図（ｂ）から明らかなように、対象物ＯＢＪのうち、合成密集度が高い領域ほど、その領域に存在する計測基準線ＭＲの本数が増加し、その結果、その領域に存在する３次元頂点の取得数も増加する。よって、対象物ＯＢＪのうち、合成密集度が高い領域ほど、存在する３次元頂点の密度が、対象物ＯＢＪのローカルな形状変化度（例えば、曲率）に適合するように増加させられる。
【０１３７】
以上で、図１３に示す３次元計測プログラムの一回の実行が終了する。この３次元計測プログラムの実行により、対象物ＯＢＪの外周境界のうち、ｘ方向において互いに対向しつつｙ方向に概して平行に延びる一対の部分、すなわち、対象物ＯＢＪの外周境界のうち、図１４における左右のセグメント（前述の「横断セグメント」の一例である。）が、３次元的に計測されることになる。
【０１３８】
その後、図３のＳ４において、同じ外周境界のうち、残りの上下のセグメント（前述の「平行セグメント」の一例である。）を３次元的に計測するために、前記頂点補間プログラムがコールされて実行される。
【０１３９】
図１５には、その頂点補間プログラムが概念的にフローチャートで表されている。この頂点補間プログラムにおいては、まず、Ｓ５０１において、計測基準線ＭＲの番号ｉが０にセットされる。上述の複数の計測基準線ＭＲには、０から最大値ｉｍａｘまで１ずつ増加する番号が予め割り当てられている。
【０１４０】
次に、Ｓ５０２において、番号ｉの現在値が最大値ｉｍａｘ以下であるか否かが判定される。今回は、番号ｉの現在値が０であるから、その判定がＹＥＳとなり、Ｓ５０３に移行する。
【０１４１】
このＳ５０３においては、番号ｉの計測基準線ＭＲをｚ方向に投影することによって対象物ＯＢＪ上に形成される投影線（コード境界）の両端のうちの上端すなわち大きいｙ座標値ｙ２（図１６参照）を有する方に割り当てられる３次元頂点のｘｙｚ座標値が計算される。ただし、その３次元頂点のｘ座標値およびｙ座標値は、今回の計測基準線ＭＲと、前記抽出された外周境界との交点のｘ座標値およびｙ座標値と等しく決定されるため、計算されるべき座標値は、ｚ座標値のみである。
【０１４２】
具体的には、図１６に示すように、前記３次元計測プログラムの実行によって今回の投影線上に位置するように取得された複数の３次元頂点（同図において白丸で示す。）のうち、今回の上端に割り当てられるべき３次元頂点に最も近い２個の３次元頂点が選択される。それら最も近い２個の３次元頂点は、例えば、図１６（ａ）に示す正面視において、今回の上端に割り当てられるべき３次元頂点に最も近い２個の３次元頂点として選択することが可能である。
【０１４３】
次に、図１６（ｂ）に示すように、それら選択された２個の３次元頂点に対し、ｙｚ座標平面上において補間（広義の補間を意味し、外挿または補外ともいう。）を行うことにより、今回の上端に割り当てられるべき３次元頂点のｚ座標値が計算される。その３次元頂点のｘ座標値およびｙ座標値は既知であるから、このＳ５０３の実行により、今回の上端に割り当てられるべき３次元頂点が３次元的に計測されることになる。
【０１４４】
図１６（ｂ）には、補間の一例である線形補間により、それら選択された２個の３次元頂点を通過する一直線の傾きを利用し、その直線上に位置するように、今回の上端に割り当てられるべき３次元頂点が計測される。ただし、その補間は、スプライン曲線やベジエ曲線を利用した非線形補間または曲線補間として実施することが可能である。
【０１４５】
さらに、本実施形態においては、今回の投影線上に位置するように取得された複数の３次元頂点のうち、今回の上端に割り当てられるべき３次元頂点に最も近い２個の３次元頂点を参照することにより、今回の上端に割り当てられるべき３次元頂点の位置が推定される。これに対し、今回の投影線上に位置するように取得された複数の３次元頂点のうち、今回の上端に割り当てられるべき３次元頂点に最も近い３個の３次元頂点を参照することにより、今回の上端に割り当てられるべき３次元頂点の位置を推定する態様で本発明を実施することが可能である。
【０１４６】
この態様においては、それら３個の３次元頂点のうち互いに隣接した２個の３次元頂点を結ぶ一直線の傾きがそれら３個の３次元頂点の並ぶ順序に沿って変化する比率から、今回の上端に割り当てられるべき３次元頂点と、それら３個の３次元頂点のうち、今回の上端に割り当てられるべき３次元頂点に最も近い１個の３次元頂点とを結ぶ一直線の傾きを推定し、その推定された傾きを利用することにより、今回の上端に割り当てられるべき３次元頂点を推定することが可能である。
【０１４７】
その後、図１５のＳ５０４において、今回の投影線の両端のうちの下端すなわち小さいｙ座標値ｙ１（図１６参照）を有するほうに割り当てられる３次元頂点のｘｙｚ座標値が、Ｓ５０３と同様にして計算される。ただし、上端の場合と同様、下端に割り当てられるべき３次元頂点のｘ座標値およびｙ座標値は、今回の計測基準線ＭＲと、前記抽出された外周境界との交点のｘ座標値およびｙ座標値と等しく決定されるため、計算されるべき座標値は、ｚ座標値のみである。
【０１４８】
続いて、Ｓ５０５において、番号ｉの現在値が１だけインクリメントされ、その後、Ｓ５０２に戻る。Ｓ５０２ないしＳ５０５の実行が必要回数繰り返された結果、Ｓ５０２の判定がＮＯとなれば、この頂点補間プログラムの一回の実行が終了する。
【０１４９】
続いて、図３のＳ５において、前記取得された複数の３次元頂点に基づき、対象物ＯＢＪについてテキスチャマッピングが行われる。具体的には、それら複数の３次元頂点を結ぶ複数の線要素によって対象物ＯＢＪの３次元表面が複数の面要素に分割され、各面要素にテキスチャがマッピングされる。このテキスチャマッピングにより、対象物ＯＢＪが再現される。
【０１５０】
以上で、図３の３次元形状検出プログラムの一回の実行が終了する。
【０１５１】
以上の説明から明らかなように、本実施形態においては、図３におけるＳ２が前記（１）項における「境界線抽出工程」の一例を構成し、図１３におけるＳ４０１ないしＳ４０５が同項における「密集度計算工程」の一例を構成し、同図におけるＳ４０６が同項における「ピッチ決定工程」の一例を構成しているのである。
【０１５２】
さらに、本実施形態においては、図４におけるＳ１０１ないしＳ１０６が前記（６）項における「第１抽出工程」の一例を構成し、図４におけるＳ１０７が同項における「第２抽出工程」の一例を構成しているのである。
【０１５３】
さらに、本実施形態においては、図１３におけるＳ４０８が前記（９）項における「３次元座標値計算工程」の一例、および前記（１６）項における「３次元座標値計算工程」の一例を構成し、図３におけるＳ４が前記（９）項における「頂点補間工程」の一例、および前記（１６）項における「頂点補間工程」の一例を構成しているのである。
【０１５４】
さらに、本実施形態においては、図１３におけるＳ４０８が前記（１３）項における「計算領域設定工程」の一例を含んでいるのである。
【０１５５】
さらに、本実施形態においては、コンピュータ３２のうち図３におけるＳ２を実行する部分が前記（１９）項における「境界線抽出部」の一例を構成し、図１３におけるＳ４０１ないしＳ４０５を実行する部分が同項における「密集度計算部」の一例を構成し、同図におけるＳ４０６を実行する部分が同項における「ピッチ決定部」の一例を構成しているのである。
【０１５６】
さらに、本実施形態においては、対象物ＯＢＪの外周境界については、パターン光投影画像とパターン光非投影画像とがそれぞれ、前記（１）項における「撮像画像」の一例であり、また、対象物ＯＢＪの内部境界については、パターン光非投影画像が同項における「撮像画像」の一例である。また、パターン光投影画像が、同項および前記（１６）項における「２次元的な画像」の一例である。
【０１５７】
なお付言するに、本実施形態においては、パターン光投影画像が、本来の用途である空間コード画像の生成のみならず、対象物ＯＢＪの外周境界を計測するためにも利用されるため、その外周境界を計測するために特別な投影および撮像が省略されている。これに対し、対象物ＯＢＪを全照射状態において投影して撮像する工程が外周境界および内部境界の計測のために追加された態様で本発明を実施することが可能である。
【０１５８】
さらに付言するに、本実施形態においては、対象物ＯＢＪの外周境界のうちの左右のセグメント、すなわち、パターン光のライン方向と交差する一対のセグメントが、パターン光と外周境界との交点が空間コード化法によって直接的に３次元頂点として取得されることにより、計測される。一方、同じ対象物ＯＢＪの外周境界のうちの上下のセグメント、すなわち、パターン光の列方向と交差する一対のセグメントは、その対象物ＯＢＪを２次元的に表す輝度画像の外周境界（対象物ＯＢＪの現実の外周境界を投影した図形に相当する。）上の各画素のｘ座標値とｙ座標値とをそのまま用いる一方で、そのｚ座標値を、２次元的な外周境界の内部において高精度で取得された３次元頂点を用いた補間によって推定することにより、計測される。
【０１５９】
そのため、本実施形態においては、外周境界のうちの左右のセグメントは、高精度で計測することが容易であるのに対し、上下のセグメントは、２次元的な外周境界の内部において高精度で取得された３次元頂点を用いた補間を行うものの、高精度で計測することが容易ではない。
【０１６０】
これに対し、投影および撮像を１回のみ行うのではなく２回行い、１回目の投影および撮像は、本実施形態と同様にして行い、２回目の投影および撮像は、パターン光のライン方向および列方向が１回目の投影および撮像と直角となる方向で行う態様で本発明を実施することが可能である。
【０１６１】
この態様においては、例えば、１回目の投影および撮像の結果に応じ、対象物ＯＢＪの外周境界のうちの左右の部分を、計測基準線ＭＲ間のピッチＰの適応設定によって高精度に計測するとともに、２回目の投影および撮像の結果に応じ、対象物ＯＢＪの外周境界のうち上下の部分を、１回目の投影および撮像の場合と同様にして、計測基準線ＭＲ間のピッチＰの適応設定によって高精度に計測することが可能である。
【０１６２】
この態様によれば、対象物ＯＢＪの３次元的な外周境界の全体を、２次元的な外周境界の内部において高精度で取得された３次元頂点を用いた補間に依拠することなく、高精度で計測することが容易となる。
【０１６３】
次に、本発明の第２実施形態を説明する。ただし、本実施形態は、第１実施形態に対し、計測基準線ＭＲのピッチを決定する要素に関してのみ異なり、他の要素については共通するため、異なる要素についてのみ詳細に説明し、共通する要素については、同一の符号または名称を使用して引用することにより、重複した説明を省略する。
【０１６４】
本実施形態においては、第１実施形態と同様にして、図１３に示す３次元計測プログラムにおけるＳ４０１ないしＳ４０５が実行されることにより、前述の合成密集度のｘ方向における分布が計算される。
【０１６５】
その後、本実施形態においては、図１７に概念的にフローチャートで表されている計測基準線ピッチ決定処理ルーチンが、図１３に示す３次元計測プログラムにおけるＳ４０６として実行されることにより、前述の計測基準線ＭＲのピッチが上述の合成密集度の分布に応じて決定される。
【０１６６】
第１実施形態においては、最終的に決定される計測基準線ＭＲの数が、合成密集度の分布すなわち対象物ＯＢＪの撮像画像（２値化画像）に応じて変化する可変値であるのに対し、本実施形態においては、固定値とされている。
【０１６７】
具体的には、本実施形態においては、合成密集度のｘ方向における分布に応じて、計測基準線ＭＲの密度、すなわち、総数が固定された計測基準線ＭＲの配分比率の、ｘ方向における分布が決定される。その決定された配分比率分布に応じて、計測基準線ＭＲが撮像画像の各ローカル領域ごとに存在する数の、ｘ方向における分布が決定される。それにより、各ローカル領域ごとに、計測基準線ＭＲのピッチが決定される。
【０１６８】
ここで、図１７に示す計測基準線ピッチ決定処理ルーチンを詳細に説明するが、図１８にグラフで表す合成密集度分布を示す対象物ＯＢＪを例にとり、説明する。
【０１６９】
図１７に示す計測基準線ピッチ決定処理ルーチンが実行されると、まず、Ｓ１００１において、図１８に示すように、対象物ＯＢＪが撮像された撮像画像が、ｘ方向に並んだＮ個のローカル領域に、各ローカル領域のｘ方向寸法が互いに一致するように、分割される。それらローカル領域には、図１８に示すように、それらローカル領域がｘ方向に並んでいる順序と同じ順序で、「０」から「Ｎ−１」まで１ずつ増加する領域番号ｋが割り当てられる。「Ｎ」は、それらローカル領域の数を示す。
【０１７０】
次に、Ｓ１００２において、領域番号ｋの現在値が「０」にセットされる。続いて、Ｓ１００３において、領域番号ｋの現在値が領域数Ｎより小さいか否かが判定される。今回は領域番号ｋの現在値が領域数Ｎより小さいと仮定すれば、その判定がＮＯとなり、Ｓ１００４に移行する。
【０１７１】
このＳ１００４においては、合成密集度の全体値（全合成密集度）ＳＡＩＩに対する、領域番号ｋの現在値が割り当てられたローカル領域（以下、「今回のローカル領域ｋ」という。）のローカル値（ローカル合成密集度）Ｓ［ｋ］の比率が計算される。その比率は、今回のローカル領域ｋのローカル合成密集度Ｓ［ｋ］を、撮像画像の全領域における全合成密集度ＳＡＩＩで割り算することにより、計算される。
【０１７２】
全合成密集度ＳＡＩＩは、
【０１７３】
ＳＡＩＩ＝Ｓ［０］＋Ｓ［１］＋・・・＋Ｓ［Ｎ−１］
【０１７４】
なる式で定義される。
【０１７５】
その比率は、計測基準線ＭＲの数の全体値（全計測基準線数）ＬＡＩＩ（固定値）に対する、今回のローカル領域ｋにおける計測基準線ＭＲの数のローカル値（ローカル計測基準線数）Ｌ「ｋ」の比率すなわち計測基準線ＭＲの密度を表している。
【０１７６】
全計測基準線数ＬＡＩＩは、
【０１７７】
ＬＡＩＩ＝Ｌ［０］＋Ｌ［１］＋・・・＋Ｌ［Ｎ−１］
【０１７８】
なる式で定義される。
【０１７９】
このＳ１００４においては、さらに、その計算された密度に全計測基準数ＬＡＩＩが掛け算されることにより、今回のローカル領域ｋにおけるローカル計測基準線数Ｌ「ｋ」が計算される。
【０１８０】
その後、Ｓ１００５において、今回のローカル領域ｋのｘ方向長さがローカル計測基準線数Ｌ「ｋ」で割り算されることにより、今回のローカル領域ｋ内に存在する複数の計測基準線ＭＲ間のピッチＰ「ｋ」が計算される。今回のローカル領域ｋのｘ方向長さは、撮像画像全体のｘ方向寸法Ｗを領域数Ｎで割り算することにより計算される。
【０１８１】
続いて、Ｓ１００６において、次のローカル領域（ｋ＋１）についての演算に備えて、領域番号ｋの現在値が１だけインクリメントされる。その後、Ｓ１００３に戻る。
【０１８２】
Ｓ１００３ないしＳ１００６の実行が繰り返された結果、領域番号ｋの現在値が領域数Ｎ以上となれば、Ｓ１００３の判定がＮＯとなり、以上で、この計測基準線ピッチ決定処理ルーチンの一回の実行が終了する。
【０１８３】
本実施形態においては、その後、第１実施形態と同様にして、図１３に示す３次元計測プログラムにおけるＳ４０７およびＳ４０８が実行されることにより、空間コード画像の取得および３次元頂点の取得が行われる。
【０１８４】
以上の説明から明らかなように、本実施形態においては、図１７におけるＳ１００４が前記（１４）項における「密度分布決定工程」の一例を構成し、図１７におけるＳ１００５が前記（１５）項における「ピッチ分布決定工程」の一例を構成しているのである。
【０１８５】
以上、本発明の実施の形態のうちのいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記［発明の開示］の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【図面の簡単な説明】
【０１８６】
【図１】本発明の第１実施形態に従う３次元計測方法を実施するのに好適な３次元画像処理部１８を含む３次元計測装置１０を概念的に表すブロック図である。
【図２】図１における投影部１２、パターン光制御部１４、撮像部１６およびコンピュータ３２をより詳細に表すブロック図である。
【図３】図２における３次元形状検出プログラムを概念的に表すフローチャートである。
【図４】図２における境界抽出プログラムを概念的に表すフローチャートである。
【図５】図４の境界抽出プログラムを説明するためのグラフである。
【図６】図２における最大値画像生成プログラムを概念的に表すフローチャートである。
【図７】図６の最大値画像生成プログラムを説明するための図である。
【図８】図６の最大値画像生成プログラムを説明するためのグラフである。
【図９】図６の最大値画像生成プログラムの実行によって図２における外周境界メモリ５４に格納されるデータの構成を概念的に示す図である。
【図１０】図２における内部境界抽出プログラムを概念的に表すフローチャートである。
【図１１】図１０の内部境界抽出プログラムを説明するための正面図およびグラフである。
【図１２】図１０の内部境界抽出プログラムの実行によって図２における内部境界メモリ５６に格納されるデータの構成を概念的に示す図である。
【図１３】図２における３次元計測プログラムを概念的に表すフローチャートである。
【図１４】図１３の３次元計測プログラムを説明するための正面図である。
【図１５】図２における頂点補間プログラムを概念的に表すフローチャートである。
【図１６】図１５の頂点補間プログラムを説明するための正面図および側面図である。
【図１７】本発明の第２実施形態に従う３次元計測方法を実施するのに好適な３次元画像処理部１８を含む３次元計測装置１０におけるコンピュータ３２によって実行される３次元計測プログラムのうちのＳ４０６の詳細を計測基準線ピッチ決定処理ルーチンとして概念的に表すフローチャートである。
【図１８】図１７の計測基準線ピッチ決定処理ルーチンを説明するためのグラフである。
【符号の説明】
【０１８７】
１０  ３次元計測装置
１８  ３次元画像処理部
３２  コンピュータ
【図１】
2006226815.tif 000003
【図２】
2006226815.tif 000004
【図３】
2006226815.tif 000005
【図４】
2006226815.tif 000006
【図５】
2006226815.tif 000007
【図６】
2006226815.tif 000008
【図７】
2006226815.tif 000009
【図８】
2006226815.tif 000010
【図９】
2006226815.tif 000011
【図１０】
2006226815.tif 000012
【図１１】
2006226815.tif 000013
【図１２】
2006226815.tif 000014
【図１３】
2006226815.tif 000015
【図１４】
2006226815.tif 000016
【図１５】
2006226815.tif 000017
【図１６】
2006226815.tif 000018
【図１７】
2006226815.tif 000019
【図１８】
2006226815.tif 000020