Methods and apparatus for embedding and recovering watermarking information based on host-matching codes
First Claim
1. A method for embedding watermarking information, comprising:
- providing a host signal;
calculating at least one feature of said host signal;
extracting said at least one feature from said host signal;
providing data to be embedded in the host signal;
associating distinct input data strings of said data with distinct code sets;
matching each of said at least one feature with a code from each code set;
selecting codes from the associated code sets to represent said input data strings based on said matching; and
embedding said selected codes into the host signal to provide a watermarked signal.
5 Assignments
0 Petitions
Accused Products
Abstract
The invention provides apparatus and methods for embedding and recovering watermarking information based on host-matching codes. A code selector provides codes to be embedded in the host signal. The code selector associates distinct input data strings to be embedded into the host signal with distinct code sets. Codes from the associated code sets are selected to represent the input data strings based on an analysis of the host signal (i.e. “host-matching”). The code selector may associate the distinct input data strings with distinct code sets based on a predefined mapping. An embedder embeds the codes into the host signal to provide a watermarked signal. An extractor at a decoder extracts the embedded codes from the watermarked signal. A code interpreter interprets the codes to recover the data represented thereby. The interpreter may perform a many-to-one mapping of an extracted code to the associated data string.
-
Citations
60 Claims
-
1. A method for embedding watermarking information, comprising:
-
providing a host signal; calculating at least one feature of said host signal; extracting said at least one feature from said host signal; providing data to be embedded in the host signal; associating distinct input data strings of said data with distinct code sets; matching each of said at least one feature with a code from each code set; selecting codes from the associated code sets to represent said input data strings based on said matching; and embedding said selected codes into the host signal to provide a watermarked signal. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15)
-
-
10. A method for embedding watermarking information, comprising:
-
providing a host signal; providing data to be embedded in the host signal; associating distinct input data strings of said data with distinct code sets; selecting codes from the associated code sets to represent said input data strings based on an analysis of the host signal; and embedding said codes into the host signal to provide a watermarked signal wherein the codes within the code sets are selected such that they have a maximum Hamming distance.
-
-
16. A method for embedding watermarking information, comprising:
-
providing a host signal; providing data to be embedded in the host signal; error correction coding of said data; scrambling said data with each code from a code set to provide a plurality of scrambled data sequences; comparing each scrambled data sequence to said host signal; selecting a scrambled sequence which is a best match to said host signal; embedding said best matched scrambled data sequence into the host signal to provide a watermarked signal; transmitting said watermarked signal to a decoder; extracting said embedded scrambled data sequence from said watermarked signal; further scrambling said extracted scrambled data sequence with each code from said code set to provide a plurality of unscrambled data sequences; error-decoding of each of said unscrambled data sequences; and determining which of said error-decoded unscrambled data sequences is a valid watermarking sequence. - View Dependent Claims (17)
-
-
18. A method for recovering embedded watermarking data from a watermarked signal, comprising the steps of:
-
receiving said watermarked signal; extracting embedded codes from said watermarked signal; and interpreting said extracted codes to recover said watermarking data; wherein; each code represents an input string of said watermarking data, each code being selected from a code set associated with said in put data string; and said watermarked signal is generated by; calculating at least one feature of said host signal; extracting said at least one feature from said host signal; and matching each of said at least one feature with a code from each code set. - View Dependent Claims (19, 20, 21, 22, 23, 24, 26)
-
-
25. A method for recovering embedded watermarking data from a watermarked signal, comprising the steps of:
-
receiving said watermarked signal; extracting embedded codes from said watermarked signal; interpreting said extracted codes to recover said watermarking data; wherein each code represents an input string of said watermarking data, each code being selected from a code set associated with said input data string based on an analysis of a host signal to be watermarked; and assigning appropriate gains to said selected code in order to reduce distortion of the host signal when said selected code is embedded in said host signal.
-
-
27. A method for recovering watermarking data from a watermarked signal, comprising the steps of:
-
receiving said watermarked signal at a decoder; extracting an embedded scrambled data sequence from said watermarked signal; generating a plurality of scrambled data sequences at said decoder; comparing said extracted scrambled data sequence with said plurality of scrambled data sequences generated at said decoder; and determining whether any of said scrambled data sequences generated at said decoder match, within predefined parameters, said extracted data sequence; wherein said embedded scrambled data sequence is selected from a plurality of scrambled data sequences generated by scrambling said watermarking data with each code from a code set, based on a comparison with a host signal. - View Dependent Claims (28, 29)
-
-
30. A method for recovery of watermarking information from a watermarked signal, comprising the steps of:
-
receiving said watermarked signal; extracting an embedded scrambled data sequence from said watermarked signal; further scrambling said extracted scrambled data sequence with codes from a code set to provide a plurality of unscrambled data sequences; error-decoding each of said unscrambled data sequences; and determining which of said error-decoded unscrambled data sequences is a valid watermarking sequence; wherein said embedded scrambled data sequence is selected from a plurality of scrambled data sequences generated by scrambling error-encoded watermarking data with each code from a code set, based on a comparison with a host signal.
-
-
31. Apparatus for embedding watermarking information, comprising:
-
a feature extractor for calculating and extracting at least one feature of said host signal; a code selector for associating distinct code sets with distinct input data strings to be embedded in a host signal; a matching device for matching each of said at least one feature with a code from each of said code sets; said code selector selecting codes from the associated code sets to represent said input data strings based on said matching; and an embedder for embedding said selected codes into the host signal to provide a watermarked signal. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 41, 42, 43, 44, 45)
-
-
40. Apparatus for embedding watermarking information, comprising:
-
a code selector for providing codes to be embedded in a host signal; and an embedder for embedding said codes into the host signal to provide a watermarked signal; wherein; said code selector; associates distinct input data strings to be embedded into said host signal with distinct code sets; and selects codes from the associated code sets to represent said input data strings based on an analysis of the host signal; and the codes within the code sets are selected such that they have a maximum Hamming distance.
-
-
46. Apparatus for embedding watermarking information, comprising:
-
a channel encoder for error correction coding of data to be embedded in a host signal; a first scrambler for scrambling said data with each code from a code set to provide a plurality of scrambled data sequences; a code selector for comparing each scrambled data sequence to said host signal and selecting a scrambled sequence which is a best match to said host signal; an embedder for embedding said best matched scrambled data sequence into the host signal to provide a watermarked signal; a transmitter for transmitting said watermarked signal to a decoder; an extractor for extracting said embedded scrambled data sequence from said watermarked signal; a second scrambler for further scrambling said extracted scrambled data sequence with each code from said code set to provide a plurality of unscrambled data sequences; and a channel decoder for error-decoding of each of said unscrambled data sequences and determining which of said error-decoded unscrambled data sequences is a valid watermarking sequence. - View Dependent Claims (47)
-
-
48. Apparatus for recovering embedded watermarking data from a watermarked signal, comprising:
-
an extractor for extracting embedded codes from a received watermarked signal; and an interpreter for interpreting said extracted codes to recover said watermarking data; wherein; each code represents an input string of said watermarking data, each code being selected from a code set associated with said input data string; and said watermarked signal is generated at an encoder by; calculating at least one feature of said host signal; extracting said at least one feature from said host signal; and matching each of said at least one feature with a code from each code set. - View Dependent Claims (49, 50, 51, 52, 53, 54, 56)
-
-
55. Apparatus for recovering embedded watermarking data from a watermarked signal, comprising:
-
an extractor for extracting embedded codes from a received watermarked signal; and an interpreter for interpreting said extracted codes to recover said watermarking data; wherein each code represents an input string of said watermarking data, each code being selected from a code set associated with said input data string based on an analysis of a host signal to be watermarked; wherein appropriate gains are assigned to said selected code in order to reduce distortion of the host signal when said selected code is embedded in said host signal.
-
-
57. Apparatus for recovering watermarking data from a watermarked signal, comprising:
-
an extractor for extracting an embedded scrambled data sequence from a received watermarked signal; a scrambler for generating a plurality of scrambled data sequences; and a processor for comparing said extracted scrambled data sequence with said plurality of scrambled data sequences generated at said decoder, said processor determining whether any of said scrambled data sequences generated at said decoder match, within predefined parameters, said extracted data sequence; wherein said embedded scrambled data sequence is selected from a plurality of scrambled data sequences generated by scrambling said watermarking data with each code from a code set, based on a comparison with a host signal. - View Dependent Claims (58, 59)
-
-
60. Apparatus for recovery of watermarking information from a watermarked signal, comprising:
-
an extractor for extracting an embedded scrambled data sequence from a received watermarked signal; a scrambler for further scrambling said extracted scrambled data sequence with codes from a code set to provide a plurality of unscrambled data sequences; and a channel decoder for error-decoding each of said unscrambled data sequences and determining which of said error-decoded unscrambled data sequences is a valid watermarking sequence; wherein said embedded scrambled data sequence is selected from a plurality of scrambled data sequences generated by scrambling error-encoded watermarking data with each code from a code set, based on a comparison with a host signal.
-
Specification