(57)【特許請求の範囲】
【請求項１】
表示対象物体を入力する入力手段と、
入力手段で入力された物体から来る光の波面と予め与えられた参照光の波面との干渉を数値的に計算する演算手段と、
計算された干渉縞を記憶する手段とを備えた計算機ホログラム作成装置におけるホログラム生成方法において、
ホログラムでの表示対象の空間を微小空間に分割し、
各微小空間からホログラム面上の各点までの距離に関する関数値、並びに光の波面情報に関する値を参照テーブルとして前記記憶手段に保持し、
前記入力手段により入力された物体の位置を前記微小空間に配置して、前記物体のホログラム面上で生成される光の干渉縞を、前記物体の微小空間での配置をもとに前記参照テーブルの参照値に基づいて前記演算手段による演算により求める、
ことを特徴とする計算機ホログラム作成方法。
【請求項２】
前記物体のホログラム面上で生成される光の干渉縞を、前記参照テーブルの参照値に基づいて前記演算手段による演算により求める過程では、
入力された物体の位置を前記ホログラムでの表示対象空間の座標系に座標変換し、
前記座標変換されて前記表示対象空間を分割した微小空間に存在する前記物体毎に該物体の波面を前記参照テーブルの参照値に基づいて前記演算手段による積和演算により求め、
参照光の波面を予め保持された前記参照テーブルから求めて前記積和演算により求められた前記物体の波面と掛け合わせて前記干渉縞を求める、
ことを特徴とする請求項１に記載の計算機ホログラム作成方法。
【請求項３】
前記物体のホログラム面上で生成される光の干渉縞を前記参照テーブルの参照値に基づいて前記演算手段による演算により求める過程では、前記微小空間に存在する各物体について並列に処理する、
ことを特徴とする請求項２に記載の計算機ホログラム作成方法。
【請求項４】
物体から来る光の波面と参照光との波面の干渉縞を計算機により数値的に求める計算機ホログラム作成装置において、
ホログラムでの表示対象の空間を微小空間に分割し、各微小空間からホログラム面上の各点までの距離に関する関数値あるいは光の波面情報に関する値を参照テーブルとして作成し管理する手段と、
入力された表示対象物体を前記微小空間の座標系に座標変換する手段と、
前記座標変換された物体の各座標を格納する前記微小空間を管理する手段とを有し、
前記物体の存在する各微小空間に対応する光の波面の値を前記参照テーブルの参照値から演算により求め、各微小空間に対応する参照値の加算処理を行う演算手段と、
前記求められた干渉縞を保持する手段と、
を備えたことを特徴とする計算機ホログラム作成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ホログラムを計算機により高速に作成するホログラム生成技術に関するものである。
【０００２】
【従来の技術】
計算機でホログラムの干渉縞を計算する従来の主な手法としては、
・物体を平面の集まりとして記述し、フーリエ変換を利用する方法、
・物体を点物体の集合として記述し、点光源の波面を加算することでホログラムを作成する方法、
がある。
【０００３】
前者の手法では、三次元物体を表示する場合、対象物の複数断面形状を求め、個々の断面形状をフーリエ変換する手法を採っている。複数断面で形状が表現できる対象であれば、この手法は高速に干渉縞を計算することができるが、表示する対象の存在する空間が大きくなると、１フレームの計算量の増加並びにフレーム数増加による計算量の増加の影響で全体の計算量が増大してしまう。
【０００４】
一方、後者の手法は、三次元物体を物体の点の集まりとして記述しているため、ＦＦＴの手法のような、対象の存在する空間が大きくても計算時間が増大するという影響はないが、形状を忠実に表現しようとすると、点の数が増加し、膨大な計算時間を必要とする。
【０００５】
ホログラムの計算方法としては、例えば、点光源Ｅ0、参照光Ｒとしたとき、これらの干渉縞は次式で表される。
【０００６】
【数１】
0003653361.tif 000002
【０００７】
ここで、光の振幅は、Ｅ0＝ａ／ｒ0ｅjkr0、Ｒ＝ｂ／ｒRｅjkrR、というように複素振幅で表され、点光源の位置を（ｘ，ｙ，ｚ）とするとき、ｒ＝√（ｘ2＋ｙ2＋ｚ2）である。また、Ｒeは、実数部を意味し、＊共役複素数を表す。
【０００８】
各点について上式を計算するには、複素数演算、平方根、積和演算を行なうため、点の数に比例して計算量が増大する。計算時間を高速化するために、これまでルックアップテーブル法が提案されている（Ｊｏｕｒｎａｌ  ｏｆ  Ｅｌｅｃｔｒｏｎｉｃ  Ｉｍａｇｉｎｇ，Ｖｏ１２，Ｎｏ．１，Ｊａｎｕａｒｙ  １９９３，ｐｐ２８−３４，Ｉｎｔｅｒａｃｔｉｖｅ  Ｃｏｍｐｕｔａｔｉｏｎ  ｏｆＨｏｌｏｇｒａｍ  Ｕｓｉｎｇ  ａ  Ｌｏｏｋ−ｕｐ  Ｔａｂｌｅ，ｍａｒｋＬｕｃｅｎｔｅ）。この手法は、ホログラムの微小領域で８つの視点の像が見えるとして、８つの視点に関する波面のパターンを参照テーブルとして持っている。物体が指定されると、ホログラム面上の各小領域について、複数の物体から発している波面をこの参照パターンの合成により表現する手法である。ホログラムを生成する場合は、このテーブル値を参照することで計算量を大幅に減らしている。
【０００９】
【発明が解決しようとする課題】
しかしながら、このルックアップテーブル手法は、再生系（視点の位置や解像度）を固定することで、参照テーブルを作成しているため、再生系が変わるとその都度、視点数や視域を再度設計し、参照テーブルを改めて計算し直さなければならないという問題がある。また、視点の数が固定であるため、特定の位置からしか像を観察できないという問題がある。つまり、再生するための系が特定されてしまうという問題がある。
【００１０】
本発明の目的は、上記の問題を解決するために、再生系に依存しないホログラムパターン高速計算手法を提供することにある。
【００１１】
【課題を解決するための手段】
上記の目的を達成するための方法として、本発明は、表示対象物体を入力する入力手段と、入力手段で入力された物体から来る光の波面と予め与えられた参照光の波面との干渉を数値的に計算する演算手段と、計算された干渉縞を記憶する手段とを備えた計算機ホログラム作成装置におけるホログラム生成方法において、ホログラムでの表示対象の空間を微小空間に分割し、各微小空間からホログラム面上の各点までの距離に関する関数値、並びに光の波面情報（振幅並びに位相）に関する値を参照テーブルとして前記記憶手段に保持し、前記入力手段により入力された物体の位置を前記微小空間に配置して、前記物体のホログラム面上で生成される光の干渉縞を、前記物体の微小空間での配置をもとに前記参照テーブルの参照値に基づいて前記演算手段による演算により求めることを特徴とする。
【００１２】
また、前記物体のホログラム面上で生成される光の干渉縞を、前記参照テーブルの参照値に基づいて前記演算手段による演算により求める過程では、入力された物体の位置を前記ホログラムでの表示対象空間の座標系に座標変換し、前記座標変換されて前記表示対象空間を分割した微小空間に存在する前記物体毎に該物体の波面を前記参照テーブルの参照値に基づいて前記演算手段による積和演算により求め、参照光の波面を予め保持された前記参照テーブルから求めて前記積和演算により求められた前記物体の波面と掛け合わせて前記干渉縞を求めることを特徴とする。
【００１３】
また、前記物体のホログラム面上で生成される光の干渉縞を前記参照テーブルの参照値に基づいて前記演算手段による演算により求める過程では、前記微小空間に存在する各物体について並列に処理することを特徴とする。
【００１４】
さらに、上記の目的を達成するための装置として、物体から来る光の波面と参照光との波面の干渉縞を計算機により数値的に求める計算機ホログラム作成装置において、ホログラムでの表示対象の空間を微小空間に分割し、各微小空間からホログラム面上の各点までの距離に関する関数値あるいは光の波面情報に関する値を参照テーブルとして作成し管理する手段と、入力された表示対象物体を前記微小空間の座標系に座標変換する手段と、前記座標変換された物体の各座標を格納する前記微小空間を管理する手段とを有し、前記物体の存在する各微小空間に対応する光の波面の値を前記参照テーブルの参照値から演算により求め、各微小空間に対応する参照値の加算処理を行う演算手段と、前記求められた干渉縞を保持する手段と、を備えたことを特徴とする。
【００１５】
本発明では、空間を微小空間に分割し、各微小空間とホログラム面までの距離ｒに関する関数参照テーブル並びに、物体から発する（或は反射してくる）光のホログラム面上で投影パターンを参照できるテーブルを用意し、ホログラム面上での物体の投影パターンを、あらかじめ用意した参照テーブルの値を演算することで求める。物体は点物体の集合として定義し、物体全体について、ホログラム面に投影する光の波面を求める。参照光の波面を同様に参照テーブルから求め、先に求めた投影パターンに掛け合わせていくことでホログラムの干渉縞を求めることを最も主要な特徴とする。
【００１６】
本発明は、ホログラム生成／再生での座標系を微小空間の有する座標系に変換することで、再生系の座標系を特定しない点で、従来の技術と相違する。それにより、再生系が変わっても、視点数や位置などのシステム系のパラメータ設定に伴う、参照テーブルの再設計という手間を無くしている。また、視点ごとの波面パターンの合成ではなく、光の波面生成の基本公式を用いることにより、視点の位置の制約を無くしている。また、参照テーブル値の積和演算により光の強度計算を行なうことで、複素数演算等を全く必要とせず、干渉縞を計算することができるようにしている。それによって、計算時間を大幅に短縮することを可能とし、本発明の目的であるホログラムパターンの高速計算を行うことを可能としている。さらに、物体を点光源として管理することにより、個々のボクセルの値を０にするかどうかで、そのボクセル、つまり、物体が見えるかどうかが制御できる。つまり、アニメーションを生成する場合、ボクセルの値を０にするかどうかを制御可能として、例えばアニメーション等を容易に生成可能とする。
【００１７】
【発明の実施の形態】
以下、図を用いて本発明の実施形態例を詳細に説明する。
【００１８】
まず、計算のための座標系を定義する。図２に本発明に使用する座標系の例を示す。２１はボクセル空間、２２はホログラム面を示す。図２に示すように、物体の有する座標系をワールド座標系（ｘ，ｙ，ｚ）とする。ワールド座標空間中でホログラムとして再生され得る空間のサイズを（Ｘ，Ｙ，Ｚ）とするとき、この微小空間（ｘ，ｙ，ｚ）を（ｌ，ｍ，ｎ），（ｌ＝１，…Ｌ、ｍ＝１，…Ｍ、ｎ＝１，…Ｎ）のメッシュに分割し三次元マトリックスとする。このマトリックス空間は、ボクセル空間と呼ぶことにする（個々のメッシュはボクセルと呼ぶ）。
【００１９】
ボクセル空間のローカル座標系は（ｌ，ｍ，ｎ）で表し、（ｌ，ｍ，ｎ）＝（１、１、１）の位置を（ｘ，ｙ，ｚ）＝（０、０、ｚ0）とする。つまり、個々のボクセルのサイズ（Δｘ，Δｙ，Δｚ）は、Δｘ＝Ｌ／Ｌ，Δｙ＝Ｙ／Ｍ，ΔｚＺ／Ｎである。一方、ホログラム面は、ワールド座標系ではｚ＝０の平面であり、（Ｈx，Ｈy）のサイズとする。これをｕ＝１，２，３，…，Ｕ、ｖ＝１，２，３，…Ｖの解像度で格子状に分割したときのホログラム面上でのローカルやマトリックス座標系を（ｕ，ｖ）として定義する。ホログラム面上での格子間隔は、Δｕ＝Ｈx／Ｕ，Δｖ＝Ｈy／Ｖである。
【００２０】
つぎに、ホログラム面の各格子点（ｕ，ｖ）と、各ボクセル（ｌ，ｍ，ｎ）との距離ｒを求める。距離ｒは次式で計算される。
【００２１】
ｒ（ｌ，ｍ，ｎ，ｕ，ｖ）＝√｛（Δｘｌ−Δuｕ）2＋（Δｙｍ−Δｖ）2＋（Δｚｎ−ｚ0）2｝                                      （２）
以後、ｒの変数（ｌ，ｍ，ｎ，ｕ，ｖ）は省略する。
【００２２】
次に、ホログラム面での波面を表す式を変形する。点光源物体Ｅ0と点光源の参照光りＲを
Ｅ0＝（ａ／ｒ）ｅ-jkr，Ｒ＝（ｂ／（ｒＲ））ｅ-jkrR        （３）
とするとき、（１）式の第３項は、
【００２３】
【数２】
0003653361.tif 000003
【００２４】
と表示される。ここで、ａ（ｌ，ｍ，ｎ）は、各ボクセルの値であり、０の場合、ボクセルが透明となる。０でなければ、ボクセルからの光の強度を表す量であり、この値を操作することで、陰影などを表示することも可能である。また、ｂ（ｌ，ｍ，ｎ）は、参照光の強度を表す。そして、ｋ＝２π／λであり、λは光の波長を表す。また、ｒR＝ｒ（ｌR，ｍR，ｎR）である。
【００２５】
（１）式の第１、２項は、干渉縞の平均強度を表す量であるため、結像には関与しない成分であるので、ホログラムの干渉縞として本実施形態例では、第３項のみに着目している。
【００２６】
ところで、三角関数の変数ｋｒのとり得る範囲は、［０，∞］であるが、ｃｏｓ，ｓｉｎは２πの周期関数であるから、三角関数部分はｃｏｓ［ｍｏｄ（ｋｒ，２π）］，ｓｉｎ［ｍｏｄ（ｋｒ，２π）］を求めても一般性は失われない。つまり、φ（ｒ）＝ｍｏｄ［ｋｒ，２π］とするとき、
【００２７】
【数３】
0003653361.tif 000004
【００２８】
と変換される。
【００２９】
光の波面の参照テーブルとして、ｒ，１／ｒ，並びに三角関数値テーブルを準備することで、テーブルのインデックスｌ，ｍ，ｎ，ｕ，ｖを特定すれば、参照テーブル値の演算により、容易に光の干渉縞が求められる。
【００３０】
図３にテーブルの一例としてｒ，１／ｒの参照テーブルを示す。空間中の一点（ｌ，ｍ，ｎ）３１ならびに、ホログラム上の一点（ｕ，ｖ）３２を特定すると、ｒ（３３），１／ｒ（３４）が参照できる。
【００３１】
図４は、光の位相、振幅情報として、三角関数の参照テーブルを用いた例である。１度間隔でのｃｏｓ，ｓｉｎ関数の値が参照できるようになっている。
【００３２】
各テーブルの値の参照を以下の４つの式で表すとき、
ＴａｂｌｅＲ（ｌ，ｍ，ｎ，ｕ，ｖ）＝ｒ(u，v)            （６）
ＴａｂｌｅＲ-1（ｌ，ｍ，ｎ，ｕ，ｖ）＝１／ｒ(u，v)      （７）
ＴａｂｌｅＣ（ｌ，ｍ，ｎ，ｕ，ｖ）＝ｃｏｓ（ｍｏｄ［ｋｒ（ｌ，ｍ，ｎ，ｕ，ｖ），２π］）                                        （８）
ＴａｂｌｅＳ（ｌ，ｍ，ｎ，ｕ，ｖ）＝ｓｉｎ（ｍｏｄ［ｋｒ（ｌ，ｍ，ｎ，ｕ，ｖ），２π］）                                        （９）
干渉縞は、次式で表現される。
【００３３】
【数４】
0003653361.tif 000005
【００３４】
ここで、Ａ＝ＴａｂｌｅＲ-1（ｌ，ｍ，ｎ，ｕ，ｖ）ａ（ｌ，ｍ，ｎ），Ｂ＝ＴａｂｌｅＲ-1（ｌR，ｍR，ｎR，ｕ，ｖ）ｂ（ｌ，ｍ，ｎ）である。
【００３５】
では、本発明の実施形態例について説明する。図１に本発明の方法の一実施形態例をフローチャートで示す。図中の１０１〜１１１はそのステップを表す。
【００３６】
まず最初に、全ての（ｌ，ｍ，ｎ），（ｕ，ｖ）についてｒを計算し、距離変換テーブルを作成する。（ステップ１０１）
三角関数テーブルは、一定間隔のラジアン（又は角度）でサンプリングしたｃｏｓ，ｓｉｎ関数の値を予め求め、テーブル化しておく。
【００３７】
ホログラムを作成するために参照光として、（１）式の点光源Ｒとして、参照光源の位置（ｘR，ｙR，ｚR）を、ボクセル空間座標系（ｌR，ｍR，ｎR）に変換する（ステップ１０２）。
【００３８】
次に、物体の全ての三次元データを、ボクセル空間座標系に変換する。各ボクセル内に物体が存在する場合、ボクセル値をａ、存在しない場合、ボクセル値を０とする（ステップ１０３）。
【００３９】
ボクセル空間の（ｌ，ｍ，ｎ）を順次走査し、ボクセル値が０で無い場合は、ホログラム面（ｕ，ｖ）上を順次操作し、各（ｌ，ｍ，ｎ，ｕ，ｖ）のときのボクセルとホログラム面とのワールド座標系での距離ｒおよび１／ｒ変換テーブルを参照し、距離を求める。また、同時に（ｌ，ｍ，ｎ，ｕ，ｖ）の時のｒから、ｍｏｄ（ｋｒ，２π）を求め、ｃｏｓ，ｓｉｎ関数の値を参照テーブルより求める（ステップ１０４〜１０７）。以上の走査を、全ての（ｌ，ｍ，ｎ）並びに（ｕ，ｖ）について繰り返し行うことにより、ホログラム面上（ｕ，ｖ）の各座標点について、物体から来る光の波面の情報として、
【００４０】
【数５】
0003653361.tif 000006
【００４１】
が求められる。
【００４２】
次に、参照光の波面を加える。参照光とホログラム面までの距離ｒRは、
ｒR（ｕ，ｖ）＝ｒ（ｌR，ｍR，ｎR，ｕ，ｖ）              （１４）
であり、ｍｏｄ（ｋｒR，２π）から、各（ｕ，ｖ）点での三角関数値ＴａｂｌｅＣR，ＴａｂｌｅＳRを参照テーブルより求める（ステップ１０９）。
【００４３】
各（ｕ，ｖ）座標での参照光と物体光との干渉縞の強度は、（５）式から次式で計算される（ステップ１１０）。
【００４４】
【数６】
0003653361.tif 000007
【００４５】
最終的には、上式の値をホログラム面に表示することで、ホログラムの干渉縞となる。（ステップ１１１）
次に、上述のような特徴部分を有する本発明のホログラム作成／表示装置の構成並びに動作の一例を説明する。図５に本発明の装置の一実施形態例をブロック図で示す。
【００４６】
本装置は、三次元情報を入力する入力手段５１と、ホログラムを表示する表示手段５２と、入力された三次元情報の座標系をボクセル空間の座標系に変換する座標変換手段５４と、ボクセル空間管理手段５５と、基本参照テーブル５６と、干渉縞を計算する演算手段５７と、干渉縞を保持するためのフレームバッファ５８とを備えて構成される。座標変換手段５４、ボクセル空間管理手段５５、基本参照テーブル５６、演算手段５７、及びフレームバッファ５８から構成される制御部５３が、上記の方法を制御する部分である。
【００４７】
予め、基本参照テーブル５６では、距離変換テーブル並びに、三角関数テーブルを基本テーブル管理手段にて作成し、保持する。基本テーブル管理手段は、本実施形態例では、座標変換手段５４が兼ねる。
【００４８】
入力手段５１から入力された物体の３次元情報は、座標変換手段５４にて、ワールド座標からボクセル空間のマトリックス座標系に変換され、ボクセル空間管理手段５５に格納される。
【００４９】
演算手段５７では、ボクセル空間並びにホログラム面を順次走査し、各座標点における光の波面の値を基本参照テーブル５６より求め、フレームバッファ５８にｃｏｓ関数値、ｓｉｎ関数値それぞれを加算していく。ここで、フレームバッファとは、ホログラムの（ｕ，ｖ）座標系と等価な干渉縞保持手段である。
【００５０】
次に参照光からの波面を各ｕ，ｖ座標値（フレームバッファ）に積算していく。全ての座標値（ｕ，ｖ）について処理が終了すると、フレームバッファの内容は表示手段へ出力される。
【００５１】
上述のような処理形態を採れば、単純な積和演算のみで、高速にホログラムのパターンを生成し、表示することが可能となる。
【００５２】
なお、上記実施形態例では、マトリックス座標系を順次走査したが、視線方向に順次走査することも考えられる。また、既存のｚバッファアルゴリズム（システム）などを利用して、物体の有無並びに可視か否かを判断することも可能であり、物体の位置を走査する手法は、本発明の例に限定されるわけではない。
【００５３】
また、ボクセルの値として現在、ａという変数を用いているが、対象物によっては、全て一定値（例えば１）にすることも可能である。こうすると、整数演算になるため、より高速に処理することが可能となる。
【００５４】
また、入力される情報は、距離画像などの実３次元座標データやＣＧにより作成した、人工データでも使用可能である。つまり、本発明は座標系のとり方に依存しないため、入力データの形態に限定はない。
【００５５】
また、本実施形態例では、参照光として球面波を使用したが、他に平面波等も可能であり、参照光の種類は特定されない。
【００５６】
また、上記実施形態例では、静止した物体について説明したが、ボクセルの値を０にするとは、そのボクセルを透明にすることと等価である。つまり、ボクセルの値を０か、否かを順次操作していくと、ネオンサインのように、点物体が動いているように表現できる。つまり、アニメーションを本発明により容易に実現できる。
【００５７】
また、本実施形態例では、ボクセル並びに格子点を順番に走査して処理を行なっているが、個々のボクセル並びに格子点は全て独立であるから、ステップ１０４〜１０８をそれぞれ、並列に処理することも可能である。
【００５８】
【発明の効果】
以上説明したように、本発明によれば、あらかじめ、参照テーブルを作成してあるため、干渉縞の生成が高速にできる。つまり、リアルタイムにホログラムを作成することが可能であり、ホログラムの動画を生成表示することが可能となる。また、解像度のアップや視域の拡大は、ボクセル空間の拡大や、ボクセルサイズの縮小により容易に対応が可能となる。また、ボクセル及び格子点が独立なので、並列処理が可能であり、より一層の処理の高速化が図れ、大画面、高解像度に対応することも可能である。
【図面の簡単な説明】
【図１】本発明の方法の一実施形態例を示すフローチャートである。
【図２】上記実施形態例に使用する座標系を示した図である。
【図３】上記実施形態例における距離変換テーブルの例を示した図である。
【図４】上記実施形態例における三角関数の参照テーブルの例を示した図である。
【図５】本発明の装置の一実施形態例を示すブロック図である。
【符号の説明】
５１…三次元データの入力手段
５２…表示手段
５３…制御部
５４…座標変換手段（参照テーブル管理手段）
５５…ボクセル空間管理手段
５６…基本参照テーブル
５７…演算手段
５８…フレームバッファ
【図１】
0003653361.tif 000008
【図２】
0003653361.tif 000009
【図３】
0003653361.tif 000010
【図４】
0003653361.tif 000011
【図５】
0003653361.tif 000012