Claims
- 1. A method for embedding a desired watermark message in a cover work, for extraction by a watermark extractor, the method comprising:
(a) finding an incorrect watermark message likely to be extracted from said cover work by said watermark extractor; (b) calculating a robustness measure, indicating the probability that said incorrect watermark message would not be extracted from said cover work; (c) if said robustness measure is less than a predetermined value, modifying said cover work to increase said robustness measure; and (d) repeating steps (a)-(c) until a termination condition is met.
- 2. The method according to claim 1, wherein said termination condition is that said robustness measure exceeds a predetermined value.
- 3. The method according to claim 1, wherein said termination condition is that a predetermined limit is exceeded by a count of the number of consecutive iterations of steps (a)-(c) in which said robustness measure exceeds a predetermined value.
- 4. The method according to claim 3, wherein said predetermined limit is 100.
- 5. The method according to claim 1, wherein said finding an incorrect watermark message comprises:
(i) adding a quantity of noise to said cover work; (ii) applying said watermark extractor to said cover work to obtain said incorrect watermark message; and (iii) repeating steps (i)-(ii) until said incorrect watermark message is different from said desired watermark message.
- 6. The method according to claim 5, wherein said quantity of noise is increased each time (b) obtains an incorrect watermark message identical to the desired watermark message.
- 7. The method according to claim 5, in which said quantity of noise is decreased each time (ii) obtains an incorrect watermark message for which said robustness measure exceeds a predetermined value.
- 8. The method according to claim 1, wherein said robustness measure is obtained according to the formula:
- 9. The method according to claim 1, wherein modifying said cover work is carried out according to the formulae:
- 10. The method according to claim 1, wherein modifying said cover work is carried out according to the formulae:
- 11. The method according to claim 10, wherein said perceptual shaping function is computed as
- 12. The method according to claim 11, wherein m=4, and
- 13. The method according to claim 1, wherein said extraction by a watermark extractor comprises:
(i) obtaining an extracted vector from said cover work; and (ii) decoding said extracted vector according to a trellis code.
- 14. The method according to claim 13, wherein obtaining an extracted vector comprises:
1. dividing said cover work into blocks; 2. computing the DCT's of said blocks to obtain block DCT's; and 3. placing selected terms of said block DCT's into a vector in a predetermined order to obtain said extracted vector.
- 15. A method of encoding a desired message in the form of a sequence of symbols drawn from an alphabet, for subsequent embedding in a cover work, the method comprising:
(a) selecting a path through a dirty-paper trellis, each arc in said path corresponding to one symbol in said desired message, said dirty-paper trellis having two or more arcs from each node corresponding to each symbol in said alphabet; (b) combining vectors that indicate the arcs in said path to obtain a vector representation of said path; and (c) encoding said desired message as said vector representation.
- 16. The method according to claim 15, wherein said alphabet is a binary alphabet comprising one and zero.
- 17. The method according to claim 15, wherein said selecting a path comprises:
(i) modifying said dirty-paper trellis by eliminating arcs corresponding to symbols other than those in said message, thus obtaining a message-specific trellis; (ii) obtaining an extracted vector from said cover work; and (iii) selecting a path through said message-specific trellis whose vector representation is similar to said extracted vector.
- 18. The method according to claim 17, wherein said obtaining an extracted vector comprises:
1. dividing said cover work into blocks; 2. computing the DCT's of said blocks to obtain block DCT's; and 3. placing selected terms of said block DCT's into a vector in a predetermined order to obtain said extracted vector.
- 19. The method according to claim 17, wherein said selecting a path through said message-specific trellis is performed by applying a Viterbi decoder.
- 20. The method according to claim 15, wherein said combining vectors is performed by concatenating vectors.
- 21. The method according to claim 1, wherein said desired watermark message, in the form of a sequence of symbols drawn from an alphabet, is encoded as a vector by:
(a) selecting a path through a dirty-paper trellis, each arc in said path corresponding to one symbol in said desired message, said dirty-paper trellis having two or more arcs from each node corresponding to each symbol in said alphabet; (b) combining vectors that indicate the arcs in said path to obtain a vector representation of said path; and (c) encoding said desired watermark message as said vector representation.
- 22. The method according to claim 21, wherein said alphabet is a binary alphabet comprising one and zero.
- 23. The method according to claim 21, wherein said selecting a path comprises:
(i) modifying said dirty-paper trellis by eliminating arcs corresponding to symbols other than those in said message, thus obtaining a message-specific trellis; (ii) obtaining an extracted vector from said cover work; and (iii) selecting a path through said message-specific trellis whose vector representation is similar to said extracted vector.
- 24. The method according to claim 23, wherein said obtaining an extracted vector comprises:
1. dividing said cover work into blocks; 2. computing the DCT's of said blocks to obtain block DCT's; and 3. placing selected terms of said block DCT's into a vector in a predetermined order to obtain said extracted vector.
- 25. The method according to claim 23, wherein said selecting a path through said message-specific trellis is performed by applying a Viterbi decoder.
- 26. The method according to claim 21, wherein said combining vectors is performed by concatenating vectors.
- 27. The method according to claim 21, wherein modifying said cover work is carried out according to the formulae:
- 28. The method according to claim 27, wherein said perceptual shaping function is computed as
- 29. The method according to claim 28, wherein m=4, and
- 30. An apparatus for embedding a desired watermark message in a cover work, for extraction by a watermark extractor, the apparatus comprising:
means for finding an incorrect watermark message likely to be extracted from said cover work by said watermark extractor; means for calculating a robustness measure, indicating the probability that said incorrect watermark message would not be extracted from said cover work; and means for modifying said cover work to increase said robustness measure if said robustness measure is less than a predetermined value.
- 31. An apparatus for encoding a desired message in the form of a sequence of symbols drawn from an alphabet, for subsequent embedding in a cover work, the apparatus comprising:
means for selecting a path through a dirty-paper trellis, wherein each arc in said path corresponds to one symbol in said desired message, said dirty-paper trellis having two or more arcs from each node corresponding to each symbol in said alphabet; means for combining vectors that indicate the arcs in said path to obtain a vector representation of said path; and means for encoding said desired message as said vector representation.
- 32. A machine-readable recording medium comprising a program of instructions, said program of instructions for causing a machine to execute a method for embedding a desired watermark message in a cover work, for extraction by a watermark extractor, the method comprising:
(a) finding an incorrect watermark message likely to be extracted from said cover work by said watermark extractor; (b) calculating a robustness measure, indicating the probability that said incorrect watermark message would not be extracted from said cover work; (c) if said robustness measure is less than a predetermined value, modifying said cover work to increase said robustness measure; and (d) repeating steps (a)-(c) until a termination condition is met.
- 33. The machine-readable recording medium according to claim 32, wherein said termination condition is that a predetermined limit is exceeded by a count of the number of consecutive iterations of steps (a)-(c) in which said robustness measure exceeds a predetermined value.
- 34. The machine-readable recording medium according to claim 32, wherein said finding an incorrect watermark message comprises:
(i) adding a quantity of noise to said cover work; (ii) applying said watermark extractor to said cover work to obtain said incorrect watermark message; and (iii) repeating steps (i)-(ii) until said incorrect watermark message is different from said desired watermark message.
- 35. The machine-readable recording medium according to claim 32, wherein modifying said cover work is carried out according to the formulae:
- 36. The machine-readable recording medium according to claim 32, wherein said desired watermark message, in the form of a sequence of symbols drawn from an alphabet, is encoded as a vector by:
(a) selecting a path through a dirty-paper trellis, each arc in said path corresponding to one symbol in said desired message, said dirty-paper trellis having two or more arcs from each node corresponding to each symbol in said alphabet; (b) combining vectors that indicate the arcs in said path to obtain a vector representation of said path; and (c) encoding said desired watermark message as said vector representation.
- 37. The machine-readable recording medium according to claim 36, wherein modifying said cover work is carried out according to the formulae:
- 38. The machine-readable recording medium according to claim 36, wherein said selecting a path comprises:
(i) modifying said dirty-paper trellis by eliminating arcs corresponding to symbols other than those in said message, thus obtaining a message-specific trellis; (ii) obtaining an extracted vector from said cover work; and (iii) selecting a path through said message-specific trellis whose vector representation is similar to said extracted vector.
- 39. A machine-readable recording medium comprising a program of instructions, said program of instructions for causing a machine to execute a method of encoding a desired message in the form of a sequence of symbols drawn from an alphabet, for subsequent embedding in a cover work, the method comprising:
(a) selecting a path through a dirty-paper trellis, each arc in said path corresponding to one symbol in said desired message, said dirty-paper trellis having two or more arcs from each node corresponding to each symbol in said alphabet; (b) combining vectors that indicate the arcs in said path to obtain a vector representation of said path; and (c) encoding said desired message as said vector representation.
- 40. The machine-readable recording medium according to claim 39, wherein said selecting a path comprises:
(i) modifying said dirty-paper trellis by eliminating arcs corresponding to symbols other than those in said message, thus obtaining a message-specific trellis; (ii) obtaining an extracted vector from said cover work; and (iii) selecting a path through said message-specific trellis whose vector representation is similar to said extracted vector.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit under 35 U.S.C. §119(e) of U.S. Provisional Application Serial No. 60/347,366, filed Jan. 11, 2002, and U.S. Provisional Application Serial No. 60/347,428, filed Jan. 11, 2002. The full disclosures of both applications are hereby incorporated by reference for all purposes.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60347366 |
Jan 2002 |
US |
|
60347428 |
Jan 2002 |
US |