This work presents an algorithm to reduce the multiplicative computational complexity in the creation of digital holograms, where an object is considered as a set of point sources using mathematical symmetry properties of both the core in the Fresnel integral and the image. The image is modeled using group theory. This algorithm has multiplicative complexity equal to zero and an additive complexity
The problem of reducing the computational time in the creation of digital holograms is becoming a demanding research topic due to the growing range of applications in different areas [
Related work exists that has proposed the use of symmetry for reducing computational complexity and/or processing time. For example, run-length coding is used in [
Some authors use the symmetry of the principal fringe patterns [
In this work, an algorithm using group theory is proposed, where MCC (multiplicative computational complexity) is zero in the generation of digital holograms for 2D images, two colors, and different sizes. Unlike other works, it successfully explores the use of the global mathematical symmetry, a key consideration which allows reducing the MCC, which in turn contributes to increasing the speed of digital hologram generation. The memory size used to generate the hologram is the same as that reported [
The rest of the paper is divided as follows. Section
Group theory to reduce the computational complexity in the creation of digital holograms is used, by considering an object as a set of point sources [
If there exists redundancy in a digital image, particularly in the core of the transform or in the hologram itself, then it is possible to use mathematical symmetry to reduce the MCC of the digital hologram generation [
A mathematical symmetry group is a set of permutations such that when they are applied to an object, the object remains invariant. It is worth mentioning that mathematical symmetry includes axial symmetry. Thus, a 2D image can be represented as vector where the same permutations of the same color pixel are applied without changing the original image. The total number of gray levels of an image is 256, whereas the image size in pixels is usually greater than 256. Thus, for a gray scale image (where colors are codified from 0 to 255), there will be some repetition of colors of pixels, based on the principle of the Dirichlet [
To use the symmetry of an image in the process of creating holograms to reduce the computational complexity, it is necessary to calculate the maximum symmetric group of the image. Mathematically, images can be two-dimensional, three-dimensional, or
It is assumed that the image is transformed by an operator
The transforms used to generate holograms are linear, so the generation process for each color can be carried out separately, thus only one component
Suppose that
Then factoring the color,
Thus, in (
It is evident that applying the group
According to (
From (
The N-LUT method which is like a convolution [
For example, a binary image (black and white) would make zero multiplications and
To clarify the results above, let us consider the following example. For a hologram of one row 1 × 5 and one image of the same size, the distances from each image point to each hologram point depict a symmetry distance vector (
Redundant distances generated by symmetry for the 5 hologram points ((a), (b), (c), (d), and (e)) with respect to the image points.
Once the distances from the first point have been calculated, these can be used to calculate the distances of other points of the hologram, so it is no longer necessary to make redundant calculations of distances. This can be extended to two dimensions as shown from Figure
Distance matrix of a 3 × 3 image.
Similarly, Figure
Distance matrix for all points of the hologram.
Figure
The sequence of (a), (b), and (c) shows how to obtain a distances symmetric matrix with respect to
Each point of the hologram is computed by performing the dot product between the image and the distance matrix. In this example, the size of both, the hologram and the image, is
The hologram can be obtained from Figure
Each submatrix is applied to the image as a dot product between matrices so that all points of this row of the hologram are calculated.
To obtain the second row of the hologram, we use the 3 × 3 submatrix shown in the lower left corner of Figure
Using this property of mathematical symmetry of the distances and image, the multiplicative computational complexity is reduced in the creation of digital holograms.
Given a two-dimensional image, the hologram is created using the algorithm described in this work. It is worth mentioning that the algorithm does not improve the quality of the holograms of Fresnel using the N-LUT method and the peak signal-to-noise ratio (PSNR), and the structural similarity (SSIM) index is the same. This is because the methods of Ray-tracing, LUT, N-LUT, and the proposed method use the same equations to calculate the hologram. The difference is only the computational complexity of the algorithm.
Let us now analyze the computational complexity through the image of Figure
Different holograms and their reconstructions with
Original image bitmap of 128 × 128 (2794 no black pixels)
Hologram of (a)
Reconstruction of (b)
Original binary image bitmap of 128 × 128 (678 no black pixels)
Hologram of (d)
Reconstruction of (e)
The time used to obtain each point of the hologram as well as the amount of memory required is shown in Table
Comparison of computation time and memory size for each method. For a grayscale image.
N-LUT | Proposed algorithm | |
---|---|---|
Computation time for 1 point (ms) | 0.0170 | 0.00993 |
Total memory size for LUT (megabytes) | 0.0625 | 0.0625 |
Comparison of computation time and memory size for each method. For a binary image and sparse.
N-LUT | Proposed algorithm | |
---|---|---|
Computation time for 1 point (ms) | 0.00207 | 0.00207 |
Total memory size for LUT (megabytes) | 0.0625 | 0.0625 |
Computational complexity for a grayscale image.
N-LUT | Proposed algorithm | |
---|---|---|
Multiplicative computational complexity |
|
|
Additive computational complexity |
|
|
Note in Table
Computational complexity for a binary image.
|
N-LUT | Proposed |
---|---|---|
Multiplicative computational complexity | 0 | 0 |
Additive computational complexity, where |
|
|
The use of group theory and image symmetry properties allow the reduction of the computational complexity in the creation of digital holograms.
Our algorithm applied on two colors images has a positive impact on multiplicative computational complexity, which is reduced from
It is relevant to mention that the algorithm for binary and sparse images has a very low or zero multiplicative computational complexity and it is independent of image size; however, the additive complexity has not been significantly reduced.
The computational complexity for a grayscale image is reduced approximately to the half with respect to N-LUT algorithm.
The authors declare that there are no conflicts of interest regarding the publication of this paper.
The authors gratefully acknowledge the PRODEP (UNACAR) and the CONACyT FOMIX (CIMAT Yucatan 2014) for their support.