Method to ensure temporal synchronization and reduce complexity in the detection of temporal watermarks
Abstract
A method and/or apparatus for embedding and detecting a watermark among a plurality of frames of data is disclosed, where the watermark is correlated with a plurality of noise blocks, and the noise blocks are summed over a plurality of respective video frames. Each noise block is preferably subjected to a fade function with another noise block over the plurality of respective video frames to make the embedded watermark resistant to changes in data frame rate or other temporal distortions in the frames of data. Detection and recovery of such an embedded watermark and its fade function is also provided.
Claims
exact text as granted — not AI-modified1 . A system for watermarking a video including a plurality of video frames, comprising:
at least a first noise block and a second noise block representing watermark data; at least a first video frame and a second video frame associated with said first noise block, said first noise block added to said at least first video frame and second video frame so as to tile substantially all of each video frame; and, at least a third video frame and a fourth video frame associated with said second noise block, said second noise block added to said at least third video frame and fourth video frame so as to tile substantially all of each video frame.
2 . The system of claim 1 , further including a fade function, said fade function substantially evenly fading from said first noise block to said second noise block over said at least first video frame and second video frame.
3 . The system of claim 1 , further including a cyclic loop for adding said at least first noise block and second noise block to substantially all of said plurality of video frames.
4 . The system of claim 1 , wherein said fading function is a linear function.
5 . A method for detecting a watermark in a plurality of video frames, comprising:
windowing said plurality of video frames into frame windows; providing a finite impulse response filter to obtain an output frame for at least some of said frame windows; determining the absolute value of each said output frame; summing said absolute values of each said output frame to obtain a sequence of spatial accumulation values for each output frame; and, recovering the watermark based on said spatial accumulation sequence.
6 . The method of claim 5 , further including the step of performing a fast Fourier transform on the spatial accumulation sequence to determine a fade pattern for removing noise from said spatial accumulation sequence.
7 . The method of claim 5 , further including the step of performing a root-mean-square averaging of the value of pixels in each output frame to remove noise from said output frames.
8 . The method of claim 5 , further including applying a spatial prefilter to a subset of said plurality of video frames before providing said finite impulse response filter.
9 . The method of claim 5 , further including applying a temporal prefilter to a subset of said video frames before providing said finite impulse response filter.
10 . The method of claim 5 , further including applying a spatial-temporal prefilter to a subset of said plurality of video frames before providing said finite impulse response filter.
11 . The method of claim 5 , further including adjusting said windowing, providing a finite impulse response filter, determining an absolute value, summing said absolute values and recovering the watermark based upon a determination of the fading function for said plurality of video frames.
12 . A system for detecting a watermark in a video including a plurality of video frames, comprising:
a first frame window and a second frame window, said first frame window and said second frame window each including a plurality of sequential video frames, each video frame composed of at least a two dimensional array of pixels; a finite impulse response filter, said finite impulse response filter filtering said first frame window and said second frame window to provide a first output frame and a second output frame; an absolute value filter, said absolute value filter filtering said first output frame and said second output frame to provide a first absolute output frame and a second absolute output frame; a summer, said summer summing the pixels of said first absolute output frame to provide a first spatial accumulation value and summing the pixels of said second absolute output frame to provide a second spatial accumulation value; and, a watermark recognizer, said watermark recognizer recognizing a watermark from said sequence of said first spatial accumulation value and said second spatial accumulation value.
13 . The system of claim 12 , further including a fast Fourier filter, said fast Fourier filter filtering the spatial accumulation sequence to determine a fade pattern for removing noise from said spatial accumulation sequence.
14 . The system of claim 12 , further including a root-mean-square filter, said root-mean-square filter filtering the value of pixels in each output frame to remove noise from said output frames.
15 . The system of claim 12 , further including a spatial prefilter, said spatial prefilter prefiltering a subset of said plurality of video frames before providing said finite impulse response filter.
16 . The system of claim 12 , further including a temporal prefilter, said temporal prefilter prefiltering a subset of said video frames before providing said finite impulse response filter.
17 . The system of claim 12 , further including a spatial-temporal prefilter, said spatial-temporal prefilter prefiltering a subset of said plurality of video frames before providing said finite impulse response filter.
18 . A method for embedding a watermark in a plurality of video frames V(t) over frame time t, comprising:
providing a set of N noise blocks B( 0 ) to B(N−1), said noise blocks B corresponding to a watermark, where N is an integer less than or equal to the number of said plurality of video frames; providing a stretch value T, said stretch value corresponding to a sequential number of video frames, where T is a positive integer less than or equal to N; adding each of said N noise blocks respectively to T sequential video frames; and, repeating said adding step for said N noise blocks until substantially all of said plurality of video frames have a noise block added.
19 . The method of claim 18 , further including applying a fading function to each T sequential video frames of said plurality of video frames to fade between a first of said N noise blocks and a second of said N noise blocks.
20 . The method of claim 19 , wherein said fade function is a linear function.
21 . The method of claim 19 , wherein said fade function is a continuous logarithmic function.
22 . The method of claim 19 , wherein said fade function is a sinusoidal function.
23 . A method of detecting a watermark among a plurality of reproduced frames of data, the reproduced frames of data having been derived from respective original frames of data, the method comprising:
prefiltering at least some of the reproduced frames of data to remove spatial video components; prefiltering at least some of the reproduced frames of data to remove temporal video components; adding at least some of the reproduced frames of data together on a data point-by-data point basis to obtain an aggregate frame of data points; determining the fade function for at least some of said data in said aggregate frame of data points; selecting peak data points of the aggregate frame of data points based in part on said determination of said fade function; computing correction information from deviations between the positions of the peak data points within the aggregate frame and expected positions of those peak data points; modifying positions of at least some of the data of at least some of the reproduced frames of data using the correction information such that those reproduced frames of data more closely coincide with respective ones of the original frames of data; and detecting the watermark from among the modified reproduced frames of data.
24 . An apparatus for detecting a watermark among a plurality of reproduced frames of data, the reproduced frames of data having been derived from respective original frames of data, the apparatus comprising:
means for prefiltering at least some of the reproduced frames of data to remove at least some non-watermark data from said at least some of the reproduced frames of data; means for determining the fade function for at least some of said data in said aggregate frame of data points; means for adding at least some of the reproduced frames of data together on a data point-by-data point basis to obtain an aggregate frame of data points; means for selecting peak data points of the aggregate frame of data points; means for computing correction information from deviations between the positions of the peak data points within the aggregate frame and expected positions of those peak data points; means for modifying positions of at least some of the data of at least some of the reproduced frames of data using the correction information such that those reproduced frames of data more closely coincide with respective ones of the original frames of data; and means for detecting the watermark from among the modified reproduced frames of data.
25 . The apparatus of claim 24 , wherein said prefiltering means includes spatial prefiltering means.
26 . The apparatus of claim 24 , wherein said prefiltering means includes temporal prefiltering means.
27 . The apparatus of claim 24 , wherein said prefiltering means includes threshold filtering means.Join the waitlist — get patent alerts
Track US2008285796A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.