IP Library Granted Patent US 11,836,824
Granted Patent B2
US 11,836,824 · App. 17/537,022 · Granted Dec 5, 2023

Color managed embedding system for embedding signals in color artwork

Inventor: Jerry Allen McMahan, Jr. (Beaverton, OR)
Assignee: Digimarc Corporation
G06T1/0021G01J3/462G01J3/463G06T7/90G06T11/001
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,836,824
App. No.
17/537,022
Granted
Dec 5, 2023
Kind
B2
Abstract

The present disclosure relates generally to signal encoding. Digital files representing artwork for printed objects, e.g., product packaging, labels and hangtags, can be encoded to carry information. One implementation obtains a color image representing CMY color channels, and alters the color image to include an encoded signal by altering values representing CIELAB a* and b*, all the while keeping L* on or within a predetermined tolerance of a contour representing a constant value. Other implementations are provided.

Claims (21)

1. A non-transitory computer readable medium comprising instructions stored therein that, when executed by one or more multi-core processors, cause said multi-core processors to perform the following:

at a color image location to be changed, determining L*, a*, b* gradient information with respect to changes in original Cyan (C), original Magenta (M), and original Yellow (Y), collectively, original CMY, in which L*,a*, b* are represented in CIELAB space;

using determined L* gradient information to find a direction in CMY-space which moves towards a target a*, b* value while keeping L* unchanged within a predetermined tolerance;

using determined a*, b* gradient information to find a scale value for a*, b* in a determined L* gradient direction to reach the target a*, b* value;

altering the original CMY with a found scale value to yield a scaled CMY, and using the scaled CMY as replacement values for the original CMY, the scaled CMY carrying an encoded signal.

2. The non-transitory computer readable medium of claim 1 , further comprising instructions stored therein that, when executed by said one or more multi-core processors, cause said multi-core processors to perform the following:

if L* has changed above the predetermined tolerance, use the determined a*, b* gradient information to find a direction that changes L* while keeping a*, b* unchanged within a predetermined tolerance, and use the determined L* gradient information to find a scale value to reduce L*.

3. The non-transitory computer readable medium of claim 1 in which the target a*, b* value represents an a*, b* value which includes an encoded signal value for an image pixel or group of image pixels.

4. The non-transitory computer readable medium of claim 1 in which the color image location to be changed comprises an image pixel or group of image pixels.

5. An apparatus comprising:

memory storing a color image comprising original Cyan (C), original Magenta (M), and original Yellow (Y), collectively, original CMY, and information representing a contour associated with a constant CIELAB L* for different values of the original CMY;

means for determining L* gradient information, at a starting location on the contour represented by an original CIELAB a*, b*, to find a direction in CMY-space which moves towards a target CIELAB a*, b*, the target CIELAB a*, b* residing on the contour;

means for determining a scalar representing a distance between the original CIELAB a*, b* and the target CIELAB a*, b*; and

means for applying the determined scalar to the original CMY to yield scaled CMY, the scaled CMY carrying an encoded signal.

6. The apparatus of claim 5 further comprising means for correcting the scaled CMY when L* is located off the contour.

7. A non-transitory computer readable medium comprising instructions stored therein that, when executed by one or more multi-core processors, cause said multi-core processors to perform the following:

accessing CIELAB L*, a*, b* values representing a color image comprising CMY channels;

generating a local approximation of a CIELAB L* contour;

determining a direction along the CIELAB L* contour to introduce a change to carry a signal in the color image;

determining an amount of change using a rate of change in the determined direction;

applying the determined amount of change to the CIELAB L*, a*, b* values to achieve new CIELAB L*, a*, b* values, the new CIELAB L*, a*, b* values carrying the signal.

Assignments (2)
ARTICLES OF CONVERSION Recorded Jun 19, 2026
From: DIGIMARC CORPORATION
To: DIGIMARC LLC
Reel/Frame 075863/0211 →
ARTICLES OF AMENDMENT OFTHE ARTICLES OF ORGANIZATION OF DIGIMARC LLC Recorded Jun 19, 2026
From: DIGIMARC LLC
To: DMRC LLC
Reel/Frame 075863/0266 →
Continuity (8)
Continuation 17067717 · Oct 11, 2020
Continuation In Part 16703601 · Dec 4, 2019
Provisional Application 63059774 · Jul 31, 2020
Provisional Application 63029297 · May 22, 2020
Provisional Application 63001035 · Mar 27, 2020
Provisional Application 62933042 · Nov 8, 2019
Provisional Application 62914302 · Oct 11, 2019
Related Publication 20220207642A1 · Jun 30, 2022