Fast Generation Methods for Computer-Generated Hologram Using a Modified Recursive Addition Algorithm
- Author: Choi Hyun-Jun
- Organization: Choi Hyun-Jun
- Publish: Journal of information and communication convergence engineering Volume 11, Issue4, p282~287, 31 Dec 2013
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.
Computer-generated hologram , Digital hologram , 3DTV , Holographic TV
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 .
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 . 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 . 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  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.
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.
This section describes the CGH calculation method  and one using the recursive addition system. The CGH generating equation is defined in Eq. (1):
αor jindicates a particular point on the hologram or the 3D object, respectively, kdenotes the wave number of the reference wave defined as 2π/λ, prepresents 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.
If Eq. (1) is approximated to the first term after the Taylor expansion, it could be expressed as Eq. (2).
xαjand yαjdenote ( 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:
Γxnis defined as follows:
In the case of n = 1, that is,
Γx1, Eq. (4) could be rewritten as follows:
Meanwhile, in the case of n = 2,
Γx2can be expressed as follows:
Δxis defined as
Γx3is calculated with n = 3,
When n = N,
ΓxNcan be generalized as
From Eq. (9) it is clear that, once the first column (the leftmost pixel) of a row of a digital hologram (
Γx1) and Δxfor 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 calculationand the calculation in Eq. (9) the recursion calculation.
This section proposes a CGH algorithm performing recursive addition techniques in both the x- and y-axis directions as discussed in . 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.
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 . 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.
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.
[Fig. 1.] Computer-generated holography operation of the conventional method.
[Fig. 2.] 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.
[Table 1.] Experimental setup
[Table 2.] Comparison of computer-generated holography calculation time (×103)
[Fig. 4.] 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.