Method and apparatus for generating computer-generated holograms
By using depth map methods and Fourier transform operations to adjust the amplitude and phase data of holograms, the problems of insufficient depth of field and blurring were solved, and clear display of holograms at different depth layers was achieved.
Patent Information
- Application Number
- CN202110804691.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-03-30
- Filing Date
- 2021-07-16
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2041-07-16
AI Technical Summary
In existing computer-generated hologram technology, insufficient depth of field makes it impossible for observers to clearly identify the depth, and holographic images may appear blurry or have black spots, affecting the observation effect.
Holograms are generated using a depth map method. Fourier transform operations are used to propagate and backpropagate object data, and amplitude and phase data are adjusted to generate computer-generated holograms, ensuring clear holographic images are displayed at different depth layers.
This improves the depth of field of the hologram, prevents blurring and black spots in the hologram, and ensures clear display of the hologram at different depth layers.
Smart Images

Figure CN114077183B_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This application is based on and claims priority to Korean Patent Application No. 10-2020-0104805 filed with the Korean Intellectual Property Office on August 20, 2020, and Korean Patent Application No. 10-2021-0041261 filed with the Korean Intellectual Property Office on March 30, 2021, the disclosures of which are incorporated herein by reference in their entirety. Background Technology 1. Technical Field
[0004] This disclosure relates to a method and system for processing computer-generated holograms (CGH).
[0005] 2. Relevant Technical Descriptions
[0006] Holography is a 3D spatial representation technique used to reconstruct objects in 3D space by adjusting the amplitude and phase of light. Therefore, users can have an unrestricted field of view and may not experience 3D visual fatigue. Consequently, devices have been developed to realize high-resolution holographic images in real time using complex spatial light modulators (SLMs) capable of simultaneously controlling the amplitude and phase of light. Holograms can be displayed in 3D space using interference patterns formed between object waves and reference waves. Recently, computer-generated holography has been utilized to provide holograms on flat panel displays by processing interference patterns used to reconstruct the holograms. In methods for generating digital holograms, such as computer-generated holography methods, holograms are generated by approximating optical signals and calculating interference patterns generated through mathematical calculations based on the approximated optical signals. In methods for generating digital holograms, since an object consists of a set of various data such as 3D points, polygons, or depth data, a complete hologram is generated by calculating multiple object data constituting the object. Summary of the Invention
[0007] A method and system for processing computer-generated holograms (CGHs) are provided. The objectives of this disclosure are not limited to the technical objectives described above, and other technical objectives can be inferred from the following embodiments.
[0008] Other aspects will be set forth in part in the description which follows, and in part will be apparent from the description, or may be learned by practicing embodiments of the present disclosure.
[0009] According to one aspect of this disclosure, a method for processing a computer-generated hologram (CGH) includes: obtaining a first object image corresponding to a first depth layer and a second object image corresponding to a second depth layer; determining first predetermined amplitude data based on the first object image and second predetermined amplitude data based on the second object image; generating first object data including the first predetermined amplitude data and random first phase data; and performing a propagation process using the first object data as input, the propagation process including: propagating the first object data to the second depth layer to obtain second object data including the second amplitude data and the second phase data; replacing the second amplitude data with the second predetermined amplitude data to obtain altered second object data; backpropagating the altered second object data to the first depth layer to obtain altered first object data including the altered first amplitude data and the altered first phase data; and replacing the altered first amplitude data included in the altered first object data with the first predetermined amplitude data to obtain final first object data, wherein the method further includes: generating a CGH based on the final first object data; and displaying a first holographic image including the first predetermined amplitude data and a second holographic image including the second predetermined amplitude data based on the CGH.
[0010] The method may further include: performing the propagation process a predetermined number of times using the final first object data from the previous iteration of the propagation process as input before generating the CGH.
[0011] The propagation process may further include: determining the difference between the changed first amplitude data and the first predetermined amplitude data; and repeating the propagation process using the final first object data from the previous iteration of the propagation process as input based on the determined difference being greater than or equal to a predetermined threshold.
[0012] The propagation process may further include: determining the difference between the changed second amplitude data and the second predetermined amplitude data; and repeating the propagation process using the final first object data from the previous iteration of the propagation process as input based on the determined difference being greater than or equal to a predetermined threshold.
[0013] Propagating the first object data may include performing a Fast Fourier Transform (FFT) on the first object data, and backpropagation of the modified second object data may include performing an inverse FFT on the modified second object data.
[0014] Obtaining a first object image and a second object image may include: obtaining a first object image of the first object; and obtaining a second object image of a second object that is different from the first object.
[0015] Obtaining the first object image and the second object image may include: obtaining the first object image; and obtaining the second object image by changing the pixel values of the first object image.
[0016] Obtaining the first object image and the second object image may include: obtaining a first object image in which the object is located within a predetermined depth of field; and obtaining a second object image in which the object is located outside the predetermined depth of field.
[0017] Displaying the first holographic image and the second holographic image may include: displaying the first holographic image with first predetermined amplitude data in a first depth layer; and displaying the second holographic image with second predetermined amplitude data in a second depth layer.
[0018] A non-transitory computer-readable recording medium having a program recorded thereon for performing the methods described above on a computer.
[0019] According to one aspect of this disclosure, a system for processing computer-generated holograms (CGHs) includes: a CGH generation apparatus configured to generate a CGH; and a display apparatus configured to display the CGH, wherein the CGH generation apparatus is further configured to: obtain a first object image corresponding to a first depth layer and a second object image corresponding to a second depth layer; determine first predetermined amplitude data based on the first object image and second predetermined amplitude data based on the second object image; generate first object data including the first predetermined amplitude data and random first phase data; and perform a propagation process using the first object data as input, wherein the propagation process includes: propagating the first object data to the second depth layer to... The process involves: obtaining second object data including second amplitude data and second phase data; replacing the second amplitude data with second predetermined amplitude data to obtain altered second object data; backpropagating the altered second object data to a first depth layer to obtain altered first object data including altered first amplitude data and altered first phase data; replacing the altered first amplitude data included in the altered first object data with first predetermined amplitude data to obtain final first object data; wherein the CGH generation device is further configured to generate a CGH based on the final first object data; and displaying a first holographic image including first predetermined amplitude data and a second holographic image including second predetermined amplitude data using the CGH.
[0020] The CGH generation apparatus may also be configured to perform the propagation process a predetermined number of times using the final first object data from the previous iteration of the propagation process as input before generating the CGH.
[0021] The propagation may further include: determining the difference between the changed first amplitude data and the first predetermined amplitude data; and repeating the propagation using the final first object data from the previous iteration of the propagation as input based on the determined difference being greater than or equal to a predetermined threshold.
[0022] The propagation may further include: determining the difference between the changed second amplitude data and the second predetermined amplitude data; and repeating the propagation using the final first object data from the previous iteration of the propagation as input based on the determined difference being greater than or equal to a predetermined threshold.
[0023] The propagation of the first object data may include performing a Fast Fourier Transform (FFT) on the first object data, and the back propagation of the modified second object data may include performing an inverse FFT on the modified second object data.
[0024] The CGH generation apparatus can also be configured to obtain a first object image of a first object, and to obtain a second object image of a second object that is different from the first object.
[0025] The CGH generation apparatus can also be configured to obtain a first object image and to obtain a second object image by changing the pixel values of the first object image.
[0026] The CGH generation device can also be configured to obtain a first object image in which the object is located within a predetermined depth of field, and to obtain a second object image in which the object is located outside the predetermined depth of field.
[0027] The display device may also be configured to display a first holographic image including a first predetermined amplitude data in a first depth layer, and a second holographic image including a second predetermined amplitude data in a second depth layer. Attached Figure Description
[0028] The above and other aspects, features, and advantages of certain embodiments of the present disclosure will become more apparent from the following description taken in conjunction with the accompanying drawings, wherein:
[0029] Figure 1 This is an illustration used to explain the principle of computer-generated holography according to an embodiment;
[0030] Figure 2A and Figure 2B This is an illustration used to explain the 2D image of each depth layer of an object when a computer-generated hologram (CGH) of the object is generated using a depth mapping method according to an embodiment;
[0031] Figure 3A and Figure 3B This is an illustration used to explain the depth of field of the Lambertian surface and the CGH according to an embodiment;
[0032] Figure 4A and Figure 4B This is an illustration used to explain the holographic image generated using random phase according to an embodiment;
[0033] Figure 5 This is a block diagram illustrating a system for processing CGH according to an embodiment;
[0034] Figure 6A This is an illustration used to explain the method for obtaining first predetermined amplitude data and second predetermined amplitude data according to an embodiment;
[0035] Figure 6B and Figure 6C This is an illustration used to explain the method for obtaining first predetermined amplitude data and second predetermined amplitude data according to an embodiment;
[0036] Figure 7 This is an illustration used to explain the propagation of object data according to an embodiment;
[0037] Figures 8A to 8E This is an illustration used to explain a method for obtaining the phase of object data according to an embodiment;
[0038] Figure 9A and 9B It is based on Figure 8A An illustration of a holographic image generated by the method;
[0039] Figure 10 This is an illustration used to explain the propagation of object data according to an embodiment;
[0040] Figure 11 This is an illustration used to explain the propagation of object data according to an embodiment;
[0041] Figure 12 This is an illustration used to explain a method for obtaining the phase of object data according to an embodiment;
[0042] Figure 13 This is a flowchart of a method for generating a CGH using object data according to an embodiment;
[0043] Figure 14 This is a flowchart of a method for generating a CGH using object data according to an embodiment;
[0044] Figure 15 This is a flowchart of a method for generating a CGH using object data according to an embodiment; and
[0045] Figure 16 This is a flowchart of a method for processing CGH according to an embodiment. Detailed Implementation
[0046] Reference will now be made in detail to embodiments, examples of which are shown in the accompanying drawings, wherein the same reference numerals always denote the same elements. In this respect, embodiments may take different forms and should not be construed as limited to the description set forth herein. Therefore, embodiments are described below only by reference to the accompanying drawings to explain various aspects. As used herein, the term “and / or” includes any and all combinations of one or more of the associated listed items. When following a list of elements, expressions such as “at least one of…” modify the entire list of elements without modifying the individual elements in the list.
[0047] Regarding the terminology used in the embodiments, currently widely used and common terms have been selected. However, these terms may vary depending on the intent of those skilled in the art, the emergence of new technologies, etc. In certain cases, terms may be arbitrarily chosen, and in such cases, their definitions will be described in the corresponding disclosure. Therefore, the terms used in the description need not necessarily be interpreted as simple names of the terms, but should be defined based on the meaning of the terms and the overall content of this disclosure.
[0048] The term "include / comprise" should not be interpreted or construed as including all the multiple elements or operations disclosed in the specification without exception, and should be understood that some elements or operations may be excluded, or other components or operations may be further included.
[0049] In the following, embodiments will be described in detail with reference to the accompanying drawings. However, this disclosure can be implemented in various ways and is not limited to one or more embodiments described herein.
[0050] Figure 1 This is an illustration used to explain the principle of computer-generated holography according to an embodiment.
[0051] An observer can identify objects in space through their eyes. When light reflected from an object is refracted by the lens at the front of the eye and converges onto the retina at the back of the eye, the observer can see the object in space. This principle can be used to implement computer-generated holography.
[0052] When the focal point of the observer's lens plane W(u,v)14 corresponds to depth layers L1 and L2... M or L N At that time, we can assume depth layers L1, L... M or L NThe image on the retinal plane Q(x2,y2)13 has an imaging focus. Then, the complex light wavefield in the spatial light modulator (SLM) plane (or “CGH plane”) P(x1,y1)15 can be calculated by backpropagating the image formed on the retinal plane 13 to the SLM plane (or CGH plane) 15, and thus, a CGH interference pattern for expressing the CGH on the CGH plane can be obtained.
[0053] Computer-generated holography can be categorized into point cloud methods, polygon methods, depth map (or layer-based) methods, etc. In point cloud methods, the surface of an object is represented by multiple points, and the interference pattern at each point is calculated, thus allowing for precise depth representation; however, the computational cost increases significantly with the number of points. In polygon methods, the surface of the object is represented as a polygonal mesh, and the interference pattern at each polygonal mesh is calculated, resulting in lower computational cost even at the expense of object precision. Depth map methods are layer-based methods that generate CGHs using 2D intensity images and depth data, and the computational cost can be determined based on the image resolution.
[0054] Because CGH is generated by approximating an object to multiple depths using depth layers after modeling in depth map methods, its computational efficiency may be higher than other methods. Furthermore, CGH can be generated using only 2D intensity and depth information (such as ordinary images).
[0055] When generating a CGH using depth map methods, most computer-generated holographic processing is dominated by Fourier transform operations. It will be apparent to those skilled in the art that the Fourier transform in the processing is an operation used to obtain the distribution of the diffraction pattern obtained through Fresnel diffraction of the image, and corresponds to the generalized Fresnel transform (GFT) or Fresnel transform. In embodiments, the Fourier transform may include Fast Fourier Transform (FFT), GFT, Fresnel transform, etc., which are operations using Fourier transforms.
[0056] Figure 2A and Figure 2B This is an illustration used to explain the 2D image of each depth layer of an object when a CGH of an object is generated using a depth mapping method according to an embodiment.
[0057] refer to Figure 2A The object 200 is located in the space between the lens plane W(u,v)14 and the SLM plane (or CGH plane) P(x1,y1)15. According to the depth map scheme, this space can be divided into a predetermined number of depth layers. Here, the number of depth layers can be any number that can be changed by the user setting; for example, the number of depth layers can be 256 or other numbers.
[0058] refer to Figure 2B The object 200 can be modeled as depth images 220 corresponding to a predetermined number of depth layers. Each depth image includes object data 221 to 224 of the object 200 at a corresponding depth relative to the lens plane W(u,v)14. In one embodiment, the object data 221 to 224 includes information about the amplitude and phase of the light used to represent the object 200 at the corresponding depth.
[0059] Figure 3A and Figure 3B This is an illustration used to explain the depth of field of the Lambertian surface and the CGH according to an embodiment.
[0060] Depth of field (DoF) is the area that appears sharp and in focus. It refers to the area around an object that appears sharper when the focal point of the eye's lens (38°) corresponds to that object.
[0061] To compare the depth of field of the Lambertian surface and the depth of field of the CGH, the distances d1, d2, and d3 between the objects (or pixels) 31 to 33 on the Lambertian surface and the lens plane 38 are set to be equal to the distances d1, d2, and d3 between the objects (or pixels) 34 to 36 on the CGH and the lens plane 38.
[0062] refer to Figure 3A Objects 31-33 with Lambertian surfaces can emit or reflect light in all directions. That is, objects 31-33 with Lambertian surfaces can emit light at a sufficient angle θ to be incident on and pass through the entire lens of the eye. When the focal point of the lens plane 38 corresponds to object 32, the image focal point of each light emitted from the other objects 31 and 33 is formed in the region outside the retinal plane 39. Therefore, object 32 appears sharper, while the other objects 31 and 33 appear blurred, allowing the observer to clearly discern the depth of objects 31-33.
[0063] refer to Figure 3B The CGH objects 34-36 emit light in a limited direction. That is, the CGH objects 34-36 can emit light at a limited angle to be incident on and only pass through a portion of the eye lens.
[0064] When the focal point of the lens plane 38 corresponds to object 35, the imaging focal point of each light emitted from the other objects 34 and 36 is formed in or near the retinal plane 39. Therefore, even though the distances between objects 34 and 36 and the lens plane 38 are the same as the distances between objects 31 and 33 and the lens plane 38, they appear sharp. Consequently, the observer may not be able to clearly discern the depth of objects 34-36.
[0065] As mentioned above, since the depth of field of a CGH may be lower than that of a Lambert surface, an observer may not be able to perceive the depth of a holographic image.
[0066] Figure 4A and Figure 4B This is an illustration used to explain holographic images generated using random phases according to an embodiment.
[0067] refer to Figure 4A To increase the depth of field of the CGH, light emitted from object (or pixel) 41 can be randomly scattered based on a random phase. In other words, the direction of light emitted from pixel 41 can be randomized according to a random phase. Since some randomly scattered light may not pass through the lens 42 and may not form in the retina 43, therefore... Figure 4B As shown, black spots may appear in the holographic image. In addition, since light may be scattered randomly, the degree to which the object 41 appears blurred may be irregular when the focal point of the eye lens 42 does not correspond to the object 41.
[0068] Figure 5 This is a block diagram illustrating a system for processing CGH according to an embodiment.
[0069] refer to Figure 5 The system 10 for processing CGH may include a CGH generation device 100 and a display device 150. The CGH generation device 100 may include a processor 112 and a memory 114. Figure 5 In the CGH generating apparatus 100 shown, only the components relevant to the embodiment are shown. Therefore, it will be apparent to those skilled in the art that the CGH generating apparatus 100, in addition to... Figure 5 In addition to the components shown, other general-purpose components may also be included.
[0070] Processor 112 can correspond to processors provided in various types of computing devices, such as personal computers (PCs), server devices, televisions (TVs), mobile devices (smartphones, tablets, etc.), embedded devices, autonomous vehicles, wearable devices, augmented reality (AR) devices, and Internet of Things (IoT) devices. For example, processor 112 can correspond to processors such as central processing units (CPUs), graphics processing units (GPUs), application processors (APs), or neural processing units (NPUs), but is not limited thereto.
[0071] The processor 112 executes general functions for controlling the CGH generation device 100. The processor 112 can control the CGH generation device 100 by executing a program stored in the memory 114. For example, when the CGH generation device 100 is installed in the display device 150, the processor 112 can control the display device 150 to display a holographic image by controlling the image processing of the CGH generation device 100.
[0072] Display device 150 may correspond to a device capable of displaying holographic images in 3D space based on the CGH generated by CGH generation device 100. Display device 150 may include hardware modules for reproducing holograms, such as a spatial light modulator (SLM) 155, and may include various types of display panels such as LCD and OLED. That is, in addition to CGH generation device 100, display device 150 may also include various hardware modules and hardware configurations for displaying holographic images. CGH generation device 100 may be a separate, independent device implemented outside of display device 150. In this case, display device 150 may receive CGH data generated by CGH generation device 100 implemented outside of display device 150, and may display holographic images based on the received CGH data. However, the implementation of CGH generation device 100 and display device 150 is not limited to any one embodiment.
[0073] The memory 114 is hardware that stores various data processed in the processor 112, and for example, the memory 114 can store CGH data processed by the processor 112 and CGH data to be processed. In addition, the memory 114 can store various applications to be executed by the processor 112, such as hologram reconstruction applications, web browsing applications, game applications, video applications, etc.
[0074] The memory 114 may include at least one of volatile memory and non-volatile memory. Non-volatile memory includes read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), flash memory, phase-change RAM (PRAM), magnetic RAM (MRAM), resistive RAM (RRAM), ferroelectric RAM (FRAM), etc. Volatile memory includes dynamic RAM (DRAM), static RAM (SRAM), synchronous DRAM (SDRAM), phase-change RAM (PRAM), magnetic RAM (MRAM), resistive RAM (RRAM), ferroelectric RAM (FRAM), etc. In one embodiment, the memory 114 may include at least one of hard disk drive (HDD), solid-state drive (SSD), compact flash memory (CF), secure digital storage (SD), micro-secure digital storage (Micro-SD), mini-secure digital storage (mini-SD), extreme digital storage (xD), or memory stick.
[0075] Processor 112 can determine the phase value of object data in any depth layer so that the amplitude value of object data in another depth layer can meet the target amplitude value.
[0076] The processor 112 can obtain target amplitude values of object data in multiple depth layers from multiple pre-generated 2D images. For example, a first target amplitude value and a second target amplitude value of object data in a first depth layer and a second depth layer can be obtained from the first and second 2D images, respectively.
[0077] Then the processor 112 can set the initial amplitude value of the object data in the first depth layer to the first target amplitude value, and can set the initial phase value of the object data in the first depth layer to an arbitrary phase value.
[0078] Processor 112 can obtain the amplitude and phase values of the object data in the second depth layer by propagating the object data from the first depth layer to the second depth layer. Processor 112 can then change the amplitude value of the object data in the second depth layer to a second target amplitude value.
[0079] Then, processor 112 can obtain the amplitude and phase values of the object data in the first depth layer by backpropagating the object data from the second depth layer to the first depth layer. Processor 112 can then change the amplitude value of the object data in the first depth layer to a first target amplitude value.
[0080] The processor 112 can then obtain the final phase value of the object data by repeatedly performing the propagation and backpropagation of the object data between the first depth layer and the second depth layer. Additionally, the processor 112 can obtain the final amplitude value of the object data from the first target amplitude value.
[0081] Processor 112 can set the amplitude and phase values of the object data in the first depth layer as the final amplitude and final phase values, respectively. Processor 112 can generate CGH using the object data in the first depth layer.
[0082] The processor 112 can be configured to generate a first object image corresponding to a first depth layer and a second object image corresponding to a second depth layer.
[0083] The processor 112 can be configured to determine a first predetermined amplitude data based on a first object image and to determine a second predetermined amplitude data based on a second object image.
[0084] The processor 112 can be configured to generate first object data including first predetermined amplitude data and random first phase data.
[0085] Processor 112 can be configured to perform a propagation process using first object data as input data. The propagation process may include propagating the first object data to a second depth layer to obtain second object data including second amplitude data and second phase data; changing the second amplitude data to second predetermined amplitude data to obtain modified second object data; backpropagating the modified second object data to a first depth layer to obtain modified first object data including modified first amplitude data and modified first phase data; and changing the modified first amplitude data included in the modified first object data to first predetermined amplitude data to obtain final first object data. Processor 112 can be configured to generate a CGH based on the final first object data.
[0086] The display device 150 can be configured to display a holographic image (i.e., a first holographic image and a second holographic image) having a first predetermined amplitude data and a second predetermined amplitude data by using a generated CGH.
[0087] Figure 6A This is an illustration used to explain a method for obtaining first predetermined amplitude data and second predetermined amplitude data based on first and second 2D images 61 and 62 according to an embodiment.
[0088] The first object image 61 is a 2D image corresponding to the first depth layer. The first predetermined amplitude data |A(x,y)| can be obtained based on the first object image 61.
[0089] The second object image 62 is a 2D image corresponding to the second depth layer. The second predetermined amplitude data |B(x,y)| can be obtained based on the second object image 62.
[0090] The first object image 61 and the second object image 62 can be 2D images obtained from a single object. Alternatively, the first object image 61 and the second object image 62 can be 2D images obtained from different objects.
[0091] In one embodiment, the first object image 61 may be an image in which object 63 is within a predetermined depth of field, and the second object image 62 may be an image in which object 64 is outside the predetermined depth of field. Alternatively, the first object image 61 and the second object image 62 may be images in which both objects 63 and 64 are within or outside the depth of field. The depth of field can be arbitrarily set. Objects 63 and 64 may be the same as or different from each other.
[0092] In one embodiment, the first object image 61 may be an image of object 63 in focus, and the second object image 62 may be an image of object 64 out of focus. Alternatively, the first object image 61 and the second object image 62 may be images in focus of both objects 63 and 64, or images in focus of neither. Objects 63 and 64 may be the same as or different from each other.
[0093] In one embodiment, the first object image 61 may be an image to be displayed from a first depth layer, while the second object image 62 may be an image to be displayed from a second depth layer.
[0094] A second object image 62 can be generated from a first object image 61. The second object image 62 can be generated by changing the values of pixels in the first object image 61. For example, the second object image 62 can be generated by blurring the first image 61 or by rendering the first object image 61.
[0095] The first object image 61 and the second object image 62 may include color data such as RGB and YUV, and the amplitude value of light can be obtained from the color data.
[0096] Processor 112 ( Figure 5 As shown, the processor 112 can obtain the first predetermined amplitude data |A(x,y)| by obtaining the amplitude value of the light from the first object image 61. Additionally, the processor 112 can obtain the second predetermined amplitude data |B(x,y)| by obtaining the amplitude value of the light from the second object image 62.
[0097] Figure 6B and Figure 6C This is an illustration used to explain the method for obtaining first predetermined amplitude data and second predetermined amplitude data according to an embodiment.
[0098] Figure 6B and Figure 6C The first object image 65 and the second object image 66 shown can be images of different objects, respectively. Figure 6B The text shows the string "GHIJKLABCDEF" corresponding to the first object, as well as the strings in the text. Figure 6C The string "STUVWMNOPQ" corresponding to the second object is shown in the image.
[0099] The first and second object images 65 and 66 may be physically unrelated to each other. For example, the first object image 65 and the second object image 66 may be images of different objects captured independently.
[0100] refer to Figure 6B and Figure 6C The first object image 65 is a 2D image used to obtain first predetermined amplitude data |A(x,y)| of the first object in the first depth layer. The second object image 66 is a 2D image used to obtain second predetermined amplitude data |B(x,y)| of the second object in the second depth layer.
[0101] In one embodiment, the first object image 65 and the second object image 66 may be images representing objects, wherein the focal lengths of the eye lens are equal or different from each other.
[0102] In one embodiment, the first object image 65 may be an image of the first object located within the depth of field of a first depth layer, while the second object image 66 may be an image of the second object located within the depth of field of a second depth layer. Alternatively, the first object image 65 may be an image of the first object located within the depth of field of the first depth layer, while the second object image 66 may be an image of the second object located outside the depth of field of the second depth layer. Alternatively, the first object image 65 may be an image of the first object located outside the depth of field of the first depth layer, while the second object image 66 may be an image of the second object located outside the depth of field of the second depth layer. The depth of field can be arbitrarily set.
[0103] In one embodiment, the first object image 65 and the second object image 66 can be images in focus of the first and second objects. Alternatively, the first object image 65 can be an image in focus of the first object, while the second object image 66 can be an image in focus of the second object. Alternatively, the first object image 65 and the second object image 66 can be images in focus of neither the first nor the second object.
[0104] In one embodiment, the first object image 65 may be an image to be output from a first depth layer, while the second object image 66 may be an image to be output from a second depth layer.
[0105] Processor 112 ( Figure 5As shown, the processor 112 can obtain the first predetermined amplitude data |A(x,y)| by obtaining the amplitude value of the light from the first object image 65. Additionally, the processor 112 can obtain the second predetermined amplitude data |B(x,y)| by obtaining the amplitude value of the light from the second object image 66.
[0106] Figure 7 This is a diagram used to explain the propagation of object data according to an embodiment.
[0107] Object data includes information about the amplitude and phase of light. Amplitude data within the object data includes information about the intensity of the light. An image in a depth layer can be generated based on the amplitude data of the object data in that depth layer. In other words, phase data from the object data is not necessarily used to generate an image in a depth layer. Phase data from the object data includes information about the propagation of light (e.g., the direction of propagation). An image in another depth layer can be generated based on both the amplitude and phase data of the object data in any one of the depth layers.
[0108] Amplitude and phase data of object data in other layers can be obtained by propagating or backpropagating object data from any layer.
[0109] By transferring the first object data 71 from the first depth layer L l Propagation to the second depth layer L m This allows us to obtain the amplitude and phase data of the second object data 72. By extracting the second object data 72 from the second depth layer L... m By propagating backward to the first depth layer L1, amplitude and phase data of the first object data 71 can be obtained.
[0110] Figures 8A-8E This is an illustration used to explain a method for obtaining the phase of object data according to an embodiment.
[0111] Processor 112 ( Figure 5 (As shown) The initial amplitude data of the first object data 801 can be set to the first predetermined amplitude data |A(x,y)|. The processor 112 can set the initial phase data of the first object data 801 to random phase data p. n=1 (x,y).
[0112] Processor 112 can obtain the amplitude data |B'(x,y)| and phase data q of second object data 802 by propagating first object data 801 from a first depth layer to a second depth layer. n=1(x,y). The processor 112 can propagate the first object data 801 from the first depth layer to the second depth layer to obtain the second object data 802 by performing a Fourier transform (e.g., a Fast Fourier Transform, FFT) on the first object data 801 based on the distance d between the first depth layer and the second depth layer.
[0113] The processor 112 can change the amplitude data |B'(x,y)| of the second object data 802 to the second predetermined amplitude data |B(x,y)|.
[0114] Figure 8C An example of a holographic image generated from second object data 802 with amplitude data |B'(x,y)| is shown, while Figure 8D An example of a holographic image generated from second object data 803 with a change in second predetermined amplitude data |B(x,y)| is shown.
[0115] Processor 112 can obtain the amplitude data |A'(x,y)| and phase data p of first object data 804 by backpropagating second object data 803 from the second depth layer to the first depth layer. n=2 (x,y). Processor 112 can perform an inverse Fourier transform (e.g., inverse fast Fourier transform, FFT) on the second object data 803 based on the distance d between the first depth layer and the second depth layer. -1 The second object data 803 is backpropagated from the second depth layer to the first depth layer to obtain the first object data 804.
[0116] The processor 112 can then change the amplitude data |A'(x,y)| of the first object data 804 to the first predetermined amplitude data |A(x,y)|.
[0117] Figure 8E An example of a holographic image generated from first object data 804 with amplitude data |A'(x,y)| is shown, while Figure 8B An example of a holographic image generated from first object data 801 with changes in a first predetermined amplitude data |A(x,y)| is shown.
[0118] Processor 112 can repeatedly execute while incrementing n. Figure 8A The loop is repeated a predetermined number of times to obtain the final first object data.
[0119] Processor 112 can be used as a repeater Figure 8A The phase data p of the final first object data obtained by the predetermined number of iterations N shown is shown. n=N+1 (x,y) is determined as the final phase data.
[0120] Alternatively, the processor 112 may use a comparison between the amplitude data |A'(x,y)| of the first object data 804 in the first depth layer and the first predetermined amplitude data |A(x,y)| to determine the amplitude data obtained by repeatedly executing the algorithm. Figure 8A p obtained by repeating the cycle M times as shown n=M+1 (x, y) is determined as the final phase data. For example, processor 112 can repeatedly execute... Figure 8A The loop is repeated M times until the difference between the amplitude data |A'(x,y)| of the first object data 804 and the first predetermined amplitude data |A(x,y)| is less than a predetermined threshold. In this case, the number of iterations M depends on the difference between the amplitude value |A'(x,y)| of the object data 804 in the first depth layer and the first target amplitude value |A(x,y)|.
[0121] Alternatively, the processor 112 may base its analysis on a comparison between the amplitude data |B'(x,y)| of the second object data 802 and the second predetermined amplitude data |B(x,y)|, by repeatedly executing... Figure 8A The phase data p of the first object data obtained by looping T times as shown n=T+1 (x, y) is determined as the final phase data. For example, processor 112 can repeatedly execute... Figure 8A The loop is repeated T times until the difference between the amplitude data |B'(x,y)| of the second object data 802 and the second predetermined amplitude data |B(x,y)| is less than a predetermined threshold. In this case, the number of iterations T depends on the difference between the amplitude value |B'(x,y)| of the object data 802 in the second depth layer and the second target amplitude value |B(x,y)|.
[0122] Figure 9A and 9B It is based on Figure 8A An illustration of a holographic image generated by the method described above.
[0123] Figure 9A The left image is a holographic image in the first depth layer, while the right image is a holographic image in the second depth layer.
[0124] It can be done Figure 9A The method generates CGHs having a first predetermined amplitude data and a second predetermined amplitude data, respectively. Display device 150 ( Figure 5 As shown, holographic images with a first predetermined amplitude data and a second predetermined amplitude data can be displayed based on CGH. Therefore, the holographic image with the first predetermined amplitude data can be displayed on the first depth layer, while the holographic image with the second predetermined amplitude data can be displayed on the second depth layer. That is, the first object image can be displayed by the holographic image on the first depth layer, and the second object image can be displayed by the holographic image on the second depth layer.
[0125] Figure 9A The holographic image shown is created by using... Figure 6B and 6C The holographic images generated from the first and second object images shown can be confirmed to be displayed on the first and second depth layers with the desired light intensities, respectively.
[0126] exist Figure 9B In the image, the left image is a holographic image on the first depth layer, while the right image is a holographic image on the second depth layer.
[0127] Since the final phase data of the first object data can be determined to satisfy the first predetermined amplitude data and the second predetermined amplitude data, the holographic image can be represented using the desired light intensity in the first depth layer and the second depth layer, respectively. Therefore, it is possible to prevent the generation of black spots in the image and to prevent the image from appearing irregularly blurred.
[0128] Figure 10 This is a diagram used to explain the propagation of object data according to an embodiment.
[0129] The target to be generated as a holographic image can be multiple objects. Figure 10 The illustration shows first and second object data 1001 and 1002, and third and fourth object data 1003 and 1004, respectively, for two objects, according to an embodiment.
[0130] Processor 112 ( Figure 5 (As shown) the first object data 1001 can be transferred from the first depth layer L l Propagation to the second depth layer L m To obtain the amplitude and phase data of the second object data 1002. Similarly, the processor 112 can obtain the third object data 1003 from the first depth layer L. l Propagation to the second depth layer L m To obtain the amplitude and phase data of the fourth object data 1004.
[0131] During the propagation of the first object data 1001, only the pixels corresponding to the first object data 1001 can be considered, and during the propagation of the third object data 1003, only the pixels corresponding to the third object data 1003 can be considered. Therefore, the first object data 1001 and the third object data 1003 can be propagated independently.
[0132] Similarly, during the backpropagation of the second object data 1002, only the pixels corresponding to the second object data 1002 can be considered, and during the backpropagation of the fourth object data 1004, only the pixels corresponding to the fourth object data 1004 can be considered. Therefore, the second object data 1002 and the fourth object data 1004 can be backpropagated independently.
[0133] Therefore, the processor 112 can perform the process of propagating and backpropagating the first and second object data 1001 and 1002 and the third and fourth object data 1003 and 1004 in parallel, and can reduce the computation time.
[0134] Figure 11 This is a diagram used to explain the propagation of object data according to an embodiment.
[0135] Object data can propagate between two or more depth layers or back. Figure 11 This shows object data propagating or back-propagating between three depth layers.
[0136] Three depth layers L l L m and L n It can be any depth layer. In the first depth layer L l With the second depth layer L m The distance d1 between and the second depth layer L m With the third depth layer L n The distance d2 between them can be the same or different.
[0137] By transferring the first object data 1101 from the first depth layer L l Propagation to the second depth layer L m The amplitude and phase data of the second object data 1102 can be obtained. This is achieved by extracting the second object data 1102 from the second depth layer L. m Propagation to the third depth layer L n This allows us to obtain the amplitude and phase data of the third object data 1103. By extracting the third object data 1103 from the third depth layer L... n By propagating backward to the first depth layer L1, the amplitude and phase data of the first object data 1101 can be obtained.
[0138] Figure 12 This is an illustration used to explain a method for obtaining the phase of object data according to an embodiment.
[0139] Processor 112 ( Figure 5(As shown) The initial amplitude data of the first object data 1201 can be set to the first predetermined amplitude data |A(x,y)|. The processor 112 can set the initial phase data of the first object data 1201 to random phase data p. n=1 (x,y).
[0140] Processor 112 can obtain the amplitude data |B'(x,y)| and phase data q of second object data 1202 by propagating first object data 1201 from a first depth layer to a second depth layer. n=1 (x,y). The processor 112 can propagate the first object data 1201 from the first depth layer to the second depth layer by performing a Fourier transform on the first object data 1201 based on the distance d1 between the first depth layer and the second depth layer.
[0141] The processor 112 can change the amplitude data |B'(x,y)| of the second object data 1202 to the second predetermined amplitude data |B(x,y)| to obtain the second object data 1203.
[0142] Processor 112 can obtain the amplitude data |C'(x,y)| and phase data r of third object data 1204 by propagating second object data 1203 from the second depth layer to the third depth layer. n=1 (x,y).
[0143] The processor 112 can change the amplitude data |C'(x,y)| of the third object data 1204 to a predetermined third amplitude data |C(x,y)| to obtain the third object data 1205.
[0144] Processor 112 can obtain the amplitude data |A'(x,y)| and phase data p of first object data 1206 by backpropagating third object data 1205 from the third depth layer to the first depth layer. n=2 (x,y).
[0145] The processor 112 can change the amplitude data |A'(x,y)| of the object data 1206 to the first predetermined amplitude data |A(x,y)| to obtain the first object data 1201.
[0146] Processor 112 can repeatedly execute while incrementing n. Figure 12 The loop shown is used to obtain the final phase data of the final first object data. In other words, Figure 12 The loop can be executed n times, wherein each iteration of the loop receives first object data as input, which has been modified by the output of the previous iteration.
[0147] Processor 112 can repeatedly execute Figure 12p, the first object data obtained by the predetermined number of iterations N shown. n=N+1 (x,y) is determined as the final phase data.
[0148] Alternatively, the processor 112 may base its analysis on a comparison between the amplitude data |A'(x,y)| of the first object data 1206 and the first predetermined amplitude data |A(x,y)|, by repeatedly executing... Figure 12 The p of the first object data obtained by looping M times as shown n=M+1 (x,y) is determined as the final phase data. In other words, processor 112 can determine whether to execute or avoid execution based on a comparison between the amplitude data |A'(x,y)| of the first object data 1206 in the first depth layer and the first predetermined amplitude data |A(x,y)|. Figure 12 Another iteration of the loop.
[0149] Alternatively, the processor 112 may base its analysis on a comparison between the amplitude data |B'(x,y)| of the second object data 1202 and the second predetermined amplitude data |B(x,y)|, by repeatedly executing... Figure 12 The phase data p of the first object data obtained by looping T times as shown n=T+1 (x,y) is determined as the final phase data. In other words, processor 112 can determine whether to execute or avoid execution based on a comparison between the amplitude data |B'(x,y)| of the second object data 1202 in the second depth layer and the second predetermined amplitude data |B(x,y)|. Figure 12 Another iteration of the loop.
[0150] Alternatively, the processor 112 can use a comparison between the amplitude data |C'(x,y)| of the third object data 1204 and the third predetermined amplitude data |C(x,y)| to determine the method of repeatedly executing... Figure 12 The phase data p of the first object data obtained by looping S times as shown n=S+1 (x,y) is determined as the final phase data. In other words, processor 112 can determine whether to execute or avoid execution based on a comparison between the amplitude data |C'(x,y)| of the third object data 1204 in the third depth layer and the third predetermined amplitude data |C(x,y)|. Figure 12 Another iteration of the loop.
[0151] The structure of the loop used to obtain the final phase data is not limited to... Figure 12 The loop structure is shown. In one embodiment, the loop can be configured to propagate first object data from a first depth layer to a third depth layer, then propagate the third object data back from the third depth layer to a second depth layer, and then propagate the second object data back from the second depth layer to the first depth layer.
[0152] Figure 13 This is a flowchart of a method for generating a CGH using object data according to an embodiment.
[0153] In operation 1301, processor 112 ( Figure 5 (As shown) The amplitude and phase values of the object data in the second depth layer can be obtained by propagating the object data from the first depth layer to the second depth layer. The processor 112 can propagate the object data by performing a Fourier transform on the object data based on the distance between the first depth layer and the second depth layer.
[0154] In operation 1302, processor 112 can change the amplitude value of object data in the second depth layer to a predetermined second target amplitude value.
[0155] In operation 1303, processor 112 can obtain the amplitude and phase values of object data in the first depth layer by backpropagating object data with a second target amplitude value from the second depth layer to the first depth layer. Processor 112 can backpropagate object data by performing an inverse Fourier transform on the object data based on the distance between the first depth layer and the second depth layer.
[0156] In operation 1304, processor 112 can generate modified object data by changing the amplitude value of object data in the first depth layer to a predetermined first target amplitude value.
[0157] In operation 1305, processor 112 can generate a CGH using object data with changes having a predetermined first target amplitude value. The final amplitude value can be determined as the first target amplitude value, and the final phase value can be determined as the phase value in the first depth layer. Processor 112 can generate a CGH using object data with changes having both the final amplitude value and the final phase value.
[0158] Figure 14 This is a flowchart of a method for generating a CGH using object data according to an embodiment.
[0159] In operation 1401, processor 112 ( Figure 5 As shown, a first target amplitude value and a second target amplitude value can be set for the object data in each of the first depth layer and the second depth layer. The first target amplitude value and the second target amplitude value can be obtained from the pre-generated first image and the second image, respectively.
[0160] In operation 1402, processor 112 can set the initial amplitude value and initial phase value of object data in the first depth layer. The initial amplitude value can be set to a first target amplitude value, and the initial phase value can be set to any phase value.
[0161] In operation 1403, processor 112 can obtain the amplitude and phase values of object data in the second depth layer by propagating object data from the first depth layer to the second depth layer.
[0162] In operation 1404, processor 112 can change the amplitude value of object data in the second depth layer to a predetermined second target amplitude value.
[0163] In operation 1405, processor 112 can obtain the amplitude and phase values of object data in the first depth layer by backpropagating object data with a second target amplitude value from the second depth layer to the first depth layer. That is, in operation 1405, the amplitude and phase values of object data in the first depth layer can be updated.
[0164] In operation 1406, processor 112 can generate modified object data by changing the amplitude value of object data in the first depth layer to a predetermined first target amplitude value.
[0165] In operation 1407, processor 112 may determine whether operations 1403 to 1406 should be executed repeatedly. Processor 112 may determine to proceed to operation 1408 based on the result determined in operation 1407. For example, the determination in operation 1407 may be based on the number of times operations 1403 to 1406 have been executed repeatedly. Alternatively, processor 112 may determine to proceed to operation 1408 based on a comparison of the amplitude value of the changed object data in the first depth layer of operation 1405 with a first target amplitude value. Alternatively, processor 112 may determine to proceed to operation 1408 based on a comparison of the amplitude value of the object data in the second depth layer of operation 1403 with a second target amplitude value.
[0166] In operation 1408, processor 112 can generate a CGH using object data with a changed first target amplitude value. The final amplitude value can be determined as the first target amplitude value, and the final phase value can be determined as the phase value in the first depth layer ultimately obtained by repeating operations 1403 to 1406. Processor 112 can generate the CGH using object data with the final amplitude value and the final phase value.
[0167] Figure 15 This is a flowchart of a method for generating a CGH using object data according to an embodiment.
[0168] In operation 1501, processor 112 ( Figure 5As shown, the amplitude and phase values of the object data in the second depth layer can be obtained by propagating the object data from the first depth layer to the second depth layer. In one embodiment, operation 1501 can be replaced by an operation of propagating the object data from the first depth layer to the third depth layer.
[0169] In operation 1502, processor 112 may change the amplitude value of object data in the second depth layer to a predetermined second target amplitude value. In one embodiment, operation 1502 may be replaced by an operation that changes the amplitude value of object data in the third depth layer to a predetermined third target amplitude value.
[0170] In operation 1503, processor 112 can obtain the amplitude and phase values of object data in the third depth layer by propagating object data having a second target amplitude value from the second depth layer to the third depth layer. In one embodiment, operation 1503 can be replaced by an operation of backpropagating object data from the third depth layer to the second depth layer.
[0171] In operation 1504, processor 112 may change the amplitude value of object data in the third depth layer to a predetermined third target amplitude value. In one embodiment, operation 1504 may be replaced by an operation that changes the amplitude value of object data in the second depth layer to a predetermined second target amplitude value.
[0172] In operation 1505, processor 112 can obtain the amplitude and phase values of object data in the first depth layer by backpropagating object data having a third target amplitude value from the third depth layer to the first depth layer. In one embodiment, operation 1505 can be replaced by backpropagating object data from the second depth layer to the first depth layer.
[0173] In operation 1506, processor 112 can generate modified object data by changing the amplitude value of object data in the first depth layer to a predetermined first target amplitude value.
[0174] In operation 1507, processor 112 can generate CGH by using object data with changes having a predetermined first target amplitude value.
[0175] Figure 16 This is a flowchart of a method for processing CGH according to an embodiment.
[0176] In operation 1601, the CGH generating device 100 ( Figure 5As shown, a first object image corresponding to a first depth layer and a second object image corresponding to a second depth layer can be obtained. The CGH generation apparatus 100 can independently generate or obtain the first object image and the second object image. Alternatively, the CGH generation apparatus 100 can generate the first object image and then generate the second object image by modifying the first object image.
[0177] In operation 1602, the CGH generating apparatus 100 can determine a first predetermined amplitude data based on a first object image and a second predetermined amplitude data based on a second object image.
[0178] In operation 1603, the CGH generating device 100 can generate first object data including first predetermined amplitude data and random first phase data.
[0179] In operation 1604, the CGH generation device 100 can use the first object data as input to perform the propagation process.
[0180] The propagation process may include propagating first object data to a second depth layer to obtain second object data including second amplitude data and second phase data. The first object data can be propagated by performing an FFT on the first object data. Furthermore, the propagation process may also include changing the second amplitude data to second predetermined amplitude data to obtain modified second object data.
[0181] The propagation process may also include backpropagating the modified second object data to the first depth layer to obtain modified first object data including modified first amplitude data and modified first phase data. The modified second object data can be backpropagated by performing an inverse FFT on the modified second object data.
[0182] The propagation process may also include changing the modified first amplitude data included in the modified first object data to a first predetermined amplitude data to obtain the final first object data.
[0183] The CGH generation device 100 can generate a CGH based on the final first object data.
[0184] Display device 150 ( Figure 5 As shown, a holographic image with a first predetermined amplitude data and a second predetermined amplitude data can be displayed based on a CGH. The display device 150 can display a holographic image with the first predetermined amplitude data on a first depth layer and a holographic image with the second predetermined amplitude data on a second depth layer. In this case, the display device 150 is considered an ideal device without aberrations. Therefore, a first object image can be displayed on the first depth layer using a holographic image, and a second object image can be displayed on the second depth layer using a holographic image.
[0185] The above embodiments can be programmed, which can be executed on a computer and implemented on a general-purpose digital computer that operates using a non-transitory computer-readable recording medium. Furthermore, the structure of the data used in the embodiments can be recorded on a non-transitory computer-readable recording medium via various units. Examples of non-transitory computer-readable recording media include magnetic storage media (e.g., ROM, floppy disk, hard disk, etc.), optical recording media (e.g., CD-ROM or DVD), etc.
[0186] It should be understood that the embodiments described herein should be considered descriptively only and not for limiting purposes. It is generally understood that the description of features or aspects in each embodiment can be applied to other similar features or aspects in other embodiments. Although one or more embodiments have been described with reference to the accompanying drawings, those skilled in the art will understand that various changes in form and detail may be made therein without departing from the spirit and scope defined by the following claims and their equivalents.
Claims
1. A method for processing computer-generated holograms (CGHs), the method comprising: Obtain a first object image corresponding to a first depth layer and a second object image corresponding to a second depth layer, wherein the first object image and the second object image are 2D images; Determine a first predetermined amplitude data based on a first object image and a second predetermined amplitude data based on a second object image; Generate first object data including first predetermined amplitude data and random first phase data; as well as The propagation process is performed using the first object data as input, the propagation process including: The first object data is propagated to the second depth layer to obtain second object data including second amplitude data and second phase data; Replace the second amplitude data with the second predetermined amplitude data to obtain the modified second object data; The modified second object data is backpropagated to the first depth layer to obtain modified first object data including modified first amplitude data and modified first phase data; and Replace the changed first amplitude data included in the changed first object data with the first predetermined amplitude data to obtain the final first object data; The method further includes: CGH is generated based on the final first object data; and Based on CGH, a first holographic image including a first predetermined amplitude data and a second holographic image including a second predetermined amplitude data are displayed.
2. The method according to claim 1, further comprising: The propagation process is executed a predetermined number of times before generating the CGH, using the final first object data from the previous iteration of the propagation process as input.
3. The method according to claim 1, wherein the propagation process further comprises: Determine the difference between the changed first amplitude data and the first predetermined amplitude data; as well as The propagation process is repeated using the final first object data from the previous iteration of the propagation process as input, based on the determined difference being greater than or equal to a predetermined threshold.
4. The method of claim 1, wherein the propagation process further comprises: Determine the difference between the changed second amplitude data and the second predetermined amplitude data; as well as The propagation process is repeated using the final first object data from the previous iteration of the propagation process as input, based on the determined difference being greater than or equal to a predetermined threshold.
5. The method of claim 1, wherein propagating the first object data comprises performing a Fast Fourier Transform (FFT) on the first object data, and Backpropagation of the modified second object data involves performing an inverse FFT on the modified second object data.
6. The method of claim 1, wherein obtaining the first object image and the second object image comprises: Obtain the first object image of the first object; as well as Obtain an image of a second object that is different from the first object.
7. The method of claim 1, wherein obtaining the first object image and the second object image comprises: Obtain the image of the first object; as well as The second object image is obtained by changing the pixel values of the first object image.
8. The method of claim 1, wherein obtaining the first object image and the second object image comprises: Obtain a first object image where the object is located within a predetermined depth of field; as well as Obtain an image of a second object located outside the predetermined depth of field.
9. The method of claim 1, wherein displaying the first holographic image and the second holographic image comprises: A first holographic image with a first predetermined amplitude data is displayed in a first depth layer; as well as A second holographic image with a second predetermined amplitude data is displayed in the second depth layer.
10. A non-transitory computer-readable recording medium having a program recorded thereon for performing the method of claim 1 on a computer.
11. A system for processing computer-generated holograms (CGHs), the system comprising: CGH generation device, configured to generate CGH; and The display device is configured to display CGH. The CGH generating device is further configured as follows: Obtain a first object image corresponding to a first depth layer and a second object image corresponding to a second depth layer, wherein the first object image and the second object image are 2D images. Determine a first predetermined amplitude data based on a first object image and a second predetermined amplitude data based on a second object image; Generate first object data including first predetermined amplitude data and random first phase data, and The propagation process is performed using the first object data as input. The propagation process includes: The first object data is propagated to the second depth layer to obtain second object data including second amplitude data and second phase data; Replace the second amplitude data with the second predetermined amplitude data to obtain the modified second object data; The modified second object data is backpropagated to the first depth layer to obtain modified first object data including modified first amplitude data and modified first phase data; and Replace the changed first amplitude data included in the changed first object data with the first predetermined amplitude data to obtain the final first object data, and The CGH generation device is further configured to generate a CGH based on the final first object data; and to display a first holographic image including first predetermined amplitude data and a second holographic image including second predetermined amplitude data by using the CGH.
12. The system of claim 11, wherein the CGH generation apparatus is further configured to perform the propagation process a predetermined number of times using the final first object data of a previous iteration of the propagation process as input before generating the CGH.
13. The system of claim 11, wherein the propagation further comprises: Determine the difference between the changed first amplitude data and the first predetermined amplitude data; as well as The propagation is repeated using the final first object data from the previous iteration of the propagation as input, based on the determined difference being greater than or equal to a predetermined threshold.
14. The system of claim 11, wherein the propagation further comprises: Determine the difference between the changed second amplitude data and the second predetermined amplitude data; as well as The propagation is repeated using the final first object data from the previous iteration of the propagation as input, based on the determined difference being greater than or equal to a predetermined threshold.
15. The system of claim 11, wherein propagating the first object data includes performing a Fast Fourier Transform (FFT) on the first object data, and Backpropagation of the modified second object data involves performing an inverse FFT on the modified second object data.
16. The system of claim 11, wherein the CGH generating apparatus is further configured to obtain a first object image of a first object and a second object image of a second object different from the first object.
17. The system of claim 11, wherein the CGH generating apparatus is further configured to obtain a first object image and to obtain a second object image by changing the pixel values of the first object image.
18. The system of claim 11, wherein the CGH generation apparatus is further configured to obtain a first object image in which the object is located within a predetermined depth of field, and to obtain a second object image in which the object is located outside the predetermined depth of field.
19. The system of claim 11, wherein the display device is further configured to display a first holographic image including first predetermined amplitude data at a first depth layer, and a second holographic image including second predetermined amplitude data at a second depth layer.
Citation Information
Patent Citations
Plasma processing method and plasma processing apparatus
KR1020200104805A
Re-payment system without card approving process
KR1020210041261A
Method and device for computing computer-generated video holograms
CN101088052A
Method for real-time rendering and generating of computer-generated video holograms
CN101421678A