Reducing 3D lookup table interpolation error while minimizing on-chip storage

US12190847B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12190847-B2
Application numberUS-202117407981-A
CountryUS
Kind codeB2
Filing dateAug 20, 2021
Priority dateFeb 28, 2019
Publication dateJan 7, 2025
Grant dateJan 7, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems, apparatuses, and methods for reducing three dimensional (3D) lookup table (LUT) interpolation error while minimizing on-chip storage are disclosed. A processor generates a plurality of mappings from a first gamut to a second gamut at locations interspersed throughout a 3D representation of the pixel component space. For example, in one implementation, the processor calculates mappings for 17×17×17 vertices within the 3D representation. Other implementations can include other numbers of vertices. Rather than increasing the number of vertices to reduce interpolation error, the processor calculates mappings for centroids of the sub-cubes defined by the vertices within the 3D representation of the first gamut. This results in a smaller increase to the LUT size as compared to increasing the number of vertices. The centroid mappings are used for performing tetrahedral interpolation to map source pixels in the first gamut into the second gamut with a reduced amount of interpolation error.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: partitioning a three dimensional (3D) representation of a gamut mapping space into a plurality of sub-cubes; calculating centroid mappings for N sub-cubes of the plurality of sub-cubes, in response to determining that the N sub-cubes have an interpolation error that exceeds a threshold, wherein a centroid mapping for a given sub-cube corresponds to a geometric center of the given sub-cube; and providing a target pixel to a display, based at least in part on the centroid mappings. 2. The method of claim 1 , comprising: receiving a first source pixel from a source image, wherein the source image is represented in a first gamut; and converting the first source pixel to the target pixel in a second gamut, wherein the second gamut is different from the first gamut. 3. The method of claim 2 , comprising storing the centroid mappings in a table. 4. The method as recited in claim 3 , accessing the table to find mappings for vertices of a geometric shape that bounds pixel components of the first source pixel in a 3D representation of a pixel component space. 5. The method as recited in claim 4 , comprising: in response to determining an interior point of the geometric shape is stored in the table, retrieving mappings of the interior point and three corresponding vertices of the geometric shape from the table; in response to determining an interior point of the geometric shape is not stored in the table, retrieving mappings of four corresponding vertices of the geometric shape from the table; and performing interpolation on mappings retrieved from the table to convert the first source pixel to the target pixel. 6. The method as recited in claim 5 , wherein the interpolation is tetrahedral interpolation. 7. The method as recited in claim 1 , comprising: using a first resolution setting for a number of mapping points when calculating the centroid mappings, in response to determining the interpolation error is greater than a first threshold; and using a second resolution setting for a number of mapping points when calculating the centroid mappings, in response to determining the interpolation error is not greater than the first threshold, wherein the second resolution setting is lower than the first resolution setting. 8. An apparatus comprising: a processing unit comprising circuitry configured to: partition a three dimensional (3D) representation of a gamut mapping space into a plurality of sub-cubes; calculate centroid mappings for N sub-cubes of the plurality of sub-cubes, in response to determining that the N sub-cubes have an interpolation error that exceeds a threshold, wherein a centroid mapping for a given sub-cube corresponds to a geometric center of the given sub-cube; and provide a target pixel to a display, based at least in part on the centroid mappings. 9. The apparatus of claim 8 , wherein the processing unit is configured to: receive a first source pixel from a source image, wherein the source image is represented in a first gamut; and convert the first source pixel to the target pixel in a second gamut, wherein the second gamut is different from the first gamut. 10. The apparatus of claim 9 , wherein the processing unit is configured to store the centroid mappings in a table. 11. The apparatus as recited in claim 10 , wherein the processing unit is configured to access the table to find mappings for vertices of a geometric shape that bounds pixel components of the first source pixel in a 3D representation of a pixel component space. 12. The apparatus as recited in claim 11 , wherein the processing unit is configured to: in response to a determination that an interior point of the geometric shape is stored in the table, retrieve mappings of the interior point and three corresponding vertices of the geometric shape from the table; in response to a determination that an interior point of the geometric shape is not stored in the table, retrieve mappings of four corresponding vertices of the geometric shape from the table; and perform interpolation on values retrieved from the table to convert the first source pixel to the target pixel. 13. The apparatus as recited in claim 12 , wherein the interpolation is tetrahedral interpolation. 14. The apparatus as recited in claim 8 , wherein the processing unit is configured to: use a first resolution setting for a number of mapping points when calculating the centroid mappings, in response to determining the interpolation error is greater than a first threshold; and use a second resolution setting for a number of mapping points when calculating the centroid mappings, in response to determining the interpolation error is not greater than the first threshold, wherein the second resolution setting is lower than the first resolution setting. 15. A system comprising: a processor comprising circuitry configured to calculate centroid mappings for N sub-cubes corresponding to a three dimensional (3D) representation of a gamut mapping space, wherein a centroid mapping for a given sub-cube corresponds to a geometric center of the given sub-cube; and a display controller comprising circuitry configured to: receive a first source pixel from a source image, wherein the source image is represented in a first gamut; identify vertices of a geometric shape that bounds pixel components of the first source pixel in a 3D representation of a pixel component space; convert the first source pixel to a target pixel in a second gamut, wherein the second gamut is different from the first gamut; and provide the target pixel to a display. 16. The system as recited in claim 15 , wherein the processor is configured to access the centroid mappings to identify vertices of a geometric shape that bounds pixel components of the first source pixel in a 3D representation of a pixel component space. 17. The system as recited in claim 16 , wherein the processor is configured to partition a three dimensional (3D) representation of the gamut mapping space into a plurality of sub-cubes. 18. The system as recited in claim 17 , wherein the display controller comprises a table configured to store the mappings. 19. The system as recited in claim 18 , wherein the display controller is configured to perform interpolation on mappings retrieved from the table to generate the target pixel. 20. The system as recited in claim 19 , wherein the display controller is configured to: in response to determining an interior point of the geometric shape is stored in the table, retrieve mappings of the interior point and three corresponding vertices of the geometric shape from the table; in response to determining an interior point of the geometric shape is not stored in the table, retrieve mappings of four corresponding vertices of the geometric shape from the table; and perform interpolation on values retrieved from the table to convert the first source pixel to the target pixel.

Assignees

Inventors

Classifications

  • for control of colour parameters, e.g. colour temperature · CPC title

  • Colour space transformation · CPC title

  • Compensation of deficiencies in the appearance of colours · CPC title

  • characterised by the way in which colour is displayed {(details of colour display specific for CRTs G09G1/28; specific for flat matrix panels other than liquid crystal displays G09G3/2003; specific for liquid crystal displays G09G3/3607)} · CPC title

  • G09G5/06Primary

    using colour palettes, e.g. look-up tables · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12190847B2 cover?
Systems, apparatuses, and methods for reducing three dimensional (3D) lookup table (LUT) interpolation error while minimizing on-chip storage are disclosed. A processor generates a plurality of mappings from a first gamut to a second gamut at locations interspersed throughout a 3D representation of the pixel component space. For example, in one implementation, the processor calculates mappings …
Who is the assignee on this patent?
Ati Technologies Ulc
What technology area does this patent fall under?
Primary CPC classification G09G5/06. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 07 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).