JP4191419B2 - Computer generated hologram production apparatus and method - Google Patents

Computer generated hologram production apparatus and method Download PDF

Info

Publication number
JP4191419B2
JP4191419B2 JP2002065924A JP2002065924A JP4191419B2 JP 4191419 B2 JP4191419 B2 JP 4191419B2 JP 2002065924 A JP2002065924 A JP 2002065924A JP 2002065924 A JP2002065924 A JP 2002065924A JP 4191419 B2 JP4191419 B2 JP 4191419B2
Authority
JP
Japan
Prior art keywords
value
computer generated
pixel
generated hologram
change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002065924A
Other languages
Japanese (ja)
Other versions
JP2003263094A (en
Inventor
卓 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hamamatsu Photonics KK
Original Assignee
Hamamatsu Photonics KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hamamatsu Photonics KK filed Critical Hamamatsu Photonics KK
Priority to JP2002065924A priority Critical patent/JP4191419B2/en
Publication of JP2003263094A publication Critical patent/JP2003263094A/en
Application granted granted Critical
Publication of JP4191419B2 publication Critical patent/JP4191419B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Holo Graphy (AREA)
  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、照明光の入射により少なくとも位相が変調された再生光を生じさせて目標再生像を再生する為の計算機ホログラム(位相ホログラムまたは複素振幅ホログラム)を最適化法により作成する装置および方法に関するものである。
【0002】
【従来の技術】
レーザマーキング、レーザ加工、光造形および光ピンセットなどの分野では、レーザ光を所望の形状に形成する画像パターン形成技術が求められている。画像パターン形成技術の1つに、計算機ホログラムを用いる技術がある。この技術では、目標とする所望の形状の再生像(目標再生像)を発生し得る計算機ホログラムを計算により求めて作成し、この計算機ホログラムに照明光を照射して目標再生像を形成する。この計算機ホログラムを用いる技術は、ホログラフィ技術を利用するものであるから、自由度が高い。また、計算機ホログラムとして位相ホログラムを用いれば、光のロスが小さいので、光エネルギの利用効率が高い。
【0003】
この計算機ホログラムの作成は、解析的には行うことができず、反復計算に基づく最適化法により行われる。最適化による計算機ホログラムの作成は、或る初期計算機ホログラムから開始して反復計算を行って、この計算により求められた計算機ホログラムから再生される再生像が目標再生像に近づくように計算機ホログラムを逐次更新していく。このような最適化法を用いると、良好な結果が得られる。
【0004】
例えば、文献「A. G. Kirk and T. J. Hall, "Design of binary computer generated holograms by simulated annealing: coding density and reconstruction error," Opt. Comm. Vol.94, pp.491-496 (1992)」に記載された計算機ホログラム作成方法では、最適化法としてシミュレーテッドアニーリング(SA: Simulated Annealing)法が用いられている。Kirkらは、ホログラム値が2値に制限された二値位相型計算機ホログラムの作成にSA法を適用している。その他に計算機ホログラムの作成にSA法を適用した様々な文献があるが、その中でも、Kirkらの上記文献は作成時間を短縮するための工夫について明確に言及している。
【0005】
まず、この文献に基づいて構成したSA法を用いた計算機ホログラム作成方法の一般的な手順を説明する。その手順では、(S1) 計算機ホログラムの初期値を決定するとともに、SA法で用いられるパラメータの初期値を決定し、(S2)計算機ホログラムに含まれる多数の画素のうち1個または複数個の画素を選択し、(S3) その選択した画素の画素値を変化させ、(S4) 画素値を変化させた後の計算機ホログラムにより再生される再生像を計算し、(S5) その計算された再生像と目標再生像との誤差を計算し、(S6) その誤差を評価して、選択した画素の画素値の変化(上記ステップS3)を受け入れるか否かを決定し、(S7) 計算機ホログラムに含まれる全ての画素について上記ステップS2〜S6の処理を行ったか否かを判断して、もし「否」であれば上記ステップS2に戻り、(S8) SA法で用いられるパラメータを更新し、(S9) 計算を終了してよいか否かを判断して、もし「否」であれば上記ステップS2に戻る。
【0006】
このSA法による計算手続は二重のループを有している。そのうちの内側のループ(ステップS2〜S7)では、SA法で用いられるパラメータが一定のまま、計算機ホログラムに含まれる画素をスキャンして当該画素値を最適化する。外側のループ(ステップS2〜S9)では、SA法で用いられるパラメータを更新しつつ最適化を反復して、最適化の度合いを高めていく。
【0007】
【発明が解決しようとする課題】
しかし、上記文献に記載されたSA法による計算機ホログラム作成方法は、繰り返し回数と計算量とが共に大きいため、非常に長い時間を要するという問題点がある。
【0008】
繰り返し回数についていえば、SA法の内側のループは、計算機ホログラムに含まれる全ての画素について行われることから、繰り返し回数が画素数と同一である。一般に画素数は非常に大きくて、例えばVGA規格液晶モニタ用の計算機ホログラムを作成することを考えると、内側のループの繰り返し回数は30万回以上にもなる。さらに、程度の良い解を得るためには、ステップS2〜S9の外側のループを多数回繰り返す必要がある。このように、外側および内側の双方のループの繰り返し回数が大きいため、作成時間が長くなる。
【0009】
画素数が増大するとさらに作成時間が長くなる。近年では、プロセス技術の発展により、ホログラム表示に用いることのできるデバイスの画素数が急激なピッチで増加している。ホログラムの画素数が増加すると、内側のループにおける画素スキャンの為の反復回数も増加する。また、上記ステップS4における再生像計算量も増加する。さらに、自由度が高くなることから、外側のループにおける最適化の為の反復回数が増加する。このように、計算機ホログラムの画素数が増加すると、ホログラム作成時間が急激に増加することになる。
【0010】
ホログラム値が多レベルになっても計算時間が増大する。Kirkらの上記文献では、SA法を用いて2値ホログラムを作成したが、2値ホログラムの場合は、ステップ4の計算量が少ないため、もともと全体の計算量が比較的少ない。また、自由度が低いため、繰り返し回数も比較的少なくて済む。これに対して、ホログラム値が多値の場合は、ステップS4の計算量が2値の場合の2倍以上になる。さらに、自由度が高くなるため、外側ループの繰り返し回数が増大する。この2つの効果から、ホログラム値のレベル数が増えると、ホログラム作成時間が急激に増えることになる。
【0011】
Kirkらの上記文献では、ステップS4における再生像の計算において、不要な計算を排除することと、ルックアップテーブルを利用することの2つの工夫により、再生像計算の高速化を計っている。前者は多値ホログラムにも適用可能である。しかし残念ながら、彼らのルックアップテーブルについては、二値ホログラムを対象として考案されているので、多値のホログラムに適用しても作成時間を大幅に削減することはできない。
【0012】
このように、SA法はもともと計算に時間のかかる手法である上、画素数の増大やホログラム値のレベル数の増大に伴って、作成所要時間が急激に増加する。作成所要時間が長いことは、実用化の際の大きな障害となる。また、多値ホログラムの場合には、Kirkらの文献に記されたルックアップテーブルを用いても、十分な高速化は期待できない。
【0013】
本発明は、上記問題点を解消する為になされたものであり、計算機ホログラムを短時間に作成することができる計算機ホログラム作成装置および方法を提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明に係る計算機ホログラム作成装置は、照明光の入射により少なくとも位相が変調された再生光を生じさせて目標再生像を再生する為のフーリエ変換型の計算機ホログラムを最適化法により作成する装置であって、(1) 入力値q(ただし、0≦q<Q、qおよびQそれぞれは整数。)の入力に対して、関数値 exp(2πiq/Q) が量子化された出力値LUT[q]を出力するルックアップテーブル記憶手段と、(2) 計算機ホログラムに含まれる何れかの画素の位相値の変化に応じて、その変化前の位相値および画素の位置に応じた入力値qに基づいてルックアップテーブル記憶手段から出力値LUT[q]を得るとともに、その変化後の位相値および画素の位置に応じた入力値q'に基づいてルックアップテーブル記憶手段から出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、計算機ホログラムにより再生される再生像を計算する再生像計算手段と、(3) 計算機ホログラムに含まれる各画素の位相値を変化させ、この変化に応じて再生像計算手段により計算される再生像と目標再生像とに基づいて、目標再生像を再生する為の計算機ホログラムを最適化法により作成する最適化処理手段と、を備えることを特徴とする。
【0015】
また、本発明に係る計算機ホログラム作成方法は、照明光の入射により少なくとも位相が変調された再生光を生じさせて目標再生像を再生する為のフーリエ変換型の計算機ホログラムを最適化法により作成する方法であって、(1) 入力値q(ただし、0≦q<Q、qおよびQそれぞれは整数。)の入力に対して、関数値 exp(2πiq/Q) が量子化された出力値LUT[q]を出力するルックアップテーブルを用意し、(2) 計算機ホログラムに含まれる何れかの画素の位相値の変化に応じて、その変化前の位相値および画素の位置に応じた入力値qに基づいてルックアップテーブルから出力値LUT[q]を得るとともに、その変化後の位相値および画素の位置に応じた入力値q'に基づいてルックアップテーブルから出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、計算機ホログラムにより再生される再生像を計算し、(3) 計算機ホログラムに含まれる各画素の位相値を変化させ、この変化に応じて計算される再生像と目標再生像とに基づいて、目標再生像を再生する為の計算機ホログラムを最適化法により作成する、ことを特徴とする。
【0016】
上記の本発明に係る計算機ホログラム作成装置と本発明に係る計算機ホログラム作成方法とは、互いに同一の技術的思想に基づくものである。本発明では、上述したようなルックアップテーブルを用意しておくことにより、再生像を計算する際の演算量が削減され、計算機ホログラムが短時間に作成される。
【0017】
本発明に係る計算機ホログラム作成装置は、再生像計算手段が、(1) 画素の変化前の位相値2πp/Pと変化後の位相値2πp'/Pとの和(2π(p+p')/P)の値がπまたは3πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいてルックアップテーブル記憶手段から出力値の実数部を得るとともに、画素の位置に応じた入力値に基づいてルックアップテーブル記憶手段から出力値を得て、これらの値に基づいて、計算機ホログラムにより再生される再生像を計算し、(2) 和の値が2πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいてルックアップテーブル記憶手段から出力値の虚数部を得るとともに、画素の位置に応じた入力値に基づいてルックアップテーブル記憶手段から出力値を得て、これらの値に基づいて、計算機ホログラムにより再生される再生像を計算し、(3) 和の値がπ,2πおよび3πの何れでもないときに、その変化前の位相値2πp/Pおよび画素の位置に応じた入力値qに基づいてルックアップテーブル記憶手段から出力値LUT[q]を得るとともに、その変化後の位相値2πp'/Pおよび画素の位置に応じた入力値q'に基づいてルックアップテーブル記憶手段から出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、計算機ホログラムにより再生される再生像を計算する、ことを特徴とする。
【0018】
また、本発明に係る計算機ホログラム作成方法は、計算機ホログラムにより再生される再生像を計算する際に、(1) 画素の変化前の位相値2πp/Pと変化後の位相値2πp'/Pとの和(2π(p+p')/P)の値がπまたは3πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいてルックアップテーブルから出力値の実数部を得るとともに、画素の位置に応じた入力値に基づいてルックアップテーブルから出力値を得て、これらの値に基づいて、計算機ホログラムにより再生される再生像を計算し、(2) 和の値が2πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいてルックアップテーブルから出力値の虚数部を得るとともに、画素の位置に応じた入力値に基づいてルックアップテーブルから出力値を得て、これらの値に基づいて、計算機ホログラムにより再生される再生像を計算し、(3) 和の値がπ,2πおよび3πの何れでもないときに、その変化前の位相値2πp/Pおよび画素の位置に応じた入力値qに基づいてルックアップテーブルから出力値LUT[q]を得るとともに、その変化後の位相値2πp'/Pおよび画素の位置に応じた入力値q'に基づいてルックアップテーブルから出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、計算機ホログラムにより再生される再生像を計算する、ことを特徴とする。
【0019】
このように、画素の変化前の位相値2πp/Pと変化後の位相値2πp'/Pとの和(2π(p+p')/P)の値がπ,2πおよび3πの何れかの場合には、再生像を計算する際の演算量が更に削減され、計算機ホログラムが更に短時間に作成される。
【0023】
【発明の実施の形態】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【0024】
先ず、本実施形態に係る計算機ホログラム作成装置および方法における再生像計算処理(上記ステップS4の処理)について説明する。計算機ホログラムがフーリエ変換ホログラムである場合には、計算機ホログラムにより再生される再生像は、計算機ホログラムをフーリエ変換することで得られる。このフーリエ変換による計算には、高速フーリエ変換(FFT: Fast Fourier Transform)や離散フーリエ変換(DFT: Discrete Fourier Transform)が用いられる。一般に、データ数をVとすると、FFTにより再生像を計算する際の計算量はV・logVに比例するのに対して、DFTにより再生像を計算する際の計算量はV2に比例するので、FFTの方が高速である。
【0025】
しかし、SA法等の最適化法では、上述したように、(S2) 計算機ホログラムに含まれる多数の画素のうち1個または複数個の画素を選択し、(S3) その選択した画素の画素値を変化させ、(S4) 画素値を変化させた後の計算機ホログラムにより再生される再生像をフーリエ変換により計算することから、画素値が変化した画素についてのみ計算すればよい。したがって、この場合には、DFTにより再生像を計算する際の計算量はVに比例するので、DFTの方が高速である。また、DFTによる計算の際にルックアップテーブルを用いることで、再生像を短時間に計算することができる。
【0026】
さらに、FFTでは、再生面上の再生像に含まれる全ての画素が同時に計算されるので、再生像の一部のみが必要である場合であっても、再生像に含まれる全ての画素を計算しなければならない。一方、DFTでは、再生像に含まれる各画素は独立に計算されるので、再生像の一部のみが必要である場合には、その必要な画素についてのみ計算すればよい。すなわち、DFTによる再生像の計算に際しては、再生像のうちの関心領域に含まれる画素についてのみ計算すればよい。再生像の全画素数をVとし、関心領域内の画素数をUとすると、DFTによる関心領域の計算量はUに比例し、内側のループ(ステップS2〜S7)における計算量はV・Uに比例する。なお、再生像のうちの関心領域は、応用によって異なるが、一般には、画素値が0でない領域である。
【0027】
本実施形態に係る計算機ホログラム作成方法は、以上に説明した考えに基づくものであって、ルックアップテーブルを用いてDFTにより再生像を計算し、この計算された再生像と目標再生像とに基づいて、目標再生像を再生する為の計算機ホログラムを最適化法により作成するものである。なお、最適化法として、既述したSA法の他、遺伝的アルゴリズム(GA: Genetic Algorithm)法やフーリエ変換反復法が用いられる。以下では、DFTによる再生像の計算の際に参照されるルックアップテーブルについて主に説明する。
【0028】
作成されるべき計算機ホログラムの画素数をM×Nとする。計算機ホログラムにおける第j行第k列(1≦j≦M,1≦k≦N)に位置する画素(以下では、この画素を「画素(j,k)」と表記する。)の複素振幅をhjkの如く表記する。また、再生面上の再生像における第m行第n列(1≦m≦M,1≦n≦N)に位置する画素(以下では、この画素を「画素(m,n)」と表記する。)の光の複素振幅をHmnの如く表記する。計算機ホログラムの画素(j,k)の複素振幅がhjkからh'jkへ変化すると、再生像上の画素(m,n)の光の複素振幅変化量ΔHmnは、
【0029】
【数1】

Figure 0004191419
なる式で表される。ここで、iは虚数単位を表す。また、Δhjkは、計算機ホログラムの画素(j,k)の複素振幅変化量を表し、
【0030】
【数2】
Figure 0004191419
なる式で表される。
【0031】
上記(1)式から判るように、再生像上の各画素(m,n)の光の複素振幅変化量ΔHmnは、計算機ホログラムの画素(j,k)の複素振幅変化量Δhjkのみに依存している。このような変化の後の再生像上の画素(m,n)の光の複素振幅H'mnは、変化前の複素振幅Hmnに対して、
【0032】
【数3】
Figure 0004191419
なる式で表される。したがって、再生像上の各画素(m,n)の光の複素振幅Hmnは、最初に1回だけ計算しておけば、後は変化量ΔHmnを加算していくだけでよい。
【0033】
SA法等の最適化法では、以上のようにして計算された再生像と目標再生像との誤差Cを計算し、その誤差Cを評価して、選択した画素の画素値の変化を受け入れるか否かを決定する。この誤差Cの計算に際しては、再生像のうちの関心領域Ω内においてのみ、
【0034】
【数4】
Figure 0004191419
なる二乗和を求めればよい。ここで、Fmnは目標再生像上の画素(m,n)の光の複素振幅である。なお、目標再生像のエネルギ(全ての画素の光の複素振幅の二乗和)を入力光のエネルギ(hjkの絶対値の二乗和)と等しくしておけば、上記(4)式のように計算範囲を関心領域Ω内に制限しても、最適化の結果には殆ど影響を与えない。
【0035】
上記(1)式の右辺のexp関数は、実数部がcos関数を用いて計算され、虚数部がsin関数を用いて計算される。これらcos関数およびsin関数それぞれの計算に替えて、予め用意したルックアップテーブルを参照することにより、上記(1)式の右辺のexp関数の値を短時間に求めることができる。整数MおよびNの最小公倍数L(L=dM=eN、dおよびeそれぞれは整数。)を用いると、ここで用いられるルックアップテーブルLUT1は、
【0036】
【数5】
Figure 0004191419
なる式で表される。なお、Kirkらの文献では、(1)式右辺の指数関数部をルックアップテーブル化している。彼らの場合は、ホログラムが2値でありΔhjkが2および−2の2つの値しかもたないので、これで十分に高速化の効果が現れた。しかし、多値の場合には、本実施形態のようにΔhjkの部分も含めてルックアップテーブル化しないと大きな効果が期待できない。
【0037】
計算機ホログラムでは、各画素(j,k)の複素振幅hjkは、強度および位相の双方または何れか一方が標本化され量子化される。したがって、上記(1)式の指数関数部だけでなく複素振幅変化量Δhjkも、予め用意したルックアップテーブルを参照することにより求めることができる。
【0038】
作成しようとする計算機ホログラムが強度ホログラムである場合には、計算機ホログラムの各画素(j,k)の複素振幅hjkおよびh'jkそれぞれは量子化された実数である。したがって、この場合には、複素振幅変化量Δhjkのルックアップテーブルを容易に作成することができる。また、上記(1)式の右辺の計算は、実数と複素数との積となるから、ルックアップテーブルを記憶したメモリの参照が3回であって、実数の乗算が2回であり、演算数が少ない。
【0039】
作成しようとする計算機ホログラムが位相ホログラムである場合には、計算機ホログラムの各画素(j,k)の複素振幅hjkおよびh'jkそれぞれは、振幅強度が一定の実数値であって、位相が量子化されていて、複素数である。計算機ホログラムが複素振幅ホログラムである場合には、計算機ホログラムの各画素(j,k)の複素振幅hjkおよびh'jkそれぞれは、振幅強度および位相の双方が量子化されていて、複素数である。
【0040】
計算機ホログラムが位相ホログラムまたは複素振幅ホログラムである場合に、計算機ホログラムの各画素(j,k)の複素振幅hjkの位相が0〜2πの範囲でP個のレベルで量子化されているものとする。計算機ホログラムの各画素(j,k)の複素振幅hjkの位相レベルがp(ただし、0≦p<P、pおよびPそれぞれは整数。)であるとき、すなわち、位相値が2πp/Pであるとき、その複素振幅hjkは、
【0041】
【数6】
Figure 0004191419
なる式で表される。ここで、Ajkは、実数値であり、計算機ホログラムの画素(j,k)からの再生光の振幅強度を表す。
【0042】
最適化法の過程で計算機ホログラムの画素(j,k)の複素振幅の位相レベルがpからp'へ変化したとすると、上記(2)式の計算機ホログラムの画素(j,k)の複素振幅変化量Δhjkは、
【0043】
【数7】
Figure 0004191419
なる式で表される。この(7)式の右辺の括弧内はルックアップテーブル化が可能である。この場合のルックアップテーブルLUT2は、
【0044】
【数8】
Figure 0004191419
なる式で表される。そして、上記(1)式の再生像の画素(m,n)の複素振幅変化量ΔHmnは、ルックアップテーブルLUT1およびLUT2を用いて、
【0045】
【数9】
Figure 0004191419
なる式で表される。
【0046】
ルックアップテーブルLUT1およびLUT2それぞれの出力値は複素数であるので、この(9)式の右辺では、複素数と複素数との乗算を行うことになる。また、上記(9)式の右辺を計算するには、Ajkのルックアップテーブルの参照、上記ルックアップテーブルLUT1の実数部および虚数部それぞれの参照、および、上記ルックアップテーブルLUT2の実数部および虚数部それぞれの参照が必要である。したがって、上記(9)式の右辺の計算では、ルックアップテーブルを記憶したメモリの参照が5回であって、実数の乗算が4回であり、実数の加減算が4回である。このように、上記(9)式に従って計算することで、再生像の画素(m,n)の複素振幅変化量ΔHmnを短時間に求めることができる。
【0047】
しかし、以下のようにルックアップテーブルを工夫することで、再生像の画素(m,n)の複素振幅変化量ΔHmnを更に短時間に求めることができる。すなわち、上記(7)式を上記(1)式に代入すると、
【0048】
【数10】
Figure 0004191419
なる式が得られる。そして、P,MおよびNの最小公倍数をQとして、
【0049】
【数11】
Figure 0004191419
とする。ここで、a,bおよびcそれぞれは整数である。このQを用いると、上記(10)式は、
【0050】
【数12】
Figure 0004191419
と表される。
【0051】
この(12)式の右辺にある2つのexp関数それぞれは、その位相が0〜2πの範囲でQ個のレベルで量子化されており、1つのルックアップテーブルに置き換えることができる。ここで用いられるルックアップテーブルLUT3は、
【0052】
【数13】
Figure 0004191419
なる式で表される。ただし、0≦q<Qでり、qおよびQそれぞれは整数である。このルックアップテーブルLUT3を用いれば、上記(12)式は、
【0053】
【数14】
Figure 0004191419
と表される。
【0054】
上記(14)式の右辺を計算するには、Ajkのルックアップテーブルの参照、および、上記ルックアップテーブルLUT3の実数部および虚数部それぞれの参照が必要である。したがって、上記(14)式の右辺の計算では、ルックアップテーブルを記憶したメモリの参照が5回であって、実数の乗算が2回であり、実数の加減算が2回である。このように、上記(14)式に従って計算することで、上記(9)式に従う場合よりも、再生像の画素(m,n)の複素振幅変化量ΔHmnを更に短時間に求めることができる。
【0055】
また、計算機ホログラムの画素(j,k)の複素振幅hjkの位相レベルp,p'それぞれの値の組み合わせによっては、計算機ホログラムの画素(j,k)の複素振幅hjkが実数または虚数になるので、この複素振幅hjkが実数、虚数およびその他の何れであるかによって場合分けして計算することで、再生像の画素(m,n)の複素振幅変化量ΔHmnを更に短時間に求めることができる。
【0056】
すなわち、計算機ホログラムの画素(j,k)の複素振幅hjkの位相レベルp,p'それぞれの値は0以上P未満の整数であるから、
【0057】
【数15】
Figure 0004191419
および
【0058】
【数16】
Figure 0004191419
の何れかの関係式が満たされる場合には、計算機ホログラムの画素(j,k)の複素振幅変化量Δhjkは、実数であり、
【0059】
【数17】
Figure 0004191419
なる式で表される。このとき、上記(12)式は、
【0060】
【数18】
Figure 0004191419
と表される。なお、この(18)式においてRe[・]は実数部のみを参照する操作を表す。
【0061】
一方、
【0062】
【数19】
Figure 0004191419
なる関係式が満たされる場合には、計算機ホログラムの画素(j,k)の複素振幅変化量Δhjkは、虚数であり、
【0063】
【数20】
Figure 0004191419
なる式で表される。このとき、上記(12)式は、
【0064】
【数21】
Figure 0004191419
と表される。なお、この(21)式においてIm[・]は虚数部のみを参照する操作を表す。
【0065】
上記(18)式の右辺を計算するには、Ajkのルックアップテーブルの参照、および、上記ルックアップテーブルLUT3の実数部の参照が必要である。また、上記(21)式の右辺を計算するには、Ajkのルックアップテーブルの参照、および、上記ルックアップテーブルLUT3の虚数部の参照が必要である。したがって、上記(19)式または上記(21)式の右辺の計算では、ルックアップテーブルを記憶したメモリの参照が4回であって、実数の乗算が3回であり、実数の加減算が不要である。このように、上記(15)式または上記(16)式が成立するときには上記(18)式に従って計算し、上記(19)式が成立するときには上記(21)式に従って計算することで、再生像の画素(m,n)の複素振幅変化量ΔHmnを更に短時間に求めることができる。なお、上記(15)式、上記(16)式および上記(19)式の何れも成立しないときには、再生像の画素(m,n)の複素振幅変化量ΔHmnを上記(14)式に従って計算する。
【0066】
さらに、最適化法(特にSA法)において、計算機ホログラムの画素(j,k)の位相レベル変化量Δp(=p'−p)の値が限定されている場合があり、この場合には、以下のようにルックアップテーブルを工夫することで、再生像の画素(m,n)の複素振幅変化量ΔHmnを更に短時間に求めることができる。すなわち、この場合には、上記(12)式は、
【0067】
【数22】
Figure 0004191419
なる式で表される。ここで、位相レベルpおよびp'それぞれは0からP−1までの整数であるので、位相レベル変化量Δpは、−P+1からP−1までの整数である。ただし、複素指数関数の性質から exp[-ix]=exp[i(2π-x)] であるので、上記(22)式中の [exp(2πiΔp/P)−1] については、位相レベル変化量Δpに関し0からP−1までの範囲でルックアップテーブルを用意すればよい。
【0068】
したがって、q=p+bjm+cknと表し(0≦q<Q)、
【0069】
【数23】
Figure 0004191419
なる式で表されるルックアップテーブルLUT4を用意することで、再生像の画素(m,n)の複素振幅変化量ΔHmnは、
【0070】
【数24】
Figure 0004191419
なる式で表される。ただし、sは、Δpが正である場合はΔpであり、Δpが負である場合はP−Δpで計算され、何れの場合にも0からP−1までの整数である。また、LUT4'[・,・]は2次元配列を意味し、LUT4[・]はこれを1次元配列で表したものである。
【0071】
上記(24)式の右辺を計算するには、Ajkのルックアップテーブルの参照、および、上記ルックアップテーブルLUT4の実数部および虚数部それぞれの参照が必要である。したがって、上記(24)式の右辺の計算では、ルックアップテーブルを記憶したメモリの参照が3回であって、実数の乗算が2回であり、実数の加減算が不要である。このように、計算機ホログラムの画素(j,k)の位相レベル変化量Δpの値が限定されている場合には、上記(24)式に従って計算することで、再生像の画素(m,n)の複素振幅変化量ΔHmnを更に短時間に求めることができる。
【0072】
なお、各ルックアップテーブルは、実数部および虚数部を含むものであるのであって、実数部がcos関数を用いて計算される値であり、虚数部がsin関数を用いて計算される値である。このことを利用すれば、各ルックアップテーブルのサイズを小さくすることができる。例えば、cos(x)=sin(x−π) なる関係を利用すれば、各ルックアップテーブルは、実数部と虚数部とを統合することができ、サイズが1/2になる。また、cos(x)=−cos(x−π) および cos(x)=cos(−x) なる関係を利用すれば、各ルックアップテーブルはサイズが1/4になる。これらの方法を同時に採用すれば、各ルックアップテーブルはサイズが1/8になる。ただし、この方法はルックアップテーブルLUT4には適用できない。
【0073】
また、SA法では、内側のループ(ステップS2〜S7)における1回の探索操作において、計算機ホログラムにおいて画素値を変化させる画素は1つであるのが通常であるが、同時に複数の画素の画素値を変化させる場合がある。また、GA法では、1回の探索操作において同時に複数の画素の画素値を変化させる。このように1回の探索操作において同時に複数の画素の画素値を変化させる場合には留意を要する。すなわち、本実施形態による再生像の計算時間は、(再生像における関心領域Ωの画素数)×(計算機ホログラムにおいて画素値が変化する画素数)の値に比例する。計算機ホログラムにおいて画素値が変化する画素数が多い場合には、FFTによる計算時間と比べて、本実施形態のDFTによる再生像の計算時間が長くなる場合があり得る。一方、FFTによる計算時間および本実施形態のDFTによる計算時間それぞれは予め測定することができる。したがって、FFTによる計算時間と比べて本実施形態のDFTによる計算時間が長くなると予想される場合には、FFTを用いて再生像を計算し、そうでない場合には、本実施形態のDFTを用いて再生像を計算するようにすればよい。
【0074】
以上では、本実施形態に係る計算機ホログラム作成装置および方法における再生像計算処理の理論面を中心に説明した。次に、本実施形態に係る計算機ホログラム作成装置の構成および動作について説明するとともに、本実施形態に係る計算機ホログラム作成方法について説明する。図1は、本実施形態に係る計算機ホログラム作成装置1の構成図である。
【0075】
本実施形態に係る計算機ホログラム作成装置1は、上述したルックアップテーブルLUT3またはLUT4を参照してDFTにより再生像を計算し、この計算した再生像と目標再生像との誤差を評価し、この誤差に基づいて計算機ホログラムを最適化していって、目標再生像を再生し得る計算機ホログラムを作成するものである。計算機ホログラム作成装置1は、最適化処理部10、再生像計算部20、ルックアップテーブル格納メモリ30、再生領域格納メモリ40および再生像格納メモリ50を備えている。
【0076】
最適化処理部10は、上記ステップS1〜S3,S5〜S9の処理を実行するとともに、再生像計算部20に対して再生像計算(上記ステップS4の処理)を実行するよう指示する。最適化処理部10は、再生像計算部20による再生像計算に必要なルックアップテーブルを、ルックアップテーブル格納メモリ30に格納する。最適化処理部10は、再生像計算部20による再生像計算の際に計算すべき再生像のうちの関心領域Ωに含まれる各画素(m,n)を示す位置情報m,nを、目標再生像に基づいて求めて、再生領域格納メモリ40に格納する。最適化処理部10は、計算機ホログラムの初期値を決定して再生像格納メモリ50に格納する。また、最適化処理部10は、再生像計算の処理が終了した旨を示す終了信号を再生像計算部20から受け取り、再生像格納メモリ50に格納されている更新された計算機ホログラムを受け取って、最適化処理を行う。
【0077】
再生像計算部20は、最適化処理部10からの指示に基づいて上記ステップS4の処理を実行する。このとき、再生像計算部20は、最適化処理部10、ルックアップテーブル格納メモリ30、再生領域格納メモリ40および再生像格納メモリ50それぞれから再生像計算に必要な情報を獲得して、これらの情報に基づいて、再生像の画素(m,n)の複素振幅変化量ΔHmnを計算し、変化後の再生像の画素(m,n)の複素振幅H'mnを求める。この再生像計算部20における処理の内容の詳細は後述する。
【0078】
ルックアップテーブル格納メモリ30は、最適化処理部10により計算されたルックアップテーブルLUT3(上記(13)式)を、最適化処理開始の当初より格納している。再生領域格納メモリ40は、再生像のうちの関心領域Ωに含まれる各画素(m,n)を示す位置情報m,nの集合を、最適化処理開始の当初より格納している。なお、再生像のうちの関心領域Ωは、一般には目標再生像のうち画素値が0でない領域であり、目標再生像に基づいて最適化処理部10により求められたものである。再生像格納メモリ50は、最適化処理部10により決定された計算機ホログラムの初期値を最適化処理開始の当初に格納し、また、再生像計算部20により計算された計算機ホログラムを更新記憶する。
【0079】
図2は、本実施形態に係る計算機ホログラム作成装置および方法における再生像計算処理を説明するフローチャートである。図2に示したフローチャートは、上記(14)式を用いて再生像計算部20において行われる再生像計算処理(上記ステップS4の処理)の詳細なフローを示すものである。
【0080】
(S11) 先ず、再生像計算部20は、再生像を計算すべき旨の指示を最適化処理部10から受け取り、さらに、計算機ホログラムに含まれる多数の画素のうち位相レベルが変化する画素(j,k)を示す位置情報j,k、および、その画素(j,k)の複素振幅hjkの変化前後の位相レベルp,p'を、最適化処理部10から受け取る。(S12) また、再生像計算部20は、再生像のうちの関心領域Ωに含まれる各画素(m,n)を示す位置情報m,nを、再生領域格納メモリ40から受け取る。
【0081】
(S13) 再生像計算部20は、これらのパラメータp,p',m,n,jおよびkに基づいて、ルックアップテーブル格納メモリ30に格納されているデータを読み出す為のアドレス値adr1(=ap+bjm+ckn)およびadr2(=ap'+bjm+ckn)を作成する。(S14) 再生像計算部20は、当該アドレスに格納されているデータLUT3[adr1]およびLUT3[adr2]をルックアップテーブル格納メモリ30より読み出す。(S15) そして、再生像計算部20は、再生像の画素(m,n)の複素振幅変化量ΔHmnを上記(14)式に従って計算する。
【0082】
(S16) 再生像計算部20は、パラメータmおよびnに基づいて、再生像格納メモリ50に格納されている再生像の画素(m,n)の複素振幅Hmnを読み出す。(S17) 再生像計算部20は、この複素振幅Hmnに上記複素振幅変化量ΔHmnを加算することで、変化後の再生像の画素(m,n)の複素振幅H'mnを求めて、この複素振幅H'mnを再生像格納メモリ50に戻す。(S18) 再生領域格納メモリ40に格納されている関心領域Ω内の全て画素について処理を行ったか否かを判断し、もし「否」であればステップS12に戻る。(S19) 再生領域格納メモリ40に格納されている関心領域Ω内の全て画素について処理が終了すると、再生像計算部20は、最適化処理部10に対して終了信号を出力する。その後、最適化処理部10は、再生像格納メモリ50に格納されている更新された計算機ホログラムを受け取って、最適化処理を行う。
【0083】
位相レベルpとp'との和について上記(15)式、上記(16)式または上記(19)式が成立するか否かを判断して、この判断結果に基づいて、再生像の画素(m,n)の複素振幅変化量ΔHmnを、異なる式(上記(18)式または(21)式)で計算する場合には、上記ステップS11,S12およびS16〜S19それぞれにおける処理内容は上記と同様であるが、ステップS13〜S15それぞれにおける処理内容は異なる。
【0084】
位相レベルpとp'との和について上記(15)式または上記(16)式が成立するときには、ステップS13〜S15それぞれにおける処理内容は、以下のステップS23〜S25のように置き換えられる。(S23) 再生像計算部20は、これらのパラメータp',m,n,jおよびkに基づいて、ルックアップテーブル格納メモリ30に格納されているデータを読み出す為のアドレス値adr3(=ap')およびadr4(=bjm+ckn)を作成する。(S24) 再生像計算部20は、当該アドレスに格納されているデータLUT3[adr3]およびLUT3[adr4]をルックアップテーブル格納メモリ30より読み出す。(S25) そして、再生像計算部20は、再生像の画素(m,n)の複素振幅変化量ΔHmnを上記(18)式に従って計算する。
【0085】
一方、位相レベルpとp'との和について上記(19)式が成立するときには、ステップS13〜S15それぞれにおける処理内容は、以下のステップS33〜S35のように置き換えられる。(S33) 再生像計算部20は、これらのパラメータp',m,n,jおよびkに基づいて、ルックアップテーブル格納メモリ30に格納されているデータを読み出す為のアドレス値adr3(=ap')およびadr4(=bjm+ckn)を作成する。(S34) 再生像計算部20は、当該アドレスに格納されているデータLUT3[adr3]およびLUT3[adr4]をルックアップテーブル格納メモリ30より読み出す。(S35) そして、再生像計算部20は、再生像の画素(m,n)の複素振幅変化量ΔHmnを上記(21)式に従って計算する。
【0086】
また、計算機ホログラムの画素(j,k)の位相レベル変化量Δpの値が限定されている場合に、再生像の画素(m,n)の複素振幅変化量ΔHmnを上記(24)式に従って計算するときには、上記(23)式で表されるルックアップテーブルLUT4がルックアップテーブル格納メモリ30に格納される。この場合には、上記ステップS11,S12およびS16〜S19それぞれにおける処理内容は上記と同様であるが、ステップS13〜S15それぞれにおける処理内容は、以下のステップS43〜S45のように置き換えられる。(S43) 再生像計算部20は、これらのパラメータp,p',m,n,jおよびkに基づいて、ルックアップテーブル格納メモリ30に格納されているデータを読み出す為のアドレス値adr5(=Q(p'−p)+ap+bjm+ckn)を作成する。(S44) 再生像計算部20は、当該アドレスに格納されているデータLUT4[adr5]をルックアップテーブル格納メモリ30より読み出す。(S45) そして、再生像計算部20は、再生像の画素(m,n)の複素振幅変化量ΔHmnを上記(24)式に従って計算する。
【0087】
図3は、再生像の画素(m,n)の複素振幅変化量ΔHmnを計算する際の計算量を纏めた図表である。ルックアップテーブルLUT1およびLUT2を用いる上記(9)式と比較して、ルックアップテーブルLUT3を用いる上記(14)式は、メモリ参照回数が同じであるものの、実数乗算回数および実数加減算回数それぞれが少ないので、計算時間が短い。また、位相レベルpとp'との和が所定の関係を満たす場合に用いられる上記(18)式および上記(21)式それぞれは、メモリ参照回数、実数乗算回数および実数加減算回数の何れも少ないので、計算時間が更に短い。さらに、計算機ホログラムの画素(j,k)の位相レベル変化量Δpの値が限定されている場合に用いられる上記(24)式は、メモリ参照回数、実数乗算回数および実数加減算回数の何れも更に少ないので、計算時間が更に短い。
【0088】
【発明の効果】
以上、詳細に説明したとおり、本発明によれば、入力値q(ただし、0≦q<Q、qおよびQそれぞれは整数。)の入力に対して関数値 exp(2πiq/Q) が量子化された出力値LUT[q]を出力するルックアップテーブルを用いることにより、或いは、入力値sQ+q(ただし、0≦q<Q、0≦s<P、q,Q,sおよびPそれぞれは整数。)の入力に対して関数値 [exp(2πis/P)−1]・exp(2πiq/Q) が量子化された出力値LUT[sQ+q]を出力するルックアップテーブルを用いることにより、再生像を計算する際の演算量が削減され、計算機ホログラムが短時間に作成される。
【図面の簡単な説明】
【図1】本実施形態に係る計算機ホログラム作成装置の構成図である。
【図2】本実施形態に係る計算機ホログラム作成装置および方法における再生像計算処理を説明するフローチャートである。
【図3】再生像の画素の複素振幅変化量ΔHmnを計算する際の計算量を纏めた図表である。
【符号の説明】
1…計算機ホログラム作成装置、10…最適化処理部、20…再生像計算部、30…ルックアップテーブル格納メモリ、40…再生領域格納メモリ、50…再生像格納メモリ。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an apparatus and a method for creating a computer generated hologram (phase hologram or complex amplitude hologram) for reproducing a target reproduction image by generating reproduction light whose phase is modulated by incidence of illumination light by an optimization method. Is.
[0002]
[Prior art]
In fields such as laser marking, laser processing, optical modeling, and optical tweezers, there is a demand for an image pattern forming technique for forming laser light into a desired shape. One of the image pattern forming techniques is a technique using a computer generated hologram. In this technique, a computer generated hologram capable of generating a target reconstructed image having a desired shape (target reconstructed image) is obtained by calculation, and illumination light is applied to the computer generated hologram to form a target reconstructed image. Since this technique using a computer generated hologram uses a holographic technique, the degree of freedom is high. In addition, if a phase hologram is used as a computer generated hologram, the loss of light is small, and the utilization efficiency of light energy is high.
[0003]
This computer generated hologram cannot be analytically performed, but is performed by an optimization method based on iterative calculation. The creation of a computer generated hologram by optimization starts with a certain initial computer generated hologram and performs iterative calculations. The computer generated holograms are sequentially reconstructed so that the reconstructed image reproduced from the computer generated by this calculation approaches the target reconstructed image. Update. With such an optimization method, good results are obtained.
[0004]
For example, a computer described in the literature “AG Kirk and TJ Hall,“ Design of binary computer generated holograms by simulated annealing: coding density and reconstruction error, ”Opt. Comm. Vol. 94, pp. 491-496 (1992)”. In the hologram creation method, a simulated annealing (SA) method is used as an optimization method. Kirk et al. Applied the SA method to the creation of a binary phase computer hologram with hologram values limited to binary. In addition, there are various documents in which the SA method is applied to the creation of a computer generated hologram. Among them, the above-mentioned document by Kirk et al. Clearly mentions a device for shortening the creation time.
[0005]
First, a general procedure of a computer generated hologram method using the SA method configured based on this document will be described. In this procedure, (S1) the initial value of the computer generated hologram is determined, and initial values of parameters used in the SA method are determined. (S2) one or more pixels among a number of pixels included in the computer generated hologram (S3) change the pixel value of the selected pixel, (S4) calculate a reproduction image reproduced by the computer generated hologram after changing the pixel value, and (S5) calculate the reproduction image And (S6) evaluate the error and determine whether or not to accept the change of the pixel value of the selected pixel (step S3 above), and (S7) included in the computer generated hologram It is determined whether or not the processing in steps S2 to S6 has been performed for all the pixels to be processed. If “No”, the process returns to step S2, and (S8) updates parameters used in the SA method. ) Calculate It is determined whether or not may be completion, the flow returns to step S2 if if "No".
[0006]
This SA calculation procedure has a double loop. In the inner loop (steps S2 to S7), pixels included in the computer generated hologram are scanned and the pixel values are optimized while the parameters used in the SA method are constant. In the outer loop (steps S2 to S9), optimization is repeated while updating parameters used in the SA method, and the degree of optimization is increased.
[0007]
[Problems to be solved by the invention]
However, the computer hologram creation method based on the SA method described in the above document has a problem that it takes a very long time because both the number of repetitions and the calculation amount are large.
[0008]
As for the number of repetitions, the loop inside the SA method is performed for all the pixels included in the computer generated hologram, and therefore the number of repetitions is the same as the number of pixels. In general, the number of pixels is very large. For example, considering the creation of a computer generated hologram for a VGA standard liquid crystal monitor, the number of repetitions of the inner loop is 300,000 times or more. Furthermore, in order to obtain a good solution, it is necessary to repeat the outer loop of steps S2 to S9 many times. Thus, since the number of repetitions of both the outer and inner loops is large, the creation time becomes longer.
[0009]
As the number of pixels increases, the creation time becomes longer. In recent years, with the development of process technology, the number of pixels of a device that can be used for hologram display is increasing at a rapid pitch. As the number of pixels in the hologram increases, the number of iterations for pixel scanning in the inner loop also increases. Also, the amount of calculation of the reproduced image in step S4 increases. Furthermore, since the degree of freedom becomes high, the number of iterations for optimization in the outer loop increases. Thus, when the number of pixels of a computer generated hologram increases, the hologram creation time increases rapidly.
[0010]
Even if the hologram value becomes multi-level, the calculation time increases. In the above-mentioned document of Kirk et al., A binary hologram is created by using the SA method. However, in the case of a binary hologram, since the amount of calculation in step 4 is small, the total amount of calculation is originally relatively small. Further, since the degree of freedom is low, the number of repetitions can be relatively small. On the other hand, when the hologram value is multi-valued, the calculation amount in step S4 is twice or more that when the hologram value is binary. Furthermore, since the degree of freedom is increased, the number of times the outer loop is repeated increases. From these two effects, as the number of hologram value levels increases, the hologram production time increases rapidly.
[0011]
In the above-mentioned document of Kirk et al., The calculation of the reproduced image is speeded up by eliminating the unnecessary calculation and using the lookup table in the calculation of the reproduced image in step S4. The former can also be applied to multi-value holograms. Unfortunately, however, their lookup tables are designed for binary holograms, so the creation time cannot be significantly reduced even when applied to multi-value holograms.
[0012]
As described above, the SA method is originally a method that takes time to calculate, and the time required for creation increases rapidly as the number of pixels and the number of levels of hologram values increase. A long preparation time is a major obstacle to practical use. In the case of a multi-value hologram, even if a lookup table described in Kirk et al. Is used, sufficient speedup cannot be expected.
[0013]
The present invention has been made to solve the above problems, and an object of the present invention is to provide a computer generated hologram apparatus and method capable of generating a computer generated hologram in a short time.
[0014]
[Means for Solving the Problems]
The computer generated hologram generating apparatus according to the present invention generates reproduction light having at least a phase modulated by incident illumination light to reproduce a target reproduction image. Fourier transform type (1) A function value exp (2πiq / Q with respect to an input of an input value q (where 0 ≦ q <Q, q and Q are integers). ) Is an output value LUT [q] quantized, and (2) a phase value before the change according to a change in the phase value of any pixel included in the computer generated hologram The output value LUT [q] is obtained from the lookup table storage means based on the input value q corresponding to the pixel position, and the lookup is performed based on the phase value after the change and the input value q ′ corresponding to the pixel position. Reproduction image calculation means for obtaining an output value LUT [q ′] from the table storage means and calculating a reproduction image reproduced by the computer generated hologram based on these output values LUT [q] and LUT [q ′]; 3) Included in computer generated hologram The phase value of each pixel is changed, and the computer generated hologram for reproducing the target reproduction image is optimized by the optimization method based on the reproduction image and the target reproduction image calculated by the reproduction image calculation means according to the change. And an optimization processing means to be created.
[0015]
Further, the computer generated hologram method according to the present invention reproduces a target reproduction image by generating reproduction light whose phase is modulated at least by the incidence of illumination light. Fourier transform type (1) A function value exp (2πiq / Q for an input value q (where 0 ≦ q <Q, q and Q are integers), respectively. ) Prepares a look-up table for outputting the quantized output value LUT [q], and (2) according to a change in the phase value of any pixel included in the computer generated hologram, The output value LUT [q] is obtained from the lookup table based on the input value q corresponding to the pixel position, and from the lookup table based on the phase value after the change and the input value q ′ corresponding to the pixel position. An output value LUT [q ′] is obtained, and a reproduced image reproduced by a computer generated hologram is calculated based on the output values LUT [q] and LUT [q ′]. (3) Each pixel included in the computer generated hologram Change the phase value of A computer generated hologram for reproducing the target reproduction image is created by an optimization method based on the reproduction image calculated in accordance with the change and the target reproduction image.
[0016]
The computer generated hologram creating apparatus according to the present invention and the computer generated hologram creating method according to the present invention are based on the same technical idea. In the present invention, by preparing a lookup table as described above, the amount of calculation when calculating a reproduced image is reduced, and a computer generated hologram is created in a short time.
[0017]
In the computer generated hologram creating apparatus according to the present invention, the reproduced image calculating means is (1) the sum of the phase value 2πp / P before the change of the pixel and the phase value 2πp ′ / P after the change (2π (p + p ′) / P ) Is π or 3π, the real part of the output value is obtained from the look-up table storage means based on the input value corresponding to the phase value 2πp ′ / P after the change, and the input corresponding to the position of the pixel. Based on the values, output values are obtained from the lookup table storage means, and based on these values, a reproduction image reproduced by the computer generated hologram is calculated. (2) When the sum value is 2π, An imaginary part of the output value is obtained from the lookup table storage means based on the input value corresponding to the phase value 2πp ′ / P, and an output value is obtained from the lookup table storage means based on the input value corresponding to the pixel position. To these values Then, a reproduced image reproduced by a computer generated hologram is calculated. (3) When the sum value is not any of π, 2π, and 3π, the phase value 2πp / P before the change and the position of the pixel are determined. The output value LUT [q] is obtained from the lookup table storage means based on the input value q, and the lookup table is stored based on the phase value 2πp ′ / P after the change and the input value q ′ corresponding to the pixel position. An output value LUT [q ′] is obtained from the means, and a reproduced image reproduced by a computer generated hologram is calculated based on the output values LUT [q] and LUT [q ′].
[0018]
In addition, when the computer generated hologram method according to the present invention calculates a reconstructed image reproduced by a computer generated hologram, (1) the phase value 2πp / P before the change of the pixel and the phase value 2πp ′ / P after the change When the value of the sum (2π (p + p ′) / P) is π or 3π, the real part of the output value is obtained from the lookup table based on the input value corresponding to the phase value 2πp ′ / P after the change. The output value is obtained from the lookup table based on the input value corresponding to the pixel position, and the reproduced image reproduced by the computer generated hologram is calculated based on these values. (2) The sum value is 2π. In some cases, an imaginary part of the output value is obtained from the lookup table based on the input value corresponding to the changed phase value 2πp ′ / P, and the output value from the lookup table is obtained based on the input value corresponding to the pixel position. Get this Based on these values, a reconstructed image reproduced by a computer generated hologram is calculated. (3) When the sum value is not any of π, 2π, and 3π, the phase value 2πp / P before the change and the pixel value The output value LUT [q] is obtained from the lookup table based on the input value q corresponding to the position, and the lookup is performed based on the phase value 2πp ′ / P after the change and the input value q ′ corresponding to the pixel position. An output value LUT [q ′] is obtained from the table, and a reproduction image reproduced by a computer generated hologram is calculated based on the output values LUT [q] and LUT [q ′].
[0019]
As described above, when the sum of the phase value 2πp / P before the change of the pixel and the phase value 2πp ′ / P after the change (2π (p + p ′) / P) is any one of π, 2π, and 3π. In this case, the amount of calculation for calculating the reproduced image is further reduced, and a computer generated hologram is created in a shorter time.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the description of the drawings, the same elements are denoted by the same reference numerals, and redundant description is omitted.
[0024]
First, a reproduction image calculation process (the process of step S4) in the computer generated hologram creating apparatus and method according to the present embodiment will be described. When the computer generated hologram is a Fourier transform hologram, a reproduced image reproduced by the computer generated hologram can be obtained by Fourier transforming the computer generated hologram. For the calculation by Fourier transform, Fast Fourier Transform (FFT) or Discrete Fourier Transform (DFT) is used. In general, when the number of data is V, the calculation amount when calculating a reproduced image by FFT is proportional to V · logV, whereas the calculation amount when calculating a reproduced image by DFT is V 2 Is faster, the FFT is faster.
[0025]
However, in the optimization method such as the SA method, as described above, (S2) one or a plurality of pixels are selected from many pixels included in the computer generated hologram, and (S3) the pixel value of the selected pixel. (S4) Since the reconstructed image reproduced by the computer generated hologram after changing the pixel value is calculated by Fourier transform, it is only necessary to calculate the pixel whose pixel value has changed. Therefore, in this case, since the amount of calculation when calculating a reproduced image by DFT is proportional to V, DFT is faster. In addition, by using a look-up table for calculation by DFT, a reproduced image can be calculated in a short time.
[0026]
Furthermore, in FFT, all pixels included in the reproduced image on the reproduction surface are calculated simultaneously, so even if only a part of the reproduced image is required, all pixels included in the reproduced image are calculated. Must. On the other hand, in the DFT, each pixel included in the reconstructed image is calculated independently. Therefore, when only a part of the reconstructed image is necessary, only the necessary pixels need be calculated. That is, when calculating the reproduced image by DFT, it is only necessary to calculate the pixels included in the region of interest in the reproduced image. If the total number of pixels in the reproduced image is V and the number of pixels in the region of interest is U, the amount of calculation of the region of interest by DFT is proportional to U, and the amount of calculation in the inner loop (steps S2 to S7) is V · U. Is proportional to Note that the region of interest in the reconstructed image is a region where the pixel value is not 0, although it varies depending on the application.
[0027]
The computer generated hologram creation method according to the present embodiment is based on the above-described idea, and calculates a reproduced image by DFT using a lookup table, and based on the calculated reproduced image and the target reproduced image. Thus, a computer generated hologram for reproducing the target reproduction image is created by the optimization method. In addition to the SA method described above, a genetic algorithm (GA) method or a Fourier transform iterative method is used as the optimization method. In the following, a lookup table that is referred to when calculating a reproduced image by DFT will be mainly described.
[0028]
Let the number of pixels of the computer generated hologram to be created be M × N. The complex amplitude of a pixel located in the j-th row and k-th column (1 ≦ j ≦ M, 1 ≦ k ≦ N) in the computer generated hologram (hereinafter, this pixel is referred to as “pixel (j, k)”). h jk It describes as follows. In addition, a pixel located in the m-th row and n-th column (1 ≦ m ≦ M, 1 ≦ n ≦ N) in the reproduced image on the reproduction surface (hereinafter, this pixel is referred to as “pixel (m, n)”). )) For the complex amplitude of light mn It describes as follows. The complex amplitude of pixel (j, k) of the computer generated hologram is h jk To h ' jk Change to the complex amplitude change amount ΔH of the light of the pixel (m, n) on the reproduced image. mn Is
[0029]
[Expression 1]
Figure 0004191419
It is expressed by the following formula. Here, i represents an imaginary unit. Δh jk Represents the amount of complex amplitude change of pixel (j, k) of the computer generated hologram,
[0030]
[Expression 2]
Figure 0004191419
It is expressed by the following formula.
[0031]
As can be seen from the above equation (1), the complex amplitude change amount ΔH of the light of each pixel (m, n) on the reproduced image. mn Is the complex amplitude variation Δh of the pixel (j, k) of the computer generated hologram jk Rely only on. The complex amplitude H ′ of the light of the pixel (m, n) on the reproduced image after such a change mn Is the complex amplitude H before the change mn Against
[0032]
[Equation 3]
Figure 0004191419
It is expressed by the following formula. Therefore, the complex amplitude H of the light of each pixel (m, n) on the reproduced image mn Is calculated only once, then the amount of change ΔH mn You just have to add.
[0033]
In the optimization method such as the SA method, an error C between the reproduced image calculated as described above and the target reproduced image is calculated, and the error C is evaluated to accept a change in the pixel value of the selected pixel. Decide whether or not. In calculating this error C, only within the region of interest Ω of the reproduced image,
[0034]
[Expression 4]
Figure 0004191419
What is necessary is just to obtain | require the square sum. Where F mn Is the complex amplitude of the light of the pixel (m, n) on the target reproduced image. Note that the energy of the target reproduced image (the sum of squares of the complex amplitudes of the light of all the pixels) is the energy of the input light (h jk If the calculation range is limited to the region of interest Ω as in the above equation (4), the optimization result is hardly affected.
[0035]
In the exp function on the right side of the above equation (1), the real part is calculated using the cos function, and the imaginary part is calculated using the sin function. By referring to a lookup table prepared in advance instead of calculating the cos function and the sin function, the value of the exp function on the right side of the above equation (1) can be obtained in a short time. Using the least common multiple L of integers M and N (L = dM = eN, where d and e are integers), the lookup table LUT1 used here is
[0036]
[Equation 5]
Figure 0004191419
It is expressed by the following formula. In Kirk et al., A look-up table is used for the exponential function part on the right side of equation (1). In their case, the hologram is binary and Δh jk Since there are only two values of 2 and -2, the effect of speeding up sufficiently appeared. However, in the case of multiple values, Δh as in this embodiment. jk A large effect cannot be expected unless a look-up table is created including this part.
[0037]
In a computer generated hologram, the complex amplitude h of each pixel (j, k) jk Are sampled and / or quantized in intensity and / or phase. Therefore, not only the exponential function part of the above equation (1) but also the complex amplitude change amount Δh jk Can also be obtained by referring to a lookup table prepared in advance.
[0038]
When the computer generated hologram to be created is an intensity hologram, the complex amplitude h of each pixel (j, k) of the computer generated hologram jk And h ' jk Each is a quantized real number. Therefore, in this case, the complex amplitude change amount Δh jk Can easily create a lookup table. In addition, since the calculation of the right side of the above equation (1) is the product of the real number and the complex number, the reference to the memory storing the lookup table is three times, the real number multiplication is two times, and the number of operations Less is.
[0039]
When the computer generated hologram to be created is a phase hologram, the complex amplitude h of each pixel (j, k) of the computer generated hologram jk And h ' jk Each is a real value with a constant amplitude intensity, a phase is quantized, and a complex number. When the computer generated hologram is a complex amplitude hologram, the complex amplitude h of each pixel (j, k) of the computer generated hologram jk And h ' jk Each is complex, with both amplitude intensity and phase quantized.
[0040]
When the computer generated hologram is a phase hologram or a complex amplitude hologram, the complex amplitude h of each pixel (j, k) of the computer generated hologram jk Are phase-quantized at P levels in the range of 0 to 2π. Complex amplitude h of each pixel (j, k) of the computer generated hologram jk When the phase level of p is p (where 0 ≦ p <P, p and P are integers), that is, when the phase value is 2πp / P, the complex amplitude h jk Is
[0041]
[Formula 6]
Figure 0004191419
It is expressed by the following formula. Where A jk Is a real value and represents the amplitude intensity of the reproduction light from the pixel (j, k) of the computer generated hologram.
[0042]
Assuming that the phase level of the complex amplitude of the pixel (j, k) of the computer generated hologram changes from p to p ′ during the optimization process, the complex amplitude of the pixel (j, k) of the computer hologram of the above formula (2) Change amount Δh jk Is
[0043]
[Expression 7]
Figure 0004191419
It is expressed by the following formula. A look-up table can be formed in parentheses on the right side of the equation (7). The lookup table LUT2 in this case is
[0044]
[Equation 8]
Figure 0004191419
It is expressed by the following formula. Then, the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image of the above expression (1) mn Using the lookup tables LUT1 and LUT2,
[0045]
[Equation 9]
Figure 0004191419
It is expressed by the following formula.
[0046]
Since the output values of the lookup tables LUT1 and LUT2 are complex numbers, multiplication of the complex number and the complex number is performed on the right side of the equation (9). In order to calculate the right side of the above equation (9), A jk Lookup table lookup, lookup of the real part and imaginary part of the lookup table LUT1, and lookup of the real part and imaginary part of the lookup table LUT2. Therefore, in the calculation of the right side of the above equation (9), the memory in which the lookup table is stored is referenced five times, the real number multiplication is four times, and the real number addition / subtraction is four times. Thus, by calculating according to the above equation (9), the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image is obtained. mn Can be obtained in a short time.
[0047]
However, by devising the look-up table as follows, the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image mn Can be obtained in a shorter time. That is, substituting the above equation (7) into the above equation (1),
[0048]
[Expression 10]
Figure 0004191419
The following formula is obtained. And the least common multiple of P, M and N is Q,
[0049]
[Expression 11]
Figure 0004191419
And Here, each of a, b, and c is an integer. Using this Q, the above equation (10) becomes
[0050]
[Expression 12]
Figure 0004191419
It is expressed.
[0051]
Each of the two exp functions on the right side of the equation (12) is quantized with Q levels in the range of 0 to 2π, and can be replaced with one lookup table. The lookup table LUT3 used here is:
[0052]
[Formula 13]
Figure 0004191419
It is expressed by the following formula. However, 0 ≦ q <Q, and q and Q are integers. Using this lookup table LUT3, the above equation (12) is
[0053]
[Expression 14]
Figure 0004191419
It is expressed.
[0054]
To calculate the right side of equation (14) above, jk Need to be referred to, and the real part and imaginary part of the lookup table LUT3. Therefore, in the calculation of the right side of the above equation (14), the memory in which the lookup table is stored is referenced five times, the real number multiplication is performed twice, and the real number addition / subtraction is performed twice. Thus, by calculating according to the above equation (14), the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image is larger than that according to the above equation (9). mn Can be obtained in a shorter time.
[0055]
Also, the complex amplitude h of the pixel (j, k) of the computer generated hologram jk Depending on the combination of the respective values of the phase levels p and p ′, the complex amplitude h of the pixel (j, k) of the computer generated hologram jk Since this becomes a real number or an imaginary number, this complex amplitude h jk Is calculated depending on whether it is a real number, an imaginary number, or the like, so that the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image is calculated. mn Can be obtained in a shorter time.
[0056]
That is, the complex amplitude h of the pixel (j, k) of the computer generated hologram jk Since the values of the phase levels p and p ′ are integers of 0 or more and less than P,
[0057]
[Expression 15]
Figure 0004191419
and
[0058]
[Expression 16]
Figure 0004191419
Is satisfied, the complex amplitude change amount Δh of the pixel (j, k) of the computer generated hologram is satisfied. jk Is a real number,
[0059]
[Expression 17]
Figure 0004191419
It is expressed by the following formula. At this time, the above equation (12) is
[0060]
[Expression 18]
Figure 0004191419
It is expressed. In this equation (18), Re [•] represents an operation that refers to only the real part.
[0061]
on the other hand,
[0062]
[Equation 19]
Figure 0004191419
If the following relational expression is satisfied, the complex amplitude change amount Δh of the pixel (j, k) of the computer generated hologram jk Is an imaginary number,
[0063]
[Expression 20]
Figure 0004191419
It is expressed by the following formula. At this time, the above equation (12) is
[0064]
[Expression 21]
Figure 0004191419
It is expressed. In this equation (21), Im [•] represents an operation that refers to only the imaginary part.
[0065]
To calculate the right side of equation (18) above, jk Need to be referred to, and the real part of the lookup table LUT3. In order to calculate the right side of the above equation (21), A jk Of the lookup table and the imaginary part of the lookup table LUT3 are required. Therefore, in the calculation of the right side of the above equation (19) or (21), the memory storing the lookup table is referenced four times, the real number multiplication is three times, and the real number addition / subtraction is not required. is there. Thus, when the above formula (15) or the above formula (16) is established, the calculation is performed according to the above formula (18), and when the above formula (19) is established, the calculation is performed according to the above formula (21). Complex amplitude change ΔH of pixel (m, n) mn Can be obtained in a shorter time. When none of the above formulas (15), (16), and (19) holds, the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image mn Is calculated according to the above equation (14).
[0066]
Further, in the optimization method (particularly the SA method), the value of the phase level change amount Δp (= p′−p) of the pixel (j, k) of the computer generated hologram may be limited. In this case, By devising the look-up table as follows, the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image mn Can be obtained in a shorter time. That is, in this case, the above equation (12) is
[0067]
[Expression 22]
Figure 0004191419
It is expressed by the following formula. Here, since each of the phase levels p and p ′ is an integer from 0 to P−1, the phase level change amount Δp is an integer from −P + 1 to P−1. However, since exp [-ix] = exp [i (2π-x)] due to the nature of the complex exponential function, [exp (2πiΔp / P) -1] in the above equation (22) has a phase level change. A lookup table may be prepared in the range from 0 to P-1 with respect to the amount Δp.
[0068]
Therefore, q = a p + bjm + ckn (0 ≦ q <Q),
[0069]
[Expression 23]
Figure 0004191419
By preparing a look-up table LUT4 represented by the following formula, the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image mn Is
[0070]
[Expression 24]
Figure 0004191419
It is expressed by the following formula. However, s is Δp when Δp is positive, and is calculated as P−Δp when Δp is negative, and in any case, s is an integer from 0 to P−1. Also, LUT4 '[•, ·] means a two-dimensional array, and LUT4 [•] represents this in a one-dimensional array.
[0071]
To calculate the right side of equation (24) above, jk Need to be referred to, and the real part and the imaginary part of the lookup table LUT4. Therefore, in the calculation of the right side of the above equation (24), the memory storing the lookup table is referenced three times, the real number is multiplied twice, and the real number addition / subtraction is not required. Thus, when the value of the phase level variation Δp of the pixel (j, k) of the computer generated hologram is limited, the pixel (m, n) of the reproduced image is calculated by calculating according to the above equation (24). Complex amplitude change ΔH mn Can be obtained in a shorter time.
[0072]
Each lookup table includes a real part and an imaginary part, and the real part is a value calculated using a cos function, and the imaginary part is a value calculated using a sin function. If this is utilized, the size of each lookup table can be reduced. For example, if a relationship of cos (x) = sin (x−π) is used, each lookup table can integrate the real part and the imaginary part, and the size becomes 1/2. Further, if the relations cos (x) = − cos (x−π) and cos (x) = cos (−x) are used, the size of each lookup table becomes ¼. If these methods are adopted at the same time, the size of each lookup table becomes 1/8. However, this method cannot be applied to the lookup table LUT4.
[0073]
In the SA method, in one search operation in the inner loop (steps S2 to S7), it is normal that there is one pixel whose pixel value is changed in the computer generated hologram. The value may be changed. In the GA method, the pixel values of a plurality of pixels are changed simultaneously in one search operation. Thus, care must be taken when changing the pixel values of a plurality of pixels simultaneously in one search operation. In other words, the calculation time of the reconstructed image according to the present embodiment is proportional to the value of (number of pixels of the region of interest Ω in the reconstructed image) × (number of pixels whose pixel value changes in the computer generated hologram). When the number of pixels whose pixel values change in a computer generated hologram is large, the calculation time of the reproduced image by the DFT of this embodiment may be longer than the calculation time by the FFT. On the other hand, the calculation time by FFT and the calculation time by DFT of this embodiment can each be measured in advance. Therefore, when the calculation time by the DFT of the present embodiment is expected to be longer than the calculation time by the FFT, the reproduced image is calculated by using the FFT. Otherwise, the DFT of the present embodiment is used. Thus, the reproduced image may be calculated.
[0074]
The above description has focused on the theoretical aspect of the reproduction image calculation processing in the computer generated hologram creating apparatus and method according to the present embodiment. Next, the configuration and operation of the computer generated hologram creating apparatus according to this embodiment will be described, and the computer generated hologram creating method according to this embodiment will be described. FIG. 1 is a configuration diagram of a computer generated hologram creating apparatus 1 according to the present embodiment.
[0075]
The computer generated hologram creating apparatus 1 according to the present embodiment calculates a reproduced image by DFT with reference to the lookup table LUT3 or LUT4 described above, evaluates an error between the calculated reproduced image and the target reproduced image, and calculates the error. Based on the above, the computer generated hologram is optimized, and a computer generated hologram capable of reproducing the target reproduced image is created. The computer generated hologram production apparatus 1 includes an optimization processing unit 10, a reproduction image calculation unit 20, a lookup table storage memory 30, a reproduction area storage memory 40, and a reproduction image storage memory 50.
[0076]
The optimization processing unit 10 executes the processes of steps S1 to S3 and S5 to S9 and instructs the reproduction image calculation unit 20 to execute reproduction image calculation (the process of step S4). The optimization processing unit 10 stores a lookup table necessary for the reproduction image calculation by the reproduction image calculation unit 20 in the lookup table storage memory 30. The optimization processing unit 10 uses the position information m, n indicating each pixel (m, n) included in the region of interest Ω in the reproduced image to be calculated when the reproduced image calculation unit 20 calculates the reproduced image as target information. It is obtained based on the reproduced image and stored in the reproduction area storage memory 40. The optimization processing unit 10 determines an initial value of the computer generated hologram and stores it in the reproduced image storage memory 50. Further, the optimization processing unit 10 receives an end signal indicating that the processing of the reproduction image calculation is completed from the reproduction image calculation unit 20, receives the updated computer generated hologram stored in the reproduction image storage memory 50, Perform optimization processing.
[0077]
The reproduced image calculation unit 20 executes the process of step S4 based on an instruction from the optimization processing unit 10. At this time, the reconstructed image calculation unit 20 obtains information necessary for reconstructed image calculation from the optimization processing unit 10, the look-up table storage memory 30, the reproduction area storage memory 40, and the reconstructed image storage memory 50, respectively. Based on the information, the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image mn And the complex amplitude H ′ of the pixel (m, n) of the reproduced image after the change mn Ask for. Details of processing in the reproduction image calculation unit 20 will be described later.
[0078]
The look-up table storage memory 30 stores the look-up table LUT3 (the above equation (13)) calculated by the optimization processing unit 10 from the beginning of the optimization process. The reproduction area storage memory 40 stores a set of position information m and n indicating each pixel (m, n) included in the region of interest Ω of the reproduction image from the beginning of the optimization process. Note that the region of interest Ω in the reproduced image is generally a region having a pixel value other than 0 in the target reproduced image, and is obtained by the optimization processing unit 10 based on the target reproduced image. The reproduced image storage memory 50 stores the initial value of the computer generated hologram determined by the optimization processing unit 10 at the beginning of the optimization process, and updates and stores the computer generated hologram calculated by the reproduced image calculating unit 20.
[0079]
FIG. 2 is a flowchart for explaining a reproduction image calculation process in the computer generated hologram creating apparatus and method according to the present embodiment. The flowchart shown in FIG. 2 shows a detailed flow of the reproduction image calculation process (the process of step S4) performed in the reproduction image calculation unit 20 using the above equation (14).
[0080]
(S11) First, the reconstructed image calculation unit 20 receives an instruction to calculate a reconstructed image from the optimization processing unit 10, and further, a pixel (j whose phase level changes among a large number of pixels included in the computer generated hologram (j , K) and position information j, k indicating the complex amplitude h of the pixel (j, k) jk Are received from the optimization processing unit 10. (S12) Further, the reproduced image calculation unit 20 receives position information m, n indicating each pixel (m, n) included in the region of interest Ω of the reproduced image from the reproduction region storage memory 40.
[0081]
(S13) Based on these parameters p, p ′, m, n, j, and k, the reproduced image calculation unit 20 reads an address value adr1 (=) for reading data stored in the lookup table storage memory 30. ap + bjm + ckn) and adr2 (= ap ′ + bjm + ckn). (S14) The reproduced image calculation unit 20 reads the data LUT3 [adr1] and LUT3 [adr2] stored at the address from the lookup table storage memory 30. (S15) Then, the reproduced image calculation unit 20 calculates the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image. mn Is calculated according to the above equation (14).
[0082]
(S16) Based on the parameters m and n, the reproduction image calculation unit 20 calculates the complex amplitude H of the pixel (m, n) of the reproduction image stored in the reproduction image storage memory 50. mn Is read. (S17) The reproduced image calculation unit 20 calculates the complex amplitude H mn And the complex amplitude variation ΔH mn Is added to the complex amplitude H ′ of the pixel (m, n) of the reproduced image after the change. mn For this complex amplitude H ′ mn Is returned to the reproduced image storage memory 50. (S18) It is determined whether or not all the pixels in the region of interest Ω stored in the reproduction region storage memory 40 have been processed. If “No”, the process returns to step S12. (S19) When the processing is completed for all the pixels in the region of interest Ω stored in the reproduction region storage memory 40, the reproduction image calculation unit 20 outputs an end signal to the optimization processing unit 10. Thereafter, the optimization processing unit 10 receives the updated computer generated hologram stored in the reproduced image storage memory 50 and performs an optimization process.
[0083]
It is determined whether the above equation (15), the above equation (16), or the above equation (19) is established for the sum of the phase levels p and p ′, and based on the determination result, a pixel ( m, n) complex amplitude change ΔH mn Is calculated by a different formula (the above formula (18) or the formula (21)), the processing contents in the above steps S11, S12 and S16 to S19 are the same as the above, but in each of the steps S13 to S15. Processing contents are different.
[0084]
When the above expression (15) or the above expression (16) is established for the sum of the phase levels p and p ′, the processing contents in steps S13 to S15 are replaced as in the following steps S23 to S25. (S23) Based on these parameters p ′, m, n, j and k, the reproduced image calculation unit 20 reads out the address value adr3 (= ap ′) for reading the data stored in the lookup table storage memory 30. ) And adr4 (= bjm + ckn). (S24) The reproduced image calculation unit 20 reads the data LUT3 [adr3] and LUT3 [adr4] stored at the address from the lookup table storage memory 30. (S25) Then, the reproduced image calculation unit 20 calculates the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image. mn Is calculated according to the above equation (18).
[0085]
On the other hand, when the above equation (19) is established for the sum of the phase levels p and p ′, the processing contents in steps S13 to S15 are replaced as in the following steps S33 to S35. (S33) Based on these parameters p ′, m, n, j and k, the reconstructed image calculation unit 20 reads out the address value adr3 (= ap ′) for reading the data stored in the lookup table storage memory 30. ) And adr4 (= bjm + ckn). (S34) The reproduced image calculation unit 20 reads the data LUT3 [adr3] and LUT3 [adr4] stored in the address from the lookup table storage memory 30. (S35) Then, the reproduced image calculation unit 20 calculates the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image. mn Is calculated according to the above equation (21).
[0086]
Further, when the value of the phase level change Δp of the pixel (j, k) of the computer generated hologram is limited, the complex amplitude change ΔH of the pixel (m, n) of the reproduced image is limited. mn Is calculated according to the above equation (24), the lookup table LUT4 represented by the above equation (23) is stored in the lookup table storage memory 30. In this case, the processing contents in steps S11, S12 and S16 to S19 are the same as described above, but the processing contents in steps S13 to S15 are replaced as in steps S43 to S45 below. (S43) Based on these parameters p, p ′, m, n, j, and k, the reproduced image calculation unit 20 reads an address value adr5 (=) for reading data stored in the lookup table storage memory 30. Q (p′−p) + ap + bjm + ckn) is created. (S44) The reproduced image calculation unit 20 reads the data LUT4 [adr5] stored at the address from the lookup table storage memory 30. (S45) Then, the reproduced image calculation unit 20 calculates the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image. mn Is calculated according to the above equation (24).
[0087]
FIG. 3 shows the complex amplitude change amount ΔH of the pixel (m, n) of the reproduced image. mn It is the table | surface which put together the calculation amount at the time of calculating. Compared with the above equation (9) using the look-up tables LUT1 and LUT2, the above equation (14) using the look-up table LUT3 has the same number of times of memory reference, but the number of times of real number multiplication and the number of real number addition / subtraction are small. So the calculation time is short. Further, each of the above formula (18) and the above formula (21) used when the sum of the phase levels p and p ′ satisfies a predetermined relationship has a small number of memory reference times, real number multiplication times, and real number addition / subtraction times. Therefore, the calculation time is even shorter. Further, the above equation (24) used when the value of the phase level change amount Δp of the pixel (j, k) of the computer generated hologram is limited is any of the memory reference count, the real multiplication count, and the real addition / subtraction count. Since there are few, calculation time is still shorter.
[0088]
【The invention's effect】
As described above in detail, according to the present invention, the function value exp (2πiq / Q) is quantized with respect to the input of the input value q (where 0 ≦ q <Q, q and Q are integers). By using a look-up table that outputs the output value LUT [q], or the input value sQ + q (where 0 ≦ q <Q, 0 ≦ s <P, q, Q, s, and P are integers). ) Is used to output an output value LUT [sQ + q] in which a function value [exp (2πis / P) −1] · exp (2πiq / Q) is quantized. The amount of calculation at the time of calculation is reduced, and a computer generated hologram is created in a short time.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a computer generated hologram creating apparatus according to the present embodiment.
FIG. 2 is a flowchart for explaining a reproduction image calculation process in the computer generated hologram generation apparatus and method according to the present embodiment.
FIG. 3 shows a complex amplitude change amount ΔH of a pixel of a reproduced image. mn It is the table | surface which put together the calculation amount at the time of calculating.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Computer hologram production apparatus, 10 ... Optimization process part, 20 ... Reproduction image calculation part, 30 ... Look-up table storage memory, 40 ... Reproduction area storage memory, 50 ... Reproduction image storage memory.

Claims (2)

照明光の入射により少なくとも位相が変調された再生光を生じさせて目標再生像を再生する為のフーリエ変換型の計算機ホログラムを最適化法により作成する装置であって、
入力値q(ただし、0≦q<Q、qおよびQそれぞれは整数。)の入力に対して関数値 exp(2πiq/Q) が量子化された出力値LUT[q]を出力するルックアップテーブル記憶手段と、
前記計算機ホログラムに含まれる何れかの画素の位相値の変化に応じて、その変化前の位相値および前記画素の位置に応じた入力値qに基づいて前記ルックアップテーブル記憶手段から出力値LUT[q]を得るとともに、その変化後の位相値および前記画素の位置に応じた入力値q'に基づいて前記ルックアップテーブル記憶手段から出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、前記計算機ホログラムにより再生される再生像を計算する再生像計算手段と、
前記計算機ホログラムに含まれる各画素の位相値を変化させ、この変化に応じて前記再生像計算手段により計算される再生像と前記目標再生像とに基づいて、前記目標再生像を再生する為の前記計算機ホログラムを最適化法により作成する最適化処理手段と、
を備え、
前記再生像計算手段は、
前記画素の変化前の位相値2πp/Pと変化後の位相値2πp'/Pとの和(2π(p+p')/P)の値がπまたは3πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいて前記ルックアップテーブル記憶手段から出力値の実数部を得るとともに、前記画素の位置に応じた入力値に基づいて前記ルックアップテーブル記憶手段から出力値を得て、これらの値に基づいて、前記計算機ホログラムにより再生される再生像を計算し、
前記和の値が2πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいて前記ルックアップテーブル記憶手段から出力値の虚数部を得るとともに、前記画素の位置に応じた入力値に基づいて前記ルックアップテーブル記憶手段から出力値を得て、これらの値に基づいて、前記計算機ホログラムにより再生される再生像を計算し、
前記和の値がπ,2πおよび3πの何れでもないときに、その変化前の位相値2πp/Pおよび前記画素の位置に応じた入力値qに基づいて前記ルックアップテーブル記憶手段から出力値LUT[q]を得るとともに、その変化後の位相値2πp'/Pおよび前記画素の位置に応じた入力値q'に基づいて前記ルックアップテーブル記憶手段から出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、前記計算機ホログラムにより再生される再生像を計算する、
ことを特徴とする計算機ホログラム作成装置。
An apparatus for creating a Fourier transform type computer generated hologram by an optimization method for reproducing a target reproduction image by generating reproduction light whose phase is modulated by incident illumination light,
A lookup table that outputs an output value LUT [q] in which a function value exp (2πiq / Q) is quantized with respect to an input of an input value q (where 0 ≦ q <Q, q and Q are integers). Storage means;
In response to a change in the phase value of any of the pixels included in the computer generated hologram, an output value LUT [from the lookup table storage means based on the phase value before the change and the input value q corresponding to the position of the pixel. q], and an output value LUT [q ′] from the lookup table storage means based on the phase value after the change and the input value q ′ corresponding to the position of the pixel, and these output values LUT [ reconstructed image calculation means for calculating a reconstructed image reconstructed by the computer generated hologram based on q] and LUT [q ′];
The phase value of each pixel included in the computer generated hologram is changed, and the target reproduced image is reproduced based on the reproduced image calculated by the reproduced image calculating means and the target reproduced image according to the change. An optimization processing means for creating the computer generated hologram by an optimization method;
With
The reproduced image calculation means includes:
When the sum of the phase value 2πp / P before the change of the pixel and the phase value 2πp ′ / P after the change (2π (p + p ′) / P) is π or 3π, the phase value 2πp ′ after the change The real part of the output value is obtained from the lookup table storage means based on the input value corresponding to / P, and the output value is obtained from the lookup table storage means based on the input value corresponding to the position of the pixel. Based on these values, the reproduced image reproduced by the computer generated hologram is calculated,
When the sum value is 2π, an imaginary part of the output value is obtained from the lookup table storage means based on the input value corresponding to the phase value 2πp ′ / P after the change, and the sum value is determined according to the pixel position. Obtaining an output value from the lookup table storage means based on the input value, and calculating a reproduction image reproduced by the computer generated hologram based on these values;
When the sum value is neither π, 2π, or 3π, the output value LUT is output from the lookup table storage means based on the phase value 2πp / P before the change and the input value q corresponding to the position of the pixel. obtaining [q], obtaining the output value LUT [q ′] from the lookup table storage means based on the phase value 2πp ′ / P after the change and the input value q ′ corresponding to the position of the pixel, Based on these output values LUT [q] and LUT [q ′], a reproduced image reproduced by the computer generated hologram is calculated.
A computer generated hologram device.
照明光の入射により少なくとも位相が変調された再生光を生じさせて目標再生像を再生する為のフーリエ変換型の計算機ホログラムを最適化法により作成する方法であって、
入力値q(ただし、0≦q<Q、qおよびQそれぞれは整数。)の入力に対して、関数値 exp(2πiq/Q) が量子化された出力値LUT[q]を出力するルックアップテーブルを用意し、
前記計算機ホログラムに含まれる何れかの画素の位相値の変化に応じて、その変化前の位相値および前記画素の位置に応じた入力値qに基づいて前記ルックアップテーブルから出力値LUT[q]を得るとともに、その変化後の位相値および前記画素の位置に応じた入力値q'に基づいて前記ルックアップテーブルから出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、前記計算機ホログラムにより再生される再生像を計算し、
前記計算機ホログラムに含まれる各画素の位相値を変化させ、この変化に応じて計算される再生像と前記目標再生像とに基づいて、前記目標再生像を再生する為の前記計算機ホログラムを最適化法により作成するとともに、
前記計算機ホログラムにより再生される再生像を計算する際に、
前記画素の変化前の位相値2πp/Pと変化後の位相値2πp'/Pとの和(2π(p+p')/P)の値がπまたは3πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいて前記ルックアップテーブルから出力値の実数部を得るとともに、前記画素の位置に応じた入力値に基づいて前記ルックアップテーブルから出力値を得て、これらの値に基づいて、前記計算機ホログラムにより再生される再生像を計算し、
前記和の値が2πであるときには、変化後の位相値2πp'/Pに応じた入力値に基づいて前記ルックアップテーブルから出力値の虚数部を得るとともに、前記画素の位置に応じた入力値に基づいて前記ルックアップテーブルから出力値を得て、これらの値に基づいて、前記計算機ホログラムにより再生される再生像を計算し、
前記和の値がπ,2πおよび3πの何れでもないときに、その変化前の位相値2πp/Pおよび前記画素の位置に応じた入力値qに基づいて前記ルックアップテーブルから出力値LUT[q]を得るとともに、その変化後の位相値2πp'/Pおよび前記画素の位置に応じた入力値q'に基づいて前記ルックアップテーブルから出力値LUT[q']を得て、これら出力値LUT[q]およびLUT[q']に基づいて、前記計算機ホログラムにより再生される再生像を計算する、
ことを特徴とする計算機ホログラム作成方法。
A method of creating a Fourier transform type computer generated hologram by an optimization method for reproducing a target reproduction image by generating reproduction light whose phase is modulated at least by incidence of illumination light,
Lookup for outputting an output value LUT [q] in which a function value exp (2πiq / Q) is quantized with respect to an input of an input value q (where 0 ≦ q <Q, q and Q are integers). Prepare a table
In response to a change in the phase value of any pixel included in the computer generated hologram, an output value LUT [q] from the lookup table based on the phase value before the change and the input value q corresponding to the position of the pixel. And the output value LUT [q ′] is obtained from the lookup table based on the phase value after the change and the input value q ′ corresponding to the position of the pixel, and these output values LUT [q] and LUT Based on [q ′], a reproduced image reproduced by the computer generated hologram is calculated,
The phase value of each pixel included in the computer generated hologram is changed, and the computer generated hologram for reproducing the target reproduced image is optimized based on the reproduced image calculated according to the change and the target reproduced image. Create by law,
When calculating a reproduced image reproduced by the computer generated hologram,
When the sum of the phase value 2πp / P before the change of the pixel and the phase value 2πp ′ / P after the change (2π (p + p ′) / P) is π or 3π, the phase value 2πp ′ after the change The real part of the output value is obtained from the look-up table based on the input value according to / P, and the output value is obtained from the look-up table based on the input value according to the position of the pixel. Based on the above, the reproduced image reproduced by the computer generated hologram is calculated,
When the sum value is 2π, an imaginary part of the output value is obtained from the lookup table based on the input value corresponding to the phase value 2πp ′ / P after the change, and the input value corresponding to the position of the pixel To obtain an output value from the lookup table, and based on these values, calculate a reproduced image reproduced by the computer generated hologram,
When the value of the sum is neither π, 2π, or 3π, the output value LUT [q from the lookup table based on the phase value 2πp / P before the change and the input value q corresponding to the position of the pixel. ], And an output value LUT [q ′] is obtained from the lookup table based on the phase value 2πp ′ / P after the change and the input value q ′ corresponding to the position of the pixel, and these output values LUT Based on [q] and LUT [q ′], a reproduced image reproduced by the computer generated hologram is calculated.
A method for creating a computer generated hologram.
JP2002065924A 2002-03-11 2002-03-11 Computer generated hologram production apparatus and method Expired - Fee Related JP4191419B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002065924A JP4191419B2 (en) 2002-03-11 2002-03-11 Computer generated hologram production apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002065924A JP4191419B2 (en) 2002-03-11 2002-03-11 Computer generated hologram production apparatus and method

Publications (2)

Publication Number Publication Date
JP2003263094A JP2003263094A (en) 2003-09-19
JP4191419B2 true JP4191419B2 (en) 2008-12-03

Family

ID=29197992

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002065924A Expired - Fee Related JP4191419B2 (en) 2002-03-11 2002-03-11 Computer generated hologram production apparatus and method

Country Status (1)

Country Link
JP (1) JP4191419B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10901367B2 (en) 2016-11-30 2021-01-26 Samsung Electronics Co., Ltd. Image data processing method and apparatus

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4845386B2 (en) 2004-02-09 2011-12-28 株式会社エヌ・ティ・ティ・ドコモ Stereoscopic image display apparatus and stereoscopic image display method
JP2005338787A (en) 2004-04-26 2005-12-08 Ntt Docomo Inc Optical wavefront control pattern generating apparatus and optical wavefront control pattern generating method
CN101563659B (en) * 2006-12-01 2013-08-21 F.珀斯扎特胡有限公司 Computer generated hologram
KR101021127B1 (en) 2009-04-06 2011-03-14 광운대학교 산학협력단 Method for generating computer generated hologram using look-up table and spatial redundancy, and Apparatus thereof
KR101926547B1 (en) 2011-10-28 2018-12-10 삼성전자주식회사 Method and apparatus for generating fast 3d hologram
KR102464363B1 (en) 2015-09-30 2022-11-07 삼성전자주식회사 Apparatus and Method for performing Fourier transform
JP7514696B2 (en) 2020-08-19 2024-07-11 日本放送協会 Method for generating phase-encoded pattern and device for generating light distribution using phase-encoded pattern

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10901367B2 (en) 2016-11-30 2021-01-26 Samsung Electronics Co., Ltd. Image data processing method and apparatus

Also Published As

Publication number Publication date
JP2003263094A (en) 2003-09-19

Similar Documents

Publication Publication Date Title
CN108550115B (en) Image super-resolution reconstruction method
WO2020010147A1 (en) Compressed unsupervised quantum state preparation with quantum autoencoders
US20200118025A1 (en) Quantum Computer with Improved Continuous Quantum Generator
WO2020037301A1 (en) Hybrid quantum-classical computer system and method for performing function inversion
JP4191419B2 (en) Computer generated hologram production apparatus and method
KR20190083583A (en) Device and method for reproducing binary hologram
CN111861886B (en) Image super-resolution reconstruction method based on multi-scale feedback network
Yao et al. AutoPhaseNN: unsupervised physics-aware deep learning of 3D nanoscale Bragg coherent diffraction imaging
CN113538234A (en) Remote sensing image super-resolution reconstruction method based on lightweight generation model
Buco et al. Enhanced multiple-plane phase retrieval using adaptive support
Huang et al. Image super-resolution via deep dilated convolutional networks
Kharitonov et al. Flexible ptychography platform to expand the potential of imaging at free electron lasers
Silva et al. Exhaustive dithering algorithm for 3D shape reconstruction by fringe projection profilometry
Zhu et al. High-efficiency and robust binary fringe optimization for superfast 3D shape measurement
Aslan et al. Joint ptycho-tomography with deep generative priors
Zhu et al. Optimal frequency selection for accuracy improvement in binary defocusing fringe projection profilometry
CN108388102B (en) Low-frequency-suppression random multivariate search binary phase hologram generation method
CN110352387B (en) System and method for reconstructing holographic lensless images by multi-depth sparse phase recovery
US8488911B2 (en) Image processing apparatus for processing a binary image, image processing method, and computer readable medium
Deshmukh et al. Comparing feature sets and machine-learning models for prediction of solar flares-topology, physics, and model complexity
JP4339639B2 (en) Computer hologram creation method
Shan et al. Error-diffusion-kernel parameters for binary pattern in 1-bit fringe projection profilometry
Pires et al. Projections onto convex sets parameter estimation through harmony search and its application for image restoration
Yu et al. Direct binary search method for high-resolution holographic image projection
KR102526651B1 (en) Apparatus and Method of processing image data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080916

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080918

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4191419

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130926

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees