Patents by Inventor Tomas Akenine-Moller

Tomas Akenine-Moller has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8644627
    Abstract: First and second codewords are determined, based on first feature vector components of the image elements in an image block, as representations of a first and second component value. Third and fourth codewords are determined, based on second vector components, as representations of a third and fourth component value. First N1 and second N2 resolution numbers are selected based on the relation of a distribution of the first vector components and a distribution of the second vector components. N1 additional component values are generated based on the first and second component values and N2 additional component values are generated based on the third and fourth component values. Component indices indicative of the generated component values are then provided for the different image elements.
    Type: Grant
    Filed: January 23, 2013
    Date of Patent: February 4, 2014
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Tomas Akenine-Möller, Jacob Munkberg, Petrik Clarberg, Jon Hasselgren, Jacob Ström
  • Publication number: 20130251276
    Abstract: First and second codewords are determined, based on first feature vector components of the image elements in an image block, as representations of a first and second component value. Third and fourth codewords are determined, based on second vector components, as representations of a third and fourth component value. First N1 and second N2 resolution numbers are selected based on the relation of a distribution of the first vector components and a distribution of the second vector components. N1 additional component values are generated based on the first and second component values and N2 additional component values are generated based on the third and fourth component values. Component indices indicative of the generated component values are then provided for the different image elements.
    Type: Application
    Filed: January 23, 2013
    Publication date: September 26, 2013
    Applicant: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
    Inventors: Tomas AKENINE-MÖLLER, Jacob MUNKBERG, Petrik CLARBERG, Jon HASSELGREN, Jacob STROM
  • Patent number: 8471851
    Abstract: A method for updating values of a depth buffer comprising values for display blocks of a display, and a device for implementing the method. The display is partitioned into a plurality of display regions, including a plurality of display blocks and having a minimum region depth value and a maximum region depth value. Each display region includes a plurality of display subregions. A minimum subregion depth value and a maximum subregion depth value are determined relative to at least one of the minimum region depth value and the maximum region depth value.
    Type: Grant
    Filed: November 18, 2005
    Date of Patent: June 25, 2013
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Jacob Ström, Tomas Akenine-Möller
  • Patent number: 8447103
    Abstract: The present invention relates to methods and arrangements for compressing images. The invention is based on the fact that edge blocks contain much information in one direction (across the edge), but very little information in the other direction (along the edge). By encoding edges explicitly, it is possible to obtain a high quality to a very low cost for many blocks. A block is encoded by first specifying the orientation of the edge in the block, and then specifying the profile across the edge using a function with a small number of parameters.
    Type: Grant
    Filed: December 22, 2009
    Date of Patent: May 21, 2013
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jim Rasmusson, Tomas Akenine-Möller, Per Wennersten, Jakob Ström
  • Patent number: 8437563
    Abstract: A block (300) of image elements (310) is compressed by determining multiple base vectors (510, 520, 530, 540) based on the feature vectors (312) associated with the image elements. Additional vectors (560, 570) are calculated based on defined pairs of neighboring base vectors (510, 520, 530, 540). A vector among the base vectors (510, 520, 530, 540) and the additional vectors (560, 570) is selected as representation of the feature vector (312) of an image element (310). An identifier (550) associated with selected vector is assigned to the image element (310) and included in the compressed block (500) which also comprises representations of the determined base vectors (510, 520, 530, 540).
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: May 7, 2013
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Tomas Akenine-Möller, Jacob Munkberg, Jacob Ström
  • Patent number: 8396309
    Abstract: A pixel block is compressed by determining a reference set of multiple reference property values. A value index associated with a reference property value of the reference set is assigned to each pixel in the pixel block based on the original property value of the pixel. A prediction of the value index is provided based on the value index assigned to at least one neighboring pixel in the pixel block. A prediction error is calculated based on the value index assigned to a pixel and its value index prediction. The compressed pixel block includes encoded representations of the prediction errors and an encoded representation of the reference set.
    Type: Grant
    Filed: May 13, 2009
    Date of Patent: March 12, 2013
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jim Rasmusson, Tomas Akenine-Möller
  • Patent number: 8369629
    Abstract: First and second codewords are determined, based on first feature vector components of the image elements in an image block, as representations of a first and second component value. Third and fourth codewords are determined, based on second vector components, as representations of a third and fourth component value. First N1 and second N2 resolution numbers are selected based on the relation of a distribution of the first vector components and a distribution of the second vector components. N1 additional component values are generated based on the first and second component values and N2 additional component values are generated based on the third and fourth component values. Component indices indicative of the generated component values are then provided for the different image elements.
    Type: Grant
    Filed: January 22, 2007
    Date of Patent: February 5, 2013
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Tomas Akenine-Möller, Jacob Munkberg, Petrik Clarberg, Jon Hasselgren, Jacob Ström
  • Publication number: 20130011059
    Abstract: A pixel block is compressed by providing a respective color component prediction for each pixel in the block. A difference between color components of two neighboring pixels is calculated and compared to a threshold. If the difference is smaller than the threshold, the prediction is calculated based on a first linear combination of the color components of these two neighboring pixels. However, if the difference exceeds the threshold, a second or third linear combination of the color components of the neighboring pixels is employed in the prediction. A guiding bit associated with the selected linear combination may be used. A prediction error is calculated based on the color component of the pixel and the provided prediction. The compressed block comprises an encoded representation of the prediction error and any guiding bit.
    Type: Application
    Filed: September 14, 2012
    Publication date: January 10, 2013
    Applicant: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jacob Ström, Per Wennersten, Tomas Akenine-Moller, Jim Rasmusson
  • Patent number: 8335385
    Abstract: A pixel block (300) is losslessly compressed into a candidate compressed block. If the bit length of the candidate block exceeds a threshold value, the property values of the pixels (310-317) in the block (300) are quantized and the quantized values are losslessly compressed into a new candidate compressed block. The procedure is repeated until a candidate compressed block having good image quality and a bit length below the threshold value is found. A compressed representation (400) of the block (300) is determined based on the found candidate compressed block (420) and an identifier (410) of the used quantization parameter.
    Type: Grant
    Filed: September 17, 2008
    Date of Patent: December 18, 2012
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jacob Strom, Tomas Akenine-Moller, Per Wennersten
  • Patent number: 8331664
    Abstract: A pixel block is compressed by providing a respective color component prediction for each pixel in the block. A difference between color components of two neighboring pixels is calculated and compared to a threshold. If the difference is smaller than the threshold, the prediction is calculated based on a first linear combination of the color components of these two neighboring pixels. However, if the difference exceeds the threshold, a second or third linear combination of the color components of the neighboring pixels is employed in the prediction. A guiding bit associated with the selected linear combination may be used. A prediction error is calculated based on the color component of the pixel and the provided prediction. The compressed block comprises an encoded representation of the prediction error and any guiding bit.
    Type: Grant
    Filed: May 21, 2008
    Date of Patent: December 11, 2012
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jacob Strom, Per Wennersten, Tomas Akenine-Moller, Jim Rasmusson
  • Patent number: 8285063
    Abstract: A block (300) of image elements (310) is compressed by identifying a base vector (460) based on normalized feature vectors (312) of the block (300). If a position-determining coordinate (420) of the base vector (460) is present inside a defined selection section (530) of feature vector space (500), the block (300) is compressed according to a default mode and an auxiliary mode to get a default and auxiliary compressed block (600), respectively. The compressed block (600) resulting in smallest compression error is selected. If the auxiliary mode is selected, the position-determining coordinate (420) is mapped to get a mapped coordinate (425) present outside the representable normalization portion (510) of vector space (500). The auxiliary compressed block (600) comprises a representation of this mapped coordinate (425). If the default mode is selected no such coordinate mapping is performed and the default compressed block (600) instead comprises a representation of the non-mirrored coordinate (420).
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: October 9, 2012
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Tomas Akenine-Möller, Jacob Munkberg, Jacob Ström
  • Publication number: 20120201467
    Abstract: A single instruction multiple data (SIMD) processor with a given width may operate on registers of the same width completely filled with fragments. A parallel set of registers are loaded and tested. The fragments that fail are eliminated and the register set is refilled from the parallel set.
    Type: Application
    Filed: February 3, 2011
    Publication date: August 9, 2012
    Inventors: Tomas Akenine-Möller, Jon N. Hasselgren, Carl J. Munkberg, Robert M. Toth, Franz P. Clarberg
  • Publication number: 20120154399
    Abstract: Hierarchical bounding of displaced parametric surfaces may be a very common use case for tessellation in interactive and real-time rendering. An efficient normal bounding technique may be used, together with min-max mipmap hierarchies and oriented bounding boxes. This provides substantially faster convergence for the bounding volumes of the displaced surface, without tessellating and displacing the surface in some embodiments. This bounding technique can be used for different types of culling, ray tracing, and to sort higher order primitives in tiling architectures.
    Type: Application
    Filed: February 21, 2012
    Publication date: June 21, 2012
    Inventors: Jacob Munkberg, Jon Hasselgren, Robert Toth, Tomas Akenine-Möller
  • Publication number: 20120087581
    Abstract: The present invention relates to methods and arrangements for compressing images. The invention is based on the fact that edge blocks contain much information in one direction (across the edge), but very little information in the other direction (along the edge). By encoding edges explicitly, it is possible to obtain a high quality to a very low cost for many blocks. A block is encoded by first specifying the orientation of the edge in the block, and then specifying the profile across the edge using a function with a small number of parameters.
    Type: Application
    Filed: December 22, 2009
    Publication date: April 12, 2012
    Applicant: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jim Rasmusson, Tomas Akenine-Möller, Per Wennersten, Jacob Ström
  • Patent number: 8144147
    Abstract: Hierarchical bounding of displaced parametric surfaces may be a very common use case for tessellation in interactive and real-time rendering. An efficient normal bounding technique may be used, together with min-max mipmap hierarchies and oriented bounding boxes. This provides substantially faster convergence for the bounding volumes of the displaced surface, without tessellating and displacing the surface in some embodiments. This bounding technique can be used for different types of culling, ray tracing, and to sort higher order primitives in tiling architectures.
    Type: Grant
    Filed: April 7, 2010
    Date of Patent: March 27, 2012
    Assignee: Intel Corporation
    Inventors: Jacob Munkberg, Jon Hasselgren, Robert Toth, Tomas Akenine-Möller
  • Patent number: 8107753
    Abstract: A pixel block (300) is compressed by sub-sampling at least a portion of the pixels (310) into subblocks (320, 330). Predictions are determined for the property values of these subblocks (320, 330) by calculating a variance measure based on property values of neighboring pixels (310)/subblocks (320, 330) in two prediction directions in the block (300) relative to a current subblock (320, 330). If the variance is below a threshold, the prediction is calculated based on neighboring property values in both directions. If the measure exceeds the threshold, the neighboring property values in only one of the two predictions directions are used for calculating the prediction. A guiding bit (450) descriptive of the selected direction is also provided. A prediction error is calculated based on the property value and the calculated prediction. The compressed block (400) comprises an encoded representation (460) of the prediction error and any guiding bit (470).
    Type: Grant
    Filed: January 19, 2009
    Date of Patent: January 31, 2012
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jim Rasmusson, Tomas Akenine-Möller, Jacob Ström
  • Publication number: 20110248997
    Abstract: Hierarchical bounding of displaced parametric surfaces may be a very common use case for tessellation in interactive and real-time rendering. An efficient normal bounding technique may be used, together with min-max mipmap hierarchies and oriented bounding boxes. This provides substantially faster convergence for the bounding volumes of the displaced surface, without tessellating and displacing the surface in some embodiments. This bounding technique can be used for different types of culling, ray tracing, and to sort higher order primitives in tiling architectures.
    Type: Application
    Filed: April 7, 2010
    Publication date: October 13, 2011
    Inventors: Jacob Munkberg, Jon Hasselgren, Robert Toth, Tomas Akenine-Möller
  • Patent number: 8031937
    Abstract: Methods and apparatus are disclosed for the processing of frame buffer data, such as color buffer data, in graphics processing applications. Although more generally applicable, these methods and apparatus are particularly useful in real-time, polygon-based, 3D rendering applications. An exemplary method for processing graphics data according to one or more embodiments of the invention begins with the retrieval, from a buffer, of pixel values corresponding to a tile of two or more pixels, and with the updating of one or more of those updated pixel values. The updated pixel values are selectively compressed using a lossy compression operation or a lossless compression operation, based on an accumulated error metric value for the tile. If lossy compression is used, then the accumulated error metric value for the tile is updated; in either event, the compressed pixel values are stored in the frame buffer for further processing.
    Type: Grant
    Filed: December 10, 2007
    Date of Patent: October 4, 2011
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Jim Rasmusson, Tomas Akenine-Möller, Jon Hasselgren, Jacob Munkberg
  • Patent number: 7961185
    Abstract: A plurality of rows of tiles is defined in a graphics display field comprising a plurality of rows of pixels, each tile including pixels from at least two rows of pixels. Occlusion flags for respective tiles of a row of tiles for a graphics primitive are set based on whether respective representative depth values for the tiles of the row of tiles meet an occlusion criterion. Pixels in rows of pixels corresponding to the row of tiles are processed for the graphics primitive in a row-by-row manner responsive to the occlusion flags. The processing may include processing rows of pixels in the row of tiles using a zig-zag traversal algorithm.
    Type: Grant
    Filed: August 31, 2007
    Date of Patent: June 14, 2011
    Assignee: Telefonaktiebolaget LM Ericsson (Publ)
    Inventors: Jacob Ström, Tomas Akenine-Möller
  • Publication number: 20110116723
    Abstract: A pixel block (300) is compressed by determining a reference set of multiple reference property values (10-14). A value index associated with a reference property value of the reference set is assigned to each pixel (310-316) in the pixel block (300) based on the original property value of the pixel (310-316). A prediction of the value index is provided based on the value index assigned to at least one neighboring pixel (314, 316) in the pixel block (300). A prediction error is calculated based on the value index assigned to a pixel (316) and its value index prediction. The compressed pixel block (400) comprises encoded representations (424) of the prediction errors and an encoded representation (410) of the reference set.
    Type: Application
    Filed: May 13, 2009
    Publication date: May 19, 2011
    Inventors: Jim Rasmusson, Tomas Akenine-Moller