以下、本発明のさらに具体的な実施の形態のうちのいくつかを図面に基づいて詳細に説明する。
図1には、本発明の一実施形態に従う3次元入力装置10の外観が斜視図で示されている。この3次元入力装置10は、複数種類のストライプ状のパターン光の被写体S(物体)への投影と、被写体Sの撮像と、その撮像結果に基づき、被写体Sの3次元情報および表面色情報をコンピュータによって取得する信号処理とを行うように設計されている。
図1ないし図5には、3次元入力装置10の外部構成が示される一方、図6ないし図12には、3次元入力装置10の内部構成が示されている。以下、まず、外部構成を説明し、次に、内部構成を説明する。
図1に示すように、3次元入力装置10は、測定ヘッドMHと、回転テーブルユニットRTと、ホルダHDとを含むように構成されている。
測定ヘッドMHは、被写体Sを光学的に撮像し、その撮像結果に基づいて被写体Sの3次元形状および表面色を測定するために設けられている。回転テーブルユニットRTは、測定ヘッドMHに対して被写体Sを割り出し回転させるごとに測定ヘッドMHによる被写体Sの撮像を可能にし、それにより、被写体Sの外面の全体領域を複数の部分領域に分割して撮像することを可能にするために設けられている。
被写体Sについては、各部分領域ごとの撮像によって複数の部分画像が取得される。ここに、「画像」という用語は、通常の平面画像のみならず、3次元物体の表面色情報とその3次元形状情報とを有する3次元画像をも包含するように解釈される。
それら取得された複数の部分画像は、それらから3次元形状情報が個々に取り出された後、形状ステッチ処理により、1つの形状ステッチ画像に結合される。続いて、その被写体Sについて取得された複数の部分画像における表面色情報(テクスチャ)が、その形状ステッチ画像にマッピングされる。それと共に、テクスチャステッチ処理により、その表面色情報によって表される複数の表面色が、それら複数の部分画像の継ぎ目において境界色差を有することなく接ぎ合わされる。それら処理により、その被写体Sについての3次元入力結果、すなわち、3次元色形状データが生成される。
図1に示すように、ホルダHDは、測定ヘッドMHに装着される一方、回転テーブルユニットRTを保持するために設けられている。このホルダHDは、それ自体変形可能である。具体的には、本実施形態においては、ホルダHDが、折畳みによって変形を実現するように設計されている。ホルダHDは、自身の変形により、回転テーブルユニットRTが測定ヘッドMHに対して展開される展開状態と格納される格納状態とを選択的に実現する。さらに、本実施形態においては、ホルダHDが測定ヘッドMHに着脱可能に装着される。
図1には、ホルダHDが展開状態において斜視図で示され、図2(a)には、測定ヘッドMHとホルダHDの一部とが展開状態において側面図で示され、図2(b)には、測定ヘッドMDが背面図で示されている。図3には、測定ヘッドMHが、ホルダHDから離脱された離脱状態において、背面図で示されている。図4には、回転テーブルユニットRTが正面断面図で示されている。
図5(a)には、格納状態(折り畳み状態)にあるホルダHDが測定ヘッドMHおよび回転テーブルユニットRTと共に、斜視図で示されている。図5(b)には、格納状態にあるホルダHDが測定ヘッドMHおよび回転テーブルユニットRTと共に、キャリングケースとしての外箱OC内に収容される様子が斜視図で示されている。3次元入力装置10は、図5(b)に示す収容状態において、持ち運ぶことが可能である。
図1に示すように、測定ヘッドMHは、被写体Sにパターン光を投影するための投影部12と、被写体Sを撮像するための撮像部14と、被写体Sの3次元情報および表面色情報の取得とを行うために信号処理を行う処理部16とを備えている。それら投影部12、撮像部14および処理部16は、測定ヘッドMHの、略直方体状を成すケーシング20に装着されている。
図1に示すように、そのケーシング20には、鏡筒24とフラッシュ26とが、それぞれが部分的にケーシング20の正面において露出する姿勢で装着されている。このケーシング20には、さらに、撮像部14の一部である撮像光学系30が、それのレンズの一部がケーシング20の正面において露出する姿勢で装着されている。その撮像光学系30は、それの露出部分において、被写体Sを表す画像光を受光する。
鏡筒24は、図1に示すように、ケーシング20の正面から突出しており、その内部において、図6に示すように、投影部12の一部である投影光学系32を収容している。投影光学系32は、複数枚の投影レンズ34と絞り36とを含むように構成されている。
鏡筒24は、投影光学系32を、焦点調節のために鏡筒ホルダ250内において全体的に移動可能である状態で保持し、さらに、この鏡筒24は、投影光学系32を損傷から保護している。鏡筒24の露出端面から、複数枚の投影レンズ34のうち最も外側に位置するものが露出している。投影光学系32は、その最も外側の投影レンズ34を最終出射面として、被写体Sに向かってパターン光を投影する。
フラッシュ26は、暗所撮影における不足照度を補充するために発光する光源であり、例えば、キセノンガスが充填された放電管を用いて構成されている。したがって、このフラッシュ26は、ケーシング20に内蔵されている充電器(図示しない)の放電により繰り返し使用することができる。
図1に示すように、ケーシング20には、それの上面において、レリーズボタン40が装着されている。図2(b)に示すように、ケーシング20には、さらに、それの背面において、モード切替スイッチ42(図2(b)に示す例においては、3個のボタンから成る。)と、4接点カーソルキー(方向キー)43と、モニタLCD44とが装着されている。それらモード切替スイッチ42および4接点カーソルキー43はそれぞれ、ファンクションボタンの一例を構成する。
レリーズボタン40は、3次元入力装置10を作動させるためにユーザによって操作される。このレリーズボタン40は、ユーザの操作状態(押下状態)が「半押し状態」である場合と「全押し状態」である場合とで異なる指令を発令できる2段階の押しボタン式のスイッチによって構成されている。レリーズボタン40の操作状態は処理部16によって監視される。処理部16によって「半押し状態」が検出されれば、よく知られたオートフォーカス(AF)および自動露出(AF)の機能が起動し、ピント、絞りおよびシャッタスピードが自動的に調節される。これに対し、処理部16によって「全押し状態」が検出されれば、撮像等が行われる。
モード切替スイッチ42は、3次元入力装置10の作動モードを、後述のSLOWモード(図2(b)において「S」で示す。)、FASTモード(図2(b)において「F」で示す。)およびオフモード(図2(b)において「OFF」で示す。)を含む複数種類のモードのいずれかとして設定するためにユーザによって操作される。このモード切替スイッチ42の操作状態は処理部16によって監視されており、モード切替スイッチ42の操作状態が処理部16によって検出されると、その検出された操作状態に対応するモードでの処理が3次元入力装置10において行われる。
モニタLCD44は、液晶ディスプレイ(Liquid Crystal Display)を用いて構成されており、処理部16から画像信号を受けて、画像をユーザに表示する。このモニタLCD44は、例えば、被写体Sの3次元形状の検出結果を表す画像(立体画像)等を表示する。
図2に示すように、ケーシング20には、さらに、RF(無線)インタフェースとしてのアンテナ50が装着されている。アンテナ50は、図6に示すように、RFドライバ52に接続されている。このアンテナ50は、被写体Sを立体画像として表すデータやその他の情報を、RFドライバ52を介して、図示しない外部インタフェースに無線によって送受信する。
ここで、図1を参照することにより、ホルダHDの構成を詳細に説明する。
ホルダHDは、複数枚の板状部材が一列に並ぶとともに互いに折畳み可能に連結されることにより、構成されている。すなわち、このホルダHDは、複数枚の板状部材が一列を成す姿勢で互いにヒンジ結合されることにより、構成されているのである。
具体的には、ホルダHDは、測定ヘッドMHが着脱可能に装着される板状のヘッドベース130と、回転テーブルユニットRTに装着された板状のテーブルベース132と、それらヘッドベース130とテーブルベース132との間に位置する、共に板状の第1の中継ベース134および第2の中継ベース136とを、折畳み可能に互いに連結された複数枚の板状部材として備えている。
図1に示すように、測定ヘッドMHは、概して、縦方向に長い直方体を成しており、その測定ヘッドMHの上面および下面と、正面および背面とを寸法に関して互いに比較すると、横寸法はほぼ共通するが、縦寸法は、正面および背面の方が上面および下面より長い。一方、後に図5を参照して詳述するが、ホルダHDの格納状態においては、ヘッドベース130が測定ヘッドMHの下面に装着され、第1の中継ベース134が測定ヘッドMHの正面を覆い、第2の中継ベース136が測定ヘッドMHの上面を覆い、テーブルベース132が測定ヘッドMHの背面を覆う。したがって、第1の中継ベース134およびテーブルベース132は、ヘッドベース130および第2の中継ベース136より、縦寸法が長い。
第1の中継ベース134の両面のうち、格納状態において測定ヘッドMHの正面に対向する面、すなわち、展開状態において露出する面には、3次元入力装置10の操作方法等に関するインストラクションがシール貼付等によって表示されるインクトラクション表示面が割り当てられている。
図1に示すように、ヘッドベース130と第1の中継ベース134とは、それらに共通の軸線を有するジョイント140により、互いに回動可能に連結されている。第1の中継ベース134と第2の中継ベース136とは、それらに共通の軸線を有するジョイント142により、互いに回動可能に連結されている。第2の中継ベース136とテーブルベース132とは、それらに共通の軸線を有するジョイント144により、互いに回動可能に連結されている。
ここで、図1および図3を参照することにより、測定ヘッドMHをヘッドベース130に着脱可能に装着する構造を説明する。
測定ヘッドMHは、ヘッドベース130の上面に機械的に係合することにより、そのヘッドベース130に装着される。その係合を実現するために、測定ヘッドMHは、図3に示すように、ヘッドベース130との係合部である下端部にヘッド沈座部150が形成されている。このヘッド沈座部150は、第1および第2の係合爪152,154を一対の雄側係合部として有している。
図3に示すように、それら第1および第2の係合爪152,154は、測定ヘッドMHの横方向、すなわち、ヘッドベース130の幅方向に互いに隔たる一対の位置において、それぞれ測定ヘッドMHの前後方向、すなわち、ヘッドベース130の長さ方向に延びるように形成されている。本実施形態においては、測定ヘッドMHがヘッドベース130にできる限り強固に固定されるようにするために、それら第1および第2の係合爪152,154間の距離ができる限り長くなるようにそれら第1および第2の係合爪152,154の各位置が選定されている。
図3に示すように、ヘッドベース130には、ヘッド沈座部150との機械的係合によってそのヘッド沈座部150を固定的に受容するヘッド受容部160が形成されている。このヘッド受容部160は、ヘッド沈座部150が嵌り入るヘッドベース沈座空隙162を備え、さらに、測定ヘッドMHの第1および第2の係合爪152,154にそれぞれ係合する第1および第2の爪突き当て部164,166を一対の雌側係合部として備えている。
第1の爪突き当て部164は、対応する第1の係合爪152に係合して、測定ヘッドMHがヘッドベース130から、それの上面に直角な方向に離脱することを阻止する固定爪突き当て部である。一方、第2の爪突き当て部166は、(a)対応する第2の係合爪154に係合して、測定ヘッドMHがヘッドベース130から、それの上面に直角な方向に離脱することを阻止する係合位置と、(b)対応する第2の係合爪154から離脱して、測定ヘッドMHがヘッドベース130から、それの上面に直角な方向に離脱することを許可する解放位置とに変位可能な可動爪突き当て部である。
第2の爪突き当て部166の一例は、ヘッドベース130の長さ方向(ヘッドベース130に対する測定ヘッドMHの装着・離脱時にその測定ヘッドMHが回転する回転平面に直角な方向)に延びるピボット軸線まわりにピボット可能なピボット部材170を含んでいる。
そのピボット部材170は、そのピボット軸線と同軸な軸線を有するジョイント172によってヘッドベース130にピボット可能に装着される。このピボット部材170は、対応する第2の係合爪154に機械的に係合してその第2の係合爪154が離脱することを阻止する可動係合部174を含んでいる。その可動係合部174が第2の係合爪154を上方から係合する向きにピボット部材170が常時、弾性部材としてのスプリング176によって付勢される。本実施形態においては、そのピボット部材170が、さらに、可動係合部174による係合を解除するためにユーザによって押圧操作される操作部178と、スプリング176の弾性力を拡大して可動係合部174に伝達するレバレッジ180とを含んでいる。
次に、図3を参照することにより、ヘッドベース130に対する測定ヘッドMHの着脱作業を説明する。
測定ヘッドMHをヘッドベース130に装着するためには、ユーザは、ピボット部材170の操作部178を、スプリング176の弾性力に抗して、可動係合部174が係合位置から解放位置に向かう解放方向に押圧する。その押圧状態で、ユーザは、ヘッド沈座部150がヘッドベース沈座空隙162内に進入しつつ第1の係合爪152が第1の爪突き当て部164内に進入して当接するように、測定ヘッドMHを概して垂直面内において回転させつつ下降させる。その後、ユーザは、操作部178の押圧を解除し、それにより、ピボット部材170がスプリング176の弾性回復力によって解放位置から係合位置に回動して、可動係合部174が第2の係合爪154に上方から係合して突き当たる。その結果、第1の係合爪152が第1の爪突き当て部164から上方に離脱することが阻止されるとともに、第2の係合爪154が第2の爪突き当て部166から上方に離脱することも阻止される。それにより、測定ヘッドMHがヘッドベース130から離脱することが阻止される。
これに対し、測定ヘッドMHをヘッドベース130から離脱するためには、ユーザは、上記の場合と同様にして、ピボット部材170の操作部178をスプリング176の弾性力に抗して、解放方向に押圧する。その押圧状態で、ユーザは、ヘッド沈座部150がヘッドベース沈座空隙162から退避しつつ第1の係合爪152が第1の爪突き当て部164から退避するように、測定ヘッドMHを概して垂直面内において回転させつつ上昇させて、測定ヘッドMHをヘッドベース130から離脱させる。その後、ユーザは、操作部178の押圧を解除し、それにより、ピボット部材170がスプリング176の弾性回復力によって解放位置から係合位置に復元する。
次に、図4を参照することにより、回転テーブルユニットRTを詳細に説明する。
この回転テーブルユニットRTは、被写体Sが載置されるべき回転テーブル184と、その回転テーブル184を回転可能に支持する支持フレーム186とを含んでいる。その支持フレーム186は、上板部188と下板部189とを含むように薄い中空箱状を成しており、上板部188の開口から回転テーブル184の上面が露出している。本実施形態においては、その支持フレーム186のうちの下板部189がテーブルベース132としても機能する。
回転テーブル184の上面は、撮像されるべき被写体Sが載置される載置面190である。一方、回転テーブル184の下面から、回転シャフト191が同軸に延び出しており、この回転シャフト191は、軸受け192を介して支持フレーム186に回転可能に支持されている。その軸受け192は、支持フレーム186に形成された軸受けホルダ193によって保持されている。
回転テーブル184を回転させるテーブルモータ194が支持フレーム186に装着されている。このテーブルモータ194を収容するモータボックス195が支持フレーム186に形成されている。
このモータボックス195は、支持フレーム186の上板部188の上面に、その上面から上方に突出する姿勢で形成されている。このモータボックス195の上面は、回転テーブル184の上面より高く設定されている。それにより、被写体Sが回転テーブル184と共に回転させられる際にその被写体Sが、回転テーブル184を同軸に投影した投影空間から外側にはみ出していると、モータボックス195のうち回転テーブル184の上面より上方に位置する部分が被写体Sに当接してその被写体Sの向きを変化させる。
したがって、モータボックス195は、テーブルモータ194の収容部として機能するのみならず、被写体Sが回転テーブル184に位置決めされる位置を規制する位置規制部196としても機能する。
テーブルモータ194の回転を回転テーブル184に伝達するために、テーブルモータ194の回転シャフトにモータギヤ197が同軸に固定され、このモータギヤ197にかみ合うテーブルギヤ198が回転テーブル184に同軸に固定されている。モータギヤ197は、テーブルギヤ198より小径であるため、テーブルギヤ198の回転速度が減速されて回転テーブル184に伝達される。
ところで、テーブルモータ194は、支持フレーム186の上板部188の上面から突出しないように支持フレーム186に装着することが可能である。一方、上板部188の上面のうち回転テーブル184が露出する部分を除く部分の上方空間にテーブルモータ194を配置しても、何ら支障がなく、むしろ、支持フレーム186の薄型化に有利である。
したがって、本実施形態によれば、テーブルモータ194を上板部188の上面から突出するように配置することにより、上述の位置規制部196としての機能に加えて、支持フレーム186の薄型化を容易にするという機能も実現される。
図5(a)には、測定ヘッドMHを前後面および上下面という4面において覆うようにホルダHDが折り畳まれた状態、すなわち、ホルダHDの格納状態において、測定ヘッドMH、ホルダHDおよび回転テーブルユニットRTが斜視図で示されている。ホルダHDは、格納状態においては、外形的に概して直方体状を成している。
図5(b)には、ホルダHDの格納状態において測定ヘッドMH、ホルダHDおよび回転テーブルユニットRTが外箱OC内に挿入されて収容される様子が斜視図で示されている。本実施形態においては、それら測定ヘッドMH、ホルダHDおよび回転テーブルユニットRTが、測定ヘッドMHが横倒しの状態で、外箱OC内に挿入される。
この3次元入力装置10は、複数種類のモードのうちユーザによって選択されたものに従って作動する。それらモードは、SLOWモードと、FASTモードと、オフモードとを含んでいる。SLOWモードは、被写体Sを低速で高精度で撮像する低速撮像モードであり、撮像精度優先モードである。FASTモードは、被写体Sを高速で低精度で撮像する高速撮像モードであり、撮像時間優先モードである。オフモードは、この3次元入力装置10の動作を停止させるモードである。
撮像部14は、被写体Sを撮像し、その撮像結果から、その被写体Sを表す全体画像を構成する複数個の画素のいずれかを間引いて形成される画素間引き画像と、いずれの画素も間引かずに形成される画素非間引き画像とを選択的に取り出すことが可能であるように構成されている。さらに、撮像部14は、被写体Sの撮像後、その撮像結果から画素間引き画像を、画素非間引き画像を取り出すのに必要な時間より短い時間で取り出すように構成されている。
CCDを用いた撮像の分野においては、被写体Sの撮像結果から画素間引き画像を取り出すために、加算方式と選択方式とがすでに知られている。
加算方式によれば、被写体Sを表す全体画像を構成する複数個の画素がグループ分けされた複数個の画素グループの各々に属する複数個の対象画素の照度検出値が各画素グループごとに加算され、その加算された照度を用いて、各画素グループに属する複数個の対象画素の照度検出値が均等に分散される。
これに対し、選択方式によれば、それら複数個の画素グループの各々に属する複数個の対象画素から、それら対象画素を代表する代表画素が各画素グループごとに選択され、その選択された代表画素の照度検出値を用いて、各画素グループに属する複数個の対象画素の照度検出値が均等に分散される。
本実施形態においては、撮像部14は、それら加算方式と選択方式とのうち予め選択されたものに従い、被写体Sの撮像結果から画素間引き画像を取り出すように設計されている。
被写体Sの撮像結果から画素間引き画像を取り出す間引き画像処理モードは、被写体Sを低速で高精度で撮像する低速撮像モードに適している。一方、被写体Sの撮像結果から画素非間引き画像を取り出す非間引き画像処理モードは、被写体Sを高速で低精度で撮像する高速撮像モードに適している。
したがって、本実施形態においては、ユーザによってFASTモードが選択されると、間引き画像処理モードが設定される一方、ユーザによってSLOWモードが選択されると、非間引き画像処理モードが設定される。
投影部12は、被写体Sにパターン光を投影するためのユニットである。この投影部12は、図6および図7に示すように、基板60と、LED62(例えば、金属基板に接合された単一のLED素子によって比較的に広い出射面から光を出力する高輝度高放熱タイプのLED)と、照明絞り63と、光源レンズ64と、送りモータ(例えば、パルスモータ)65を駆動源として板状の光変調体200を送る投影機構66と、投影光学系32とを、投影方向に沿って直列に備えている。
図7には、この投影部12のハードウエア構成のうち、基板60と、LED62と、照明絞り63と、光源レンズ64と、光変調体200と、投影光学系32とが詳細に示されている。図8には、この投影部12を含む3次元入力装置10全体のソフトウエア構成および電気的接続関係が詳細に示されている。図9ないし図11には、投影部12のハードウエア構成のうち投影機構66が詳細に示されており、図12ないし図14には、光変調体200が拡大されて示されている。
撮像部14は、被写体Sを撮像するためのユニットである。この撮像部14は、図6に示すように、撮像光学系30と、CCD(Charge Coupled Device)70とを、画像光の入射方向に沿って直列に備えている。このCCD70は、インターライントランスファー方式でプログレッシブ走査を行うように構成されている。
撮像光学系30は、図6に示すように、複数枚のレンズを用いて構成されている。この撮像光学系30は、よく知られたオートフォーカス機能および自動露出機能により、焦点距離、絞りおよびシャッタ時間を自動調整して外部からの光をCCD70上に結像する。
CCD70は、フォトダイオード素子などの光電変換素子をマトリクス状に配列して構成されている。このCCD70は、撮像光学系30を介してこのCCD70の表面に結像される画像の光の色および強さに応じた信号を各画素ごとに生成する。その生成された信号は、デジタルデータに変換されて処理部16に出力される。
図8にブロック図で表すように、処理部16は、フラッシュ26、レリーズボタン40およびモード切替スイッチ42にそれぞれ電気的に接続されている。処理部16は、さらに、モニタLCD44にはモニタLCDドライバ72を介して、アンテナ50にはRFドライバ52を介して、バッテリ74には電源インタフェース76を介してそれぞれ電気的に接続されている。それらフラッシュ26等は、処理部16によって制御される。
処理部16は、さらに、外部メモリ78およびキャッシュメモリ80にそれぞれ電気的に接続されている。処理部16は、さらに、LED62には光源ドライバ84を介して、投影機構66の送りモータ65には送りモータドライバ86を介して、CCD70にはCCDインタフェース88を介してそれぞれ電気的に接続されている。それらLED62等は、処理部16によって制御される。
外部メモリ78は、着脱可能なフラッシュROMであり、立体画像モードにおいて撮像された撮像画像や3次元情報(前述の3次元色形状データやそれに関連する情報を含む。)を記憶することが可能である。外部メモリ78を構成するために、例えば、SDカード(登録商標)、コンパクトフラッシュ(登録商標)カード等を使用することができる。
キャッシュメモリ80は、データの読み書きを高速で行い得る記憶装置である。キャッシュメモリ80は、例えば、デジカメモードにおいて撮像された撮像画像を高速でキャッシュメモリ80に転送し、処理部16で画像処理を行ってから外部メモリ78に格納することを可能にするために使用される。キャッシュメモリ80を構成するために、例えば、SDRAM、DDRRAM等を使用することができる。
電源インタフェース76、光源ドライバ84、送りモータドライバ86およびCCDインタフェース88はそれぞれ、バッテリ74、LED62、投影機構66の送りモータ65およびCCD70を制御する各種のIC(Integrated Circuit)によって構成されている。
図2(a)に示すように、測定ヘッドMHには、ACアダプタ端子90と、USB端子91と、テーブルモータ端子92とが設けられている。ACアダプタ端子90は、図6にも示すように、バッテリ74に電気的に接続されており、それにより、3次元入力装置10が外部の交流電源を電力源として利用することが可能となっている。USB端子91は、図6に示すように、USBドライバ93を介して処理部16に接続されている。テーブルモータ端子92は、図6に示すように、テーブルモータドライバ94を介して処理部16に接続されている。
図1に示すように、回転テーブルユニットRTのテーブルモータ194から電気ラインとしてのハーネス95が延び出している。このハーネス95は、第2の中継ベース136、第1の中継ベース134およびヘッドベース130をそれらの順に通過し、図2(a)に示すように、そのハーネス95の先端に接続されたL字プラグ96においてテーブルモータ端子92に接続されている。そのハーネス95は、測定ヘッドMHからテーブルモータ194に制御信号および電力を供給する電気ラインとして機能する。したがって、図8に示すように、テーブルモータ194がテーブルモータドライバ94を介して処理部16に接続されることになる。
図1に示すように、ハーネス95は、第2の中継ベース136を通過する位置がハーネス止め97によって規定され、第1の中継ベース134を通過する位置が2個のハーネス止め98,98によって規定されている。
なお付言するに、それら測定ヘッドMHとテーブルモータ194とを互いに接続する配線として、他の態様を採用することが可能であり、例えば、ハーネス95が各ベース130,132,134,136に埋設される態様を採用することが可能である。
前述のように、投影部12は、図7に示すように、基板60と、LED62と、照明絞り63と、光源レンズ64と、投影機構66と、投影光学系32とをパターン光の投影方向に沿って直列に備えている。基板60と、LED62と、照明絞り63と、光源レンズ64とにより、光源部68が構成されている。
基板60は、それにLED62が装着されることにより、その装着されたLED62との間において電気的な配線を行う。基板60は、例えば、アルミニウム製基板に絶縁性合成樹脂を塗布してから無電解メッキによってパターンを形成したものや、ガラスエポキシ基材をコアとする単層または多層構造の基板を使用して製作することができる。LED62は、投影機構66に向けて放射状のアンバー色の光を広い面積で発光する光源であり、表側が透明樹脂製であるLEDケーシング100内に収容されている。
図7に示すように、照明絞り63は、LED62から出力された光のうち不要な部分を遮蔽することにより、必要な部分のみを光源レンズ64に誘導するために設けられている。光源レンズ64は、LED62から放射状に発光される光を集光するレンズであり、その材質はアクリルに代表される光学プラスチックである。
本実施形態においては、図7に示すように、LED62から発光される放射状の光が、光源レンズ64によって効率良く集光され、LED62からの出射光が投影機構66の入射面106に、所定の円錐頂角を有する入射角特性を持って、その円錐の軸が略直角であるように、入射するとともに、指向性の高い放射光として投影機構66の出射面108から出射する。この意味において、光源レンズ64は、コリメートレンズとして機能する。図7には、その出射面108上において互いに隔たった2個の注目点A,Bにつき、それぞれの指向性特性が照度分布のグラフ(θ:半値拡がり半角)で表されている。
投影光学系32は、投影機構66を通過した光を被写体Sに向かって投影するための複数枚の投影レンズ34を含んでいる。それら投影レンズ34は、ガラス製レンズと光学プラスチック製レンズとの組合せから成るテレセントリックなレンズ構成を有している。
ここに、「テレセントリック」という用語は、ここで述べた入射側テレセントリック特性を例にとり説明するに、投影光学系32を通過する主光線が、入射側の空間では光軸に平行になり、入射瞳の位置が無限になる構成を意味する。
投影光学系32は、上述のようにテレセントリック特性を持ち、その入射開口角θNAが0.1程度であるため、入射開口角θNAとして垂直±5°以内の光のみが投影光学系32の内部の絞り36を通過できるように、投影光学系32の光路が規制されている。
したがって、本実施形態においては、投影光学系32のテレセントリック性により、投影機構66を垂直±5°内で通過する光のみを投影光学系32によって物体に投影し得る構成と相俟って、投影画像の画質向上を容易に図り得る。
その理由を説明するに、被投影体(本実施形態においては、光変調体200が該当するが、一般には、スライドや透過型液晶が該当する。)から出射する特定の角度成分のみが結像に供される方が、解像度特性、スペクトラム特性、照度分布特性、コントラスト特性等、大半の光学的特性の仕様上、有利であるからである。
ここで、図9ないし図11を参照することにより、投影部12のハードウエア構成のうち投影機構66を詳細に説明する。
この投影機構66は、光源部68からの入射光を複数種類のパターン光に選択的に変換し、それにより、被写体Sに投影されるパターン光の種類を切り替えて、それら複数種類のパターン光を順次被写体Sに投影するために設けられている。図9には、この投影機構66が正面図(投影機構66を投影光学系32の光軸方向において投影光学系32の側から見た図)で示されている。
この投影機構66は、光源部68からの入射光を複数種類のパターン光に選択的に変換し、それにより、被写体Sに投影されるパターン光の種類を切り替えるために、図9に示すように、板状を成して長さ方向に延びる光変調体200を、投影レンズ34の光軸に直交する姿勢で備えている。
この投影機構66は、送りモータ65によって往復直線運動させられるキャリッジ202を備えており、そのキャリッジ202に光変調体200が、その光変調体200の面に平行な面内において回転調整可能に装着されている。投影機構66は、その送りモータ65の往復回転運動により、光変調体200をそれの長さ方向に送る。
具体的には、図9に示すように、投影機構66は、ハウジング204(測定ヘッドMHのハウジングとしても機能する。)を備えている。そのハウジング204に送りモータ65が取り付けられている。そのハウジング204のうち互いに対向する2つの支持部206,206の間に、主ガイド210と副ガイド212とが、半径方向に隙間を隔てて互いに平行に延びる姿勢で配置されている。
それら主ガイド210と副ガイド212とはそれぞれ、両端において2つの支持部206,206にそれぞれ固定的に取り付けられている。それら主ガイド210と副ガイド212とはいずれも、同一の円形断面を有して真っ直ぐに延びており、素材は例えばステンレスであり、また、外形は例えば円筒度が3μm程度である精度で加工されている。それら主ガイド210と副ガイド212とはいずれも、光変調体200の背後に位置するLED62(図示しない)からの入射光と交差する方向に直線的に延びる送りガイドとして機能する。
それら主ガイド210と副ガイド212とにより、キャリッジ202が直線的に往復運動可能に案内される。その案内を実現するために、図9に示すように、キャリッジ202は、それの移動方向と直角な方向に隔たった嵌合部214とスライダ216とを備えている。
キャリッジ202は、嵌合部214において、主ガイド210の軸線まわりに摺動可能にその主ガイド210に支持される。具体的には、例えば、嵌合部214にすべり軸受(油浸ポーラス金属体から成り、主ガイド210との液体界面を用いた摺動を可能にする)218が固定され、そのすべり軸受218に主ガイド210が、介在する潤滑剤(グリス等)を用いて摺動可能に嵌合される。
それら主ガイド210とすべり軸受218とは、それらの間の嵌合すきま精度が最大でも12μmであるように、それら主ガイド210とすべり軸受218とのそれぞれの部品形状精度が管理されつつ、製造される。このような構成を採用することにより、それら主ガイド210とすべり軸受218との間の嵌合すきまに起因する光変調体200の位置ずれを12μm以内に抑えることが可能となる。その結果、被写体Sにパターン光を投影位置のずれが少ない状態で正確に投影することが可能となる。
投影光学系32の倍率を40倍であると仮定すれば、光変調体200の位置ずれが12μmを超えない限り、被写体S上におけるパターン光の位置ずれは、0.48mmを超えない。このように、がたの少ない高精度な直線運動機構と、移動する光変調体200という適切な組合せにより、被写体Sの3次元入力精度を向上させることが容易となる。
一方、キャリッジ202はスライダ216において、副ガイド212の外周面に接触する状態で、その外周面に沿って副ガイド212の軸線方向に摺動させられる。スライダ216は、副ガイド212の外周面に、介在する潤滑剤(グリス等)を介して摺動可能に押し付けられる。その押付けは、後述の送りベルト220に予め付与されたテンションを利用して行われる。
本実施形態においては、キャリッジ202が、主ガイド210まわりに正逆両方向にスライド回転可能にその主ガイド210に嵌合されているが、スライダ216と副ガイド212との当接により、それら正逆両方向のスライド回転が一方向的に機械的に阻止されている。一方、光変調体200は、後に詳述するが、選択的に実現されるべき複数種類のパターン光投影に対応する複数の平面的光学素子260(図12参照)を備えている。それら複数種類のパターン光投影に対応する複数の平面的光学素子260は同一平面内に直列して並んでいる。本実施形態においては、キャリッジ202が副ガイド212に当接している状態において光源部68からの入射光の進行方向が複数の平面的光学素子260に実質的に垂直入射するように、キャリッジ202が投影機構66に配置される。
なお付言するに、本実施形態においては、主ガイド210も副ガイド212も、円筒外周面を有するロッドとして構成されているが、少なくとも副ガイド212については、そのように構成することは不可欠ではない。例えば、副ガイド212は、それの軸線に平行に延びる平面部を有するように構成され、その平面部においてスライダ216を平面的に受けるものとすることが可能である。
図9に示すように、投影機構66は、さらに、キャリッジ202を主ガイド210および副ガイド212に沿って駆動する駆動機構222を備えている。この駆動機構222は、送りモータ65と、送りベルト220(閉曲線を形成する伝動媒体の一例)とを備えている。
図9に示すように、送りベルト220は、主ガイド210と副ガイド212との間の長い空間内に配置されている。その空間内に、駆動ギヤ(駆動回転体の一例)224と従動ギヤ(従動回転体の一例)226とが、キャリッジ202の移動方向において隔たって配置されている。それら駆動ギヤ224と従動ギヤ226とに送りベルト220が巻き掛けられている。送りベルト220の内周面に複数の歯が形成されており、それら歯は、駆動ギヤ224の外周面に形成された複数の歯と、従動ギヤ226の外周面に形成された複数の歯とにかみ合わされている。
それら駆動ギヤ224と従動ギヤ226とに送りベルト220が巻き掛けられる結果、その送りベルト220に2本の直線部が形成され、それら2本の直線部のうちの一方にキャリッジ202が固定されている。具体的には、送りベルト220の一端が、キャリッジ202においてそれの移動方向に隔たった2つの連結部230,230の一方に固定される一方、他端がそれら2つの連結部230,230の他方に固定されている。
駆動ギヤ224は、送りモータ65によって駆動され、それにより、送りベルト220の往復直線運動が実現される。一方、従動ギヤ226は、ハウジング204に固定された支持シャフト234に回転可能に支持されている。
図10には、投影機構66のうちの光変調体200およびキャリッジ202が、光源部68および投影光学系32と共に、平面図、すなわち、光源部68および投影光学系32に共通の光軸に直角な方向において見た図で示されている。
図10に示すように、光源部68は、コリメートレンズ240がコリメートレンズ鏡筒242に保持されて構成されている。コリメートレンズ240は、図6に示す照明絞り63と光源レンズ64とを含むように構成されている。
図10に示すように、投影光学系32は、鏡筒24が鏡筒ホルダ250にねじ込まれることによって構成されている。鏡筒24には、図6に示すように、複数の投影レンズ34と絞り36とが配列されている。鏡筒ホルダ250は、ハウジング204に形成された凹部252に嵌め込まれて位置決めされた状態で、ハウジング204に取り付けられている。
図9および図10に示すように、光変調体200は、複数の平面的光学素子260が基板264上に平面的に一列に並んで形成されている。
ここで、光変調体200の製造プロセスを説明するに、それら複数の平面的光学素子260の形状の反転形状が高精度で形成された金型(図示しない)を基板264の表面(出射面108となる面)に押し付けることにより、その金型の形状を高精度に基板264の表面に転写するインプリント成型技術が実施される。この転写により、基板264上に複数の平面的光学素子260が形成される。それら平面的光学素子60の形状、光学的作用および製法については、後に詳述する。
図9ないし図11に示すように、投影機構66は、さらに、光変調体200の、それに平行な面(光変調体200が移動させられる平面である移動平面)回転角度(光変調体200に平行な面内における傾き)を調整する回転角度調整機構270を備えている。その回転角度調整機構270は、基板264をキャリッジ202に、前記移動平面内において回転可能な状態で支持させる支持機構272と、基板264を前記移動平面内においてキャリッジ202に対して相対的に回転させる回転機構274とを含むように構成されている。本実施形態においては、光変調体200のうちの基板264が、複数の平面的光学素子260を支持する直線可動部材として機能する。
図9および図10に示すように、支持機構272は、基板264を、それの移動方向における両側位置においてそれぞれ保持する一対のホルダ280,280を備えている。図11には、それら一対のホルダ280,280のうち図9において右側に位置するホルダ280のみが代表的に、その周辺の要素と共に、拡大されて正面図で示されている。
図10に示すように、各ホルダ280は、基板264のうち対応する部分を、それの板厚方向において両側から、僅かな隙間を残して挟むように保持する。一対のホルダ280,280により、光変調体200がキャリッジ202の背面側に配置されるが、光変調体200から投影光学系32への光の出射が、キャリッジ202に形成された貫通穴284を経て行われる。
各ホルダ280において基板264は、その基板264に平行な面内において相対移動(相対回転運動を含む。)することを許容されるが、各ホルダ280に取り付けられた固定具としての固定ねじ286が基板264に向かってねじ込まれると、基板264がそのときの位置に機械的に固定される。
図11に示すように、回転機構274は、調整コマ290を主体として構成されている。その調整コマ290は、調整ねじ292と、その調整ねじ292が螺合された本体部294とを含むように構成されている。その調整ねじ292は、本体部294に形成されためねじに螺合されるおねじとして構成されている。この調整ねじ292は、前記移動平面に平行な回転中心線を有している。
図11に示すように、本体部294は基板264に固定されている。調整ねじ292は、それの先端において本体部294から突出しており、その突出部においてキャリッジ202に係合させられている。調整ねじ292は、それの頭部において、作業者によって回転操作される。その回転操作量に応じ、調整ねじ292の、本体部294からの突出量が変化し、ひいては、本体部294とキャリッジ202との距離が光変調体200に平行な面内において変化する。
したがって、この調整コマ290によれば、作業者による操作量に応じて光変調体200の回転角度すなわち面内傾きを微調整することが可能となる。その微調整量は、直線運動装置(キャリッジ202)の移動直線に対して具体的には平行度12μm程度の公差範囲内に設定されている。その結果、被写体Sの3次元入力精度を向上させることが容易となる。
なお付言するに、図示しないが、固定ねじ286および調整ねじ292は、それらが螺合されている部分との間にねじ固定接着剤が塗布されることにより、緩みを防止されている。
図10に示すように、ハウジング204は、投影光学系32の背後において局部的にキャリッジ202に向かって突出している。具体的には、ハウジング204は、投影光学系32の背後において、キャリッジ202を貫通して光変調体200の出射面108の近傍位置まで延びる、遮光性を有して薄肉角錐状を成す誘導部296を有している。
その誘導部296は、それの先端において窓部297を有しており、その窓部297において、複数の平面的光学素子260のうち選択されたもののみに光学的に連通する。それら誘導部296および窓部297は、ハウジング204と一体成型されて形成されており、その材料としては、成型精度の高いガラスファイバー補強ポリカーボネートが代表的である。
選択された一つの平面的光学素子260から出射したパターン光のみが、光透過性を有する窓部297を経て、誘導部296内の空間に進入する。その進入したパターン光は、その後、誘導部296の外部に漏れることなく、投影光学系32に入射する。誘導部296は、外部から外乱光が進入して投影光学系32に入射することを阻止する。
図9に示すように、ハウジング204に位置決めポスト298が固定され、その位置決めポスト298に、位置センサとしてのフォトインタラプタ300が取り付けられている。このフォトインタラプタ300は、キャリッジ202と一体的に移動する位置決め爪(被検出子)302を光学的に検出し、それにより、キャリッジ202が特定の位置に位置することが検出される。
図8に示すように、フォトインタラプタ300は処理部16に電気的に接続されている。フォトインタラプタ300から処理部16に出力されるPI信号は、位置決め爪302がなければ、光がフォトインタラプタ300に入射するローレベル(有効)にあるが、位置決め爪302を検出すると、光が遮断されてフォトインタラプタ300に入射しないハイレベルに変化するように設計されている。
ここで、図12ないし図14を参照することにより、光変調体200を詳細に説明する。
図12には、その光変調体200が拡大されて正面図で示されている。この光変調体200には、前記複数種類のパターン光にそれぞれ対応する複数の平面的光学素子260が光変調体200の長さ方向に一列にかつ平面的に並んで形成されている。それら平面的光学素子260は選択的に、図10に示す窓部297に正対するように位置決めされる。
本実施形態においては、被写体Sを撮像するために8種類のパターン光が順次被写体Sに投影される。それら8種類のパターン光は、被写体Sの3次元形状を後述の空間コード化法によって測定するために被写体Sの撮像時にその被写体Sに投影される8種類のパターン光である。そのような投影を行うため、図12に示すように、光変調体200は、それら8種類のパターン光にそれぞれ対応する8個の平面的光学素子260を備えている。図12には、8個の平面的光学素子260のパターン番号PN0ないし7がそれぞれ、コード0ないし7として表記されている。
光変調体200は、成形が容易である透明材料を用いた板状の成型品である。そのような透明材料としては、例えば、最も一般に使用されるアクリル系光学プラスチックとしてのPMMAや、非晶質ポリオレフィンという光学プラスチックであって吸湿による膨張が抑制されたものや、成型に適した低融点のモールドガラス材料等がある。光変調体200は、通常のレンズ成型プロセス(例えば、光学プラスチックレンズ成型プロセス)と同じプロセスによって製造される。そのプロセスは、金型を用いて行われ、その金型には、光変調体200(8個の平面的光学素子260)の目標表面形状の反転形状が精密加工技術によって形成される。
そのようにして加工された金型を用いて、上記のようにして選定された材料に対して射出成型や注型成型という量産型成型プロセスを適用すると、その材料から成る基板264の表面に、微小な凹凸形状のパターンが転写される。一般に、そのパターン転写精度はナノメートル精度であり、このことに着目し、その転写技術はナノインプリント技術と称される。
したがって、このように高精度転写が可能なプロセスによって光変調体200を製造すれば、光変調体200の表面形状の精度が向上し、ひいては、3次元入力装置10の3次元入力精度も向上する。さらに、このプロセスは、光変調体200の量産に適しているため、光変調体200の形状精度を限界まで高め、しかも、光変調体200の生産コストを限界まで低減させることが可能となるというように、顕著な効果を奏する。
次に、光変調体200の形状および光学的作用を、1個の平面的光学素子260に注目して説明する。
まず、概略的に説明するに、光変調体200は、光源部68から出射した光が入射光として入射し、その入射光が、空間に関して周期的に、かつ、角度的に変調されて出射光として出射する。この光変調体200は、前記入射光と交差する向きに延びており、前記入射光が入射するとその入射光に対し、光変調体200の表面形状に依存した光学的変調すなわち周期的角度変調を行う。本実施形態において、「変調」とは、偏向作用を意味する。
一方、図7に示すように、投影光学系32の鏡筒24(投影レンズ34および絞り36を含む。)は、光変調体200からの出射光の複数の角度成分のうち、予め定められた入射開口、すなわち、その入射開口角θNA内に適合する放射角特性を有するものを選択的に通過させる。
各種類のパターン光は、投影結果として明部と暗部とが並ぶように生成される。そのような配列を実現するために、光変調体200は、表面形状が互いに異なる2つの部分、すなわち、本実施形態においては、図13に断面図で示すように、光直進部310および光偏向部312が少なくとも1組、光変調体200に沿った方向において交互に並ぶように構成されている。
光直進部310からは、前記入射開口に適合する放射角特性を有する角度成分が、その後に投影光学系32を通過する通過光成分として出射する。したがって、この光直進部310から出射して投影光学系32を通過する光により、各種類のパターン光における明部が生成される。
これに対し、光偏向部312からは、前記入射開口に適合しない放射角特性を有する角度成分が、その後に投影光学系32を通過しない非通過光成分として出射する。したがって、この光偏向部312から出射したが投影光学系32を通過しない光の存在により、各種類のパターン光における暗部が生成される。このようにして、被写体Sに投影されるパターン光に、明部と暗部の幾何パターンが形成される。
光変調体200は、本実施形態においては、空間に関して非選択的に前記入射光を透過する透過型である。すなわち、この光変調体200に入射した光はその入射位置の如何を問わず概ねすべてこの光変調体200を通過するのである。
この光変調体200は、上述のように、光直進部310と光偏向部312とが並ぶように構成されるが、それら光直進部310と光偏向部312とは、前記入射光を透過する光学系である点では共通する。
ただし、光直進部310は、図13に示すように、前記入射光に対して直交する面としての部分出射面320を有し、その部分出射面320によって前記入射光が変調されずに出射し、これに対し、光偏向部312は、前記入射光に対して傾斜する面群としての部分出射面322を有し、その部分出射面322によって前記入射光が変調されて出射する。
図13においては、光直進部310への入射光が「Lin−S」で表記され、光直進部310からの出射光であってその入射光Lin−Sと平行であるものが「Lout−S」で表記されている。また、光偏向部312への入射光が「Lin−D」で表記され、光偏向部312からの出射光であってその入射光Lin−Dに対して一定角度で偏向されたものが「Lout−D」で表記されている。
以上要するに、光直進部310は、光の進行角度を変調する角度変調(偏向)作用を有しないのに対し、光偏向部312は、それを有するというように、それら光直進部310と光偏向部312とは、角度変調作用の有無、すなわち、出射光の出射角度に関しては相違するのである。
光変調体200の出射面108の表面形状をさらに詳細に説明するに、光直進部310の部分出射面320は、平面形状を有しており、これに対し、光偏向部312の部分出射面322は、本実施形態においては、斜面群から成る屋根型プリズム形状を有している。
図14には、光変調体200の出射面108の表面形状がさらに拡大して断面図で示されている。図14を参照することにより、光変調体200における光変調作用としての光偏向作用を詳細に説明する。
それに先立ち、各種記号を次のように定義する。
θ:屋根型プリズムのチルト角
θt:光偏向角(出射面108の法線NLすなわち光変調体200への入射光に対する出射光の進行角度)
θi:入射半角
p:屋根型プリズムの幅
d:屋根型プリズムの深さ
なお付言するに、深さdは、
d=p・tanθ
なる式によって定義されるため、チルト角θが5度、幅pが0.036mmである応用例においては、深さdが3.15μmとなる。
光変調体200の屈折率を「n」で表記すれば、光偏向角θtは、スネルの法則に従い、次式を用いて求められる。
n・sinθ=sin(θt−θ)
屈折率nが1.49、チルト角θが5度である応用例においては、光偏向角θtが12.46度として求められる。光変調体200への入射光の入射半角θiが5度であると仮定すると、光偏向部312を通過した光は、出射面108の法線NLに対して7.46度以上の角度で光変調体200から出射光Lout−Dとして出射する。
前述のように、投影光学系32の鏡筒24は、前記入射開口が0.1、すなわち、入射開口角θNAが5度であるテレセントリック性を有しており、それの光軸に対して±5度以内の光しか絞り36を通過させないように設計されている。そのため、上記出射光Lout−Dの存在により、投影光学系32内に入射しても、光変調体200のパターン面すなわち出射面108に対して光学的に共役関係にある像面(例えば、被写体Sの表面)上に光が到達しない領域(暗部)が形成される。
したがって、このことは、光直進部310を通過した光はすべて絞り36を通過して上記像面上に光が到達する領域(明部)として投影されることと相俟って、その像面上に光を所望の幾何パターンで投影することを可能にする。
図14に示す例においては、光偏向部312が、基板264の表面に屋根型プリズムを、基板264の表面に対する凹部として、かつ、光の偏向方向が一様ではないように形成することによって構成されるが、光偏向部312は、他の構成を採用することが可能である。
例えば、図15(a)に示すように、基板264の表面に屋根型プリズムを、基板264の表面に対する凹部として、かつ、光の偏向方向が一様であるように形成することにより、光偏向部312を構成することが可能である。また、図15(b)に示すように、基板264の表面に屋根型プリズムを、基板264の表面に対する凸部として、かつ、光の偏向方向が一様であるか否かを問わないように形成することにより、光偏向部312を構成することが可能である。
また、図15(c)に示すように、基板264の表面に機械的ランダム散乱形状(例えば、成型品の表面形状処理に多用されるシボ形状)を与えることにより、光偏向部312を構成することが可能である。機械的ランダム散乱形状は、例えば、切削加工および化学処理により、基板264の表面粗さのRz値が1μm程度であるようにランダムパターンが基板264の表面に形成される。この例においては、光偏向部312への入射光は、基板264のランダム散乱面により、ランダムな方向に偏向されるように、偏向作用を受ける。
ランダム散乱面から出射する散乱光の光度分布を「I」で表記し、散乱光の各角度成分が光偏向部312への入射光の光軸に対して成す散乱角を「θ」で表記すれば、光度分布Iは、一般に、散乱角θの関数として定義される。具体的には、光度分布Iは、
I(θ)=A・cosnθ[cd]
として定義することが可能である。ただし、「A」は定数、「n」は散乱係数をそれぞれ表す。
光偏向部312のランダム散乱面について散乱係数nが1(ランバーシャン散乱特性と称される)である応用例においては、投影光学系32の入射開口が0.1であるときに、光偏向部312と光学投影系32とから成る光学系の光透過率は約0.8%である。したがって、この応用例においては、光直進部310からの出射光と光偏向部312からの出射光との間に、100倍以上であるというように十分に大きなコントラストを確保しつつ、所望の幾何パターン光を被写体Sに投影することが可能である。
仮に、光直進部310からの出射光と光偏向部312からの出射光との間におけるコントラストが十分に大きくはないとしても、被写体Sに投影されるパターン光の境界形状が高精度であるため、そのパターン光における明部と暗部との境界(「ストライプ境界」ともいう。)さえ正確に検出することができれば、被写体Sの3次元形状を表す座標値を高精度に計算することは可能である。
ストライプ境界の位置を判定する境界位置判定を正確に行うためには、各パターン光ごとに撮像された撮像画像中に各部位が明部であるか暗部であるかを判定するために後述のように設定された閾値THであって、撮像画像の輝度成分から適切に設定されたものを採用することが望ましい。
図15(d)に示すように、基板264の表面に回折格子を形成することにより、光偏向部312を構成することが可能である。その回折格子の一例は、斜面構造を有しないバイナリグレーティング溝である。
グレーティングピッチを「gp」、光偏向部312への入射光の波長を「λ」、その回折格子の回折角を「θg」でそれぞれ表記すれば、それらグレーティングピッチgpと波長λと回折角θgとの関係が、一般に、
gp・sinθg=λ
なる式で表される。その回折格子に光が入射すると、その回折格子からは複数のn次回折光が、それぞれ「n・θg」で表される角度を有する複数の方向に出射させられる。それら複数のn次回折光は、その回折格子への同じ入射光を互いに異なる複数の角度でそれぞれ偏向させて得られる複数の光に該当することになる。
例えば、波長λを617nm、回折角θgを12.5度にそれぞれ選定すれば、グレーティングピッチgpは2.85μmとなる。このグレーティングピッチgpで規則正しく並んだ複数のバイナリグレーティング溝に光を入射すると、複数次数の回折光が発生する。このような回折格子を用いる場合には、そのグレーティングピッチgpのみにより、各n次回折光の回折角θgが決まり、その回折格子のうち個別のピッチ内形状(例えば、互いに隣接した凸部と凹部とのそれぞれの形状)により、回折格子への入射光のパワーが各n次回折光に分配される際のパワー分配率が決まる。
したがって、0次回折光と次数の絶対値が1以上である回折光(高次回折光であり、入射光に対する偏向光でもある。)とができる限り投影光学系32の入射開口に入射しないようにグレーティングピッチgpを設定し、かつ、入射光のパワーの0次回折光(直進光)へのパワー分配比率を全体の50%(光偏向部312への入射光全体のパワーに対する比率が50%)以下の程度に設定すれば、前記境界位置判定を十分な精度で実施することが可能である。このように設定すれば、図15(a)ないし(c)を参照して前述したいくつかの例と同様に、所望のパターン光を高精度で生成し、それにより、被写体Sの3次元情報を高精度で入力することが可能となる。
図15(d)に示す例においては、もちろん、入射光のパワーの0次回折光(直進光)へのパワー分配比率が0%近傍の値であるように回折格子を設計することが可能である。このように設計した場合には、光直進部310からの出射光と光偏向部312(回折格子)からの出射光との間におけるコントラストが最大となり、各パターン光において明部と暗部との間におけるコントラストも最大となる。
入射光のパワーの0次回折光(直進光)へのパワー分配比率が0%近傍である回折格子の一例として、ブレーズド面と称される斜面を利用した回折格子が既に知られている。この回折格子は、図15(a)に示す屋根型プリスムに近似した形状を有しており、ダイヤモンドターニングによる切削加工により、材料を直接、目標形状を有するように加工するか、または、その目標形状の反転形状を有するように成型用の金型を加工し、その金型を用いて材料を目標形状を有するように加工することが可能である。
図8には、3次元入力装置10の電気的な構成がブロック図で表されている。処理部16はコンピュータ400を主体として構成されており、そのコンピュータ400は、CPU402と、ROM404と、RAM406と、バス408とを含むように構成されている。
CPU402は、ROM404に記憶されたプログラムをRAM406を利用しつつ実行することにより、レリーズボタン40の操作状態の検出、CCD70からの画像データの取込み、その取り込まれた画像データの転送および格納、モード切替スイッチ42の操作状態の検出等の各種処理を行う。
ROM404には、カメラ制御プログラム404aと、撮像処理プログラム404bと、輝度画像生成プログラム404cと、コード画像生成プログラム404dと、コード境界抽出プログラム404eと、レンズ収差補正プログラム404fと、三角測量演算プログラム404gと、テーブルモータ制御プログラム404jとが格納されている。
カメラ制御プログラム404aは、3次元入力装置10全体の制御を実行するために実行され、その制御には、図16にフローチャートで概念的に表されているメイン処理が含まれる。
撮像処理プログラム404bは、被写体Sの3次元形状を検出するためにパターン光が投影された被写体Sを撮像してパターン光有画像を取得し、さらに、パターン光が投影されていない被写体Sを撮像してパターン光無画像を取得するために実行される。
輝度画像生成プログラム404cは、撮像処理プログラム404bの実行によって被写体Sについて取得された各画素のRGB値に基づき、複数枚のパターン光有画像にそれぞれ対応する複数枚の輝度画像が生成される。
本実施形態においては、同じ被写体Sに対して複数種類のパターン光が時系列に順次投影され、各パターン光が投影されるごとに被写体Sが撮像される。そのようにして撮像された複数枚のパターン光有画像の各々について各画素のRGB値が取得され、その結果、パターン光の種類と同数の輝度画像が生成される。
コード画像生成プログラム404dは、輝度画像生成プログラム404cの実行によって生成された複数枚の輝度画像それぞれに対する閾値処理により生成される2値化画像から、各画素毎に空間コードが割り当てられたコード画像を生成するために実行される。
概略的に説明するに、このコード画像生成プログラム404dが実行されると、複数種類のパターン光のうちパターンライン間の間隔が最も狭いものが投影された被写体Sの輝度画像におけるパターンライン間の間隔が周期として取得され、その周期の輝度画像全体における分布が周期分布として取得される。
このコード画像生成プログラム404dが実行されると、さらに、その取得された周期分布に従ってサイズが変化する可変窓が各パターン光ごとの輝度画像にローカルに設定されることにより、前記可変窓を用いたフィルタ処理により輝度画像全体に対して閾値がローカルに算出されて設定される。そのようにして設定された閾値の分布を表す閾値画像と各パターン光ごとの輝度画像との関係から、各パターン光ごとに2値化画像が生成される。
可変窓を用いたフィルタ処理により輝度画像全体に対して閾値をローカルに算出する技術は、本出願人の特願2004−285736号明細書に詳細に開示されており、その明細書を参照することによってその明細書の内容を本明細書に合体させる。
コード境界抽出プログラム404eは、コード画像生成プログラム404dの実行によって生成されたコード画像と、輝度画像生成プログラム404cの実行によって生成された輝度画像とを利用することにより、コードの境界座標をサブピクセル精度で求めるために実行される。
レンズ収差補正プログラム404fは、コード境界抽出プログラム404eの実行によってサブピクセル精度で求められたコードの境界座標に対して、撮像光学系20の収差補正を行うために実行される。
三角測量演算プログラム404gは、レンズ収差補正プログラム404fの実行によって収差補正が行われたコードの境界座標から、その境界座標に関する実空間の3次元座標を演算するために実行される。
送りモータ制御プログラム404hは、複数種類のパターン光を順次被写体Sに投影すべく送りモータ65を制御するために実行される。この送りモータ制御プログラム404hは、他の処理と共に図19にフローチャートで概念的に表されている。
テーブルモータ制御プログラム404jは、回転テーブル184を被写体Sと共に割り出し回転させるべくテーブルモータ194を制御するために実行される。このテーブルモータ制御プログラム404jは、他の処理と共に図18にフローチャートで概念的に表されている。
本実施形態においては、前述の一連のパターン光の被写体Sへの投影および被写体Sの撮像が、被写体Sの回転位置が等間隔で割り出されるごとに行われる。具体的には、被写体Sの回転位置が90度ずつ間欠的に割り出され、各割り出し位置において、一連のパターン光の投影および被写体Sの撮像が行われる。その結果、被写体Sの外面の全体領域が4つの部分領域に分割され、各部分領域ごとに立体画像(3次元形状情報)が取得される。それら立体画像が、互いにオーバラップする部分を除去する処理が施されて互いに結合されることにより、被写体Sに対応する1つの全体画像がステッチ画像として生成される。
さらに、本実施形態においては、その生成されたステッチ画像に、同じ被写体Sについて計測された表面色情報がマッピングされることにより、前述の3次元色形状データが生成される。これにより、被写体Sについての一連の3次元入力処理が終了する。
図8に示すように、RAM406には、パターン光有画像格納部406aと、パターン光無画像格納部406bと、輝度画像格納部406cと、コード画像格納部406dと、コード境界座標格納部406eと、収差補正座標格納部406gと、3次元座標格納部406hと、周期分布格納部406pと、閾値画像格納部406qと、2値化画像格納部406rと、ステッチ画像格納部406sと、3次元色形状データ格納部406tと、ワーキングエリア410とがそれぞれ記憶領域として割り当てられている。
パターン光有画像格納部406aは、撮像処理プログラム404bの実行によって撮像されたパターン光有画像を表すパターン光有画像データを格納する。パターン光無画像格納部406bは、撮像処理プログラム404bの実行によって撮像されたパターン光無画像を表すパターン光無画像データを格納する。
輝度画像格納部406cは、輝度画像生成プログラム404cの実行によって生成された輝度画像を表すデータを格納する。コード画像格納部406dは、コード画像生成プログラム404dの実行によって生成されたコード画像を表すデータを格納する。コード境界座標格納部406eは、コード境界抽出プログラム404eの実行によってサブピクセル精度で抽出された各コードの境界座標を表すデータを格納する。
収差補正座標格納部406gは、レンズ収差補正プログラム404fの実行によって収差補正が行われたコードの境界座標を表すデータを格納する。3次元座標格納部404hは、三角測量演算プログラム404gの実行によって演算された実空間の3次元座標を表すデータを格納する。
周期分布格納部406p、閾値画像格納部406qおよび2値化画像格納部406rは、コード画像生成プログラム404dの実行によって取得された周期分布、閾値画像および2値化画像を表すデータをそれぞれ格納する。
ステッチ画像格納部406sは、前述のステッチ画像を格納し、3次元色形状データ格納部406tは、前述の3次元色形状データを格納する。ワーキングエリア410は、CPU402がその動作のために一時的に使用するデータを格納する。
ここで、図16を参照することにより、カメラ制御プログラム404aを説明する。このカメラ制御プログラム404aがコンピュータ400によって実行されることにより、前述のメイン処理が実行される。
このメイン処理においては、まず、ステップS101(以下、単に「S101」で表す。他のステップについても同じとする。)において、バッテリ74を含む電源がONされる。次に、S102において、処理部16、周辺インタフェース等が初期化される。
続いて、S103において、モード切替スイッチ42の操作状態を判別するためにキースキャンが行われ、その後、S104において、モード切替スイッチ42の操作によってSLOWモードが選択されたか否かが判定される。今回は、SLOWモードが選択されたと仮定すれば、判定がYESとなり、S105において、前述の非間引き画像処理モードが設定される。このS105の実行後、後に詳述するS108が実行され、続いて、S103に戻る。
これに対し、今回は、モード切替スイッチ42の操作によってSLOWモードが選択されなかったと仮定すれば、S104の判定がNOとなり、S106において、モード切替スイッチ42の操作によってFASTモードが選択されたか否かが判定される。今回は、FASTモードが選択されたと仮定すれば、判定がYESとなり、S107において、前述の間引き画像処理モードが設定される。このS107の実行後、後に詳述するS108が実行され、続いて、S103に戻る。
これに対し、今回は、モード切替スイッチ42の操作によってFASTモードが選択されなかったと仮定すれば、S106の判定がNOとなり、S112において、モード切替スイッチ42の操作によってオフモードが選択されたか否かが判定される。今回は、モード切替スイッチ42の操作によってオフモードが選択されたと仮定すれば、判定がYESとなり、直ちに今回のメイン処理が終了するが、今回は、モード切替スイッチ42の操作によってオフモードが選択されなかったと仮定すれば、判定がNOとなり、S103に戻る。
図17には、図16におけるS108が立体画像処理ルーチンとしてフローチャートで概念的に表されている。この立体画像処理ルーチンの実行により、被写体Sの3次元形状を立体画像として検出し、表示する立体画像処理が実行される。この立体画像処理においては、さらに、同じ被写体Sの表面色も検出される。それら立体画像の検出結果と表面色の検出結果とが位置に関連付けて組み合わされたものが3次元色形状検出結果である。
この立体画像処理においては、まず、S1001において、ファインダ画像、すなわち、撮像光学系30を通して見える範囲の画像と同じ画像がモニタLCD44に表示される。よって、ユーザは、モニタLCD44に表示された画像を見ることにより、実際の撮像前に、撮像画像(撮像範囲)を確認することができる。
次に、S1002において、レリーズボタン40の操作状態がスキャンされ、その後、S1003において、そのスキャン結果に基づき、レリーズボタン40が半押し状態にあるか否かが判定される。半押し状態にあれば、判定がYESとなり、S1004において、オートフォーカス(AF)および自動露出(AE)機能が起動し、それにより、ピント、絞りおよびシャッタスピードが調節される。レリーズボタン40が半押し状態になければ、S1003の判定がNOとなり、S1010に移行する。
S1004の実行後、S1005において、再度、レリーズボタン40の操作状態がスキャンされ、その後、S1006において、そのスキャン結果に基づき、レリーズボタン40が全押し状態にあるか否かが判定される。レリーズボタン40が全押し状態になければ、このS1006の判定がNOとなってS1002に戻る。
レリーズボタン40が半押し状態から全押し状態に移行すれば、S1006の判定がYESとなり、S1007において、後述の3次元色形状検出処理が実行され、それにより、被写体Sの3次元形状および表面色が検出される。
概略的に説明するに、その3次元色形状検出処理により、被写体Sについて3次元色形状検出結果が生成される。ここに、3次元色形状検出結果とは、後述の空間コード画像において検出される複数の空間コード境界画像を3次元座標に変換した結果取得される頂点座標の集合体であって、各頂点ごとに色形状情報とポリゴン情報とが互いに関連付けられたものを意味する。色形状情報は、実空間座標とRGB値との組合せを表す情報である。ポリゴン情報は、複数個の頂点のうち、被写体Sを3次元的に表面する立体を構成するために互いに連結されるべき複数の頂点の組合せを表す情報である。
その後、S1008において、その3次元色形状検出結果が外部メモリ78に格納され、続いて、S1009において、その3次元色形状検出結果が3次元コンピュータグラフィック画像としてモニタLCD44に表示される。
その後、S1010において、図16におけるS103と同様にしてキースキャンが行われる。続いて、S1011において、モード切替スイッチ42の操作状態に変化が無いか否かが判定される。変化が無ければ、S1011の判定がYESとなり、S1001に戻るが、変化が有れば、S1011の判定がNOとなり、今回の立体画像処理が終了する。
図17のS1007において実行される3次元色形状検出処理においては、空間コード化法を用いて被写体Sの3次元形状が検出される。
図18には、図17におけるS1007が3次元色形状検出処理ルーチンとしてフローチャートで概念的に表されている。この3次元色形状検出処理ルーチンには、テーブルモータ制御プログラム404iが組み込まれており、このテーブルモータ制御プログラム404iは、図18におけるS1201およびS1221ないしS1223を含むように構成されている。
この3次元色形状検出処理ルーチンにおいては、まず、S1201において、回転テーブル184の回転位相PHが0に初期化される。本実施形態においては、回転テーブル184が1回転する間に4回停止させられるため、回転テーブル184には4つの回転位相PHが離散的に設定される。具体的には、回転位相PHは、初期の回転位相PHを表す「0」と、次の回転位相PHを表す「1」と、次の回転位相PHを表す「2」と、最後の回転位相PHを表す「3」とに離散的に変化させられる。
次に、S1210において、撮像処理プログラム404bが実行されることにより、今回の回転位相PHについて撮像処理が実行される。この撮像処理においては、投影部12からストライプ状のパターン光が時系列的に被写体Sに投影される。さらに、複数種類のパターン光が投影されている被写体Sをそれぞれ撮像した複数枚のパターン光有画像と、パターン光が投影されていない同じ被写体Sを撮像した1枚のパターン光無画像とが取得される。このS1210は、後に図19を参照して詳述する。
撮像処理が終了すると、S1220において、今回の回転位相PHについて3次元計測処理が実行される。この3次元計測処理が実行されると、上述の撮像処理によって取得された複数枚のパターン光有画像と1枚のパターン光無画像とが利用されて、実際に被写体Sの3次元形状が計測される。このS1220は、後に図22を参照して詳述する。
この3次元計測処理が終了すると、S1221において、次回の撮像に備えて、回転位相PHが1だけインクリメントされる。続いて、S1222において、回転位相PHの現在値が4より大きいか否か、すなわち、被写体Sについての一連の撮像が既に終了しているか否かが判定される。
今回は、回転位相PHの現在値が4より大きくはないと仮定すれば、そのS1222の判定がNOとなり、S1223において、回転テーブル184を時計方向に90度回転させるのに必要な駆動信号がテーブルモータ194に対して出力される。その結果、回転テーブル184が時計方向に90度回転させられ、それにより、被写体Sが、前回の撮像時とは異なる部分領域において測定ヘッドMHに対向させられる。その後、S1210およびS1220が実行され、それにより、次の回転位相PHについて前述の撮像処理および3次元計測処理が行われる。
S1210ないしS1223のループが必要回数実行された結果、S1222の判定がYESとなれば、その後、S1230において、被写体Sについて計測された3次元形状と表面色とを組み合わせることにより、3次元色形状検出結果が生成される。このS1230は、後に図24を参照して詳述する。
この3次元色形状検出結果が生成されると、今回の3次元色形状検出処理が終了する。
ここで、図19を参照することにより、図18におけるS1210を詳述する。図19には、そのS1210が撮像処理プログラム404bとしてフローチャートで概念的に表されている。
この撮像処理プログラム404bには、送りモータ制御プログラム404hが組み込まれており、この送りモータ制御プログラム404hは、図19におけるS2002ないしS2005,S2010,S2016およびS2017を含むように構成されている。
この撮像処理プログラム404bにおいては、まず、S2001において、今回生成すべきパターン光の番号を表すパターン番号PNが0に初期化される。このパターン番号PNは、複数の平面的光学素子260のうち、今回のパターン光を被写体Sに投影するために窓部297に位置決めされるものとして選択されるべき選択光学素子260の番号(図12における「コード」)に対応する。
次に、S2002において、予め設定された方向に送りモータ65が駆動される。続いて、S2003において、フォトインタラプタ300から前記PI信号が読み取られる。その後、S2004において、その読み取られたPI信号のレベルがローレベルからハイレベルに変化した直後であるか否かが判定される。すなわち、フォトインタラプタ300によってキャリッジ202が検出された直後、すなわち、キャリッジ202が前述の特定の位置に移動させられた直後であるか否かが判定される。
今回は、PI信号のレベルがローレベルからハイレベルに変化した直後ではないと仮定すれば、S2004の判定がNOとなり、S2002ないしS2004のループの実行が再開される。そのループが何回が実行された結果、PI信号のレベルがローレベルからハイレベルに変化したと仮定すれば、S2004の判定がYESとなり、S2005に移行する。
このS2005においては、上述の特定の位置に位置するキャリッジ202をさらに移動させてホームポジションに位置決めするために、予め設定された駆動信号(例えば、駆動パルス)が送りモータ65に供給される。キャリッジ202がそのホームポジションに位置決めされると、光変調体200が、それの複数の平面的光学素子260のうち今回のパターン番号PNを有するパターン光を生成するもの(前述の選択光学素子)において窓部297に正対することになる。
その後、S2006において、複数のパターン光のうち、パターン番号PNの現在値と等しい番号が付されたPN番目のパターン光の投影が開始される。
続いて、S2007において、PN番目のパターン光を被写体Sに投影するための投影処理が行われる。図20には、このS2007の詳細が投影処理サブルーチンとしてフローチャートで概念的に表されている。この投影処理サブルーチンの実行により、PN番目のパターン光を投影部12から被写体Sに投影する投影処理が投影機構66との共同作用によって実行される。
この投影処理においては、まず、S3004において、光源ドライバ84が駆動され、続いて、S3005において、その光源ドライバ84からの電気信号によってLED62が発光する。以上で、今回の投影処理が終了する。
LED62から発光した光は、光源レンズ64を経て投影機構66に到達する。その投影機構66においては、光変調体200の選択光学素子260の表面形状に応じた空間変調が施され、その結果、投影機構66への入射光がパターン光に変換されて出力される。その投影機構66から出力されるパターン光は、投影光学系32を経て被写体Sに投影画像として投影される。
以上のようにして、PN番目のパターン光が被写体Sに投影されると、続いて、図19におけるS2008において、そのPN番目のパターン光が投影されている被写体Sが撮像部14によって撮像される。
その撮像により、PN番目のパターン光が投影されている被写体Sを撮像したPN番目のパターン光有画像が取得される。その取得されたパターン光有画像は、対応するパターン番号PNに関連付けてパターン光有画像格納部406aに格納される。
その撮像が終了すると、S2009において、PN番目のパターン光の投影が終了し、続いて、S2010において、次のパターン光を投影する準備のために、キャリッジ202が1ピッチ送られるように送りモータ65に駆動信号が供給される。その後、S2011において、次のパターン光を投影する準備のために、パターン番号PNが1だけインクリメントされる。
続いて、S2012において、そのパターン番号PNの現在値が最大値PNmaxより小さいか否かが判定される。その最大値PNmaxは、使用されるマスクパターンの合計数に応じて決定される。例えば、8種類のマスクパターンが使用される場合には、最大値PNmaxが8に設定される。
今回は、パターン番号PNの現在値が最大値PNmaxより小さいと仮定すれば、S2012の判定がYESとなり、続いて、S2006ないしS2012のループの実行が、今回のパターン番号PNを有するパターン光の投影のために再開される。
S2006ないしS2012のループの実行がパターン光の種類の数と同数回繰り返された結果、パターン番号PNの現在値が最大値PNmaxより小さくはない値になると、S2012の判定がNOとなり、今回の撮像処理が終了する。したがって、一回の撮像処理により、最大値PNmaxと同数枚のパターン光有画像が取得されることになる。
続いて、S2013において、フラッシュモードが選択されているか否かが判定される。フラッシュモードが選択されていれば、その判定がYESとなり、S2014において、フラッシュ26が発光させられるが、フラッシュモードが選択されていなければ、S2013の判定がNOとなり、S2014がスキップされる。いずれにしても、その後、S2015において、被写体Sが撮像される。
この撮像は、被写体Sの表面色を計測することを目的として、投影部12からパターン光を被写体Sに投影することなく、行われる。その結果、被写体12について1枚のパターン光無画像が取得される。その取得されたパターン光無画像はパターン光無画像格納部406bに格納される。
続いて、S2016において、キャリッジ202が前述のホームポジションに復帰するように送りモータ65が駆動される。その後、S2017において、送りモータ65が停止させられて待機状態に移行させられる。
以上で、この撮像処理プログラム404bの一回の実行が終了する。
図21には、この撮像処理プログラム404bの一回の実行に伴うこの3次元入力装置10の作動の一例がタイミングチャートで表されている。この作動例は、ユーザによってFASTモードが選択されている状態でユーザによってレリーズボタン40が全押し状態に操作された場合にこの3次元入力装置10によって実行されるものである。
図21(a)には、被写体Sからの入射光によってCCD70が複数回、連続して露光される様子が示されている。図21(b)には、それら複数回の露光のそれぞれにつき、被写体Sからの入射光によって表される全体画像のうちの各画素ごとに光がCCD70によって電気信号に変換されてCCD70から出力される信号出力タイミングがタイミングチャートで表されている。図21(c)には、撮像部14の画像処理モードが前述の間引き画像処理モードと非間引き画像処理モードとに時間的に切り替わるタイミングがタイミングチャートで表されている。
さらに、図21(d)には、撮像部14の状態が、待機状態と、撮像および信号取り出しのための作動状態とに時間的に切り替わるタイミングがタイミングチャートで表されている。図21(e)には、各パターン光を形成するために光変調体200において各平面的光学素子260が割り出されるタイミングがタイミングチャートで表されている。図21(f)には、フラッシュ26がOFF状態とON状態とに時間的に切り替わるタイミングがタイミングチャートで表されている。図21(g)には、レリーズボタン40が非操作状態(OFF状態)と操作状態(ON状態)とに時間的に切り替わるタイミングがタイミングチャートで表されている。
本実施形態においては、被写体Sからの入射光によるCCD70の露光後に、その露光を反映した信号のCCD70からの取り出しが行われる。1回の露光に1回の信号取り出しが対応しており、それら露光と信号取り出しとが互いに共同して1回の個別撮像処理を構成する。
本実施形態においては、同じ被写体Sについて3次元形状情報の取得と表面色情報の取得とが連続的に、かつ、それらの順で行われる。
前述のように、被写体Sの3次元形状情報を取得するために、その被写体Sに8種類のパターン光(パターン番号PN=0〜7)が順次投影され、各パターン光の投影ごとに、CCD70の露光とCCD70からの信号取り出しとが行われる。すなわち、被写体Sの3次元形状情報を取得するために、その被写体Sに対する個別撮像処理が順次、合計8回行われるのである。図21においては、3次元形状情報を取得するための各回の個別撮像処理に対応するパターン光の番号PNが、「0」ないし「7」の数字によって示されている。
被写体Sの表面色情報を取得するために、被写体Sからの入射光によってCCD70が1回露光され、その後に信号取り出しが行われる。すなわち、被写体Sの表面色情報を取得するために、被写体Sに対する個別撮像処理が1回行われるのである。図21においては、表面色情報を取得するための1回の個別撮像処理が「c」という記号によって示されている。
3次元形状情報取得のための撮像においては、照明光としてパターン光を被写体Sに投影することが必須であるのに対し、表面色情報取得のための撮像においては、照明光を被写体Sに投影することが選択的である。具体的には、表面色情報取得のための撮像においては、被写体Sからの受光量が不足している場合に、フラッシュ26が自動的に発光させられ、それにより、被写体Sに照明光が投影される。
したがって、本実施形態においては、3次元形状情報取得のための8回の個別撮像処理と、表面色情報取得のための1回の個別撮像処理とが連続的に行われ、合計9回の個別撮像処理が連続的に行われる。本実施形態においては、それら9回の個別撮像処理が互いに共同して1回の全体撮像処理を構成している。
それら9回の個別撮像処理においては、同じ被写体Sについて9回の露光が順次行われ、それら9回の露光は、例えば、ビデオレートと同じ速度で同一周期で行われる。それら9回の露光が連続的に行われる期間は、被写体Sと3次元入力装置10との相対位置が変化するとその影響がCCD70の撮像結果に現れる期間である。この期間は、3次元入力装置10の撮像時間である。この撮像時間が短いほど、3次元入力装置10の動画撮像能力が高いことを意味する。
図21に示す一作動例においては、3次元形状情報取得のための8回の個別撮像処理における信号取り出しがいずれも、間引き画像処理として実行される。したがって、3次元形状情報取得のための各回の個別撮像処理においては、CCD70の露光に後続し、必要な信号取り出し時間t1の経過後、CCD70から電気信号が出力される。信号取り出し時間t1は、1フレーム取り出し時間ともいい、各パターン光の投影ごとに、CCD70の露光が終了してから、3次元形状情報が1フレーム分、CCD70から出力されるまでに必要な3次元形状情報出力時間を意味する。
これに対し、図21に示す一例においては、表面色情報取得のための1回の個別撮像処理における信号取り出しが、非間引き画像処理として実行される。したがって、表面色情報取得のための1回の個別撮像処理については、CCD70の露光に後続し、必要な信号取り出し時間t2の経過後、CCD70から電気信号が出力される。信号取り出し時間t2は、1フレーム取り出し時間ともいい、CCD70の露光が終了してから、表面色状情報が1フレーム分、CCD70から出力されるまでに必要な表面色情報出力時間を意味する。
間引き画像処理に必要な信号取り出し時間t1は、非間引き画像処理に必要な信号取り出し時間t2より短い。例えば、信号取り出し時間t1は、約33msであるのに対し、信号取り出し時間t2は、約0.5sである。
図21(a)および(b)に示すように、1回の個別撮像処理においては、露光が終了した後に信号取り出しが開始されるが、次回の個別撮像処理における露光は、前回の個別撮像処理における信号取り出しが終了する前に開始される。すなわち、ある回の個別撮像処理における信号取り出しと次回の個別撮像処理における露光とが時間的に部分的にオーバラップするように行われるのである。ただし、ある回の個別撮像処理における信号取り出しは、次回の個別撮像処理における露光が終了する前に終了する。
したがって、本実施形態においては、図21(b)に示すように、3次元形状情報取得のための8回の信号取り出しが時間的に隙間なく連続的に行われる。
各回の信号取り出しは、それが間引き画像処理として実行される場合には、約33msで終了する。したがって、8回の信号取り出しは約0.26sで終了する。よって、図21に示す撮像時間(全体撮像時間)のうち3次元形状情報取得のための撮像に必要な部分(以下、「部分撮像時間」という。)の長さは、信号取り出し時間の長さの合計値によって支配されるため、約0.26sの程度の長さで済む。
これに対し、各回の信号取り出しは、それを非間引き画像処理として実行すると、約0.5sも必要である。そのため、8回の信号取り出しに約5sも必要となり、よって、それに対応する部分撮像時間もその程度の長さが必要となる。
このように、CCD70からの信号取り出しを間引き画像処理として実行する場合には、撮像時間が短縮され、その結果、被写体Sの動きや3次元入力装置10の手振れにもかかわらず、被写体Sの3次元形状を高精度で計測できる。
さらに、図21に示すように、本実施形態においては、3次元形状情報取得のための2回目ないし8回目の露光のそれぞれと、表面色情報取得のための露光とが、それぞれ、先行する直前の露光に対応する信号取り出しの終了を待つことなく、開始される。先行する露光に対応する信号取り出しと、後続する露光とが互いに並行して行われるのであり、これにより、9回の信号取出しが時間的に隙間なく連続的に行われる。したがって、図21に示す撮像時間、すなわち、3次元形状情報取得のための撮像と表面色情報取得のための撮像との双方を連続的に行うのに必要な時間が短縮される。
具体的には、各回の信号取り出しは、それが間引き画像処理として実行される場合には、約33msで終了するため、9回の信号取り出しは約0.3sで終了し、よって、それに対応する全体撮像時間もその程度の長さで済む。
仮に、表面色情報取得のための1回の個別撮像処理すなわち表面色計測撮像処理(信号取り出しが非間引き画像処理として実行される。)を先に、3次元形状情報取得のための8回の個別撮像処理すなわち3次元計測撮像処理(信号取り出しが間引き画像処理として実行される。)を後に実行した場合には、先行する表面色計測撮像処理における信号取出しがほとんど終了するまで、3次元形状情報取得のための初回の露光を待たせなければならない。その待ち時間は、信号取り出し時間t2の長さにほぼ等しく、約0.5sである。
この場合には、表面色情報取得のための露光と、3次元形状情報取得のための初回の露光との間にやや長い時間間隔が存在し、図21に示す全体撮像時間が長くなる。一方、測定ヘッドMHと被写体Sとの間の相対変位が存在しないかないしは十分に小さい場合には、その全体撮像時間がやや長いことは問題にならない。これに対し、測定ヘッドMHと被写体Sとの間の相対変位が大きい場合には、その全体撮像時間が長いと、表面色情報と3次元形状情報とが画素の位置に関して互いに十分に正確にマッチングしなくなってしまう。すなわち、テクスチャマッピング精度が低下してしまうのである。
これに対し、本実施形態においては、図21に示すように、3次元形状情報取得のための8回の個別撮像処理が先に、表面色情報取得のための1回の個別撮像処理が後に行われる。その結果、先行する3次元形状情報取得のための8回目の露光と、後続する表面色情報取得のための露光とを、先行する3次元形状情報取得のための8回の露光が行われる周期と同じ周期で連続して行うことが可能となる。よって、本実施形態によれば、全体撮像時間を、約0.3s程度にまで短縮することが可能となる。
したがって、本実施形態によれば、3次元形状情報取得のための露光と表面色情報取得のための露光とを十分に短い時間間隔で連続して行うことが可能となり、その結果、測定ヘッドMHと被写体Sの間の相対変位の有無やその程度の大小にかかわらず、高いテクスチャマッッピング精度が実現される。
よって、本実施形態によれば、3次元形状情報取得のためのCCD70からの信号取り出しを間引き画像処理モードで実行する場合(ユーザがFASTモードを選択する場合)には、高いテクスチャ解像度すなわち表面色計測精度を確保しつつ、高いテクスチャマッピング精度で動画を撮像するのに適した3次元入力装置10が提供される。
さらに、本実施形態においては、ユーザが、3次元形状情報を取得するための画像処理モードを、間引き画像処理モードすなわちFASTモードと、非間引き画像処理モードすなわちSLOWモードとに適宜変更することが可能である。テクスチャマッピング精度の低下が懸念される環境において、ユーザがFASTモードを選択すれば、そのような環境にもかかわらず、テクスチャマッピング精度が低下せずに済む。一方、テクスチャマッピング精度の低下が懸念されない環境において、ユーザがSLOWモードを選択すれば、高いテクスチャマッピング精度のみならず高い3次元形状計測精度も実現される。
このように、本実施形態によれば、3次元入力装置10の使用環境や3次元形状計測精度とテクスチャマッピング精度とのそれぞれに対するユーザの要望に応じて、3次元入力装置10の設定をユーザが任意に変更することができ、よって、3次元入力装置10の使い勝手が向上する。
ここで、図22を参照することにより、図18におけるS1220を詳述する。図22には、そのS1220が3次元計測処理サブルーチンとしてフローチャートで概念的に表されている。
この3次元計測処理サブルーチンにおいては、まず、S4001において、輝度画像生成プログラム404cの実行により、輝度画像が生成される。
このS4001においては、輝度値が、YCbCr空間におけるY値として定義されており、各画素のRGB値より、
Y=0.2989・R+0.5866・G+0.1145・B
なる式を用いて計算される。各画素についてY値を求めることにより、複数枚のパターン光有画像にそれぞれ対応複数枚の輝度画像が生成される。それら生成された輝度画像は、パターン番号PNに関連付けて輝度画像格納部406cに格納される。ただし、輝度値の算出に用いられる式は、上記式に限定されるものではなく、他の式に適宜変更することが可能である。
次に、S4002において、コード画像生成プログラム404dが実行される。このコード画像生成プログラム404dが実行されると、生成された複数枚の輝度画像が前述の空間コード化法を利用して組み合わされることにより、各画素ごとに空間コードが割り当てられたコード画像が生成される。そのコード画像は、輝度画像格納部406cに格納された複数種類のパターン光有画像に関する輝度画像と、各画素ごとに輝度閾値が割り当てられた閾値画像との比較による2値化処理によって生成される。その生成されたコード画像はコード画像格納部406dに格納される。
図22には、このコード画像生成プログラム404dの詳細がフローチャートで概念的に表されている。このコード画像生成プログラム404dにおいて採用されている技術は、本出願人の特願2004−285736号明細書に詳細に記載されているため、その特許出願を参照することにより、その特許出願の内容を本明細書に合体させる。
以下、このコード画像生成プログラム404dを時系列的に説明するが、それに先立ち、原理的に説明する。
本実施形態においては、同じ被写体S(3次元対象物)につき、複数種類のパターン光のもとにそれぞれ複数枚の輝度画像が生成される。それらパターン光はいずれも、明部、すなわち、幅を有する明るいパターンラインと、暗部、すなわち、幅を有する暗いパターンラインとが交互に一定の周期で繰り返すように形成される。それらパターン光は、その周期に関して互いに異なっており、それぞれ、パターン番号PNを有するパターン光と称される。それらパターン光のうち最も短い周期を有するパターン光が、パターン番号PNが0であるパターン光であり、最も長い周期を有するパターン光が、パターン番号PNが(PNmax−1)であるパターン光である。
いずれの輝度画像も、対応するパターン光のもとに取得されるため、明部としての明るいパターンラインと、暗部としての暗いパターンラインとが交互に並んで成るパターン画像として形成される。パターンライン間の間隔すなわち周期は、3次元入力装置10と被写体Sとの間における相対的な幾何学的関係(位置および向きに関する関係)に依存するため、各輝度画像内のすべての位置において一定であるとは限らない。複数種類のパターン光のもとにそれぞれ取得される複数枚の輝度画像は、対応するパターン光のパターン番号PNを用いて特定される。
本実施形態においては、それら複数枚の輝度画像のうちのいずれかが代表パターン画像に選択される。その代表パターン画像の一典型例は、複数種類のパターン光のうちパターンライン周期が最小であるものに対応する輝度画像であり、これは、パターン番号PNが0である輝度画像である。
パターン光が投影された被写体Sを撮像した輝度画像においては、輝度値が画素列の方向において空間的にかつ周期的に変化する。その周期的変化を表すグラフにそれの複数個の下ピーク点(最低輝度点)において接する包絡線が存在する。この包絡線は、同じ被写体Sを無照射状態で撮像した輝度画像における輝度値、すなわち、被写体Sの背景光の輝度値の空間的変化を表している。このような包絡線が存在する輝度画像については、各画素の輝度値を閾値処理によって正確に2値化するためには、閾値を画素位置に応じて変化させることが望ましい。すなわち、輝度画像の実際の輝度値変化をトラッキングすることによって閾値を適応的に変化させることが望ましいのである。
このような知見に基づき、本実施形態においては、輝度画像に対してフィルタ処理を行うことによって閾値を算出するフィルタ窓がローカルに設定され、フィルタ処理されることによりその位置に適した閾値が、輝度画像に対してローカルに設定される。輝度画像のうちのあるローカル位置に窓が設定されれば、輝度画像を構成する複数本のパターンラインのうちその窓内に存在する画素の輝度値が取り出されて参照されることにより、そのあるローカル位置に対応する閾値が設定される。
本実施形態において使用される窓は、方形窓である。この方形窓を採用する場合には、その方形窓内に存在する複数本のパターンラインを構成する画素の輝度値が取り出され、それら輝度値に対して同一の重み係数が用いられて閾値が算出される。その重み係数により、方形窓の窓関数が定義される。
さらに、方形窓を採用する場合には、その方形窓の、パターンラインが延びるライン方向におけるライン方向サイズに応じて、その方形窓内においてライン方向に存在する画素の数を可変とすることができる。一方、その方形窓の、複数本のパターンラインが列を成して並ぶ列方向における列方向サイズに応じて、その方形窓内において列方向に存在するパターンラインの数も画素の数も可変とすることができる。
したがって、方形窓を採用する場合には、その方形窓の列方向サイズにより、輝度画像に窓を設定することによってその輝度画像から算出される閾値が変化することになる。よって、その閾値を適応的に変化させることが必要である場合には、方形窓の列方向サイズを適応的に変化させればよい。
本実施形態においては、方形窓として構成される窓のサイズが、その窓内に存在するパターンラインの数がそれらパターンラインの間隔すなわち周期(例えば、明るいパターンラインが繰り返される周期)の整数倍であるように設定することが望ましい。すなわち、窓内に、明るいパターンラインと暗いパターンラインとが同数ずつ存在するように窓のサイズを設定することが望ましいのである。このように設定すれば、窓内に存在する複数本のパターンラインの輝度値の平均値を算出することにより、望ましい閾値を高精度取得することができる。
しかしながら、同じ輝度画像上であっても、パターンラインの周期は場所によって異なる可能性がある。そのため、窓のサイズを固定した場合には、窓内に存在するパターンラインの数が場所によって変動してしまい、閾値の設定精度が低下してしまう。
本実施形態においては、複数枚の輝度画像のうち、パターンラインの周期が最小であるパターン光のもとに撮像されたもの、すなわち、パターン番号PNが0である輝度画像が代表パターン画像として選択される。さらに、本実施形態においては、その代表パターン画像に対してローカルに設定される窓VWが、それのサイズが可変である可変窓として構成されている。それにより、その可変窓VWのサイズが、代表パターン画像の実際のパターンライン周期に適応して変化させられる。
したがって、本実施形態によれば、代表パターン画像におけるパターンライン周期が列方向位置に応じて変動しても、それに追従するように可変窓VWのサイズが変更され、その結果、パターンライン周期の変動にもかかわらず、可変窓VW内に存在する明部と暗部のパターンラインの数が一定に維持される。本実施形態においては、代表パターン画像に対して可変窓VWが設定される各ローカル位置ごとに閾値THが取得される。各ローカル位置ごとの閾値THは、各ローカル位置に最適なサイズを有する可変窓VWのもとに精度よく取得されることになる。
また、明部と暗部のパターンラインの数が一定に維持されるような可変窓VWのサイズは、パターン番号PNが0である輝度画像において最小となる。したがって、パターン番号PNが0である輝度画像を代表パターン画像として選択することにより、最小の可変窓VWのサイズが可能になり、可変窓VWを用いた後のフィルタ処理の計算負担を抑えることが可能になる。
本実施形態においては、その可変窓VWが、サイズが可変である方形窓として構成されている。その可変窓VWのサイズは、代表パターン画像の列方向には可変であるが、ライン方向には固定であるように設定されている。
本実施形態においては、その可変窓VWのサイズ、すなわち、代表パターン画像の列方向におけるサイズが、その代表パターン画像の実際のパターンライン周期を適応的に反映するように設定される。そのため、可変窓VWのサイズを設定するために、代表パターン画像の実際のパターンライン周期分布が事前に判明していることが必要である。
よって、本実施形態においては、可変窓VWのサイズの設定に先立ち、サイズが固定された固定窓が代表パターン画像に対して設定される。その設定された固定窓によって捕捉される複数個の連続画素が複数個の注目画素として選択され、それら選択された注目画素の輝度値に基づき、代表パターン画像の実際のパターンライン周期分布が取得される。
本実施形態においては、さらに、代表パターン画像における複数個の注目画素の輝度値に対してFFT(Fast Fourier Transform:高速フーリエ変換)処理が施され、それにより、代表パターン画像の列方向において輝度値変化の周波数成分のそれぞれについて強度(例えば、パワースペクトル)が取得される。ここに、「周波数成分」は、1個の固定窓によって捕捉される複数個の注目画素を列方向に辿った場合に、輝度値の変化が反復される反復回数を意味する。
本実施形態においては、代表パターン画像において列方向に連続的に並んだ複数個の連続画素のそれぞれが順次注目画素に選定され、その選定された各注目画素ごとにパターンライン周期が、代表パターン画像の輝度値分布に基づいて取得される。
以上、このコード画像生成プログラム404dを原理的に説明したが、以下、図23を参照することにより、時系列的に説明する。
このコード画像生成プログラム404dにおいては、まず、S5001において、パターン番号PNが0であるパターン光が投影された被写体Sが撮像された輝度画像が輝度画像格納部406cから、代表パターン画像として読み込まれる。
次に、S5002において、その代表パターン画像につき、前記読み込まれた輝度画像に基づき、前述のFFT変換によるアプローチにより、代表パターン画像において列方向に連続的に並んだ各画素ごとにパターンライン周期が演算される。演算された複数個のパターンライン周期は各画素(各列方向画素位置)に関連付けて周期分布格納部406pに格納される。
続いて、S5003において、演算された複数個のパターンライン周期に基づき、可変窓VWの特性がローカルに設定される。本実施形態においては、可変窓VWのライン方向サイズは、その可変窓VWが設定される代表パターン画像上の位置にかかわらず、変化しないように設定されるのに対し、可変窓VWの列方向サイズは、各列方向画素位置に関連付けて演算されたパターンライン周期の整数倍に相当するように設定される。
その後、S5004において、代表パターン画像に対して可変窓VWが、ライン方向と列方向とに沿って平面的に、かつ、各画素に関連付けて設定される。それにより、各画素ごとに、可変窓VW内に存在する複数個の画素の輝度値の平均値がローカルな閾値として演算される。このS5004においては、さらに、演算された閾値が各画素に割り当てられた閾値画像が生成される。生成された閾値画像は閾値画像格納部406qに格納される。
続いて、S5005において、パターン番号PNが0に初期化され、その後、S5006において、パターン番号PNの現在値が最大値PNmaxより小さいか否かが判定される。今回は、パターン番号PNの現在値が0であるため、判定がNOとなり、S5007に移行する。
このS5007においては、パターン番号PNの現在値と等しいパターン番号PNが割り当てられた輝度画像の輝度値と、前記生成された閾値画像の閾値とが、各画素ごとに互いに比較される。その比較結果は、各画素ごとに2値化画像に反映される。具体的には、輝度画像の輝度値が閾値より大きい場合には、「1」を表すデータが、2値化画像のうち対応する画素位置に関連付けて2値化画像格納部406rに格納され、一方、輝度画像の輝度値が閾値より大きくはない場合には、「0」を表すデータが、2値化画像のうち対応する画素位置に関連付けて2値化画像格納部406rに格納される。
その後、S5008において、パターン番号PNが1だけインクリメントされる。続いて、S5006に戻り、パターン番号PNの現在値が最大値PNmaxより小さいか否かが判定される。今回も、最大値PNmaxより小さい場合には、判定がNOとなり、S5007に移行する。
S5006ないしS5008の実行がパターン光の種類の数と同数回繰り返された結果、パターン番号PNの現在値が最大値PNmaxより小さくはない値になると、S5006の判定がYESとなり、S5009に移行する。
このS5009においては、各画素ごとに、最大値PNmaxと同数枚の2値化画像から画素値(「1」または「0」)が、パターン番号PNが0である輝度画像に対応する2値化画像から、パターン番号PNが(PNmax−1)である輝度画像に対応する2値化画像に至る順序に従って抽出され、最下位ビットLSMから最上位ビットMSBに至る順序に従って並んだ空間コードが生成される。各画素ごとの空間コードのビット数は、最大値PNmaxと同数である。各画素ごとに空間コードが生成されることにより、今回の被写体Sに対応する空間コード画像が生成される。生成された空間コードは、各画素位置に関連付けて空間コード格納部116dに格納される。例えば、最大値PNmaxが8である場合には、生成される空間コードは0から255までの範囲内の値を有する。
以上で、このコード画像生成プログラム404dの一回の実行が終了する。
その後、図22におけるS4003において、コード境界抽出プログラム404eの実行により、コード境界座標検出処理が実施される。前述の空間コード化法によるコード化は、各画素単位で行われるため、実際のパターン光における明暗の境界線と、前記生成されたコード画像における空間コードの境界線(ある空間コードが割り当てられた領域と別の空間コードが割り当てられた領域との間の境界線)との間にサブピクセル精度の誤差が生ずる。そのため、このコード境界座標検出処理は、空間コードの境界座標値をサブピクセル精度で検出することを目的として実施される。
例えば、各パターン光のライン方向と交差する離散的な基準線の位置をCCD座標系において255本設定すると、最大値PNmaxが8(空間コードを256有するため、境界は255)である場合には、図22におけるS4003(コード境界抽出プログラム404eの実行)により、最大約6万5千の空間コードの境界座標値が検出される。
検出されたコード境界座標値はコード境界座標格納部406eに格納される。コード境界座標値は、CCD70の結像面に設定された2次元座標系であるCCD座標系ccdx−ccdyにおいて定義される。
続いて、S4004において、レンズ収差補正プログラム404fの実行により、レンズ収差補正処理が実施される。このレンズ収差補正処理は、撮像光学系30に入射した光束の実際の結像位置であってその撮像光学系30の収差の影響を受けたものを、その撮像光学系30が理想レンズであったならば結像されるはずである理想結像位置に近づくように補正する処理である。
このレンズ収差補正処理により、S4003において検出されたコード境界座標値が、撮像光学系30の歪みなどに起因した誤差が除去されるように補正される。そのようにして補正されたコード境界座標は収差補正座標格納部406gに格納される。
それらコード境界座標検出処理およびレンズ収差補正処理はいずれも、本発明を理解するために不可欠な事項ではなく、しかも、本出願人の特願2004−105426号明細書に詳細に開示されているため、それを参照することによって本明細書に合体させることにより、本明細書においては詳細な説明を省略する。
その後、S4005において、三角測量演算プログラム404gの実行により、三角測量の原理による実空間変換処理が実施される。この実空間変換処理が実施されれば、三角測量の原理により、前述の、CCD座標系ccdx−ccdy上のコード境界座標値であって収差補正が施されたものが、実空間に設定された3次元座標系である実空間座標系X−Y−Z上の3次元座標値に変換され、その結果、3次元色形状検出結果としての3次元座標値が取得される。その取得された3次元座標値は、対応する部分画像の回転位相PHに関連付けて、3次元座標格納部406hに格納される。
このS4005においては、被写体Sの3次元形状を複数個の3次元頂点の集まりとして空間離散的に計測するために、2次元的なコード画像が、各パターン光のライン方向と交差する離散的な複数本の基準線に関して空間離散的に参照される。これにより、そのコード画像の外周境界上の複数個の離散点にそれぞれ対応する複数個の3次元頂点が取得されるのみならず、そのコード画像の内部の複数個の離散点(S4003において検出されたコードの境界座標点)にそれぞれ対応する複数個の3次元頂点が取得される。
ここで、図24を参照することにより、図18におけるS1230を詳述する。図24には、そのS1230が3次元色形状検出結果生成サブルーチンとして概念的にフローチャートで表されている。
この3次元色形状検出結果生成サブルーチンにおいては、まず、S5501において、3次元座標格納部406hから、回転位相PH0ないし3のそれぞれに関連付けて、複数個の3次元座標値がロードされる。本実施形態においては、被写体Sの外面全体が4つの部分面(正面、右側面、左側面および背面)に分割され、各部分面ごとに立体画像が生成される。このS5501においては、それら4つの部分面のすべてについて、各部分面に属する複数個の3次元座標値が3次元座標格納部406hからロードされる。
次に、S5502において、それらロードされた複数個の3次元座標値(頂点座標値)に対し、各3次元座標値が属する各部分面の回転位相PHに応じた回転変換が行われ、それにより、4つの部分面に属する複数個の3次元座標値が、各部分面の回転位相PHを見込んで組み合わされる。その結果、複数個の3次元座標値によって3次元的に表現される4つの部分面が一体化されて、被写体Sの外面全体を現す画像が合成される。ただし、この段階においては、その合成画像に、測定ヘッドMHの分割撮像手法に起因して空間的にオーバラップする部分が存在する。
続いて、S5503において、その生成された合成画像において空間的にオーバラップする部分が抽出される。さらに、その合成画像の長さ方向における各領域においてオーバラップする2つの部分が、それら2部分に属する複数個の3次元座標値の平均化等の手法により、1つの部分に結合される。その結果、合成画像において空間的なオーバラップが除去され、それにより、ステッチ画像が完成する。そのステッチ画像を表すデータがステッチ画像格納部406sに格納される。
その後、S6001において、前述の実空間3次元座標系に座標変換された3次元頂点群の各実座標空間座標値に対応するRGB値(R輝度値、G輝度値およびB輝度値)が前述の表面色画像から抽出される。
実空間座標系と、表面色画像を定義する平面座標系との関係は、前述の三角測量計算によって幾何学的に互いに対応付けられている。すなわち、コード画像、すなわち、被写体Sの3次元形状を計測するための2次元画像である形状画像を定義する平面座標系を実空間3次元座標系に計算によってマッピングさせるために用いられる関数が存在する場合に、その関数の逆関数を用いることにより、実空間3次元座標系を、表面色画像を定義する平面座標系に計算によってマッピングさせることが可能なのである。したがって、このS6001においては、2次元的な表面色画像から、各3次元頂点ごとに、それに対応する表面色値すなわちRGB値を抽出することが可能である。
次に、S6002において、各頂点ごとに、対応する実空間座標値とRGB値とが組み合わされて色形状情報が生成される。さらに、その生成された色形状情報が、対応する頂点に直接にまたは間接に関連付けてワーキングエリア410にローカル保存される。
続いて、S6003において、被写体Sの表面形状を複数個のポリゴンの一例である三角形に分割することによって近似的に表現するために、その被写体Sについて取得された複数個の頂点のうち、距離的に互いに近接する複数個の頂点が3個ずつ、グループ分けされる。各グループごとに、3個の頂点が互いに連結されることにより、1個のポリゴンが形成される。
その後、S6004において、各ポリゴンごとに、そのポリゴンを形成するために互いに連結すべき3個の頂点の組合せがポリゴン情報として、各ポリゴンに直接にまたは間接に関連付けてワーキングエリア410にローカル保存される。また、そのポリゴン情報は、必要に応じ、被写体Sの3次元色形状を表す情報として、3次元色形状データ格納部406tに格納される。
以上で、この3次元色形状検出結果生成サブルーチンの一回の実行が終了し、それに伴い、図18に示す3次元色形状検出処理ルーチンの一回の実行が終了する。
本実施形態においては、ユーザがホルダHDを格納状態から、ヘッドベース130とテーブルベース132とが同一平面にあるように展開すると、測定ヘッドMHに対する回転テーブル184の相対位置が自動的にかつ一義的に決まる。その相対位置は、例えば、測定ヘッドMHからの距離と、その測定ヘッドMHの光軸に対する角度とによって規定される。
本実施形態においては、ホルダHDを構成する4枚の板状部材間の距離が、そのホルダHDの姿勢の変化に依存しないし、それら4枚の板状部材間の角度も、ホルダHDの姿勢の変化に依存しない。
したがって、本実施形態によれば、ホルダHDを格納状態から展開したときに自動的に位置決めされる回転テーブル184の、測定ヘッドMHに対する相対位置が常に同じものとして再現される。よって、本実施形態によれば、ユーザは、そのようにして同じ展開位置が再現される回転テーブル184に被写体Sを載置するだけで、測定ヘッドMHに対する被写体Sの位置決めが自動的に行われる。
その結果、本実施形態によれば、ユーザが回転テーブル184に被写体Sを載置する限り、その被写体Sの、測定ヘッドMHに対する相対位置の変化可能領域が縮小し、それにより、その変化可能領域の広さを見込んで測定ヘッドMHが撮像しなければならない領域(撮像可能領域)も縮小する。
よって、本実施形態によれば、被写体Sを配置する際の空間的自由度が高い前述の従来例に比較し、被写体Sの撮像および測定のために測定ヘッドMHに課されるべき負担を軽減することが容易となる。
被写体Sの撮像および測定のために測定ヘッドMHに課されるべき負担が軽減される理由はその他にも存在する。その一例を説明するに、回転テーブル184を用いた、被写体Sの4面方向(PN=0〜3)からの3次元形状測定において、その回転テーブル184の回転中心軸の座標を推定するための処理が高効率化される。
具体的に説明するに、本実施形態においては、被写体Sが配置される回転テーブル184の回転中心軸の、測定ヘッドMHに対する空間座標値が既知である。したがって、4面各々についての3次元形状測定結果である各3次元座標値(図23におけるS4005において演算される。)に対して、前記回転中心軸を中心に空間回転演算処理を行うことにより、被写体Sの形状および色を表すポリゴンサーフェスおよびテクスチャのステッチ処理(結合処理)が行われ、ひいては、最終的な出力である、被写体Sの全周の3次元色形状検出結果が生成される(図18におけるS1230)。その結果、被写体Sの全周の形状および色が、位置のずれなく、正しく結合されることになる。
この3次元入力装置10においては、ホルダHDが格納状態から展開されると、回転テーブル184が自動的に位置決めされ、その際、その回転テーブル184の、測定ヘッドMHに対する相対位置が、位置決めごとに、同じものとして再現される。したがって、この3次元入力装置10によれば、回転テーブル184が自動的に位置決めされるごとに、その回転テーブル184の回転中心軸の、測定ヘッドMHに対する相対位置も、同じものとして再現される。
よって、この3次元入力装置10によれば、被写体Sの3次元測定のために、回転テーブル184の回転中心軸の検出または推定を完全にないしは部分的に省略可能となる。
回転テーブル184の回転中心軸の推定を行うにしても、その推定が行われるべき空間領域の大きさを、展開時におけるホルダHDの各ジョイント(各ヒンジ部)140,142,144に存在するクリアランス(がた)に起因する回転中心軸の位置変動を考慮して決定すれば足り、よって、その空間領域が小さくて済む。
いずれにしても、本実施形態によれば、同じ被写体Sにつき、各面ごとに独立して測定された複数の形状および色を正しく結合するために行われる回転中心軸推定処理の負担を軽減することが容易となる。ここに、「回転中心軸推定処理」の一例としては、被写体Sの全周について離散的に測定された複数の色形状間の位置ずれが実質的に最小となるように、回転中心軸の座標を推定する手法を採用することが可能である。
被写体Sの撮像および測定のために測定ヘッドMHに課されるべき負担が軽減される別の理由を説明するに、ホルダHDが展開されるごとに、回転テーブル184が常に同じ正規位置(測定ヘッドMHからの距離および角度)に自動的に位置決めされるため、被写体Sが常に撮像視野の中心に位置するという効果、焦点調節を簡略化することができるという効果等が得られ、それら効果により、被写体Sの撮像および測定のために測定ヘッドMHに課されるべき負担が軽減される。
さらに、ホルダHDが展開されるごとに、回転テーブル184が常に同じ正規位置(測定ヘッドMHからの距離および角度)に自動的に位置決めされるため、測定ヘッドMの撮像可能領域いっぱいに配置された被写体Sを、撮像視野内で画面全体にできる限り大きく撮像することが容易となる。その結果、被写体Sの3次元入力精度を向上させることが容易となり、このことによっても、被写体Sの撮像および測定のために測定ヘッドMHに課されるべき負担が軽減される可能性がある。
さらに、本実施形態によれば、それ自体幾何学的な再現性を有して変形可能なホルダHDにより、回転テーブルユニットRTと測定ヘッドMHとが物理的に互いに関連付けられる。したがって、本実施形態によれば、ユーザが、ホルダHDの変形によって回転テーブルユニットRTを測定ヘッドMHに格納する作業が単純化されるとともに、ユーザが、特別の配慮なしで、回転テーブルユニットRTを測定ヘッドMHにコンパクトに格納することが可能となる。
以上の説明から明らかなように、本実施形態においては、投影部12が前記(1)項に係る「投影装置」の一例を構成し、光源部68が同項における「光源」の一例を構成し、光変調体200が同項における「光変調体」の一例を構成し、投影光学系32が同項における「光学系」の一例を構成しているのである。
さらに、本実施形態においては、光変調体200が前記(3)項における「透過型の光変調体」の一例を構成し、光直進部310が前記(5)項における「光直進部」の一例を構成し、光偏向部312が同項における「光偏向部」の一例を構成しているのである。
さらに、本実施形態においては、投影部12が前記(12)項に係る「投影装置」の一例を構成し、光源部68が同項における「電磁波源」の一例を構成し、光変調体200が同項における「電磁波変調体」の一例を構成し、投影光学系32が同項における「選択部」の一例を構成しているのである。
なお付言するに、本実施形態においては、光変調体200が、空間に関して非選択的に光透過を行う形式とされているが、例えば、空間に関して非選択的に光反射を行う形式の光変調体に変更して本発明を実施することが可能である。
さらに付言するに、本実施形態においては、光変調体200が、入射光の偏向を行わない光直進部310と、入射光の偏向を行う光偏向部312とを含むように構成されている。これに対し、この光変調体200を、例えば、いずれも入射光の偏向を行う小偏向部と大偏向部とであって、大偏向部は小偏向部より大きい角度で入射光を偏向するものを含む光変調体に置換して本発明を実施することが可能である。
さらに付言するに、本実施形態においては、複数種類のパターン光が選択的に物体に投影されるが、固定パターン光を物体に投影することによってその物体の3次元形状を入力する3次元入力装置に本発明を適用することが可能である。この場合、入射光に対して位置が固定された光変調体における所定の部分が、入射光を通過光成分と非通過光成分とに分割する作用を有することになる。その結果、前述の実施形態と同様にして、この3次元入力装置を、その入力精度を確保しつつ、安価に製造することが容易となる。
以上、本発明の実施の形態のうちのいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記[発明の開示]の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。