# US 12,002,261 B2 · Iterative media object compression algorithm optimization using decoupled calibration of perceptual quality algorithms

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

- Number: US 12,002,261 B2
- Document ID: US12002261B2
- Status: Granted
- Kind: B2
- Application number: 18/064,192
- Filed: 2022-12-09
- Published: 2023-04-06
- Granted: 2024-06-04
- Earliest claimed: 2020-05-15
- Assignees: Amazon Technologies, Inc.
- Applicants: Amazon Technologies, Inc.
- Inventors: Luitpold Staudigl; Thomas Sydney Austin Wallis; Mike Mueller; Muhammad Bilal Javed; Pablo Barbachano
- Web page: https://patentgrep.com/patent/US12002261B2

## CPC

- G06V 10/82: using neural networks
- G06F 18/214: Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F 18/251: {of input or preprocessed data}
- G06N 3/0499: Feedforward networks
- G06N 3/08: Learning methods
- G06N 3/082: modifying the architecture, e.g. adding, deleting or silencing nodes or connections
- G06N 3/086: using evolutionary algorithms, e.g. genetic algorithms or genetic programming
- G06N 3/09: Supervised learning
- G06N 3/126: Evolutionary algorithms, e.g. genetic algorithms or genetic programming
- G06N 20/20: Ensemble learning
- G06T 3/4046: using neural networks
- G06T 7/0002: {Inspection of images, e.g. flaw detection}
- G06T 9/002: {using neural networks}
- G06V 10/774: Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
- G06V 10/7784: {based on feedback from supervisors}
- G06V 10/7788: {the supervisor being a human, e.g. interactive learning with a human teacher}
- G06V 10/803: {of input or preprocessed data}
- H04N 19/103: Selection of coding mode or of prediction mode
- H04N 19/12: Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N 19/154: Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion (use of rate-distortion criteria H04N19/147)
- H04N 19/172: the region being a picture, frame or field
- H04N 19/177: the unit being a group of pictures [GOP]
- H04N 19/192: the adaptation method, adaptation tool or adaptation type being iterative or recursive
- G06T 2207/30168: Image quality inspection
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

One or more multi-stage optimization iterations are performed with respect to a compression algorithm. A given iteration comprises a first stage in which hyper-parameters of a perceptual quality algorithm are tuned independently of the compression algorithm. A second stage of the iteration comprises tuning hyper-parameters of the compression algorithm using a set of perceptual quality scores generated by the tuned perceptual quality algorithm. The final stage of the iteration comprises performing a compression quality evaluation test on the tuned compression algorithm.

## Claims

### Claim 1

A computer-implemented method, comprising:
obtaining, via one or more programmatic interfaces of a network-accessible service of a cloud computing environment, an indication of a factor for classifying a plurality of media objects into importance categories, including a first importance category and a second importance category;
identifying (a) a first set of class-specific tuned parameter values to be used to compress media objects of the first importance category, and (b) a second set of class-specific tuned parameter values to be used to compress media objects of the second importance category, wherein:
the first set of class-specific tuned parameter values have been tuned using example media objects classified as the first importance category, and
the second set of class-specific tuned parameter values have been tuned using example media objects classified as the second importance category;
compressing, prior to a display of a first media object, the first media object using the first set of class-specific tuned parameter values, wherein the first media object is classified, using the factor, as belonging to the first importance category; and
compressing, prior to a display of a second media object, the second media object using the second set of class-specific tuned parameter values, wherein the second media object is classified, using the factor, as belonging to the second importance category.

### Claim 2 (depends on 1)

The computer-implemented method as recited in claim 1, wherein the plurality of media objects comprise images of products available from a web site, and wherein the factor comprises a product category.

### Claim 3 (depends on 1)

The computer-implemented method as recited in claim 1, further comprising:
obtaining, via the one or more programmatic interfaces, an example media object for classifying at least some media objects of the plurality of media objects into a third importance category;
classifying, using at least a search operation for media objects similar to the example media object, a third media object of the plurality of media objects into the third importance category; and
compressing, prior to a display of the third media object, the third media object using a third set of class-specific tuned parameter values, wherein the third set of class-specific tuned parameter values is identified for the third importance category.

### Claim 4 (depends on 1)

The computer-implemented method as recited in claim 1, further comprising:
identifying a default set of tuned parameter values to be used to compress media objects which have not been classified into an importance category of a plurality of importance categories, wherein the plurality of importance categories comprises the first importance category and the second importance category; and
compressing, prior to a display of a third media object, the third media object using the default set of tuned parameter values.

### Claim 5 (depends on 1)

The computer-implemented method as recited in claim 1, further comprising:
receiving, at the network-accessible service, a programmatic request to tune a compression algorithm, wherein the first set of class-specific tuned parameter values is identified in response to the request.

### Claim 6 (depends on 1)

The computer-implemented method as recited in claim 1, wherein the first set of class-specific tuned parameter values comprises a value associated with one or more of: (a) chroma subsampling, (b) block prediction, (c) frequency domain transformation, (d) quantization or (e) run-length encoding.

### Claim 7 (depends on 1)

The computer-implemented method as recited in claim 1, wherein identifying the first set of class-specific tuned parameter values comprises utilizing an evolutionary algorithm.

### Claim 8

A system, comprising:
one or more computing devices;
wherein the one or more computing devices include instructions that upon execution on or across the one or more computing devices:
obtain, via one or more programmatic interfaces of a network-accessible service of a cloud computing environment, an indication of a factor for classifying a plurality of media objects into importance categories, including a first importance category and a second importance category;
identify (a) a first set of class-specific tuned parameter values to be used to compress media objects of the first importance category, and (b) a second set of class-specific tuned parameter values to be used to compress media objects of the second importance category, wherein:
the first set of class-specific tuned parameter values has been tuned using example media objects classified into the first importance category, and
the second set of class-specific tuned parameter values has been tuned using example media objects classified into the second importance category;
compress, prior to a display of a first media object, the first media object using the first set of class-specific tuned parameter values, wherein the first media object is classified, using the factor, as belonging to the first importance category; and
compress, prior to a display of a second media object, the second media object using the second set of class-specific tuned parameter values, wherein the second media object is classified, using the factor, as belonging to the second importance category.

### Claim 9 (depends on 8)

The system as recited in claim 8, wherein the plurality of media objects comprise images of products available from a web site, and wherein the factor comprises a product category.

### Claim 10 (depends on 8)

The system as recited in claim 8, wherein the one or more computing devices include further instructions that upon execution on or across the one or more computing devices:
obtain, via the one or more programmatic interfaces, an example media object for classifying at least some media objects of the plurality of media objects into a third importance category;
classify, using at least a search operation for media objects similar to the example media object, a third media object of the plurality of media objects into the third importance category; and
compress, prior to a display of the third media object, the third media object using a third set of class-specific tuned parameter values, wherein the third set of class-specific tuned parameter values is identified for the third importance category.

### Claim 11 (depends on 8)

The system as recited in claim 8, wherein the one or more computing devices include further instructions that upon execution on or across the one or more computing devices:
identify a default set of tuned parameter values to be used to compress media objects which have not been classified into an importance category of a plurality of importance categories, wherein the plurality of importance categories comprises the first importance category and the second importance category; and
compress, prior to a display of a third media object, the third media object using the default set of tuned parameter values.

### Claim 12 (depends on 8)

The system as recited in claim 8, wherein the one or more computing devices include further instructions that upon execution on or across the one or more computing devices:
receive, at the network-accessible service, a programmatic request to tune a compression algorithm, wherein the first set of class-specific tuned parameter values is identified in response to the request.

### Claim 13 (depends on 8)

The system as recited in claim 8, wherein the first set of class-specific tuned parameter values comprises a value associated with one or more of: (a) chroma subsampling, (b) block prediction, (c) frequency domain transformation, (d) quantization or (e) run-length encoding.

### Claim 14 (depends on 8)

The system as recited in claim 8, wherein to identify the first set of class-specific tuned parameter values, the one or more computing devices include further instructions that upon execution on or across the one or more computing devices:
utilize an evolutionary algorithm.

### Claim 15

One or more non-transitory computer-accessible storage media storing program instructions that when executed on or across one or more processors:
obtain, via one or more programmatic interfaces of a network-accessible service of a cloud computing environment, an indication of a factor for classifying a plurality of media objects into importance categories, including a first importance category and a second importance category;
identify (a) a first set of class-specific tuned parameter values to be used to compress media objects of the first importance category, and (b) a second set of class-specific tuned parameter values to be used to compress media objects of the second importance category wherein:
the first set of class-specific tuned parameter values has been tuned using example media objects classified into the first importance category, and
the second set of class-specific tuned parameter values has been tuned using example media objects classified into the second importance category;
compress, prior to a display of a first media object, the first media object using the first set of class-specific tuned parameter values, wherein the first media object is classified, using the factor, as belonging to the first importance category; and
compress, prior to a display of a second media object, the second media object using the second set of class-specific tuned parameter values, wherein the second media object is classified, using the factor, as belonging to the second importance category.

### Claim 16 (depends on 15)

The one or more non-transitory computer-accessible storage media as recited in claim 15, wherein the plurality of media objects comprise images of products available from a web site, and wherein the factor comprises a product category.

### Claim 17 (depends on 15)

The one or more non-transitory computer-accessible storage media as recited in claim 15, storing further program instructions that when executed on or across the one or more processors:
obtain, via the one or more programmatic interfaces, an example media object for classifying at least some media objects of the plurality of media objects into a third importance category;
classify, using at least a search operation for media objects similar to the example media object, a third media object of the plurality of media objects into the third importance category; and
compress, prior to a display of the third media object, the third media object using a third set of class-specific tuned parameter values, wherein the third set of class-specific tuned parameter values is identified for the third importance category.

### Claim 18 (depends on 15)

The one or more non-transitory computer-accessible storage media as recited in claim 15, storing further program instructions that when executed on or across the one or more processors:
identify a default set of tuned parameter values to be used to compress media objects which have not been classified into an importance category of a plurality of importance categories, wherein the plurality of importance categories comprises the first importance category and the second importance category; and
compress, prior to a display of a third media object, the third media object using the default set of tuned parameter values.

### Claim 19 (depends on 15)

The one or more non-transitory computer-accessible storage media as recited in claim 15, storing further program instructions that when executed on or across the one or more processors:
receive, at the network-accessible service, a programmatic request to tune a compression algorithm, wherein the first set of class-specific tuned parameter values is identified in response to the request.

### Claim 20 (depends on 15)

The one or more non-transitory computer-accessible storage media as recited in claim 15, wherein the first set of class-specific tuned parameter values comprises a value associated with one or more of: (a) chroma subsampling, (b) block prediction, (c) frequency domain transformation, (d) quantization or (e) run-length encoding.
