# US 11,908,111 B2 · Image processing including noise reduction

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

- Number: US 11,908,111 B2
- Document ID: US11908111B2
- Status: Granted
- Kind: B2
- Application number: 17/751,981
- Filed: 2022-05-24
- Published: 2022-09-08
- Granted: 2024-02-20
- Earliest claimed: 2018-02-12
- Assignees: GoPro, Inc.
- Applicants: GoPro, Inc.
- Inventors: Guillaume Matthieu Guerin; Bruno Faure; Vincent Vacquerie; Bruno César Douady
- Web page: https://patentgrep.com/patent/US11908111B2

## CPC

- G06T 5/92: based on global image properties
- G06T 3/40: Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T 5/50: using two or more images, e.g. averaging or subtraction
- G06T 5/70: Denoising; Smoothing
- G06T 5/73: Deblurring; Sharpening
- G06T 9/00: Image coding (bandwidth or redundancy reduction for static pictures H04N1/41; coding or decoding of static colour picture signals H04N1/64; methods or arrangements for coding, decoding, compressing or decompressing digital video signals H04N19/00)
- H04N 9/646: {for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters}
- H04N 23/10: for generating image signals from different wavelengths
- G06T 2207/10016: Video; Image sequence
- G06T 2207/10024: Color image
- G06T 2207/20208: High dynamic range [HDR] image processing
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Image analysis and processing may include a first sensor readout unit receiving first Bayer format image data corresponding to a first input image, a second sensor readout unit receiving second Bayer format image data corresponding to a second input image, a first Bayer-to-RGB unit obtaining first RGB format image data based on the first Bayer format image data, a second Bayer-to-RGB unit obtaining second RGB format image data based on the second Bayer format image data, a high dynamic range unit configured obtaining high dynamic range image data based on a combination of the first RGB format image data and the second RGB format image data, an RGB-to-YUV unit obtaining YUV format image data based on the high dynamic range image data, and a three-dimensional noise reduction unit obtaining processed image data based on the YUV format image data.

## Claims

### Claim 1

An image processor for image analysis and processing comprising:
a sensor readout component configured to receive Bayer format image data corresponding to an input image;
a Bayer-to-Bayer component;
a Bayer-to-RGB component configured to obtain RGB format image data based on the Bayer format image data;
an RGB-to-YUV component configured to obtain YUV format image data based on the RGB format image data, wherein to obtain the YUV format image data, the RGB-to-YUV component is configured to:
divide the image into a plurality of non-overlapping tiles having a defined width and a defined height;
obtain a histogram for a respective tile from the plurality of non-overlapping tiles, wherein the RGB-to-YUV component is configured to obtain the histogram using a weight map that weights respective regions of interest in the image prior to statistics aggregation;
obtain a gain table for the respective tile; and
obtain a gain value for a portion of the respective tile by bilinear interpolation relative to the center of the respective tile; and
a noise reduction component configured to obtain noise reduced image data based on the YUV format image data;
wherein the image processor is configured to output processed image data based on the noise reduced image data.

### Claim 2 (depends on 1)

The image processor of claim 1, wherein to obtain the YUV format image data the RGB-to-YUV component is configured to:
obtain the weight map using a radial model, a two-dimensional low-resolution map, or a combination of the radial model and the two-dimensional low-resolution map.

### Claim 3 (depends on 1)

The image processor of claim 1, wherein to obtain the YUV format image data the RGB-to-YUV component is configured to obtain the weight map using a combination of a radial model and a two-dimensional low-resolution map, wherein the combination is an additive combination or a multiplicative combination.

### Claim 4 (depends on 1)

The image processor of claim 1, wherein to obtain the YUV format image data the RGB-to-YUV component is configured to obtain the weight map using a radial model that is configurable using a lookup table or a combination of the radial model and a two-dimensional low-resolution map.

### Claim 5 (depends on 4)

The image processor of claim 4, wherein a pixel outside the model is assigned a weight of one.

### Claim 6 (depends on 1)

The image processor of claim 1, wherein:
the Bayer-to-Bayer component includes a statistics unit configured to obtain weighted statistics for spherical image processing.

### Claim 7 (depends on 6)

The image processor of claim 6, wherein the statistics unit is configured to obtain the weighted statistics for auto-exposure processing.

### Claim 8 (depends on 6)

The image processor of claim 6, wherein the statistics unit is configured to obtain the weighted statistics for auto-white balance estimation.

### Claim 9 (depends on 1)

The image processor of claim 1, wherein the RGB-to-YUV component includes a multiple tone control unit that implements a double-buffer for multiple tone control parameters.

### Claim 10

An image processor for image analysis and processing comprising:
a sensor readout component configured to receive Bayer format image data corresponding to an input image;
a Bayer-to-Bayer component that includes a statistics unit configured to obtain weighted statistics for spherical image processing;
a Bayer-to-RGB component configured to obtain RGB format image data based on the Bayer format image data;
an RGB-to-YUV component configured to obtain YUV format image data based on the RGB format image data, wherein to obtain the YUV format image data, the RGB-to-YUV component is configured to:
divide the image into a plurality of non-overlapping tiles having a defined width and a defined height;
obtain a histogram for a respective tile from the plurality of non-overlapping tiles, wherein the RGB-to-YUV component is configured to obtain the histogram using a weight map that weights respective regions of interest in the image prior to statistics aggregation;
obtain a gain table for the respective tile; and
obtain a gain value for a portion of the respective tile by bilinear interpolation relative to the center of the respective tile; and
a noise reduction component configured to obtain noise reduced image data based on the YUV format image data;
wherein the image processor is configured to output processed spherical image data based on the noise reduced image data.

### Claim 11 (depends on 10)

The image processor of claim 10, wherein to obtain the YUV format image data the RGB-to-YUV component is configured to:
obtain the weight map using a radial model, a two-dimensional low-resolution map, or a combination of the radial model and the two-dimensional low-resolution map.

### Claim 12 (depends on 10)

The image processor of claim 10, wherein to obtain the YUV format image data the RGB-to-YUV component is configured to obtain the weight map using a combination of a radial model and a two-dimensional low-resolution map, wherein the combination is an additive combination or a multiplicative combination.

### Claim 13 (depends on 10)

The image processor of claim 10, wherein to obtain the YUV format image data the RGB-to-YUV component is configured to obtain the weight map using a radial model that is configurable using a lookup table or a combination of the radial model and a two-dimensional low-resolution map.

### Claim 14 (depends on 10)

The image processor of claim 10, wherein the statistics unit is configured to obtain the weighted statistics for auto-white balance estimation.

### Claim 15 (depends on 10)

The image processor of claim 10, wherein the statistics unit is configured to obtain the weighted statistics for auto-exposure processing.

### Claim 16

An image processor for image analysis and processing comprising:
a sensor readout component configured to receive Bayer format image data corresponding to an input image;
a Bayer-to-RGB component configured to obtain RGB format image data based on the Bayer format image data;
an RGB-to-YUV component configured to obtain YUV format image data based on the RGB format image data, wherein the RGB-to-YUV component includes a multiple tone control unit that implements a double-buffer for multiple tone control parameters, wherein to obtain the YUV format image data, the RGB-to-YUV component is configured to:
divide the image into a plurality of non-overlapping tiles having a defined width and a defined height;
obtain a histogram for a respective tile from the plurality of non-overlapping tiles, wherein the RGB-to-YUV component is configured to obtain the histogram using a weight map that weights respective regions of interest in the image prior to statistics aggregation;
obtain a gain table for the respective tile; and
obtain a gain value for a portion of the respective tile by bilinear interpolation relative to the center of the respective tile; and
a noise reduction component configured to obtain noise reduced image data based on the YUV format image data;
wherein the image processor is configured to output processed image data based on the noise reduced image data.
