Fast Generation Methods for Computer-Generated Hologram Using a Modified Recursive Addition Algorithm

  • cc icon
  • ABSTRACT

    A real-time digital holographic display is the core technology for the next-generation 3DTV. Holographic display requires a considerably large amount of calculation. If generating a large number of digital holograms is intended, the amount of calculation and the time required increase exponentially. This is a significant obstacle in a real-time hologram service. This paper proposes an algorithm that increases the speed of generating a Fresnel hologram by using a recursive addition operation covering the entire coordinate array of a digital hologram. The 3D object designed to calculate the digital hologram uses a depth-map image produced by computer graphics. The proposed algorithm is a technique that performs the computergenerated holography (CGH) operation with only recursive addition of all of the hologram’s coordinates by analyzing the regularity between the 3D object and the digital hologram coordinates. The experimental results show that the proposed algorithm increases the operation speed by 70% over the technique using the conventional CGH equation and by more than 30% over the previously proposed recursive technique.


  • KEYWORD

    Computer-generated hologram , Digital hologram , 3DTV , Holographic TV

  • I. INTRODUCTION

    After it was introduced in the early 1940s, holography has attracted the interest of many researchers because of its ability to record three-dimensional (3D) information. However, the existing holography stored and distributed in the form of analogue films has many constraints with respect to its commercialization be-cause it uses a laser as the coherent light, which requires a limited space, such as a darkroom, to record interference patterns, and is very sensitive to the surrounding environment, such as vibrations, thus requiring a stable optical system [1].

    These problems have gradually been overcome with the digitization of devices that generate, acquire, store, process, and display holograms. In particular, it is relatively easy to create a hologram by using computer-generated holography (CGH) techniques [2]. CGH techniques use a ray-tracing method to calculate the diffraction of light. This method considers the object to be a set of multiple points and then sums these points after calculating the intermediate hologram for each point. Consequently, this method requires a considerably large amount of calculation [3]. If it is intended to generate a large number of digital holograms, the amount of calculation and the time required increase exponentially. This problem is a significant obstacle in a realtime hologram service. The purpose of this study is also to increase the calculation speed of CGH. We analyze a previously proposed method [4] to find the regularity between a depth-map image and a digital hologram. Then, we reduce the number of calculations, the partial multi-plication, and the partial addition required for CGH in order to increase the calculation speed.

    Section II introduces the CGH method, and Section III explains the proposed fast CGH algorithm. The experimental results of the proposed algorithm are described in Section IV, and Section V presents the conclusion.

    II. COMPUTER-GENERATED HOLOGRAM

    A system for digital holograms uses electronic equipment, such as CCD cameras instead of optical ones to record the interference pattern of holography and transmit it as video signals. The image is reconstructed at the receiver side by illuminating a laser beam onto the received interference pattern uploaded on a spatial light modulator.

      >  A. CGH Calculation

    This section describes the CGH calculation method [5] and one using the recursive addition system. The CGH generating equation is defined in Eq. (1):

    image

    where α or j indicates a particular point on the hologram or the 3D object, respectively, k denotes the wave number of the reference wave defined as 2π/λ, p represents the pixel pitch of the hologram, and (xα, yα) and (xj, yj, zj) represent the coordinates of the hologram and the 3D object, respectively.

    Fig. 1 shows a sample coordinate array system for the 3D object and the digital hologram to apply the CGH method, where the 3D object is 2 × 2 pixels in size, and the captured digital hologram is 4 × 4 pixels in size. To generate a digital hologram with this setup, the calculation of Eq. (1) must be carried out 64 (2 × 2 × 4 × 4) times.

      >  B. Recursive CGH Algorithm

    If Eq. (1) is approximated to the first term after the Taylor expansion, it could be expressed as Eq. (2).

    image

    Here, xαj and yαj denote (xα ? xj) and (yα ? yj), respectively. The phase θH(xαj + n, yαj, zj) at one point (xα+n, yα) of the digital hologram can be expressed as follows:

    image

    Here, Γxn is defined as follows:

    image

    In the case of n = 1, that is, Γx1, Eq. (4) could be rewritten as follows:

    image

    Meanwhile, in the case of n = 2, Γx2 can be expressed as follows:

    image

    where Δx is defined as

    image

    Again, when Γx3 is calculated with n = 3,

    image

    When n = N, ΓxN can be generalized as

    image

    From Eq. (9) it is clear that, once the first column (the leftmost pixel) of a row of a digital hologram (Γx1) and Δx for a light source are calculated, the remnant pixel values (ΓxN) of the row with the same light source can be recursively calculated by adding Γx1, Δx, and the previously calculated value (Γx(N-1)).

    At this time, we name the CGH calculation in Eq. (2) the full calculation and the calculation in Eq. (9) the recursion calculation.

    III. PROPOSED ALGORITHM

    This section proposes a CGH algorithm performing recursive addition techniques in both the x- and y-axis directions as discussed in [5]. The operation procedure of the proposed algorithm shown in Fig. 2 is as follows:

    1) Carry out the CGH calculation of the x-axis recursive addition system on the first row of the digital hologram with the first point located on the same column of the 3D object.

    2) Store the Γx1 to ΓxN values calculated during the calculation carried out in accordance with step 1.

    3) Perform the CGH calculation of the y-axis recursive addition system for the first coordinate of the second row of the digital hologram on the basis of the first coordinate of the first row.

    4) Store the Γy1 to ΓyN values calculated during the operation specified in step 3.

    5) Starting from the second coordinate operation of the second row of the digital hologram, add the values stored in accordance with step 2 in sequence.

    6) Carry out the x- and y-axis recursive addition on the second point of the 3D object located on the same column, using the values stored in accordance with steps 2 and 4.

    7) Repeat the calculation specified in steps 1 to 6 on the points located on the column next to the 3D object.

    Fig. 3 shows the recursive addition CGH algorithm covering all the coordinates of the hologram of the points on the same column of the proposed 3D object. The proposed algorithm performs the complete calculation at a level on par with the number of points of the 3D object, and the remaining values of the hologram coordinate array are processed as a recursive calculation using the recursive addition technique, thereby increasing the speed of the operation.

    IV. EXPERIMENTAL RESULTS

    The experimental environments and parameter values used in our implementation are listed in Table 1. The 3D object used a 200 × 200 depth-map image created by CG, and the light intensity of each point was replaced by the pixel value of the depth-map image. The digital hologram to be generated was set in the green channel (532 nm) and the grayscale (8-bit) measuring 1,024 × 1,024, considering the reconstruction environment.

    Table 2 presents a comparison of the number of operations between the previous method and the method proposed in this paper. Here, the sizes of the 3D object and the hologram were assumed to be 200 × 200 pixels and 1,024 × 1,024 pixels. Table 2 shows that the numbers of complete calculations, partial multiplications, and partial additions are reduced by 99.9%, 99.8%, and 66.7%, respectively. The reduction rates in this case are the values calculated on the basis of only the number of adders, subtractors, and multiplication operators used. Accordingly, they are not the values that carry direct, proportional relations with the speed of the CGH operation.

    Fig. 4 shows the results of measuring the CPU time of the CGH algorithm proposed in this paper and the previous methods. As shown in Fig 4, the recursive addition operation covering the whole areas of the hologram increased the calculation speed by more than 30% compared with the previous method.

    Fig. 5 shows the results of measuring the CPU time of the CGH algorithm proposed in this paper and of the previous methods [4]. For the sake of comparison, the CPU time of the proposed algorithm and that of the earlier methods were measured while increasing the number of points of the 3D object.

    V. CONCLUSIONS

    This paper has proposed an algorithm that increases the calculation speed of the CGH algorithm used when the real or virtual object is transformed into a digital hologram.

    The proposed algorithm is a technique that can reduce the overall operation time by carrying out the CGH operation previously carried out on the entire coordinate array of the digital hologram covering one point of the 3D object only on the first coordinate, by recursively adding the previously calculated values to the resultant values calculated from the first coordinate for the remaining coordinates. The proposed algorithm was compared with the previous method, and the results showed that the operation speed increased by approximately 30%.

    It is expected that the proposed recursive addition CGH algorithm covering the entire coordinate array of the hologram will be a core fundamental technology of the holographic 3DTV system for the next-generation TV.

  • 1. Javidi B., Okano F. Three-dimensional Television, Video, and Display Technologies. google
  • 2. Seo Y. H., Lee Y. H., Yoo J. S., Kim D. W. 2012 “Hardware architecture of high-performance digital hologram generator on the basis of a pixel-by-pixel calculation scheme” [Applied Optics] Vol.51 P.4003-4012 google doi
  • 3. Yoshikawa H. 2001 “Fast computation of Fresnel holograms employing difference” [Optical Review] Vol.8 P.331-335 google doi
  • 4. Shimobaba T., Ito T., Masuda N., Ichihashi Y., Takada N. 2010 “Fast calculation of computer-generated-hologram on AMD HD5000 series GPU and OpenCL” [Optics Express] Vol.18 P.9955-9960 google doi
  • 5. Choi H. J., Seo Y. H., Jang S. W., Kim D. W. 2012 “Analysis of digital hologram rendering using computational method” [Journal of Information and Communication Convergence Engineering] Vol.10 P.205-209 google doi
  • [Fig. 1.] Computer-generated holography operation of the conventional method.
    Computer-generated holography operation of the conventional
method.
  • [Fig. 2.] Basic procedure of the proposed algorithm. CGH: computer-generated holography.
    Basic procedure of the proposed algorithm. CGH: computer-generated holography.
  • [Fig. 3.] Computer-generated holography algorithm using recursive addition of all the coordinates in the same 3D object column.
    Computer-generated holography algorithm using recursive addition of all the coordinates in the same 3D object column.
  • [Table 1.] Experimental setup
    Experimental setup
  • [Table 2.] Comparison of computer-generated holography calculation time (×103)
    Comparison of computer-generated holography calculation time (×103)
  • [Fig. 4.] Simulation result.
    Simulation result.
  • [Fig. 5.] Example images: (a) 3D object, (b) digital hologram generated using proposed method, (c) reconstructed image using PC, and (d) reconstructed image using optical system.
    Example images: (a) 3D object, (b) digital hologram generated
using proposed method, (c) reconstructed image using PC, and (d)
reconstructed image using optical system.