Watermark embedding and detection
Field of the Invention
The present invention relates to method and apparatus for watermarking an information signal, for example, a multimedia signal, such as audio, video or data signals. The invention also relates to method and apparatus for detecting a watermarked information signal.
Background of the Invention
Watermarking of information signals is a technique for the transmission of additional data along with the information signal. For instance, watermarking techniques can be used to embed copyright and copy control information into audio signals.
Many watermark applications rely on the assumption that the watermark is secure, the context of watermarking, security refers to the inability of an unauthorised user to have access to the raw watermarking data. In other words, an unauthorised user ("hacker") should not be able to remove, detect and estimate, write or modify the raw watermarking data.
One example of such an attack is the so-called "averaging-attack". This attack makes use of the fact that the watermark is embedded with some redundancy e.g. the watermark is repeated. If this repetition pattern is known or can be estimated (either by trial- and-error, experiment, or by studying related documents), the information signal may be averaged over time.
For instance, if the information signal is an audio signal, the averaging could be done in either the temporal or spectral domain (depending upon the watermark embedding technique utilised). As the audio signal is expected to change over time, whilst the watermark remains constant, the watermark signal will be accumulated coherently. Thus, by averaging a sufficient amount of audio signal, a relatively accurate estimate of the watermark can be made. Subsequently, knowledge of this watermark may be used to modify the information signal so as to remove or render unrecognisable the watermark signal. For instance, if a watermark signal is utilised to provide copy protection, then if the watermark is
modified so as to be unrecognisable by a detector, this will allow the information signal to be copied.
In order to make the watermark more robust to hacking attacks such as averaging, WO 01/99049 describes a method of embedding a watermark in an information signal by embedding different versions of the watermark in successive portions of the signal. The versions are different with respect to a property which is irrelevant for detection of the watermark.
WO 01/39121 describes a method of embedding a watermark in an information signal, the watermark being selected from a set of different watermarks in dependence upon a predetermined property of the signal. For example, the distribution of luminance values of a video image may be determined, and a watermark selected based upon the determined luminance value.
Although these methods make averaging attacks more difficult, if a hacker has knowledge of the type of embedding technique utilised, it is possible to still determine the watermark.
It is an aim of embodiments of the present invention to provide more secure methods and apparatus for embedding and detecting a watermark in an information signal.
Summary of the Invention
In a first aspect, the present invention provides a method of embedding a watermark in an information signal, characterised by randomly embedding at least two different watermarks in an information signal, the watermarks being different with respect to a property which is relevant for detection of each watermark. In another aspect, the present invention provides an apparatus arranged to embed a watermark in an information signal, the apparatus comprising an embedding means arranged to embed at least two different watermarks in an information signal, the watermarks being different with respect to a property which is relevant to detection of each watermark. In a further aspect, the present invention provides a watermarked information signal, wherein the original information signal has been watermarked by randomly embedding at least two different watermarks in the signal, the watermarks being different with respect to a property which is relevant for detection of each watermark.
In another aspect, the present invention provides a method of detecting a watermark in an information signal, comprising the steps of: receiving an information signal
that may potentially be watermarked by at least two different watermarks randomly embedded in the original information signal; analysing said signal so as to detect only a first of said watermarks; and analysing said signal so as to detect only a second of said watermarks. In a further aspect, the present invention provides an apparatus arranged to detect a watermark in an information signal comprising: receiving means arranged to receive a signal that may potentially be watermarked by at least two different watermarks randomly embedded in the original information signal; first analysing means arranged to analyse said signal so as to detect only a first of said watermarks; and second analysing means arranged to analyse said signal so as to detect only a second of said watermarks.
In another aspect, the present invention provides a computer program arranged to perform at least one of the above methods.
Other aspects of the invention will be apparent from the dependent claims.
Brief Description of the Drawings
For a better understanding of the invention, and to show how embodiments of the same may be carried into effect, reference will now be made, by way of example only, to the accompanying diagrammatic drawings in which: Figure 1 shows schematically steps for embedding and detecting watermarks in accordance with a preferred embodiment of the invention;
Figure 2 shows schematically a diagram of a watermark embedder in accordance with a preferred embodiment;
Figure 3 shows schematically a diagram of a watermark detector in accordance with a preferred embodiment;
Figure 4 shows an alternative embodiment of the steps for embedding and detecting watermarks.
Description of Preferred Embodiments
Figure 1 illustrates the steps involved in embedding a watermark in accordance with a preferred embodiment. Two separate watermark embedding algorithms (Emb 1, Emb 2), each with associated key (Key 1, Key 2) and payload (Payload 1, Payload 2) are utilised. For instance, an example of such a watermark embedding algorithm is
described in the article by M. van der Neen, F. Bruekers, J. Haitsma, T. Kalker, A. Ν. Lemma and W. Oomen, Robust, multi-functional and high-quality audio watermarking technology, Audio Engineering Society, Presented at the 110th AES convention, 2001, paper no. 5345. However, it will be appreciated that other watermark embedding algorithms are equally appropriate.
The embedding algorithms are different, such that the watermark generated by the algorithms will be different with respect to a property utilised in detection of the watermark. This can be achieved by utilising completely different algorithms, or alternately utilising substantially the same algorithms but changing the parameters that define the watermark, such as the key and/or payload.
A property that is relevant for detection of the watermark is the property of the watermark that must be known in order to successfully detect the watermark. For instance, one should know which watermark system and its respective key (e.g., Embl/Detectl/Keyl) is being used. By using another detection system and/or key (e.g., Embedl/Detect2/Keyl) one would, in general, fail to detect correctly the watermark.
Emb 1 is applied to a copy of an information signal to produce a signal with watermark wl (step 110). Similiarly, Emb 2 is applied to a copy of the same information signal so as to produce a signal with watermark w2 (step 120).
Both the signal containing wl and the signal containing w2 are passed to a multiplexing module.
The multiplexing module acts to randomly switch between the two input signals in accordance with a randomly generated multiplexing function mux[n] (step 130).
The function mux[n] determines whether (i) the signal carrying watermark wl, and/or the signal carrying watermark w2 is output at any given interval e.g., in an audio signal, within any successive portion of the audio signal, (ii) the relative weight α, β of the respective signals (i.e. the relative strength of each signal; in the simplest case, the amplitude of the signal) and (iii) the duration times for which the individual signals are proposed.
The resulting output signal, as determined by the function mux[n] is then applied to the original information signal, resulting in a watermarked signal y. It will be appreciated that y is likely to be a function of x, α, wl, β and w2.
By randomly varying the embedding parameters as described above, the security of the watermark is improved, as it is very difficult for a hacker to average the resulting signal so as to identify the watermark. Whilst other watermarking techniques have used mapping functions so as to change the signal properties of the watermark, a hacker
having knowledge of the type of mapping function can design a more appropriate attack. As in this instance the mapping function (i.e. the multiplexing function) is randomly generated, it is difficult for a hacker to design a better averaging attack.
The watermark signal y is subsequently output from the embedder (100), for onwards transmission (200), or for storage e.g. in a computer memory or on a recording medium such as a compact disc.
At the detector (300), a version y' of the signal y is received and/or read. The signal y' is the result of y being transmitted through or stored on a non-perfect transmission medium. Subsequently, a copy of the signal y' is passed to each of the detecting modules, (310, 320). Each detecting module is utilised to detect a respective watermark i.e. the first detecting module can only detect the watermark wl (310), and the second detecting module (320) can only detect the watermark w2 (320). In this instance, the detection is carried out utilising a respective key (Key 1, Key 2), as utilised by the original embedding algorithm to generate the respective watermark wl, w2. At each detecting module, the respective payload (Payload 1, Payload 2) is also extracted (310, 320).
Information on the presence of one or both of the watermarks can be used to convey information such as copy-control conditions. Alternatively, such information can be included in one or more of the payloads of the watermarks. In principle, any value for the relative weights , β can be utilised. A particular preferred embodiment utilises a binary decision, and swaps between α=l, β=0; and α=0, β=l . This effectively results in time-domain multiplexing of the watermark signal, as only one watermark signal is applied to the information signal at any given time.
Preferably, so as to minimise the impact of the switching between the watermark signals, a smoothing function is applied so as to ensure a smooth transition between wl and w2. Preferably, such a smoothing function ensures that there is no perceptual degradation of the information signal. For instance, if the information signal is an audio signal, a person listening to the watermarked audio signal should not be able to hear a degradation of the audio. Whilst the above embodiment has been described in relation to a time-domain signal, it will be appreciated that multiplexing can occur in any of the domains utilised in the information signal e.g. within the frequency or spatial domains of a video signal.
Figure 2 shows an example of an embedder suitable for use in implementing the embedding function illustrated in Figure 1. The embedder 100 has an input 102 for
receiving an information signal x. This is the information signal that is subsequently watermarked.
A copy of the information signal x is subsequently passed to an adder 150, a first embedder 112, and a second embedder 122. Each of the embedders (112, 122) is arranged so as to apply a respective embedding algorithm (Emb 1, Emb 2) to the information signal x, so as to output respective watermarks wl and w2.
Each of the watermarks wl, w2 is applied to a respective gain control unit (132, 134). These gain control units (132, 134) are utilised to control the relative weights α, β of the watermarks wl, w2. The values of α and β at any given time are determined by the multiplex function control unit 136. Both outputs of the gain control unit (132, 134) are provided to an adder 138. The adder outputs the overall watermark signal w, which is a random combination of the two separate original watermark signals wl, w2.
The overall watermark signal w is added to the original information signal x by adder 150, so as to form the watermarked information signal y. The watermarked information signal y is provided to the output (160) of the embedder.
Figure 3 illustrates a schematic diagram of a detector suitable for use in conjunction with the detection process outlined in Figure 1. The detector 300 receives the transmitted watermark information signal y' at input 302. One copy of the received signal y' is supplied to a first detector 310 and another copy is supplied to a second detector 320.
Each detector is only arranged to detect a respective watermark i.e. the first detector 310 is only arranged to detect whether or not the watermark wl is within the signal, and the second detector 320 is only arranged to detect whether the watermark w2 is within the received information signal y'. In a preferred embodiment, the detectors may share detection information via communication channels 315, 325, so as to improve detection performance.
If desired, the detectors (310, 320) may also be utilised to determine any payload incorporated within the respect watermark wl, w2.
The detector outputs the results to a decision stage 330. The decision stage (330), based upon the relevant input e.g. whether both or either of the watermarks are present, then determines the appropriate control information to be passed to output 340. For instance, copy-control information could be determined based upon whether both or either one of the watermarks are present, or upon one or more of the payloads of the watermarks.
Figure 4 shows an alternative embodiment of the present invention. As will be appreciated, Figure 4 is generally similar to Figure 1. Identical reference numerals have been utilised for similar steps. The embodiment shown in Figure 4 additionally incorporates a multiplex function generator module, utilised to generate the multiplexing function mux[n] 140. The randomly generated multiplex function mux[n] is passed to the multiplexer module (step 130), which perfonns the same function as outlined in relation to the embodiments shown in Figure 1.
The multiplex function generator (140) additionally supplies a representation of the function mux[n] to at least the first embedding module (120). This representation can be a copy of the function mux[n], or information indicative of one or more characteristics of the function, which might aid in the detection of signals that have been multiplexed using the function.
This representation of the function mux[n] is then incorporated within the payload of the watermark wl by the first embedder (110). In this particular embodiment, at least the first detector is utilised to extract at least the portion of the payload of the watermark wl corresponding to the representation of the multiplex function. This information is subsequently passed to a detection control module. This detection control module (step 350) utilises this knowledge of the multiplex function to improve the detection procedure e.g. by decreasing the complexity or increasing robustness of the procedure. For example, if mux[n] is a time-division multiplexing function, non-overlapping time slots are allocated to either watermark. Thus, the information needed for recovering the watermarks are, at least, the time slots boundaries corresponding to each watermark.
It will be appreciated that the above embodiments are provided by way of example only. For instance, the embodiments have been described utilising only two different watermarks. It will be appreciated that three or more different watermarks could be utilised, with an appropriate random function utilised to control the embedding of all of the watermarks within a host information signal.
In one of the above embodiments, a representation of the multiplex function is incorporated within the payload of the watermark wl . It will be appreciated that a representation could in fact be incorporated into the payload of any number of the different watermarks. Such representations can be the same. Alternatively different representations of the multiplexing function can be incorporated into different payloads. In each instance, the
relevant detector is utilised to extract at least the proportion of the payload of the respective watermark corresponding to the respective representation of the multiplex function.
Whilst only the functionality of the embedding and detecting apparatus have been described, it will be appreciated that either apparatuses could be realised as a digital circuit, an analogue circuit, a computer program, or a combination thereof.
Such computer programs, as well as any watermarked signals generated by the embedding method of the present invention, can be stored on any machine readable medium (e.g. a computer memory, a floppy disk, a compact disc or the equivalent), or can be transmitted along any transmission medium, including both wireless and wireline medium. The term record carrier in the present specification is taken to include both such machine readable medium and such transmission medium.
Within the specification, it will be appreciated that the word "comprising" does not exclude other elements or steps, that "a" or "an" does not exclude a plurality, and that a single processor or other unit may fulfil the functions of several means cited in the claims.
In summary, methods and apparatus for embedding and detecting a watermark in an information signal are disclosed. In order to make the embedded watermark more robust against hacking, the watermarking process is conducted utilising at least two watermarks that differ by a property that is relevant for the respective watermark detection. By randomly embedding these watermarks the security of the watermark is improved. For instance, due to the random nature of the embedding, it is extremely difficult to determine the watermarks by utilising an averaging attack.