Methods, Apparatus, and Computer-Readable Storage Media for Blended Rendering of Focused Plenoptic Camera Data
First Claim
1. A method, comprising:
- obtaining a flat comprising a plurality of microimages of separate portions of an image of a scene, wherein each of the plurality of microimages is in a separate region of the flat, wherein the flat is a two-dimensional (2D) representation of a four-dimensional (4D) light-field that captures both spatial and angular information of the scene;
rendering an output image of the scene from the plurality of separate microimages, wherein said rendering comprises, for each point of the output image;
determining a target microimage in the flat for this point;
calculating a position in the target microimage from which a value is to be sampled;
for each microimage in a neighborhood including the target image, reading a value from the calculated position in the respective microimage and adding the value to a value accumulator; and
normalizing the value in the value accumulator and assigning the normalized value to the point in the output image.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods, apparatus, and computer-readable storage media for rendering focused plenoptic camera data. A rendering with blending technique is described that blends values from positions in multiple microimages and assigns the blended value to a given point in the output image. A rendering technique that combines depth-based rendering and rendering with blending is also described. Depth-based rendering estimates depth at each microimage and then applies that depth to determine a position in the input flat from which to read a value to be assigned to a given point in the output image. The techniques may be implemented according to parallel processing technology that renders multiple points of the output image in parallel. In at least some embodiments, the parallel processing technology is graphical processing unit (GPU) technology.
217 Citations
20 Claims
-
1. A method, comprising:
-
obtaining a flat comprising a plurality of microimages of separate portions of an image of a scene, wherein each of the plurality of microimages is in a separate region of the flat, wherein the flat is a two-dimensional (2D) representation of a four-dimensional (4D) light-field that captures both spatial and angular information of the scene; rendering an output image of the scene from the plurality of separate microimages, wherein said rendering comprises, for each point of the output image; determining a target microimage in the flat for this point; calculating a position in the target microimage from which a value is to be sampled; for each microimage in a neighborhood including the target image, reading a value from the calculated position in the respective microimage and adding the value to a value accumulator; and normalizing the value in the value accumulator and assigning the normalized value to the point in the output image. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable storage medium storing program instructions, wherein the program instructions are computer-executable to implement:
-
obtaining a flat comprising a plurality of microimages of separate portions of an image of a scene, wherein each of the plurality of microimages is in a separate region of the flat, wherein the flat is a two-dimensional (2D) representation of a four-dimensional (4D) light-field that captures both spatial and angular information of the scene; rendering an output image of the scene from the plurality of separate microimages, wherein said rendering comprises, for each point of the output image; determining a target microimage in the flat for this point; calculating a position in the target microimage from which a value is to be sampled; for each microimage in a neighborhood including the target image, reading a value from the calculated position in the respective microimage and adding the value to a value accumulator; and normalizing the value in the value accumulator and assigning the normalized value to the point in the output image. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising
at least one processor; - and
a memory comprising program instructions, wherein the program instructions are executable by the at least one processor to; obtain a flat comprising a plurality of microimages of separate portions of an image of a scene, wherein each of the plurality of microimages is in a separate region of the flat, wherein the flat is a two-dimensional (2D) representation of a four-dimensional (4D) light-field that captures both spatial and angular information of the scene; render an output image of the scene from the plurality of separate microimages, wherein, to render an output image, the program instructions are computer-executable to implement, for each point of the output image; determine a target microimage in the flat for this point; calculate a position in the target microimage from which a value is to be sampled; for each microimage in a neighborhood including the target image, read a value from the calculated position in the respective microimage and add the value to a value accumulator; and normalize the value in the value accumulator and assign the normalized value to this point in the output image. - View Dependent Claims (16, 17, 18, 19, 20)
- and
Specification