IP Library Granted Patent US 8,014,035
Granted Patent B2
US 8,014,035 · App. 12/207,718 · Granted Sep 6, 2011

Decoding message data embedded in an image print via halftone dot orientation

Assignee: Xerox Corporation
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 8,014,035
App. No.
12/207,718
Granted
Sep 6, 2011
Kind
B2
Abstract

What is disclosed is a novel system and method for encoding/decoding data in a cover contone image via halftone dot orientation modulation. Arrays of halftone threshold values are used to determine a desired orientation, e.g. 0/90°+/−45° for a given single data value of the original message to be embedded. Message data is embedded as a function of halftone dot orientation. Detection modeling of the print-scan process enables the determination of dot orientation from the image scan via statistically motivated image moments. A probabilistic model of the print-scan channel conditions received moments on input orientation. Density values of the received moments are used to determine dot orientation for each halftone cell. The embedded data is retrieved based on the determined orientations. The present method is applicable to areas of data embedding, document security, and the like.

Claims (543)

1. A method for decoding data embedded in an image via halftone dot orientation, the method comprising:

scanning an image print containing a data message embedded therein, said message comprising a plurality of single data values, each single data value taking only one unique state;

synchronizing said scanned image to a uniform periodic tiling utilized for generating said image print to compensate for geometric distortions introduced by print/scan processes performed on said image print;

associating a unique orientation direction with each of said unique states, each of said unique orientation directions being oriented with respect to a horizontal and vertical axis of said scanned image print;

defining a uniform periodic tiling for said scanned image; and

for each of said uniform periodic tiles in said uniform tiling,

calculating a plurality of image moments for a halftone dot of a current tile, one image moment being calculated along each of said unique orientation directions;

determining a largest of said calculated moments, said largest moment identifying a dominant orientation direction for said halftone dot; and

decoding a single data value embedded in said current tile based on which of said unique states is associated said determined dominant orientation direction.

2. The method of claim 1 , wherein synchronizing said scanned image comprises:

obtaining a frequency domain representation of image data obtained from said scanned image print;

locating positions of magnitude peaks in said scanned data;

estimating a global rotation and a scaling factor from said magnitude peak positions; and

synchronizing said scanned image based on said estimated global rotation and scaling factor.

3. The method of claim 1 , wherein synchronizing said scanned image further comprises estimating an extent of each uniform tile in the scan coordinate space based on scan data of neighboring uniform tiles, said neighbor tiles preceding said current tile in the processing sequence.

4. The method of claim 1 , wherein calculating two of said image moments (σ x , σ y ) for unique orientation directions along orthogonal x and y axis comprises:

σ

x

=

x

,

y

,

C

I

s

(

x

,

y

)

(

x

-

x

_

)

2

x

,

y

C

I

s

(

x

,

y

)

σ

y

=

x

,

y

C

I

s

(

x

,

y

)

(

y

-

y

_

)

2

x

,

y

C

I

s

(

x

,

y

)

where:

x

_

=

x

,

y

C

I

s

(

x

,

y

)

x

x

,

y

C

I

s

(

x

,

y

)

and

y

_

=

x

,

y

C

I

s

(

x

,

y

)

y

x

,

y

C

I

s

(

x

,

y

)

represents a center of mass of said halftone dot along each axis respectively and C denotes a spatial extent of the halftone tile.

5. The method in claim 4 , wherein synchronizing said scanned image further comprises:

for each tile in said uniform periodic tiling,

estimating a center of said tile based on a center of mass determined for a halftone dot in said current tile; and

using center of mass coordinates for said current tile and center of mass coordinates of spatially adjacent neighboring tiles surrounding said current tile to estimate a region in scan coordinates corresponding to a next tile to be processed.

6. The method of claim 4 , further comprising calculating image moments along additional orientations obtained through a rotation of the x-y coordinate axis.

7. The method in claim 1 , further comprising computing a plurality of image moments over a plurality of tiles in an error correction decoder to estimate the message embedded in said image print.

8. The method of claim 1 , further comprising retrieving a tag from a predetermined location in said scanned image, said tag indicating a starting tile location in said image wherein said message data can be retrieved.

9. The method of claim 1 , further comprising performing an error correction on said decoded message.

10. A system for decoding data embedded in an image via halftone dot orientation, the system comprising:

a storage medium capable of storing data; and

a processor in communication with said storage medium, said processor capable of executing a machine readable instruction for performing the method of:

scanning an image print containing a data message embedded therein, said message comprising a plurality of single data values, each single data value taking only one unique state;

synchronizing said scanned image to a uniform periodic tiling utilized for generating said image print to compensate for geometric distortions introduced by print/scan processes performed on said image print;

associating a unique orientation direction with each of said unique states, each of said unique orientation directions being oriented with respect to a horizontal and vertical axis of said scanned image print;

defining a uniform periodic tiling for said scanned image; and

for each of said uniform periodic tiles in said uniform tiling,

calculating a plurality of image moments for a halftone dot of a current tile, one image moment being calculated along each of said unique orientation directions;

determining a largest of said calculated moments, said largest moment identifying a dominant orientation direction for said halftone dot; and

decoding a single data value embedded in said current tile based on which of said unique states is associated said determined dominant orientation direction.

11. The system of claim 10 , wherein synchronizing said scanned image comprises:

obtaining a frequency domain representation of image data obtained from said scanned image print;

locating positions of magnitude peaks in said scanned data;

estimating a global rotation and a scaling factor from said magnitude peak positions; and

synchronizing said scanned image based on said estimated global rotation and scaling factor.

12. The system of claim 10 , wherein calculating two of said image moments (σ x ,σ y ) for unique orientation directions along orthogonal x and y axis comprises:

σ

x

=

x

,

y

C

I

s

(

x

,

y

)

(

x

-

x

_

)

2

x

,

y

C

I

s

(

x

,

y

)

σ

y

=

x

,

y

C

I

s

(

x

,

y

)

(

y

-

y

_

)

2

x

,

y

C

I

s

(

x

,

y

)

where:

x

_

=

x

,

y

C

I

s

(

x

,

y

)

x

x

,

y

C

I

s

(

x

,

y

)

and

y

_

=

x

,

y

C

I

s

(

x

,

y

)

y

x

,

y

C

I

s

(

x

,

y

)

represent a center of mass of said halftone dot along each axis respectively and C denotes a spatial extent of the halftone tile.

13. The system in claim 12 , wherein synchronizing said scanned image further comprises:

for each tile in said uniform periodic tiling,

estimating a center of said tile based on a center of mass determined for a halftone dot in said current tile; and

using center of mass coordinates for said current tile and center of mass coordinates of spatially adjacent neighboring tiles surrounding said current tile to estimate a region in scan coordinates corresponding to a next tile to be processed.

14. The system of claim 12 , further comprising calculating image moments along additional orientations obtained through a rotation of the x-y coordinate axis.

15. The system in claim 10 , further comprising computing a plurality of image moments over a plurality of tiles in an error correction decoder to estimate the message embedded in said image print.

16. The system of claim 10 , further comprising performing an error correction on said decoded message.

17. A computer program product for decoding data embedded in an image via halftone dot orientation, the computer program product comprising:

a non-transitory computer readable media for storing instructions that, when executed on a computer, cause the computer to perform a method comprising:

scanning an image print containing a data message embedded therein, said message comprising a plurality of single data values, each single data value taking only one unique state;

synchronizing said scanned image to a uniform periodic tiling utilized for generating said image print to compensate for geometric distortions introduced by print/scan processes performed on said image print;

associating a unique orientation direction with each of said unique states, each of said unique orientation directions being oriented with respect to a horizontal and vertical axis of said scanned image print;

defining a uniform periodic tiling for said scanned image; and

for each of said uniform periodic tiles in said uniform tiling,

calculating a plurality of image moments for a halftone dot of a current tile, one image moment being calculated along each of said unique orientation directions;

determining a largest of said calculated moments, said largest moment identifying a dominant orientation direction for said halftone dot; and

decoding a single data value embedded in said current tile based on which of said unique states is associated said determined dominant orientation direction.

18. The computer program product of claim 17 , wherein calculating two of said image moments (σ x , σ y ) for unique orientation directions along orthogonal x and y axis comprises:

σ

x

=

x

,

y

C

I

s

(

x

,

y

)

(

x

-

x

_

)

2

x

,

y

C

I

s

(

x

,

y

)

σ

y

=

x

,

y

C

I

s

(

x

,

y

)

(

y

-

y

_

)

2

x

,

y

C

I

s

(

x

,

y

)

where:

x

_

=

x

,

y

C

I

s

(

x

,

y

)

x

x

,

y

C

I

s

(

x

,

y

)

and

y

_

=

x

,

y

C

I

s

(

x

,

y

)

y

x

,

y

C

I

s

(

x

,

y

)

represent a center of mass of said halftone dot along each axis respectively and C denotes a spatial extent of the halftone tile.

19. The computer program product in claim 17 , wherein synchronizing said scanned image comprises:

obtaining a frequency domain representation of image data obtained from said scanned image print;

locating positions of magnitude peaks in said scanned data;

estimating a global rotation and a scaling factor from said magnitude peak positions; and

synchronizing said scanned image based on said estimated global rotation and scaling factor.

20. The computer program product in claim 17 , further comprising performing an error correction on said decoded message.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT RF 064760/0389 Recorded Feb 13, 2024
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: XEROX CORPORATION
Reel/Frame 068261/0001 →
SECURITY INTEREST Recorded Jun 22, 2023
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 064760/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2012
From: SHARMA, GAURAV; BULAN, ORHAN
To: UNIVERSITY OF ROCHESTER
Reel/Frame 027877/0922 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2009
From: MONGA, VISHAL
To: XEROX CORPORATION
Reel/Frame 022526/0800 →
Continuity (1)
Related Publication 20100060943A1 · Mar 11, 2010