WO2014195013A1 - Vorrichtung und verfahren zur berechnung von hologrammdaten - Google Patents

Vorrichtung und verfahren zur berechnung von hologrammdaten Download PDF

Info

Publication number
WO2014195013A1
WO2014195013A1 PCT/EP2014/001503 EP2014001503W WO2014195013A1 WO 2014195013 A1 WO2014195013 A1 WO 2014195013A1 EP 2014001503 W EP2014001503 W EP 2014001503W WO 2014195013 A1 WO2014195013 A1 WO 2014195013A1
Authority
WO
WIPO (PCT)
Prior art keywords
hologram
sub
segment
calculation
holograms
Prior art date
Application number
PCT/EP2014/001503
Other languages
English (en)
French (fr)
Inventor
Enrico Zschau
Original Assignee
Seereal Technologis S.A.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seereal Technologis S.A. filed Critical Seereal Technologis S.A.
Priority to CN201480032191.8A priority Critical patent/CN105264443B/zh
Priority to DE112014002704.9T priority patent/DE112014002704A5/de
Priority to US14/896,085 priority patent/US10353344B2/en
Priority to KR1020167000171A priority patent/KR102248266B1/ko
Publication of WO2014195013A1 publication Critical patent/WO2014195013A1/de
Priority to US16/451,437 priority patent/US11635731B2/en
Priority to US18/305,343 priority patent/US20230259071A1/en

Links

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • G03H1/0841Encoding method mapping the synthesized field into a restricted set of values representative of the modulator parameters, e.g. detour phase coding
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • G03H1/0808Methods of numerical synthesis, e.g. coherent ray tracing [CRT], diffraction specific
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/22Processes or apparatus for obtaining an optical image from holograms
    • G03H1/2294Addressing the hologram to an active spatial light modulator
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • G03H1/0808Methods of numerical synthesis, e.g. coherent ray tracing [CRT], diffraction specific
    • G03H2001/0833Look up table
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • G03H1/0841Encoding method mapping the synthesized field into a restricted set of values representative of the modulator parameters, e.g. detour phase coding
    • G03H2001/0858Cell encoding wherein each computed values is represented by at least two pixels of the modulator, e.g. detour phase coding
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/26Processes or apparatus specially adapted to produce multiple sub- holograms or to obtain images from them, e.g. multicolour technique
    • G03H2001/2605Arrangement of the sub-holograms, e.g. partial overlapping
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H2210/00Object characteristics
    • G03H2210/303D object
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H2210/00Object characteristics
    • G03H2210/40Synthetic representation, i.e. digital or optical object decomposition
    • G03H2210/45Representation of the decomposed object
    • G03H2210/452Representation of the decomposed object into points
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H2226/00Electro-optic or electronic components relating to digital holography
    • G03H2226/02Computing or processing means, e.g. digital signal processor [DSP]

Definitions

  • the present invention relates to a device with a hardware architecture and to a method for calculating and coding hologram data, such as can be used, for example, to display three-dimensional scenes (3D scenes) and objects with a holographic display.
  • the invention also relates to a device for optimized calculation of 2D sub-holograms for object points of a three-dimensional scene for a
  • a holographic display as well as a method for calculating a 2D sub-hologram for object points of a three-dimensional scene for a spatial light modulator (SLM), a device and a method for coding a
  • SLM spatial light modulator
  • Hologram of a three-dimensional scene in a spatial light modulator and a pipeline for the real-time calculation of holograms.
  • Previous approaches are based e.g. to take advantage of the symmetry, in particular mirror symmetry, in the sub-hologram calculation, i. e. that only hologram values for one
  • Quadrants (i.e., in one quarter) of a 2D sub-hologram.
  • the values of the remaining three quadrants are not calculated explicitly, but the
  • Calculated values of the first quadrant of the 2D sub-hologram are used to determine the values of the three remaining quadrants by taking the values of the
  • a mirror symmetry can be understood at least one axis symmetry and / or a point symmetry, wherein
  • CONFIRMATION COPY the point symmetry can relate in particular to the center of a sub-hologram SH.
  • the effort is still enormously high, compared to the 1 D coding, for example, in such a 2D encoding of the effort by a factor of 100 and more higher, and in particular depending on the pitch of the picture elements
  • the pitch is to be understood in particular a size, which results from the size of a picture element (pixel size) and the respective distance between two adjacent picture elements (pixel pitch) of the spatial light modulator.
  • the phase and amplitude at which the light used to represent a three-dimensional scene is modulated by the spatial light modulator is calculated.
  • the phase results here in particular from parameters such as the distance or the distance of an object point to be represented from the spatial light modulator and the pitch of the picture elements (pixel pitch) (p x , p y ), where p x is the pitch of the picture elements in the x direction and p y denotes the pitch of the picture elements in the y direction.
  • Object point to be displayed by the spatial light modulator is hereinafter referred to as focus (F).
  • focus Object point to be displayed by the spatial light modulator
  • a very compute-intensive step is carried out in the following, the transformation of the phase and the amplitude into the Cartesian space with real and imaginary values. This first enables the accumulation, ie the superimposition, of the calculated 2D sub-hologram with other 2D sub-holograms in the sum hologram.
  • FIG. 1 gives a brief overview of the calculation of a 2D sub-hologram according to the prior art as well as the calculation procedure for the creation of the entire hologram of the three-dimensional scene to be displayed, in addition to those mentioned above
  • the present invention has for its object to provide a device and method of the type mentioned and further, by which the aforementioned problems are overcome.
  • the calculation time of a hologram for displaying a three-dimensional scene is to be shortened and / or the calculation effort of such a hologram must be reduced compared to the methods known from the prior art.
  • Representation of a three-dimensional scene is here in the sense of
  • the object is achieved by a device for calculating a 2D sub-hologram.
  • a 2D sub-hologram is used to represent an object point of a three-dimensional scene by means of a holographic display.
  • 2D sub-holograms of all object points of the three-dimensional scene to be displayed are required, in order subsequently to produce an overall hologram of the three-dimensional scene to be represented by superimposing them, hereinafter referred to simply as a hologram.
  • the holographic display for displaying an object point of a three-dimensional scene comprises a spatial light modulator with a matrix of picture elements. These pixels are also called pixels, cells or pixel cells. It can be a
  • Picture element also comprise a plurality of sub-picture elements. In this case, this corresponds
  • Picture element of a macro cell contains complex values that can be assigned to picture elements of the spatial light modulator (SLM) and has rotational symmetry, since it only images one object point of the three-dimensional scene.
  • SLM spatial light modulator
  • a complex value is to be understood in particular as meaning a complex number in the mathematical sense.
  • the device for calculating a 2D sub-hologram for representing an object point of a three-dimensional scene is characterized in that the 2D sub-hologram is half a 1 D Subhologram along a section through the 2D sub-hologram from the origin of the 2D sub-hologram to a maximum radius of the 2D sub-hologram, wherein the radius of each pixel is determined and each pixel of the 2D sub-hologram at least one pixel of the half 1 D sub-hologram with the same or similar radius is permanently assigned by an electronic circuit.
  • the maximum radius is the radius of the circle enclosing the 2D sub-hologram.
  • Object point has a rotational symmetry.
  • the amplitudes and phase values of picture elements of the 2D sub-hologram are the same distance from each other
  • a pixel of a half 1D sub-hologram that, with the position described above from the origin of the 2D sub-hologram up to a maximum radius, is part of the 2D sub-hologram, with the corresponding radius, and to carry out the calculation only for this one picture element. Due to the fixed assignment by an electronic circuit, this does not require an additional step of determining radii of other picture elements, their additional addressing or the inclusion of lookup tables for this step.
  • Such an electronic circuit can be realized as a digital circuit. However, analog circuits can also be used.
  • each image element of the 2D sub-hologram at least one pixel of the half 1 D sub-hologram be so permanently assigned by an electronic circuit in such a way that the radius of the pixel of the 2D sub-hologram with a direction-dependent
  • Elongation factor multiplied radius of a picture element of the half 1 D sub-hologram corresponds.
  • an electronic circuit is realized in the form of a hard-wired matrix.
  • FPGAs Programmable Gate Arrays
  • ASICs Application Specific Integrated Circuits
  • Pixels of the same radius are identical.
  • the arrangement of the picture elements in the spatial light modulator (SLM) in matrix form, wherein the picture elements have a defined size and a defined pitch results in that amplitude and phase values are calculated for specific radii values of the picture elements of the half 1 D sub-hologram, but one Series of picture elements in the 2D sub-hologram of the object point are included, whose radii values differ from those of the half 1 D sub-hologram. In the case of small deviations, the corresponding values calculated for the half 1D sub-hologram are nevertheless used for them.
  • the device according to the invention therefore contains in its electronic circuit means for generating intermediate values by combining two or more picture elements of the half 1 D sub-hologram and for assigning the corresponding picture elements of the 2D sub-hologram to these intermediate values.
  • a device In order to produce a hologram of the entire three-dimensional scene to be displayed, in accordance with the object stated above, a device according to the invention comprises
  • Apparatus for calculating such a hologram Means for transforming the 2D sub-hologram generated by the device according to the invention for calculating a 2D sub-hologram from polar to Cartesian coordinates, as well as from Cartesian into polar coordinates, by the way. These can also be realized in a fixed wiring.
  • the above-described object is achieved by a corresponding method for calculating a 2D sub-hologram for displaying an object point of a three-dimensional scene by means of a holographic display according to claim 7, wherein the holographic display comprises a spatial light modulator with a matrix of picture elements.
  • a 2D sub-hologram to be calculated contains complex values that can be assigned to picture elements of the spatial light modulator (SLM).
  • the inventive method also uses rotational symmetry of the 2D sub-hologram to encode the 2D sub-hologram into the spatial light modulator (SLM).
  • each picture element of the 2D sub-hologram is assigned to at least one picture element of a half 1D sub-hologram having the same or similar radius value, the half 1D sub-hologram along a section through the 2D sub-hologram from the origin of the 2D sub-hologram to a maximum radius of the 2D sub-hologram, and phase and amplitude values for each picture element of a half 1D sub-hologram are calculated and transmitted to all associated picture elements of the 2D sub-hologram.
  • the method according to the invention is characterized in that the assignment of the picture elements of the 2D sub-hologram to the picture elements of the half 1 D sub-hologram is permanently coded by means of an electronic circuit. This is illustrated in Fig. 5, which will be described in detail below.
  • each picture element of the 2D sub-hologram can comprise at least one picture element of the half 1D sub-hologram be assigned by an electronic circuit such that the radius of the
  • Elongation factor multiplied radius of a picture element of the half 1 D sub-hologram corresponds.
  • the intermediate values are generated by virtual multiplication of the number of picture elements of the half 1D sub-hologram or by interpolation of the values of at least two
  • the half 1 D sub-hologram runs along the x-axis of the 2D sub-hologram or along the y-axis of the 2D sub-hologram.
  • An inventive method for calculating a hologram for displaying the entire three-dimensional scene initially generates 2D sub-holograms for all
  • each of the picture elements of each 2D sub-hologram receives an offset in the x and y directions in accordance with the position of the object point to be displayed by the 2D sub-hologram and the position of a viewer of that scene.
  • the thus positioned 2D sub-holograms are finally added up, that is superimposed. Specifically, this means shifting the phase and amplitude values of a 2D
  • Subhologram advantageously after their transformation into Cartesian coordinates with real and imaginary part to a number of n elements in the x direction and m elements in the y direction, where n and m from the position of the object point to be displayed and the position of the observer results , This is followed by an addition of these real and imaginary parts of the corresponding picture elements of all 2D sub-holograms.
  • Superposition i. Superimposition of sub-holograms of individual object points of a three-dimensional scene, also called scene points, according to claim 15 for solving the above problem at.
  • Memory elements calculated for a hologram line.
  • the memory elements can each be assigned picture elements. Offset positions are determined for this sub-hologram segment of the first half as well as for a sub-hologram segment of a second half of the sub-hologram, the offset positions being the respective location within a sub-hologram Hologram line, where the sub-hologram segments are added, define, the addition is preferably complex valued.
  • the sub-hologram segment of the second half of the sub-hologram is generated by duplication and reflection of the sub-hologram segment of the first half.
  • the sub-hologram segment of the first half and its offset position enter a calculation path for the first half and the sub-hologram segment of the second half and its offset position into a calculation path for the second half of the sub-hologram, in which each addition the sub-hologram segments take place in mutually independent hologram line stores.
  • the independent hologram line memories of the first and second sub-hologram halves are eventually recombined.
  • the sub-hologram segments are aligned prior to addition in accordance with the determined offset positions on the hologram line memory. This simplifies the following addition method, since the control of the hologram line memory is simplified, and enables a more effective use of the hologram line memory.
  • the alignment of the sub-hologram segments is effected by shifting an unaligned sub-hologram segment by shifting the difference value of an integer multiple of the number of elements of a segment and the offset position within a segment determined for this sub-hologram segment is mapped to two adjacent, aligned to the hologram line memory segments, and then the remaining elements of the two adjacent segments are filled with zero.
  • the two adjacent aligned segments are added in two independent hologram arrays, which is usually done in parallel.
  • the displacement of the sub-hologram segment takes place either by means of a pipeline with a number of stages that corresponds to the number of elements of a
  • Subhologram segment where in each stage the elements are shifted by one element until the determined difference value is reached, and passed through the remaining stages without displacement.
  • a further advantageous variant of the displacement of the sub-hologram segment is effected by means of a fixed logic, in which the Shift is selected according to the difference value by ultiplexer.
  • Hologram the sub-hologram segment of the first half aligned generated and added in an independent hologram line memory.
  • This solution is mainly used for the 1 D coding, ie in the generation of a half-parallax hologram, but is also for 2D encoding, ie the generation of a full-parallax hologram, applicable.
  • the sub-hologram segment of the second half of the sub-hologram is generated by duplication and reflection of the sub-hologram segment of the first half and linked to the sub-hologram segment stored in the previous cycle, the elements of the current sub-hologram segment are shifted by the difference value of an integer multiple of the number of elements of a segment and the offset position determined for this sub-hologram segment and the memory-aligned sub-hologram segment is split off and added to a hologram line memory.
  • the object of the present invention is achieved by a method for coding a hologram using sub-holograms, in which 2D sub-holograms are determined by means of the device according to the invention for calculating 2D holograms.
  • a real-time hologram computing pipeline comprises means for calculating sub-holograms and directly driving a holographic display, characterized in that the pipeline is based on one or more application fields of programmable logic gate arrays (FPGA) and / or one or more application specific integrated circuits (ASIC), and the application field programmable logic gate arrays (FPGA) and / or application field programmable logic gate arrays (ASIC) used here are configurable, ie, are still configurable during runtime.
  • FPGA programmable logic gate arrays
  • ASIC application specific integrated circuits
  • such a pipeline may include a device according to the invention for calculating a 2D subholgram for representing an object point of a three-dimensional scene.
  • the pipeline contains functional units which are interconnected electronically, with the following basic functions being realized:
  • the functional units are permanently integrated in the circuit, but can be configured at runtime, ie not assigned to a specific SLM or holographic display.
  • the pipeline is realized on the basis of FPGA and / or ASIC, whereby the FPGA or ASIC used can be configured at runtime.
  • the ASICs or FPGAs do not have to be designed for a specific type of holographic display, but can be adapted to your environment (type of display, etc.) by appropriate configuration during commissioning. Possibly. they can be subsequently reconfigured. This makes it possible to design such a pipeline so that both 1D and 2D holograms can be calculated and output in real time, and different encoding types and output modes can be supported.
  • the resolutions for hologram and content are independent of the hardware used, i.e. the resolutions are thus independent of the FPGA or ASIC used.
  • such a pipeline can be used to ensure high processing power at a low clock frequency by means of high parallelism during processing. This is important, especially with regard to minimum power consumption.
  • the local storage capacity in the FPGA and / or in the ASIC can be minimized. This is a key advantage as memory drives up energy consumption and space requirements (chip area).
  • the output and the calculation can be performed at different frame rates, whereby the calculation frame rate is typically based on the content frame rate.
  • parts of the pipeline can be implemented in the form of a programmable circuit in order to subsequently modify or add new functional units (for example by FPGA or mixed-form FPGA with fixed functional units). This is preferably done in the area of interfaces and coding in order to subsequently be able to make adjustments with regard to transmission formats and hologram coding.
  • the functions or functional units of the pipeline for hardware-based real-time calculation of holograms with the help of sub-holograms and direct control of a holographic display can be summarized as follows:
  • an object point contains color and position information.
  • a color and position information preferably a
  • Video-based transmission performed via a digital electronic interface. Other methods are also conceivable.
  • Reading object points from the cache are (optional) Reading object points from the cache.
  • Image output format Preferably, a video image based transmission is performed via a digital electronic interface. Other methods are also conceivable. Control of other required for the holographic representation devices such as lasers or devices for light deflection.
  • Fig. 1 The calculation curve for a complex-valued hologram of a three-dimensional scene according to the prior art
  • Fig. 2 The mirror symmetry in 2D sub-holograms according to the prior art
  • 3 shows an example of the assignment of the picture elements of the 2D sub-hologram matrix to a 1D sub-hologram
  • FIG. 5 shows the calculation sequence for a complex-valued hologram of a three-dimensional scene using the method according to the invention for generating 2D sub-holograms of object points of this scene using a 1D sub-hologram running along the x-axis of the 2D sub-hologram.
  • Fig. 6 A holographic calculation pipeline without exploiting symmetry in the prior art
  • a holographic calculation pipeline for a method for coding a hologram of a three-dimensional scene using symmetry by means of mirroring and alignment (first solution variant of a method for coding a hologram of a three-dimensional scene)
  • Fig. 8 A holographic pipeline with symmetry in a variant independent of the order
  • Fig. 10 A holographic pipeline with symmetry in an order-dependent variant
  • Fig. 11 A pipeline for hardware-based real-time calculation of holograms using sub-holograms and direct control of a holographic display.
  • the device and the method for calculating 2D sub-holograms 2D-SH and with these for the calculation of holograms as described above take advantage of rotational symmetry.
  • the utilization of the mirror symmetry can be omitted. Since the phase calculation described in the prior art generally results in a calculation of phase values which describes or approximates the imaging function of a lens with a focus F, a radius R is described with the function parameters x and y, where the x is the generate identical radius R, the phase ie the complex value is identical.
  • S P y / p x .
  • a complex value is to be understood in particular as meaning a complex number in the mathematical sense.
  • a mirror symmetry can be understood to mean at least one axis symmetry and / or point symmetry, wherein the
  • Point symmetry can refer in particular to the center of a sub-hologram SH.
  • the corresponding radius can now be determined for each picture element BE in the first quadrant or else for all other quadrants.
  • a phase profile or a section-for example along the x-axis or along a diagonal-one obtains a function profile which can be understood as a kind of look-up table and / or used as a look-up table.
  • ASIC Application Specific Integrated Circuit
  • This aspect is inventively by a special electronic, preferably solved digital circuit, which is particularly applicable to FPGAs and ASICs.
  • any suitable computer hardware can be used for this purpose.
  • a hard-wired matrix is created as a special digital circuit, which each pixel BE of a 2D sub-hologram 2D-SH with at least one particular pixel BE in half a 1 D Subhologram 1 D-SH electrically connects.
  • FIG. 3 shows an example of the assignment of the picture elements of the 2D sub-hologram matrix 2DSHM to a 1D sub-hologram 1 D-SH in the physical as well as in the methodological sense. The following process steps are shown here:
  • a 1 D sub-hologram half consisting of several pixels for different radii, each pixel storing a complex value, H1 DSH.
  • a 1 D sub-hologram 1 D-SH half size is calculated.
  • the result is a larger number of complex values k consisting of imaginary value (or imaginary part) and real value (or real part).
  • Each complex value is now cached in two registers, one for real and one for imaginary.
  • a register is a digital electronic circuit for storing numerical values in digital circuits. So there are k * 2 registers in a 1 D sub-hologram 1 D-SH with a number of n picture elements BE. Furthermore, there is a matrix of A ' * B' picture elements BE each consisting of 2
  • Registers - this represents a 2D sub-hologram 2D-SH.
  • a certain number of these picture elements BE in the 2D sub-hologram 2D-SH has been assigned the most suitable picture element BE in the 1 D sub-hologram 1 D-SH. The assignment was made offline.
  • These picture elements BE are now connected by electrical, fixed, parallel, continuous and in particular complete data transmission from the two registers in the 1 D sub-hologram 1 D-SH to the assigned registers in the 2D sub-hologram 2D-SH.
  • this transfer is clock edge controlled. But there are others too Types of transmission conceivable. Similarly, instead of a digital transmission, an electrically analog storage and transmission is conceivable.
  • Picture elements BE of the half 1 D sub-hologram 1 D-SH are connected via the radius.
  • the picture element BE of the 1 D sub-hologram 1 D-SH whose radius R corresponds closest to the radius R 'of the picture element BE of the 2D sub-hologram 2D-SH is always selected, and its complex value is then assigned to the picture element BE of the 2D
  • the picture elements BE are calculated only for a limited number of radii R.
  • a big gain in performance is that only a fraction of a 2D sub-hologram 2D-SH to be calculated has to be calculated in the form of the half 1 D sub-hologram 1 D-SH.
  • the very compute-intensive transformation into the Cartesian space takes place.
  • the aim is also to find a way to reduce the hologram calculation with 2D sub-holograms 2D-SH.
  • One way to do this is to implement an apparatus with a hardware architecture for calculating hologram data. This should preferably take place in real time, in particular, for devices based on FPGA and / or ASIC, which are mainly characterized by a reasonable or low
  • the number of transistors used for the electrical circuit of the device affects on the one hand the cost of production and on the other hand their power consumption. That is, the larger the electrical circuit is, the more transistors are to be provided and the more complex and costly are their production and development. This is essential especially for mobile devices with limited energy supply and limited heat dissipation.
  • the advantages of a 2D coding, ie a coding with 2D sub-holograms 2D-SH, compared to a 1D coding, ie a coding with 1D sub-holograms 1 D-SH, are known and have been described in the publications mentioned above. Important features are: - the elimination of astigmatism in the holographic representation or the
  • Rei 2 (Re 1 + Re 2 ) / 2
  • lm 12 (lm t + lm 2 ) / 2.
  • a quadratic or a logarithmic or an exponential interpolation is possible.
  • the 2D sub-hologram matrix and its fixed link to the half 1D sub-hologram register are determined off-line or off-line based on the maximum occurring sub-hologram size and then synthesized into an electrical digital circuit that can be implemented in an FPGA / ASIC , The new procedure will now be integrated into the previous procedure.
  • the upstream module for calculating a half 1 D sub-hologram 1 D-SH now generates the data
  • the method allows the use of dynamic sub-hologram sizes, ie, the sub-hologram size varies depending on the distance of the associated object point to the hologram plane or depending on the position of the object point to be displayed, the current position of Viewing Windows, which in the immediate vicinity Observer eye is positioned, and the position of the spatial light modulator SLM, by only the relevant part of the half 1 D sub-hologram 1 D-SH is calculated and only the corresponding section of the 2D sub-hologram 2D-SH is further processed.
  • This allows balancing the computational power on three-dimensional scenes with very high and at the same time other with low complexity, or it makes it possible
  • the method can be applied to spatial light modulators SLMs with square or rectangular pixel structures.
  • the half 1 D sub-hologram 1 D-SH is calculated along the higher resolution direction, if necessary with additional
  • the method can also be used to provide rotational symmetry and a
  • the advantage of the method according to the invention and the device according to the invention is the clear simplification of the calculation of 2D sub-holograms 2D-SH in FPGAs or ASICs.
  • the order of magnitude for reducing the required computing power is about a factor of 100; Depending on the display or SLM type this can be more or less.
  • the disadvantage could be that the accuracy is reduced by quantization effects.
  • By appropriate adaptation of the sampling rate by increasing the number of pixels BE in the half 1 D sub-hologram 1 D-SH for the 1 D sub-hologram 1 D-SH to be calculated this can be compensated according to the requirements with justifiable extra effort.
  • FIG. 5 shows the calculation sequence for a complex-valued hologram for representing a three-dimensional scene using the method according to the invention for generating 2D sub-holograms of object points of this scene using a 1D sub-hologram along the x-axis of the 2D sub-hologram runs.
  • This process represents a considerable simplification of the method compared to a prior art calculation procedure, see FIG. 1, since the first elaborate steps are reduced to half the 1-D sub-hologram, whereas in the prior art it is always for the entire 2D sub-hologram.
  • the starting point is a holographic calculation pipeline without using one
  • the sub-hologram segment generator SHSG here generates a sub-hologram segment with complex values for picture elements in the polar coordinate system SHP. This is followed by a sub-hologram segment transformation SHST, from which a transformed sub-hologram segment with complex values for picture elements in the Cartesian coordinate system SHK results. Subsequently, the sub-hologram segment addition SHSA takes place with the aid of the hologram line memory HZS. The resulting hologram line HZ consisting of several added sub-holograms (superposition of sub-holograms)
  • Programmable logic gate arrays FPGAs unlike conventional computer systems, do not run a linear program, but instead create a fixed switching network to which data is applied to the input and which outputs data again after finite time. Logical operations within the fixed circuit process, modify, link, etc. the data. For example, arithmetic
  • Operations e.g., addition, subtraction, multiplication, comparisons
  • memory cells registers, spawning or addressable memory blocks
  • Binary and logical links i. Shortcuts to and, or etc. can be performed.
  • Access to memory blocks in the application field programmable logic gate arrays FPGA may only be done with memory address based data - unlike computers where the processor automatically aligns the data, but with delays. in the
  • processor-based computer architectures (with von Neumann principle) are very slow compared to Application Specific Integrated Circuits ASICs and Field Programmable Gate Arrays FPGAs because the processor-based computer architectures operate quasi-sequentially.
  • Subholograms SH is relatively easy to formulate and implement in theory or on a computer system with sequential processing and arbitrary sequential memory access.
  • the implementation in a fixed, linear and parallel system is complicated. This is explained below for 1 D sub-holograms. Since that
  • Memory elements align (in so-called alignment) and in local
  • Hologram line store to add This should be as space-saving and / or
  • the generated sub-hologram segment of the first half is calculated and then transformed from polar to Cartesian coordinates.
  • two offset positions are determined, one for the sub-hologram segment of one half and one for the later to be mirrored sub-hologram segment of the other half.
  • the offset positions determine the location or the memory address within the hologram line, to which the segments are added complex valued, wherein the memory address, ie the
  • a concrete picture element BE can be assigned, such an assignment is not fixed.
  • FIG. 7 shows a first variant of a method for the Encoding a hologram of a three-dimensional scene shows, namely a
  • Holographic calculation pipeline for a method for coding a hologram of a three-dimensional scene using symmetry by means of mirroring and alignment.
  • N Shift of the sub-hologram segment by N 'or N "elements, either stepwise, i.e. in NT or N" steps, or immediately with the aid of a multiplexer SHVSCH,
  • both calculation paths now each contain a sub-hologram segment, which must both be added to the current hologram line. For this to happen, both segments must be aligned with the hologram line memory, which is called alignment. For this purpose, in each case a mapping of an unaligned sub-hologram segment is made to two adjacent aligned
  • Sub-hologram segments This is done as follows: A sub-hologram segment is increased to twice the width (here, for example, from 16 to 32 elements with complex-valued content), with the upper 16 memory elements being filled with zero.
  • the 16th sub-hologram segment is increased to twice the width (here, for example, from 16 to 32 elements with complex-valued content), with the upper 16 memory elements being filled with zero.
  • Segment width be implemented, in the example described here, this would be 16, which shifts the memory elements in each stage by a memory element of the hologram line memory or passes without displacement.
  • the last stage will contain that
  • Hologram line done. Since the amount of data has quadrupled, the quadruple amount of data must also be processed, i. be added. Therefore, four hologram line memory blocks are needed which add the four sub-hologram segments in parallel into four independent hologram lines. Because there are only two adjacent ones per calculation path
  • Subhologram segments arrive, this means that only one even and one odd sub-hologram segment arrive at a time. That is, instead of two full hologram lines, two half hologram lines are sufficient, the first one stores only the even sub-hologram segments, the other the odd ones.
  • FIG. 8 shows a holographic pipeline with symmetry in a variant independent of the order of the incoming sub-hologram segments:
  • a sub-hologram segment generator SHSG first generates a sub-hologram segment with pixels, that is, with complex values for the pixels, in the
  • Transformation SHST converted into a transformed sub-hologram segment with pixels in the Cartesian coordinate system SHK.
  • Hologram of a three-dimensional scene can now be further improved: Such an improved variant will now be described below as a second solution variant of a method for coding a hologram of a three-dimensional scene, see also FIG. 10.
  • the generated sub-hologram segment is already generated in this way, that for this unsized sub-hologram segment no alignment on the
  • FIG. 9 shows a holographic
  • FIG. 9 shows the following steps for this purpose:
  • the sequence of steps described for the mirrored sub-hologram segment in the second calculation path is unnecessary in the first calculation path since the corresponding sub-hologram segment is aligned with the memory from the beginning.
  • both lines are merged, i.
  • FIG. 10 shows an overview of such a holographic pipeline with symmetry in a variant dependent on the order of the incoming sub-hologram segments.
  • a sub-hologram segment generator SHSG first generates a sub-hologram segment with pixels, that is, with complex values for the pixels, in the
  • Polar coordinate system SHP This is converted by the sub-hologram segment transformation SHST into a transformed sub-hologram segment with picture elements in the Cartesian coordinate system SHK.
  • the second solution variant of a method for coding a hologram of a three-dimensional scene-SHSSA_B-sub-hologram segments are generated, in each case in original and in mirrored form. These sub-hologram segments are subsequently added to the sub-hologram segment SHSA supplied. For this purpose, again a hologram line memory HZS is required.
  • the hologram line adder HZA adds the two hologram lines calculated in the previous step, resulting in a hologram line HZ consisting of several added sub-holograms, i.e., a superposition of sub-holograms.
  • Holegroem line memory is significantly smaller than the need for another conventional non-symmetric computing pipeline, especially in the second solution of a hologram coding method of a three-dimensional scene, which would be required to compute the hologram at the same time. This results in a double calculation speed with significantly less logic and less space. Conversely, more subholograms SH can thus be calculated with the same space requirement.
  • FIG. 11 A pipeline for hardware-based real-time calculation of holograms with the aid of sub-holograms and direct control of a holographic display is shown in FIG. 11. It is realized on the basis of FPGA and / or ASIC and is described below.
  • the hologram calculation parameters and the holographic display configuration parameters are stored in a nonvolatile memory FLASH outside the FPGA or ASIC.
  • a system controller SC microcontroller or the like within the FPGA or ASIC loads the data from the memory FLASH and during the initialization phase configures all modules of the holographic calculation pipeline with parameters and tables. These data are stored within small local RAMs (random access memory) in the FPGA or ASIC, as well as the modules that are used for encoding and output (formatting). Furthermore, it is specified in which format the content of the 3D scene (content) to be displayed is delivered and this is provided to the content supplier via a suitable interface, eg DDC ("display data channel").
  • DDC display data channel
  • Data channel for the exchange of screen information or CEC ("consumer electronics control")
  • CEC consumer electronics control
  • the continuously arriving image frames which contain color and depth information for different views, observers and transparency planes, are transmitted by the source interface (data channel on the 3D content, such as color and depth information received from a entprechenden device, eg PC, game console, media player), eg HDMI ("high definition media interface” or "interface for the transmission of
  • the pipeline controller PC serves as an interface to the memory IS and controls the subsequent parallel ones
  • Calculation instances (boxes shown in succession in Fig.11). It requests individual object points from the memory IS according to the currently calculated color / view / level and current position in the hologram and distributes these to the individual instances according to their
  • Each calculation entity consists of a 1 D sub-hologram generator SHG, a converter module CVTF for converting complex values from the
  • Polar coordinate form in the Cartesian coordinate system and an adder SHA, which adds the generated sub-hologram in the current hologram line.
  • Each adder SHA contains a hologram line buffer (not shown).
  • a calculation instance typically processes all object points of the 3D scene to be displayed, whose
  • Subholograms affect the currently stored hologram line in the adder SHA.
  • the hologram output works asynchronously.
  • the display controller DC controls the
  • the holograms may e.g. time sequential in terms of views and colors or nested output. Mixed forms are also possible.
  • the illustrated embodiment illustrates the basic possibility to implement the calculation of holograms in the form of a fixed and efficient circuit and, above all, to configure them so that they can be used for various display types and sizes as well as application classes (desktop / mobile). She stands out

Abstract

Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zur Berechnung und Kodierung von Hologrammdaten einer dreidimensionalen Szene in einen räumlichen Lichtmodulator (SLM) zur Darstellung von dreidimensionalen Szenen mit einem holographischen Display. Insbesondere betrifft die Erfindung auch eine Vorrichtung und ein Verfahren zur optimierten Berechnung von 2D-Subhologrammen (2D-SH) für Objektpunkte einer dreidimensionalen Szene und eine Pipeline zur Echtzeit-Berechnung von Hologrammen. Aufgabe der Erfindung ist es, die Berechnungszeit eines Hologramms zur Darstellung einer dreidimensionalen Szene zu verkürzen und/oder der Berechnungsaufwand eines solchen Hologramms gegenüber den aus dem Stand der Technik bekannten Verfahren zu reduzieren. Dies wird erreicht durch eine Vorrichtung und ein Verfahren, in dem ein 2D-Subhologramm (2D-SH) eines Objektpunktes, das Bildelemente (BE) des räumlichen Lichtmodulators (SLM) aufweist, ein halbes 1D-Subhologramm (1D-SH) enthält, wobei der Radius jedes Bildelements (BE) bestimmt ist und jedes Bildelement (BE) des 2D-Subhologramms (2D-SH) mindestens einem Bildelement (BE) des halben 1D-Subhologramms (1D-SH) mit gleichem oder ähnlichen Radius durch eine elektronische Schaltung fest zugeordnet ist, durch ein Verfahren zur Kodierung eines Hologramms, sowie durch eine Pipeline auf Basis von FPGA und/oder ASIC.

Description

Vorrichtung und Verfahren zur Berechnung von Hologrammdaten
Die vorliegende Erfindung betrifft eine Vorrichtung mit einer Hardwarearchitektur und ein Verfahren zur Berechnung sowie zur Kodierung von Hologrammdaten, wie sie beispielsweise zur Darstellung von dreidimensionalen Szenen (3D Szenen) und Objekten mit einem holographischen Display verwendet werden können.
Insbesondere betrifft die Erfindung auch eine Vorrichtung zur optimierten Berechnung von 2D-Subhologrammen für Objektpunkte einer dreidimensionalen Szene für ein
holographisches Display, sowie ein Verfahren zur Berechnung eines 2D Subhologramms für Objektpunkte einer dreidimensionalen Szene für einen räumlichen Lichtmodulator (SLM, Spatial light Modulator), eine Vorrichtung sowie ein Verfahren zur Kodierung eines
Hologramms einer dreidimensionalen Szene in einen räumlichen Lichtmodulator, und eine Pipeline zur Echtzeit-Berechnung von Hologrammen.
Ein solches holographisches Display und ein Berechnungsverfahren zur Berechnung holographischer Daten ist beispielsweise in den folgenden Veröffentlichungen beschrieben: WO 2004/044659 A2, WO 2006/066919 A1, WO 2007/118842 A1, WO 2007/135165 A1, WO 2008/025839 A1 , WO 2008/138979 A1 und WO 2011/121130 A9. Der Inhalt dieser
Veröffentlichungen wird hiermit vollumfänglich einbezogen. In diesen Veröffentlichungen ist insbesondere der Begriff des Subhologramms und dessen Bedeutung ausführlich
beschrieben, worauf im Folgenden Bezug genommen wird. Auch ist in diesen
Veröffentlichungen beschrieben, was unter 1 D- und 2D-Kodierung, also einer
eindimensionalen bzw. einer zweidimensionalen Kodierung eines (Sub)Hologramms zu verstehen ist.
Bisherige Ansätze basieren z.B. darauf, die Symmetrie, insbesondere eine Spiegelsymmetrie, in der Subhologrammberechnung auszunutzen, d.h. dass nur Hologrammwerte für einen
Quadranten (d.h. in einem Viertel) eines 2D-Subhologramms berechnet werden müssen. Die Werte der restlichen drei Quadranten werden nicht explizit berechnet, sondern die
berechneten Werte des ersten Quadranten des 2D-Subhologramms werden zur Bestimmung der Werte der drei verbleibenden Quadranten benutzt, und zwar indem die Werte des
Berechnungsergebnisses des ersten Quadranten des 2D-Subhologramms durch eine entsprechende Spiegelung der Werte des ersten Quadranten entlang der Hauptachsen des 2D-Subhologramms erzeugt bzw. kopiert werden. Unter einer Spiegelsymmetrie kann mindestens eine Achsensymmetrie und/oder eine Punktsymmetrie verstanden werden, wobei
BESTÄTIGUNGSKOPIE die Punktsymmetrie sich insbesondere zum Mittelpunkt eines Subhologramms SH beziehen kann.
Doch selbst hierdurch ist der Aufwand immer noch enorm hoch, im Vergleich zur 1 D- Kodierung beispielsweise ist bei einer solchen 2D-Kodierung der Aufwand um einen Faktor 100 und mehr höher, und zwar insbesondere abhängig vom Pitch der Bildelemente
(Pixelpitch, Abstand der Mittelpunkte zweier Bildelemente) des zur Hologrammdarstellung verwendeten räumlichen Lichtmodulators - welcher im Englischen auch mit Spatial Light Modulator (SLM) bezeichnet wird - und der darzustellenden Szenentiefe. Unter dem Pitch ist insbesondere einer Größe zu verstehen, welche sich aus der Größe eines Bildelements (Pixelgröße) und dem jeweiligen Abstand zweier benachbarter Bildelemente (Pixelabstand) des räumlichen Lichtmodulators ergibt.
Im Folgenden wird ein solches Verfahren zur Berechnung eines 2D-Subhologramms nach dem Stand der Technik beschrieben:
Für jedes Bildelement des ersten Quadranten eines 2D-Subhologramms wird die Phase und die Amplitude berechnet, mit welcher das zur Darstellung einer dreidimensionalen Szene verwendete Licht durch den räumlichen Lichtmodulator zu modulieren bzw. zu beeinflussen ist. Die Phase ergibt sich hierbei insbesondere aus Parametern wie der Entfernung bzw. dem Abstand eines darzustellenden Objektpunkts vom räumlichen Lichtmodulator und dem Pitch der Bildelemente (Pixelpitch) (px, py), wobei px den Pitch der Bildelemente in x-Richtung und py den Pitch der Bildelemente in y-Richtung bezeichnet. Die Entfernung eines
darzustellenden Objektpunktes vom räumlichen Lichtmodulator wird im Folgenden mit Focus (F) bezeichnet. Im Anschluss an die Berechnung der polaren Koordinaten Amplitude und Phase wird im Folgenden ein sehr rechenintensiver Schritt durchgeführt, die Transformation der Phase und der Amplitude in den kartesischen Raum mit Real- und Imaginärwerten. Dies ermöglicht erst die Akkumulation, also die Überlagerung, des berechneten 2D- Subhologramms mit anderen 2D-Subhologrammen im Summenhologramm.
Die Fig. 1 gibt zur Berechnung eines 2D-Subhologramms nach dem Stand der Technik sowie zum Berechnungsablauf zur Erstellung des gesamten Hologramms der darzustellenden dreidimensionalen Szene einen kurzen Überblick, wobei neben den oben genannten
Parametern des Weiteren φ der Phasenwert, A der Amplitudenwert des jeweiligen
Bildelementes, λ die Wellenlänges des genutzten Lichts, SHW die Subhologrammweite und SHh die Subhologrammhöhe sowie b die Helligkeit des Objektpunktes (brightness) ist. Die Symmetrieausnutzung ist dadurch gegeben, dass die Position des Bildelements (x, y) quadratisch in die Phasenberechnung eingeht. Die Fig. 2 verdeutlicht dies noch einmal.
Weitere Grundlagen zur Hologrammberechnung mit 2D-Subhologrammen sind bekannt, beispielsweise aus den eingangs genannten Veröffentlichungen, und werden daher hier nicht weiter erläutert.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung sowie Verfahren der eingangs genannten Art anzugeben und weiterzubilden, durch welches die vorgenannten Probleme überwunden werden. Insbesondere soll die Berechnungszeit eines Hologramms zur Darstellung einer dreidimensionalen Szene verkürzt und/oder der Berechnungsaufwand eines solchen Hologramms gegenüber den aus dem Stand der Technik bekannten Verfahren reduziert werden. Darstellung einer dreidimensionalen Szene sei hier im Sinne von
Rekonstruktion einer dreidimensionalen Szene zu lesen.
Die Aufgabe wird erfindungsgemäß durch die Lehre der Patentansprüche 1 , 6, 7, 14,15, 22 sowie 23 sowie durch deren vorteilhaften Ausgestaltungen und Weiterbildungen gemäß weiterer von diesen Ansprüchen abhängigen Ansprüchen gelöst.
Gemäß Anspruch 1 wird die Aufgabe gelöst durch eine Vorrichtung zur Berechnung eines 2D- Subhologramms. Ein solches 2D-Subhologramm wird zur Darstellung eines Objektpunktes einer dreidimensionalen Szene mittels eines holographischen Displays verwendet. 2D- Subhologramme aller Objektpunkte der darzustellenden dreidimensionalen Szene werden benötigt, um hernach durch deren Überlagerung ein Gesamthologramm der darzustellenden dreidimensionalen Szene zu erzeugen, im weiteren vereinfacht Hologramm genannt.
Das holographische Display zur Darstellung eines Objektpunktes einer dreidimensionalen Szene umfasst einen räumlichen Lichtmodulator mit einer Matrix von Bildelementen. Diese Bildelemente werden auch Pixel, Zellen oder aber Pixelzellen genannt. Dabei kann ein
Bildelement auch mehrere Unterbildelemente umfassen. In diesem Fall entspricht das
Bildelement einer Macrozelle. Das zu berechnende 2D-Subhologramm enthält nun komplexe Werte, die Bildelementen des räumlichen Lichtmodulators (SLM) zuordenbar sind, und weist eine Rotationssymmetrie auf, da es nur einen Objektpunkt der dreidimensionalen Szene abbildet. Unter einem komplexen Wert ist in diesem Zusammenhang insbesondere eine komplexe Zahl im mathematischen Sinn zu verstehen. Erfindungsgemäß ist nun die Vorrichtung zur Berechnung eines 2D-Subhologramms zur Darstellung eines Objektpunktes einer dreidimensionalen Szene dadurch gekennzeichnet, dass das 2D-Subhologramm ein halbes 1 D- Subhologramm entlang eines Schnitts durch das 2D-Subhologramm vom Ursprung des 2D- Subhologramms bis zu einem maximalen Radius des 2D-Subhologramms enthält, wobei der Radius jedes Bildelements bestimmt ist und jedes Bildelement des 2D-Subhologramms mindestens einem Bildelement des halben 1 D-Subhologramms mit gleichem oder ähnlichen Radius durch eine elektronische Schaltung fest zugeordnet ist. Dabei ist der maximale Radius der Radius des das 2D-Subhologramm umschließenden Kreises.
Dies ist möglich da, wie oben beschrieben, ein 2D-Subhologramm eines einzelnen
Objektpunktes eine Rotationssymmetrie aufweist. Damit sind jedoch die Amplituden und Phasenwerte von Bildelementen des 2D-Subhologramms, die denselben Abstand zum
Ursprung dieses 2D-Subhologramms haben, also allen Bildelementen gleichen Radius identisch. Die Berechnung eines solchen Bildelementes genügt also, um diese Werte ebenfalls für andere Bildelemente gleichen Radius nutzen zu können.
Um nun Berechnungszeit und -aufwand zur Berechnung eines Hologramms, dass aus der Überlagerung von solchen 2D-Subhologrammen erzeugt werden soll, effektiv zu verkürzen, ist es vorteilhaft, Bildelemente gleichen oder zumindest ähnlichen Radius durch eine elektronische Schaltung einem Bildelement eines halben 1 D-Subhologramms, das mit oben beschriebener Lage vom Ursprung des 2D-Subhologramms bis zu einem maximalen Radius Teil des 2D- Subhologramm ist, mit dem entsprechenden Radius zuzuordnen und die Berechnung nur noch für diese eine Bildelement durchzuführen. Durch die feste Zuordnung durch eine elektronische Schaltung ist damit kein zusätzlicher Schritt der Ermittlung von Radien anderer Bildelemente, deren zusätzlicher Adressierung oder aber ein Hinzuziehen von Lookup-Tables für diesen Schritt nötig. Eine solche elektronische Schaltung ist als digitale Schaltung realisierbar. Es sind jedoch auch analoge Schaltungen einsetzbar.
In einer Ausgestaltung der erfindungsgemäßen Vorrichtung kann dabei jedes Bildelement des 2D-Subhologramms mindestens einem Bildelement des halben 1 D-Subhologramms derart durch eine elektronische Schaltung in der Weise fest zugeordnet sein, dass der Radius des Bildelements des 2D-Subhologramms dem mit einem mit richtungsabhängigem
Streckungsfaktor multiplizierten Radius eines Bildelements des halben 1 D-Subhologramms entspricht. Vorteilhafterweise wird eine solche elektronische Schaltung in Form einer festverdrahteten Matrix realisiert. Dabei ist in einer vorteilhaften Ausführungsform die elektronische Schaltung auf Field
Programmable Gate Arrays (FPGAs, bzw. Anwendungs-Feld programmierbaren Logik-Gatter- Anordnungen ), also einem programmierbaren Schaltkreis, und/oder Application Specific Integrated Circuits (ASICs, bzw. Anwendungsspezifische integrierte Schaltungen) implementiert. Wie oben beschrieben ist nun bekannt, dass bei einer Rotationssymmetrie des 2D-
Subhologramms die Amplituden und Phasenwerte von Bildelementen des 2D-Subhologramms, die denselben Abstand zum Ursprung dieses 2D-Subhologramms haben, also allen
Bildelementen gleichen Radius, identisch sind. Die Anordnung der Bildelemente im räumlichen Lichtmodulator (SLM) in Matrixform, wobei die Bildelemente eine definierte Größe sowie einen definierten Pitch aufweisen, führt jedoch dazu, dass für konkrete Radienwerte der Bildelemente des halben 1 D-Subhologramms Amplituden- und Phasenwerte berechnet werden, jedoch eine Reihe von Bildelementen im 2D-Subhologramm des Objektpunktes enthalten sind, deren Radienwerte von denen des halben 1 D-Subhologramms abweichen. Bei kleinen Abweichungen werden für diese trotzdem die entsprechenden für das halbe 1D-Subhologramm berechneten Werte verwendet.
Bei größeren Abweichungen von Radien von Bildelementen des 2D-Subologramms von den Radien der konkreten Bildelemente des halben 1 D-Subhologramms ist es jedoch vorteilhaft, die benötigten Amplituden- und Phasenwerte durch Nutzung der Werte zweier oder mehrerer Bildelemente des halben 1 D-Subhologramms mit ähnlichen Radien wie der des betreffenden 2D-Subhologramm-Bildelementes zu bestimmen. Prinzipiell kann dies in linearer Form oder aber auch in nichtlinearer, quadratischer oder allgemein in exponentieller, Form erfolgen.
Letzteres ist sinnvoll, da zum Rand eines 2D-Subhologramms hin, also zu größeren Radien, der Quantisierungsfehler zunimmt.
In bevorzugter Ausführungsform enthält die erfindungsgemäße Vorrichtung deshalb in ihrer elektronischen Schaltung Mittel zur Erzeugung von Zwischenwerten durch Verknüpfung zweier oder mehrerer Bildelemente des halben 1 D-Subhologramms sowie zur Zuordnung der entsprechenden Bildelemente des 2D-Subhologamms zu diesen Zwischenwerten.
Um nun, der oben gestellten Aufgabe gemäß, ein Hologramm der gesamten darzustellenden dreidimensionalen Szene zu erzeugen, enthält eine erfindungsgemäße Vorrichtung zur
Berechnung eines solchen Hologramms gemäß Anspruch 6 mindestens eine oben
beschriebene erfindungsgemäße Vorrichtung zur Berechnung eines 2D-Subhologramms eines Objektpunktes dieser dreidimensionalen Szene. Zudem enthält eine erfindungsgemäße
Vorrichtung zur Berechnung eines solchen Hologramms: - Mittel zur Transformation des mit der erfindungsgemäßen Vorrichtung zur Berechnung eines 2D-Subhologramms erzeugten 2D-Subhologramms von polaren zu kartesischen Koordinaten, wie im Übrigen auch von kartesischen in polare Koordinaten. Auch diese können in einer festen Verdrahtung realisiert sein.
- Mittel zur Positionierung des 2D-Subhologramms auf dem räumlichen Lichtmodulator (SLM) in Abhängigkeit von der Lage des Objektpunktes der dreidimensionalen Szene sowie der Position eines Betrachters dieser Szene und
- Mittel zur Überlagerung der jeweiligen 2D-Subhologramme verschiedener Objektpunkte der dazustellenden dreidimensionalen Szene durch Addition der jeweiligen Real- und Imaginärteile derselben Bildelemente.
Des Weiteren wird die oben beschriebene Aufgabe gelöst durch ein entsprechendes Verfahren zur Berechnung eines 2D-Subhologramms zur Darstellung eines Objektpunktes einer dreidimensionalen Szene mittels eines holographischen Displays gemäß dem Anspruch 7, wobei das holographische Display einen räumlichen Lichtmodulator mit einer Matrix von Bildelementen umfasst.
Ein zu berechnendes 2D-Subhologramm enthält dabei komplexe Werte, die Bildelementen des räumlichen Lichtmodulators (SLM) zuordenbar sind. Das erfindungsgemäße Verfahren nutzt zudem eine Rotationssymmetrie des 2D-Subhologramms, um das 2D-Subhologramm in den räumlichen Lichtmodulator (SLM) zu kodieren. Dabei wird jedes Bildelement des 2D-Subhologramms mindestens einem Bildelement eines halben 1 D-Subhologramms mit gleichem oder ähnlichem Radiuswert zugeordnet, wobei das halbe 1 D-Subhologramm entlang eines Schnitts durch das 2D-Subhologramm vom Ursprung des 2D-Subhologramms bis zu einem maximalen Radius des 2D-Subhologramms verläuft, und es werden Werte für Phase und Amplitude für jedes Bildelement eines halben 1 D- Subhologramms berechnet und auf alle jeweils zugeordneten Bildelemente des 2D- Subhologramms übertragen.
Das erfindungsgemäße Verfahren ist dabei dadurch gekennzeichnet, dass die Zuordnung der Bildelemente des 2D-Subhologramms zu den Bildelementen des halben 1 D-Subhologramms fest kodiert mittels einer elektronischen Schaltung realisiert wird. Dies wird in Fig. 5 verdeutlicht, die weiter unten im Detail beschrieben wird.
In einer Ausführungsform des erfindungsgemäßen Verfahrens kann dabei jedes Bildelement des 2D-Subhologramms mindestens einem Bildelement des halben 1 D-Subhologramms derart durch eine elektronische Schaltung fest zugeordnet sein, dass der Radius des
Bildelements des 2D-Subhologramms dem mit einem mit richtungsabhängigem
Streckungsfaktor multiplizierten Radius eines Bildelements des halben 1 D-Subhologramms entspricht. Um eine einfache Weiterverarbeitung des 2D-Subhologramms zur Darstellung eines
Objektpunktes einer dreidimensionalen Szene auf dem Wege zur Darstellung der gesamten Szene zu gewährleisten wird in einer vorteilhaften Ausführung des erfindungsgemäßen
Verfahrens ein komplexwertiges 1 D-Subhologramm mit dem polaren Koordinaten Amplitude und Phase nach seiner Berechnung in ein kartesisches Koordinatensystem transformiert. Dies ist sinnvoll, da eine solche Transformation vor der Überlagerung einzelner 2D-Subhologramme zur Erzeugung eines Hologramms der gesamten dreidimensionalen Szene die
Überlagerungsoperation vereinfacht. Dazu müssen dann nur die jeweiligen Realteile derselben Bildelemente von zu überlagernden 2D-Subhologrammen sowie die jeweiligen Imaginärteile addiert werden. Um dem Problem der Ungleichheit der Radien von 2D-Subhologramm-Bildelementen zu denen des halben 1 D-Subhologramms, und damit der Notwendigkeit von Abweichungen Amplituden- und Phasenwerte der betreffenden Bildelemente von denen der 8ildelemente des halben 1D- Subhologramms mit nächstliegenden Radien zu begegnen, werden in einer vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens, Zwischenwerte durch Verknüpfung mindestens zweier Bildelemente des halben 1 D-Subholorgamms erzeugt und die
entsprechenden Bildelemente des 2D-Subholorgamms diesen Zwischenwerten zugeordnet.
In einer besonderen Ausführungsform des erfindungsgemäßen Verfahrens erfolgt dabei die Erzeugung der Zwischenwerte durch virtuelle Vervielfachung der Anzahl der Bildelemente des halben 1 D-Subhologramms oder aber durch Interpolation der Werte mindestens zweier
Bildelemente des halben Subhologramms.
Um die Berechnung der 2D-Subhologramme weiter zu vereinfachen ist es dabei besonders vorteilhaft, wenn das halbe 1 D-Subhologramm entlang der x-Achse des 2D-Subhologramms oder entlang der y-Achse des 2D-Subhologramms verläuft.
Auch ist es in einer besonderen Ausführungsform des erfindungsgemäßen Verfahrens zur Berechnung eines 2D-Subhologramms für einen Objektpunkt einer dreidimensionalen Szene möglich, zur Lösung der oben gestellten Aufgabe die Rotationssymmetrie des 2D- Subhologramms mit einer Spiegelsymmetrie zu kombinieren. Damit ist es möglich, entweder nur einen Quadrant oder aber sogar nur eine Hälfte eines Quadranten des 2D-Subhologramms mittels des bisher beschriebenen Verfahrens zur Berechnung eines 2D-Subhologramms zu berechnen und dann entweder, nach Berechnung eines Quadranten, die verbleibenden drei Quadranten oder aber, nach Berechnung nur einer Hälfte eines Quadranten, die verbleibende Hälfte des Quadranten sowie die verbleibenden drei Quadranten mittels Spiegelung zu berechnen.
Ein erfindungsgemäßes Verfahren zur Berechnung eines Hologramms zur Darstellung der gesamten dreidimensionalen Szene erzeugt zunächst 2D-Subhologramme für alle
darzustellenden Objektpunkte dieser Szene mittels des beschriebenen Verfahrens zur
Berechnung eines 2D-Subhologramms. Anschließend erhält jedes der Bildelemente eines jeden 2D-Subhologramms entsprechend der Lage des mit dem 2D-Subhologramms darzustellenden Objektpunktes und der Position eines Betrachters dieser Szene ein Offset in x- sowie in y- Richtung. Die so zueinander positionierten 2D-Subhologramme werden schließlich aufaddiert, also überlagert. Konkret bedeutet das die Verschiebung der Phasen- und Amplitudenwerte eines 2D-
Subhologramms, vorteilhafterweise nach deren Transformation in kartesische Koordinaten mit Real- und Imaginärteil, um eine Zahl von n Elementen in x-Richtung und m Elementen in y- Richtung, wobei sich n und m aus der Lage des darzustellenden Objektpunktes und der Position des Betrachters ergibt. Anschließend erfolgt eine Addition dieser Real- und Imaginärteile der entsprechenden Bildelemente aller 2D-Subhologramme.
Des Weiteren trägt ein Verfahren zur Kodierung eines Hologramms einer dreidimensionalen Szene in einen räumlichen Lichtmodulator eines holographischen Displays mittels
Superposition, d.h. Überlagerung, von Subhologrammen einzelner Objektpunkte einer dreidimensionalen Szene, auch Szenepunkte genannt, gemäß Anspruch 15 zur Lösung der oben gestellten Aufgabe bei.
Gemäß eines solchen erfindungsgemäßen Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene in einen in einen räumlichen Lichtmodulator in einer Dimension (1 D- Kodierung) wird ein Subhologramm-Segment einer ersten Hälfte eines Subhologramms mit einer definierten Segmentbreite, also ein Segment mit einer definierten Anzahl von
Speicherelementen, für eine Hologrammzeile berechnet. Dabei sind die Speicherelemente jeweils Bildelementen zuordenbar. Für dieses Subhologramm-Segment der ersten Hälfte sowie für ein Subhologramm-Segment einer zweiten Hälfte des Subhologramms werden Offset- Positionen bestimmt, wobei die Offset-Positionen den jeweiligen Ort innerhalb einer Hologrammzeile, an dem die Subhologramm-Segmente aufaddiert werden, definieren, wobei die Addition bevorzugt komplexwertig erfolgt.
Das Subhologramm-Segment der zweiten Hälfte des Subhologramms wird durch Duplizierung und Spiegelung des Subhologramm-Segments der ersten Hälfte erzeugt.
Anschließend gehen das Subhologramm-Segment der ersten Hälfte und seine Offset-Position in einen Berechnungspfad für die erste Hälfte und das Subhologramm-Segment der zweiten Hälfte und seine Offset-Position in einen Berechnungspfad für die zweite Hälfte des Subhologramms ein, in denen jeweils die Addition der Subhologramm-Segmente in voneinander unabhängigen Hologrammzeilenspeichern stattfindet.
Die unabhängigen Hologrammzeilenspeicher der ersten und der zweiten Subhologrammhälften werden schließlich wieder zusammengeführt.
Erfindungsgemäß werden jedoch die Subhologramm-Segmente vor der Addition entsprechend der ermittelten Offset-Positionen am Hologrammzeilenspeicher ausgerichtet. Dies vereinfacht das dann folgende Additionsverfahren, da sich die Ansteuerung des Hologrammzeilenspeichers vereinfacht, und ermöglicht eine effektivere Nutzung des Hologrammzeilenspeichers.
Dabei ist es für das erfindungsgemäße Verfahren von Vorteil, wenn das Subhologramm- Segment nach der Berechnung vom Polarkoordinatensystem in ein kartesisches
Koordinatensystem transformiert wird. Aufgrund der Ausnutzung von Symmetrieeigenschaften reduziert sich der Aufwand für diese Transformation auf etwa die Hälfte. Gemäß einer vorteilhaften Variante des erfindungsgemäßen Verfahrens erfolgt die Ausrichtung der Subhologramm-Segmente dadurch, dass ein unausgerichtetes Subhologramm-Segment durch Verschiebung um den Differenzwert eines ganzzahligen Vielfachen der Anzahl der Elemente eines Segments und der für dieses Subhologramm-Segment bestimmten Offset- Position innerhalb eines Segments auf zwei benachbarte, am Hologrammzeilenspeicher ausgerichtete Segmente abgebildet wird, und die danach verbleibenden Elemente der beiden benachbarten Segmente mit Null aufgefüllt werden. Die beiden benachbarten ausgerichteten Segmente werden in zwei unabhängigen Hologrammzeilenspeichern aufaddiert, wobei dies in der Regel parallel geschieht.
Vorteilhafterweise erfolgt dabei die Verschiebung des Subhologramm-Segments entweder mittels einer Pipeline mit einer Anzahl von Stufen, die der Anzahl der Elemente eines
Subhologramm-Segments entspricht, wobei in jeder Stufe die Elemente um ein Element verschoben werden bis der ermittelte Differenzwert erreicht ist, und über die verbleibenden Stufen ohne Verschiebung weitergereicht werden. Eine weitere vorteilhafte Variante der Verschiebung des Subhologramm-Segments erfolgt mittels einer festen Logik, bei der die Verschiebung entsprechend des Differenzwertes per ultiplexer ausgewählt wird.
In einer besonderen Ausführungsvariante des erfindungsgemäßen Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene in einen räumlichen Lichtmodulator eines holographischen Displays werden zur Realisierung einer 2D-Kodierung die jeweiligen
Verfahrensschritte, die für eine 1 D-Kodierung beschrieben wurden, entsprechend der Anzahl der genutzten Hologrammzeilen wiederholt werden. Die Wiederholung der jeweiligen
Verfahrensschritte muss dabei nicht nacheinander erfolgen sondern kann vielmehr parallel erfolgen, d.h. eine parallele Kodierung der verschiedenen Hologrammzeilen ist möglich.
In einer bevorzugten Lösung des erfindungsgemäßen Verfahrens zur Kodierung eines
Hologramms wird das Subhologramm-Segment der ersten Hälfte ausgerichtet generiert und in einem unabhängigen Hologrammzeilenspeicher aufaddiert. Diese Lösung wird vor allem für die 1 D-Kodierung, also bei der Erzeugung eines Half-Parallax Hologramms, eingesetzt, ist aber auch für 2D-Kodierung, also die Erzeugung eines Full-Parallax Hologramms, anwendbar.
Dabei ist es insbesondere von Vorteil, wenn im erfindungsgemäßen Verfahren zur Kodierung eines Hologramms das Subhologramm-Segment der zweiten Hälfte des Subhologramms durch Duplizierung und Spiegelung des Subhologramm-Segments der ersten Hälfte erzeugt wird und mit dem im vorherigen Zyklus gespeicherten Subhologramm-Segment verknüpft wird, die Elemente des aktuellen Subhologramm-Segments um den Differenzwert eines ganzzahligen Vielfachen der Anzahl der Elemente eines Segments und der für dieses Subhologramm- Segment bestimmten Offset-Position verschoben werden und das am Speicher ausgerichtete Subhologramm-Segment abgespaltet wird und in einem Hologrammzeilenspeicher aufaddiert wird.
Schlussendlich wird die Aufgabe der vorliegenden Erfindung gelöst durch ein Verfahren zur Kodierung eines Hologramms unter Verwendung von Subhologrammen, bei dem 2D- Subhologramme mittels der erfindungsgemäßen Vorrichtung zur Berechnung von 2D-
Subhologrammen und/oder mittels des erfindungsgemäßen Verfahrens zur Berechnung von 2D- Subhologrammen erzeugt werden.
Die Berechnung und Ausgabe von Hologrammen zur Darstellung auf einem holografischen Display, insbesondere auf Basis der vorgestellten Vorrichtungen und Verfahren, unter
Verwendung fest verdrahteter Schaltungen, wird nachfolgend in Form einer Pipeline zur hardwarebasierten Echtzeit-Berechnung von Hologrammen mit Hilfe von Subhologrammen und direkter Ansteuerung eines holografischen Displays, die hardwarebasiert ist, beschrieben dargestellt. Auch eine solche Pipeline trägt zur Lösung der gestellten Aufgabe bei.
Eine solche Pipeline zeichnet sich dadurch aus, dass Teile der Pipeline oder aber die gesamte Pipeline in Form eines programmierbaren Schaltkreises ausgeführt werden, um nachträglich Funktionseinheiten zu verändern oder neu hinzuzufügen. Eine erfindungsgemäße Pipeline zur Echtzeit-Berechnung von Hologrammen gemäß Anspruch 23 umfasst dabei Mittel zur Berechnung von Subhologrammen und zur direkter Ansteuerung eines holografischen Displays, Sie ist dadurch gekennzeichnet, dass die Pipeline auf der Basis einer oder mehrerer Anwendungs-Feld programmierbarer Logik-Gatter-Anordnungen (FPGA) und/oder einer oder mehrerer anwendungsspezifischer integrierter Schaltungen (ASIC) realisiert ist, und die hier eingesetzten Anwendungs-Feld programmierbaren Logik-Gatter-Anordnungen (FPGA) und/oder Anwendungs-Feld programmierbaren Logik-Gatter-Anordnungen (ASIC) nachträglich konfigurierbar sind, d.h., auch noch während der Laufzeit konfigurierbar sind.
Insbesondere kann eine solche Pipeline eine erfindungsgemäße Vorrichtung zur Berechnung eines 2D-Subholgramms zur Darstellung eines Objektpunktes einer dreidimensionalen Szene enthalten.
Die Pipeline enthält in einer bevorzugten Ausführungsform Funktionseinheiten, die miteinander elektronisch verschaltet sind, wobei die folgenden grundlegenden Funktionen realisiert werden:
Empfang von Objektpunkten zur Beschreibung einer zu rekonstruierenden Szene über ein Schnittstelle,
- Berechnung des/der entsprechenden Hologramm(e) und
Ausgabe des/der Hologramme über eine Schnittstelle zur Darstellung auf einem räumlichen Lichtmodulator (SLM).
Die Funktionseinheiten sind fest im Schaltkreis integriert, aber zur Laufzeit konfigurierbar, also nicht einem spezifischen SLM bzw. holografischen Display zugeordnet. Die Pipeline ist, wie schon beschrieben auf der Basis von FPGA und/oder ASIC realisiert, wobei die eingesetzten FPGA bzw. ASIC zur Laufzeit konfigurierbar sind. Dies bedeutet, dass die ASICs bzw. FPGAs nicht für einen bestimmten Typ von holographischen Display entworfen werden müssen, sondern durch entsprechende Konfiguration bei Inbetriebnahme an Ihre Umgebung (Art des Displays etc.) angepasst werden können. Ggf. können sie nachträglich neu konfigurierbar sein. Dies ermöglicht es, eine solche Pipeline so zu gestalten, dass sowohl 1 D- als auch 2D-Hologramme in Echtzeit berechnet und ausgegeben werden können, und verschiedene Kodierungsarten und Ausgabemodi unterstützt werden können.
In einer bevorzugten Ausgestaltung der Pipeline sind die Auflösungen für Hologramm und Content unabhängig von der eingesetzten Hardware, d.h., die Auflösungen sind damit unabhängig von den eingesetzten FPGA bzw. ASIC. Weiter kann durch eine solche Pipeline mittels hoher Parallelität bei der Verarbeitung eine hohe Rechenleistung bei geringer Taktfrequenz gewährleistet werden. Dies ist wichtig insbesondere im Hinblick auf einen minimalen Stromverbrauch.
In einer bevorzugten Ausführungsform der erfindungsgemäßen Pipeline ist die Skalierbarkeit der Vorrichtung für verschiedene Displaygrößen und/oder Hologrammauflösungen und oder Szenenauflösungen und/oder Displayparameter durch eine variable Aktivierung der
Berechnungspfade gewährleistet. Eine solche Pipeline enthält also Berechnungspfade, die deaktivierbar sind bzw. auch wieder aktivierbar sind. In einer weiteren Ausführungsform der erfindungsgemäßen Pipeline kann die Auslastung der Schaltung maximiert und die benötigten Ressourcen (Chipfläche/Energie) minimiert werden durch die Realisierung dynamischer Subhologrammgrößen.
Weiterhin kann durch die Begrenzung der Pufferung auf wenige Hologrammzeilen die lokale Speicherkapazität im FPGA und oder im ASIC minimiert werden. Dies ist ein entscheidender Vorteil, da Speicher den Energieverbrauch und den Platzbedarf (Chipfläche) in die Höhe treiben.
Die Pipeline ist in einer vorteilhaften Ausführungsform so organisiert, dass sich
Hologrammberechnung und -ausgäbe asynchron zueinander verhalten und mit
unterschiedlicher Framerate ablaufen. Dadurch kann bei kurzzeitigen Engpässen in der
Berechnung trotzdem eine kontinuierliche Ausgabe der Hologramme erfolgen. Ein analoges Verhalten ist zwischen der Eingabe (Content) und der Berechnung implementiert.
Ausgabe und Berechnung können gewollt mit unterschiedlicher Framerate ablaufen, wobei sich die Berechnungsframerate typischerweise an der Content-Framerate orientiert.
Wie schon beschrieben können Teile der Pipeline oder aber auch die gesamte Pipeline in Form eines programmierbaren Schaltkreises ausgeführt werden, um nachträglich Funktionseinheiten zu verändern oder neu hinzuzufügen (z.B durch FPGA bzw. gemischte Form FPGA mit festen Funktionseinheiten). Vorzugsweise erfolgt dies im Bereich Schnittstellen und Kodierung, um nachträglich Anpassungen bzgl. Übertragungsformaten und der Hologrammkodierung vornehmen zu können. Die Funktionen bzw. Funktionseinheiten der Pipeline zur hardwarebasierten Echtzeit- Berechnung von Hologrammen mit Hilfe von Subhologrammen und direkter Ansteuerung eines holografischen Displays lassen sich wie folgt zusammenfassen:
- Entgegennahme von Objektpunkten einer zu rekonstruierenden Szene, ein Objektpunkt enthält Färb- und Positionsinformationen. Dabei wird vorzugsweise eine
videobildbasierende Übertragung über eine digitale elektronische Schnittstelle durchgeführt. Andere Verfahren sind auch denkbar.
( optional) Zwischenspeicherung von Objektpunkten in einem Speicher,
(optional) Auslesen von Objektpunkten aus dem Zwischenspeicher.
- Berechnung von Subhologrammen aus Objektpunkten.
- Akkumulation von Subhologrammen zu einem Summenhologramm.
- Kodierung des Hologramms entsprechend der Arbeitsweise des SLMs.
- (optional) Zwischenspeicherung von Hologrammen (kodiert oder unkodiert) in einem Speicher.
- (optional) Auslesen von Hologrammen (kodiert oder unkodiert) aus dem
Zwischenspeicher.
- Steuerung der Hologrammausgabe entsprechend der Arbeitsweise des SLMs.
- Erzeugung des für die Arbeitsweise des SLMs erforderlichen Bildausgabeformats.
- Ausgabe des fertig berechneten Hologramms im für den SLM erforderlichen
Bildausgabeformat. Vorzugsweise wird eine videobildbasierende Übertragung über eine digitale elektronische Schnittstelle durchgeführt. Andere Verfahren sind auch denkbar. Steuerung weiterer für die holografische Darstellung erforderlicher Vorrichtungen wie Laser oder Vorrichtungen zur Lichtablenkung.
- Konfiguration der Funktionseinheiten beim Start der Pipeline. Dabei werden über eine Schnittstelle Parameter und/oder Programme übertragen, welche die Pipeline bzw. ihre
Funktionseinheiten beim Start initialisieren bzw. konfigurieren.
Es gibt nun verschiedene Möglichkeiten, die Lehre der vorliegenden Erfindung in vorteilhafter Weise auszugestalten und weiterzubilden und/oder die oben beschriebenen Ausführungsformen - soweit möglich - miteinander zu kombinieren. Dazu ist einerseits auf die dem Patentanspruch 1 nachgeordneten Patentansprüche und andererseits auf die nachfolgende Erläuterung der bevorzugten Ausführungsbeispiele der Erfindung anhand der Zeichnungen zu verweisen. In Verbindung mit der Erläuterung der bevorzugten Ausführungsbeispiele der Erfindung anhand der Figuren werden auch im Allgemeinen bevorzugte Ausgestaltungen und Weiterbildungen der Lehre erläutert.
Die Figuren zeigen: Fig. 1 : Den Berechnungsverlauf für ein komplexwertiges Hologramm einer dreidimensionalen Szene gemäß dem Stand der Technik
Fig. 2: Die Spiegelsymmetrie in 2D Subhologrammen gemäß dem Stand der Technik
Fig. 3: Ein Beispiel für die Zuordnung der Bildelemente der 2D-Subhologramm-Matrix zu einem 1 D-Subhologramm
Fig. 4: Die Erzeugung von Zwischenwerten durch Interpolation
Fig. 5: Den Berechnungsablauf für ein komplexwertiges Hologramms einer dreidimensionalen Szene unter Nutzung des erfindungsgemäßen Verfahrens zur Erzeugung von 2D- Subhologrammen von Objektpunkten dieser Szene bei Nutzung eines 1 D-Subhologramms, das entlang der x-Achse des 2D-Subhologramms verläuft.
Fig. 6: Eine holographische Berechnungspipeline ohne Ausnutzung einer Symmetrie nach dem Stand der Technik
Fig. 7: Eine holographische Berechnungspipeline für ein Verfahren zur Kodierung eines Hologramms einer dreidimensionalen Szene unter Nutzung einer Symmetrie mittels Spiegelung und Ausrichtung (erste Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene)
Fig. 8: Eine holographische Pipeline mit Symmetrie in einer von der Reihenfolge unabhängigen Variante
Fig. 9: Eine holographische Berechnungspipeline für ein Verfahren zur Kodierung eines Hologramms einer dreidimensionalen Szene unter Nutzung einer Symmetrie mittels Spiegelung und Ausrichtung, aber in einer Variante, die ein Alignment des ungespiegelten Subhologramm- Segments unnötig macht (zweite Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene).
Fig. 10: Eine holographische Pipeline mit Symmetrie in einer von der Reihenfolge abhängigen Variante
Fig. 11 : Eine Pipeline zur hardwarebasierten Echtzeit-Berechnung von Hologrammen mit Hilfe von Subhologrammen und direkter Ansteuerung eines holografischen Displays. Bei der vorliegenden Erfindung wird für die Vorrichtung und das Verfahren zur Berechnung von 2D-Subhologrammen 2D-SH und mit diesen für die Berechnung von Hologrammen, wie oben beschrieben, eine Rotationssymmetrie ausgenutzt. Die Ausnutzung der Spiegelsymmetrie kann entfallen. Da die im Stand der Technik beschriebene Phasenberechnung grundsätzlich auf eine Berechnung von Phasenwerten hinausläuft, welche die Abbildungsfunktion einer Linse mit einem Fokus F beschreibt bzw. approximiert, wird mit den Funktionsparametern x und y ein Radius R beschrieben, wobei für alle x und y die den identischen Radius R erzeugen, die Phase d.h. der komplexe Wert identisch ist. R ergibt sich aus x und y mit der Vorschrift: R2 = x2 + (S*y)2, mit S = Py / px. Die Skalierung mit dem Parameter S dient zur korrekte Berücksichtigung des vertikalen Pitches der Bildelemente BE bei der Radiusberechnung bei rechteckigen
Bildelementen BE, für die gilt px != Py. Die neue Vorschrift zur Berechnung der Phase lautet nun φ = (π * R2 *px 2) / (λ* F) + φθ. Der komplexe Wert ergibt sich aus Phase φ und Amplitude A.
Unter einem komplexen Wert ist in diesem Zusammenhang insbesondere eine komplexe Zahl im mathematischen Sinn zu verstehen. Unter einer Spiegelsymmetrie kann mindestens eine Achsensymmetrie und/oder eine Punktsymmetrie verstanden werden, wobei die
Punktsymmetrie sich insbesondere zum Mittelpunkt eines Subhologramms SH beziehen kann.
Somit kann nun für jedes Bildelement BE im ersten Quadranten oder aber auch für alle anderen Quadranten der dazugehörige Radius bestimmt werden. Durch Berechnung eines Phasenprofils bzw. eines Schnitts - beispielsweise entlang der x-Achse oder entlang einer Diagonalen - erhält man einen Funktionsverlauf, welcher als eine Art Look-Up Tabelle aufgefasst und/oder als eine Look-Up Tabelle verwendet werden kann. Damit kann man nun für jedes Bildelement den komplexen Wert bestimmen, indem der Radius als Argument für die Look-Up Tabelle dient.
Die Ausnutzung eines solchen Verfahrens ist allerdings sehr speicherintensiv, da hier nur begrenzt parallel gearbeitet werden kann. Zugriffe auf eine Look-Up Tabelle erfolgen
grundsätzlich sequentiell, da Speicherbausteine prinzipbedingt nur sequentiell Daten liefern. D.h. eine derartige Implementierung mittels eines Zugriffs auf eine Look-up-Tabelle auf einem
Computersystem oder aber auf einem FPGA (Field Programmable Gate Array) oder einem
ASIC (Application Specific Integrated Circuit) ist insbesondere durch die Speicherbandbreite des Datenzugriffs begrenzt. Selbst eine Vervielfachung der Zahl der Speicherbausteine, um mehrere
Zugriffe parallel abzuarbeiten, ist nur bedingt sinnvoll, da dies mit enormem
Ressourcenverbrauch einhergeht.
Dieser Aspekt wird erfindungsgemäß durch eine spezielle elektronische, bevorzugterweise digitale Schaltung gelöst, welche insbesondere auf FPGAs und ASICs anwendbar ist. Ganz allgemein kann jedoch eine beliebig geeignete Rechnerhardware hierzu eingesetzt werden.
Anstatt die Rotationssymmetrie durchweg live per Look-Up Table sequentiell zu berechnen bzw. anzuwenden, wird als spezielle digitale Schaltung eine festverdrahtete Matrix geschaffen, welche jedes Bildelement BE eines 2D-Subhologramms 2D-SH mit mindestens einem bestimmten Bildelement BE in einem halben 1 D-Subhologramm 1 D-SH elektrisch verbindet. Dies wird in Fig. 3 verdeutlicht, die ein Beispiel für die Zuordnung der Bildelemente der 2D- Subhologramm-Matrix 2DSHM zu einem 1 D-Subhologramm 1 D-SH im physischen wie auch im verfahrensgemäßen Sinne zeigt. Hierin sind folgende Verfahrensschritte aufgezeigt:
- die 1 D Subhologramm-Berechnung und Transformation in den kartesischen Raum, SHBT,
- die 2D Subhologramm-Überlagerung, 2DSHSP.
Zudem sind folgende Vorrichtungsmerkmale dargestellt:
- eine 1 D-Subhologramm-Hälfte bestehend aus mehreren Bildelementen für verschiedene Radien, wobei jedes Bildelement einen komplexen Wert speichert, H1 DSH.
- eine 2D-Subhologramm Matrix, deren Bildelemente mit den entsprechenden Bildelementen des halben 1 D-Subhologramms 1 D-SH direkt verbunden sind. 2DSHM,
- die direkte elektronische Verdrahtung des Registers eines Bildelementes im halben 1 D- Subhologramm mit allen relevanten Bildelementen im 2D-Subhologramm, DEV. Dies erfolgt für alle anderen Zellen analog. Im ersten Schritt wird ein 1 D-Subhologramm 1 D-SH halber Größe berechnet. Das Ergebnis ist eine größere Anzahl komplexer Werte k bestehend aus jeweils Imaginärwert (bzw. Imaginärteil) und Realwert (bzw. auch Realteil genannt). Jeder komplexer Wert wird nun in zwei Registern, eines für Real-, eines für Imaginärwert, zwischengespeichert. Ein Register ist eine digitalelektronische Schaltung zur Speicherung von Zahlenwerten in digitalen Schaltungen. Es gibt also k*2 Register in einem 1 D-Subhologramm 1 D-SH mit einer Anzahl von n Bildelementen BE. Des Weiteren existiert eine Matrix aus A' * B' Bildelementen BE jeweils bestehend aus 2
Registern - diese repräsentiert ein 2D-Subhologramm 2D-SH. Einer bestimmten Anzahl dieser Bildelemente BE im 2D-Subhologramm 2D-SH wurde das geeignetste Bildelement BE im 1 D- Subhologramm 1 D-SH zugeordnet. Die Zuordnung erfolgte offline. Diese Bildelemente BE werden nun verbunden, indem eine elektrische, fest installierte, parallele, kontinuierliche und insbesondere vollständige Datenübertragung von den beiden Registern im 1 D-Subhologramm 1 D-SH zu den laut Zuordnung bestimmten Registern im 2D-Subhologramm 2D-SH erfolgt. Das bedeutet, immer wenn sich ein Wert in einem Register im 1 D-Subhologramm 1 D-SH ändert, ändern sich die entsprechenden Register im 2D-Subhologramm 2D-SH ebenfalls automatisch. Üblicherweise erfolgt diese Übertragung taktflankengesteuert. Es sind aber auch andere Übertragungsarten denkbar. Genauso ist statt einer digitalen Übertragung eine elektrisch analoge Speicherung und Übertragung denkbar.
Die Auswahl, welche Bildelemente BE des 2D-Subhologramms 2D-SH mit welchen
Bildelementen BE des halben 1 D-Subhologramms 1 D-SH verbunden werden, erfolgt über den Radius. Es wird immer das Bildelement BE des 1 D-Subhologramms 1 D-SH gewählt, dessen Radius R am nächsten dem Radius R' des Bildelements BE des 2D-Subhologramms 2D-SH entspricht, und dessen komplexer Wert dann für das Bildelement BE des 2D-Subhologramms 2D-SH verwendet wird, siehe dazu Fig. 3. Hier wird für das Bildelement BE eines 2D- Subhologramms 2D-SH mit dem Radius R' = 4,47, das Bildelement BE des halben 1 D- Subhologramms 1 D-SH mit dem am nächsten liegende Wert des Radius R=4,5 gewählt.
Analog erfolgt die Zuordnung für alle anderen Zellen. Anstatt den am nächsten liegenden Radius R zu wählen sind aber auch noch beliebige andere Vorschriften denkbar.
Hierbei kann es also erforderlich sein, einen gewissen Quantisierungsfehler in Kauf zu nehmen, da die Bildelemente BE nur für eine begrenzte Anzahl Radien R berechnet werden. Ein großer Leistungsgewinn besteht nun darin, dass nur ein Bruchteil eines zu berechnenden 2D-Subhologramms 2D-SH in Form des halben 1 D-Subhologramms 1 D-SH berechnet werden muss. Hierbei erfolgt in einer bevorzugten Variante der erfindungsgemäßen Vorrichtung und des erfindungsgemäßen Verfahrens die sehr rechenintensive Transformation in den kartesischen Raum. Ziel ist es zudem, einen Weg zu finden, den Aufwand für die Hologrammberechnung mit 2D- Subhologrammen 2D-SH zu reduzieren. Ein Weg dahin ist es eine Vorrichtung mit einer Hardwarearchitektur zur Berechnung von Hologrammdaten zu realisieren. Dies sollte vorzugsweise in Echtzeit stattfinden, insbesondere, für Endgeräte auf der Basis von FPGA und/oder ASIC, welche sich vor allem durch einen angemessenen bzw. geringen
Stromverbrauch auszeichnen. Diese würden z.B. einen Einsatz im Mobilbereich ermöglichen und könnten mit realistischem Aufwand und überschaubaren Kosten hergestellt werden.
Die Anzahl der für die elektrische Schaltung der Vorrichtung verwendeten Transistoren beeinflusst einerseits die Kosten der Herstellung und andererseits deren Stromverbrauch. D.h. je größer die elektrische Schaltung ist, desto mehr Transistoren sind vorzusehen und umso aufwändiger und kostenintensiver sind deren Herstellung und Entwicklung. Dies ist vor allem für mobile Endgeräte mit begrenztem Energievorrat sowie eingeschränkter Wärmeabführung essentiell. Die Vorteile einer 2D-Kodierung, d.h. einer Kodierung mit 2D-Subhologrammen 2D-SH, gegenüber einer 1 D-Kodierung, also einer Kodierung mit 1D-Subhologrammen 1 D-SH, sind bekannt und wurden in den eingangs erwähnten Veröffentlichungen beschrieben. Als wichtige Merkmale sind insbesondere zu nennen: - die Eliminierung des Astigmatismus bei der holographischen Darstellung bzw. der
Rekonstruktion einzelner Objektpunkte bei großer Szenentiefe (wobei ein darzustellendes Objekt in einzelne Objektpunkte zerlegbar ist) und
- eine volle holografische Parallaxe (2D) bei der holographischen Visualisierung.
Zur Reduktion eines Quantisierungsfehlers kann man die Anzahl k der Bildelemente BE im halben 1 D-Subhologramm 1D-SH erhöhen, also die Schrittweite zum Inkrement des Radius R reduzieren, siehe hierzu die Fig. 3 mit einer Verdopplung der Anzahl k der Bildeelemente BE, also halber Radius-Schrittweite). Dadurch ist eine feinere Zuordnung von Bildelementen des 2D- Subhologramms 2D-SH zu Bildelementen des halben 1D-Subhologramms 1 D-SH möglich. Hierbei kann eine lineare Steigerung oder eine beliebige andere Steigerungsfunktion verwendet werden. Da zum Rand des 2D-Subhologramms 2D-SH hin der Quantisierungsfehler zunimmt, ist ein nichtlinearer (z.B. quadratischer) Anstieg des Radius R entlang des halben 1D- Subhologramms 1 D-SH sinnvoll, d.h. im Randbereich ist die Auflösung deutlich höher als im Bereich des ersten Bildelements mit dem Radius 0. Im Gegensatz dazu bewirkt ein linearer Anstieg weniger effektiv eine Erhöhung der Genauigkeit im Randbereich, aber dafür besteht der Vorteil, dass die Berechnung des 1D-Subhologramms 1D-SH deutlich vereinfacht werden kann, also auch effektiver implementiert werden kann.
In der Hologrammrekonstruktion führt dies bei linearer Steigerung dazu, dass im Zentrum des Viewing Windows, also des Betrachterfensters, d.h. des„Fensters" in dem die Rekonstruktion der dreidimensionalen Szene für den Betrachter sichtbar ist, siehe hierzu z.B. WO 2006/066919 A1 , die Genauigkeit der Rekonstruktion sehr gut ist, je nach gewählter Auflösung aber zum
Rand hin abnimmt, da hier die Quantisierungsfehler zunehmen und diese sich insbesondere am Rand des Viewing Windows bemerkbar machen. Für eine nichtlineare Kurve, kann im
Gegensatz dazu eine gleichbleibende Qualität erreicht werden, d.h. es kann ein konstanter Fehler - im Wesentlichen im gesamten Bereich des Viewing Windows - erreicht werden. Eine weitere Möglichkeit zur Verringerung der Quantisierungsfehler besteht darin,
Interpolationen zwischen benachbarten Bildelementen BE im halben 1 D-Subhologramm 1 D-SH durchzuführen, um somit mit wenig Zusatzaufwand weitere Zwischenwerte in zusätzlichen Registern zu erzeugen. Dies ist in der Fig. 4 dargestellt. Hierin wird insbesondere gezeigt, - wie aus einer 1 D-Subhologramm-Hälfte, bestehend aus mehreren Bildelementen für verschiedene Radien, wobei jedes Bildelement einen komplexen Wert speichert, H1 DSH, - Zwischenwerte aus zwei oder mehreren Bildelementen generiert werden, ZWG,
- und somit ein erweitertes 1 D-Subhologramm mit zusätzlich erzeugten Zwischenwerten, E1 DSH, entsteht.
Als einfachstes Beispiel sei eine lineare Interpolation zweier benachbarter Bildelemente BE mit den Radien
Figure imgf000021_0001
und R2=5 genannt, um einen Zwischenwert mit zu generieren. Die Berechnungsvorschrift wäre Rei2 = (Re1 + Re2)/2 und lm12 = (lmt + lm2)/2. Hierfür ist in einer digitalen Schaltung nur eine einzige Addition nötig, da die Division durch 2 durch Abschneiden der letzten Bits ohne Aufwand erfolgen kann. Neben einer linearen Interpolation ist auch eine quadratische oder eine logarithmische bzw. eine exponentielle Interpolation möglich.
Die Entscheidung, welches Verfahren konkret angewandt wird, und die Festlegung der der Berechnung und des„Kopierschritts" zugrunde zu legenden Auflösung muss je nach
Anwendungsfall und Fehlertoleranz des holographischen Systems getroffen werden.
Die 2D-Subhologramm-Matrix und ihre festen Verknüpfung mit dem halben 1 D-Subhologramm- Register werden anhand der maximal auftretenden Subhologrammgröße offline bzw. nicht in Echtzeit bestimmt und anschließend in eine elektrische digitale Schaltung synthetisiert, welche in einem FPGA / ASIC implementiert werden kann. Das neue Verfahren wird nun in den bisherigen Ablauf integriert. Das vorgeschaltetete Modul zur Berechnung eines halben 1 D-Subhologramms 1 D-SH generiert nun die Daten,
insbesondere die komplexen Werte im kartesischen Raum, welche in das oben genannte 1 D- Subhologramm-Register transferiert werden. Sofort bzw., je nach Implementierung, wenige Taktzyklen später steht dann das komplette 2D-Subhologramm 2D-SH zur Verfügung. In einem bzw. weiteren Verarbeitungsschritten erfolgt nun die bekannte Akkumulation - also die
Aufaddierung der berechneten bzw. bestimmten 2D-Subhologramme - in das
Summenhologramm.
Trotz der fest implementierten Matrix ermöglicht das Verfahren die Nutzung von dynamischen Subhologrammgrößen, d.h., die Subhologrammgröße variiert je nach Abstand des zugehörigen Objektpunktes zur Hologrammebene bzw. ist abhängig von der Position des darzustellenden Objektpunkts, der aktuellen Position des Viewing Windows, welches in unmittelbarer Nähe eines Betrachterauges positioniert ist, und der Position des räumlichen Lichtmodulators SLM, indem nur der relevante Teil des halben 1 D-Subhologramms 1 D-SH berechnet wird und auch nur der entsprechende Ausschnitt des 2D-Subhologramms 2D-SH weiterverarbeitet wird. Dies ermöglicht die Ausbalancierung der Rechenleistung auf dreidimensionale Szenen mit sehr hoher und gleichzeitig anderer mit geringer Komplexität, oder aber es ermöglicht es
Stromsparmechanismen bei weniger komplexen dreidimensionalen Szenen einzusetzen.
Das Verfahren kann auf räumliche Lichtmodulatoren SLMs mit quadratischen oder mit rechteckigen Bildelement-Strukturen angewendet werden. Das halbe 1 D-Subhologramm 1 D-SH wird hierbei entlang der höher aufgelösten Richtung berechnet, ggf. mit zusätzlichen
Bildelementen also kleineren Radius-Inkrements. Somit stehen genügend Zwischenwerte zur Verfügung, um die niedriger aufgelöste Richtung zu bestimmen. Grundsätzlich ist auch denkbar, andere Subhologrammgeometrien zu verwenden, z.B. eine Linien-, Kreis oder Polygonform.
Das Verfahren kann auch verwendet werden, um eine Rotationssymmetrie und eine
Spiegelsymmetrie zu kombinieren. Hierbei wird z.B. nur der erste Quadrant des 2D- Subhologramms 2D-SH oder gar nur dessen Hälfte, wobei die Halbierung des ersten
Quadranten entlang der Diagonalen erfolgt, mit dem vorgestellten Verfahren bestimmt. Per Spiegelsymmetrie können dann die restlichen drei Quadranten ermittelt werden. Dies ist vor allem dann sinnvoll, wenn die Akkumulation des 2D-Subhologramms 2D-SH an einem anderen Ort innerhalb des Berechnungssystems erfolgen soll und nur eine limitierte Bandbreite zur Übertragung besteht. Der Vorteil des erfindungsgemäßen Verfahrens und der erfindungsgemäßen Vorrichtung ist die deutliche Vereinfachung der Berechnung von 2D-Subhologrammen 2D-SH in FPGAs oder ASICs. Die Größenordnung zur Verringerung der benötigten Rechenleistung liegt etwa bei einem Faktor 100; abhängig vom Display- bzw. SLM-Typ kann dies mehr oder weniger sein. Der Berechnungsaufwand für ein vollständiges 2D-Hologramm zur Darstellung der
dreidimensionalen Szene, also ein sogenanntes 2D-Summenhologramm, sinkt somit im
Wesentlichen auf das Niveau von einer 1 D-Hologrammberechnung, allerdings mit einem entsprechenden Mehraufwand im Bereich der Akkumulation und Hologramm-Speicherung, da deutlich höhere Datenmengen verarbeitet werden müssen. Allerdings werden durch den Wegfall der Berechnungseinheiten für diese großen Datenmengen entsprechende Ressourcen eingespart: Vor allem der Schritt der Transformation in den kartesischen Raum (mit sin/cos) fällt an dieser Stelle komplett weg.
Nachteilig könnte sein, dass durch Quantisierungseffekte die Genauigkeit reduziert wird. Durch entsprechende Anpassung der Samplingrate mittels Erhöhung der Anzahl der Bildelemente BE im halben 1 D-Subhologramm 1 D-SH für das zu berechnende 1 D-Subhologramm 1 D-SH kann dies aber entsprechend der Anforderungen mit vertretbarem Mehraufwand kompensiert werden.
Die Fig. 5 zeigt abschließend den Berechnungsablauf für ein komplexwertiges Hologramm zur Darstellung einer dreidimensionalen Szene unter Nutzung des erfindungsgemäßen Verfahrens zur Erzeugung von 2D-Subhologrammen von Objektpunkten dieser Szene bei Nutzung eines 1 D-Subhologramms, das entlang der x-Achse des 2D-Subhologramms verläuft. Dieser Ablauf stellt, im Vergleich zu einem Berechnungsablauf nach dem Stand der Technik, siehe Fig. , eine erhebliche Vereinfachung des Verfahrens dar, da die ersten, aufwändigen Schritte auf das halbe 1 D-Subhologramm reduziert sind, während sie nach dem Stand der Technik stets für das gesamte 2D-Subhologramm erfolgen.
An dieser Stelle sollen nun weitere Hardwareaspekte beschrieben werden, die hilfreich bei Lösung der oben gestellten Aufgabe der Erfindung sind:
Ausgangspunkt sei eine holographische Berechnungspipeline ohne Ausnutzung einer
Symmetrie nach dem Stand der Technik, wie sie in der Fig. 6 gezeigt wird. Der Subhologramm-Segment-Generator SHSG generiert hier ein Subhologramm-Segment mit komplexen Werten für Bildelemente im Polarkoordinatensystem SHP. Es folgt eine Subhologramm-Segment Transformation SHST, aus der ein transformiertes Subhologramm- Segment mit komplexen Werten für Bildelemente im kartesischen Koordinatensystem SHK resultiert. Anschließend erfolgt die Subhologramm-Segment Addition SHSA unter Zuhilfenahme des Hologrammzeilenspeichers HZS. Die resultierende Hologrammzeile HZ bestehend aus mehreren zusammenaddierten Subhologrammen (Superposition von Subhologrammen)
Da keinerlei Symmetrien genutzt werden, erfolgt die Berechnung und Superposition für alle Bildelemente des Subhologramms, was zu einem hohen Rechenaufwand führt. Bei der Entwicklung von Schaltungen für Anwendungsspezifische integrierte Schaltungen ASICs und Anwendungs-Feld programmierbaren Logik-Gatter-Anordnungen FPGAs gibt es viele Herausforderungen und Richtlinien um Berechnungsabläufe effizient und platzsparend zu implementieren. Wichtige Ziele sind ein geringer Platzbedarf, da die Kosten umso geringer sind, je weniger Transistoren enthalten sind, und eine relativ hohe Frequenz, denn je höher die Frequenz ist, desto weniger Transistoren werden benötigt, da jeder Transistor mehr Arbeit in weniger Zeit erledigen kann - dies je nach Einsatzgebiet und Strombedarf: je höher die Frequenz desto höher der Stromverbrauch.
In Anwendungsspezifische integrierte Schaltungen ASICs und Anwendungs-Feld
programmierbaren Logik-Gatter-Anordnungen FPGAs läuft im Gegensatz zu herkömmlichen Computersystemen kein lineares Programm ab, sondern es wird ein fixes Schaltnetzwerk erzeugt, an welches Daten an den Eingang angelegt werden und welches nach endlicher Zeit Daten wieder ausgibt. Durch logische Operationen innerhalb der festen Schaltung werden die Daten verarbeitet, verändert, verknüpft usw. Es können beispielsweise arithmetische
Operationen (z.B. Addition, Subtraktion, Multiplikation, Vergleiche) oder Speicherzellen bzw. - elemente (Register, Laiches oder adressierbare Speicherblöcke) erzeugt werden. Binäre und logische Verknüpfungen, d.h. Verknüpfungen mit und, oder usw. können damit ausgeführt werden. Der Zugriff auf Speicherblöcke im Anwendungs-Feld programmierbaren Logik-Gatter-Anordnungen FPGA darf nur mit anhand der Speicheradressen ausgerichteten Daten erfolgen - im Gegensatz zu Computern, wo durch den Prozessor automatisch die Ausrichtung der Daten erfolgt, was allerdings auch mit Verzögerungen verbunden ist. Im
Allgemeinen sind prozessorbasierte Computerarchitekturen (mit von-Neumann-Prinzip) im Vergleich zu Application Specific Integrated Circuits ASICs und Field Programmable Gate Arrays FPGAs sehr langsam, da die prozessorbasierten Computerarchitekturen quasisequentiell arbeiten.
Ein wichtiges Merkmal von Schaltungen ist insbesondere die Vereinfachung von
Berechnungsabläufen in möglichst viele einfache und lineare Abläufe mit möglichst wenigen Datenabhängigkeiten, also festen Pfaden um hohe Frequenzen zu erreichen,. Die
Parallelisierung von Berechnungsabläufen ermöglicht insgesamt einen hohen Durchsatz.
Idealerweise sollten vor allem bildbasierte Berechnungen, also auch Holografie, die Daten in der Reihenfolge abarbeiten, wie sie ankommen, da eine Zwischenspeicherung, insbesondere bei großen Datenmengen, oft einen enormen Flaschenhals darstellt.
Die oben angesprochene Ausnutzung der Symmetrie bei der Generierung von
Subhologrammen SH ist in der Theorie bzw. auf einem Computersystem mit sequentieller Abarbeitung und beliebigem sequentiellem Speicherzugriff relativ einfach zu formulieren und zu implementieren. Die Umsetzung in einem fixen, linear und parallel arbeitenden System ist dagegen kompliziert. Im Folgenden wird dies für 1 D-Subhologramme erläutert. Da das
Verfahren prinzipiell auch für 2D-Subhologramme anwendbar ist, indem man die
Verfahrensschritte entsprechnd der Anzahl der genutzten Hologrammzeilen wiederholt, wird im Folgenden nur von Subhologrammen gesprochen. Die Motivation liegt in der Einsparung der Berechnung einer der beiden Subhologramm-Hälften - es müsste also nur eine Hälfte eines Subhologramms SH berechnet werden. Dies macht sich vor allem bei der Transformation d.h. der Umwandlung der Werte der den Bildelementen des Subhologramms SH zugeordneten Speicherelementen aus der Polar- in die Kartesische Darstellung bemerkbar. Für diesen Schaltungsteil ist der Platzbedarf am höchsten.
Bei der Subhologramm-Berechnung für ASICs bzw. FPGAs werden mehrere komplexe Werte von nebeneinanderliegenden Bildelemente des Subhologramms parallel berechnet - sog.
Subhologramm-Segmente, z.B. mit einer Segmentbreite SB = 16. Ein Subhologramm-Segment enthält also jeweils einen komplexen Wert (Phase bzw. Betrag oder Realteil bzw. Imaginärteil) pro Speicherelement, zugeordnet zu den Bildelementen eines Subhologramms SH.
Das Problem liegt nun darin, die generierten Subhologramm-Segmente zu duplizieren, sie zu spiegeln, sowie an der Segmentbreite, die der Speicherbreite entspricht (hier z.B. 16
Speicherelemente) auszurichten (das sogenannte Alignment) und in lokale
Hologrammzeilenspeicher zu addieren. Dies sollte möglichst platzsparend und/oder
ressourcenschonend erfolgen, um deutlich besser als die normale Ausführung ohne
Berücksichtigung der Symmetrie zu sein. Bei der Variante ohne Symmetrie ist kein zusätzliches Alignment erforderlich, da die Subhologramm-Segmente hier bereits bei der Generierung korrekt ausgerichtet werden können.
Das generierte Subhologramm-Segment der ersten Hälfte wird berechnet und anschließend von polaren nach kartesischen Koordinaten transformiert. Bei der Berechnung werden zwei Offset- Positionen bestimmt, eine für das Subhologramm-Segment der einen Hälfte und eine für das später zu spiegelnde Subhologramm-Segment der anderen Hälfte. Die Offset-Positionen bestimmen den Ort bzw. die Speicheradresse innerhalb der Hologrammzeile, an welchen die Segmente komplexwertig aufaddiert werden, wobei die Speicheradresse, also das
Speicherelement, wiederum einem konkreten Bildelement BE zuordenbar ist, eine solche Zuordnung jedoch nicht fest erfolgt.
Nach der Transformation z.B. per Cordic-Algorithmus, einem Sinus-Cosinus-Algorithmus im FPGA, erfolgt eine Duplizierung des Subhologramm-Segments in einen zweiten
Berechnungspfad. In diesem Schritt erfolgt gleichzeitig die Spiegelung der Speicherelemente bezüglich ihrer Anordnung innerhalb des Segments. Das bedeutet, Speicherelement 0 wird (bei 16 Speicherelementen) zu Speicherelement 15, 1 zu 14, 2 zu 13 usw.
Dies wird in der Fig. 7 dargestellt, die eine erste Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene aufzeigt, nämlich eine
holographische Berechnungspipeline für ein Verfahren zur Kodierung eines Hologramms einer dreidimensionalen Szene unter Nutzung einer Symmetrie mittels Spiegelung und Ausrichtung.
Darin sind folgende Schritte dargestellt:
- Die Subhologramm-Segment-Transformation SHST,
- die Spiegelung des eingehenden Subhologramm-Segments SHSP, die zum gespiegelten Subhologramm-Segment G1 DSH in einem zweiten Berechnungspfad führt,
- die Vergrößerung des Subhologramm-Segments auf doppelte Breite SHVGR in beiden Berechnungspfaden, gefolgt jeweils von der
- Verschiebung des Subhologramm-Segments um N' bzw. N" Elemente, entweder stufenweise, d.h. in NT bzw. N" Schritten, oder sofort mit Hilfe eines Multiplexers SHVSCH,
- die Trennung des doppelt breiten Subhologramm-Segments in zwei am Speicher ausgerichtete Segmente SHTR, und im Ergebnis
- das am Speicher ausgerichtete Subhologramm-Segment A1 DSH.
In dieser ersten Lösungsvariante enthalten nun also beide Berechnungspfade jeweils ein Subhologramm-Segment, welche beide in die aktuelle Hologrammzeile aufaddiert werden müssen. Damit dies erfolgen kann, müssen beide Segmente am Hologrammzeilenspeicher ausgerichtet werden, was Alignment genannt wird. Hierzu erfolgt jeweils eine Abbildung eines unausgerichteten Subhologramm-Segments auf zwei benachbarte ausgerichtete
Subhologramm-Segmente. Dies geschieht folgendermaßen: Ein Subhologramm-Segment wird auf die doppelte Breite vergrößert (hier am Beispiel von 16 auf 32 Elemente mit komplexwertige Inhalt), wobei die oberen 16 Speicherelemente mit Null aufgefüllt werden. Die 16
Speicherelemente werden nun um N' bzw N" Speicherelemente innerhalb des verdoppelten Subhologramm-Segments verschoben. N' bzw. N" ergibt sich aus der Offsetposition des
Bildelementes BE des Subhologramms SH- und der Anzahl der Bild- bzw. Speicherelemente pro Subhologramm-Segment. Im beschriebenen Beispiel beträgt die Anzahl N' = 13 und N" = 5. Im Anschluss erfolgt eine Teilung wieder in zwei Subhologramm-Segmente, die nun beide ausgerichtet sind, wie ebenfalls in der Fig. 7 für die erste Lösungsvariante aufgezeigt. Die Verschiebung um N' bzw. N" Speicherelemente kann wiederum auf zwei verschiedene Arten erfolgen. Erstens kann eine Pipeline mit einer Anzahl Stufen entsprechend der
Segmentbreite implementiert werden, im hier beschriebenen Beispiel wären dies 16, welche in jeder Stufe die Speicherelemente um ein Speicherelement des Hologrammzeilenspeichers verschiebt oder aber ohne Verschiebung weiterreicht. Die letzte Stufe enthält dann das
Ergebnis. In einer zweiten Variante der Verschiebung sind alle möglichen Verschiebungen in Form einer festen Logik definiert, im beschriebenen Beispiel wären dies wiederum 16
Verschiebungsmöglichkeiten. Die aktuelle Verschiebung N' nzw. N" wird per Multiplexer ausgewählt und durchgeführt.
Jetzt, da alle Subhologramm-Segmente ausgerichtet sind, kann die Addition in die
Hologrammzeile erfolgen. Da sich die Datenmenge vervierfacht hat, muss auch die vierfache Datenmenge verarbeitet, d.h. addiert werden. Daher werden vier Hologrammzeilen- Speicherblöcke benötigt, welche die vier Subhologramm-Segmente parallel in vier unabhängige Hologrammzeilen addieren. Da pro Berechnungspfad immer nur zwei benachbarte
Subhologramm-Segmente eintreffen, bedeutet dies, dass zu einem Zeitpunkt immer nur ein gerades und ein ungerades Subhologramm-Segment eintreffen. D.h., anstelle von zwei vollen Hologrammzeilenspeichern reichen zwei halb so große Hologrammzeilenspeicher aus, der erste speichert nur die geraden Subhologramm-Segmente, der andere die ungeraden.
In einem finalen Schritt werden nach Fertigstellung der Hologrammzeile die vier Teilbereiche in den unabhängigen Hologrammzeilenspeichern zusammengeführt, also aufaddiert. Die entsprechenden Schritte hierzu werden in der Fig. 8 dargestellt, die eine holographische Pipeline mit Symmetrie in einer von der Reihenfolge der eingehenden Subhologramm- Segmente unabhängigen Variante zeigt:
Ein Subhologramm-Segment-Generator SHSG generiert zunächst ein Subhologramm- Segment mit Bildelementen, d.h., mit komplexen Werten für die Bildelemente, im
Polarkoordinatensystem SHP. Dieses wird durch die Subhologramm-Segment-
Transformation SHST in ein transformiertes Subhologramm-Segment mit Bildelementen im Kartesischen Koordinatensystem SHK überführt.
Mittels der zu Fig. 7 beschriebenen Subhologramm-Segment-Spiegelung und -Ausrichtung - in der ersten Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene - SHSSA_A - werden Subhologramm-Segmente mit gerader
Adresse GSH und Subhologramm-Segmente mit ungerader Adresse USH erzeugt, jeweils in ursprünglicher und in gespiegelter Form.
Diese Subhologramm-Segmente werden anschließend der Subhologramm-Segment Addition SHSA zugeführt. Der hierfür erforderliche Hologrammzeilenspeicher HZS benötigt dabei gegenüber einem Hologrammzeilenspeicher nach dem Stand der Technik nur 50% der Größe. Im Hologrammzeilenaddierer HZA erfolgt schließlich die Addition der vier im vorherigen Schritt berechneten Hologrammzeilen, in deren Ergebnis eine Hologrammzeile HZ, bestehend aus mehreren zusammenaddierten Subhologrammen, d.h., eine Superposition von Subhologrammen, entsteht. Die hier beschriebene erste Lösungsvariante eines Verfahrens zur Kodierung eines
Hologramms einer dreidimensionalen Szene kann nun weiter verbessert werden: Eine solche verbesserte Variante wird nun im Folgenden als zweite Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene beschrieben, siehe hierzu auch Fig. 10. Das generierte Subhologramm-Segment wird dabei bereits so generiert, dass für dieses ungespiegelte Subhologramm-Segement keine Ausrichtung (Alignment) am
Hologrammzeilenspeicher mehr erforderlich ist. Somit wird für diesen Pfad nur ein
Hologrammzeilenspeicher benötigt.
Dies ist zunächst in der Fig. 9 beschrieben. Diese zeigt eine holographische
Berechnungspipeline für ein Verfahren zur Kodierung eines Hologramms einer
dreidimensionalen Szene unter Nutzung einer Symmetrie mittels Spiegelung und Ausrichtung in einer zweiten Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene. In der nun beschriebenen Variante ist ein Alignment des ungespiegelten Subhologramm-Segments jedoch unnötig. In der Fig. 9 sind hierfür die folgende Schritte dargestellt:
- Die Subhologramm-Segment-Transformation SHST,
- die Spiegelung des eingehenden Subhologramm-Segments SHSP, die zum gespiegelten Subhologramm-Segment SH-SegT G1DSH in einem zweiten Berechnungspfad führt,
- die Ausgabe des gespeichertes Subhologramm-Segments SH-SegT-1 aus dem Register zur Zwischenspeicherung SHR des aktuellen gespiegelten Subhologramm-Segments, und die
Entgegennahme des neuen Subhologramm-Segments SH-SegT zur Speicherung für eine Zeiteinheit.
- die Verbindung des aktuellen Subhologramm-Segments SH-SegT mit dem
zwischengespeicherten Subhologramm-Segment SH-SegT-i SHVB
- die Verschiebung des Subhologramm-Segments um N' Elemente, entweder stufenweise, d.h. in N' Schritten, oder sofort mit Hilfe eines Multiplexers SHVSCH,
- die Abspaltung des am Speicher ausgerichteten Subhologramm-Segments SHABSP
- das am Speicher ausgerichtete Subhologramm-Segment A1DSH. Dabei ist die Abfolge der Schritte, die für das gespiegelte Subhologramm-Segment im zweiten Berechnungspfad beschrieben sind, im ersten Berechnungspfad unnötig, da das entsprechende Subhologramm-Segment von Beginn an am Speicher ausgerichtet ist.
Für den gespiegelten Pfad erfolgt also folgende Abarbeitung: Nachdem das Subhologramm- Segment SH-SegT in den zweiten Berechnungspfad dupliziert und gespiegelt wurde, erfolgt eine Verknüpfung mit dem im vorherigen Zyklus gespeicherten Subholorgamm-Segment SH-SegT-i zu einem doppelt breiten Subhologramm-Segment, in dem hier beschriebenem Beispiel also mit 32 Bildelementen BE. Nun erfolgt hieraus die Verschiebung und Extraktion von den 16
Bildelementen BE, welche nun richtig am Hologrammzeilenspeicher ausgerichtet sind: Dies ist in der Fig. 9 entsprechend aufgezeigt
Die Verschiebung bzw. Extraktion erfolgt analog zu den zwei oben beschriebenen Verfahren per Pipeline oder per Multiplex, indem alle Bildelemente BE um ' Bildelemente BE verschoben werden. Die unteren 16 Bildelemente entsprechen nun dem ausgerichteten Subhologramm- Segment. Folglich wird für den gespiegelten Berechnungspfad nun ebenfalls nur ein
Hologrammzeilenspeicher benötigt.
Im Anschluss nach Fertigstellung der Zeile, werden beide Zeilen zusammengeführt, d.h.
aufaddiert.
Fig. 10 zeigt dies im Überblick für eine solche holographische Pipeline mit Symmetrie in einer von der Reihenfolge der eingehenden Subhologramm-Segmente abhängigen Variante.
Ein Subhologramm-Segment-Generator SHSG generiert zunächst ein Subhologramm- Segment mit Bildelementen, d.h., mit komplexen Werten für die Bildelemente, im
Polarkoordinatensystem SHP. Dieses wird durch die Subhologramm-Segment- Transformation SHST in ein transformiertes Subhologramm-Segment mit Bildelementen im Kartesischen Koordinatensystem SHK überführt.
Mittels der zu Fig. 9 beschriebenen Subhologramm-Segment-Spiegelung und -Ausrichtung - in der zweiten Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene - SHSSA_B - werden Subhologramm-Segmente erzeugt, jeweils in ursprünglicher und in gespiegelter Form. Diese Subhologramm-Segmente werden anschließend der Subhologramm-Segment Addition SHSA zugeführt. Hierfür ist wiederum ein Hologrammzeilenspeicher HZS erforderlich.
Im Hologrammzeilenaddierer HZA erfolgt schließlich die Addition der zwei im vorherigen Schritt berechneten Hologrammzeilen, in deren Ergebnis eine Hologrammzeile HZ, bestehend aus mehreren zusammenaddierten Subhologrammen, d.h., eine Superposition von Subhologrammen, entsteht.
Diese zweite alternative, verbesserte Lösungsvariante hat den Vorteil, dass nur zwei
Hologrammzeilenspeicher benötigt werden, und dass nur zwei Subhologramm-Segmente aufaddiert werden müssen. Es gibt aber eine zeitliche Abhängigkeit, d.h. nur kontinuierlich aufeinanderfolgende Subhologramm-Segmente können verarbeitet werden. Die erste, oben beschriebene Lösungsvariante arbeitet dagegen unabhängig vom zeitlichen Ablauf.
Im Vergleich zu einer Lösung ohne Symmetrie nach dem Stand der Technik, siehe Fig. 6, wird zwar die doppelte Speichermenge benötigt. Die Berechnung wird dafür jedoch doppelt so schnell durchgeführt. Für die gleiche Rechengeschwindigkeit in einer Lösung ohne Symmetrie müssten zwei Berechnungspipelines instanziiert werden - hier wäre also die Speichermenge dann auch doppelt so groß.
Der zusätzliche Logikaufwand bzw. der Platzbedarf für Spiegelung, Alignment und
Holorgammzeilenspeicher ist deutlich geringer als der Bedarf für eine weitere herkömmliche Berechnungspipeline ohne Symmetrie, vor allem bei der zweiten Lösungsvariante eines Verfahrens zur Kodierung eines Hologramms einer dreidimensionalen Szene, welche erforderlich wäre, um das Hologramm in der gleichen Zeit zu berechnen. Dies bedeutet im Ergebnis eine doppelte Berechnungsgeschwindigkeit bei deutlich weniger Logik und einem geringerem Platzbedarf. Im Umkehrschluss können also mehr Subhologramme SH bei gleichbleibendem Platzbedarf berechnet werden.
Eine Pipeline zur hardwarebasierten Echtzeit-Berechnung von Hologrammen mit Hilfe von Subhologrammen und direkter Ansteuerung eines holografischen Displays ist in Fig. 11 dargestellt. Sie ist auf Basis von FPGA und/oder ASIC realisiert und wird nachfolgend beschrieben.
Die Berechnungsparameter für das Hologramm und die Konfigurationsparameter für das holografische Display werden in einem nichtflüchtigen Speicher FLASH außerhalb des FPGA bzw.ASIC abgelegt. Ein Systemcontroller SC (Mikrocontroller o.a.) innerhalb des FPGA bzw. ASIC lädt während der Initialisierungsphase die Daten aus dem Speicher FLASH und konfiguriert alle Module der holografischen Berechnungspipeline mit Parametern und Tabellen. Diese Daten werden innerhalb kleiner lokaler RAMs („random access memory" bzw.„Speicher mit wahlfreiem/direktem Zugriff') im FPGA bzw.ASIC gespeichert. Weiterhin werden die Module aktiviert, welche für die Kodierung (Encoding) und die Ausgabe (Formatierung) entsprechend des angeschlossenen Displays erforderlich sind. Weiterhin wird festgelegt, in welchem Format der Inhalt der darzustellenden 3D-Szene (Content) geliefert wird und dies dem Content- Lieferanten über eine geeignete Schnittstelle, z.B. DDC („display data Channel" bzw.
„Datenkanal zum Austausch von Bildschirminformationen") oder CEC („consumer electronics control" bzw.„Schnittstelle zur Steuerung von Unterhaltungselektronik"), mitgeteilt. Die kontinuierlich ankommenden Bildframes, welche Färb- und Tiefeninformationen für verschiedene Ansichten, Betrachter und Transparenzebenen enthalten, werden von der Quellschnittstelle (Datenkanal über den 3D-lnhalte, z.B. Färb- und Tiefeninformationen von einem entprechenden Gerät empfangen werden, z.B. PC, Spielekonsole, Medienabspielgerät), z.B. HDMI („high definition media interface" bzw.„Schnittstelle zur Übertragung von
hochaufgelösten Inhalten") bzw. DVI („digital Visual interface" bzw.„Digitale Schnittstelle zur
Übertragung von Videodaten", empfangen, gefiltert (Input Filter IF), in Objektpunktströme zerlegt und in einem RAM (Input Storage IS) abgelegt. Durch eine Dreifach-Pufferung wird
konfliktfreies und kontinuierliches Lesen und gleichzeitiges Schreiben bezüglich des Speichers IS ermöglicht. Asynchron dazu arbeitet die nachfolgende Berechnungspipeline. Der Pipeline-Controller PC dient als Schnittstelle zum Speicher IS und kontrolliert die nachfolgenden parallelen
Berechnungsinstanzen (hintereinander dargestellte Kästen in Fig.11). Er fordert vom Speicher IS einzelne Objektpunkte je nach aktuell berechneter Farbe/Ansicht/Ebene und aktueller Position im Hologramm an und verteilt diese auf die einzelnen Instanzen je nach deren
Auslastung. Jede Berechnungsinstanz besteht aus einem 1 D-Subhologramm Generator SHG, einem Konvertermodul CVTF zur Umwandlung von komplexen Werten von der
Polarkoordinatenform in das kartesische Koordinatensystem, und einem Addierer SHA, welcher das generierte Subhologramm in die aktuelle Hologrammzeile hineinaddiert. Jeder Addierer SHA enthält einen Hologrammzeilenpuffer (nicht dargestellt). Eine Berechnungsinstanz arbeitet typischerweise alle Objektpunkte der darzustellenden 3D-Szene ab, deren
Subhologramme die aktuell gespeicherte Hologrammzeile im Addierer SHA beeinflussen.
Dynamische Subhologrammgrößen werden dadurch ermöglicht, dass pro Schritt der
Berechnung nur ein kleines Segment eines Subhologramms (bestehend z.B. aus 8 komplexen Werten) generiert wird. Das bedeutet, dass eine Berechnungseinheit für große Subhologramme mehr Takte bzw. Schritte benötigt als für kleine. Insgesamt führt dies zu einer hohen Auslastung im Vergleich zu einer Realisierung der Berechnung mit statischer Subhologrammgröße, was allerdings deutlich einfacher zu realisieren wäre und bei einer elektronischen Schaltung auch nahe liegen würde. Auch bei der Berechnung von 2D-Subhologrammen wird das Subhologramm-Generatormodul SHG verwendet, wobei in diesem Fall das 2D-Subhologramm in mehrere 1D-Subhologramme zerlegt wird.
Ist eine Berechnungsinstanz fertig mit der Berechnung einer Hologrammzeile, wird diese an den Hologrammspeicher HS weitergeleitet und abgelegt. Durch Dreifach-Pufferung wird konfliktfreies und kontinuierliches Lesen und gleichzeitiges Schreiben bezüglich des Hologrammspeichers HS ermöglicht. Auf dem Weg dahin erfolgt die Rückwandlung der Hologrammzeile in die
Polarkoordinatenform im Transformationsmodul CVTB und die Vorverarbeitung für das
Encoding im Display im Modul E1.
Asynchron dazu arbeitet die Hologrammausgabe. Der Display-Controller DC steuert die
Reihenfolge, Geschwindigkeit (Framerate) und Formatierung der auszugebenden Hologramme. Die Hologramme können z.B. zeitsequentiell bezüglich der Ansichten und Farben oder verschachtelt ausgegeben werden. Mischformen sind ebenfalls möglich.
Kurz vor der zeilenweisen Übergabe des Hologramms an das Display wird der finale
Encodingschritt im Modul E2 durchgeführt, um die komplexen Hologrammwerte in eine auf dem verwendeten Display darstellbare Form zu bringen. Danach erfolgt die Ausgabe des
Hologramms in die Senke zum Display (Schnittstelle zur Übertragung der Hologrammdaten an ein holografisches 3D-Display bzw. an die Elektronik zur Ansteuerung eines oder mehrerer räumlicher Lichtmodulatoren (SLM)), wobei z.B. LVDS („low voltage differential signalling" bzw. „Übertragungstechnik unter Verwendung von differentiellen Signalen mit niedrigen
Spannungen") als Schnittstelle verwendet werden kann.
Das dargestellte Ausführungsbeispiel illustriert die grundsätzliche Möglichkeit, die Berechnung von Hologrammen in Form einer festen und effizienten Schaltung zu implementieren und vor allem konfigurierbar zu gestalten, so dass sie für verschiedene Displaytypen und-grössen sowie Anwendungsklassen (Desktop/Mobile) eingesetzt werden kann. Sie zeichnet sich durch
Echtzeitfähigkeit, hohe Effizienz der Berechnungsabläufe sowie einen sparsamen Umgang mit Speicherkapazität aus, um so wenig wie möglich Energie bei möglichst hoher Rechenleistung zu verbrauchen. Ein weiterer Vorzug besteht in einer hohen Wiederverwendbarkeit und Kompatibilität.
Abschließend sei ganz besonders darauf hingewiesen, dass die voranstehend erörterten Ausführungsbeispiele lediglich zur Beschreibung der beanspruchten Lehre dienen, diese jedoch nicht auf die Ausführungsbeispiele einschränken. Insbesondere könnten die oben
beschriebenen Ausführungsbeispiele - soweit möglich - miteinander kombiniert werden.

Claims

Patentansprüche
1. Vorrichtung zur Berechnung eines 2D-Subhologramms (2D-SH) zur Darstellung eines Objektpunktes einer dreidimensionalen Szene mittels eines holographischen Displays, das einen räumlichen Lichtmodulator mit einer Matrix von Bildelementen (BE) umfasst, wobei das 2D-Subhologramm (2D-SH) Bildelemente (BE) des räumlichen Lichtmodulators (SLM) enthält und eine Rotationssymmetrie aufweist, dadurch gekennzeichnet, dass das 2D-Subhologramm (2D-SH) ein halbes 1 D-Subhologramm (1 D-SH) entlang eines Schnitts durch das 2D-Subhologramm (2D-SH) vom Ursprung des 2D-Subhologramms (2D-SH) bis zu einem maximalen Radius des 2D- Subhologramms (2D-SH) enthält, wobei der Radius jedes Bildelements (BE) bestimmt ist und jedes Bildelement (BE) des 2D-Subhologramms (2D-SH) mindestens einem Bildelement (BE) des halben 1 D-Subhologramms (1 D-SH) mit gleichem oder ähnlichen Radius durch eine elektronische Schaltung fest zugeordnet ist.
2. Vorrichtung nach Anspruch 1 , dadurch gekennzeichnet, dass jedes Bildelement (BE) des 2D-Subhologramms (2D-SH) mindestens einem Bildelement (BE) des halben 1 D- Subhologramms (1 D-SH) derart durch eine elektronische Schaltung fest zugeordnet ist, dass der Radius des Bildelements (BE) des 2D-Subhologramms (2D-SH) dem mit einem mit richtungsabhängigem Streckungsfaktor multiplizierten Radius eines
Bildelements (BE) des halben 1 D-Subhologramms (1 D-SH) entspricht.
3. Vorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die elektronische Schaltung in Form einer festverdrahteten Matrix (DEV) realisiert ist.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die elektronische Schaltung auf Anwendungs-Feld programmierbaren Logik-Gatter- Anordnungen (FPGA) und/oder anwendungsspezifischen integrierten Schaltungen (ASIC) implementiert ist.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die elektronische Schaltung Mittel zur Erzeugung von Zwischenwerten (ZWG) durch Verknüpfung zweier oder mehrerer Bildelemente (BE) des halben 1 D-Subhologramms (1 D-SH) sowie zur Zuordnung der Bildelemente (BE) des 2D-Subhologamms (2D-SH) zu diesen Zwischenwerten enthält.
6. Vorrichtung zur Berechnung eines Hologramms zur Darstellung einer
dreidimensionalen Szene, das eine Vorrichtung zur Berechnung eines 2D- Subhologramms (2D-SH) eines Objektpunktes dieser dreidimensionalen Szene gemäß einem der Ansprüche 1 bis 5 sowie
- Mittel zur Transformation des 2D-Subhologramms von polaren zu kartesischen Koordinaten
- Mittel zur Positionierung des 2D-Subhologramms (2D-SH) auf dem räumlichen Lichtmodulator (SLM) in Abhängigkeit von der Lage des Objektpunktes der dreidimensionalen Szene sowie der Position eines Betrachters dieser Szene und
- Mittel zur Überlagerung der jeweiligen 2D-Subhologramme (2D-SH)
verschiedener Objektpunkte dieser dreidimensionalen Szene durch Addition der jeweiligen Real- und Imaginärteile derselben Bildelemente (BE) enthält.
Verfahren zur Berechnung eines 2D-Subhologramms (2D-SH) zur Darstellung eines Objektpunktes einer dreidimensionalen Szene mittels eines holographischen Displays, das einen räumlichen Lichtmodulator mit einer Matrix von Bildelementen (BE) umfasst, wobei jedes 2D-Subhologramm (2D-SH) Bildelemente (BE) des räumlichen Lichtmodulators (SLM) enthält und wobei das Verfahren eine Rotationssymmetrie des 2D-Subhologramms (2D-SH) ausnutzt, um das 2D-Subhologramm (2D-SH) in den räumlichen Lichtmodulator (SLM) zu kodieren, bei dem
- jedes Bildelement (BE) des 2D-Subhologramms (2D-SH) mindestens einem Bildelement (BE) eines halben 1 D-Subhologramms (1 D-SH) mit gleichem oder ähnlichem Radiuswert zugeordnet wird, wobei das halbe 1 D-Subhologramm (1 D-SH) entlang eines Schnitts durch das 2D-Subhologramm (2D-SH) vom Ursprung des 2D-Subhologramms (2D-SH) bis zu einem maximalen Radius des 2D-Subhologramms (2D-SH) verläuft,
- Werte für Phase und Amplitude für jedes Bildelement (BE) eines halben 1 D- Subhologramms (1 D-SH) berechnet werden und auf alle jeweils zugeordneten Bildelemente (BE) des 2D-Subhologramms (2D-SH) übertragen werden,
- dadurch gekennzeichnet, dass die Zuordnung der Bildelemente (BE) des 2D- Subhologramms (2D_SH) zu den Bildelementen (BE) des halben 1D- Subhologramms (1 D-SH) fest kodiert mittels einer elektronischen Schaltung realisiert wird.
Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass jedes Bildelement (BE) des 2D-Subhologramms (2D-SH) mindestens einem Bildelement (BE) des halben 1 D- Subhologramms (1 D-SH) derart durch eine elektronische Schaltung fest zugeordnet wird, dass der Radius des Bildelements (BE) des 2D-Subhologramms (2D-SH) dem mit einem mit richtungsabhängigem Streckungsfaktor multiplizierten Radius eines Bildelements (BE) des halben 1 D-Subhologramms (1 D-SH) entspricht.
9. Verfahren nach Anspruch 7 oder 8, wobei ein komplexwertiges 1 D-Subhologramm (1 D-SH) mit den polaren Koordinaten von Amplitude und Phase nach seiner
Berechnung in ein kartesisches Koordinatensystem transformiert wird.
10. Verfahren nach einem der Ansprüche 7 bis 9, wobei Zwischenwerte durch Verknüpfung mindestens zweier Bildelemente (BE) des halben 1 D-Subholorgamms (1 D-SH) erzeugt werden und Bildelemente (BE) des 2D-Subholorgamms (2D-SH) diesen Zwischenwerten zugeordnet werden.
11. Verfahren nach Anspruch 10, wobei die Erzeugung der Zwischenwerte durch virtuelle Vervielfachung der Anzahl der Bildelemente (BE) des halben 1 D-Subhologramms
(1 D-SH) oder durch Interpolation der Werte mindestens zweier Bildelemente (BE) des halben Subhologramms erfolgt.
12. Verfahren nach einem der Ansprüche 7 bis 1 , wobei das halbe 1 D-Subhologramm ( D-SH) entlang der x-Achse des 2D-Subhologramms (2D-SH) oder entlang der y- Achse des 2D-Subhologramms (2D-SH) verläuft.
13. Verfahren zur Berechnung eines 2D-Subhologramms (2D-SH) zur Darstellung eines Objektpunktes einer dreidimensionalen Szene bei dem die Rotationssymmetrie des 2D-Subhologramms (2D-SH) mit einer Spiegelsymmetrie kombiniert wird, wobei nur ein Quadrant oder nur eine Hälfte eines Quadranten des 2D-Subhologramms (2D-SH) mittels des Verfahrens nach einem der Ansprüche 7 bis 12 berechnet wird und die verbleibenden drei Quadranten oder die verbleibende Hälfte des Quadranten sowie die verbleibenden drei Quadranten mittels Spiegelung berechnet werden.
14. Verfahren zur Berechnung eines Hologramms zur Darstellung einer
dreidimensionalen Szene, bei dem 2D-Subhologramme (2D-SH) für alle
darzustellenden Objektpunkte dieser Szene mittels eines Verfahrens nach einem der Ansprüche 7 bis 13 erzeugt werden, jedes der Bildelemente (BE) eines jeden 2D- Subhologramms (2D-SH) entsprechend der Lage des mit dem 2D-Subhologramms (2D-SH) darzustellenden Objektpunktes und der Position eines Betrachters dieser Szene ein Offset in x- und/oder in y-Richtung erhält und die so zueinander
positionierten 2D-Subhologramme (2D-SH) aufaddiert werden. Verfahren zur Kodierung eines Hologramms einer dreidimensionalen Szene in einen räumlichen Lichtmodulator (SLM) eines holographischen Displays mittels Addition von Subhologrammen (SH) einzelner Objektpunkte, wobei
- ein Subhologramm-Segment einer ersten Hälfte eines Subhologramms mit einer definierten Segmentbreite für eine Hologrammzeile (HZ) berechnet wird,
- Offset-Positionen für das Subhologramm-Segment der ersten Hälfte sowie für ein Subhologramm-Segment einer zweiten Hälfte des Subhologramms (SH) bestimmt werden, wobei die Offset-Positionen den Ort innerhalb einer Hologrammzeile (HZ), an dem die Subhologramm-Segmente aufaddiert werden, definieren,
- das Subhologramm-Segment der zweiten Hälfte des Subhologramms (SH) durch Duplizierung und Spiegelung des Subhologramm-Segments der ersten Hälfte erzeugt wird,
- das Subhologramm-Segment der ersten Hälfte und seine Offset-Position in einen Berechnungspfad für die erste Hälfte und das Subhologramm-Segment der zweiten Hälfte und seine Offset-Position in einen Berechnungspfad für die zweite Hälfte des Subhologramms (SH) eingehen, in denen jeweils die Addition der Subhologramm-Segmente in voneinander unabhängigen
Hologrammzeilenspeichern (HZS) stattfindet,
- die Subhologramm-Segmente vor der Addition entsprechend der ermittelten Offset-Positionen am Hologrammzeilenspeicher (HZS) ausgerichtet werden und
- die unabhängigen Hologrammzeilenspeicher (HZS) der ersten und der zweiten Subhologrammhälften zusammengeführt werden.
Verfahren nach Anspruch 15, bei dem das Subhologramm-Segment nach der Berechnung vom Polarkoordinatensystem (SHP) in ein kartesisches
Koordinatensystem (SHK) transformiert wird.
Verfahren nach Anspruch 15 oder 16, wobei die Ausrichtung dadurch erfolgt, dass
- ein unausgerichtetes Subhologramm-Segment durch Verschiebung um den Differenzwert eines ganzzahligen Vielfachen der Anzahl der Elemente eines Segments und der für dieses Subhologramm-Segment bestimmten Offset- Position (innerhalb eines Segments) auf zwei benachbarte am
Hologrammzeilenspeicher (HZS) ausgerichtete Segmente abgebildet wird, und die danach verbleibenden Elemente der beiden benachbarten Segmente mit Null aufgefüllt werden.
- die beiden benachbarten ausgerichteten Segmente in zwei unabhängigen Hologrammzeilenspeichern (HZS) aufaddiert werden. Verfahren nach Anspruch 17, wobei die Verschiebung des Subhologramm-Segments entweder mittels einer Pipeline mit einer Anzahl von Stufen erfolgt, die der Anzahl der Elemente eines Subhologramm-Segments entspricht, wobei in jeder Stufe die
Elemente um ein Element verschoben werden bis der ermittelte Differenzwert erreicht ist, und über die verbleibenden Stufen ohne Verschiebung weitergereicht werden oder mittels einer festen Logik, bei der die Verschiebung entsprechend des Differenzwertes per Multiplexer ausgewählt wird, erfolgt.
Verfahren nach einem der Ansprüche 15 bis 18, wobei für eine 2D-Kodierung di' jeweiligen Verfahrensschritte entsprechend der Anzahl der genutzten
Hologrammzeilen wiederholt werden.
Verfahren nach einem der Ansprüche 15 bis 19, bei dem das Subhologramm- Segment der ersten Hälfte bereits ausgerichtet generiert und in einem unabhängigen Hologrammzeilenspeicher (HZS) aufaddiert wird.
Verfahren nach Anspruch 20, bei dem das Subhologramm-Segment der zweiten Hälfte des Subhologramms (SH) durch Duplizierung und Spiegelung des
Subhologramm-Segments der ersten Hälfte erzeugt wird und mit dem im vorherigen Zyklus gespeicherten Subhologramm-Segment verknüpft wird, die Elemente des aktuellen Subhologramm-Segments um den Differenzwert eines ganzzahligen
Vielfachen der Anzahl der Elemente eines Segments und der für dieses
Subhologramm-Segment bestimmten Offset-Position verschoben werden und das am Speicher ausgerichtete Subhologramm-Segment abgespaltet wird und in einem Hologrammzeilenspeicher (HZS) aufaddiert wird.
Verfahren nach einem der Ansprüche 15 bis 21 , dessen 2D-Subhologramme mittels der Vorrichtung nach einem der Ansprüche 1 bis 5 und/oder mittels des Verfahrens nach einem der Ansprüche 7 bis 13 berechnet werden.
Pipeline zur Echtzeit-Berechnung von Hologrammen, die Mittel zur Berechnung von Subhologrammen und zur direkten Ansteuerung eines holografischen Displays umfasst, dadurch gekennzeichnet, dass die Pipeline auf der Basis mindestens einer Anwendungs-Feld programmierbaren Logik-Gatter-Anordnung (FPGA) und/oder mindestens einer anwendungsspezifischen integrierten Schaltung (ASIC) realisiert ist, wobei die mindestens eine Anwendungs-Feld programmierbaren Logik-Gatter- Anordnung (FPGA) und/oder mindestens eine Anwendungs-Feld programmierbaren Logik-Gatter-Anordnung (ASIC) zur Laufzeit konfigurierbar ist.
24. Pipeline nach Anspruch 23, die eine Vorrichtung gemäß einem der Ansprüche 1 bis 6 enthält.
25. Pipeline nach Anspruch 23 oder 24, dadurch gekennzeichnet, dass die Pipeline eine Funktionseinheit zum Empfang von Objektpunkten zur Beschreibung einer zu rekonstruierenden Szene, eine Funktionseinheit zur Berechnung des Hologramms und eine Funktionseinheit zur Ausgabe des Hologramms zur Darstellung auf einem räumlichen Lichtmodulator (SL ) enthält, wobei die Funktionseinheiten der Pipeline fest integriert sind, aber nicht einem spezifischen räumlichen Lichtmodulator (SLM) bzw. holografischen Display zugeordnet sind.
26. Pipeline nach einem der Ansprüche 23 bis 25, gekennzeichnet durch Mittel zur
Echtzeitberechnung sowohl von 1 D- als auch 2D-Hologrammen und/oder durch Mittel zur Unterstützung verschiedener Kodierungsarten und Ausgabemodi.
27. Pipeline nach einem der Ansprüche 23 bis 26, dadurch gekennzeichnet, dass die Auflösungen für Hologramm und darzustellende 3D-Szene unabhängig von der eingesetzten Hardware sind.
28. Pipeline nach einem der Ansprüche 23 bis 27, gekennzeichnet durch eine
Skalierbarkeit der Schaltung für verschiedene Displaygrößen und/oder
Hologrammauflösungen und/oder Szenenauflösungen und/oder Displayparameter durch eine variable Aktivierung der Berechnungspfade.
29. Pipeline nach einem der Ansprüche 23 bis 28, gekennzeichnet durch eine
Maximierung der Auslastung der Schaltung und eine Minimierung der benötigten Ressourcen durch die Realisierung von dynamischen Subhologrammgrößen.
30. Pipeline nach einem der Ansprüche 23 bis 29, gekennzeichnet durch eine zueinander asynchrone Hologrammberechnung und Hologrammausgabe mit unterschiedlicher Framerate.
PCT/EP2014/001503 2013-06-06 2014-06-04 Vorrichtung und verfahren zur berechnung von hologrammdaten WO2014195013A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201480032191.8A CN105264443B (zh) 2013-06-06 2014-06-04 用于计算全息图的数据的装置和方法
DE112014002704.9T DE112014002704A5 (de) 2013-06-06 2014-06-04 Vorrichtung und Verfahren zur Berechnung von Hologrammdaten
US14/896,085 US10353344B2 (en) 2013-06-06 2014-06-04 Device and method for calculating holographic data
KR1020167000171A KR102248266B1 (ko) 2013-06-06 2014-06-04 홀로그램 데이터를 계산하기 위한 장치 및 방법
US16/451,437 US11635731B2 (en) 2013-06-06 2019-06-25 Device and method for calculating holographic data
US18/305,343 US20230259071A1 (en) 2013-06-06 2023-04-22 Device and method for calculating holographic data

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
DE102013105876 2013-06-06
DE102013105876.0 2013-06-06
DE102013110712.5 2013-09-27
DE102013110711.7 2013-09-27
DE102013110712 2013-09-27
DE102013110711 2013-09-27

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/896,085 A-371-Of-International US10353344B2 (en) 2013-06-06 2014-06-04 Device and method for calculating holographic data
US16/451,437 Continuation US11635731B2 (en) 2013-06-06 2019-06-25 Device and method for calculating holographic data

Publications (1)

Publication Number Publication Date
WO2014195013A1 true WO2014195013A1 (de) 2014-12-11

Family

ID=50942642

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2014/001503 WO2014195013A1 (de) 2013-06-06 2014-06-04 Vorrichtung und verfahren zur berechnung von hologrammdaten

Country Status (5)

Country Link
US (3) US10353344B2 (de)
KR (1) KR102248266B1 (de)
CN (1) CN105264443B (de)
DE (1) DE112014002704A5 (de)
WO (1) WO2014195013A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516216A (zh) * 2015-01-15 2015-04-15 厦门理工学院 一种多dmd拼接的曝光系统及方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI557462B (zh) * 2014-11-28 2016-11-11 台灣愛美科股份有限公司 自動聚焦系統與方法
CN106527093B (zh) * 2016-12-26 2019-03-19 北京理工大学 基于非线性倍频及偏振特性的全息图像复用方法与系统
US10573056B2 (en) 2017-03-06 2020-02-25 3D Patents, Llc Multi-view processing unit systems and methods
CN106873340B (zh) * 2017-03-17 2019-07-05 京东方科技集团股份有限公司 空间光调制器的寻址方法、全息显示装置及其控制方法
RU2686576C1 (ru) 2017-11-30 2019-04-29 Самсунг Электроникс Ко., Лтд. Компактное устройство голографического дисплея
CN108628138B (zh) * 2018-04-19 2020-02-07 浙江大学 基于人眼视觉特性的全息头盔显示的处理方法
CN109709786B (zh) * 2019-02-25 2020-08-25 中国科学院光电技术研究所 一种超分辨率数字全息成像系统和成像方法
CN110032053B (zh) * 2019-03-29 2020-04-10 北京航空航天大学 一种基于有效利用空间光调制器的全息散斑噪声抑制方法
FR3104747B1 (fr) * 2019-12-13 2023-01-27 Fond B Com Procédé de codage d’un hologramme numérique, procédé de codage d’un groupe d’hologrammes numériques et dispositif de codage associé
GB2595676B (en) * 2020-06-02 2022-06-22 Dualitas Ltd A display device and system
CN116113890A (zh) * 2020-08-10 2023-05-12 视瑞尔技术公司 计算全息图数据的设备和方法
WO2022254833A1 (ja) * 2021-05-31 2022-12-08 ソニーグループ株式会社 情報処理装置、情報処理方法及びプログラムを記録した記録媒体
KR20230021618A (ko) * 2021-08-05 2023-02-14 주식회사 애니랙티브 라인레이저 센서기반의 홀로터치 디스플레이 시스템 및 그에 대한 구현 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083355A1 (en) * 2005-05-25 2009-03-26 Tamiki Takemori Convolution integral calculation apparatus
EP2587320A1 (de) * 2011-10-28 2013-05-01 Samsung Electronics Co., Ltd Verfahren und Vorrichtung zur schnellen Erzeugung eines dreidimensionalen Hologramms

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2363025C2 (ru) 2002-11-13 2009-07-27 Сириал Текнолоджиз Гмбх Видеоголограмма и устройство для восстановления видеоголограмм
WO2005099386A2 (en) * 2004-04-13 2005-10-27 Board Of Regents, The University Of Texas System Holographic projector
DE102004063838A1 (de) 2004-12-23 2006-07-06 Seereal Technologies Gmbh Verfahren und Einrichtung zum Berechnen computer generierter Videohologramme
DE102006018689A1 (de) 2006-04-13 2007-10-25 Seereal Technologies S.A. Verfahren zum Rendern und Generieren computergenerierter Videohologramme in Echtzeit
DE102006025096B4 (de) 2006-05-23 2012-03-29 Seereal Technologies S.A. Verfahren und Einrichtung zum Rendern und Generieren computer-generierter Videohologramme
CN101512445B (zh) 2006-09-01 2013-07-17 视瑞尔技术公司 借助亚全息图实时生成视频全息图的方法
DE102007013431B4 (de) * 2007-03-15 2018-07-05 Seereal Technologies S.A. Verfahren und Einrichtung zum Rekonstruieren einer dreidimensionalen Szene mit korrigierter Sichtbarkeit
DE102007023737B4 (de) 2007-05-16 2009-01-02 Seereal Technologies S.A. Verfahren zum Generieren von Videohologrammen in Echtzeit zur Erweiterung einer 3D-Rendering-Graphikpipeline
US8166435B2 (en) * 2008-06-26 2012-04-24 Tabula, Inc. Timing operations in an IC with configurable circuits
TWI599861B (zh) 2010-04-01 2017-09-21 喜瑞爾工業公司 在全像系統中編碼包括透明物體三維場景之方法及裝置
CN201708890U (zh) * 2010-08-17 2011-01-12 华东师范大学 一种3d数字视频信号处理装置
KR101841624B1 (ko) * 2012-01-25 2018-03-26 삼성전자주식회사 고속으로 3d 홀로그램을 생성하는 방법 및 장치
CN102591123B (zh) * 2012-03-13 2014-12-10 苏州大学 一种实时三维显示装置及显示方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083355A1 (en) * 2005-05-25 2009-03-26 Tamiki Takemori Convolution integral calculation apparatus
EP2587320A1 (de) * 2011-10-28 2013-05-01 Samsung Electronics Co., Ltd Verfahren und Vorrichtung zur schnellen Erzeugung eines dreidimensionalen Hologramms

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
KWON DO-WOO ET AL: "Hardware implementation of N-LUT method using field programmable gate array technology", PRACTICAL HOLOGRAPHY XXV: MATERIALS AND APPLICATIONS, SPIE, 1000 20TH ST. BELLINGHAM WA 98225-6705 USA, vol. 7957, no. 1, 10 February 2011 (2011-02-10), pages 1 - 8, XP060005336, DOI: 10.1117/12.876616 *
SEUNG-CHEOL KIM ET AL: "Effective memory reduction of the novel look-up table with one-dimensional sub-principle fringe patterns in computer-generated holograms", OPTICS EXPRESS, vol. 20, no. 11, 21 May 2012 (2012-05-21), pages 12021, XP055102161, ISSN: 1094-4087, DOI: 10.1364/OE.20.012021 *
TAKASHI NISHITSUJI ET AL: "Fast calculation of computer-generated hologram using the circular symmetry of zone plates", OPTICS EXPRESS, vol. 20, no. 25, 3 December 2012 (2012-12-03), pages 27496 - 27502, XP055138878 *
TOMOYOSHI ITO ET AL: "Special-purpose computer HORN-5 for a real-time electroholography", OPTICS EXPRESS, vol. 13, no. 6, 1 January 2005 (2005-01-01), pages 1923, XP055139056, ISSN: 1094-4087, DOI: 10.1364/OPEX.13.001923 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516216A (zh) * 2015-01-15 2015-04-15 厦门理工学院 一种多dmd拼接的曝光系统及方法

Also Published As

Publication number Publication date
CN105264443B (zh) 2019-05-31
US20190310585A1 (en) 2019-10-10
US20160132021A1 (en) 2016-05-12
DE112014002704A5 (de) 2016-03-03
CN105264443A (zh) 2016-01-20
US10353344B2 (en) 2019-07-16
KR102248266B1 (ko) 2021-05-04
KR20160018669A (ko) 2016-02-17
US11635731B2 (en) 2023-04-25
US20230259071A1 (en) 2023-08-17

Similar Documents

Publication Publication Date Title
WO2014195013A1 (de) Vorrichtung und verfahren zur berechnung von hologrammdaten
DE102007023737B4 (de) Verfahren zum Generieren von Videohologrammen in Echtzeit zur Erweiterung einer 3D-Rendering-Graphikpipeline
DE102004063838A1 (de) Verfahren und Einrichtung zum Berechnen computer generierter Videohologramme
EP2158522B1 (de) Analytisches verfahren zur berechnung von videohologrammen in echtzeit
DE102007023739B4 (de) Verfahren zum Rendern und Generieren von Farbvideohologrammen in Echtzeit und holographische Wiedergabeeinrichtung
DE69535231T2 (de) VERFAHREN ZUR INTEGRATION EINES Bildtextursignalspeicher UND INTERPOLATIONSLOGIK
EP2024793B1 (de) Verfahren und einrichtung zum rendern und generieren computer-generierter videohologramme
DE19953595B4 (de) Verfahren und Vorrichtung zur Verarbeitung dreidimensionaler Bilder
DE102007023740A1 (de) Verfahren zur Generierung von Videohologrammen für eine holographische Wiedergabeeinrichtung mit wahlfreier Adressierung
DE3619427A1 (de) Verfahren und anordnung zur erzeugung von fraktalen
DE69722139T2 (de) Dreidimensionale abbildung von bildtexturen
DE112018004343T5 (de) Mehrraum-rendering mit konfigurierbaren transformationsparametern
DE202013012432U1 (de) System zur Verbesserung der Geschwindigkeit und Wiedergabetreue von Multi-Pose-3D-Renderings
EP2005259A1 (de) Verfahren zum rendern und generieren computer-generierter videohologramme in echtzeit
DE102013017640A1 (de) Verteilte gekachelte Zwischenspeicherung
DE102019127726A1 (de) Für fernarbeitsplatz-anwendungen geeignetes streaming individueller anwendungsfenster
DE102022119422A1 (de) Verfahren zum Erzeugen einer hierarchischen Datenstruktur, hierarchische Datenstruktur sowie Verfahren zum Streamen von dreidimensionalen Objekten
DE102020108526A1 (de) Adaptive pixelabtastreihenfolge für zeitlich dichtes rendern
DE102007020060B4 (de) Verteilte Berechnung von Bildern volumetrischer Objekte mittels Ray Casting
WO2022033996A2 (de) Vorrichtung und verfahren zur berechnung von hologrammdaten
DE112021004905T5 (de) ReLU-KOMPRIMIERUNG ZUM REDUZIEREN VON GPU-SPEICHER
DE102006042326A1 (de) Holographische Kodiereinheit zum Generieren computergenerierter Videohologramme
WO2019025303A1 (de) Verfahren zur erzeugung eines signals
DE102011077936A1 (de) Verfahren und Vorrichtung zum Erzeugen zumindest eines Bildes sowie Informationssystem und Computerprogrammprodukt zur Durchführung des Verfahrens
DE102006042323A1 (de) Verfahren zum Generieren computer-generierter Videohologramme in Echtzeit mittels Propagation

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480032191.8

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14730075

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14896085

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112014002704

Country of ref document: DE

ENP Entry into the national phase

Ref document number: 20167000171

Country of ref document: KR

Kind code of ref document: A

REG Reference to national code

Ref country code: DE

Ref legal event code: R225

Ref document number: 112014002704

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14730075

Country of ref document: EP

Kind code of ref document: A1