# US 10,319,131 B2 · Digital signal processing for image filtering field

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

- Number: US 10,319,131 B2
- Document ID: US10319131B2
- Status: Granted
- Kind: B2
- Application number: 15/971,587
- Filed: 2018-05-04
- Published: 2018-09-13
- Granted: 2019-06-11
- Earliest claimed: 2015-07-30
- Assignees: David Sarma
- Applicants: David Sarma
- Inventors: David Sarma
- Web page: https://patentgrep.com/patent/US10319131B2

## CPC

- G06T 5/77: Retouching; Inpainting; Scratch removal
- G06T 3/40: Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T 11/60: Creating or editing images; Combining images with text
- G06T 2207/10024: Color image
- G06T 2207/20012: Locally adaptive
- G06T 2207/20016: Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A processor-implemented method and system of this disclosure are configured to correct or resolve artifacts in a received digital image, using a selection of one or more encompassment measures, each encompassing the largest artifact and an optional second smaller artifact. The processor herein is configured to calculate difference in Gaussians using blurred versions of the input digital image and optionally, the input digital image itself; to composite the resulting difference in Gaussians and the input digital image; and to determine pixels with properties of invariant values, also referred to as invariant pixels. The values in the properties of the invariant pixels are then applied to the artifacts regions to correct these artifacts, thereby generating the modified digital image in which the artifact regions are more or less differentiable to a human eye when compared with the digital image.

## Claims

### Claim 1

A processor-implemented method of processing a digital image to correct artifacts, the processor-implemented method comprising:
(a) receiving, at a processor from a buffer, a digital image comprising one or more artifact regions;
(b) receiving, at the processor, a first selection of a first encompassment measure that encompasses a largest artifact region of the one or more artifact regions;
(c) blurring, by the processor, a copy of the digital image using the first encompassment measure to generate a first blurred image that is stored in the buffer;
(d) calculating, by the processor,
i. a first difference of Gaussians of the digital image from the first blurred image, and
ii. a second difference of Gaussians of the first blurred image from the digital image;
(e) compositing, by the processor, using equation C=α*B, where α is the first difference of Gaussians, B is a scaled version of the digital image, and result, C, is a first composited image;
(f) compositing, by the processor, using equation E=A+C+(β*D), where A is the digital image, β is the second difference of Gaussians, D is a scaled version of C and is oppositely scaled than the scaling used for B, and result, E, is a second composited image; and
(g) modifying, by the processor, the digital image, when it is determined that there are one or more pixels of invariable values in a difference image that is generated by a difference of the digital image from the second composited image, wherein the modifying comprises:
scaling one or more values of pixels in each of the one or more artifact regions to within a predefined factor of the invariable values, thereby generating a modified digital image, and wherein a correction to the artifacts in the digital image is provided in the modified digital image.

### Claim 2 (depends on 1)

The processor-implemented method of claim 1, further comprising:
repeating, by the processor, steps (c)-(g) using a modified blurred image, wherein the modified blurred image is generated by scaling up a second encompassment measure that is obtained from a second selection of the second encompassment measure, the scaling up by at least one unit when it is determined that the second encompassment measure is less than the first encompassment measure.

### Claim 3 (depends on 1)

The processor-implemented method of claim 1, wherein the blurring is a Gaussian blurring.

### Claim 4 (depends on 1)

The processor-implemented method of claim 1, wherein the first encompassment measure is represented in units of pixels.

### Claim 5 (depends on 1)

The processor-implemented method of claim 1, wherein the compositing comprises alpha compositing.

### Claim 6 (depends on 1)

The processor-implemented method of claim 1, wherein B is a scaled up version of the digital image and corresponds to the digital image that has one or more of its pixels' properties changed by an increase of its initial values.

### Claim 7 (depends on 6)

The processor-implemented method of claim 6, wherein the one or more properties comprise multiple or gain; offset or brightness; or gamma.

### Claim 8 (depends on 6)

The processor-implemented method of claim 6, wherein the increase from the initial values is one or more of: a proportional increase or a random increase, and wherein the random increase is by a scale up random value from 1 to 100 to scale up the initial values.

### Claim 9 (depends on 8)

The processor-implemented method of claim 8, wherein the scaled up version of the digital image is obtained by the random increase using a multiplication function on the initial values, thereby multiplying the initial values by the scale up random value.

### Claim 10 (depends on 1)

The processor-implemented method of claim 1, wherein the scaling is a scaling up of the one or more values of pixels by increasing one or more property values of the pixels, wherein the one or more property values comprise values for multiple or gain; offset or brightness; or gamma.

### Claim 11 (depends on 1)

The processor-implemented method of claim 1, wherein the predefined factor of the invariable values is +/−10% of the invariable values.

### Claim 12 (depends on 1)

The processor-implemented method of claim 1, wherein the correction corresponds to a modification of the digital image to make the artifact regions more differentiable to a human eye reviewing the modified digital image when compared with the digital image.

### Claim 13 (depends on 1)

The processor-implemented method of claim 1, wherein step (g) for modifying the digital image comprises:
i. compositing, using equation G=α*F, where α is the first difference of Gaussians, F is a scaled up version of the digital image using the predefined factor of the invariable values for scaling, and result, G, is a third composited image; and
ii. compositing, using equation I=A+G+(β*H), where A is the digital image, β is the second difference of Gaussians, H is a scaled down version of G using the predefined factor of the invariable values for scaling, and result, I, is the modified digital image or a greyscale version of the modified digital image.

### Claim 14 (depends on 13)

The processor-implemented method of claim 13, wherein the result, I, is converted from a greyscale colorspace to an RGB, CMYK, or any multichannel colorspace, when the result, I, is a greyscale formatted image.

### Claim 15 (depends on 13)

The processor-implemented method of claim 13, wherein the digital image A is first converted from a CMYK, an RGB, or any multichannel colorspace to an HSV, Lab, or any greyscale colorspace, prior to performing the functions of steps (c)-(g).

### Claim 16 (depends on 1)

The processor-implemented method of claim 1, wherein
i. the digital image A comprises red, a green, or a blue component images of a full color digital image;
ii. each of the red, the green, and the blue component images are subject to the same selections of step (b);
iii. each of the red, the green, and the blue component images are subject to the steps (c)-(g); and
iv. a final compositing step is performed to combine each of the modified digital images of step (g) corresponding to the red, the green, and the blue component images, thereby producing a final composited version of the digital image, the final composited version of the digital image comprising the correction to the artifacts is provided in the digital image.

### Claim 17

A processor-implemented system for processing a digital image to correct artifacts, the processor-implemented system comprising:
a buffer; and
a processor coupled to the buffer, the processor configured to:
(a) receive a digital image comprising one or more artifact regions;
(b) receive a first selection of a first encompassment measure that encompasses a largest artifact region of the one or more artifact regions;
(c) blur a copy of the digital image using the first encompassment measure to generate a first blurred image that is stored in the buffer;
(d) calculate:
i. a first difference of Gaussians of the digital image from the first blurred image, and
ii. a second difference of Gaussians of the first blurred image from the digital image;
(e) composite, using equation C=α*B, where α is the first difference of Gaussians, B is a scaled version of the digital image, and result, C, is a first composited image;
(f) composite, using equation E=A+C+(β*D), where A is the digital image, β is the second difference of Gaussians, D is a scaled version of C and is oppositely scaled than the scaling used for B, and result, E, is a second composited image; and
(g) modify the digital image, when it is determined that there are one or more pixels of invariable values in a difference image that is generated by a difference of the digital image from the second composited image, wherein the modifying comprises:
scaling one or more values of pixels in each of the one or more artifact regions to within a predefined factor of the invariable values, thereby generating a modified digital image, and wherein a correction to the artifacts in the digital image is provided in the modified digital image.

### Claim 18 (depends on 17)

The processor-implemented system of claim 17, further comprising: the processor configured to repeat steps (c)-(g) using a modified blurred image, wherein the modified blurred image is generated by scaling up a second encompassment measure that is obtained from a second selection of the second encompassment measure, the scaling up by at least one unit when it is determined that the second encompassment measure is less than the first encompassment measure.

### Claim 19 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to blur using Gaussian blurring.

### Claim 20 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to receive the first encompassment measure in units of pixels.

### Claim 21 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to perform alpha compositing.

### Claim 22 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to provide B as a scaled up version of the digital image and as corresponding to the digital image that has one or more of its pixels' properties changed by an increase of its initial values.

### Claim 23 (depends on 22)

The processor-implemented system of claim 22, wherein the processor is configured to change one or more properties comprising multiple or gain; offset or brightness; or gamma.

### Claim 24 (depends on 22)

The processor-implemented system of claim 22, wherein the processor is configured to increase the initial values by one or more of: a proportional increase or a random increase, and wherein the random increase is by a scale up random value from 1 to 100 to scale up the initial values.

### Claim 25 (depends on 24)

The processor-implemented system of claim 24, wherein the processor is configured for the random increase using a multiplication function on the initial values, thereby multiplying the initial values by the scale up random value.

### Claim 26 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured for the scaling of the one or more values of pixels by increasing one or more property values of the pixels, wherein the one or more property values comprise values for multiple or gain; offset or brightness; or gamma.

### Claim 27 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to use +/−10% of the invariable values as the predefined factor of the invariable values.

### Claim 28 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to apply the correction, thereby providing a modification of the digital image to make the artifact regions more differentiable to a human eye reviewing the modified digital image when compared with the digital image.

### Claim 29 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to perform step (g) for modifying the digital image by:
i. compositing, using equation G=α*F, where α is the first difference of Gaussians, F is a scaled up version of the digital image using the predefined factor of the invariable values for scaling, and result, G, is a third composited image; and
ii. compositing, using equation I=A+G+(β*H), where A is the digital image, β is the second difference of Gaussians, H is a scaled down version of G using the predefined factor of the invariable values for scaling, and result, I, is the modified digital image or a greyscale version of the modified digital image.

### Claim 30 (depends on 29)

The processor-implemented system of claim 29, wherein the processor is configured to convert the result, I, from a greyscale colorspace to an RGB, CMYK, or any multichannel colorspace, when the result, I, is a greyscale formatted image.

### Claim 31 (depends on 29)

The processor-implemented system of claim 29, wherein the processor is configured to first convert the digital image A from a CMYK, an RGB, or any multi-channel colorspace to an HSV, Lab, or any greyscale colorspace, prior to performing the functions of steps (c)-(g).

### Claim 32 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to:
i. receive the digital image A in a format comprising red, a green, or a blue component images of a full color digital image;
ii. receive the same selections of step (b) for each of the red, the green, and the blue component images;
iii. process, according to steps (c)-(g), each of the red, the green, and the blue component images; and
iv. composite, as a final compositing step, each of the modified digital images of step (g) corresponding to the red, the green, and the blue component images, thereby producing a final composited version of the digital image, the final composited version of the digital image comprising the correction to the artifacts is provided in the digital image.

### Claim 33

A processor-implemented method of processing a digital image to correct artifacts, the processor-implemented method comprising:
(a) receiving, at a processor from a buffer, a digital image comprising one or more artifact regions;
(b) receiving, at the processor, a first selection of a first encompassment measure that encompasses a largest artifact region of the one or more artifact regions;
(c) blurring, by the processor, a copy of the digital image using the first encompassment measure to generate a first blurred image that is stored in the buffer;
(d) calculating, by the processor,
i. a first difference of Gaussians of the digital image from the first blurred image, and
ii. a second difference of Gaussians of the first blurred image from the digital image;
(e) compositing, by the processor, using equation C=α*B, where α is the first difference of Gaussians, B is a scaled version of the digital image, and result, C, is a first composited image;
(f) compositing, by the processor, using equation E=A+C+(β*D), where A is the digital image, β is the second difference of Gaussians, D is a scaled version of C and is oppositely scaled than the scaling used for B, and result, E, is a second composited image; and
(g) modifying, by the processor, the digital image, when it is determined that there are one or more voxels of invariable values in a difference image that is generated by a difference of the digital image from the second composited image, wherein the modifying comprises:
scaling one or more values of voxels in each of the one or more artifact regions to within a predefined factor of the invariable values, thereby generating a modified digital image, and
wherein a correction to the artifacts in the digital image is provided in the modified digital image.

### Claim 34 (depends on 33)

The processor-implemented system of claim 33, wherein the digital image is a portion or a separated feature from an image file.

### Claim 35 (depends on 1)

The processor-implemented method of claim 1, wherein the correction corresponds to a modification of the digital image to make the artifact regions less differentiable to a human eye reviewing the modified digital image when compared with the digital image.

### Claim 36 (depends on 1)

The processor-implemented method of claim 1, wherein B is a scaled down version of the digital image and corresponds to the digital image that has one or more of its pixels' properties changed by a decrease of its initial values.

### Claim 37 (depends on 36)

The processor-implemented method of claim 36, wherein the decrease from the initial values is one or more of: a proportional decrease or a random decrease, and wherein the random decrease is by a scale down random value from 0 to 1 to scale down the initial values.

### Claim 38 (depends on 1)

The processor-implemented method of claim 1, wherein the scaling is a scaling down of the one or more values of pixels by decreasing one or more property values of the pixels, wherein the one or more property values comprise values for multiple or gain; offset or brightness; or gamma.

### Claim 39 (depends on 1)

The processor-implemented method of claim 1, wherein step (g) for modifying the digital image comprises:
i. compositing, using equation G=α*F, where α is the first difference of Gaussians, F is a scaled down version of the digital image using the predefined factor of the invariable values for scaling, and result, G, is a third composited image; and
ii. compositing, using equation I=A+G+(β*H), where A is the digital image, β is the second difference of Gaussians, H is a scaled up version of G using the predefined factor of the invariable values for scaling, and result, I, is the modified digital image or a greyscale version of the modified digital image.

### Claim 40 (depends on 17)

The processor-implemented system of claim 17, wherein the processor is configured to apply the correction, thereby providing a modification of the digital image to make the artifact regions less differentiable to a human eye reviewing the modified digital image when compared with the digital image.

### Claim 41

A processor-implemented method of processing a digital image to correct artifacts, the processor-implemented method comprising:
(a) receiving, at a processor from a buffer, a digital image comprising one or more artifact regions;
(b) receiving, at the processor,
i. a first selection of a first encompassment measure that encompasses a largest artifact region of the one or more artifact regions, and
ii. a second selection of a second encompassment measure that is lesser than the first encompassment measure;
(c) blurring, by the processor,
i. a copy of the digital image using the first encompassment measure to generate a first blurred image that is stored in the buffer, and
ii. a copy of the digital image using the second encompassment measure to generate a second blurred image is stored in the buffer;
(d) calculating, by the processor,
i. a first difference of Gaussians of either, the digital image or the second blurred image, from the first blurred image, and
ii. a second difference of Gaussians of the first blurred image from either, the digital image or the second blurred image;
(e) compositing, by the processor, using equation C=α*B, where α is the first difference of Gaussians, B is a scaled version of the digital image, and result, C, is a first composited image;
(f) compositing, by the processor, using equation E=A+C+(β*D), where A is the digital image, β is the second difference of Gaussians, D is a scaled version of C and is oppositely scaled than the scaling used for B, and result, E, is a second composited image;
(g) determining, by the processor, when there are one or more pixels of invariable values in a difference image that is generated by a difference of the digital image from the second composited image; and
(h) modifying, by the processor, the digital image, when it is determined that there are one or more pixels of invariable values, wherein the modifying comprises:
scaling one or more values of pixels in each of the one or more artifact regions to within a predefined factor of the invariable values, thereby generating a modified digital image, and wherein a modification to the artifacts in the digital image is provided in the modified digital image.
