Patents by Inventor Lars M. Lindberg

Lars M. Lindberg 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).

  • Publication number: 20240045835
    Abstract: Methods for lossy and lossless pre-processing of image data. In one embodiment, a method for lossy pre-processing image data, where the method may include, at a computing device: receiving the image data, where the image data includes a model having a mesh, the mesh includes vertices defining a surface, the vertices including attribute vectors, and the attribute vectors including values. The method also including quantizing the values of the attribute vectors to produce modified values, where a precision of the modified values is determined based on a largest power determined using a largest exponent of the values, encoding pairs of the modified values into two corresponding units of information. The method also including, for each pair of the pairs of the modified values, serially storing the two corresponding units of information as a data stream into a buffer, and compressing the data stream in the buffer.
    Type: Application
    Filed: October 18, 2023
    Publication date: February 8, 2024
    Inventors: Lars M. LINDBERG, Ali SAZEGARI
  • Patent number: 11822516
    Abstract: Methods for lossy and lossless pre-processing of image data. In one embodiment, a method for lossy pre-processing image data, where the method may include, at a computing device: receiving the image data, where the image data includes a model having a mesh, the mesh includes vertices defining a surface, the vertices including attribute vectors, and the attribute vectors including values. The method also including quantizing the values of the attribute vectors to produce modified values, where a precision of the modified values is determined based on a largest power determined using a largest exponent of the values, encoding pairs of the modified values into two corresponding units of information. The method also including, for each pair of the pairs of the modified values, serially storing the two corresponding units of information as a data stream into a buffer, and compressing the data stream in the buffer.
    Type: Grant
    Filed: September 29, 2022
    Date of Patent: November 21, 2023
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Ali Sazegari
  • Publication number: 20230090310
    Abstract: Methods for lossy and lossless pre-processing of image data. In one embodiment, a method for lossy pre-processing image data, where the method may include, at a computing device: receiving the image data, where the image data includes a model having a mesh, the mesh includes vertices defining a surface, the vertices including attribute vectors, and the attribute vectors including values. The method also including quantizing the values of the attribute vectors to produce modified values, where a precision of the modified values is determined based on a largest power determined using a largest exponent of the values, encoding pairs of the modified values into two corresponding units of information. The method also including, for each pair of the pairs of the modified values, serially storing the two corresponding units of information as a data stream into a buffer, and compressing the data stream in the buffer.
    Type: Application
    Filed: September 29, 2022
    Publication date: March 23, 2023
    Inventors: Lars M. LINDBERG, Ali SAZEGARI
  • Patent number: 11461275
    Abstract: Methods for lossy and lossless pre-processing of image data. In one embodiment, a method for lossy pre-processing image data, where the method may include, at a computing device: receiving the image data, where the image data includes a model having a mesh, the mesh includes vertices defining a surface, the vertices including attribute vectors, and the attribute vectors including values. The method also including quantizing the values of the attribute vectors to produce modified values, where a precision of the modified values is determined based on a largest power determined using a largest exponent of the values, encoding pairs of the modified values into two corresponding units of information. The method also including, for each pair of the pairs of the modified values, serially storing the two corresponding units of information as a data stream into a buffer, and compressing the data stream in the buffer.
    Type: Grant
    Filed: November 22, 2019
    Date of Patent: October 4, 2022
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Ali Sazegari
  • Publication number: 20200380732
    Abstract: Methods for lossy and lossless pre-processing of image data. In one embodiment, a method for lossy pre-processing image data, where the method may include, at a computing device: receiving the image data, where the image data includes a model having a mesh, the mesh includes vertices defining a surface, the vertices including attribute vectors, and the attribute vectors including values. The method also including quantizing the values of the attribute vectors to produce modified values, where a precision of the modified values is determined based on a largest power determined using a largest exponent of the values, encoding pairs of the modified values into two corresponding units of information. The method also including, for each pair of the pairs of the modified values, serially storing the two corresponding units of information as a data stream into a buffer, and compressing the data stream in the buffer.
    Type: Application
    Filed: November 22, 2019
    Publication date: December 3, 2020
    Inventors: Lars M. LINDBERG, Ali SAZEGARI
  • Patent number: 10809869
    Abstract: Disclosed are techniques for pre-processing layered images prior to compression and distribution. According to some embodiments, a technique can include accessing at least two images of a layered image: (i) a background image, and (ii) one or more layer images. Next, a flattened image is generated based on the at least two images. Next, respective one or more delta layer images are generated for the one or more layer images by: for at least one pixel of each layer image having (i) an alpha sub-pixel set to fully opaque, and (ii) a first color property equivalent to a second color property of a corresponding pixel within the flattened image: setting bits of the first color property of the pixel to the same value (e.g., zero (0) or one (1)). Finally, the one or more delta layer images are compressed and provided to a destination computing device.
    Type: Grant
    Filed: September 9, 2017
    Date of Patent: October 20, 2020
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Paul S. Chang, Ali Sazegari
  • Patent number: 10798420
    Abstract: Disclosed herein are techniques for performing lossless compression of single-channel images (e.g., grayscale images). A first technique involves pre-processing an isolated (i.e., one) single-channel image for compression. In particular, the first technique involves calculating predicted pixel intensity values (within the single-channel image) based on neighboring pixel intensity values (also within the single-channel image). Bit values of the error margins of the predicted pixel intensity values are separated into two different byte streams according to a particular ordering, whereupon the byte streams are separately compressed (e.g., using a Lempel-Ziv-Welch (LZW)-based compressor) and joined together to produce a compressed single-channel image. A second technique involves pre-processing a group of single-channel images into one single-channel image for compression.
    Type: Grant
    Filed: August 22, 2017
    Date of Patent: October 6, 2020
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Ali Sazegari, Paul S. Chang
  • Patent number: 10699622
    Abstract: A data processing system can store a long-term history of pixel luminance values in a secure memory and use those values to create burn-in compensation values that are used to mitigate burn-in effect on a display. The long-term history can be updated over time with new, accumulated pixel luminance values.
    Type: Grant
    Filed: January 18, 2018
    Date of Patent: June 30, 2020
    Assignee: APPLE INC.
    Inventors: Ross Thompson, Guy Cote, Christopher P. Tann, Jerrold V. Hauck, Ian C. Hendry, Vanessa C. Heppolette, Adam J. Machalek, Alan M. Dunn, Ali Sazegari, Lars M. Lindberg, Arthur L. Spence
  • Patent number: 10602183
    Abstract: Disclosed herein are techniques for pre-processing a multiple-channel image for compression. The multiple-channel image can be composed of a collection of pixels that are represented using a floating-point format (e.g., half-precision/16-bit) for display on devices optimized for wide-gamut color space. The techniques can include a first step of quantizing the pixels into a fixed range of values, and applying invertible color-space transformations to the sub-pixels of each pixel—which can include red, green, blue, and alpha sub-pixels—to produce transformed sub-pixels including luma and chroma values. Next, the luma sub-pixels are placed into a luma data stream, the first and second chroma values are placed into a chroma data stream, and the alpha sub-pixels are placed into an alpha data stream. Predictive functions are then applied to the luma and chroma data streams. Finally, the various streams are separated into buffers and compressed to produce a multiple-channel image.
    Type: Grant
    Filed: July 13, 2018
    Date of Patent: March 24, 2020
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Ali Sazegari
  • Patent number: 10546044
    Abstract: This application relates to an optimization for a technique for filtering an input signal according to a convolution kernel that is stored in a floating point format. A method for filtering the input signal includes: receiving a set of filter coefficients that define the convolution kernel; determining an order for a plurality of floating point operations configured to generate an element of an output signal; and filtering the input signal by the convolution kernel to generate the output signal. Each floating point operation corresponds with a particular filter coefficient, and the order for the plurality of floating point operations is determined based on a magnitude of the particular filter coefficient associated with each floating point operation. The filtering is performed by executing the plurality of floating point operations according to the order. The data path can be a half-precision floating point data path implemented on a processor.
    Type: Grant
    Filed: July 13, 2018
    Date of Patent: January 28, 2020
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Ali Sazegari, Paul S. Chang
  • Publication number: 20190373283
    Abstract: Disclosed herein are techniques for pre-processing a multiple-channel image for compression. The multiple-channel image can be composed of a collection of pixels that are represented using a floating-point format (e.g., half-precision/16-bit) for display on devices optimized for wide-gamut color space. The techniques can include a first step of quantizing the pixels into a fixed range of values, and applying invertible color-space transformations to the sub-pixels of each pixel—which can include red, green, blue, and alpha sub-pixels—to produce transformed sub-pixels including luma and chroma values. Next, the luma sub-pixels are placed into a luma data stream, the first and second chroma values are placed into a chroma data stream, and the alpha sub-pixels are placed into an alpha data stream. Predictive functions are then applied to the luma and chroma data streams. Finally, the various streams are separated into buffers and compressed to produce a multiple-channel image.
    Type: Application
    Filed: July 13, 2018
    Publication date: December 5, 2019
    Inventors: Lars M. LINDBERG, Ali SAZEGARI
  • Publication number: 20190354568
    Abstract: This application relates to an optimization for a technique for filtering an input signal according to a convolution kernel that is stored in a floating point format. A method for filtering the input signal includes: receiving a set of filter coefficients that define the convolution kernel; determining an order for a plurality of floating point operations configured to generate an element of an output signal; and filtering the input signal by the convolution kernel to generate the output signal. Each floating point operation corresponds with a particular filter coefficient, and the order for the plurality of floating point operations is determined based on a magnitude of the particular filter coefficient associated with each floating point operation. The filtering is performed by executing the plurality of floating point operations according to the order. The data path can be a half-precision floating point data path implemented on a processor.
    Type: Application
    Filed: July 13, 2018
    Publication date: November 21, 2019
    Inventors: Lars M. LINDBERG, Ali SAZEGARI, Paul S. CHANG
  • Patent number: 10362319
    Abstract: Disclosed are techniques for pre-processing an image for compression, e.g., one that includes a plurality of pixels, where each pixel is composed of sub-pixels that include at least an alpha sub-pixel. First, the alpha sub-pixels are separated into a first data stream. Next, invertible transformations are applied to the remaining sub-pixels to produce transformed sub-pixels. Next, for each row of the pixels: (i) identifying a predictive function that yields a smallest prediction differential total for the row, (ii) providing an identifier of the predictive function to a second data stream, and (iii) converting the transformed sub-pixels of the pixels in the row into prediction differentials based on the predictive function. Additionally, the prediction differentials for each of the pixels are encoded into first and second bytes that are provided to third and fourth data streams, respectively. In turn, the various data streams are compressed into a compressed image.
    Type: Grant
    Filed: July 31, 2017
    Date of Patent: July 23, 2019
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Paul S. Chang, Ali Sazegari
  • Patent number: 10362325
    Abstract: Disclosed are techniques for pre-processing an image for compression, e.g., one that includes a plurality of pixels, where each pixel is composed of sub-pixels that include at least an alpha sub-pixel. First, the alpha sub-pixels are separated into a first data stream. Next, invertible transformations are applied to the remaining sub-pixels to produce transformed sub-pixels. Next, for each row of the pixels: (i) identifying a predictive function that yields a smallest prediction differential total for the row, (ii) providing an identifier of the predictive function to a second data stream, and (iii) converting the transformed sub-pixels of the pixels in the row into prediction differentials based on the predictive function. Additionally, the prediction differentials for each of the pixels are encoded into first and second bytes that are provided to third and fourth data streams, respectively. In turn, the various data streams are compressed into a compressed image.
    Type: Grant
    Filed: May 31, 2018
    Date of Patent: July 23, 2019
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Paul S. Chang, Ali Sazegari
  • Publication number: 20190079639
    Abstract: Disclosed are techniques for pre-processing layered images prior to compression and distribution. According to some embodiments, a technique can include accessing at least two images of a layered image: (i) a background image, and (ii) one or more layer images. Next, a flattened image is generated based on the at least two images. Next, respective one or more delta layer images are generated for the one or more layer images by: for at least one pixel of each layer image having (i) an alpha sub-pixel set to fully opaque, and (ii) a first color property equivalent to a second color property of a corresponding pixel within the flattened image: setting bits of the first color property of the pixel to the same value (e.g., zero (0) or one (1)). Finally, the one or more delta layer images are compressed and provided to a destination computing device.
    Type: Application
    Filed: September 9, 2017
    Publication date: March 14, 2019
    Inventors: Lars M. LINDBERG, Paul S. CHANG, Ali SAZEGARI
  • Patent number: 10198991
    Abstract: Disclosed herein are techniques for pre-processing image data for compression, e.g., image data that represents burn-in statistics for a display device. The techniques can involve receiving the image data, where the image data comprises a plurality of pixels, and each pixel of the plurality of pixels comprises at least two sub-pixel values. Next, each pixel of the plurality of pixels is quantized to produce a plurality of modified pixels. Subsequently, a series of operations are performed against each modified pixel of the plurality of modified pixels, including (1) applying an invertible transformation against the modified pixel, (2) applying a predictive coding against the modified pixel, and (3) applying an encoding of the modified pixel into a buffer as a data stream. The buffer is then compressed (as the modified pixels are serially encoded into the buffer) to produce compressed outputs that are joined together to produce a compressed image.
    Type: Grant
    Filed: August 22, 2017
    Date of Patent: February 5, 2019
    Assignee: Apple Inc.
    Inventors: Lars M. Lindberg, Ali Sazegari
  • Publication number: 20180352243
    Abstract: Disclosed are techniques for pre-processing an image for compression, e.g., one that includes a plurality of pixels, where each pixel is composed of sub-pixels that include at least an alpha sub-pixel. First, the alpha sub-pixels are separated into a first data stream. Next, invertible transformations are applied to the remaining sub-pixels to produce transformed sub-pixels. Next, for each row of the pixels: (i) identifying a predictive function that yields a smallest prediction differential total for the row, (ii) providing an identifier of the predictive function to a second data stream, and (iii) converting the transformed sub-pixels of the pixels in the row into prediction differentials based on the predictive function. Additionally, the prediction differentials for each of the pixels are encoded into first and second bytes that are provided to third and fourth data streams, respectively. In turn, the various data streams are compressed into a compressed image.
    Type: Application
    Filed: May 31, 2018
    Publication date: December 6, 2018
    Inventors: Lars M. LINDBERG, Paul S. CHANG, Ali SAZEGARI
  • Publication number: 20180350296
    Abstract: A data processing system can store a long-term history of pixel luminance values in a secure memory and use those values to create burn-in compensation values that are used to mitigate burn-in effect on a display. The long-term history can be updated over time with new, accumulated pixel luminance values.
    Type: Application
    Filed: January 18, 2018
    Publication date: December 6, 2018
    Inventors: ROSS THOMPSON, GUY COTE, CHRISTOPHER P. TANN, JERROLD V. HAUCK, IAN C. HENDRY, VANESSA C. HEPPOLETTE, ADAM J. MACHALEK, ALAN M. DUNN, ALI SAZEGARI, LARS M. LINDBERG, ARTHUR L. SPENCE
  • Publication number: 20180352239
    Abstract: Disclosed are techniques for pre-processing an image for compression, e.g., one that includes a plurality of pixels, where each pixel is composed of sub-pixels that include at least an alpha sub-pixel. First, the alpha sub-pixels are separated into a first data stream. Next, invertible transformations are applied to the remaining sub-pixels to produce transformed sub-pixels. Next, for each row of the pixels: (i) identifying a predictive function that yields a smallest prediction differential total for the row, (ii) providing an identifier of the predictive function to a second data stream, and (iii) converting the transformed sub-pixels of the pixels in the row into prediction differentials based on the predictive function. Additionally, the prediction differentials for each of the pixels are encoded into first and second bytes that are provided to third and fourth data streams, respectively. In turn, the various data streams are compressed into a compressed image.
    Type: Application
    Filed: July 31, 2017
    Publication date: December 6, 2018
    Inventors: Lars M. LINDBERG, Paul S. CHANG, Ali SAZEGARI
  • Publication number: 20180249183
    Abstract: Disclosed herein are techniques for performing lossless compression of single-channel images (e.g., grayscale images). A first technique involves pre-processing an isolated (i.e., one) single-channel image for compression. In particular, the first technique involves calculating predicted pixel intensity values (within the single-channel image) based on neighboring pixel intensity values (also within the single-channel image). Bit values of the error margins of the predicted pixel intensity values are separated into two different byte streams according to a particular ordering, whereupon the byte streams are separately compressed (e.g., using a Lempel-Ziv-Welch (LZW)-based compressor) and joined together to produce a compressed single-channel image. A second technique involves pre-processing a group of single-channel images into one single-channel image for compression.
    Type: Application
    Filed: August 22, 2017
    Publication date: August 30, 2018
    Inventors: Lars M. LINDBERG, Ali SAZEGARI, Paul S. CHANG