Digital watermarking using saturation patterns
AssigneeHewlett-Packard Development Company, L.P.
InventorsHui-Man Hou, Jian-Ming Jin, Yuhong Xiong
Life of this patent
Estimating the term…
Abstract
An example method includes dividing the image into blocks of pixels of a predefined size; for each block, selecting one of a plurality of saturation patterns representing a binary value of one or more bits of digital watermark data corresponding to the block; and for each block, embedding the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within the block in accordance with the selected pattern.
Claims10
A method comprising:
- a) using a processor, transforming luminance values of one or more pixels in image data of an image so that each of the luminance values falls within a predefined range of luminance values;
- b) using said processor, dividing the image into blocks of pixels of a predefined size;
- c) for each block, using said processor to select one of a plurality of saturation patterns representing a binary value of one or more bits of digital watermark data corresponding to the block;
- and
- d) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within the block in accordance with the selected pattern,
- wherein the predefined range of luminance values includes a lower limit that is higher than zero and an upper limit that is lower than a full scale luminance value.
A method, comprising:
- a) using said processor, dividing the image into blocks of pixels of a predefined size;
- b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block;
- and
- c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block,
- wherein the plurality of saturation patterns comprises a first saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is lower than the average saturation of an inner group of pixels surrounded by the first group of pixels, and a second saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is higher than the average saturation of an inner group of pixels surrounded by the first group of pixels, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
A method, comprising:
- a) using said processor, dividing the image into blocks of pixels of a predefined size;
- b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block;
- and
- c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block,
- wherein the plurality of saturation patterns comprises first to fourth saturation patterns in which an outer group of pixels disposed around the perimeter of the block surrounds an inner group of pixels defining an elongate region in which the pixels have differing saturation values to the pixels in the outer region, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values:
- 00, 01, 10, 11.
A system comprising a processor and a memory, the processor to execute a set of computer-readable instructions stored in the memory, the computer-readable instructions including the following steps:
- a) using said processor, transforming luminance values of one or more pixels in image data of an image so that each of the luminance values falls within a predefined range of luminance values;
- b) using said processor, dividing the image into blocks of pixels of a predefined size;
- c) for each block, using said processor to select one of a plurality of saturation patterns representing a binary value of one or more bits of digital watermark data corresponding to the block;
- and
- d) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within the block in accordance with the selected pattern,
- wherein the predefined range of luminance values includes a lower limit that is higher than zero and an upper limit that is lower than a full scale luminance value.
A non-transitory computer readable medium, comprising a set of computer-readable instructions, when executed on a computer device, to cause said computer device to:
- a) transform luminance values of one or more pixels in image data of an image so that each of the luminance values falls within a predefined range of luminance values;
- b) divide the image into blocks of pixels of a predefined size;
- c) for each block, select one of a plurality of saturation patterns representing a binary value of one or more bits of digital watermark data corresponding to the block;
- and
- d) for each block, embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within the block in accordance with the selected pattern,
- wherein the predefined range of luminance values includes a lower limit that is higher than zero and an upper limit that is lower than a full scale luminance value.
Dependencies are inferred from the claim text.