(57)【要約】【課題】光源からの入射光を複数のパターン光に選択的に変換し、それら複数のパターン光を順次、物体に投影することにより、その物体を３次元的に入力する装置において、それら複数のパターン光を順次、物体に投影する技術を改善する。【解決手段】複数のパターン光を順次、物体に投影するために、シート状を成して長さ方向に延びるマスク２００であって複数のフレームが並んだものを長さ方向に送ることにより、複数のフレームを選択的に前記入射光の照射領域２２８に位置決めする。マスクは、各フレームごとに、マスクを貫通する貫通穴を、各フレームに対応するパターン光を生成するために備えている。マスクは、それの長さ方向と厚さ方向との双方に平行な平面内において屈曲可能である。マスクのうち照射領域２２８に位置させられる部分から外れた部分は、屈曲装置２２０，２２６により、少なくとも一箇所において屈曲させられる。【選択図】図７
2006266957.tif 000002
【特許請求の範囲】
【請求項１】
物体の３次元形状を入力する３次元入力装置であって、
光源からの入射光を複数種類のパターン光に選択的に変換することにより、それら複数種類のパターン光を順次前記物体に投影する投影部と、
その投影された各パターン光に関連付けて前記物体を撮像する撮像部と、
その撮像部による撮像結果を処理することにより、前記物体の３次元形状を入力する処理部と
を含み、
前記投影部は、シート状を成して長さ方向に延びるマスクを含み、
そのマスクは、前記複数種類のパターン光にそれぞれ対応する複数のフレームが前記長さ方向に並んで割り当てられており、それらフレームが選択的に前記入射光の照射領域に位置させられ、
そのマスクは、前記各フレームごとに、前記マスクをそれの厚さ方向に貫通する貫通穴を、各フレームに対応するパターン光の形状に対応する形状を有する状態で備えており、
そのマスクは、前記長さ方向と前記厚さ方向との双方に平行な平面内において屈曲可能であり、
前記投影部は、さらに、
前記マスクを前記長さ方向に送る送り装置と、
前記マスクのうち前記照射領域に位置させられる部分から前記長さ方向に外れた部分を少なくとも一箇所において屈曲させる屈曲装置と
を含む３次元入力装置。
【請求項２】
前記屈曲装置は、前記マスクのうち前記長さ方向における両端部のうちの少なくとも一方を巻き取って収容する収容装置である請求項１に記載の３次元入力装置。
【請求項３】
前記収容装置は、前記マスクを巻き付けるローラを含む請求項２に記載の３次元入力装置。
【請求項４】
さらに、前記撮像部が前記物体を撮像する撮像期間を少なくとも含む期間において、前記マスクのうち前記照射領域に位置させられる部分にテンションを前記長さ方向に付与するテンション付与装置を含む請求項１ないし３のいずれかに記載の３次元入力装置。
【請求項５】
前記マスクは、前記送り装置によって送られるためにその送り装置と機械的に係合するマスク側係合部を前記長さ方向に並んで複数個含み、
前記送り装置は、それら複数個のマスク側係合部に離脱可能に機械的に係合する送り装置側係合部を少なくとも１個含む請求項１ないし４のいずれかに記載の３次元入力装置。
【請求項６】
前記マスクは、そのマスクの前記送り装置による送り位置を測定するために検出される第１被検出部を前記長さ方向に並んで複数個、前記マスクと一体的に移動可能に含み、
当該３次元入力装置は、さらに、
前記複数個の第１被検出部を選択的に検出する第１センサを含む請求項１ないし５のいずれかに記載の３次元入力装置。
【請求項７】
前記マスクは、前記各フレームを識別するために検出される第２被検出部を含み、
当該３次元入力装置は、さらに、
前記第２被検出部を検出する第２センサを含む請求項１ないし６のいずれかに記載の３次元入力装置。
【請求項８】
前記投影部は、さらに、前記マスクの連続的送りによって前記複数のフレームが順次前記照射領域に位置させられるように前記送り装置を制御するコントローラを含む請求項１ないし７のいずれかに記載の３次元入力装置。
【請求項９】
前記投影部は、さらに、前記マスクの間欠的送りによって前記複数のフレームが順次前記照射領域に位置させられるように前記送り装置を制御するコントローラを含む請求項１ないし７のいずれかに記載の３次元入力装置。
【請求項１０】
前記マスクは、金属を主体とする材料によって構成される請求項１ないし９のいずれかに記載の３次元入力装置。
【請求項１１】
前記貫通穴は、前記長さ方向に平行に延びる長穴である請求項１ないし１０のいずれかに記載の３次元入力装置。
【請求項１２】
当該３次元入力装置は、ハンドヘルドタイプである請求項１ないし１１のいずれかに記載の３次元入力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光源からの入射光を複数種類のパターン光に選択的に変換し、それら複数種類のパターン光を順次、物体に投影することにより、その物体を３次元的に入力する技術に関するものであり、特に、それら複数種類のパターン光を順次、物体に投影する技術に関するものである。
【背景技術】
【０００２】
物体を３次元的に入力する技術が既に知られている。この技術の一例によれば、物体が撮像され、その撮像結果に基づき、その物体の３次元形状と表面色とのうちの少なくとも３次元形状が演算によって計測される。
【０００３】
この種の技術を実施するための３次元入力装置は、一般に、（ａ）光源からの入射光を複数種類のパターン光に選択的に変換することにより、それら複数種類のパターン光を順次前記物体に投影する投影部と、（ｂ）その投影された各パターン光に関連付けて前記物体を撮像する撮像部と、（ｃ）その撮像部による撮像結果を処理することにより、前記物体の３次元形状を入力する処理部とを含むように構成される。
【０００４】
この種の３次元入力装置の一従来例が特許文献１に記載されている。この従来例においては、前記投影部が、長さ方向に延びるマスクを含んでいる。そのマスクは、前記複数種類のパターン光にそれぞれ対応する複数のフレームが前記長さ方向に並んで割り当てられており、それらフレームが選択的に、前記光源からの入射光の照射領域に位置させられる。
【特許文献１】特開２００３−４２７３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
この３次元入力装置には、他の種々の機器と同様に、より小型であることが要請される。特に、この種の３次元入力装置がハンドヘルドタイプである場合には、ユーザによる使い勝手を向上させるべく、３次元入力装置の小型化および軽量化が強く要請される。
【０００６】
一方、この３次元入力装置における投影部が、マスクをそれの長さ方向に移動させて複数のフレームを順次、割り出し、それにより、複数種類のパターン光を選択的に生成する形式を採用する場合には、そのマスクの全体を収容するためのスペースがこの３次元入力装置に必要となる。その結果、その収容スペース確保のためにこの３次元入力装置が大型化する可能性がある。
【０００７】
これに対し、特許文献１は、投影部が上述の形式を採用することに起因して３次元入力装置が大型化する可能性を指摘しておらず、もちろん、その可能性を解消ないしは軽減する技術を開示してはいない。
【０００８】
以上説明した事情を背景として、本発明は、光源からの入射光を複数種類のパターン光に選択的に変換し、それら複数種類のパターン光を順次、物体に投影することにより、その物体を３次元的に入力する技術において、それら複数種類のパターン光を順次、物体に投影する技術を改善することを課題としてなされたものである。
【課題を解決するための手段】
【０００９】
本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。
【００１０】
さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。
【００１１】
（１）  物体の３次元形状を入力する３次元入力装置であって、
光源からの入射光を複数種類のパターン光に選択的に変換することにより、それら複数種類のパターン光を順次前記物体に投影する投影部と、
その投影された各パターン光に関連付けて前記物体を撮像する撮像部と、
その撮像部による撮像結果を処理することにより、前記物体の３次元形状を入力する処理部と
を含み、
前記投影部は、シート状を成して長さ方向に延びるマスクを含み、
そのマスクは、前記複数種類のパターン光にそれぞれ対応する複数のフレームが前記長さ方向に並んで割り当てられており、それらフレームが選択的に前記入射光の照射領域に位置させられ、
そのマスクは、前記各フレームごとに、前記マスクをそれの厚さ方向に貫通する貫通穴を、各フレームに対応するパターン光の形状に対応する形状を有する状態で備えており、
そのマスクは、前記長さ方向と前記厚さ方向との双方に平行な平面内において屈曲可能であり、
前記投影部は、さらに、
前記マスクを前記長さ方向に送る送り装置と、
前記マスクのうち前記照射領域に位置させられる部分から前記長さ方向に外れた部分を少なくとも一箇所において屈曲させる屈曲装置と
を含む３次元入力装置。
【００１２】
この３次元入力装置においては、シート状を成して長さ方向に延びるマスクを用いることにより、複数種類のパターン光が選択的に物体に投影される。そのマスクは、そのマスクの長さ方向と厚さ方向との双方に平行な平面内において屈曲可能とされている。そして、この３次元入力装置は、マスクをそれの長さ方向に送る送り装置と、マスクのうち前記照射領域に位置させられる部分からマスクの長さ方向に外れた部分を少なくとも一箇所において屈曲させる屈曲装置とを含むように構成されている。
【００１３】
したがって、この３次元入力装置は、複数のフレームが平面的かつ直線的に並んだマスクの全体を収容することが必要である場合に、そのマスクをそれの長さ方向における少なくとも一箇所において屈曲させてこの３次元入力装置に収容することが可能となる。
【００１４】
よって、この３次元入力装置によれば、そのマスクの全体が真っ直ぐに延びる姿勢でそのマスクをこの３次元入力装置に収容しなければならない場合とは異なり、そのマスクを真っ直ぐに展開した場合の全体長さをこの３次元入力装置において確保することが不可欠ではなくなる。
【００１５】
その結果、この３次元入力装置によれば、複数のフレームが平面的にかつ直線的に並んだマスクを使用することに起因するこの３次元入力装置の大型化を抑制することが容易となる。
【００１６】
さらに、本項に係る３次元入力装置においては、マスクをそれの厚さ方向に透過する光のパターンに応じて、物体に照射されるパターン光が生成され、マスクにおける光の透過は、そのマスクをそれの厚さ方向に貫通する貫通穴（空気開口）、すなわち、マスクを物理的に通過する貫通穴によって実現される。
【００１７】
これに代えて、マスクにおける光の透過を、マスクを物理的には通過しないが光学的には通過する透明体によって実現することが可能である。しかし、その透明体を使用する場合には、貫通穴を使用する場合に比較し、そこを通過する光の透過率が低下し、その損失量が増加し易い。
【００１８】
これに対し、本項に係る３次元入力装置においては、マスクにおける光の透過が貫通穴（空気開口）によって実現されるため、そこを通過する光の損失が問題にならずに済む。よって、この３次元入力装置によれば、光源からの入射光をより有効にパターン光生成に利用することが可能となる。
【００１９】
（２）  前記屈曲装置は、前記マスクのうち前記長さ方向における両端部のうちの少なくとも一方を巻き取って収容する収容装置である（１）項に記載の３次元入力装置。
【００２０】
この３次元入力装置においては、収容装置により、マスクのうちそれの長さ方向における両端部のうちの少なくとも一方が巻き取られて収容される。したがって、この３次元入力装置によれば、そのマスクの全体を収容するために必要な寸法が、そのマスクを真っ直ぐに展開した場合の全体長さより短い寸法で足りることとなり、その結果、この３次元入力装置の小型化が容易となる。
【００２１】
（３）  前記収容装置は、前記マスクを巻き付けるローラを含む（２）項に記載の３次元入力装置。
【００２２】
この３次元入力装置においては、マスクのうちそれの長さ方向における両端部のうちの少なくとも一方がローラに巻き付けられて収容される。したがって、この３次元入力装置によれば、例えば、マスクを、できる限り小さなスペース内において、そのマスクの長さ方向の全体にわたってマスクの曲率ができる限り均一であるように収容することが容易となる。その結果、マスクの巻き癖を抑制しつつ、収容スペースを削減することが容易となる。
【００２３】
（４）  さらに、前記撮像部が前記物体を撮像する撮像期間を少なくとも含む期間において、前記マスクのうち前記照射領域に位置させられる部分にテンションを前記長さ方向に付与するテンション付与装置を含む（１）ないし（３）項のいずれかに記載の３次元入力装置。
【００２４】
この３次元入力装置においては、マスクのうち、前記光源からの入射光の照射領域に位置する部分に、それの長さ方向にテンションが作用させられる。一方、マスクのうちその照射領域に位置する部分の平面度が高いほど、そのマスクを通過する光が物体に投影されることによって形成されるパターン光の焦点面の平面度も高い。
【００２５】
したがって、この３次元入力装置によれば、マスクが屈曲性を有するにもかかわらず、マスクのうち、前記光源からの入射光の照射領域に位置する部分の平面度が向上する。その結果、マスクを通過する光が物体に投影されることによって形成されるパターン光の焦点面の平面度が向上し、ひいては、この３次元入力装置が物体を３次元的に入力する精度も向上する。
【００２６】
（５）  前記マスクは、前記送り装置によって送られるためにその送り装置と機械的に係合するマスク側係合部を前記長さ方向に並んで複数個含み、
前記送り装置は、それら複数個のマスク側係合部に離脱可能に機械的に係合する送り装置側係合部を少なくとも１個含む（１）ないし（４）項のいずれかに記載の３次元入力装置。
【００２７】
この３次元入力装置によれば、マスクと送り装置との機械的係合を利用してマスクが送られるため、送り装置によるマスクの送り位置の精度を向上させることが容易となる。
【００２８】
（６）  前記マスクは、そのマスクの前記送り装置による送り位置を測定するために検出される第１被検出部を前記長さ方向に並んで複数個、前記マスクと一体的に移動可能に含み、
当該３次元入力装置は、さらに、
前記複数個の第１被検出部を選択的に検出する第１センサを含む（１）ないし（５）項のいずれかに記載の３次元入力装置。
【００２９】
この３次元入力装置によれば、マスクの送り位置が検出されるため、マスクの送り位置を制御する精度を向上させることが容易となる。また、マスクの送り位置の検出結果を利用すれば、例えば、マスクにおける複数のフレームのうちのいずれかが前記照射領域に位置しているか否かを判定することが可能となる。
【００３０】
（７）  前記マスクは、前記各フレームを識別するために検出される第２被検出部を含み、
当該３次元入力装置は、さらに、
前記第２被検出部を検出する第２センサを含む（１）ないし（６）項のいずれかに記載の３次元入力装置。
【００３１】
この３次元入力装置によれば、各フレームの識別が可能となり、例えば、現に注目しているフレームの番号等、識別情報を特定することが可能となる。したがって、例えば、前記（６）に記載の技術と組み合わせて実施する場合に、いずれかのフレームが前記照射領域に位置することを前記第１センサによって検出し、かつ、その検出されたフレームの種別を前記第２センサによって特定することが可能となる。
【００３２】
よって、この３次元入力装置によれば、例えば、目標のパターン光を生成するためのフレームとは異なるフレームが前記照射領域に位置決めされ、そのため、目標のパターン光とは異なるパターン光が物体に投影されてしまう事態を回避することが容易となる。
【００３３】
（８）  前記投影部は、さらに、前記マスクの連続的送りによって前記複数のフレームが順次前記照射領域に位置させられるように前記送り装置を制御するコントローラを含む（１）ないし（７）項のいずれかに記載の３次元入力装置。
【００３４】
この３次元入力装置によれば、例えば、マスクの高速送りが容易となり、それにより、例えば、前記撮像部が物体を撮像するのに必要な撮像時間を短縮することが容易となる。
【００３５】
（９）  前記投影部は、さらに、前記マスクの間欠的送りによって前記複数のフレームが順次前記照射領域に位置させられるように前記送り装置を制御するコントローラを含む（１）ないし（７）項のいずれかに記載の３次元入力装置。
【００３６】
この３次元入力装置によれば、例えば、マスクを各フレームごとに確実に前記照射領域に位置決めすることが容易となり、それにより、例えば、この３次元入力装置が物体を３次元的に入力する３次元入力精度を向上させることが容易となる。
【００３７】
（１０）  前記マスクは、金属を主体とする材料によって構成される（１）ないし（９）項のいずれかに記載の３次元入力装置。
【００３８】
この３次元入力装置によれば、マスクが金属を主体とする材料によって構成されるため、同じマスクが合成樹脂を主体とする材料によって構成される場合に比較して、熱および外力によるマスクの変形が少なくて済む。その結果、マスクの変形に起因した投影パターン光の形状精度の低下ひいては３次元入力装置の３次元入力精度の低下を抑制することが容易となる。
【００３９】
この３次元入力装置によれば、マスクが金属を主体とする材料によって構成されるため、同じマスクを合成樹脂を主体とする材料によって構成される場合に比較して、前記光源からマスクに入射する光がそのマスクによって吸収される量が少なくて済む。その結果、光源からの光を有効にパターン光生成に利用することが容易となる。
【００４０】
（１１）  前記貫通穴は、前記長さ方向に平行に延びる長穴である（１）ないし（１０）項のいずれかに記載の３次元入力装置。
【００４１】
マスクをそれの長さ方向に送りつつそのマスクを通過する光によってパターン光を生成する際に重要なことの一つは、物体を撮像するためにその物体に投影されるパターン光の、それの光軸に直角な方向における位置が正規であることである。そのためには、そのパターン光を生成するためのフレームが正確に前記照射領域に位置決めされることが必要である。
【００４２】
一方、各フレームにおける開口パターン（前記貫通穴によってマスク上に各フレームごとに形成されるパターン）がストライプを成す場合には、各フレームの位置決め精度を、ストライプの長さ方向において確保することより、ストライプの幅方向において確保することが、投影パターン光の形状精度を確保するためにより重要である。
【００４３】
これに対し、本項に係る３次元入力装置においては、各フレームにおいて開口パターンを形成する貫通穴が、マスクの長さ方向に平行に延びる長穴とされている。したがって、貫通穴の長さ方向がマスクの送り方向に一致させられている。よって、マスクの送り中、貫通穴は、それの長さ方向に移動するのみで、それの幅方向には移動せずに済む。
【００４４】
その結果、この３次元入力装置によれば、マスクの送り中、そのマスクの幅方向位置が維持される限り、各貫通穴の、それの幅方向における位置が維持される。よって、マスクの送り位置に誤差があっても、その影響が、貫通穴の幅方向位置ひいては投影パターン光の形状精度に及ばずに済む。したがって、この３次元入力装置によれば、マスクの送り位置誤差にもかかわらず、３次元入力精度を確保することが容易となる。
【００４５】
（１２）  当該３次元入力装置は、ハンドヘルドタイプである（１）ないし（１１）項のいずれかに記載の３次元入力装置。
【発明を実施するための最良の形態】
【００４６】
以下、本発明のさらに具体的な実施の形態のうちのいくつかを図面に基づいて詳細に説明する。
【００４７】
図１には、本発明の第１実施形態に従う３次元入力装置１０の外観が斜視図で示されている。この３次元入力装置１０は、ストライプ状のパターン光の被写体Ｓ（物体）への投影と、被写体Ｓの撮像と、その撮像結果に基づき、被写体Ｓの３次元情報および表面色情報をコンピュータによって取得する信号処理とを行うように設計されている。
【００４８】
図１に示すように、この３次元入力装置１０は、ハンドヘルドタイプであり、ユーザは手で持って移動させることが可能である。また、この３次元入力装置１０は、その手振れや、被写体Ｓの移動にもかかわらず、被写体Ｓの３次元形状情報と表面色情報とを画素の位置に関して互いに正確にマッチングするように被写体Ｓを撮像するように設計されている。そのため、図１には、動く被写体Ｓの一例として動物の亀が示されている。
【００４９】
それら被写体Ｓへの投影と、被写体Ｓの撮像と、被写体Ｓの３次元情報および表面色情報の取得とを行うために、この３次元入力装置１０は、図２に示すように、投影部１２と、撮像部１４と、処理部１６とをそれぞれ含むように構成されている。
【００５０】
この３次元入力装置１０は、複数種類のモードのうちユーザによって選択されたものに従って作動する。それらモードは、ＳＬＯＷモードと、ＦＡＳＴモードと、オフモードとを含んでいる。ＳＬＯＷモードは、被写体Ｓを低速で高精度で撮像する低速撮像モードであり、撮像精度優先モードである。ＦＡＳＴモードは、被写体Ｓを高速で低精度で撮像する高速撮像モードであり、撮像時間優先モードである。オフモードは、この３次元入力装置１０の動作を停止させるモードである。
【００５１】
撮像部１４は、被写体Ｓを撮像し、その撮像結果から、その被写体Ｓを表す全体画像を構成する複数個の画素のいずれかを間引いて形成される画素間引き画像と、いずれの画素も間引かずに形成される画素非間引き画像とを選択的に取り出すことが可能であるように構成されている。さらに、撮像部１４は、被写体Ｓの撮像後、その撮像結果から画素間引き画像を、画素非間引き画像を取り出すのに必要な時間より短い時間で取り出すように構成されている。
【００５２】
ＣＣＤを用いた撮像の分野においては、被写体Ｓの撮像結果から画素間引き画像を取り出すために、加算方式と選択方式とがすでに知られている。
【００５３】
加算方式によれば、被写体Ｓを表す全体画像を構成する複数個の画素がグループ分けされた複数個の画素グループの各々に属する複数個の対象画素の照度検出値が各画素グループごとに加算され、その加算された照度を用いて、各画素グループに属する複数個の対象画素の照度検出値が均等に分散される。
【００５４】
これに対し、選択方式によれば、それら複数個の画素グループの各々に属する複数個の対象画素から、それら対象画素を代表する代表画素が各画素グループごとに選択され、その選択された代表画素の照度検出値を用いて、各画素グループに属する複数個の対象画素の照度検出値が均等に分散される。
【００５５】
本実施形態においては、撮像部１４は、それら加算方式と選択方式とのうち予め選択されたものに従い、被写体Ｓの撮像結果から画素間引き画像を取り出すように設計されている。
【００５６】
被写体Ｓの撮像結果から画素間引き画像を取り出す間引き画像処理モードは、被写体Ｓを低速で高精度で撮像する低速撮像モードに適している。一方、被写体Ｓの撮像結果から画素非間引き画像を取り出す非間引き画像処理モードは、被写体Ｓを高速で低精度で撮像する高速撮像モードに適している。
【００５７】
したがって、本実施形態においては、ユーザによってＦＡＳＴモードが選択されると、間引き画像処理モードが設定される一方、ユーザによってＳＬＯＷモードが選択されると、非間引き画像処理モードが設定される。
【００５８】
図１に示すように、この３次元入力装置１０は、略箱状を成すケーシング２０を備えている。
【００５９】
ケーシング２０内においては、図２に示すように、投影部１２および撮像部１４がそれぞれ、破線で示すサブケーシング内に収容された状態で配置されている。図１に示すように、このケーシング２０は、鏡筒２４と、フラッシュ２６とを、それぞれが部分的にケーシング２０の正面において露出する姿勢で備えている。このケーシング２０は、さらに、撮像部１４の一部である撮像光学系３０を、それのレンズの一部がケーシング２０の正面において露出する姿勢で備えている。その撮像光学系３０は、それの露出部分において、被写体Ｓを表す画像光を受光する。
【００６０】
鏡筒２４は、図１に示すように、ケーシング２０の正面から突出しており、その内部において、図２に示すように、投影部１２の一部である投影光学系３２を収容している。この鏡筒２４は投影光学系３２を、焦点調節のために全体的に移動可能である状態で保持し、さらに、この鏡筒２４は、投影光学系３２を損傷から保護している。鏡筒２４の露出端面から、投影部１２の一部である投影光学系３２のレンズの一部が露出している。投影光学系３２は、それの露出部分において、被写体Ｓに向かってパターン光を投影する。
【００６１】
フラッシュ２６は、不足光量を補充するために発光する光源であり、例えば、キセノンガスが充填された放電管を用いて構成されている。したがって、このフラッシュ２６は、ケーシング２０に内蔵されているコンデンサ（図示しない）の放電により繰り返し使用することができる。
【００６２】
ケーシング２０は、さらに、それの上面において、レリーズボタン４０と、モード切替スイッチ４２と、モニタＬＣＤ４４とを備えている。
【００６３】
レリーズボタン４０は、３次元入力装置１０を作動させるためにユーザによって操作される。このレリーズボタン４０は、ユーザの操作状態（押下状態）が「半押し状態」である場合と「全押し状態」である場合とで異なる指令を発令できる２段階の押しボタン式のスイッチによって構成されている。レリーズボタン４０の操作状態は処理部１６によって監視される。処理部１６によって「半押し状態」が検出されれば、よく知られたオートフォーカス（ＡＦ）および自動露出（ＡＦ）の機能が起動し、ピント、絞りおよびシャッタスピードが自動的に調節される。これに対し、処理部１６によって「全押し状態」が検出されれば、撮像等が行われる。
【００６４】
モード切替スイッチ４２は、３次元入力装置１０の作動モードを、前述のＳＬＯＷモード、ＦＡＳＴモードおよびオフモードを含む複数種類のモードのいずれかとして設定するためにユーザによって操作される。このモード切替スイッチ４２の操作状態は処理部１６によって監視されており、モード切替スイッチ４２の操作状態が処理部１６によって検出されると、その検出された操作状態に対応するモードでの処理が３次元入力装置１０において行われる。
【００６５】
モニタＬＣＤ４４は、液晶ディスプレイ（Liquid Crystal Display）を用いて構成されており、処理部１６から画像信号を受けて、画像をユーザに表示する。このモニタＬＣＤ４４は、例えば、被写体Ｓの３次元形状の検出結果を表す画像（立体画像）等を表示する。
【００６６】
図１に示すように、ケーシング２０は、さらに、ＲＦ（無線）インタフェイスとしてのアンテナ５０を備えている。
【００６７】
アンテナ５０は、図２に示すように、ＲＦドライバ５２に接続されている。このアンテナ５０は、上述の立体画像を表すデータ等を、ＲＦドライバ５２を介して、図示しない外部インタフェイスに無線によって送信する。
【００６８】
図２には、ケーシング２０の内部構成が概念的に表されている。ケーシング２０は、前述のように、投影部１２と、撮像部１４と、処理部１６とを主に内蔵している。
【００６９】
投影部１２は、被写体Ｓにパターン光を投影するためのユニットである。この投影部１２は、図２に示すように、基板６０と、複数個のＬＥＤ６２（以下、それらのアレイを「ＬＥＤアレイ６２Ａ」という。）と、光源レンズ６４と、モータ（例えば、パルスモータ）６５を駆動源とする投影機構６６と、投影光学系３２とを、投影方向に沿って直列に備えている。
【００７０】
図３および図４には、この投影部１２のハードウエア構成のうち、基板６０と、ＬＥＤアレイ６２Ａと、光源レンズ６４と、投影光学系３２とが詳細に示されている。図５には、この投影部１２を含む３次元入力装置１０全体のソフトウエア構成および電気的接続関係が詳細に示されている。図１３ないし図２０には、投影部１２のハードウエア構成のうち、投影機構６６が詳細に示されている。
【００７１】
撮像部１４は、被写体Ｓを撮像するためのユニットである。この撮像部１４は、図２に示すように、撮像光学系３０と、ＣＣＤ（Charge Coupled Device）７０とを、画像光の入射方向に沿って直列に備えている。このＣＣＤ７０は、インターライントランスファー方式でプログレッシブ走査を行うように構成されている。
【００７２】
撮像光学系３０は、図２に示すように、複数枚のレンズを用いて構成されている。この撮像光学系３０は、よく知られたオートフォーカス機能により、焦点距離および絞りを自動調整して外部からの光をＣＣＤ７０上に結像する。
【００７３】
ＣＣＤ７０は、フォトダイオード素子などの光電変換素子をマトリクス状に配列して構成されている。このＣＣＤ７０は、撮像光学系３０を介してこのＣＣＤ７０の表面に結像される画像の光の色および強さに応じた信号を各画素ごとに生成する。その生成された信号は、デジタルデータに変換されて処理部１６に出力される。
【００７４】
図５にブロック図で表すように、処理部１６は、フラッシュ２６、レリーズボタン４０およびモード切替スイッチ４２にそれぞれ電気的に接続されている。処理部１６は、さらに、モニタＬＣＤ４４にはモニタＬＣＤドライバ７２を介して、アンテナ５０にはＲＦドライバ５２を介して、バッテリ７４には電源インタフェイス７６を介してそれぞれ電気的に接続されている。
【００７５】
処理部１６は、さらに、外部メモリ７８およびキャッシュメモリ８０にそれぞれ電気的に接続されている。処理部１６は、さらに、ＬＥＤアレイ６２Ａには光源ドライバ８４を介して、投影機構６６のモータ６５にはモータドライバ８６を介して、ＣＣＤ７０にはＣＣＤインタフェイス８８を介してそれぞれ電気的に接続されている。それらフラッシュ２６等は、処理部１６によって制御される。
【００７６】
外部メモリ７８は、着脱可能なフラッシュＲＯＭであり、立体画像モードにおいて撮像された撮像画像や３次元情報を記憶することが可能である。外部メモリ７８を構成するために、例えば、ＳＤカード、コンパクトフラッシュ（登録商標）カード等を使用することができる。
【００７７】
キャッシュメモリ８０は、データの読み書きを高速で行い得る記憶装置である。キャッシュメモリ８０は、例えば、デジカメモードにおいて撮像された撮像画像を高速でキャッシュメモリ８０に転送し、処理部１６で画像処理を行ってから外部メモリ７８に格納することを可能にするために使用される。キャッシュメモリ８０を構成するために、例えば、ＳＤＲＡＭ、ＤＤＲＲＡＭ等を使用することができる。
【００７８】
電源インタフェイス７６、光源ドライバ８４、モータドライバ８６およびＣＣＤインタフェイス８８はそれぞれ、バッテリ７４、ＬＥＤアレイ６２Ａ、投影機構６６のモータ６５およびＣＣＤ７０を制御する各種のＩＣ(Integrated Circuit）によって構成されている。
【００７９】
ここで、図３および図４を参照することにより、投影部１２のハードウエア構成のうち、基板６０と、ＬＥＤアレイ６２Ａと、光源レンズ６４と、投影光学系３２とを詳細に説明する。図３（ａ）は投影部１２の拡大図であり、図３（ｂ）は光源レンズ６４の正面図である。図４は、ＬＥＤアレイ６２Ａの配列を説明するための図である。
【００８０】
前述のように、投影部１２は、図３（ａ）に示すように、基板６０と、ＬＥＤアレイ６２Ａと、光源レンズ６４と、投影機構６６と、投影光学系３２とをパターン光の投影方向に沿って直列に備えている。
【００８１】
基板６０は、それにＬＥＤアレイ６２Ａが装着されることにより、その装着されたＬＥＤアレイ６２Ａとの間において電気的な配線を行う。基板６０は、例えば、アルミニウム製基板に絶縁性合成樹脂を塗布してから無電解メッキにてパターンを形成したものや、ガラスエポキシ基材をコアとする単層または多層構造の基板を使用して製作することができる。
【００８２】
ＬＥＤアレイ６２Ａは、投影機構６６に向けて放射状の光を発光する光源である。このＬＥＤアレイ６２Ａにおいては、基板６０上に複数個のＬＥＤ（発光ダイオード）６２が、図３（ｂ）に示すように、千鳥状配列のもとに、銀ペーストを介して接着されている。それら基板６０と複数個のＬＥＤ６２とは、ボンディングワイヤを介して電気的に結線されている。複数個のＬＥＤ６２を千鳥状に配列することによる効果は、後に図４を参照して詳細に説明する。
【００８３】
このように、本実施形態においては、投影部１２の光源として複数個のＬＥＤ６２が使用されているため、光源として白熱電球、ハロゲンランプ等が使用される場合に比べて、電気が光に変換される電気光変換効率の向上や、赤外線や紫外線の発生の抑制を容易に行い得る。よって、３次元入力装置１０の節電、長寿命化、発熱抑制等を容易に図り得る。
【００８４】
このように、ＬＥＤ６２はハロゲンランプ等に比べて熱線の発生率が極めて低いため、光源レンズ６４や投影光学系３２に合成樹脂製のレンズを採用することができる。よって、ガラス製のレンズを採用する場合に比べて、光源レンズ６４および投影光学系３２を安価で軽量に構成することができる。
【００８５】
さらに、本実施形態においては、ＬＥＤアレイ６２Ａを構成する各ＬＥＤ６２が、互いに同じ色の光を発光し、具体的には、材料にＡｌ、Ｉｎ、ＧａおよびＰの４元素を用いたアンバー色を発光するように構成されている。したがって、複数色の光を発光させる場合に考慮しなければならない問題である色収差の補正を考慮する必要がなく、よって、色収差を補正するために投影光学系３２に色消しレンズを採用する必要もない。その結果、投影光学系３２の設計の自由度を向上させることができる。
【００８６】
さらに、本実施形態においては、ＬＥＤ６２として、電気光変換効率が約８０［ｌｕｍｅｎ／Ｗ］というように他の発光色に比べて高い４元素材料のアンバー色ＬＥＤが採用されるため、３次元入力装置１０の高輝度化、節電および長寿命化を容易に図り得る。
【００８７】
本実施形態においては、具体的には、ＬＥＤアレイ６２Ａが５９個のＬＥＤ６２によって構成され、各ＬＥＤ６２は５０［ｍＷ］（２０［ｍＡ］，２．５［Ｖ］）で駆動され、結局、５９個のＬＥＤ６２の全体は略３［Ｗ］の消費電力で駆動される。
【００８８】
さらに、本実施形態においては、各ＬＥＤ６２から発光される光が光源レンズ６４および投影機構６６を通過して投影光学系３２から出射する場合の光束値としての明るさが、全面照射の場合であっても２５ＡＮＳＩルーメン程度に設定されている。
【００８９】
本実施形態においては、３次元入力装置１０の投影部１２からの出射光の明るさがその程度に選定されるため、例えば、被写体Ｓが人や動物の顔である場合に、その被写体Ｓの３次元形状を検出するためにその被写体Ｓにパターン光を投影しても、被写体Ｓに眩しさを与えずに済む。したがって、本実施形態によれば、被写体Ｓが人や動物である場合に、その被写体Ｓが目をつぶらない状態でその被写体Ｓの３次元形状を検出することが容易となる。
【００９０】
図３に示すように、光源レンズ６４は、ＬＥＤアレイ６２Ａから放射状に発光される光を集光するレンズであり、その材質はアクリルに代表される光学樹脂である。
【００９１】
図３（ａ）に示すように、光源レンズ６４は、複数個の凸状のレンズ部９０と、それらレンズ部９０を支持するベース部９２と、エポキシ封止材９４と、複数本の位置決めピン９６とを備えている。
【００９２】
図３（ａ）に示すように、各レンズ部９０は、ベース部９２のうちＬＥＤアレイ６２Ａの各ＬＥＤ６２に対向する位置に、ベース部９２から投影機構６６に向かって突設されている。エポキシ封止材９４は、ベース部９２のうちＬＥＤアレイ６２Ａが気密に収容されるべき凹部９８内に充填され、それにより、その凹部９８内においてＬＥＤアレイ６２Ａが封止される。このエポキシ封止材９４は、ＬＥＤアレイ６２Ａの封止機能を有するのであり、さらに、基板６０と光源レンズ６４とを互いに接着する機能も有する。
【００９３】
図３（ａ）に示すように、複数本の位置決めピン９６は、光源レンズ６４と基板６０とを相対的に位置決めするために、光源レンズ６４に、その光源レンズ６４から基板６０に向かって突設されている。図３（ｂ）に示すように、複数本の位置決めピン９６のうちの一部は、基板６０に穿設された長穴１００に挿入される一方、残りは、基板６０に穿設された真円穴１０２に挿入され、それにより、基板６０に光源レンズ６４ががたなく正規の位置に固定される。
【００９４】
このように、本実施形態においては、光源レンズ６４と、ＬＥＤアレイ６２Ａと、基板６０とが、投影方向に空間的に詰めて互いに積層されているため、それら光源レンズ６４等の組立体のコンパクト化および省スペース化が容易となる。
【００９５】
さらに、本実施形態においては、基板６０が、ＬＥＤアレイ６２Ａを保持するという基本的な機能の他に、光源レンズ６４を保持するという付随的な機能をも果たしている。したがって、本実施形態によれば、光源レンズ６４を専ら保持する部品の追加を省略でき、その結果、３次元入力装置１０の部品点数の削減が容易となる。
【００９６】
さらに、本実施形態においては、各レンズ部９０が、図３（ａ）に示すように、ＬＥＤアレイ６２Ａの各ＬＥＤ６２に１対１の関係で正対するように配置されている。よって、各ＬＥＤ６２から発光される放射状の光は、各ＬＥＤ６２に対向する各レンズ部１８によって効率良く集光され、図３（ａ）に示すように、指向性の高い放射光として投影機構６６の入射面１０６（図４参照）に照射される。
【００９７】
このように指向性を高めたのは、投影機構６６の入射面１０６に略垂直に光が入射すれば、その投影機構６６のの入射面１０６内における透過率むらが抑制されて画質が向上し得るという理由からである。
【００９８】
投影光学系３２は、投影機構６６を通過した光を被写体Ｓに向かって投影するための複数枚のレンズである。それらレンズは、ガラス製レンズと合成樹脂製レンズとの組合せから成るテレセントリックレンズによって構成されている。テレセントリックとは、投影光学系３２を通過する主光線は、入射側の空間では光軸に平行になり、射出瞳の位置は無限になる構成をいう。
【００９９】
投影光学系３２は、上述のようにテレセントリック特性を持ち、その入射ＮＡが０．１程度であるため、垂直±５°以内の光のみが投影光学系３２の内部の絞りを通過できるように、投影光学系３２の光路が規制されている。
【０１００】
したがって、本実施形態においては、投影光学系３２のテレセントリック性により、投影機構６６を垂直±５°で通過する光のみを投影光学系３２に投影し得る構成と相俟って、画質の向上を容易に図り得る。
【０１０１】
よって、本実施形態においては、画質向上のために、各ＬＥＤ６２からの出射光が投影機構６６の入射面１０６に略垂直に入射するように各ＬＥＤ６２からの光の出射角度を揃え、かつ、各ＬＥＤ６２からの出射光のほとんどが投影光学系３２に垂直±５°の入射角度範囲内で入射させることが重要である。
【０１０２】
ここで、図４を参照することにより、ＬＥＤアレイ６２Ａの配列をさらに詳しく説明する。図４（ａ）は、光源レンズ６４から出射する光の３次元形状を示す側面図である。図４（ｂ）は、１個のＬＥＤ６２から投影機構６６の入射面１０６に入射した光の照度分布を示すグラフである。図４（ｃ）は、ＬＥＤアレイ６２Ａの配列を部分的に拡大して示す正面図である。図４（ｄ）は、複数個のＬＥＤ６２から投影機構６６の入射面１０６に入射した複数の光の合成照度分布を示すグラフである。
【０１０３】
図４（ａ）に示すように、光源レンズ６４からの出射光が、半値拡がり半角θが略５°である状態で、図４（ｂ）に示すような照度分布を有する光として、投影機構６６の入射面１０６に到達するように光源レンズ６４が設計されている。
【０１０４】
また、図４（ｃ）に示すように、複数個のＬＥＤ６２は、基板上１６に千鳥状に配列されている。具体的には、複数個のＬＥＤ６２がピッチｄで横方向に直列に並んで成るＬＥＤ列が複数、ピッチｄの√３／２倍と等しいピッチで縦方向に並列に並んでいる。さらに、縦方向において互いに隣接する２つのＬＥＤ列は、ピッチｄと等しい長さで、横方向に互いにずらされている。
【０１０５】
すなわち、本実施形態においては、それらＬＥＤ６２の配列が三角格子配列とされ、いずれのＬＥＤ６２も、それに隣接する別のいずれのＬＥＤ６２からもピッチｄと等しい距離離れているのである。
【０１０６】
そして、本実施形態においては、ピッチｄの長さが、１個のＬＥＤ６２から出射した光によって投影機構６６について与えられる照度分布の半値全幅（ＦＷＨＭ（Full  Width  Half  Maximun））以下となるように、予め設定されている。
【０１０７】
よって、本実施形態においては、光源レンズ６４を通過して投影機構６６の入射面１０６に到達する光の合成照度分布が、図４（ｄ）に示すように、小さなリップルを有する略直線状のグラフで表され、その結果、投影機構６６の入射面１０６の全体に略均一に光が照射される。したがって、本実施形態によれば、投影機構６６の入射面１０６における照度むらが抑制され、その結果、パターン光が被写体Ｓに高品質で投影される。
【０１０８】
ここで、図１３ないし図２０を参照することにより、投影部１２のハードウエア構成のうち投影機構６６を詳細に説明する。
【０１０９】
この投影機構６６は、光源としてのＬＥＤアレイ６２Ａからの入射光を複数種類のパターン光に選択的に変換することにより、それら複数種類のパターン光を順次被写体Ｓに投影するために設けられている。図６には、この投影機構６６が正面図で示され、図７には、この投影機構６６が部分断面側面図で示されている。
【０１１０】
図６および図１２に示すように、この投影機構６６は、シート状を成して長さ方向に延びるマスク２００を備えており、そのマスク２００はモータ６５によってそのマスク２００の長さ方向に送られる。
【０１１１】
図８には、そのマスク２００の長さ方向における一部が拡大されて正面図で示されている。このマスク２００には、前記複数種類のパターン光にそれぞれ対応する複数のフレーム２０２がマスク２００の長さ方向に並んで割り当てられている。図６に示すように、それらフレーム２０２は、選択的に前記入射光の照射領域に位置させられる。
【０１１２】
本実施形態においては、被写体Ｓを撮像するために８種類のパターン光が順次被写体Ｓに投影される。図８には、パターン番号ＰＮが５であるパターン光を形成するためのフレーム２０２（図８において「コード５」を付して示す。）と、パターン番号ＰＮが６であるパターン光を形成するためのフレーム２０２（図８において「コード６」を付して示す。）と、パターン番号ＰＮが７であるパターン光を形成するためのフレーム２０２（図８において「コード７」を付して示す。）とが代表的に示されている。
【０１１３】
マスク２００は、各フレーム２０２ごとに、マスク２００をそれの厚さ方向に貫通する貫通穴（空気開口）２０４を、各フレーム２０２に対応するパターン光の形状に対応する形状を有する状態で備えている。図８に示すように、いずれのフレーム２０２においても、個々の貫通穴２０４が直線的に延びるスリット状を成している。複数個のフレーム２０２のうち、複数個の貫通穴２０４を有するものにおいては、それら複数個の貫通穴２０４がストライプ状を成すように配列されている。
【０１１４】
さらに、本実施形態においては、いずれのフレーム２０２においても、各貫通穴２０４がマスク２００の長さ方向に平行に延びるように配置されている。この配置を採用することによって奏される効果の一例は後に詳述する。
【０１１５】
そのマスク２００は、長さ方向と厚さ方向との双方に平行な平面内において屈曲可能である。このマスク２００は、金属製の薄いシートによって構成されている。マスク２００を構成する金属は、不透明弾性材料の一例であり、そのような材料の一例はステンレスである。このマスク２００の板厚の一例は、０．１ｍｍである。
【０１１６】
本実施形態においては、厚さ０．１ｍｍのステンレス板に対してウエットエッチングが施されることにより、そのステンレス板に複数個の貫通穴２０４がミクロン精度で形成され、それにより、マスク２００が製作されている。
【０１１７】
このマスク２００は、弾性屈曲性を有しており、後述のようにローラに巻き取られて収容されていても、そのローラから解放されれば、真っ直ぐな平面を成す原形状に復元する性質を有する。
【０１１８】
図６に示すように、投影機構６６は、マスク２００を巻き取り可能に保持しつつ送るために、ハウジング２１０を備えている。このハウジング２１０に、供給具としての供給ローラ２２０と、案内具としてのガイドローラ２２２と、送り具としての送りローラ２２４と、巻き取り具としての巻き取りローラ２２６とが、互いに平行な各軸線を有する姿勢で支持されている。それら供給ローラ２００，ガイドローラ２２２，送りローラ２２４および巻き取りローラ２２６の軸線はいずれも、マスク２００の幅方向に平行に延びている。
【０１１９】
図７に示すように、マスク２００は、それの長さ方向における両端部においてそれぞれ、供給ローラ２２０と巻き取りローラ２２６とに結合されている。マスク２００は、さらに、それら供給ローラ２２０と巻き取りローラ２２６との間において、供給ローラ２２０寄りのガイドローラ２２２と、巻き取りローラ２２６寄りの送りローラ２２４とに支持されている。
【０１２０】
３次元入力装置１０の不使用状態においては、マスク２００は、供給ローラ２２０と巻き取りローラ２２６とのうち主に供給ローラ２２０に巻き付けられており、マスク２００は、この状態で３次元入力装置１０内において収容される。すなわち、マスク２００のうちの未使用部分は、供給ローラ２２０に巻き付けられて収容されるのであり、供給ローラ２２０は、マスク２００のうちの未使用部分を屈曲状態において収容するローラなのである。
【０１２１】
被写体Ｓの撮像が開始されると、マスク２００のうちの未使用部分は、モータ６５の正回転により、供給ローラ２２０から剥がされて巻き取りローラ２２６に向かって供給される。その未使用部分が被写体Ｓの撮像に使用されると、使用済部分として、巻き取りローラ２２６に巻き取られて収容される。すなわち、巻き取りローラ２２６は、マスク２００のうちの使用済部分を屈曲状態において収容するローラなのである。
【０１２２】
被写体Ｓの撮像が終了した時点においては、マスク２００は、供給ローラ２２０と巻き取りローラ２２６とのうち主に巻き取りローラ２２６に巻き付けられ、マスク２００は、この状態で３次元入力装置１０内において収容される。その後、次回の撮像に備えて、モータ６５の逆回転により、マスク２００は、供給ローラ２２０と巻き取りローラ２２６とのうち主に供給ローラ２２０に巻き取られ、それにより、マスク２００は、供給ローラ２２０に巻き付けられた状態で、３次元入力装置１０内において収容される。
【０１２３】
図７に示すように、それらガイドローラ２２２と送りローラ２２４との間に、ＬＥＤアレイ６２Ａからの入射光がマスク２００に照射される照射位置２２８が設定されている。マスク２００のうちそれらガイドローラ２２２と送りローラ２２４とによって両端を支持される部分が、前記設定された照射位置２２８を前記入射光に直角な方向に通過する直線部２３０を形成している。
【０１２４】
図７に示すように、本実施形態においては、マスク２００のうち供給ローラ２２０とガイドローラ２２２とによって両端を支持される部分２３２（図７において直線部より左側の部分）と、送りローラ２２４と巻き取りローラ２２６とによって両端を支持される部分２３４（図７において直線部より右の部分）とがそれぞれ、直線部２３０に対して同じ側に傾斜させられている。その傾斜角度は、小さいほど、直線部２３０に対する部分２３２，２３４の弾性曲げに起因する直線部２３０の反りを軽減するために望ましい。一方、その傾斜角度は、大きいほど、マスク２００の長さ方向においてこの投影機構６６を小型化するために望ましい。
【０１２５】
図７に示すように、マスク２００は、それの長さ方向における両端部においてそれぞれ、供給ローラ２２０と巻き取りローラ２２６とに結合されている。
【０１２６】
供給ローラ２２０は、ハウジング２１０に固定されたシャフト２４０と、そのシャフト２４０を同軸に取り囲むローラ部２４２とを含むように構成されている。ローラ部２４２は、シャフト２４０に対して同軸に相対回転可能に支持されている。このローラ部２４２にマスク２００の一端部が固定され、そのローラ部２４２の回転によってそのローラ部２４２の外周面にマスク２００が巻き付けられる。ローラ部２４２の両回転方向のうち、ローラ部２４２にマスク２００が巻き付けられる回転方向が戻り回転方向であり、ローラ部２４２からマスク２００が剥がされる回転方向が送り回転方向である。
【０１２７】
ローラ部２４２には、付勢部材としてのスプリング２４６が係合させられており、それにより、ローラ部２４２は、戻り回転方向に常時付勢されている。そのスプリング２４６は、例えば、図７に示すように、ローラ部２４２とシャフト２４０との間の半径方向隙間内において、可動部材としてのローラ部２４２と静止部材としてのシャフト２４０とに係合させられるように使用される。そのスプリング２４６は、例えば、図７に示すように、シャフト２４０の外周面に巻き付けられるリーフスプリングとして構成される。そのスプリング２４６の弾性力により、マスク２００にテンションがそのマスク２００の長さ方向に作用させられる。
【０１２８】
図６および図８に示すように、マスク２００の両側縁部にはそれぞれ、マスク２００の長さ方向に並んだ複数個の送り穴２５０から成るパーフォレーション領域２５２が形成されている。ガイドローラ２２２および送りローラ２２４は、それら送り穴２５０に貫通してそれら送り穴に係合する歯２５４，２５６を備えている。本実施形態においては、図７に示すように、ガイドローラ２２２も送りローラ２２４も、複数個の歯２５４，２５６を、各外周面上において等間隔に並んで備えている。
【０１２９】
ガイドローラ２２２はフリーローラであるのに対し、送りローラ２２４は、モータ６５によって駆動される駆動ローラである。図６に示すように、本実施形態においては、モータ６５が送りローラ２２４に同軸に連結されており、送りローラ２２４がモータ６５によって回転駆動される。送りローラ２２４の両回転方向のうち、マスク２００が供給ローラ２２０から剥がされる回転方向が送り回転方向であり、マスク２００が供給ローラ２２０に巻き付けられる回転方向が戻り回転方向である。
【０１３０】
図７に示すように、そのモータ６５は、送りローラ２２４を回転させる機能と、それと同期して巻き取りローラ２２６を回転させる機能とを有している。そのため、モータ６５は、マスク２００を送りつつ巻き取りローラ２２６によって巻き取られる正回転と、マスク２００を巻き取りローラ２２６から剥がしつつ供給ローラ２２０に供給する逆回転とを選択的に行わせられる。
【０１３１】
図６に示すように、本実施形態においては、送りローラ２２４およびモータ６５と同軸かつ一体的に回転させられる回転体としての駆動プーリ２６０と、巻き取りローラ２２６と同軸かつ一体的に回転させられる回転体としての被動プーリ２６２とに、動力伝達体としてのベルト２６４が巻き掛けられている。このように構成された伝動機構２６６により、モータ６５の回転力が巻き取りローラ２２６に伝達される。
【０１３２】
図６および図７に示すように、投影機構６６は、照射位置２２８においてマスクガイド２７０を備えている。そのマスクガイド２７０は、マスク２００のうちの直線部２３０の送りを案内するために設けられている。
【０１３３】
本実施形態においては、マスクガイド２７０が、マスク２００の直線部２３０をそれの厚さ方向における両側から挟む構造を有しており、具体的には、マスク２００の直線部２３０を隔てて互いに対向する一対のガイド板２７２，２７２を備えている。このマスクガイド２７０は、マスク２００をそれの長さ方向にスライド可能に保持する一方、マスク２００をそれの幅方向にはできる限り変位しないように保持する。
【０１３４】
各ガイド板２７２には、それを厚さ方向に貫通する窓２７６が形成されている。この窓２７６も、貫通穴２０４と同様に、空気開口として形成されている。ＬＥＤアレイ６２Ａからの入射光のうち窓２７６を通過する部分のみが、マスク２００に照射される。
【０１３５】
図８に示すように、マスク２００には、各フレーム２０２ごとに、位置基準穴２８０とＩＤ穴領域２８２とが、マスク２００の幅方向に並んで形成されている。それら位置基準穴２８０およびＩＤ穴領域２８２は、いすれも貫通穴（空気開口）としてマスク２００に形成されている。位置基準穴２８０は、いずれかのフレームが照射位置２２８に位置していることを光学的に検出するために設けられている。一方、ＩＤ穴領域２８２は、照射位置２２８に位置しているフレームのＩＤすなわちパターン番号ＰＮを光学的に特定するために設けられている。
【０１３６】
本実施形態においては、ＩＤ穴領域２８２が、３ビットの情報によって８個のフレーム２０２すなわち８種類のパターン光をそれぞれ識別する。そのため、各フレーム２０２ごとのＩＤ穴領域２８２には、最大で３個のＩＤ穴２９０，２９２，２９４が形成される。
【０１３７】
図９に示すように、投影機構６６は、位置基準穴２８０を光学的に検出するために、位置センサ３００を、マスク２００の幅方向位置に関して位置基準穴２８０と一致する位置に備えている。本実施形態においては、その位置センサ３００は、位置基準穴２８０を高い位置精度で検出するために、絞ったビームをマスク２００に照射するとともに、マスク２００からの反射光を絞って受光する。
【０１３８】
そのため、位置センサ３００は、発光素子としてのＬＥＤ３０２と、受光素子としてのフォトダイオード（以下、「ＰＤ」という。）３０４と、ＬＥＤ３０２のための集光素子としてのＬＥＤレンズ３０６と、ＰＤ３０４のための集光素子としてのＰＤレンズ３０８とを含んでいる。この位置センサ３００は、図５に示すように、処理部１６に電気的に接続されている。
【０１３９】
ＰＤ３０４は、マスク２００からの反射光の受光の有無に応じて変化するＰＤ信号を出力する。具体的には、ＰＤ信号は、図１０にタイミングチャートで表すように、いずれの位置基準穴２８０も位置センサ３００に対向しないために位置センサ３００からの光がマスク２００で反射して位置センサ３００に入射する場合に、ハイレベルを示す一方、いずれかの位置基準穴２８０が位置センサ３００に対向するために位置センサ３００からの光がその位置基準穴２８０を透過して位置センサ３００に入射しない場合に、ローレベルを示すように変化する。
【０１４０】
ＬＥＤレンズ３０６は、ＬＥＤ３０２からの光を集光してマスク２００に照射する集光機能を有する。ＰＤレンズ３０８は、マスク２００からの反射光を集光してＰＤ３０４に照射する集光機能を有する。それらＬＥＤレンズ３０６およびＰＤレンズ３０８により、位置基準穴２８０の位置ひいてはフレーム２０２の位置を高精度に検出することが可能となっている。
【０１４１】
図９に示すように、投影機構６６は、さらに、ＩＤ穴２９０，２９２，２９４を光学的に検出するために、第１ないし第３のＩＤセンサ３１０，３１２，３１４を備えている。それら第１ないし第３のＩＤセンサ３１０，３１２，３１４はそれぞれ、マスク２００の幅方向位置に関して３個のＩＤ穴２９０，２９２，２９４と一致する位置に配置されている。いずれのＩＤセンサ３１０，３１２，３１４も、ＩＤ穴領域２８２に向けて光を照射する発光素子と、ＩＤ穴領域２８２からの反射光を受光する受光素子とを含んでいる。
【０１４２】
第１ないし第３のＩＤセンサ３１０，３１２，３１４の３個の受光素子はそれぞれ、ＩＤ穴領域２８２からの反射光の有無を表す信号を、信号Ｓ１ないしＳ３として出力する。それら信号Ｓ１ないしＳ３は、前述のＰＤ信号と同様に変化する。それら第１ないし第３のＩＤセンサも、位置センサ３００と同様に、図５に示すように、処理部１６に電気的に接続されている。
【０１４３】
図１０には、ＰＤ信号およびＳ１ないしＳ３信号が互いに同期して変化する様子の一例がタイミングチャートで表されている。処理部１６においては、後に詳述するが、モータ６５の駆動によってマスク２００が送られている間にいずれかの位置基準穴２８０が位置センサ３００に対向したためにＰＤ信号がハイレベルからレーレベルに変化した事象をトリガとして、第１ないし第３のＩＤセンサ３１０，３１２，３１４からそれぞれＳ１ないしＳ３信号がサンプリングされる。
【０１４４】
図９に示すマスク２００の例においては、第１および第３のＩＤセンサ３１０，３１４がそれぞれ、ＩＤ穴２９０，２９４に対向するため、Ｓ１信号およびＳ３信号がそれぞれ、ハイレベルからローレベルに変化する一方、第２のＩＤセンサ３１２は、ＩＤ穴２９２に対向しないため、Ｓ２信号がハイレベルに維持される。それらサンプリングされたＳ１ないしＳ３信号のレベルの組合せにより、位置センサ３００によって検出されたフレーム２０２のＩＤすなわちパターン番号ＰＮが検出される。
【０１４５】
ここで、図１１および図１２を参照することにより、各フレーム２００において各貫通穴２０４をマスク２００の長さ方向に平行な方向に配列したことによる効果を説明する。
【０１４６】
図１１には、マスク２００がそれの一端部において巻き取りローラ２２６によって巻き取られる様子が示されている。ただし、説明の便宜上、送りローラ２２４は図示を省略されている。
【０１４７】
マスク２００のうち、巻き取りローラ２２６に巻き付けられていないといえどもその巻き取りローラ２２６に近い部分に塑性変形による湾曲が発生する傾向がある。また、マスク２００においては、それの長さ方向における複数個の離散位置にそれぞれ貫通穴２０４が形成されているため、マスク２００の曲げ剛性がそれの長さ方向においてローカルに低下する。すなわち、マスク２００の曲げ剛性がそのマスク２００の長さ方向において一様に分布しないのである。このような曲げ剛性の非一様分布は、マスク２００の曲がりがローカルに増加してそのマスク２００の湾曲量（たわみ量）がローカルにないしは全体的に増加する要因となり得る。
【０１４８】
一方、本実施形態においては、前述のように、図１２に示すように、マスク２００がマスクガイド２７０を一対のガイド板２７２，２７２にサンドイッチされる状態で通過する。それらガイド板２７２，２７２間のギャップが大きいほど、それらガイド板２７２，２７２とマスク２００との間の摩擦抵抗が軽減される。その摩擦抵抗が軽減されれば、マスク２００を移動させるのに必要な力が減少し、その結果、マスク２００の移動に必要な消費電力も減少する。
【０１４９】
しかしながら、図１２に示すように、マスク２００の湾曲量が大きいほど、すなわち、照射位置２２８におけるマスク２００の平面度が低いほど、そのマスク２００から出射して投影光学系３２を経て被写体Ｓに照射される光によってその被写体Ｓ上に形成される焦点面の、光軸方向における湾曲量が増加する。その焦点面湾曲量が大きいほど、３次元入力装置１０が被写体Ｓを３次元的に入力する３次元入力精度が低下してしまう。
【０１５０】
マスク２００の厚さもヤング率もそのマスク２００の長さ方向において変化しないと仮定して、マスク２００の断面係数ひいては曲げ剛性がそのマスク２００の長さ方向において変化する傾向に関し、マスク２００において各貫通穴２０４の長さ方向がマスク２００の幅方向に一致する場合と、マスク２００の長さ方向に一致する場合とを互いに比較する。各貫通穴２０４の長さ方向がマスク２００の幅方向に一致する場合には、マスク２００の長さ方向に一致する場合より、マスク２００の断面係数ひいては曲げ剛性が、マスク２００のうち貫通穴２０４ではない部分と貫通穴２０４である部分との間で大きく変化し、塑性変形により湾曲する傾向が強い。
【０１５１】
このような知見に基づき、本実施形態においては、図１１に示すように、マスク２００において各貫通穴２０４の長さ方向とマスク２００の長さ方向とが互いに一致させられている。したがって、マスク２００の曲げ剛性がそれの長さ方向において変化する傾向が抑制される。
【０１５２】
よって、本実施形態によれば、マスク２００の曲げ剛性がそれの長さ方向においてローカルに低下する傾向があるにもかかわらず、マスク２００において各貫通穴２０４が延びる向きが適正化されることにより、マスク２００の湾曲量の増加が抑制される。その結果、被写体Ｓの位置における焦点面湾曲量の増加が抑制され、ひいては、３次元入力装置１０の３次元入力精度の低下も抑制される。
【０１５３】
図５には、３次元入力装置１０の電気的な構成がブロック図で表されている。処理部１６はコンピュータ１１０を主体として構成されており、そのコンピュータ１１０は、ＣＰＵ１１２と、ＲＯＭ１１４と、ＲＡＭ１１６とを含むように構成されている。
【０１５４】
ＣＰＵ１１２は、ＲＯＭ１１４に記憶されたプログラムをＲＡＭ１１６を利用しつつ実行することにより、レリーズボタン４０の操作状態の検出、ＣＣＤ７０からの画像データの取込み、その取り込まれた画像データの転送および格納、モード切替スイッチ４２の操作状態の検出等の各種処理を行う。
【０１５５】
ＲＯＭ１１４には、カメラ制御プログラム１１４ａと、撮像処理プログラム１１４ｂと、輝度画像生成プログラム１１４ｃと、コード画像生成プログラム１１４ｄと、コード境界抽出プログラム１１４ｅと、レンズ収差補正プログラム１１４ｆと、三角測量演算プログラム１１４ｇと、モータ制御プログラム１１４ｈとが格納されている。
【０１５６】
カメラ制御プログラム１１４ａは、３次元入力装置１０全体の制御を実行するために実行され、その制御には、図１３にフローチャートで概念的に表されているメイン処理が含まれる。
【０１５７】
撮像処理プログラム１１４ｂは、被写体Ｓの３次元形状を検出するためにパターン光が投影された被写体Ｓを撮像してパターン光有画像を取得し、さらに、パターン光が投影されていない被写体Ｓを撮像してパターン光無画像を取得するために実行される。
【０１５８】
輝度画像生成プログラム１１４ｃは、撮像処理プログラム１１４ｂの実行によって被写体Ｓについて取得された各画素のＲＧＢ値に基づき、複数枚のパターン光有画像にそれぞれ対応する複数枚の輝度画像が生成される。
【０１５９】
本実施形態においては、同じ被写体Ｓに対して複数種類のパターン光が時系列に順次投影され、各パターン光が投影されるごとに被写体Ｓが撮像される。そのようにして撮像された複数枚のパターン光有画像の各々について各画素のＲＧＢ値が取得され、その結果、パターン光の種類と同数の輝度画像が生成される。
【０１６０】
コード画像生成プログラム１１４ｄは、輝度画像生成プログラム１１４ｃの実行によって生成された複数枚の輝度画像それぞれに対する閾値処理により生成される２値化画像から、各画素毎に空間コードが割り当てられたコード画像を生成するために実行される。
【０１６１】
概略的に説明するに、このコード画像生成プログラム１１４ｄが実行されると、複数種類のパターン光のうちパターンライン間の間隔が最も狭いものが投影された被写体Ｓの輝度画像におけるパターンライン間の間隔が周期として取得され、その周期の輝度画像全体における分布が周期分布として取得される。
【０１６２】
このコード画像生成プログラム１１４ｄが実行されると、さらに、その取得された周期分布に従ってサイズが変化する可変窓が各パターン光ごとの輝度画像にローカルに設定されることにより、前記可変窓を用いたフィルタ処理により輝度画像全体に対して閾値がローカルに算出されて設定される。そのようにして設定された閾値の分布を表す閾値画像と各パターン光ごとの輝度画像との関係から、各パターン光ごとに２値化画像が生成される。
【０１６３】
可変窓を用いたフィルタ処理により輝度画像全体に対して閾値をローカルに算出する技術は、本出願人の特願２００４−２８５７３６号に詳細に開示されており、その明細書を参照することによってその明細書の内容を本明細書に引用する。
【０１６４】
コード境界抽出プログラム１１４ｅは、コード画像生成プログラム１１４ｄの実行によって生成されたコード画像と、輝度画像生成プログラム１１４ｃの実行によって生成された輝度画像とを利用することにより、コードの境界座標をサブピクセル精度で求めるために実行される。
【０１６５】
レンズ収差補正プログラム１１４ｆは、コード境界抽出プログラム１１４ｅの実行によってサブピクセル精度で求められたコードの境界座標に対して、撮像光学系２０の収差補正を行うために実行される。
【０１６６】
三角測量演算プログラム１１４ｇは、レンズ収差補正プログラム１１４ｆの実行によって収差補正が行われたコードの境界座標から、その境界座標に関する実空間の３次元座標を演算するために実行される。
【０１６７】
モータ制御プログラム１１４ｈは、複数種類のパターン光を順次被写体Ｓに投影すべくモータ６５を制御するために実行される。このモータ制御プログラム１１４ｈは、図１８にフローチャートで概念的に表されている。
【０１６８】
図５に示すように、ＲＡＭ１１６には、パターン光有画像格納部１１６ａと、パターン光無画像格納部１１６ｂと、輝度画像格納部１１６ｃと、コード画像格納部１１６ｄと、コード境界座標格納部１１６ｅと、収差補正座標格納部１１６ｇと、３次元座標格納部１１６ｈと、周期分布格納部１１６ｐと、閾値画像格納部１１６ｑと、２値化画像格納部１１６ｒと、ワーキングエリア１２０とがそれぞれ記憶領域として割り当てられている。
【０１６９】
パターン光有画像格納部１１６ａは、撮像処理プログラム１１４ｂの実行によって撮像されたパターン光有画像を表すパターン光有画像データを格納する。パターン光無画像格納部１１６ｂは、撮像処理プログラム１１４ｂの実行によって撮像されたパターン光無画像を表すパターン光無画像データを格納する。
【０１７０】
輝度画像格納部１１６ｃは、輝度画像生成プログラム１１４ｃの実行によって生成された輝度画像を表すデータを格納する。コード画像格納部１１６ｄは、コード画像生成プログラム１１４ｄの実行によって生成されたコード画像を表すデータを格納する。コード境界座標格納部１１６ｅは、コード境界抽出プログラム１１４ｅの実行によってサブピクセル精度で抽出された各コードの境界座標を表すデータを格納する。
【０１７１】
収差補正座標格納部１１６ｇは、レンズ収差補正プログラム１１４ｆの実行によって収差補正が行われたコードの境界座標を表すデータを格納する。３次元形状座標格納部１１６ｈは、三角測量演算プログラム１１４ｇの実行によって演算された実空間の３次元座標を表すデータを格納する。
【０１７２】
周期分布格納部１１６ｐ、閾値画像格納部１１６ｑおよび２値化画像格納部１１６ｒは、コード画像生成プログラム１１４ｄの実行によって取得された周期分布、閾値画像および２値化画像を表すデータをそれぞれ格納する。
【０１７３】
ワーキングエリア１２０は、ＣＰＵ１１２がその動作のために一時的に使用するデータを格納する。
【０１７４】
ここで、図１３を参照することにより、カメラ制御プログラム１１４ａを説明する。このカメラ制御プログラム１１４ａがコンピュータ１１０によって実行されることにより、前述のメイン処理が実行される。
【０１７５】
このメイン処理においては、まず、ステップＳ１０１（以下、単に「Ｓ１０１」で表す。他のステップについても同じとする。）において、バッテリ７４を含む電源がＯＮされる。次に、Ｓ１０２において、処理部１６、周辺インタフェイス等が初期化される。
【０１７６】
続いて、Ｓ１０３において、モード切替スイッチ４２の操作状態を判別するためにキースキャンが行われ、その後、Ｓ１０４において、モード切替スイッチ４２の操作によってＳＬＯＷモードが選択されたか否かが判定される。今回は、ＳＬＯＷモードが選択されたと仮定すれば、判定がＹＥＳとなり、Ｓ１０５において、前述の非間引き画像処理モードが設定される。このＳ１０５の実行後、後に詳述するＳ１０８が実行され、続いて、Ｓ１０３に戻る。
【０１７７】
これに対し、今回は、モード切替スイッチ４２の操作によってＳＬＯＷモードが選択されなかったと仮定すれば、Ｓ１０４の判定がＮＯとなり、Ｓ１０６において、モード切替スイッチ４２の操作によってＦＡＳＴモードが選択されたか否かが判定される。今回は、ＦＡＳＴモードが選択されたと仮定すれば、判定がＹＥＳとなり、Ｓ１０７において、前述の間引き画像処理モードが設定される。このＳ１０７の実行後、後に詳述するＳ１０８が実行され、続いて、Ｓ１０３に戻る。
【０１７８】
これに対し、今回は、モード切替スイッチ４２の操作によってＦＡＳＴモードが選択されなかったと仮定すれば、Ｓ１０６の判定がＮＯとなり、Ｓ１１２において、モード切替スイッチ４２の操作によってオフモードが選択されたか否かが判定される。今回は、モード切替スイッチ４２の操作によってオフモードが選択されたと仮定すれば、判定がＹＥＳとなり、直ちに今回のメイン処理が終了するが、今回は、モード切替スイッチ４２の操作によってオフモードが選択されなかったと仮定すれば、判定がＹＥＳとなり、Ｓ１０３に戻る。
【０１７９】
図１４には、図１３におけるＳ１０８が立体画像処理ルーチンとしてフローチャートで概念的に表されている。この立体画像処理ルーチンの実行により、被写体Ｓの３次元形状を立体画像として検出し、表示する立体画像処理が実行される。この立体画像処理においては、さらに、同じ被写体Ｓの表面色も検出される。それら立体画像の検出結果と表面色の検出結果とが位置に関連付けて組み合わされたものが３次元色形状検出結果である。
【０１８０】
この立体画像処理においては、まず、Ｓ１００１において、ファインダ画像、すなわち、撮像光学系３０を通して見える範囲の画像と同じ画像がモニタＬＣＤ４４に表示される。よって、ユーザは、モニタＬＣＤ４４に表示された画像を見ることにより、実際の撮像前に、撮像画像（撮像範囲）を確認することができる。
【０１８１】
次に、Ｓ１００２において、レリーズボタン４０の操作状態がスキャンされ、その後、Ｓ１００３において、そのスキャン結果に基づき、レリーズボタン４０が半押し状態にあるか否かが判定される。半押し状態にあれば、判定がＹＥＳとなり、Ｓ１００４において、オートフォーカス（ＡＦ）および自動露出（ＡＥ）機能が起動し、それにより、ピント、絞りおよびシャッタスピードが調節される。レリーズボタン４０が半押し状態になければ、Ｓ１００３の判定がＮＯとなり、Ｓ１０１０に移行する。
【０１８２】
Ｓ１００４の実行後、Ｓ１００５において、再度、レリーズボタン４０の操作状態がスキャンされ、その後、Ｓ１００６において、そのスキャン結果に基づき、レリーズボタン４０が全押し状態にあるか否かが判定される。レリーズボタン４０が全押し状態になければ、このＳ１００６の判定がＮＯとなってＳ１００２に戻る。
【０１８３】
レリーズボタン４０が半押し状態から全押し状態に移行すれば、Ｓ１００６の判定がＹＥＳとなり、Ｓ１００７において、後述の３次元色形状検出処理が実行され、それにより、被写体Ｓの３次元形状および表面色が検出される。
【０１８４】
概略的に説明するに、その３次元色形状検出処理により、被写体Ｓについて３次元色形状検出結果が生成される。ここに、３次元色形状検出結果とは、後述の空間コード画像において検出される複数の空間コード境界画像を３次元座標に変換した結果取得される頂点座標の集合体であって、各頂点ごとに色形状情報とポリゴン情報とが互いに関連付けられたものを意味する。色形状情報は、実空間座標とＲＧＢ値との組合せを表す情報である。ポリゴン情報は、複数個の頂点のうち、被写体Ｓを３次元的に表面する立体を構成するために互いに連結されるべき複数の頂点の組合せを表す情報である。
【０１８５】
その後、Ｓ１００８において、その３次元色形状検出結果が外部メモリ７８に格納され、続いて、Ｓ１００９において、その３次元色形状検出結果が３次元コンピュータグラフィック画像としてモニタＬＣＤ４４に表示される。
【０１８６】
その後、Ｓ１０１０において、図１３におけるＳ１０３と同様にしてキースキャンが行われる。続いて、Ｓ１０１１において、モード切替スイッチ４２の操作状態に変化が無いか否かが判定される。変化が無ければ、Ｓ１０１１の判定がＹＥＳとなり、Ｓ１００１に戻るが、変化が有れば、Ｓ１０１１の判定がＮＯとなり、今回の立体画像処理が終了する。
【０１８７】
図１４のＳ１００７において実行される３次元色形状検出処理においては、空間コード化法を用いて被写体Ｓの３次元形状が検出される。以下、図１５を参照することにより、空間コード化法を説明する。図１５（ａ）には、３次元座標系ＸＹＺが設定された実空間をＹ座標軸方向に見た図と、Ｘ座標軸方向に見た図と、純２進コードによる３種類のマスクＡ，ＢおよびＣのパターンとが示されている。これに対し、図１５（ｂ）には、グレイコードによる３種類のマスクＡ，ＢおよびＣのパターンと、複数個の空間コードとが示されている。
【０１８８】
図１５（ａ）に示すように、空間コード化法は、観察対象である被写体Ｓの像である観察画像と、その被写体Ｓに光（拡散光）を投影する投影光源（例えば、プロジェクタ）と、被写体Ｓを観測する観測器（例えば、カメラ）との間に三角測量の原理を適用することによって被写体Ｓの３次元形状を検出する手法の一種である。この空間コード化法においては、図１５（ａ）に示すように、投影光源Ｌ（PROJECTOR）と観測器Ｏ（CAMERA）とが距離ｄだけ離して設置される。したがって、観測空間内の任意の点Ｐは、投影光の向きψと、観測器Ｏから見える向きθとが計測できれば、特定できる。この空間コード化法においては、さらに、被写体Ｓの表面上の任意の位置を特定するため、観測空間が複数個の細長い扇状領域に分割されてコード化されている。
【０１８９】
被写体Ｓの表面上の任意の位置のコードを観測画像から取得するために、複数種類のストライプ状のパターン光が時系列的に被写体Ｓに投影される。パターン光の切換えは、パターン光の種類と同数のマスクを用意し、マスクを機械的に交換する機械式として実施したり、電気光学効果を有する材料を用いてストライプ状の光シャッタ列を構成し、その光シャッタ列における各ストライプの光透過率を電子的に制御する電子式として実施することが可能である。もっとも、本実施形態においては、後者の電子式が採用され、具体的には、投影機構６６によって複数種類のマスクパターンが時系列的に再現すなわち表示される。
【０１９０】
図１５（ａ）に示す例においては、投影光源Ｌと被写体Ｓ（四角柱と円柱）との間にマスクが交換可能に設置される。この例においては、パターンが互いに異なる３種類のマスクＡ，ＢおよびＣが用意されており、よって、３種類のパターン光が時系列的に被写体Ｓに投影される。
【０１９１】
各マスクＡ，Ｂ，Ｃによって生成されたパターン光を被写体Ｓに投影すると、８個の扇状領域のそれぞれが、明領域「１」と暗領域「０」とのいずれかにコード化される。３枚のマスクＡ，Ｂ，Ｃを経た光をそれらの順に被写体Ｓに投影すると、各扇状領域には、３ビットから成るコードが割り当てられる。それら３ビットは、最初のマスクＡに対応する最上位ビットＭＳＢから、最後のマスクＣに対応する最下位ビットＬＳＭまで順に並んでいる。例えば、図１５（ａ）に示す例においては、点Ｐが属する扇状領域は、マスクＡ，Ｂによって光が遮られるのに対し、マスクＣによってのみ光が通過して明領域になるため、「００１（Ａ＝０、Ｂ＝０、Ｃ＝１）」としてコード化される。
【０１９２】
このように、各扇状領域には、投影光源Ｌからの向きψに相当するコードが割り当てられる。一方、各パターン光が投影された被写体Ｓの明暗パターンを各マスクごとに２値化してメモリの各ビットプレーンを構成すれば、各ビットプレーン画像の横方向の位置（アドレス）は、観測器Ｏからの向きθに相当する。また、３枚のマスクにそれぞれ対応する３枚のビットプレーンのメモリ内容を各ビット（各画素）ごとに注目すれば、各画素ごとに３ビットのコードが取得される。このコードから、各扇状領域の投影光源Ｌからの向きψが特定される。そして、距離ｄが既知である状況において、向きψおよびθが特定されれば、三角測量の原理により、被写体Ｓの表面上の注目点の３次元座標が特定される。
【０１９３】
図１５（ａ）には、マスクＡ，ＢおよびＣの如き複数のマスクを用いることにより、空間を純２進コードを用いてコード化する例が示されているが、図１５（ｂ）には、マスクＡ，ＢおよびＣの如き複数のマスクを用いることにより、隣接するコード間のハミング距離が常に１であるグレイコードを空間コードとして用いて空間をコード化する例が示されている。
【０１９４】
本実施形態においては、前述の３次元色形状検出処理において、純２進コードによる空間コード化法を採用しても、グレイコードによる空間コード化法を採用してもよい。
【０１９５】
この空間コード化法の詳細は、例えば、佐藤宏介、他１名、「空間コード化による距離画像入力」、電子通信学会論文誌、８５／３Ｖｏｌ．Ｊ  ６８−Ｄ  Ｎｏ３  ｐ３６９〜３７５に詳細に開示されている。
【０１９６】
図１６には、図１４におけるＳ１００７が３次元色形状検出処理ルーチンとしてフローチャートで概念的に表されている。
【０１９７】
この３次元色形状検出処理ルーチンにおいては、まず、Ｓ１２１０において、撮像処理が実行される。この撮像処理が実行されれば、例えば、図１５（ｂ）に示す複数枚のグレイコードのマスクパターンを利用して投影部１２からストライプ状のパターン光が時系列的に被写体Ｓに投影される。さらに、複数種類のパターン光が投影されている被写体Ｓをそれぞれ撮像した複数枚のパターン光有画像と、パターン光が投影されていない同じ被写体Ｓを撮像した１枚のパターン光無画像とが取得される。
【０１９８】
撮像処理が終了すると、Ｓ１２２０において、３次元計測処理が実行される。この３次元計測処理が実行されると、上述の撮像処理によって取得された複数枚のパターン光有画像と１枚のパターン光無画像とが利用されて、実際に被写体Ｓの３次元形状が計測される。
【０１９９】
この３次元計測処理が終了すると、Ｓ１２３０において、被写体Ｓについて計測された３次元形状と表面色とを組み合わせることにより、３次元色形状検出結果が生成される。この３次元色形状検出結果が生成されると、今回の３次元色形状検出処理が終了する。
【０２００】
図１６におけるＳ１２１０においては、上述の撮像処理のために撮像処理プログラム１１４ｂが実行される。図１７には、この撮像処理プログラム１１４ｂがフローチャートで概念的に表されている。
【０２０１】
この撮像処理プログラム１１４ｂにおいては、まず、Ｓ２００１において、パターン光を形成するために使用されるマスクパターンの番号を表すパターン番号ＰＮが０に初期化される。続いて、Ｓ２００２において、そのパターン番号ＰＮの現在値が最大値ＰＮｍａｘより小さいか否かが判定される。その最大値ＰＮｍａｘは、使用されるマスクパターンの合計数に応じて決定される。例えば、８種類のマスクパターンが使用される場合には、最大値ＰＮｍａｘが８に設定される。
【０２０２】
今回は、パターン番号ＰＮの現在値が最大値ＰＮｍａｘより小さいと仮定すれば、Ｓ２００２の判定がＹＥＳとなり、続いて、Ｓ２００２ａにおいて、モータ制御プログラム１１４ｈが実行される。
【０２０３】
このモータ制御プログラム１１４ｈにおいては、図１８に示すように、まず、Ｓ２２０１において、モータ６５を一定速度で回転駆動するための信号がモータドライバ８６に供給される。これにより、マスク２００が供給ローラ２２０から照射位置２２８に供給される向きにマスク２００が送られる。
【０２０４】
次に、Ｓ２２０２において、位置センサ３００からＰＤ信号が読み取られる。続いて、Ｓ２２０３において、その読み取られたＰＤ信号がローレベルを示すか否かが判定される。すなわち、位置センサ３００がいずれかの位置基準穴２８０（今回は、先頭の位置基準穴２８０）が検出されたか否かが判定されるのである。
【０２０５】
今回は、ＰＤ信号がハイレベルを示すと仮定すれば、Ｓ２２０３の判定がＮＯとなり、Ｓ２２０１に戻り、モータ６５の駆動およびＰＤ信号の読み取りが繰り返される。Ｓ２２０１ないしＳ２２０３の実行が何回か繰り返された結果、ＰＤ信号がハイレベルからローラベルに変化したと仮定すれば、Ｓ２２０３の判定がＹＥＳとなる。
【０２０６】
その後、Ｓ２２０４において、第１ないし第３のＩＤセンサ３１０ないし３１４からＳ１ないしＳ３信号がそれぞれ読み取られる。続いて、Ｓ２２０５において、それら読み取られたＳ１ないしＳ３信号のレベルの組合せ（３ビットの情報）がパターン番号ＰＮの現在値を表すか否かが判定される。すなわち、マスク２００における複数のフレーム２０２のうち現在、照射位置２２８に位置しているものすなわち現在フレーム２０２のパターン番号ＰＮが、パターン番号ＰＮの現在値と一致するか否かが判定されるのである。
【０２０７】
今回は、現在フレーム２０２のパターン番号ＰＮがパターン番号ＰＮの現在値と一致しないと仮定すると、Ｓ２２０５の判定がＮＯとなり、Ｓ２２０１に戻る。これに対し、今回は、今回は、現在フレーム２０２のパターン番号ＰＮがパターン番号ＰＮの現在値と一致すると仮定すると、Ｓ２２０５の判定がＹＥＳとなる。本実施形態においては、マスク２００において複数のフレーム２０２が並ぶ順序と同じ順序に、パターン番号ＰＮが１ずつ増加させられるようになっている。すなわち、マスク２００がシーケンシャルに送られるようになっているのであり、よって、Ｓ２２０５の判定は、３次元入力装置１０に異常が存在しない限り、ＹＥＳとなる。
【０２０８】
Ｓ２２０５の判定がＹＥＳとなると、その後、Ｓ２２０６において、モータ６５が停止させられ、それにより、現在フレーム２０２が照射位置２２８に停止させられる。その結果、現在フレーム２０２の位置決めが完了する。
【０２０９】
以上で、このモータ制御プログラム１１４ｈの一回の実行が終了する。
【０２１０】
なお付言するに、本実施形態においては、モータ６５の間欠的駆動によるマスク２００の間欠的送りにより、複数のフレーム２０２が順次、照射位置２２８に位置決めされるように、モータ６５が制御される。これに対し、モータ６５の連続的駆動によるマスク２００の連続的送りにより、複数のフレーム２０２が順次、照射位置２２８に位置決めされるように、モータ６５が制御される態様で本発明を実施することが可能である。
【０２１１】
ところで、前述のように、本実施形態においては、マスク２００において各貫通穴２０４の長さ方向がマスク２００の送り方向に一致させられている。よって、マスク２００の移動中でも、いずれかのフレーム２０２が照射位置２２８を通過する際に、同じフレーム２０２によって同じパターン光が生成されて被写体Ｓに投影される時間を確保することが容易である。
【０２１２】
したがって、マスク２００が一時的に停止しないにもかかわらず、同じパターン光を事実上、静止画像として被写体Ｓに投影することが容易である。このことは、マスク２００の連続的送りにより、複数のフレーム２０２を順次、照射位置２２８に確実に位置決めするために好都合である。
【０２１３】
本実施形態においては、モータ制御プログラム１１４ｈの一回の実行が終了すると、図１７におけるＳ２００３において、使用される複数種類のマスクパターンのうち、パターン番号ＰＮの現在値と等しい番号が付されたＰＮ番目のマスクパターンの投影が開始される。
【０２１４】
続いて、Ｓ２００４において、ＰＮ番目のマスクパターンを被写体Ｓに投影するための投影処理が行われる。図１９には、このＳ２００４の詳細が投影処理サブルーチンとしてフローチャートで概念的に表されている。この投影処理サブルーチンの実行により、ＰＮ番目のマスクパターンを有するパターン光を投影部１２から被写体Ｓに投影する投影処理が投影機構６６との共同作用によって実行される。
【０２１５】
この投影処理においては、まず、Ｓ３００４において、光源ドライバ８４が駆動され、続いて、Ｓ３００５において、その光源ドライバ８４からの電気信号によってＬＥＤアレイ６２Ａが発光する。以上で、今回の投影処理が終了する。
【０２１６】
ＬＥＤアレイ６２Ａから発光した光は、光源レンズ６４を経て投影機構６６に到達する。その投影機構６６においては、マスク２００の現在フレーム２０２の開口パターンに応じた空間変調が施され、その結果、投影機構６６への入射光がパターン光に変換されて出力される。その投影機構６６から出力されるパターン光は、投影光学系３２を経て被写体Ｓに投影画像として投影される。
【０２１７】
以上のようにして、ＰＮ番目のマスクパターンによって形成されるＰＮ番目のパターン光が被写体Ｓに投影されると、続いて、図１７におけるＳ２００５において、そのＰＮ番目のパターン光が投影されている被写体Ｓが撮像部１４によって撮像される。
【０２１８】
その撮像により、ＰＮ番目のパターン光が投影されている被写体Ｓを撮像したＰＮ番目のパターン光有画像が取得される。その取得されたパターン光有画像は、対応するパターン番号ＰＮに関連付けてパターン光有画像格納部１１６ａに格納される。
【０２１９】
その撮像が終了すると、Ｓ２００６において、ＰＮ番目のパターン光の投影が終了し、続いて、Ｓ２００７において、次のパターン光を投影すべく、パターン番号ＰＮが１だけインクリメントされ、その後、Ｓ２００２に戻る。
【０２２０】
Ｓ２００２ないしＳ２００７の実行がパターン光の種類の数と同数回繰り返された結果、パターン番号ＰＮの現在値が最大値ＰＮｍａｘより小さくはない値になると、Ｓ２００２の判定がＮＯとなり、今回の撮像処理が終了する。したがって、一回の撮像処理により、最大値ＰＮｍａｘと同数枚のパターン光有画像が取得されることになる。
【０２２１】
続いて、Ｓ２００８において、フラッシュモードが選択されているか否かが判定される。フラッシュモードが選択されていれば、その判定がＹＥＳとなり、Ｓ２００９において、フラッシュ２６が発光させられるが、フラッシュモードが選択されていなければ、Ｓ２００８の判定がＮＯとなり、Ｓ２００９がスキップされる。いずれにしても、その後、Ｓ２０１０において、被写体Ｓが撮像される。
【０２２２】
この撮像は、被写体Ｓの表面色を計測することを目的として、投影部１２からパターン光を被写体Ｓに投影することなく、行われる。その結果、被写体１２について１枚のパターン光無画像が取得される。その取得されたパターン光無画像はパターン光無画像格納部１１６ｂに格納される。
【０２２３】
続いて、Ｓ２０１１において、マスク２００のうちの長さ方向における先頭部分が照射位置２２８に位置するようにマスク２００の長さ方向位置を初期化すべくモータ６５が駆動される。
【０２２４】
以上で、この撮像処理プログラム１１４ｂの一回の実行が終了する。
【０２２５】
図２０には、この撮像処理プログラム１１４ｂの一回の実行に伴うこの３次元入力装置１０の作動の一例がタイミングチャートで表されている。この作動例は、ユーザによってＦＡＳＴモードが選択されている状態でユーザによってレリーズボタン４０が全押し状態に操作された場合にこの３次元入力装置１０によって実行されるものである。
【０２２６】
図２０（ａ）には、被写体Ｓからの入射光によってＣＣＤ７０が複数回、連続して露光される様子が示されている。図２０（ｂ）には、それら複数回の露光のそれぞれにつき、被写体Ｓからの入射光によって表される全体画像のうちの各画素ごとに光がＣＣＤ７０によって電気信号に変換されてＣＣＤ７０から出力される信号出力タイミングがタイミングチャートで表されている。図２０（ｃ）には、撮像部１４の画像処理モードが前述の間引き画像処理モードと非間引き画像処理モードとに時間的に切り替わるタイミングがタイミングチャートで表されている。
【０２２７】
さらに、図２０（ｄ）には、撮像部１４の状態が、待機状態と、撮像および信号取り出しのための作動状態とに時間的に切り替わるタイミングがタイミングチャートで表されている。図２０（ｅ）には、各パターン光を形成するためにマスク２００において各フレーム２０２が割り出されるタイミングがタイミングチャートで表されている。図２０（ｆ）には、レリーズボタン４０が、非操作状態と操作状態とに時間的に切り替わるタイミングがタイミングチャートで表されている。
【０２２８】
本実施形態においては、被写体Ｓからの入射光によるＣＣＤ７０の露光後に、その露光を反映した信号のＣＣＤ７０からの取り出しが行われる。１回の露光に１回の信号取り出しが対応しており、それら露光と信号取り出しとが互いに共同して１回の個別撮像処理を構成する。
【０２２９】
本実施形態においては、同じ被写体Ｓについて３次元形状情報の取得と表面色情報の取得とが連続的に、かつ、それらの順で行われる。
【０２３０】
前述のように、被写体Ｓの３次元形状情報を取得するために、その被写体Ｓに８種類のパターン光（パターン番号ＰＮ＝０〜７）が順次投影され、各パターン光の投影ごとに、ＣＣＤ７０の露光とＣＣＤ７０からの信号取り出しとが行われる。すなわち、被写体Ｓの３次元形状情報を取得するために、その被写体Ｓに対する個別撮像処理が順次、合計８回行われるのである。図２０においては、３次元形状情報を取得するための各回の個別撮像処理に対応するパターン光の番号ＰＮが、「０」ないし「７」の数字によって示されている。
【０２３１】
被写体Ｓの表面色情報を取得するために、被写体Ｓからの入射光によってＣＣＤ７０が１回露光され、その後に信号取り出しが行われる。すなわち、被写体Ｓの表面色情報を取得するために、被写体Ｓに対する個別撮像処理が１回行われるのである。図２０においては、表面色情報を取得するための１回の個別撮像処理が「ｃ」という記号によって示されている。
【０２３２】
３次元形状情報取得のための撮像においては、照明光としてパターン光を被写体Ｓに投影することが必須であるのに対し、表面色情報取得のための撮像においては、照明光を被写体Ｓに投影することが選択的である。具体的には、表面色情報取得のための撮像においては、被写体Ｓからの受光量が不足している場合に、フラッシュ２６が自動的に発光させられ、それにより、被写体Ｓに照明光が投影される。
【０２３３】
したがって、本実施形態においては、３次元形状情報取得のための８回の個別撮像処理と、表面色情報取得のための１回の個別撮像処理とが連続的に行われ、合計９回の個別撮像処理が連続的に行われる。本実施形態においては、それら９回の個別撮像処理が互いに共同して１回の全体撮像処理を構成している。
【０２３４】
それら９回の個別撮像処理においては、同じ被写体Ｓについて９回の露光が順次行われ、それら９回の露光は、例えば、ビデオレートと同じ速度で同一周期で行われる。それら９回の露光が連続的に行われる期間は、被写体Ｓと３次元入力装置１０との相対位置が変化するとその影響がＣＣＤ７０の撮像結果に現れる期間である。この期間は、３次元入力装置１０の撮像時間である。この撮像時間が短いほど、３次元入力装置１０の動画撮像能力が高いことを意味する。
【０２３５】
図２０に示す一作動例においては、３次元形状情報取得のための８回の個別撮像処理における信号取り出しがいずれも、間引き画像処理として実行される。したがって、３次元形状情報取得のための各回の個別撮像処理においては、ＣＣＤ７０の露光に後続し、必要な信号取り出し時間ｔ１の経過後、ＣＣＤ７０から電気信号が出力される。信号取り出し時間ｔ１は、１フレーム取り出し時間ともいい、各パターン光の投影ごとに、ＣＣＤ７０の露光が終了してから、３次元形状情報が１フレーム分、ＣＣＤ７０から出力されるまでに必要な３次元形状情報出力時間を意味する。
【０２３６】
これに対し、図２０に示す一例においては、表面色情報取得のための１回の個別撮像処理における信号取り出しが、非間引き画像処理として実行される。したがって、表面色情報取得のための１回の個別撮像処理については、ＣＣＤ７０の露光に後続し、必要な信号取り出し時間ｔ２の経過後、ＣＣＤ７０から電気信号が出力される。信号取り出し時間ｔ２は、１フレーム取り出し時間ともいい、ＣＣＤ７０の露光が終了してから、表面色状情報が１フレーム分、ＣＣＤ７０から出力されるまでに必要な表面色情報出力時間を意味する。
【０２３７】
間引き画像処理に必要な信号取り出し時間ｔ１は、非間引き画像処理に必要な信号取り出し時間ｔ２より短い。例えば、信号取り出し時間ｔ１は、約３３ｍｓであるのに対し、信号取り出し時間ｔ２は、約０．５ｓである。
【０２３８】
図２０（ａ）および（ｂ）に示すように、１回の個別撮像処理においては、露光が終了した後に信号取り出しが開始されるが、次回の個別撮像処理における露光は、前回の個別撮像処理における信号取り出しが終了する前に開始される。すなわち、ある回の個別撮像処理における信号取り出しと次回の個別撮像処理における露光とが時間的に部分的にオーバラップするように行われるのである。ただし、ある回の個別撮像処理における信号取り出しは、次回の個別撮像処理における露光が終了する前に終了する。
【０２３９】
したがって、本実施形態においては、図２０（ｂ）に示すように、３次元形状情報取得のための８回の信号取り出しが時間的に隙間なく連続的に行われる。
【０２４０】
各回の信号取り出しは、それが間引き画像処理として実行される場合には、約３３ｍｓで終了する。したがって、８回の信号取り出しは約０．２６ｓで終了する。よって、図２０に示す撮像時間（全体撮像時間）のうち３次元形状情報取得のための撮像に必要な部分（以下、「部分撮像時間」という。）の長さは、信号取り出し時間の長さの合計値によって支配されるため、約０．２６ｓの程度の長さで済む。
【０２４１】
これに対し、各回の信号取り出しは、それを非間引き画像処理として実行すると、約０．５ｓも必要である。そのため、８回の信号取り出しに約５ｓも必要となり、よって、それに対応する部分撮像時間もその程度の長さが必要となる。
【０２４２】
このように、ＣＣＤ７０からの信号取り出しを間引き画像処理として実行する場合には、撮像時間が短縮され、その結果、被写体Ｓの動きや３次元入力装置１０の手振れにもかかわらず、被写体Ｓの３次元形状を高精度で計測できる。
【０２４３】
さらに、図２０に示すように、本実施形態においては、３次元形状情報取得のための２回目ないし８回目の露光のそれぞれと、表面色情報取得のための露光とが、それぞれ、先行する直前の露光に対応する信号取り出しの終了を待つことなく、開始される。先行する露光に対応する信号取り出しと、後続する露光とが互いに並行して行われるのであり、これにより、９回の信号取出しが時間的に隙間なく連続的に行われる。したがって、図２０に示す撮像時間、すなわち、３次元形状情報取得のための撮像と表面色情報取得のための撮像との双方を連続的に行うのに必要な時間が短縮される。
【０２４４】
具体的には、各回の信号取り出しは、それが間引き画像処理として実行される場合には、約３３ｍｓで終了するため、９回の信号取り出しは約０．３ｓで終了し、よって、それに対応する全体撮像時間もその程度の長さで済む。
【０２４５】
仮に、表面色情報取得のための１回の個別撮像処理すなわち表面色計測撮像処理（信号取り出しが非間引き画像処理として実行される。）を先に、３次元形状情報取得のための８回の個別撮像処理すなわち３次元計測撮像処理（信号取り出しが間引き画像処理として実行される。）を後に実行した場合には、先行する表面色計測撮像処理における信号取出しがほとんど終了するまで、３次元形状情報取得のための初回の露光を待たせなければならない。その待ち時間は、信号取り出し時間ｔ２の長さにほぼ等しく、約０．５ｓである。
【０２４６】
この場合には、表面色情報取得のための露光と、３次元形状情報取得のための初回の露光との間にやや長い時間間隔が存在し、図２０に示す全体撮像時間が長くなる。一方、被写体Ｓが静止物体であり、かつ、この３次元入力装置１０の手振れの程度が大きくはない場合には、その全体撮像時間がやや長いことは問題にならない。これに対し、図１に示す如き、被写体Ｓが動作物体である場合や、３次元入力装置１０の手振れの程度が大きい場合には、その全体撮像時間が長いと、表面色情報と３次元形状情報とが画素の位置に関して互いに十分に正確にマッチングしなくなってしまう。すなわち、テクスチャマッピング精度が低下してしまうのである。
【０２４７】
これに対し、本実施形態においては、図２０に示すように、３次元形状情報取得のための８回の個別撮像処理が先に、表面色情報取得のための１回の個別撮像処理が後に行われる。その結果、先行する３次元形状情報取得のための８回目の露光と、後続する表面色情報取得のための露光とを、先行する３次元形状情報取得のための８回の露光が行われる周期と同じ周期で連続して行うことが可能となる。よって、本実施形態によれば、全体撮像時間を、約０．３ｓ程度にまで短縮することが可能となる。
【０２４８】
したがって、本実施形態によれば、３次元形状情報取得のための露光と表面色情報取得のための露光とを十分に短い時間間隔で連続して行うことが可能となり、その結果、被写体Ｓの動きの程度や３次元入力装置１０の手振れの程度にかかわらず、高いテクスチャマッッピング精度が実現される。
【０２４９】
よって、本実施形態によれば、３次元形状情報取得のためのＣＣＤ７０からの信号取り出しを間引き画像処理モードで実行する場合（ユーザがＦＡＳＴモードを選択する場合）には、高いテクスチャ解像度すなわち表面色計測精度を確保しつつ、高いテクスチャマッピング精度で動画を撮像するのに適した３次元入力装置１０が提供される。
【０２５０】
さらに、本実施形態においては、ユーザが、３次元形状情報を取得するための画像処理モードを、間引き画像処理モードすなわちＦＡＳＴモードと、非間引き画像処理モードすなわちＳＬＯＷモードとに適宜変更することが可能である。テクスチャマッピング精度の低下が懸念される環境において、ユーザがＦＡＳＴモードを選択すれば、そのような環境にもかかわらず、テクスチャマッピング精度が低下せずに済む。一方、テクスチャマッピング精度の低下が懸念されない環境において、ユーザがＳＬＯＷモードを選択すれば、高いテクスチャマッピング精度のみならず高い３次元形状計測精度も実現される。
【０２５１】
このように、本実施形態によれば、３次元入力装置１０の使用環境や３次元形状計測精度とテクスチャマッピング精度とのそれぞれに対するユーザの要望に応じて、３次元入力装置１０の設定をユーザが任意に変更することができ、よって、３次元入力装置１０の使い勝手が向上する。
【０２５２】
図２１には、図１６におけるＳ１２２０が３次元計測処理サブルーチンとしてフローチャートで概念的に表されている。
【０２５３】
この３次元計測処理サブルーチンにおいては、まず、Ｓ４００１において、輝度画像生成プログラム１１４ｃの実行により、輝度画像が生成される。
【０２５４】
このＳ４００１においては、輝度値が、ＹＣｂＣｒ空間におけるＹ値として定義されており、各画素のＲＧＢ値より、
【０２５５】
Ｙ＝０．２９８９・Ｒ＋０．５８６６・Ｇ＋０．１１４５・Ｂ
【０２５６】
なる式を用いて計算される。各画素についてＹ値を求めることにより、複数枚のパターン光有画像にそれぞれ対応複数枚の輝度画像が生成される。それら生成された輝度画像は、パターン番号ＰＮに関連付けて輝度画像格納部１１６ｃに格納される。ただし、輝度値の算出に用いられる式は、上記式に限定されるものではなく、他の式に適宜変更することが可能である。
【０２５７】
次に、Ｓ４００２において、コード画像生成プログラム１１４ｄが実行される。このコード画像生成プログラム１１４ｄが実行されると、生成された複数枚の輝度画像が前述の空間コード化法を利用して組み合わされることにより、各画素ごとに空間コードが割り当てられたコード画像が生成される。そのコード画像は、輝度画像格納部１１６ｃに格納された複数種類のパターン光有画像に関する輝度画像と、各画素ごとに輝度閾値が割り当てられた閾値画像との比較による２値化処理によって生成される。その生成されたコード画像はコード画像格納部１１６ｄに格納される。
【０２５８】
図２２には、このコード画像生成プログラム１１４ｄの詳細がフローチャートで概念的に表されている。このコード画像生成プログラム１１４ｄにおいて採用されている技術は、本出願人の特願２００４−２８５７３６号に詳細に記載されているため、その特許出願を参照することにより、その特許出願の内容を本明細書に引用する。
【０２５９】
以下、このコード画像生成プログラム１１４ｄを時系列的に説明するが、それに先立ち、原理的に説明する。
【０２６０】
本実施形態においては、同じ被写体Ｓ（３次元対象物）につき、複数種類のパターン光のもとにそれぞれ複数枚の輝度画像が生成される。それらパターン光はいずれも、明部、すなわち、幅を有する明るいパターンラインと、暗部、すなわち、幅を有する暗いパターンラインとが交互に一定の周期で繰り返すように形成される。それらパターン光は、その周期に関して互いに異なっており、それぞれ、パターン番号ＰＮを有するパターン光と称される。それらパターン光のうち最も短い周期を有するパターン光が、パターン番号ＰＮが０であるパターン光であり、最も長い周期を有するパターン光が、パターン番号ＰＮが（ＰＮｍａｘ−１）であるパターン光である。
【０２６１】
いずれの輝度画像も、対応するパターン光のもとに取得されるため、明部としての明るいパターンラインと、暗部としての暗いパターンラインとが交互に並んで成るパターン画像として形成される。パターンライン間の間隔すなわち周期は、３次元入力装置１０と被写体Ｓとの間における相対的な幾何学的関係（位置および向きに関する関係）に依存するため、各輝度画像内のすべての位置において一定であるとは限らない。複数種類のパターン光のもとにそれぞれ取得される複数枚の輝度画像は、対応するパターン光のパターン番号ＰＮを用いて特定される。
【０２６２】
本実施形態においては、それら複数枚の輝度画像のうちのいずれかが代表パターン画像に選択される。その代表パターン画像の一典型例は、複数種類のパターン光のうちパターンライン周期が最小であるものに対応する輝度画像であり、これは、パターン番号ＰＮが０である輝度画像である。
【０２６３】
パターン光が投影された被写体Ｓを撮像した輝度画像においては、輝度値が画素列の方向において空間的にかつ周期的に変化する。その周期的変化を表すグラフにそれの複数個の下ピーク点（最低輝度点）において接する包絡線が存在する。この包絡線は、同じ被写体Ｓを無照射状態で撮像した輝度画像における輝度値、すなわち、被写体Ｓの背景光の輝度値の空間的変化を表している。このような包絡線が存在する輝度画像については、各画素の輝度値を閾値処理によって正確に２値化するためには、閾値を画素位置に応じて変化させることが望ましい。すなわち、輝度画像の実際の輝度値変化をトラッキングすることによって閾値を適応的に変化させることが望ましいのである。
【０２６４】
このような知見に基づき、本実施形態においては、輝度画像に対してフィルタ処理を行うことによって閾値を算出するフィルタ窓がローカルに設定され、フィルタ処理されることによりその位置に適した閾値が、輝度画像に対してローカルに設定される。輝度画像のうちのあるローカル位置に窓が設定されれば、輝度画像を構成する複数本のパターンラインのうちその窓内に存在する画素の輝度値が取り出されて参照されることにより、そのあるローカル位置に対応する閾値が設定される。
【０２６５】
本実施形態において使用される窓は、方形窓である。この方形窓を採用する場合には、その方形窓内に存在する複数本のパターンラインを構成する画素の輝度値が取り出され、それら輝度値に対して同一の重み係数が用いられて閾値が算出される。その重み係数により、方形窓の窓関数が定義される。
【０２６６】
さらに、方形窓を採用する場合には、その方形窓の、パターンラインが延びるライン方向におけるライン方向サイズに応じて、その方形窓内においてライン方向に存在する画素の数を可変とすることができる。一方、その方形窓の、複数本のパターンラインが列を成して並ぶ列方向における列方向サイズに応じて、その方形窓内において列方向に存在するパターンラインの数も画素の数も可変とすることができる。
【０２６７】
したがって、方形窓を採用する場合には、その方形窓の列方向サイズにより、輝度画像に窓を設定することによってその輝度画像から算出される閾値が変化することになる。よって、その閾値を適応的に変化させることが必要である場合には、方形窓の列方向サイズを適応的に変化させればよい。
【０２６８】
本実施形態においては、方形窓として構成される窓のサイズが、その窓内に存在するパターンラインの数がそれらパターンラインの間隔すなわち周期（例えば、明るいパターンラインが繰り返される周期）の整数倍であるように設定することが望ましい。すなわち、窓内に、明るいパターンラインと暗いパターンラインとが同数ずつ存在するように窓のサイズを設定することが望ましいのである。このように設定すれば、窓内に存在する複数本のパターンラインの輝度値の平均値を算出することにより、望ましい閾値を高精度取得することができる。
【０２６９】
しかしながら、同じ輝度画像上であっても、パターンラインの周期は場所によって異なる可能性がある。そのため、窓のサイズを固定した場合には、窓内に存在するパターンラインの数が場所によって変動してしまい、閾値の設定精度が低下してしまう。
【０２７０】
本実施形態においては、複数枚の輝度画像のうち、パターンラインの周期が最小であるパターン光のもとに撮像されたもの、すなわち、パターン番号ＰＮが０である輝度画像が代表パターン画像として選択される。さらに、本実施形態においては、その代表パターン画像に対してローカルに設定される窓ＶＷが、それのサイズが可変である可変窓として構成されている。それにより、その可変窓ＶＷのサイズが、代表パターン画像の実際のパターンライン周期に適応して変化させられる。
【０２７１】
したがって、本実施形態によれば、代表パターン画像におけるパターンライン周期が列方向位置に応じて変動しても、それに追従するように可変窓ＶＷのサイズが変更され、その結果、パターンライン周期の変動にもかかわらず、可変窓ＶＷ内に存在する明部と暗部のパターンラインの数が一定に維持される。本実施形態においては、代表パターン画像に対して可変窓ＶＷが設定される各ローカル位置ごとに閾値ＴＨが取得される。各ローカル位置ごとの閾値ＴＨは、各ローカル位置に最適なサイズを有する可変窓ＶＷのもとに精度よく取得されることになる。
【０２７２】
また、明部と暗部のパターンラインの数が一定に維持されるような可変窓ＶＷのサイズは、パターン番号ＰＮが０である輝度画像において最小となる。したがって、パターン番号ＰＮが０である輝度画像を代表パターン画像として選択することにより、最小の可変窓ＶＷのサイズが可能になり、可変窓ＶＷを用いた後のフィルタ処理の計算負荷を抑えることが可能になる。
【０２７３】
本実施形態においては、その可変窓ＶＷが、サイズが可変である方形窓として構成されている。その可変窓ＶＷのサイズは、代表パターン画像の列方向には可変であるが、ライン方向には固定であるように設定されている。
【０２７４】
本実施形態においては、その可変窓ＶＷのサイズ、すなわち、代表パターン画像の列方向におけるサイズが、その代表パターン画像の実際のパターンライン周期を適応的に反映するように設定される。そのため、可変窓ＶＷのサイズを設定するために、代表パターン画像の実際のパターンライン周期分布が事前に判明していることが必要である。
【０２７５】
よって、本実施形態においては、可変窓ＶＷのサイズの設定に先立ち、サイズが固定された固定窓が代表パターン画像に対して設定される。その設定された固定窓によって捕捉される複数個の連続画素が複数個の注目画素として選択され、それら選択された注目画素の輝度値に基づき、代表パターン画像の実際のパターンライン周期分布が取得される。
【０２７６】
本実施形態においては、さらに、代表パターン画像における複数個の注目画素の輝度値に対してＦＦＴ(Fast Fourier Transform：高速フーリエ変換）処理が施され、それにより、代表パターン画像の列方向において輝度値変化の周波数成分のそれぞれについて強度（例えば、パワースペクトル）が取得される。ここに、「周波数成分」は、１個の固定窓によって捕捉される複数個の注目画素を列方向に辿った場合に、輝度値の変化が反復される反復回数を意味する。
【０２７７】
本実施形態においては、代表パターン画像において列方向に連続的に並んだ複数個の連続画素のそれぞれが順次注目画素に選定され、その選定された各注目画素ごとにパターンライン周期が、代表パターン画像の輝度値分布に基づいて取得される。
【０２７８】
以上、このコード画像生成プログラム１１４ｄを原理的に説明したが、以下、図２２を参照することにより、時系列的に説明する。
【０２７９】
このコード画像生成プログラム１１４ｄにおいては、まず、Ｓ５００１において、パターン番号ＰＮが０であるパターン光が投影された被写体Ｓが撮像された輝度画像が輝度画像格納部１１６ｃから、代表パターン画像として読み込まれる。
【０２８０】
次に、Ｓ５００２において、その代表パターン画像につき、前記読み込まれた輝度画像に基づき、前述のＦＦＴ変換によるアプローチにより、代表パターン画像において列方向に連続的に並んだ各画素ごとにパターンライン周期が演算される。演算された複数個のパターンライン周期は各画素（各列方向画素位置）に関連付けて周期分布格納部１１６ｐに格納される。
【０２８１】
続いて、Ｓ５００３において、演算された複数個のパターンライン周期に基づき、可変窓ＶＷの特性がローカルに設定される。本実施形態においては、可変窓ＶＷのライン方向サイズは、その可変窓ＶＷが設定される代表パターン画像上の位置にかかわらず、変化しないように設定されるのに対し、可変窓ＶＷの列方向サイズは、各列方向画素位置に関連付けて演算されたパターンライン周期の整数倍に相当するように設定される。
【０２８２】
その後、Ｓ５００４において、代表パターン画像に対して可変窓ＶＷが、ライン方向と列方向とに沿って平面的に、かつ、各画素に関連付けて設定される。それにより、各画素ごとに、可変窓ＶＷ内に存在する複数個の画素の輝度値の平均値がローカルな閾値として演算される。このＳ５００４においては、さらに、演算された閾値が各画素に割り当てられた閾値画像が生成される。生成された閾値画像は閾値画像格納部１１６ｑに格納される。
【０２８３】
続いて、Ｓ５００５において、パターン番号ＰＮが０に初期化され、その後、Ｓ５００６において、パターン番号ＰＮの現在値が最大値ＰＮｍａｘより小さいか否かが判定される。今回は、パターン番号ＰＮの現在値が０であるため、判定がＮＯとなり、Ｓ５００７に移行する。
【０２８４】
このＳ５００７においては、パターン番号ＰＮの現在値と等しいパターン番号ＰＮが割り当てられた輝度画像の輝度値と、前記生成された閾値画像の閾値とが、各画素ごとに互いに比較される。その比較結果は、各画素ごとに２値化画像に反映される。具体的には、輝度画像の輝度値が閾値より大きい場合には、「１」を表すデータが、２値化画像のうち対応する画素位置に関連付けて２値化画像格納部１１６ｒに格納され、一方、輝度画像の輝度値が閾値より大きくはない場合には、「０」を表すデータが、２値化画像のうち対応する画素位置に関連付けて２値化画像格納部１１６ｒに格納される。
【０２８５】
その後、Ｓ５００８において、パターン番号ＰＮが１だけインクリメントされる。続いて、Ｓ５００６に戻り、パターン番号ＰＮの現在値が最大値ＰＮｍａｘより小さいか否かが判定される。今回も、最大値ＰＮｍａｘより小さい場合には、判定がＮＯとなり、Ｓ１０７に移行する。
【０２８６】
Ｓ５００６ないしＳ５００８の実行がパターン光の種類の数と同数回繰り返された結果、パターン番号ＰＮの現在値が最大値ＰＮｍａｘより小さくはない値になると、Ｓ５００６の判定がＹＥＳとなり、Ｓ５００９に移行する。
【０２８７】
このＳ５００９においては、各画素ごとに、最大値ＰＮｍａｘと同数枚の２値化画像から画素値（「１」または「０」）が、パターン番号ＰＮが０である輝度画像に対応する２値化画像から、パターン番号ＰＮが（ＰＮｍａｘ−１）である輝度画像に対応する２値化画像に至る順序に従って抽出され、最下位ビットＬＳＭから最上位ビットＭＳＢに至る順序に従って並んだ空間コードが生成される。各画素ごとの空間コードのビット数は、最大値ＰＮｍａｘと同数である。各画素ごとに空間コードが生成されることにより、今回の被写体Ｓに対応する空間コード画像が生成される。生成された空間コードは、各画素位置に関連付けて空間コード格納部１１６ｄに格納される。例えば、最大値ＰＮｍａｘが８である場合には、生成される空間コードは０から２５５までの範囲内の値を有する。
【０２８８】
以上で、このコード画像生成プログラム１１４ｄの一回の実行が終了する。
【０２８９】
その後、図２１におけるＳ４００３において、コード境界抽出プログラム１１４ｅの実行により、コード境界座標検出処理が実施される。前述の空間コード化法によるコード化は、各画素単位で行われるため、実際のパターン光における明暗の境界線と、前記生成されたコード画像における空間コードの境界線（ある空間コードが割り当てられた領域と別の空間コードが割り当てられた領域との間の境界線）との間にサブピクセル精度の誤差が生ずる。そのため、このコード境界座標検出処理は、空間コードの境界座標値をサブピクセル精度で検出することを目的として実施される。
【０２９０】
例えば、各パターン光のライン方向と交差する離散的な基準線の位置をＣＣＤ座標系において２５５本設定すると、最大値ＰＮｍａｘが８（空間コードを２５６有するため、境界は２５５）である場合には、図１３におけるＳ４００３（コード境界抽出プログラム１１４ｅの実行）により、最大約６万５千の空間コードの境界座標値が検出される。
【０２９１】
検出されたコード境界座標値はコード境界座標格納部１１６ｅに格納される。コード境界座標値は、ＣＣＤ７０の結像面に設定された２次元座標系であるＣＣＤ座標系ｃｃｄｘ−ｃｃｄｙにおいて定義される。
【０２９２】
続いて、Ｓ４００４において、レンズ収差補正プログラム１１４ｆの実行により、レンズ収差補正処理が実施される。このレンズ収差補正処理は、撮像光学系３０に入射した光束の実際の結像位置であってその撮像光学系３０の収差の影響を受けたものを、その撮像光学系３０が理想レンズであったならば結像されるはずである理想結像位置に近づくように補正する処理である。
【０２９３】
このレンズ収差補正処理により、Ｓ４００３において検出されたコード境界座標値が、撮像光学系３０の歪みなどに起因した誤差が除去されるように補正される。そのようにして補正されたコード境界座標は収差補正座標格納部１１６ｇに格納される。
【０２９４】
それらコード境界座標検出処理およびレンズ収差補正処理はいずれも、本発明を理解するために不可欠な事項ではなく、しかも、本出願人の特願２００４−１０５４２６号明細書に詳細に開示されているため、それを参照することによって引用することにより、本明細書においては詳細な説明を省略する。
【０２９５】
その後、Ｓ４００５において、三角測量演算プログラム１１４ｇの実行により、三角測量の原理による実空間変換処理が実施される。この実空間変換処理が実施されれば、三角測量の原理により、前述の、ＣＣＤ座標系ｃｃｄｘ−ｃｃｄｙ上のコード境界座標値であって収差補正が施されたものが、実空間に設定された３次元座標系である実空間座標系Ｘ−Ｙ−Ｚ上の３次元座標値に変換され、その結果、３次元色形状検出結果としての３次元座標値が取得される。その取得された３次元座標値は３次元座標格納部１１６ｈに格納される。
【０２９６】
ここで、図２３を参照することにより、三角測量の原理により、ＣＣＤ座標系ｃｃｄｘ−ｃｃｄｙ上の２次元座標値を実空間座標系Ｘ−Ｙ−Ｚ上の３次元座標値に変換する手法を詳細に説明する。
【０２９７】
本実施形態においては、実空間座標系Ｘ−Ｙ−Ｚが３次元入力装置１０に固定され、この実空間座標系Ｘ−Ｙ−Ｚ上において、撮像対象である被写体Ｓが撮像される。図２３に示すように、この実空間座標系Ｘ−Ｙ−Ｚは３次元入力装置１０に対し、Ｘ軸は水平方向に延び、Ｙ軸は垂直方向に延び、Ｚ軸は撮像光学系３０の光軸方向に延びるように位置決めされている。図２３（ａ）には、実空間座標系Ｘ−Ｙ−ＺがＸ軸方向に観察された状態で示され、図２３（ｂ）には、実空間座標系Ｘ−Ｙ−ＺがＹ軸方向に観察された状態で示されている。この実空間座標系Ｘ−Ｙ−Ｚは３次元入力装置１０に対し、原点が、撮像光学系３０の入力瞳位置からＺ軸に沿って距離ＶＰＺ離れた位置に位置するように設定されている。
【０２９８】
この実空間座標系Ｘ−Ｙ−Ｚにおいては、投影部１２から被写体Ｓへの投影角度が「θｐ」で表記され、撮像光学系３０の光軸と投影部１２の光軸との距離が「Ｄ」で表記されている。投影角度θｐは、各画素ごとに割り当てられた空間コードによって一義的に特定される。
【０２９９】
この実空間座標系Ｘ−Ｙ−Ｚにおいては、さらに、被写体Ｓ上の対象点ｔａｒｇｅｔからの反射光がＣＣＤ７０に入射する光路が逆向きに延長された直線とＸ−Ｙ平面との交点のＹ座標値が「Ｙｔａｒｇｅｔ」、Ｘ座標値が「Ｘｔａｒｇｅｔ」でそれぞれ表記されている。この実空間座標系Ｘ−Ｙ−Ｚにおいては、さらに、撮像光学系３０のＹ方向の視野が、「Ｙｆｔｏｐ」で示す表記される点から「Ｙｆｂｏｔｔｏｍ」で表記される点までの領域として定義され、Ｘ方向の視野が、「Ｘｆｓｔａｒｔ」で表記される点から「Ｘｆｅｎｄ」で表記される点までの領域として定義されている。さらに、ＣＣＤ７０のＹ軸方向における長さ（高さ）が「Ｈｃ」で表記され、Ｘ軸方向における長さ（幅）が「Ｗｃ」で表記されている。
【０３００】
このように定義された実空間座標系Ｘ−Ｙ−Ｚ上においては、ＣＣＤ７０のＣＣＤ座標系上の任意座標値（ｃｃｄｘ，ｃｃｄｙ）に対応する実空間座標系上の３次元座標値（Ｘ，Ｙ，Ｚ）は、
【０３０１】
（ａ）被写体Ｓ上の対象点ｔａｒｇｅｔ（Ｘ，Ｙ，Ｚ）（図２３において引出し線を付して「（ａ）」示す。）と、
【０３０２】
（ｂ）撮像光学系３０の入力瞳位置（図２３において引出し線を付して「（ｂ）」示す。）と、
【０３０３】
（ｃ）投影光学系３２の出力瞳位置（図２３において引出し線を付して「（ｃ）」示す。）と、
【０３０４】
（ｄ）撮像光学系３０の入力瞳位置と被写体Ｓ上の対象点を通る直線とＸ−Ｙ平面との交点（Ｘｔａｒｇｅｔ，Ｙｔａｒｇｅｔ）（図２３において引出し線を付して「（ｄ）」示す。）と、
【０３０５】
（ｅ）投影光学系３２の出力瞳位置と被写体Ｓ上の対象点を通る直線とＸ−Ｙ平面との交点（図２３において引出し線を付して「（ｅ）」示す。）と
【０３０６】
に関する関係を示す次の５つの式を解くことにより、取得される。
【０３０７】
（１）Ｙ＝（ＰＰＺ−Ｚ）・ｔａｎθｐ−Ｄ＋ｃｍｐ（Ｘｔａｒｇｅｔ）
【０３０８】
（２）Ｙ＝−（Ｙｔａｒｇｅｔ／ＶＰＺ）Ｚ＋Ｙｔａｒｇｅｔ
【０３０９】
（３）Ｘ＝−（Ｘｔａｒｇｅｔ／ＶＰＺ）Ｚ＋Ｘｔａｒｇｅｔ
【０３１０】
（４）Ｙｔａｒｇｅｔ＝Ｙｆｔｏｐ−（ｃｃｄｃｙ／Ｈｃ）×（Ｙｆｔｏｐ−Ｙｆｂｏｔｔｏｍ）
【０３１１】
（５）Ｘｔａｒｇｅｔ＝Ｘｆｓｔａｒｔ＋（ｃｃｄｃｘ／Ｗｃ）×（Ｘｆｅｎｄ−Ｘｆｓｔａｒｔ）
【０３１２】
ただし、式（１）における「ｃｍｐ（Ｘｔａｒｇｅｔ）」は、撮像光学系２０と投影部１２とのズレを補正する関数であり、ズレが無い理想的な場合には、０とみなすことができる。
【０３１３】
さらに、この実空間変換処理においては、実画像における任意点の座標値（ｃｃｄｘ，ｃｃｄｙ）が、理想カメラで撮像された画像における座標値（ｃｃｄｃｘ，ｃｃｄｃｙ）に変換される。この変換は、次の３つの式、すなわち、カメラキャリブレーションのための近似式を用いて行われる。
【０３１４】
（６）ｃｃｄｃｘ＝（ｃｃｄｘ−Ｃｅｎｔｘ）／（１＋ｄｉｓｔ／１００）＋Ｃｅｎｔｘ
【０３１５】
（７）ｃｃｄｃｙ＝（ｃｃｄｙ−Ｃｅｎｔｙ）／（１＋ｄｉｓｔ／１００）＋Ｃｅｎｔｙ
【０３１６】
（８）ｈｆａ＝ａｒｃｔａｎ［（（（ｃｃｄｘ−Ｃｅｎｔｘ）２    ＋（ｃｃｄｙ−Ｃｅｎｔｙ）２）０．５）×ｐｉｘｅｌｌｅｎｇｔｈ／ｆｏｃａｌｌｅｎｇｔｈ］
【０３１７】
ただし、収差量ｄｉｓｔ（％）は、半画角ｈｆａ（ｄｅｇ）の関数ｆを用いてｄｉｓｔ＝ｆ（ｈｆａ）と記述される。また、撮像光学系３０の焦点距離は、「ｆｏｃａｌｌｅｎｇｔｈ（ｍｍ）」で表記され、ｃｃｄ画素長は、「ｐｉｘｅｌｌｅｎｇｔｈ（ｍｍ）」で表記され、ＣＣＤ７０におけるレンズの中心の座標値は、（Ｃｅｎｔｘ，Ｃｅｎｔｙ）として定義されている。
【０３１８】
この実空間座標系Ｘ−Ｙ−Ｚにおいては、図２３に示すように、光束が投影部１２から被写体Ｓ上の対象点ｔａｒｇｅｔに入射する光路が同じ向きに延長された直線とＸ−Ｙ平面との交点のＹ座標値が「Ｙｐｔａｒｇｅｔ」、Ｘ座標値が「Ｘｐｔａｒｇｅｔ」でそれぞれ表記されている。さらに、投影部１２の出力瞳位置が（０，０，ＰＰＺ）として定義されている。さらに、投影部１２のＹ方向の視野が、「Ｙｐｆｔｏｐ」で表記される点から「Ｙｐｆｂｏｔｔｏｍ」で表記される点までの領域として定義され、Ｘ方向の視野が、「Ｘｐｆｓｔａｒｔ」で表記される点から「Ｘｐｆｅｎｄ」で表記される点までの領域として定義されている。さらに、投影機構６６のＹ軸方向における長さ（高さ）が「Ｈｐ」で表記され、Ｘ軸方向における長さ（幅）が「Ｗｐ」で表記されている。
【０３１９】
Ｓ４００５においては、被写体Ｓの３次元形状を複数個の３次元頂点の集まりとして空間離散的に計測するために、２次元的なコード画像が、各パターン光のライン方向と交差する離散的な複数本の基準線に関して空間離散的に参照される。これにより、そのコード画像の外周境界上の複数個の離散点にそれぞれ対応する複数個の３次元頂点が取得されるのみならず、そのコード画像の内部の複数個の離散点（Ｓ４００３において検出されたコードの境界座標点）にそれぞれ対応する複数個の３次元頂点が取得される。
【０３２０】
図２４には、図１６におけるＳ１２３０が３次元色形状検出結果生成サブルーチンとして概念的にフローチャートで表されている。
【０３２１】
まず、Ｓ６００１において、前述の実空間３次元座標系に座標変換された３次元頂点群の各実座標空間座標値に対応するＲＧＢ値（Ｒ輝度値、Ｇ輝度値およびＢ輝度値）が前述の表面色画像から抽出される。
【０３２２】
実空間座標系と、表面色画像を定義する平面座標系との関係は、前述の三角測量計算によって幾何学的に互いに対応付けられている。すなわち、コード画像、すなわち、被写体Ｓの３次元形状を計測するための２次元画像である形状画像を定義する平面座標系を実空間３次元座標系に計算によってマッピングさせるために用いられる関数が存在する場合に、その関数の逆関数を用いることにより、実空間３次元座標系を、表面色画像を定義する平面座標系に計算によってマッピングさせることが可能なのである。したがって、このＳ６００１においては、２次元的な表面色画像から、各３次元頂点ごとに、それに対応する表面色値すなわちＲＧＢ値を抽出することが可能である。
【０３２３】
次に、Ｓ６００２において、各頂点ごとに、対応する実空間座標値とＲＧＢ値とが組み合わされて色形状情報が生成される。さらに、その生成された色形状情報が、対応する頂点に直接にまたは間接に関連付けてワーキングエリア１２０にローカル保存される。
【０３２４】
続いて、Ｓ６００３において、被写体Ｓの表面形状を複数個のポリゴンの一例である三角形に分割することによって近似的に表現するために、その被写体Ｓについて取得された複数個の頂点のうち、距離的に互いに近接する複数個の頂点が３個ずつ、グループ分けされる。各グループごとに、３個の頂点が互いに連結されることにより、１個のポリゴンが形成される。
【０３２５】
その後、Ｓ６００４において、各ポリゴンごとに、そのポリゴンを形成するために互いに連結すべき３個の頂点の組合せがポリゴン情報として、各ポリゴンに直接にまたは間接に関連付けてワーキングエリア１２０にローカル保存される。
【０３２６】
以上で、この３次元色形状検出結果生成サブルーチンの一回の実行が終了し、それに伴い、図１６に示す３次元色形状検出処理ルーチンの一回の実行が終了する。
【０３２７】
以上の説明から明らかなように、本実施形態においては、投影部１２（鏡筒２４、投影光学系３２、ＬＥＤ６２、光源レンズ６４、投影機構６６およびモータドライバ８６）と、コンピュータ１１０のうち図１７におけるＳ２００１，Ｓ２００２，Ｓ２００２ａ，Ｓ２００３，Ｓ２００４，２００６ないしＳ２００９およびＳ２０１１を実行する部分とが互いに共同して前記（１）項における「投影部」の一例を構成しているのである。
【０３２８】
さらに、本実施形態においては、撮像部１４（撮像光学系３０、ＣＣＤ７０およびＣＣＤインタフェース８８）と、コンピュータ１１０のうち図１７におけるＳ２００５およびＳ２０１０を実行する部分とが互いに共同して前記（１）項における「撮像部」の一例を構成しているのである。
【０３２９】
さらに、本実施形態においては、処理部１６（特に、コンピュータ１１０のうち図１３、図１４、図１６、図１７、図２１、図２２および図２４に示す複数のステップのうち撮像部１４に関連するステップを除くものを実行する部分）が前記（１）項における「処理部」の一例を構成しているのである。
【０３３０】
さらに、本実施形態においては、投影機構６６のうち、供給ローラ２２０および巻き取りローラ２２６を除く部分が前記（１）項における「送り装置」の一例を構成し、それら供給ローラ２２０および巻き取りローラ２２６がそれぞれ同項における「屈曲装置」の一例を構成しているのである。
【０３３１】
さらに、本実施形態においては、供給ローラ２２０および巻き取りローラ２２６がそれぞれ前記（２）項における「収容装置」の一例を構成し、それら供給ローラ２２０および巻き取りローラ２２６がそれぞれ前記（３）項における「ローラ」の一例を構成し、スプリング２４６が前記（４）項における「テンション付与装置」の一例を構成しているのである。
【０３３２】
さらに、本実施形態においては、複数個の送り穴２５０が前記（５）項における「複数個のマスク側係合部」の一例を構成し、複数個の歯２５４および複数個の歯２５６が同項における「送り装置側係合部」の一例を構成しているのである。
【０３３３】
さらに、本実施形態においては、位置基準穴２８０が前記（６）項における「第１被検出部」の一例を構成し、位置センサ３００が同項における「第１センサ」の一例を構成しているのである。
【０３３４】
さらに、本実施形態においては、ＩＤ穴２９０，２９２，２９４が互いに共同して前記（７）項における「第２被検出部」の一例を構成し、第１ないし第３のＩＤセンサ３１０ないし３１４が互いに共同して同項における「第２センサ」の一例を構成しているのである。
【０３３５】
さらに、本実施形態においては、コンピュータ１１０のうちモータ制御プログラム１１４ｈを実行するための部分が前記（９）項における「コントローラ」の一例を構成しているのである。
【０３３６】
次に、本発明の第２実施形態を説明する。ただし、本実施形態は、第１実施形態に対し、マスクが異なるのみで、他の要素については共通するため、異なる要素についてのみ詳細に説明し、共通する要素については、同一の符号または名称を使用して引用することにより、重複した説明を省略する。
【０３３７】
図２５には、本実施形態に従う３次元入力装置１０の投影機構６６が用いるマスク３３０が部分的に正面図で示されている。このマスク３３０は、第１実施形態におけるマスク２００と同様に、マスク３３０の長さ方向において複数のフレーム２０２が一列に並んで割り当てられるとともに、各フレーム２０２ごとに、少なくとも１個の貫通穴２０４が形成されることにより、ストライプ状の開口パターンが形成されている。
【０３３８】
本実施形態においては、第１実施形態とは異なり、マスク３３０において各貫通穴２０４の長さ方向がマスク３３０の幅方向すなわちマスク３３０の送り方向と直角な方向に一致させられている。そのため、マスク３３０の曲げ剛性が、第１実施形態におけるマスク２００に比較し、長さ方向において変化する傾向が強い。しかしながら、本実施形態においては、その傾向を解消ないしは軽減すべく、マスク３３０に補強部３４０が形成されている。このマスク３３０は、貫通穴２０４の向きおよび補強部３４０の存在以外の点については、マスク２００と共通する。
【０３３９】
本実施形態においては、その補強部３４０が、マスク３３０の断面係数の増加によってそれの曲げ剛性を増加させるためにマスク３３０に形成されている。具体的には、補強部３４０は、マスク３３０のうちフレーム２０２を除く両側縁部３５０にそれぞれ割り当てられており、それにより、各側縁部３５０の幅寸法が通常より増加させられている。補強部３４０は、各側縁部３５０のうち、通常の幅寸法より延長された延長部に相当する。各側縁部３５０に補強部３４０が追加された結果、例えば、各側縁部３５０の幅寸法が各貫通穴２０４の長さの約８０パーセントに当たる長さ以上の長さを有する。
【０３４０】
したがって、本実施形態によれば、マスク３３０において各貫通穴２０４の長さ方向がマスク３３０の幅方向に一致するにもかかわらず、補強部３４０により、マスク３３０の曲げ剛性がそれの長さ方向において大きく変化することが抑制される。よって、マスク３３０が照射位置２２８において湾曲する量が減少し、ひいては、貫通穴２０４の向きに起因した３次元入力装置１０の３次元入力精度の低下が抑制される。
【０３４１】
以上、本発明の実施の形態のうちのいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記［発明の開示］の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【図面の簡単な説明】
【０３４２】
【図１】本発明の第１実施形態に従う３次元入力装置１０の外観を示す斜視図である。
【図２】図１におけるケーシング２０の内部の構成を示す平面図である。
【図３】図２における投影部１２を拡大して示す平面図、および図２における光源レンズ６４を拡大して示す正面図である。
【図４】図３における複数個のＬＥＤ６２の配列を説明するための側面図、１個のＬＥＤ６２によって個別的に実現される照度分布を示すグラフ、それら複数個のＬＥＤ６２を示す正面図、およびそれら複数個のＬＥＤ６２により総合的に実現される合成照度分布を示グラフである。
【図５】図１に示す３次元入力装置１０の電気的構成を概念的に表すブロック図である。
【図６】図２における投影機構６６を示す正面図である。
【図７】図６に示す投影機構６６を示す部分側面断面図である。
【図８】図６におけるマスク２００を部分的に拡大して示す正面図である。
【図９】図６におけるマスク２００を部分的に示す正面図および図５における位置センサ３００および第１ないし第３のＩＤセンサ３１０ないし３１４をマスク２００と共に示す側面図である。
【図１０】図９における位置センサ３００のＰＤ信号および第１ないし第３のＩＤセンサ３１０ないし３１４のＳ１ないしＳ３信号を説明するためのタイミングチャートである。
【図１１】図６におけるマスク２００における貫通穴２０４の配列による効果を説明するための正面図および側面図である。
【図１２】図１１におけるマスク２００の湾曲量と被写体Ｓ上における焦点面の湾曲量との関係を説明するための側面図である。
【図１３】図５におけるカメラ制御プログラムにおいて実行されるメイン処理を概念的に表すフローチャートである。
【図１４】図１３におけるＳ１０８において実行される立体画像処理を概念的に表すフローチャートである。
【図１５】図１４の立体画像処理において採用される空間コード化法の原理を説明するための平面図および側面図と、２組のマスクパターンを示す平面図とである。
【図１６】図１４におけるＳ１００７において実行される３次元色形状検出処理を３次元色形状検出処理ルーチンとして概念的に表すフローチャートである。
【図１７】図１４におけるＳ１２１０を撮像処理プログラム１１４ｂとして概念的に表すフローチャートである。
【図１８】図１７におけるＳ２００ａをモータ制御プログラム１１４ｈとして概念的に表すフローチャートである。
【図１９】図１７におけるＳ２００４において実行される投影処理を投影処理サブルーチンとして概念的に表すフローチャートである。
【図２０】図１に示す３次元入力装置１０の作動の一例を説明するためのタイミングチャートである。
【図２１】図１６におけるＳ１２２０を３次元計測処理サブルーチンとして概念的に表すフローチャートである。
【図２２】図２１におけるＳ４００２において実行されるコード画像生成プログラム１１４ｄを概念的に表すフローチャートである。
【図２３】図２１におけるＳ４００５の実行によって２次元のＣＣＤ座標系と３次元の実空間座標系との間において行われる座標変換と、２次元のＬＣＤ座標系と３次元の実空間座標系との間とにおいて座標変換とを説明するための側面図および平面図である。
【図２４】図１４におけるＳ１２３０を３次元色形状検出結果生成ルーチンとして概念的に表すフローチャートである。
【図２５】本発明の第２実施形態に従う３次元入力装置１０の投影機構６６が用いるマスク３３０を部分的に示す正面図である。
【符号の説明】
【０３４３】
１０  ３次元入力装置
１２  投影部
１４  撮像部
１６  処理部
６５  モータ
８６  モータドライバ
１１０  コンピュータ
２００  マスク
２０２  フレーム
２０４  貫通穴
２２０  供給ローラ
２２２  カイドローラ
２２４  送りローラ
２２６  巻き取りローラ
２２８  照射位置
２３０  直線部
２５０  送り穴
２５２  パーフォレーション
２５４  歯
２５６  歯
２８０  位置基準穴
２８２  ＩＤ穴領域
２９０  ＩＤ穴
２９２  ＩＤ穴
２９４  ＩＤ穴
３００  位置センサ
３１０  第１のＩＤセンサ
３１２  第２のＩＤセンサ
３１４  第３のＩＤセンサ
３３０  マスク
【図１】
2006266957.tif 000003
【図２】
2006266957.tif 000004
【図３】
2006266957.tif 000005
【図４】
2006266957.tif 000006
【図５】
2006266957.tif 000007
【図６】
2006266957.tif 000008
【図７】
2006266957.tif 000009
【図８】
2006266957.tif 000010
【図９】
2006266957.tif 000011
【図１０】
2006266957.tif 000012
【図１１】
2006266957.tif 000013
【図１２】
2006266957.tif 000014
【図１３】
2006266957.tif 000015
【図１４】
2006266957.tif 000016
【図１５】
2006266957.tif 000017
【図１６】
2006266957.tif 000018
【図１７】
2006266957.tif 000019
【図１８】
2006266957.tif 000020
【図１９】
2006266957.tif 000021
【図２０】
2006266957.tif 000022
【図２１】
2006266957.tif 000023
【図２２】
2006266957.tif 000024
【図２３】
2006266957.tif 000025
【図２４】
2006266957.tif 000026
【図２５】
2006266957.tif 000027