以下、本発明の一実施の形態を、図1〜図17を参照して説明する。本実施の形態では、3次元空間上において3次元立体像の入力と表示操作が可能な3次元入力表示装置を例に説明する。
まず、本例の3次元入力表示装置の外部構成例について、図1を参照して説明する。3次元立体像の入力と表示操作が可能な入出力ディスプレイ1は、昆虫の複眼状のフライアイレンズと称されるマイクロレンズを多数配列させたマイクロレンズアレイと、それぞれのマイクロレンズに対して撮像表示素子を備える。入出力ディスプレイ1は、システム制御する情報処理装置10により、画像の撮像と表示の処理が行われる。入力ペン2aから発せられた入力光線4は、入出力ディスプレイ1のマイクロレンズアレイに照射され、情報が記録される。そして、再び撮像表示素子より発する再生光線5は、ペン先の軌跡3上で収束した後、発散する。このような構成を有する装置を3次元入力表示装置100とする。本例の3次元入力表示装置100は、ユーザが、入出力ディスプレイ1上の空間でペン先を発光させる入力ペン2aより、時系列にペン先の軌跡の座標情報として蓄積させ、蓄積した座標情報をペン先の軌跡3として表示させるアプリケーションを有する。また、この他に複数のアプリケーションを有しており、詳細については後述する。
次に、入出力ディスプレイ1の例について、図2を参照して説明する。入出力ディスプレイ1の表面部分にあたるディスプレイ表面1dは、マイクロレンズ層、隔壁層、画素層の3層構造としてある。被写体に対向する入出力ディスプレイ1の表面には、多数のマイクロレンズ1aを平面状に配置してレンズアレイとして構成するマイクロレンズ層を設ける。また、被写体の像が結像する撮像表示画素1cを画素層とし、マイクロレンズ層の間には、それぞれのマイクロレンズで集光された光線と、隣のマイクロレンズで集光された光線とが干渉することのないように隔壁1bが隔壁層として設けてある。
このような構成により、入出力ディスプレイ1では、多数のマイクロレンズそれぞれ越しに見た被写体の画像として、個眼像が得られる。なお、入出力ディスプレイパネル1の大きさは自由であり、レンズアレイの密度、パネルの画素密度が高いほど、高い座標検出精度と、高精細な映像が得られる。
次に、入出力ディスプレイ1に設けられる情報処理装置10の内部構成例について、図3のブロック図を参照して説明する。なお、情報処理装置10は、入出力ディスプレイ1と一体的に形成されるようにしてもよいし、別の筐体として形成されるようにしてもよい。
情報処理装置10の各部、入出力ディスプレイ1の入力表示処理を制御するCPU(Central Processing Unit)13は、読み出し可能なROM(Read Only Memory)11に記憶されているプログラム、又は大容量記憶装置としてのハードディスクドライブ等で構成してある記憶部16から書き込み可能なRAM(Random Access Memory)12にロードされたプログラムに従って各種の処理を実行可能である。また、RAM12は、CPU13が各種の処理を実行する上で必要なデータ、パラメータ等を適宜格納する。
ROM11、RAM12、CPU13は、バス25を介して相互に接続してあり、データ伝送を行う。また、バス25には、入出力ディスプレイ1、キーボード、マウス、入力ペン2a等の入力処理を行う入力部14、スピーカ等の出力処理を行う出力部15、記憶部16、図示しない外部端末との通信インタフェースとして通信を行う通信部17とも接続してある。また、必要に応じてドライブ50が、バス25に接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等の取り外し可能な記憶メディア19が適宜装着され、記憶メディア19から読み出されたプログラムが必要に応じて記憶部16に複写、インストールされる。
画像撮像時には、撮像処理を行う受光駆動部21により被写体の撮像を行う。この撮像情報は基本的には1秒間に30枚以上の動画情報とする。受光駆動部21には撮像領域を設定する撮像領域設定部22が構成してあり、撮像を行わせる画素に対して例えば0V近傍の電圧を印加し、その画素により撮像領域を形成する。ここで、撮像動作を行っている被写体の1つの像が結像する所定の数の画素で構成される領域を「撮像領域」という。そして、受光駆動部21は、入出力ディスプレイ1の撮像表示画素のうち、撮像動作を行っている画素からの出力を検出することで、それぞれの画素に対して外部から光が照射されているか否かの照射の有無と、光の量を検出する。受光駆動部21の検出機能による検出結果(画素値)は個眼像生成部23に出力される。
受光駆動部21から供給される検出結果に基づいて、各画素の画素値を合成してマイクロレンズごとの像として個眼像を生成する個眼像生成部23により生成された個眼像の画像データは、それぞれの個眼像の画像処理を行う画像処理部40に供給される。
例えば、画像処理部40は、撮像された個眼像をそのまま表示した場合、再現される立体像は、その奥行き、すなわち、凹凸が逆転した像になることから、それを正立像に変換する処理を行う。なお、凹凸が逆転した像になるのは、被写体の右側から撮像した像を、左側から観察者が観察することになるからである。画像処理部40で実行されるアプリケーションごとの処理の詳細については後述する。
画像表示時には、画像処理部40から、個眼像の画像データに基づいて表示動作を行っている画素に個眼像を表示させる表示駆動部31に処理した画像データを供給する。ここで個眼像が表示される領域は、個眼像の撮像が行われた入出力ディスプレイ1の領域に対応する位置の領域となる。ここで、表示動作を行っている被写体の1つの像を表示する所定の数の画素で構成される領域を「表示領域」という。表示駆動部31内の表示領域を設定する表示領域設定部32は、入出力ディスプレイ1の画素の駆動を制御し、表示を行わせる画素に対して正方向の電圧を印加し、その画素により表示領域を形成する。そして、所定のレンズアレイ数分だけ画像の表示を行う。
なお、撮像した画像データを通信部17を介して通信回線により伝送させる場合は、所定の圧縮処理を行って情報量を減少させる。この場合、それぞれの個眼像は非常に似通ったものであることから、例えば、ある位置で取得された基準となる1つの個眼像を中心として、周りの位置で取得された5×5個などの所定の数の個眼像を1つのグループとする。その基準となる個眼像については、JPEG(Joint Photographic Expert Group)方式などで圧縮された1つの画像全体の画像データを送信し、他の24個の個眼像については、基準となる個眼像との差分のデータのみ送信するようにして画像データの圧縮を行う。なお、撮像した画像データ、複数の個眼像、画像認識用のテンプレート等は、伝送時における圧縮処理と同様の処理を行って記憶部16、又は記憶メディア19に保存し、随時取り出すこともできる。
次に、入出力ディスプレイ1を構成する撮像表示画素の構成例と入力表示処理の例について、図4〜図6を参照して説明する。図4及び図5は、入出力ディスプレイ1を構成する撮像表示画素1cの構成例を示す。本例の入出力ディスプレイ1は、それぞれの画素にスイッチング手段としてのTFT(Thin Film Transistor)41と、発光素子としてのEL(Electro Luminescence)素子44が設けてあり、自発光型のELディスプレイに適用した例としてある。
まず、撮像表示画素1cの構成例について図4を参照して説明する。撮像表示画素は、TFT41とEL素子44で構成される。TFT41のソース電極Sには、ソース電流を供給するソース線42が接続してあり、TFT41のゲート電極Gにはゲート電流を供給するゲート線43が接続してある。また、TFT41のドレイン電極DにはEL素子44が接続してあり、さらにEL素子44に対向電極45が接続してある。
このように構成される撮像表示画素1cの画像入力時の処理例について、図4を参照して説明する。TFT41のゲート電極Gに、0V近傍か又は逆方向の電圧が印加された場合、ソース電極Sに電圧が印加されているときでもチャネル中を電流が流れない。この状態で、マイクロレンズにより集光された外部からの入力光線47aがTFT41を照射したとき、TFT41のチャネルの光伝導性により、微量ではあるがドレイン電極Dからソース電極S方向にリーク電流(オフ電流)46aが発生する。また、同様に、EL素子44においてもリーク電流が発生する。このことから、0V近傍か又は逆方向の電圧を印加した画素(TFT41、EL素子44)が発生するリーク電流46aを増幅してその有無を検出することによって、その画素に対して外部から光が照射されているのか否かを識別することが可能になる。また、リーク電流の量によって、光の量も識別することが可能になる。RGBのそれぞれの画素(Rを発光するEL素子44が設けられている画素、Gを発光するEL素子44が設けられている画素、Bを発光するEL素子44が設けられている画素)によりRGBそれぞれの光の有無と量が識別されることになるため、撮像領域を構成する全ての画素の出力を合成することによって、カラーの被写体の個眼像を得ることが可能となる。
撮像表示画素1cの画像表示時の処理例について、図5を参照して説明すると、TFT41のゲート電極Gに正方向の電圧(バイアス電圧)が印加されたとき、図5の実線矢印46bで示すように、ソース電極Sに印加された電圧に応じて、アルファモスシリコン又はポリシリコンからなる活性半導体層(チャネル)中を、ソース電極Sからドレイン電極D方向に電流が流れる。TFT41のドレイン電極DにはEL素子44のアノード電極が接続されており、TFT41のチャネル中を電流46bが流れることにより生じるアノード−カソード電極間(ドレイン電極Dが接続されている電極と対向電極45の間)の電位差に応じてEL素子44が発光する。そして、EL素子44からの再生光線47bが入出力ディスプレイ1上の隔壁層、マイクロレンズ層を介して入出力ディスプレイ1の外部に出射され画像の表示が行われる。
以上から、印加する電圧を制御することにより、1つの画素(TFT41)に表示動作と撮像動作(入力動作)を選択的に行わせることができることが分かる。また、図4及び図5で構成される画素は、例えば0V近傍の電圧が印加された状態で外部から光が照射された場合、TFT11に加えて、EL素子44が発生するリーク電流も検出されるから、外部からの光に対して感度が高いといえる。
次に、光が照射されている場合と、照射されていない場合のTFT41のドレイン電流Idの値の測定例について、図6を参照して説明する。図6は、図4と図5に示す画素で生じた電流の測定値の例を示す説明図である。縦軸は画素中の電流を表し、横軸はゲート電極Gに印加した電圧を表す。
計測結果を表す線L1は、正方向の電圧が印加された状態で光が照射されたときに画素から検出される電流(TFT41のチャネル中を流れる電流と、EL素子44中を流れる電流)の値を示しており、線L2は、正方向の電圧が印加された状態で光が照射されていないときに画素で発生された電流の値を示している。線L1,L2により、正方向の電圧が印加されている場合は、外部からの光の有無に関わらず、検出される電流値には差がみられない。
一方、計測結果を表す線L3は、逆方向の電圧が印加されている状態で外部から光が照射されたときに、その画素が発生した電流の値を表しており、線L4は、逆方向の電圧が印加されている状態で外部から光が照射されていないときに、その画素が発生した電流の値を表している。線L3と線L4を比較してわかるように、逆方向の電圧が印加されている場合、外部から光が照射されたときと、照射されていないときとで、その画素が発生する電流に差が生じている。例えば、約−5ボルトの電圧(逆方向の電圧)が印加されている状態において、外部から所定の光量の光が照射された場合、「1E−8(A)」程度の電流(TFTの活性半導体層中において発生した電流と、EL素子が発生した電流)が発生する。
図6においては、外部から光が照射されていない場合であっても、「1E−10(A)」程度の微小な電流が発生していることが線L4により示されているが、これは計測中のノイズによるものである。なお、RGBのうちのいずれの色を発光するEL素子であっても、図6に示すものとほぼ同様の計測結果が得られる。従って、0V近傍の電圧が印加されている状態でも、発生した電流を増幅させることで、この差、すなわち、光が照射されているか否かの検出が可能となる。
このことから、意識的に逆方向の電圧を印加することなく、ゲート電圧が0V近傍の値になるように制御することで、ある画素に撮像動作を行わせることができる。そして、ゲート電圧が0V近傍の値になるように制御して撮像動作を行わせることにより、逆方向の電圧を印加してその動作を行わせる場合に較べて、逆方向の電圧の分だけ消費電力を抑えることができる。
また、制御する電圧の数が少なくなるため、その制御、さらにはシステム構成が容易になる。すなわち、ゲート電圧が0V近傍の値になるように制御することは、正方向の電圧が印加されないように制御することでもあるから、正方向の電圧が印加されるようにゲート電圧を制御する制御線や電源回路だけをもって実現することができる(逆方向の電圧が印加されるようにゲート電圧を制御する制御線を別に設ける必要がない)。
これにより、入出力ディスプレイ1の駆動基板やシステム基板上から電源回路の構成を簡略化することができ、低消費電力化を実現することができるだけでなく、それらの基板上の限られたスペースの効率的な利用も実現することができる。
さらに、逆方向の電圧を印加しないようにすることにより、逆方向の電圧を印加したときに生じることのあるTFT41やEL素子44の破壊を回避することができる。例えば、チャネル長(L長)を長くすることでTFT41の耐電圧性を高めることができるが、この場合、オン時(導通時)の電流が下がってしまい、十分な電流を確保するためには、チャネル幅(W長)を大きくする必要がある。この結果、TFT41を流れる電流値を変えることなく耐電圧性を高めるためには、1つのTFT41のサイズを大きくする必要があり、各画素のサイズが小さい高精細なディスプレイの各画素に、そのTFT41を配置することが困難となる。
従って、逆方向の電圧をなくすことで、TFT41やEL素子44の耐圧設計が容易になり、かつ、TFT41やEL素子44そのもののサイズを小さくすることができ、これにより、高精細なディスプレイを実現することが可能になる。
以上のように、入出力ディスプレイ1を構成する各画素に少なくともTFT41が設けられている場合、0V近傍か、それより逆方向の電圧を印加することによって、画素を用いて撮像を行うことが可能になる。
例えば、入出力ディスプレイ1の全ての画素に撮像動作を行わせることによって、マイクロレンズの数だけ(撮像領域の数だけ)、それぞれの位置を視点としたときの被写体の像が得られる。
次に、入出力ディスプレイ1の一領域の表示例について、図7を参照して説明する。図7は、図2の隔壁1bにより囲まれる撮像表示画素1cが複数個で構成する1つの領域の例を示す平面図である。この1つの領域は、例えば、15×15個の撮像表示画素1c(RGBの3つのサブ画素を1組とした画素(15×3×15個のサブ画素))から構成される。このように、15×15個の撮像表示画素1cから構成される1つの領域の前方(被写体側)に1つのマイクロレンズ1aが設けられているため、この15×15個の撮像表示画素1cの領域に、光軸を中心として180度回転した被写体50の像が結像する。
このように、入出力ディスプレイ1においては、表示だけでなく、撮像、すなわちマイクロレンズ1aにより集光された光の検出もそれぞれの撮像表示画素1cにより行われる。なお、図7では、1つの個眼像を15×15個の画素を用いて撮像するとしたが、画素はこれに限定されるものではなく、これ以上の画素数で撮像が行われるようにしてもよい。また、1つのマイクロレンズ1aに対して割り当てられる撮像表示画素1cの数を多くするほど、解像度の高い被写体の像を得ることができる。
次に、入出力ディスプレイ1の撮像動作と表示動作とが実行される状態について図8を参照して説明する。図8は、各画素の動作の例について示す説明図である。
本例の入出力ディスプレイ1においては、第Y1行目から第Y1−y1行目までの画素全体により表示動作が行われ、第Y2行目から第Y2−y2行目までの画素全体により撮像動作が行われる。ここで、表示動作、撮像動作を行わせる対象の行をそれぞれ表示動作行1e、撮像動作行1fとする。表示動作行1e、撮像動作行1fが、1フレーム毎に、第Y行目、第Y+1行目、第Y+2行目、・・・といったように入出力ディスプレイ1の上から下に順次切り替えられる。そして、切り替えられた対象行が、入出力ディスプレイ1の下端の行に達したら、上端の行から再びその切り替え処理を繰り返す。
つまり、1フレーム内において、撮像動作行1fに含まれる画素全体により撮像動作が行われると同時に、撮像動作を行っている画素と異なる表示動作行1eに含まれる画素全体により表示動作が行われるように、各画素の動作が制御される。こうすることにより、所定のフレーム数の表示(撮像)期間を見た場合、入出力ディスプレイ1を構成する全ての撮像表示画素1cにより撮像と表示が行われることになる。
これにより、マイクロレンズ1aの数だけ、それぞれの位置を視点としたときの被写体の像が得られる。また、マイクロレンズ1aの数だけ、個眼像を表示し、立体像の再現が行われるようになる。
ここで、例えば入出力ディスプレイ1の上端から下端までを、例えば30Hz,60Hz等の周期で表示動作行1eと撮像動作行1fを切り替えるようにする。撮像動作行1fの撮像表示画素は画像を表示しないが、走査周期が短いため、撮像動作する画素の存在をユーザに認識させることがない。このようにして、入出力ディスプレイ1により、被写体の撮像と、撮像した画像に基づく立体像の再現が行われる。
次に、情報処理装置10の撮像と表示の処理について図9及び図10のフローチャートを参照して説明する。なお、図9の撮像処理と、図10の表示処理は並列的に行われる。まず、情報処理装置10の撮像処理について、図9のフローチャートを参照して説明する。
受光駆動部21の撮像領域設定部22は、撮像動作を行わせる入出力ディスプレイ1の撮像表示画素1cに対して、例えば0V近傍の電圧を印加し、撮像領域を設定する(ステップS1)。そして、受光駆動部21は被写体の撮像を行う(ステップS2)。すなわち、入出力ディスプレイ1の画素のうち、撮像動作を行っている撮像表示画素1cからの出力を検出し、その画素に対して外部から光が照射されているか否か、および光の量を検出する。検出結果である画素値は個眼像生成部23に出力される。
個眼像生成部23は、受光駆動部21から供給されてくる検出結果に基づいて個眼像を生成する(ステップS3)。生成された個眼像の画像データは画像処理部40に出力される。画像処理部40は、個眼像生成部23から供給されてくる画像データに基づいて、それぞれの個眼像に対して所定の画像処理を行う(ステップS4)。
以上の処理を繰り返し、撮像領域を構成する画素が順次切り替えることで、入出力ディスプレイ1上の複数の点を視点とした被写体の個眼像が得られる。
次に、立体像を再現する情報処理装置10の表示処理について、図10のフローチャートを参照して説明する。
まず、表示領域設定部32は、表示動作を行わせる入出力ディスプレイ1の撮像表示画素1cに対して正方向の電圧を印加し、表示領域を設定する(ステップS11)。表示領域は、図9で設定される撮像領域と異なる位置に設定される。表示駆動部31は、バッファとしてのRAM12に記憶されている画像データに基づいて、表示領域を構成する画素に個眼像を表示させる(ステップS12)。画像データを取り出す際は、RAM12以外に、記憶部16、取り外し可能な記憶メディア19、又は通信部17を介して通信回線から取得した画像を再現することも可能である。
以上の処理を繰り返し、入出力ディスプレイ1の表示領域を構成する撮像表示画素1cを順次切り替えて、撮像した被写体の立体画像が再現される。
次に、本例の入出力ディスプレイ1で操作可能な3種類のアプリケーションの例について、図11〜図17を参照して説明する。本例では、3次元ポインタ、3次元描画、立体CG(Computer Graphics)図形操作のアプリケーションについて説明する。本例の3次元入力表示装置100では、目的とするアプリケーションにより、必要な処理が異なる。
まず、3次元ポインタのアプリケーションについて、図11を参照して説明する。図11より、3次元ポインタを用いる際には、先端から発光するペン状の入力部として入力ペン2aを用いて入出力ディスプレイ1上の空間に描画した3次元画像を入出力ディスプレイ1で撮像し、撮像した画像を入力画像取得部40aで取り込む。なお、図11において、撮像と表示に関わる入出力ディスプレイ1と画像処理部40間の処理ブロックは、図3で既に説明したため、処理ブロックの記載を省略する。
そして、撮像した入力画像から光源の3次元座標を求める処理を行う。ところで、取り込んだ3次元画像から3次元座標を求める際、マイクロレンズの光軸ずれ、光軸倒れ、レンズ歪み等が正確な座標算出を妨げる要因となるため事前に補正を行う必要がある。このため、初期設定として入力画像取得部40aで取得した入力画像を、RAM12のレンズ歪みテーブルに補正値として格納する。そして、3次元座標の演算を行う3次元座標演算部40cでレンズ歪みテーブルの補正値を用いて座標演算を行う。なお、レンズ歪みテーブルを記憶部16に格納して補正値を随時読み出すようにすることもできる。レンズ歪みテーブルを一度作成しておくと、光源の3次元座標を、複数の個眼像から得られた画像により三角測量の原理で求めることができる。
そして、入力画像のコントラスト強調処理、時間方向での画像重ね合わせ処理を行う出力画像加工部40dで所定の画像処理を行う。このような画像処理を施した後、3次元ポインタ、3次元描画像を生成する画像出力部40eから入出力ディスプレイ1に画像を供給して入出力ディスプレイ1上に画像を再現させる。出力画像に関しては、基本的にレンズの光軸ずれ(ばらつき)、光軸倒れ、レンズ歪みなどを考慮する必要はない。これは、入力時の光路と、表示時の光路が同じであれば、入力に用いた光源とまさに同じ場所に、表示による仮想光源(実像)が生成されるためである。
図1で示した3次元ポインタは、入力情報(撮像情報)を表示するアプリケーションである。発光する入力ペン2aは必ずしも1つでなくとも良く、複数のペンを用いてもよい。出力画像は入力画像をそのまま表示しても良いが、コントラストを上げたり、入力光の色を変えたりして出力することで入力座標の確認が容易にできる。
通常のIPではフィルムなどを用いるため、現像処理のためにレンズとフィルムの位置関係が固定できないが、本例のレンズアレイと入出力ディスプレイパネル1の位置関係は常に固定である。このため、一度光軸ずれなどの計測を行えば、3次元入力表示装置100の固有値として使用することが可能であり、再計測を行う必要はない。また、計測には入出力ディスプレイ1の撮像機能を利用することが可能であり、しかも計測結果は、表示画像生成時にも利用できる。
次に、3次元描画のアプリケーションについて、図11及び図12を参照して説明する。本例の3次元描画のアプリケーションは、3次元ポインタの技術に加えて入力情報を時間方向に重ねて表示すると共に、3次元空間上に表示させたアイコン等で2次元ディスプレイで行うような描画が可能である。本例では、図12に複数の色を選択可能な色パレットアイコン2bと、ペン先の軌跡3を消去可能な消しゴムアイコン2cを、入出力ディスプレイ1上にGUI(Graphical User Interface)表示させている.
3次元ポインタの技術については、図11で説明したように、先端から発散光を放出するペン状の入力部として入力ペン2aで入出力ディスプレイ1上の空間に描画した3次元画像を入出力ディスプレイ1で撮像し、撮像した画像を取り込む入力画像取得部40aに画像を供給する。3次元描画のアプリケーションでは、先端から発散光を出す入力ペン2aで入力するのが最も簡単であるが、先端が認識しやすいものであれば、必ずしも発光するものでなくとも良い。3次元ポインタの撮像表示技術については、既に説明したため、詳細を省略する。
アイコンのGUI表示処理において、3次元ポインタの撮像処理と同様に、撮像した画像を入力画像取得部40aで取り込み、撮像画像をレンズ歪みテーブル演算部40bに供給して、レンズ歪みテーブルに補正値を格納する。そして、3次元座標演算部40cでレンズ歪みテーブルの補正値を用いて座標演算を行う。
3次元座標の演算後に所定のアイコンを入出力ディスプレイ1上にGUI表示させるため、GUI処理を行うGUI処理部40jに演算データを供給する。ここで、ユーザがアイコンを操作した場合におけるアイコン選択、アイコン移動等の処理をコマンドと称し、移動量等の変化量を操作量と称する。得られた3次元座標より、GUI処理部40jは、アイコン等を3次元表示させるためのGUI処理を行い、アイコンのコマンド・操作量を決定するコマンド・操作量決定部40lに処理データを供給する。
コマンド・操作量決定部40lでコマンド、所定時間の前後における操作量等の各種パラメータを決定した後、3次元CGの数値処理を行う3次元CG生成部40mにデータを供給し、3次元CGの数値データを生成する。生成した数値データは、各レンズの個眼像に対応するCGデータを生成する各レンズ用個眼像CG生成部にデータ供給して、画像再生を行うマイクロレンズごとの個眼像に対してCGデータを生成し、レンズ歪みテーブル演算部40bに個眼像CGデータを供給する。レンズ歪みテーブル演算部40bでは、RAM12のレンズ歪みテーブルより補正値を読み出して個眼像CGデータに対する補正を行う。そして、CG画像の出力を制御するCG画像出力部40oに補正済みの個眼像CGデータを供給し、CG画像として入出力ディスプレイ1上にアイコン等の立体画像を表示させる。
このようにして描画で必要となる消しゴム、全消去、色の変更等のアイコンを、3次元表示空間上にGUI表示させて配置する。さらに使いやすくするために、複数の形態の異なるペンを用意し、描画色や消しゴムの機能を割り付けておくと、より自然なツールとして利用可能である。これは、入力に撮像情報を用いるからこそ可能であり、3次元デジタイザでは、座標以外の情報は入力することができない。また、異なる種類のペンを識別する処理には、発光する色を変える処理、撮像情報の処理が必要となるペン先の形を変える処理等がある。
ここで、IPの入力画像に自然画を利用することで、例えば手の形などを識別し、指先の座標を検出、演算することも可能である。以下に画像認識のためのIP特有の処理について、図13及び図14を参照して説明する。
始めに、多視点での2次元画像生成処理の例について図13を参照して説明する。図13(a)は、ブロック状の被写体51を撮影した例である。図13(b)は、複数の個眼像によるIP画像の例である。本例では、個眼像を20個×15個用いて撮像した例としてある。図13(c)は、多視点の2次元画像の例である。本例では、実際に簡単な物体の個眼像情報から、正面とその他8視点の2次元画像を合成した例としてある。
本例の3次元入力表示装置100では、比較的レンズアレイに近いところに被写体がある場合、レンズの画角にもよるが、各個眼像に被写体の全景が入りきらないことが多くなってしまう。そのため、各個眼像のセンタ画素の情報から、正面視点の2次元画像を作り出す。さらに、各個眼像のセンタから一定距離離れた画素の情報を用いて、代表的な視点の2次元画像を作り出す。このようにして多視点の2次元画像を得ることができる。
次に、自然画認識と特徴点座標検出を行う処理の例について、図14を参照して説明する。ここで、「自然画」とは、人間の手などの実体が存在する物を表す。また、「特徴点」とは、手で対象物を指し示した場合における指先のような特徴的な部分を表す。
まず、撮像処理を開始し、被写体が撮像されたIP画像を取得する(ステップS20)。本例のIP画像50aは、人差し指を立てた人間の右手を被写体としており、被写体の上下反転画像が撮像される。次に、得られたIP画像50aから多視点2次元画像50cを生成する(ステップS21)。そして、多視点2次元画像50cより、特徴量を抽出する(ステップS22)。本例では、特徴量として右手の形状を抽出する。
多視点2次元画像50cと、受容すべき操作(手、ツールの形)のテンプレート画像50dもしくは特徴量とのマッチングをとり(ステップS23)、図形・ジェスチャ認識処理を行う(ステップS24)ことで操作の種類、内容を特定する。このマッチングには2次元画像で行われている技術を流用すればよい。
次に認識された操作で、必要とされる3次元座標を計算し、各視点の2次元座標から、目的とする特徴点を選択する(ステップS25)。本例では、3次元座標を計算した指先を表す特徴点画像50eより特徴点50′eを指先として選択してある。そして、特徴点を写しこんでいる個眼像を、生成された2次元画像を元に複数選択する(ステップS26)。本例では、IP画像50aより選択個眼像50bを選択したものとする。
次に、それぞれの個眼像の中でさらに特徴点を検出する(ステップS27)。本例では、個眼像内特徴点画像50fより、複数の個眼像から特徴点50′fとして指先を検出している。そして、各個眼像の特徴点の座標から、目的とする3次元座標を計算する(ステップS28)。3次元座標の計算結果より、操作量画像50gに示すように入出力ディスプレイ1上にある実物体(指先)のコマンド(操作)と操作量を決定することができる(ステップS29)。
これらの処理は、画像マッチング(特徴量マッチング)、特徴点検出に既存の2次元画像処理で行われている技術を用いるようにしたものである。また、最初に各個眼像の全ての特徴点を検出し、被写体の3次元情報を再構成した後に、マッチングを取ることも可能である。
次に、立体CG図形操作のアプリケーションについて、図11及び図15〜図17を参照して説明する。まず、図15を参照してアプリケーションの処理ブロックの構成例について説明する。本例の立体CG図形操作のアプリケーションは、入力座標に応じて変化する立体表示情報を再現する。例えば、球体などのオブジェクトを3次元表示しておき、手でそれを移動、回転、変形、分割、結合等の操作を行うことが可能である。このアプリケーションでは、入力される画像(操作者の手の画像)から図形情報、コマンド情報を解釈し、それに応じた出力用の画像はコンピュータグラフィックスによって生成する。
まず、入出力ディスプレイ1上に仮想表示させた四輪自動車形状の外観を有する3次元立体像2dに対する操作処理例について図15を参照して説明する。ユーザは実物体である左手2eと右手2fで移動等の操作を行う例を示している。
図11より、入出力ディスプレイ1上で撮像したユーザの左手2eと右手2fの撮像画像を入力画像取得部40aで取得する。そして、レンズ歪みテーブル演算部40bでレンズ歪みの補正値を演算し、多視点2次元画像生成部40fでユーザの左手2eと右手2fの多視点2次元画像を生成する。同時に、3次元座標演算部40cで演算した3次元座標と多視点2次元画像を、本例の撮像画像が左手と右手の自然画であることを認識する自然画認識部40gに供給する。自然画認識部40gでは、撮像画像とテンプレート画像とのマッチングを行う画像マッチング部40hでのマッチング処理を行い、マッチング画像の特徴点を特徴点抽出部40iで抽出する処理を行う。
その結果を受けて、ユーザの操作を解釈するジェスチャ解釈部40kにてジェスチャ解釈を行った後、コマンド・操作量決定部40lでユーザのコマンドと操作量を決定する。以降の3次元CG作成処理は既に説明した3次元描画の処理と同様であるため、詳細を省略する。また、図16、図17の立体像に対する操作についても図15で説明した処理と同様の処理であるため、説明を省略する。
次に、入出力ディスプレイ1上に仮想表示させた亜鈴状の外観を有する3次元立体像2gに対する操作処理例について、図16を参照して説明する。ユーザは実体物である左手2eと右手2fで変形させる操作例を示している。なお、図16の立体像に対する操作については立体CG図形操作で説明した処理と同様の処理であるため、説明を省略する。
手で操作するときの、操作の種類は予め認識できるコマンドとして準備しておく。例えば手のひらでオブジェクトを押すような動作は「移動」。手のひらでオブジェクトをこするような動作は「回転」。指先をオブジェクトに垂直に押し付けるのは「変形」、同様につまむような操作も「変形(引っ張り出す)」。両手でオブジェクトをつまみ、引っ張る動作は「分割」、2つのオブジェクトを2つの手のひらで押して合わせる動作は「結合」などのようにする。
さらに、入出力ディスプレイ1上に仮想表示させた円筒状の外観を有する3次元立体像2hに対する操作処理例について図17を参照して説明する。ユーザは実体物であるキリ2iで立体像2hに穴をあけたり、カッタ2jで立体像2hを切ったりするような操作を行う例を示している。なお、図17の立体像に対する操作については立体CG図形操作で説明した処理と同様の処理であるため、説明を省略する。
この場合、手に関する情報だけではなく、いくつかの画像認識しやすい形状のツールを登録しておく。それらのツールを撮像情報から認識することにより、操作の種類を増やすことができる。本例では、カッタの形状をしたツール(カッタそのものでも良いが、撮像情報から認識しやすいように色をつけたり、形状を単純化させたりした方が、画像認識がより確実になる)を用いて、「直線的な分割」を行う。また、定規の形状をしたツールで「面取り」を行ったり、キリの形状をしたツールで「穴あけ」などの変形操作を行ったりする。
このようにすることで、3次元空間上での入力表示操作を行うことができるようになった。
本実施の形態によれば、入力した座標(図形)をそのまま表示に反映すれば良いため、第1のIPのみを利用する。このような1段階のみのIPによる入力表示技術は、コンピュータグラフィック技術の進歩により品質が向上している。また、再生像の裏返しの問題は最初から存在せず、レンズ歪の問題なども1段階分だけで済むため、装置を簡単に構成することができるという効果がある。
また、小規模から大規模まで、簡単なシステムで3次元入力表示装置を構成できる。単なる形状入力という用途だけでなく、オブジェクトの変形といった編集作業も実現できる。また、ジェスチャ認識の精度が上がれば、より自然なオブジェクト操作ができるようになり、3次元物体の編集、操作が容易になるという効果がある。
また、従来用いられた2次元入力タブレットよりも優れた点として、情報入力が3次元の画像情報として得られるため、複数点の入力や、手の形や面積による操作を実現することが可能である。このため、様々な入出力インタフェースとしての機能を持たせることができるという効果がある。
また、3次元空間上で入力と表示を1台の装置で行うことが可能である。このため、材料コスト、製造コスト面で非常に有利となる効果がある。また、リアルタイムで座標入力に対する立体表示を行い、操作する側へフィードバックできるという効果がある。本実施の形態において、立体表示時の際であっても観察のための特殊な眼鏡を必要とせず、両眼視差だけでなく、上下左右への運動視差も表現される。
また、3次元座標入力装置としては非常に小さくできるため、手軽な3次元スキャナとしての用途も可能となる。また、2台の3次元入力表示装置をそれぞれ双方向通信させることで電話通信等に適用することができ、遠隔地においても互いの話者の立体画像を表示させることも可能となる。
また、レンズアレイと入出力ディスプレイ1間の位置関係が常に固定であるため、レンズの歪み情報などは3次元入力表示装置自体の固有値として保有することができる。この場合、一度歪み情報等を計測すれば以降の処理では常に歪み情報を利用可能であり、かつ表示時における補正処理にも同じ値を利用できるため、2段階式IPを用いた画像表示システムに比べて撮像、表示の厳密な画像調整を行う必要がないという効果がある。
また、入力、表示処理において、共に光学的性質を利用し、同じ光路を利用するため、レンズ性能への要求が厳密でなくても所定の機能を実現できる。このため、撮像、表示する際のマイクロレンズを安価に製造することが可能であり、コストを減少させるという効果がある。
なお、上述した実施の形態において、利用可能なアプリケーションを3種類例示したが、出力は一度入力した画像を処理して、新たな表示画像を作り出してユーザへ見せることも可能であり、様々なアプリケーションを利用できる。例えば、光ペン入力をそのまま表示させる、指を認識させる、自然画で入力させる等がある。
また、上述した実施の形態において、撮像表示素子にTFT41が各画素に設けられるとしたが、外部からの光を受光することに応じてリーク電流を発生し、かつ、そのオン/オフにより画素の動作を切り替えることができるものであれば、どのようなトランジスタが設けられるようにしてもよい。
また、上述した一連のアプリケーション処理は、ハードウエアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
また、芸術分野、ゲーム等のエンタテインメント分野でも応用が考えられる。3次元のCG描画に加え、アーティストのジェスチャにより、描画情報の変化を定義しておくことにより、手軽に3次元画像を得ることができ、創造性の幅が広がるという効果がある。また、博物館等における展示物の表示にも用いるようにしてもよい。
また、コンピュータの中や、ネットワーク中の膨大な情報を、3次元空間中に配置し、その中から情報を取り出したり、操作したりすることも可能である。こうすることで、より多量の情報を効率よく扱うことができるという効果がある。
1…入出力ディスプレイ、1a…マイクロレンズ、1b…隔壁、1c…撮像表示画素、1d…ディスプレイ表面、1e…表示動作行、1f…撮像動作行、2a…入力ペン、2b…色パレット、2c…消しゴム、2d,2g,2h…3次元立体像、2e…左手、2f…右手、2i…キリ、2j…ナイフ、3…ペン先の軌跡、4…入力光線、5…再生光線、10…情報処理装置、11…ROM、12…RAM、13…CPU、14…入力部、15…出力部、16…記憶部、17…通信部、18…ドライブ、19…記憶メディア、21…受光駆動部、22…撮像領域設定部、23…個眼像生成部、25…バス、31…表示駆動部、32…表示領域設定部、40…画像処理部、41…TFT、42…ソース線、43…ゲート線、44…EL素子、45…対向電極、46a,46b…電流、47a…入力光線、47b…再生光線、50,51…被写体、60,60a,60b…撮像板、61,61a,61b…フライアイレンズ、62…実物体、63…各個眼像、64,64a,64b…再生用照明光、65…観察者、66,66a…入力光線、67…再生光線、67b…第1IP再生光線、68…第2IP再生光線、100…3次元入力表示装置