Method for inconspicuously adding tracking data in coded images
First Claim
1. A method for adding to graphics data representing an image according to a first colorspace tracking data that does not represent the image, for subsequent mapping of the graphics data into a second colorspace distinct from the first colorspace according to a predefined gamut transform, the second colorspace including a limited usable range of values for color representation, the method comprising:
- identifying a host color within the first colorspace corresponding to a value that is in the usable range of the second colorspace according to the predefined gamut transform, the host color being associated with at least one null point within the first colorspace, the null point corresponding to a blind point that is outside the usable range of the second colorspace according to the predefined gamut transform;
identifying at least one host location in the image having an image color similar to the host color; and
modulating the graphics data with the tracking data such that the host image location will subsequently map data into the blind point of the second colorspace according to the predefined gamut transform.
3 Assignments
0 Petitions
Accused Products
Abstract
A method embeds tracking data into image graphics data that represents the image according to a first colorspace. The tracking data is embedded during encoding in black or white locations of the image, as variations of the chrominance coefficients. When the resulting data is converted into a second color space, the user tracking data does not alter the eventual visual image. Decoding methods are also provided for extracting the tracking data.
29 Citations
22 Claims
-
1. A method for adding to graphics data representing an image according to a first colorspace tracking data that does not represent the image, for subsequent mapping of the graphics data into a second colorspace distinct from the first colorspace according to a predefined gamut transform, the second colorspace including a limited usable range of values for color representation, the method comprising:
-
identifying a host color within the first colorspace corresponding to a value that is in the usable range of the second colorspace according to the predefined gamut transform, the host color being associated with at least one null point within the first colorspace, the null point corresponding to a blind point that is outside the usable range of the second colorspace according to the predefined gamut transform;
identifying at least one host location in the image having an image color similar to the host color; and
modulating the graphics data with the tracking data such that the host image location will subsequently map data into the blind point of the second colorspace according to the predefined gamut transform. - View Dependent Claims (2, 3)
-
-
4. A method for encoding graphics data representing an image while adding tracking data unrelated to representing the image comprising:
-
encoding a substantially non-zero luminance component and a chrominance component for the graphics data according to a first colorspace; and
determining whether a usable range for color representation in a second colorspace distinct from the first colorspace for values of a generic chrominance component corresponding to the encoded luminance component is more limited than a preset nominally available range for encoding in the first colorspace, and if so embedding the tracking data into the encoded chrominance component such that a resulting chrominance component corresponds to a value outside the usable range of the second colorspace prior to any truncation. - View Dependent Claims (5, 6, 7, 8)
wherein determining includes examining a value of the luminance component for determining whether a color is one of at least as dark as a lower luminance threshold and at least as light as an upper luminance threshold. -
6. The method of claim 5,
wherein the lower luminance threshold corresponds to the color black in the second colorspace and the upper luminance threshold corresponds to the color white in the second colorspace. -
7. The method of claim 4,
wherein the encoded chrominance component includes a series of chrominance bits, wherein the tracking data is tracking bits, and wherein embedding is performed by inserting the tracking bits within the series of chrominance bits. -
8. The method of claim 4, further using a value of a preset quantization factor for embedding the tracking data into the encoded chrominance component.
-
-
9. A method for encoding graphics data representing an image while adding tracking data unrelated to representing the image comprising:
-
encoding a luminance component and a chrominance component for the graphics data according to a first colorspace;
determining whether a usable range for color representation in a second colorspace distinct from the first colorspace for values of a generic chrominance component corresponding to the encoded luminance component is more limited than a preset nominally available range for encoding in the first colorspace, and if so, embedding the tracking data into the encoded chrominance component such that a resulting chrominance component corresponds to a value outside the usable range of the second colorspace prior to any truncation, and wherein the tracking data is embedded in connection with an End-Of-Block pattern of the encoded chrominance component.
-
-
10. A method for encoding graphics data representing an image while adding tracking data unrelated to representing the image comprising:
-
encoding a luminance component and a chrominance component for the graphics data according to a first colorspace;
determining whether a usable range for color representation in a second colorspace distinct from the first colorspace for values of a generic chrominance component corresponding to the encoded luminance component is more limited than a preset nominally available range for encoding in the first colorspace, and if so, embedding the tracking data into the encoded chrominance component such that a resulting chrominance component corresponds to a value outside the usable range of the second colorspace prior to any truncation, and wherein the tracking data is embedded in connection with an Escape sequence of the encoded chrominance component.
-
-
11. A method for encoding graphics data representing an image while adding tracking data unrelated to representing the image comprising:
-
encoding a substantially non-zero luminance component for the graphics data according to a first colorspace; and
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance component corresponding to the luminance component is more limited than a preset nominally available range in the first colorspace, and if so preparing an encoded chrominance component that corresponds to the luminance component, includes the tracking data, and corresponds to a value outside the usable range of the second colorspace prior to any truncation. - View Dependent Claims (12, 13, 14)
wherein determining includes examining a value of the luminance component for determining whether a color is one of at least as dark as a lower luminance threshold and at least as light as an upper luminance threshold. -
13. The method of claim 12,
wherein the lower luminance threshold corresponds to the color black in the second colorspace and the upper luminance threshold corresponds to the color white in the second colorspace. -
14. The method of claim 11, further using a value of a preset quantization factor for preparing the encoded chrominance component.
-
-
15. A method for encoding graphics data representing an image while adding tracking data unrelated to representing the image comprising:
-
encoding a luminance component for the graphics data according to a first colorspace;
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance component corresponding to the luminance component is more limited than a preset nominally available range in the first colorspace, and if so preparing an encoded chrominance component that corresponds to the luminance component, includes the tracking data, and corresponds to a value outside the usable range of the second colorspace prior to any truncation; and
wherein the tracking data is placed in connection with an End-Of-Block pattern of the encoded chrominance component.
-
-
16. A method for encoding graphics data representing an image while adding tracking data unrelated to representing the image comprising:
-
encoding a luminance component for the graphics data according to a first colorspace;
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance component corresponding to the luminance-component is more limited than a preset nominally available range in the first colorspace, and if so preparing an encoded chrominance component that corresponds to the luminance component, includes the tracking data, and corresponds to a value outside the usable range of the second colorspace prior to any truncation; and
wherein the tracking data is placed in connection with an Escape sequence of the encoded chrominance component.
-
-
17. A method for decoding data comprising:
-
decoding a block of a substantially non-zero luminance component of the data that was encoded according to a first colorspace;
selecting a block of a chrominance component of the data that corresponds to the luminance block data;
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance data block corresponding to the luminance data block is more limited than a preset nominally available range for encoding in the first colorspace, and if so, extracting from the selected chrominance block tracking data corresponding to a value that is outside the usable range of the second colorspace prior to any truncation. - View Dependent Claims (18, 19)
wherein determining includes examining a value of the luminance component for determining whether a color is one of at least as dark as a lower luminance threshold and at least as light as an upper luminance threshold. -
19. The method of claim 18,
wherein the lower luminance threshold corresponds to the color black in the second colorspace and the lower luminance threshold corresponds to the color white in the second colorspace.
-
-
20. A method for decoding data comprising:
-
decoding a block of a luminance component of the data that was encoded according to a first colorspace;
selecting a block of a chrominance component of the data that corresponds to the luminance block data;
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance data block corresponding to the luminance data block is more limited than a preset nominally available range for encoding in the first colorspace, and if so, extracting from the selected chrominance block tracking data corresponding to a value that is outside the usable range of the second colorspace prior to any truncation; and
decoding the selected chrominance block after extracting the tracking data.
-
-
21. A method for decoding data comprising:
-
decoding a block of a luminance component of the data that was encoded according to a first colorspace;
selecting a block of a chrominance component of the data that corresponds to the luminance block data;
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance data block corresponding to the luminance data block is more limited than a preset nominally available range for encoding in the first colorspace, and if so, extracting from the selected chrominance block tracking data corresponding to a value that is outside the usable range of the second colorspace prior to any truncation; and
further comprising setting coefficients of the chrominance block data to preset values after extracting the tracking data.
-
-
22. A method for decoding data comprising:
-
decoding a block of a luminance component of the data that was encoded according to a first colorspace;
selecting a block of a chrominance component of the data that corresponds to the luminance block data;
determining whether a usable range for representing color in a second colorspace distinct from the first colorspace for values of a generic chrominance data block corresponding to the luminance data block is more limited than a preset nominally available range for encoding in the first colorspace, and if so, extracting from the selected chrominance block tracking data corresponding to a value that is outside the usable range of the second colorspace prior to any truncation; and
setting coefficients of the chrominance block data to a midrange value after extracting the tracking data.
-
Specification