System and method for digitally marking a file with a removable mark
First Claim
1. A method of encoding a mark into digital data, comprising the steps of:
- locating in the digital data, using a predetermined pattern, at least two values that represent a flat area; and
modifying the values in the flat area to encode a mark into the flat area;
wherein the step locating in the digital data is further comprised of the steps of;
calculating a variability for a selected portion of the digital data using the predetermined pattern; and
representing the flat area when the variability is less than a predetermined amount.
2 Assignments
0 Petitions
Accused Products
Abstract
A system enables encoding of a removable mark into digital data, and decoding of the mark from the digital data. The system comprises an encoder and a decoder. The encoder includes a target area locator for locating in digital data a predetermined pattern of values that represents a flat area, and a marker for modifying values in the flat area to encode a mark into the flat area. The decoder attempts to extract the mark from the digital data. The decoder includes a mark area locator for locating a predetermined pattern of values in digital data, and an unmarker coupled to the mark area locator for examining the values to determine the state of each value and extract an embedded mark from the predetermined pattern of values.
49 Citations
88 Claims
-
1. A method of encoding a mark into digital data, comprising the steps of:
-
locating in the digital data, using a predetermined pattern, at least two values that represent a flat area; and
modifying the values in the flat area to encode a mark into the flat area;
wherein the step locating in the digital data is further comprised of the steps of;
calculating a variability for a selected portion of the digital data using the predetermined pattern; and
representing the flat area when the variability is less than a predetermined amount. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
modifying the values according to a recognizable amount.
-
-
3. The method of claim 2, wherein the step modifying the values is further comprised of the step of:
adding the recognizable amount to the values.
-
4. The method of claim 2, wherein the step modifying the values is further comprised of the step of:
subtracting the recognizable amount from the values.
-
5. The method of claim 2, further comprising the step computing the recognizable amount as a function of the variability in the flat area.
-
6. The method of claim 5, wherein the step computing the recognizable amount is further comprised of the step of computing the recognizable amount as a multiple of the variability in the flat area.
-
7. The method of claim 2, further comprising the step of modifying the values in the flat area to provide at least one known peak in the flat area.
-
8. The method of claim 1, wherein the step modifying the values is further comprised of the step of modifying at least two of the values in the digital data to represent a single mark value in the flat area.
-
9. The method of claim 1, further comprising the steps of:
-
locating in the digital data, using a predetermined pattern, at least two values that represents a second flat area; and
modifying the values in the second flat area to encode the mark into the second flat area.
-
-
10. The method of claim 1, further comprising the step of:
- converting the format of the digital data.
-
11. The method of claim 1, wherein the predetermined pattern is a regular pattern.
-
12. The method of claim 1, wherein the predetermined pattern is an irregular pattern.
-
13. The method of claim 1, wherein the predetermined pattern identifies a consecutive set of values.
-
14. The method of claim 1, wherein the predetermined pattern is one dimensional.
-
15. The method of claim 1, wherein the predetermined pattern is two dimensional.
-
16. The method of claim 1, wherein the predetermined pattern is three dimensional.
-
17. A method of decoding a mark in digital data, comprising the steps of:
-
locating, using a predetermined pattern, at least two values representing a flat area in the digital data; and
examining the values relative to the flat area to decode an embedded mark further comprising the steps of;
computing a reference as approximately half a recognizable amount away from at least one of the values having a known state; and
comparing the values against the reference to decode the embedded mark. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
computing the recognizable amount as a multiple of the variability in the flat area.
-
-
22. The method of claim 17, wherein the step computing the recognizable amount is further comprised of the step of:
computing the recognizable amount by subtracting at least one known low from at least one known peak in the values.
-
23. The method of claim 17, wherein the step examining the values is further comprised of the step of:
examining multiple of the values in the digital data to compute a single mark.
-
24. The method of claim 17, further comprising the step of:
manipulating the digital data according to a function before comparing the values.
-
25. The method of claim 24, wherein the digital data comprises a frame.
-
26. The method of claim 25, wherein the function includes flipping the frame along a horizontal axis.
-
27. The method of claim 25, wherein the function includes flipping the frame along a vertical axis.
-
28. The method of claim 25, wherein the function includes rotating the frame.
-
29. The method of claim 17, further comprising the step of:
using the recognizable amount to modify the values of one state to attempt returning the values approximately to their original state.
-
30. The method of claim 29, wherein the step using the recognizable amount is further comprised of the step of:
subtracting the recognizable amount from the values of the one state.
-
31. The method of claim 29, wherein the step using the recognizable amount is further comprised of the step of:
adding the recognizable amount to the values of the one state.
-
32. The method of claim 17, further comprising the step of:
- converting the format of the digital data.
-
33. A method of claim 17, further comprising the step of:
- extracting the mark from the flat area.
-
34. The method of claim 17, wherein the predetermined pattern is a regular pattern.
-
35. The method of claim 17, wherein the predetermined pattern is an irregular pattern.
-
36. The method of claim 17, wherein the predetermined pattern identifies a consecutive set of values.
-
37. The method of claim 17, further comprising the steps of:
-
modifying the predetermined pattern to account for possible scaling of the frame; and
examining the values in the modified pattern to decode the embedded mark from the predetermined pattern.
-
-
38. The method of claim 17, wherein the predetermined pattern is one dimensional.
-
39. The method of claim 17, wherein the predetermined pattern is two dimensional.
-
40. The method of claim 17, wherein the predetermined pattern is three dimensional.
-
41. A system for encoding a mark into unencoded data to create an encoded data, comprising:
-
at least one processor coupled with at least one memory storing an encoder as at least one program comprising a target area locator for locating at least two values in the unencoded data using a predetermined pattern that represent a flat area; and
a marker for modifying at least one of the values in the flat area encoding the mark into the flat area to create the encoded data;
wherein the target area locator further performs;
calculating a variability for a selected portion of the digital data using the predetermined pattern; and
representing the flat area when the variability is less than a predetermined amount. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56)
the marker modifies at least one of the values according to a recognizable amount.
-
-
43. The system of claim 42, wherein the marker is further comprised of:
the marker adds the recognizable amount to at least one of the values.
-
44. The system of claim 42, wherein the marker is further comprised of:
the marker subtracts the recognizable amount to at least one of the values.
-
45. The system of claim 42, wherein the marker is further comprised of:
the marker computes the recognizable amount as a function of the variability in the flat area.
-
46. The system of claim 45, wherein the marker is further comprised of:
the marker computes the recognizable amount as a multiple of the variability in the flat area.
-
47. The system of claim 42, wherein the marker modifies values in the flat area to provide at least one of the known peaks in the flat area.
-
48. The system of claim 41, wherein the marker modifies multiple of the values in the digital data to represent a single mark value in the flat area.
-
49. The system of claim 41, wherein
the target area locator further locates in the digital data using the predetermined pattern that represents a second flat area; - and
wherein the marker further modifies at least one of the values in the second flat area to encode the mark into the second flat area.
- and
-
50. The system of claim 42, at least one of the processors coupled with at least one of the memories storing at least one program comprising
a format conversion engine for converting the digital data to another format. -
51. The system of claim 41, wherein the predetermined pattern is a regular pattern.
-
52. The system of claim 41, wherein the predetermined pattern is an irregular pattern.
-
53. The system of claim 41, wherein the predetermined pattern identifies a consecutive set of values.
-
54. The system of claim 41, wherein the predetermined pattern is one dimensional.
-
55. The system of claim 41, wherein the predetermined pattern is two dimensional.
-
56. The system of claim 41, wherein the predetermined pattern is three dimensional.
-
57. A system for decoding a mark in digital data, comprising:
-
at least one processor coupled with at least one memory storing a decoder as at least one program including a mark area locator for locating values in the digital data using a predetermined pattern within at least one of the memory as representing a flat area; and
an unmarker for examining the values relative to the flat area within the digital data to decode an embedded mark;
the mark area locator further performs;
computing a reference as approximately half a recognizable amount away from at least one of the values having a known state; and
comparing the values against the reference. - View Dependent Claims (58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80)
the unmarker defining the recognizable amount as a function of the variability in a known plateau region of the values. -
64. The system of claim 57, wherein the unmarker further comprises
the unmarker defining the recognizable amount as a multiple of the variability in the flat area. -
65. The system of claim 57, wherein the unmarker further comprises
the unmarker defining the recognizable amount by subtracting at least one of the known lows from at least one of the known peaks in the values. -
66. The system of claim 57, wherein the unmarker further comprises
the unmarker examining multiple of the values in the digital data to compute a single mark value. -
67. The system of claim 57, wherein the mark area locator further comprises:
the mark area locator manipulating the digital data according to a function before locating the values.
-
68. The system of claim 67, wherein the digital data comprises a frame.
-
69. The system of claim 68, wherein the function includes flipping the frame along a horizontal axis.
-
70. The system of claim 68, wherein the function includes flipping the frame along a vertical axis.
-
71. The system of claim 68, wherein the function includes rotating the frame.
-
72. The system of claim 57, wherein the mark area locator further comprises:
-
the mark area locator modifying the predetermined pattern to account for a possible scaling of the frame to create a modified predetermined pattern; and
wherein the unmarker further comprises the unmarker examining the values in the modified pattern to decode the embedded mark from the modified predetermined pattern.
-
-
73. The system of claim 57, wherein the unmarker further comprises
the unmarker using the recognizable amount to modify the value of one state to attempt approximating an original state of the value. -
74. The system of claim 73, wherein the unmarker further comprises
the unmarker subtracting the recognizable amount from the value of the one state. -
75. The system of claim 73, wherein the unmarker further comprises
the unmarker adding the recognizable amount from at least one of the values of the one state. -
76. The system of claim 57, further comprising a format conversion engine for converting the digital data to another format.
-
77. The system of claim 57, wherein the predetermined pattern is one dimensional.
-
78. The system of claim 57, wherein the predetermined pattern is two dimensional.
-
79. The system of claim 57, wherein the predetermined pattern is three dimensional.
-
80. The system of claim 57, wherein the unmarker further comprises the unmarker extracting the embedded mark.
-
-
81. A computer-readable storage medium storing program code for causing a computer to perform the steps of:
-
locating in the digital data, using a predetermined pattern, at least two values that represents a flat area; and
modifying the values in the flat area to encode a mark into the flat area;
wherein the step locating in the digital data is further comprised of the steps of;
calculating a variability for a selected portion of the digital data using the predetermined pattern; and
representing the flat area when the variability is less than a predetermined amount.
-
-
82. A system for encoding a mark into digital data, comprising:
-
means for locating in the digital data, using a predetermined pattern, at least two values that represents a flat area; and
means for modifying the values in the flat area to encode a mark into the flat area;
wherein the means for locating in the digital data is further comprised of;
means for calculating a variability for a selected portion of the digital data using the predetermined pattern; and
means for representing the flat area when the variability is less than a predetermined amount.
-
-
83. A computer-readable storage medium storing program code for causing a computer to perform the steps of:
-
locating at least two values representing a flat area in a digital data, using a predetermined pattern; and
examining the values relative to the flat area to decode an embedded mark;
wherein the step examining the values is further comprised of the steps of;
computing a reference as approximately half a recognizable amount away from at least one of the values having a known state; and
comparing the values against the reference to decode the embedded mark.
-
-
84. A system for decoding a mark in digital data, comprising:
-
means for locating at least two values representing a flat area in digital data, using a predetermined pattern; and
means for examining the values relative to the flat area to decode an embedded mark;
wherein the means for examining the values is further comprised of;
means for computing a reference as approximately half a recognizable amount away from at least one of the values having a known state; and
means for comparing the values against the reference to decode the embedded mark.
-
-
85. A method for creating an authenticating mark in a digital data, comprising the step of:
-
automatically creating a modified digital data from the digital data without human intervention, further comprising the steps of;
locating in digital data, using a predetermined pattern, at least two values that represent a flat area; and
modifying the values in the flat area to encode the authenticating mark into the flat area to create a modified digital data;
wherein the step locating in the digital data is further comprised of the steps of;
calculating a variability for a selected portion of the digital data using the predetermined pattern; and
representing the flat area when the variability is less than a predetermined amount. - View Dependent Claims (86)
-
-
87. A method for authenticating a received digital data, comprising the steps of:
-
locating, using a predetermined pattern, at least two values in the received digital data to determine a flat area in the received digital data; and
examining the values, in the flat area in the received digital data, to decode an embedded mark used to create an authentication of the received digital data, further comprising the steps of;
computing a reference as approximately half a recognizable amount away from at least one of the values having a known state; and
comparing the values against the reference to decode the embedded mark. - View Dependent Claims (88)
-
Specification