# US 2025/0168291 A1 · Efficient neural network encoding ford 3d color lookup tables

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2025/0168291 A1
- Document ID: US20250168291A1
- Status: Published application
- Kind: A1
- Application number: 18/798,324
- Filed: 2024-08-08
- Published: 2025-05-22
- Earliest claimed: 2023-11-22
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Vahid ZEHTAB; Marcus Anthony BRUBAKER; Michael Scott brown; David Brian LINDELL
- Web page: https://patentgrep.com/patent/US20250168291A1

## CPC

- H04N 1/60: Colour correction or control {(H04N1/54 takes precedence)}
- H04N 1/6019: {using look-up tables (H04N1/6025 takes precedence)}
- H04N 1/64: Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor {(H04N19/00 takes precedence)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

The present disclosure provides methods, apparatuses, systems, and computer-readable mediums for encoding color lookup tables (LUTs) by an apparatus. A method includes determining a first identifier corresponding to a first LUT of a plurality of LUTs, providing, to a trained machine learning model, the first identifier and an input lattice, obtaining, from the trained machine learning model, an output lattice corresponding to the first LUT, and performing color manipulation on at least one input image using the output lattice. Each LUT of the plurality of LUTs includes mappings from input color values to output color values. The trained machine learning model has been jointly trained on the plurality of LUTs and identification information corresponding to each LUT in the plurality of LUTs.

## Claims

### Claim 1

A method for encoding color lookup tables (LUTs), comprising:
determining a first identifier corresponding to a first LUT of a plurality of LUTs, each LUT of the plurality of LUTs comprising mappings from input color values to output color values;
providing, to a trained machine learning model, the first identifier and an input lattice, the trained machine learning model having been jointly trained on the plurality of LUTs and identification information corresponding to each LUT in the plurality of LUTS;
obtaining, from the trained machine learning model, an output lattice corresponding to the first LUT; and
performing color manipulation on at least one input image using the output lattice.

### Claim 2 (depends on 1)

The method of claim 1, wherein the input lattice comprises a regularly spaced grid,
wherein the output lattice comprises the first LUT, and
wherein the performing of the color manipulation on the at least one input image comprises applying the first LUT, obtained from the trained machine learning model, to the at least one input image.

### Claim 3 (depends on 1)

The method of claim 1, wherein the input lattice comprises the at least one input image,
wherein the output lattice comprises at least one color-manipulated image based on the first LUT, the at least one color-manipulated image corresponding to the at least one input image, and
wherein the performing of the color manipulation on the at least one input image comprises providing the at least one color-manipulated image obtained from the trained machine learning model.

### Claim 4 (depends on 1)

The method of claim 1, wherein the input lattice comprises a Hald image at a first resolution level, and
wherein the output lattice comprises the first LUT at the first resolution level.

### Claim 5 (depends on 1)

The method of claim 1, wherein a first resolution level of the output lattice matches a second resolution level of the input lattice, and
wherein the first resolution level of the output lattice is different from a third resolution level of the first LUT.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
selecting a plurality of random input colors from an input color space based on a predetermined distribution;
normalizing the plurality of random input colors to a predetermined range of values;
computing a plurality of target colors by applying the normalized plurality of random input colors to a machine learning model;
normalizing the plurality of target colors to the input color space;
determining a reconstruction error based on the plurality of target colors; and
adjusting weights of the machine learning model based on the reconstruction error to obtain the trained machine learning model.

### Claim 7 (depends on 6)

The method of claim 6, wherein the predetermined distribution comprises a uniform distribution of colors across the input color space.

### Claim 8 (depends on 6)

The method of claim 6, further comprising:
determining occurrence probabilities of colors in the input color space; and
determining the predetermined distribution based on the colors in the input color space having an occurrence probability that exceeds a predetermined threshold.

### Claim 9 (depends on 6)

The method of claim 6, further comprising:
restricting the weights of the machine learning model through spectral normalization and activation functions,
wherein the output lattice comprises an invertible approximation of the first LUT.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
providing, to the trained machine learning model, a second identifier and the input lattice, the second identifier indicating the first LUT and a second LUT of the plurality of LUTs; and
obtaining, from the trained machine learning model, another output lattice corresponding to a combination of the first LUT and the second LUT.

### Claim 11

An apparatus for encoding color lookup tables (LUTs), comprising:
a memory storing instructions; and
one or more processors communicatively coupled to the memory; wherein the one or more processors are configured to execute the instructions to:
determine a first identifier corresponding to a first LUT of a plurality of LUTs, each LUT of the plurality of LUTs comprising mappings from input color values to output color values;
provide, to a trained machine learning model, the first identifier and an input lattice, the trained machine learning model having been jointly trained on the plurality of LUTs and identification information corresponding to each LUT in the plurality of LUTs;
obtain, from the trained machine learning model, an output lattice corresponding to the first LUT; and
perform color manipulation on at least one input image using the output lattice.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the input lattice comprises a regularly spaced grid,
wherein the output lattice comprises the first LUT, and
wherein the one or more processors are further configured to execute further instructions to:
apply the first LUT, obtained from the trained machine learning model, to the at least one input image.

### Claim 13 (depends on 11)

The apparatus of claim 11, wherein the input lattice comprises the at least one input image,
wherein the output lattice comprises at least one color-manipulated image based on the first LUT, the at least one color-manipulated image corresponding to the at least one input image, and
wherein the one or more processors are further configured to execute further instructions to:
perform the color manipulation on the at least one input image using the at least one color-manipulated image obtained from the trained machine learning model.

### Claim 14 (depends on 11)

The apparatus of claim 11, wherein the input lattice comprises a Hald image at a first resolution level, and
wherein the output lattice comprises the first LUT at the first resolution level.

### Claim 15 (depends on 11)

The apparatus of claim 11, wherein a first resolution level of the output lattice matches a second resolution level of the input lattice, and
wherein the first resolution level of the output lattice is different from a third resolution level of the first LUT.

### Claim 16 (depends on 11)

The apparatus of claim 11, wherein the one or more processors are further configured to execute further instructions to:
select a plurality of random input colors from an input color space based on a predetermined distribution;
normalize the plurality of random input colors to a predetermined range of values;
compute a plurality of target colors by applying the normalized plurality of random input colors to a machine learning model;
normalize the plurality of target colors to the input color space;
determine a reconstruction error based on the plurality of target colors; and
adjust weights of the machine learning model based on the reconstruction error to obtain the trained machine learning model,
wherein the predetermined distribution comprises a uniform distribution of colors across the input color space.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the one or more processors are further configured to execute further instructions to:
determine occurrence probabilities of colors in the input color space; and
determine the predetermined distribution based on the colors in the input color space having an occurrence probability that exceeds a predetermined threshold.

### Claim 18 (depends on 16)

The apparatus of claim 16, wherein the one or more processors are further configured to execute further instructions to:
restrict the weights of the machine learning model through spectral normalization and activation functions,
wherein the output lattice comprises an invertible approximation of the first LUT.

### Claim 19

A non-transitory computer-readable storage medium storing computer-executable instructions for encoding color lookup tables (LUTs) by an apparatus that, when executed by at least one processor of the apparatus, cause the apparatus to:
determine a first identifier corresponding to a first LUT of a plurality of LUTs, each LUT of the plurality of LUTs comprising mappings from input color values to output color values;
provide, to a trained machine learning model, the first identifier and an input lattice, the trained machine learning model having been jointly trained on the plurality of LUTs and identification information corresponding to each LUT in the plurality of LUTs;
obtain, from the trained machine learning model, an output lattice corresponding to the first LUT; and
perform color manipulation on at least one input image using the output lattice.

### Claim 20 (depends on 19)

The non-transitory computer-readable storage medium of claim 19, wherein the computer-executable instructions, when executed by the at least one processor, further cause the apparatus to:
select a plurality of random input colors from an input color space based on a predetermined distribution;
normalize the plurality of random input colors to a predetermined range of values;
compute a plurality of target colors by applying the normalized plurality of random input colors to a machine learning model;
normalize the plurality of target colors to the input color space;
determine a reconstruction error based on the plurality of target colors; and
adjust weights of the machine learning model based on the reconstruction error to obtain the trained machine learning model.
