Expand this Topic clickable element to expand a topic
Skip to content
Optica Publishing Group

Effective memory reduction of the novel look-up table with one-dimensional sub-principle fringe patterns in computer-generated holograms

Open Access Open Access

Abstract

We propose a novel approach to massively reduce the memory of the novel look-up table (N-LUT) for computer-generated holograms by employing one-dimensional (1-D) sub-principle fringe patterns (sub-PFPs). Two-dimensional (2-D) PFPs used in the conventional N-LUT method are decomposed into a pair of 1-D sub-PFPs through a trigonometric relation. Then, these 1-D sub-PFPs are pre-calculated and stored in the proposed method, which results in a remarkable reduction of the memory of the N-LUT. Experimental results reveal that the memory capacity of the LUT, N-LUT and proposed methods have been calculated to be 149.01 TB, 2.29 GB and 1.51 MB, respectively for the 3-D object having image points of 500 × 500 × 256, which means the memory of the proposed method could be reduced by 103 × 106 fold and 1.55 × 103 fold compared to those of the conventional LUT and N-LUT methods, respectively.

©2012 Optical Society of America

1. Introduction

Thus far, several approaches for effective computation of the computer-generated hologram (CGH) pattern of a 3-D object have been suggested [114]. One of them is the ray-tracing method [1]. In this method, a 3-D object image to be generated is modeled as a collection of self-luminous points of light. The fringe patterns for all object points are then calculated by using the optical diffraction and interference equations, and in turn, added up to obtain the whole interference pattern of a 3-D object. However, this approach has resulted in the computational complexity because it may require one-by-one calculation of the fringe pattern per image point per hologram sample [10, 11].

To overcome this drawback, a look-up table (LUT) method was proposed [10], in which all two-dimensional (2-D) elemental fringe patterns (EFPs) corresponding to point source contributions from each of the possible locations in the object volume are pre-calculated and stored in the LUT. Therefore, a great increase in the computational speed could be obtained with this method. The greatest drawback of this approach, however, is the enormous memory capacity of the LUT.

Recently a novel look-up table (N-LUT) method to be able to dramatically reduce the total number of pre-calculated interference patterns which are required for the generation of digital holograms, was proposed [11]. In this approach, a 3-D object is approximated as a set of discretely sliced image planes having different depth. Then, only the fringe patterns of the center-located object points on each image plane, which are called 2-D principal fringe patterns (2-D PFPs), are pre-calculated, and stored in the N-LUT, so that the memory size of the N-LUT could be reduced down to the order of gigabytes (GB) from the order of terabytes (TB) of the LUT method. In other words, almost a 103 fold memory reduction has been obtained in the N-LUT compared to that of the conventional LUT [11].

Moreover, several attempts to accelerate the generation speed of hologram patterns by using the N-LUT method have been also completed by effectively removing the temporally and spatially redundant data between the input 3-D video images [1214].

Up to now, the memory capacity as well as the generation speed is the most challenging issues in the N-LUT-based computer-generated holography. Actually, in the N-LUT method, the higher the resolution of a 3-D object image to be generated enhances, the higher the corresponding file size of the 2-D PFPs increases, which may result in a massive increase in the memory capacity of the N-LUT. Therefore, further memory reduction of the N-LUT might be still required. Moreover, for potential application of the N-LUT method to the mobile information terminals, its memory capacity needs to be reduced down to the order of megabytes [7].

Therefore, in this paper, we propose a novel approach to massively reduce the memory capacity of the conventional N-LUT method by employing a new concept of one-dimensional sub-principal fringe patterns (1-D sub-PFPs). That is, 2-D PFPs used in the conventional N-LUT method can be decomposed into a pair of 1-D sub-PFPs by using a simple trigonometric relation. Then, the decomposed 1-D sub-PFPs instead of the 2-D PFPs are stored in the proposed method for the computation of the CGH patterns of a 3-D object, from which a remarkable memory reduction of the N-LUT can be obtained.

Experiments with three kinds of test 3-D objects are carried out and the results are comparatively analyzed with those of the conventional LUT and N-LUT methods in terms of the memory capacity and the computation time.

2. Generation of CGH patterns of a 3-D object using the N-LUT method

Figure 1 shows the geometry to calculate the Fresnel hologram pattern of a 3-D object image, in which the location coordinate of the p-th object point is specified by (xp, yp, zp) and each object point is assumed to have an associated, real-valued magnitude and phase of ap, φp, respectively. Additionally, the CGH pattern is assumed to be positioned on the plane of z = 0 [11, 15].

 figure: Fig. 1

Fig. 1 Geometry for generation of the Fresnel hologram pattern

Download Full Size | PDF

Here, a 3-D object image can be treated as a set of image planes discretely sliced along the z-direction, and each image plane having a fixed depth is approximated as a collection of self-luminous object points of light. As mentioned above, in the N-LUT method, only the 2-D PFPs representing the fringe patterns of the center-located object points on each depth plane are pre-calculated and stored.

Therefore, a unity-magnitude 2-D PFP for the object point (0, 0, zp) positioned on the center of an image plane having a depth of zp, T(x, y; zp) can be defined as Eq. (1) [1114].

T(x,y;zp)cos[kzp{(xxp)2+(yyp)2+zp2}]
Here, the wave number k is defined as k = 2π/λ, in which λ is the free-space wavelength of the light.

Then, the fringe patterns for other object points on each image plane can be obtained simply by shifting this pre-calculated 2-D PFP according to the dislocated values from the center to those object points [11]. Therefore, fringe patterns for all object points located on each image plane can be generated by adding the shifted versions of the 2-D PFP together. The CGH pattern for a 3-D object can be finally obtained by overlapping all these 2-D PFPs generated on every depth-dependent image plane.

Therefore, the CGH pattern for the object I(x, y) in the N-LUT method can be expressed in terms of the shifted versions of pre-calculated 2-D PFPs of Eq. (1) as shown in Eq. (2)

I(x,y)=p=1NapT(xxp,yyp;zp)
Where N is the number of object points. Here, the phase of the object point is set to be zero for all points in N-LUT method. This phase information of the object point is invisible to the viewers and important only in the interactions among the image points. If the discretization step of the object image gets smaller than the spot size of the display system, overlapping may occur between the image points, which results in cross-talks between the object points. Therefore, the discretization step of the object image must be much larger than the spot size of the display system [10, 11].

3. Proposed method

Thus far, the N-LUT method has been known as one of the most effective approaches to massively reduce the memory capacity required for generation of the CGH patterns of a 3-D object. However, as the number of image points of a 3-D object to be generated increases for enhanced image-resolution, the resultant size of the 2-D PFP increases correspondingly, which results in a growth of the memory capacity of the N-LUT [16]. In addition, as the pixel-pitch of a hologram shortens for enhanced image-quality and viewing-angle, the resultant shifting amount of the 2-D PFPs also increases, which cause a big rise of the memory capacity of the N-LUT [16].

Accordingly, in this paper, a novel approach to make a remarkable reduction of the required memory capacity of the conventional N-LUT is proposed, which newly employs a pair of 1-D sub-PFPs decomposed from the 2-D PFPs based on a trigonometric relation.

Figure 2 shows a block-diagram of the proposed method, which is largely composed of five steps: 1) Construction of the N-LUT with a pair of 1-D sub-PFPs, 2) Extraction of 3-D data from an object to be generated, 3) Outline detection of the object images and restoration of 2-D PFPs from a pair of 1-D sub-PFPs for every depth plane, 4) Generation of the CGH pattern with the restored 2-D PFPs, and 5) Reconstruction of a 3-D object image from the CGH pattern.

 figure: Fig. 2

Fig. 2 Overall block diagram of the proposed method

Download Full Size | PDF

3.1 Construction of the N-LUT with a pair of 1-D sub-PFPs

In the proposed method, 2-D PFPs employed in the conventional N-LUT method are transformed into a set of 1-D sub-PFPs through a simple trigonometric relation. As you can see in Eq. (3), a 2-D PFP can be decomposed into four terms of 1-D sub-PFPs, two pairs of sine and cosine functions, according to the trigonometric relation [1114].

T(x,y;zp)=cos[kzp(Δx2+Δy2+zp2)]=cos[k(Δx2zp+Δy2zp+zp22+zp22)]=cos[k(Δx2zp+zp22)+k(Δy2zp+zp22)]=cos[k(Δx2zp+zp22)]cos[k(Δy2zp+zp22)]sin[k(Δx2zp+zp22)]sin[k(Δy2zp+zp22)]
Where Δx = x-xp and Δy = y-yp. As you can see in the first line of Eq. (3), the 2-D PFP is a function of two variables, x and y. However, in the third line of Eq. (3), each term is a function of only one variable, x or y. That is, a function having two variables can be decomposed into four sub-functions having only one variable. Therefore, in the case where four terms of 1-D sub-PFPs having only one variable are prepared, the 2-D PFP to be used for the generation of the CGH pattern can be restored from these 1-D sub-PFPs.

Furthermore, the first and second terms of Eq. (3) are represented with the same cosine functions, which are only different in variables. Therefore, with only one 1-D sub-PFP having the cosine function, the first and second terms of Eq. (3) can be calculated. In the same manner, by using one 1-D sub-PFP having the sine function, the third and fourth terms of Eq. (3) can also be calculated. That is, if a pair of 1-D sub-PFPs having the cosine and sine functions for each 2-D PFP are prepared, the corresponding 2-D PFP can be restored, from which the CGH pattern of a 3-D object can be generated.

A pair of 1-D sub-PFPs having the cosine and sine functions for an object point is shown in Fig. 3(a) and 3(b), respectively, and the restored 2-D PFP from this pair of 1-D sub-PFPs is also shown in Fig. 3(c).

 figure: Fig. 3

Fig. 3 A pair of 1-D sine and cosine sub-PFPs and the restored 2-D PFP for an object point: (a) 1-D sine sub-PFP, (b) 1-D cosine sub-PFP, (c) Restored 2-D PFP

Download Full Size | PDF

By storing only a pair of 1-D sub-PFPs instead of the 2-D PFP, the memory capacity of the proposed N-LUT can be dramatically reduced. For example, in case the size of a 2-D PFP is given by 1,024 × 1,024, the required memory capacity for this 2-D PFP becomes 1,024 × 1,024 × 8 bit = 1 MB in the conventional N-LUT method. But, in the proposed method, the required memory capacity becomes 1,024 × 1 × 8 bit × 2 = 2 KB because a pair of 1-D PFPs is stored here instead of the 2-D PFP. Therefore, the memory capacity of the proposed method is found to be reduced by 512 fold compared to what is required in the conventional N-LUT method.

3.2 Extraction of 3-D data from an object to be generated

At the first step of the proposed method explained above, the proposed N-LUT has been constructed with a pair of 1-D PFPs decomposed from the 2-D PFP. After then, intensity and depth data of an arbitrary 3-D object to be generated is extracted, with which the 3-D object is modeled as a set of depth-dependently sliced object planes along the longitudinal direction. Figure 4 shows an example of the 3-D data of a car object.

 figure: Fig. 4

Fig. 4 A 3-D car object: (a) Intensity data, (b) Depth data

Download Full Size | PDF

3.3 Outline detection of the object images and restoration of the 2-D PFPs

Basically, in the conventional N-LUT method, the pre-calculated 2-D PFPs are used for generation of the CGH patterns. In the proposed method, however, after the 2-D PFPs are restored from a pair of pre-calculated 1-D sub-PFPs, they are then used for generation of the CGH patterns. Thus, here we can restore a partial region of the 2-D PFPs only corresponding to object points for fast restoration of the 2-D PFPs. In other words, a whole region of the 2-D PFPs needs not to be restored for computation of the CGH patterns just like the case of the conventional N-LUT method.

Figure 5 shows the restoring-time dependence of the 2-D PFP on the resolution of the PFP. As you can see in Fig. 5, as the resolution of the PFP increases, the restoring-time of the corresponding 2-D PFP increase exponentially. Therefore, a minimization process of the file-size of the restored 2-D PFP might be needed for effective reduction of the restring-time and this can be obtained by considering the relationship between the object points and the required areas of the 2-D PFP.

 figure: Fig. 5

Fig. 5 Restoring-time dependence of the 2-D PFP on the resolution of the PFP

Download Full Size | PDF

As an example, an image plane consisting of four object points is considered here, in which four points are located at A(x1, y1, z1), B(x2, y2, z1), C(x3, y3, z1), and D(x4, y4, z1), respectively on the depth plane of z1 as shown in Fig. 6(a) . Figure 6(b) shows the process to generate the hologram pattern for this object image with the proposed N-LUT method.

 figure: Fig. 6

Fig. 6 A minimization process of the file-size of the 2-D PFP: (a) Four object points on the depth plane of z1, (b) Selected regions for 4 object points in the 2-D PFP, (c) Restored 2-D PFP minimized in size, (d) Generated CGH pattern

Download Full Size | PDF

As you can see in Fig. 6(b), in order to calculate the hologram pattern for the object point A, area of A'(x1 × disc, y1 × disc, z1) named here as Region I, is calculated by considering the discretization step (disc) and the viewing-distance [11], and extracted from the 2-D PFP. At the same manner, Region II, III and IV corresponding to the object points B, C and D are also calculated and extracted. Then, by adding up these four regions together, the CGH pattern for the object points of Fig. 6(a) can be generated as shown in Fig. 6(d).

Here, it must be noted that not a full, but a partial region of the 2-D PFP can be used for generation of the CGH pattern. Figure 6(c) shows the minimized region of the 2-D PFP for generation of the CGH pattern for four object points of Fig. 6(a). That is, the minimum resolution of the 2-D PFP in the proposed method can be given by Eq. (4).

HorizontalresolutionofthePFP:[(xrightmostxleftmost)×disc+hx]VerticalresolutionofthePFP:[(ytopybottom)×disc+hy]
Where hx and hy represent the horizontal and vertical resolution of the hologram pattern, respectively. disc describes the discretization step, and xleftmost, xrightmost, ytop and ybottom represents the leftmost, rightmost, top and bottom object points on a depth plane, respectively. In Fig. 6(a), x1, x3, y1 and y4 may represent xleftmost, xrightmost, ytop and ybottom, as well.

Figure 7(a) shows an example of the detected outlines of the car image of Fig. 4 on a depth plane, and Fig. 7(b) and 7(c) show the restored 2-D PFP with and without a minimization process of the file-size, respectively. As you can see in Fig. 7, the restored 2-D PFP through the minimization process might be much decreased in size compared to that of the original one, which means that the restoring-time of the 2-D PFP from the 1-D sub-PFPs can be much shortened by the outline detection and size minimization process of Fig. 6.

 figure: Fig. 7

Fig. 7 Outline detection of the car object and restoration of the corresponding region of the 2-D PFP: (a) Detected outlines of the car object, (b) Originally restored 2-D PFP, (c) Restored 2-D PFP minimized in size

Download Full Size | PDF

3.4 Generation of the CGH pattern with the restored 2-D PFPs

Figure 8 shows the process to generate the hologram pattern for a 3-D object composed of four object points located on two depth planes by using the proposed method. Basically, only two kinds of 2-D PFPs minimized in size are restored for this sample 3-D object through the outline detection and size-minimization process. That is, one is the restored 2-D PFP for the image point located on the center of the image plane of (0, 0, z1) and the other is the one for the image point located at the center of the image plane of z2, as shown in Fig. 8(b). Then, with these 2-D PFPs, fringe patterns for four object points of Fig. 8(a) can be easily calculated through simple shifting and adding operations.

 figure: Fig. 8

Fig. 8 A generation process of the CGH pattern with the proposed method: (a) Object points at each depth plane, (b) Restored 2-D PFPs minimized in size at each depth plane (c) Shifting of the restored 2-D PFPs depending on the object point’s locations at each depth plane, (d) Adding of four shifted-versions of the restored 2-D PFPs, (e) Generated CGH pattern

Download Full Size | PDF

In case of the object point A(-x1, y1, z1), this object point is displaced from the center point O1(0, 0, z1) on the image plane of z1, so that the diffraction pattern for this point can be obtained by simply shifting the restored 2-D PFP for the center point contained in the N-LUT with amounts of –x1 and y1 in the direction of x and y, respectively, which is shown in the upper side of Fig. 8(c). Following the same procedure mentioned above, the diffraction pattern for the object point of C(-x3, -y3, z2) located on another image plane of z2 can also be obtained by just shifting the restored 2-D PFP for the center image point O2(0, 0, z2) with amounts of –x3 and –y3 in the direction of x and y, respectively as shown in the lower side of Fig. 8(c).

Accordingly, this process is performed for four object points, and then, its corresponding shifted versions of 2-D PFPs are obtained and added together to get the final fringe pattern for this object, which is shown in Fig. 8(d). Here, the finally generated CGH pattern shown in Fig. 8(e), has been tailored by the region overlapped together with these four shifted versions of PFPs as a pre-determined CGH size.

3.5 Reconstruction of the 3-D object from the CGH

Figure 9 shows the reconstructed car object images of Fig. 4 at two different depth planes from the CGH pattern generated with the proposed method. Here, the resolution of the generated CGH pattern is assumed to be 1,600 × 1,600 pixels, in which each pixel size is given by 10μm × 10μm. In general, the human visual system may see as continuous two points that are separated by 3 milliradians of arc [10, 11]. Therefore, the horizontal and vertical discretization steps of less than 30μm (100mm × 0.003 = 30μm) are chosen because the viewing-distance is assumed to be 100mm here [10, 11].

 figure: Fig. 9

Fig. 9 Reconstructed car object images from the CGHs generated by the proposed method: (a) Reconstructed car object focused on the rear wheel, (b) Reconstructed car object focused on the front wheel

Download Full Size | PDF

As you can see in Fig. 9(a), the rear wheel of the car is focused, whereas the front one is blurred. On the other hand, Fig. 9(b) shows the focused image of the front wheel of the car, whereas the rear wheel is blurred. These experimental results confirm that depth-dependent 3-D object images can be successfully reconstructed from the CGH pattern generated with the proposed method.

4. Performance Analysis

4.1 Computation time

In the classical ray-tracing method, full-complex computation of the CGH pattern I(x, y) of a 3-D object may require a minimum of six additions, seven multiplications, one division, one square root and two cosine (or sine) function calls. In addition, after the real and imaginary field components are summed, they must be squared and added together, and then the square root must be taken for all samples of I(x, y) [10, 11]. Therefore, the total computation time in the classical ray-tracing method can be given by Eq. (5).

tRT=d=1dmax{tgen_holo×tmulti_amp×ND}
Where tgen_holo, tmulti_amp, ND and dmax represent the generation time for one object point, the multiplication time of the amplitudes of the object points, the number of object points in a depth plane, and the number of depth planes of the input 3-D object, respectively [11].

However, in the conventional LUT method, only one multiplication and one addition operations are required for each CGH pattern I(x, y) of an object point using the loaded 2-D EFP. That is, the total computation time in the LUT method can be given by Eq. (6).

tLUT=d=1dmax{(tload_EFP+tmulti_amp)×ND}
Where tload_EFP represents the loading-time of the 2-D EFP [10, 11].

On the other hand, in the N-LUT method only one multiplication and one addition operations are required for each hologram sample for a given object point using the loaded 2-D PFP. That is, the total computation time in the N-LUT method can be given by Eq. (7).

tNLUT=d=1dmax{tload_PFP+(tmulti_amp×ND)}
Where tload_PFP represents the loading-time of the 2-D PFP [10, 11].

In general, the computation time of the N-LUT method becomes to be slightly longer than that of the LUT method because the 2-D PFP size of the N-LUT method happens to be somewhat larger than that of the 2-D EFP of the LUT method [1114]. As you can see in Eq. (6) and (7), two equations for each method are very similar with each other. But, the 2-D EFPs are loaded for all object points in the LUT method, whereas in the N-LUT method the 2-D PFP is loaded only one time for all object points on the same depth plane. In other words, the computation time for one object point directly depends on the loading-time of the 2-D EFP in the LUT method, but the loading-time of the 2-D PFP in the N-LUT method might be divided by the number of object points for each depth plane.

In the proposed method, the restoring-time of the 2-D PFP from a pair of 1-D sub-PFPs may be added to the computation time of the N-LUT method, so that the total computation time in the proposed method can be given by Eq. (8).

tProposed=d=1dmax{tload_subPFP+trestore_PFP+(tmulti_amp×ND)}
Where tload_sub-PFP and trestore_PFP represent the loading-time of the 1-D sub-PFPs and the restoring-time of the 2-D PFP from the loaded 1-D sub-PFPs, respectively.

As you can see in Eq. (7) and (8), the loading time of the 2-D PFP in the N-LUT method is replaced with the loading-time of the 1-D sub-PFPs and the restoring-time of the 2-D PFP from the loaded 1-D sub-PFPs in the proposed method. In fact, the size of the 1-D sub PFP is much smaller than that of the 2-D PFP, so that the loading-time of the 1-D sub-PFP must be shorter than that of the 2-D PFP, but the restoring-time of the 2-D PFP from the loaded 1-D sub-PFPs might be added in the proposed method.

However, just like the conventional N-LUT method, the proposed method needs only one time loading of 1-D sub-PFPs and restoring 2-D PFPs for all object points on the same depth plane. Therefore, even though the number of object points in a depth plane increases, the corresponding loading-time of the 2-D PFP does not affect the computation time of one object point in the proposed method.

4.2 Memory capacity dependence on the object and hologram parameters

The memory capacity of the proposed method can be significantly reduced when it is compared to those of the conventional LUT and N-LUT method. Figure 10 shows the comparison results of the memory capacity dependence on the resolution of the input image and the CGH, the number of depth planes and the pixel pitch of the CGH for each case of the LUT, N-LUT and proposed methods.

 figure: Fig. 10

Fig. 10 Comparison of the total memory capacity of the LUT, N-LUT and proposed methods depending on: (a) Resolution of the input image, (b) Resolution of the CGH, (c) Number of depth planes, (d) Pixel-pitch of the CGH

Download Full Size | PDF

Here, we assume a 3-D object having the image points of 100 × 100 × 100, and the resolution and the pixel-pitch of the CGH, and the viewing-distance are assumed to be 1,000 × 1,000 pixels, 10μm and 500mm, respectively. In Fig. 10, the red, green and blue colors represent the results of the LUT, N-LUT and proposed methods, respectively.

Figure 10(a) and 10(b) show the memory capacity dependence on the resolution of the input image and the resolution of the CGH for each case of the LUT, N-LUT and proposed methods. These figures show that as the resolution of the input image and the CGH increase, the corresponding memory capacity very sharply and exponentially increase up to the terabytes (TB) and the gigabytes (GB) in the conventional LUT and N-LUT methods, respectively, whereas the memory capacity of the proposed method may be remained in the order of megabytes (MB).

For the case of a 3-D object having 100 × 100 × 100 object points, 106 EFPs should be pre-calculated and stored in the conventional LUT method. Moreover, the file size of each EFP is given by 1,000 × 1,000 × 8 bit = 976.6 KB, so that the total memory capacity of the conventional LUT becomes 976.6 KB × 106 = 931.32 GB [11]. But, in the conventional N-LUT method, only one hundred 2-D PFPs are pre-calculated and stored for this object. Furthermore, the resolution and the file size of this 2-D PFP are given by 2,500 (1,000 + 1,500) × 2,500 (1,000 + 1,500) pixels and 2,500 × 2,500 × 8 bit = 5.96 MB, respectively, so that the memory capacity of the conventional N-LUT becomes 5.96 MB × 100 = 596 MB [11].

On the other hand, only two hundred 1-D sub-PFPs are pre-calculate and store for this object in the proposed method, in which the resolution and the file size of the 1-D sub-PFP are given by 2,500 (1,000 + 1,500) × 1 pixels and 2,500 × 1 × 8 bit = 4.9 KB, respectively. Thus, the memory capacity of the proposed method becomes 4.9 KB × 200 = 490 KB. Accordingly, the memory capacity of the proposed N-LUT has found to be 781,250 fold smaller than that of the conventional LUT and 1,250 fold smaller than that of the N-LUT for this object.

Figure 10(c) also shows the memory capacity dependence on the number of depth planes. As we can see in Fig. 10(c), the memory capacity of the LUT method very sharply increases up to the order of terabytes (TB) as the number of depth planes increases because the corresponding object points to be calculated also severely increases. In both of the N-LUT and proposed methods, however, the memory capacity very linearly increases depending on the increase of the number of depth planes. Even more, as the proposed method stores just a pair of 1-D sub-PFPs instead of 2-D PFPs for each depth plane, its memory capacity may increase much less than the conventional N-LUT method.

In addition, Fig. 10(d) shows the memory capacity dependence on the pixel-pitch. The memory capacity of the conventional LUT method does not depend on the pixel-pitch of the CGH, whereas the memory capacity may strongly depend on the pixel-pitch of the CGH in the N-LUT method. That is, as the pixel-pitch of the CGH decreases, the required file-size of the 2-D PFPs for their shifting process sharply increases in the N-LUT method, which results in a big increase of the memory capacity. In the conventional N-LUT method, the file-size of the 2-D PFP simultaneously increases in both of the horizontal and vertical directions, which results in a squared increase of the memory capacity. On the other hand, in the proposed method, the size of 1-D sub PFP increases only in the one direction, so that the memory capacity just linearly increases.

Figure 11 illustrates the details of the memory capacity dependence of the proposed method on the object and hologram parameters. As you can see in Fig. 11, even though the memory capacity of the proposed method exponentially increases as the object and hologram parameters mentioned above get enhanced, the memory capacity required in the proposed method still remains in the order of megabytes (MB) contrary to the cases of the conventional LUT and N-LUT methods which may require much more than gigabytes (GB) and terabytes (TB), respectively as shown in Fig. 10.

 figure: Fig. 11

Fig. 11 Memory capacity dependence of the proposed method on the: (a) Resolution of the input image, (b) Resolution of the CGH, (c) Number of depth planes, (d) Pixel-pitch of the CGH

Download Full Size | PDF

5. Experiments and results

In the experiment, three test 3-D objects of dice, car and elephant are used, and their intensity and depth images are shown in Fig. 12 . Resolution of each test object is changed from 300 × 300 × 256, to 400 × 400 × 256 and to 500 × 500 × 256 pixels in the experiment. Moreover, the CGH pattern to be generated is assumed to have the resolution of 1,600 × 1,600 pixels, in which each pixel size is given by 10μm × 10μm. The horizontal and vertical discretization steps of less than 30μm (100mm × 0.003 = 30μm) are chosen since the viewing-distance is assumed to be 100mm here.

 figure: Fig. 12

Fig. 12 Intensity and depth images of three test 3-D objects

Download Full Size | PDF

Table 1 shows the comparison results of the memory capacity and the resolution of the 1-D and 2-D PFPs required in the LUT, N-LUT and proposed methods depending on the resolution of the input image.

Tables Icon

Table 1. Comparison of the resolution of the PFPs and the memory capacity depending on the resolution of the object image for three cases of the LUT, N-LUT and proposed methods

Here, in order to fully display the fringe pattern for the input image having the resolution of 300 × 300 × 256 pixels, 23,040,000 (300 × 300 × 256) EFPs should be pre-calculated and stored in the conventional LUT method. Moreover, the file size of each EFP is given by 1,600 × 1,600 × 8 bit = 2.44 MB, so that the total memory capacity of the conventional LUT becomes 2.44 MB × 23,040,000 = 53.64 TB. But, in the conventional N-LUT method, the 2-D PFP must be shifted by 300 × 3 pixels = 900 pixels horizontally and vertically. Thus, the resolution of the 2-D PFP becomes 2,500(1,600 + 900) × 2,500(1,600 + 900) pixels, and the resultant memory capacity of the conventional N-LUT becomes 2,500 × 2,500 × 8 bit × 256 = 1.49 GB.

On the other hand, the memory capacity of the proposed N-LUT becomes 2,500 × 1 × 2 × 8 bit × 256 = 1.22 MB as shown in Table 1 because a pair of 1-D PFPs having the resolution of 2,500 × 1 is stored in the proposed method instead of the 2-D PFP. Therefore, the memory capacity of the proposed method has been reduced by 46 × 106 fold and 1.25 × 103 fold smaller than those of the conventional LUT and N-LUT methods.

At the same manner, the memory capacity required in the proposed method have been also reduced by 73 × 106 fold and 1.40 × 103 fold for the input image with the resolution of 400 × 400 pixels and 103 × 106 fold, 1.55 × 103 fold for the input image with the resolution of 500 × 500 pixels compared to those required in the conventional LUT and N-LUT methods, respectively.

Table 1 also reveals that the memory capacity of the LUT, N-LUT and proposed methods required for the object image with 500 × 500 × 256 pixels have been increased by 178%, 54% and 24%, respectively by referencing the cases of the object image with 300 × 300 × 256 pixels. These results confirms that the memory capacity of the proposed method may not highly depend on the resolution of the object image compared to those of the conventional LUT and N-LUT methods, which means the proposed method could be very practical for generation of the high-resolution hologram images with the memory capacity reduced down to the order of the megabytes (MB).

Figure 13 shows the reconstructed object images from the CGH patterns generated with the N-LUT and proposed methods for each case of the input images having the resolution of 300 × 300 × 256, 400 × 400 × 256 and 500 × 500 × 256, respectively. As you can see in Fig. 13, in all cases object images have been found to be successfully reconstructed in the proposed method, and the image-quality of the reconstructed object images may visually look almost same to those of the conventional N-LUT method.

 figure: Fig. 13

Fig. 13 Reconstructed test object images from the CGH patterns generated by the conventional N-LUT and the proposed methods

Download Full Size | PDF

In addition, Table 2 shows the comparison results of the number of calculated points and the computation time for 1-point for each case of the test objects having the resolution of 300 × 300 × 256, 400 × 400 × 256 and 500 × 500 × 256. As you can see in Table 2, the calculation time for 1-point of the test objects in the proposed method, has been slightly increased by 8.89% on the average compared to the conventional N-LUT method for three cases of test objects. As we mentioned above, this slight increase of the calculation time of the proposed method might be resulted from the restoring-time of the 2-D PFP from the 1-D sub PFPs.

Tables Icon

Table 2. Number of calculated points and the calculation time for 1-point in the N-LUT and proposed methods

In fact, the computation time is another challenging issue in the N-LUT-based computer-generated holograms, so that several approaches to accelerate the computation time of the hologram patterns could be proposed not only from the algorithm aspect but also from the hardware aspect of the N-LUT [7, 8, 1214].

In summary, as shown in Table 1 the proposed method has successfully obtained a very sharp memory reduction of 103 × 106 fold and 1.55 × 103 fold compared to the conventional LUT and N-LUT methods, respectively for the case of the 3-D object having the resolution of 500 × 500 × 256 pixels even though its computation time has been slightly increased compared to the conventional N-LUT method. Furthermore, as we can see in Table 1, the memory capacity of the proposed method may not sharply increase as the resolution of the object image enhances, so that the proposed method could be regarded as the most effective approach for generation of the high-resolution hologram images with a moderate memory size of megabytes (MB).

6. Conclusions

In this paper, we proposed a novel approach to massively reduce the memory of the conventional N-LUT down to the order of megabytes (MB) by employing a pair of 1-D sub-PFPs decomposed from the 2-D PFPs. Experimental results reveal that the memory capacity of the LUT, N-LUT and proposed methods becomes 149.01 TB, 2.29 GB and 1.52 MB, respectively for the 3-D object having the resolution of 500 × 500 × 256. In other words, the required memory of the proposed method has been calculated to be 103 × 106 fold and 1.55 × 103 fold smaller than those of the conventional LUT and N-LUT methods. Good experimental results confirm the feasibility of the proposed method in the field of CGHs.

Acknowledgment

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MEST) (No. 2011-0030815). The present Research has been conducted by the Research Grant of Kwangwoon University in 2012.

References and links

1. C. J. Kuo and M. H. Tsai, “Three-Dimensional Holographic Imaging,” (John Wiley & Sons, 2002).

2. U. Schnars and W. Jueptner, “Digital Holography -Digital Hologram Recording, Numerical Reconstruction, and Related Techniques,” (Springer Verlag, 2004).

3. T.-C. Poon, “Digital Holography and Three-dimensional Display,” (Springer Verlag, 2007).

4. G. L. Rogers, “Gabor diffraction microscopy: the hologram as a generalized zone-plate,” Nature 166(4214), 237 (1950). [CrossRef]   [PubMed]  

5. T. Kurihara and Y. Takaki, “Shading of a computer-generated hologram by zone plate modulation,” Opt. Express 20(4), 3529–3540 (2012), http://www.opticsinfobase.org/oe/abstract.cfm?URI=oe-20-4-3529. [CrossRef]   [PubMed]  

6. P. W. M. Tsang, J. P. Liu, K. W. K. Cheung, and T.-C. Poon, “Modern Methods for fast generation of digital holograms,” 3D Research 1(2), 11–18 (2010). [CrossRef]  

7. T. Ito and T. Shimobaba, “One-unit system for electroholography by use of a special-purpose computational chip with a high-resolution liquid-crystal display toward a three-dimensional television,” Opt. Express 12(9), 1788–1793 (2004), http://www.opticsinfobase.org/oe/abstract.cfm?URI=oe-12-9-1788. [CrossRef]   [PubMed]  

8. T. Shimobaba, T. Ito, N. Masuda, Y. Ichihashi, and N. Takada, “Fast calculation of computer-generated-hologram on AMD HD5000 series GPU and OpenCL,” Opt. Express 18(10), 9955–9960 (2010), http://www.opticsinfobase.org/oe/abstract.cfm?URI=oe-18-10-9955. [CrossRef]   [PubMed]  

9. Y. Pan, X. Xu, S. Solanki, X. Liang, R. B. A. Tanjung, C. Tan, and T.-C. Chong, “Fast CGH computation using S-LUT on GPU,” Opt. Express 17(21), 18543–18555 (2009), http://www.opticsinfobase.org/oe/abstract.cfm?URI=oe-17-21-18543. [CrossRef]   [PubMed]  

10. M. Lucente, “Interactive computation of holograms using a look-up table,” J. Electron. Imaging 2(1), 28–34 (1993). [CrossRef]  

11. S.-C. Kim and E.-S. Kim, “Effective generation of digital holograms of three-dimensional objects using a novel look-up table method,” Appl. Opt. 47, D55–D62 (2008). [CrossRef]   [PubMed]  

12. S.-C. Kim and E.-S. Kim, “Fast computation of hologram patterns of a 3-D object using run-length encoding and novel look-up table methods,” Appl. Opt. 48(6), 1030–1041 (2009). [CrossRef]  

13. S.-C. Kim, J.-H. Yoon, and E.-S. Kim, “Fast generation of three-dimensional video holograms by combined use of data compression and lookup table techniques,” Appl. Opt. 47, 5986–5995 (2008). [CrossRef]   [PubMed]  

14. S.-C. Kim, W.-Y. Choe, and E.-S. Kim, “Accelerated computation of hologram patterns by use of interline redundancy of 3-D object images,” Opt. Eng. 50(9), 091305 (2011). [CrossRef]  

15. P. Hariharan, “Optical Holography; Principles, techniques, and applications,” (Cambridge Studies in Modern Optics, 1996).

16. S.-C. Kim, J.-H. Kim, and E.-S. Kim, “Effective reduction of the novel look-up table memory size based on a relationship between the pixel pitch and reconstruction distance of a computer-generated hologram,” Appl. Opt. 50(19), 3375–3382 (2011). [CrossRef]   [PubMed]  

Cited By

Optica participates in Crossref's Cited-By Linking service. Citing articles from Optica Publishing Group journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (13)

Fig. 1
Fig. 1 Geometry for generation of the Fresnel hologram pattern
Fig. 2
Fig. 2 Overall block diagram of the proposed method
Fig. 3
Fig. 3 A pair of 1-D sine and cosine sub-PFPs and the restored 2-D PFP for an object point: (a) 1-D sine sub-PFP, (b) 1-D cosine sub-PFP, (c) Restored 2-D PFP
Fig. 4
Fig. 4 A 3-D car object: (a) Intensity data, (b) Depth data
Fig. 5
Fig. 5 Restoring-time dependence of the 2-D PFP on the resolution of the PFP
Fig. 6
Fig. 6 A minimization process of the file-size of the 2-D PFP: (a) Four object points on the depth plane of z1, (b) Selected regions for 4 object points in the 2-D PFP, (c) Restored 2-D PFP minimized in size, (d) Generated CGH pattern
Fig. 7
Fig. 7 Outline detection of the car object and restoration of the corresponding region of the 2-D PFP: (a) Detected outlines of the car object, (b) Originally restored 2-D PFP, (c) Restored 2-D PFP minimized in size
Fig. 8
Fig. 8 A generation process of the CGH pattern with the proposed method: (a) Object points at each depth plane, (b) Restored 2-D PFPs minimized in size at each depth plane (c) Shifting of the restored 2-D PFPs depending on the object point’s locations at each depth plane, (d) Adding of four shifted-versions of the restored 2-D PFPs, (e) Generated CGH pattern
Fig. 9
Fig. 9 Reconstructed car object images from the CGHs generated by the proposed method: (a) Reconstructed car object focused on the rear wheel, (b) Reconstructed car object focused on the front wheel
Fig. 10
Fig. 10 Comparison of the total memory capacity of the LUT, N-LUT and proposed methods depending on: (a) Resolution of the input image, (b) Resolution of the CGH, (c) Number of depth planes, (d) Pixel-pitch of the CGH
Fig. 11
Fig. 11 Memory capacity dependence of the proposed method on the: (a) Resolution of the input image, (b) Resolution of the CGH, (c) Number of depth planes, (d) Pixel-pitch of the CGH
Fig. 12
Fig. 12 Intensity and depth images of three test 3-D objects
Fig. 13
Fig. 13 Reconstructed test object images from the CGH patterns generated by the conventional N-LUT and the proposed methods

Tables (2)

Tables Icon

Table 1 Comparison of the resolution of the PFPs and the memory capacity depending on the resolution of the object image for three cases of the LUT, N-LUT and proposed methods

Tables Icon

Table 2 Number of calculated points and the calculation time for 1-point in the N-LUT and proposed methods

Equations (8)

Equations on this page are rendered with MathJax. Learn more.

T(x,y; z p )cos[ k z p { ( x x p ) 2 + ( y y p ) 2 + z p 2 } ]
I(x,y)= p=1 N a p T( x x p ,y y p ; z p )
T(x,y; z p )=cos[ k z p ( Δ x 2 +Δ y 2 + z p 2 ) ] = cos[ k( Δ x 2 z p + Δ y 2 z p + z p 2 2 + z p 2 2 ) ]=cos[ k( Δ x 2 z p + z p 2 2 )+k( Δ y 2 z p + z p 2 2 ) ] = cos[ k( Δ x 2 z p + z p 2 2 ) ]cos[ k( Δ y 2 z p + z p 2 2 ) ]sin[ k( Δ x 2 z p + z p 2 2 ) ]sin[ k( Δ y 2 z p + z p 2 2 ) ]
Horizontal resolution of the PFP : [ ( x rightmost x leftmost )×disc+ h x ] Vertical resolution of the PFP : [ ( y top y bottom )×disc+ h y ]
t RT = d=1 d max { t gen_holo × t multi_amp × N D }
t LUT = d=1 d max { ( t load_EFP + t multi_amp )× N D }
t NLUT = d=1 d max { t load_PFP +( t multi_amp × N D ) }
t Proposed = d=1 d max { t load_subPFP + t restore_PFP +( t multi_amp × N D ) }
Select as filters


Select Topics Cancel
© Copyright 2024 | Optica Publishing Group. All rights reserved, including rights for text and data mining and training of artificial technologies or similar technologies.