The present invention generally relates to watermarking systems and methods and, more particularly, to watermarking a film in accordance with a unique projector identity.
Current Digital Cinema projectors have limited capabilities for displaying unique watermarks for each projector. The current technique utilizes unique subtitle files created for each projector for each distribution. This method is preparation intensive and is not considered scalable for large numbers of screens.
Temporal marking schemes for film printing include a separate process which uses several locations to convey data. The film is marked in a number of locations. Each location is further divided into zones, which are used for rendering a mark.
One of possibilities is encoded by virtue of placing a mark in the corresponding zone for a given location. With several zones dedicated to data unique combinations of marks are available. However, the number of combinations is only sufficient for film-print marking.
Unique marks are created for each film through a prescreening process. Marks are created in preparation prior to distribution. Several aspects of film-print based watermarking do not directly translate to digital cinema. For example, the film-based scheme only provides for approximately 74,000 unique combinations. This falls short of the 128,000 minimum requirements for digital cinema. It would be very difficult to uniquely mark each digital “print” in the same manner as film.
Therefore, a need exists to take advantage of the new digital cinema technology to provide in-situ watermarking during projection.
A system for watermarking a projected image, including a source for rendering a presentation with at least one watermark coding identifying the source of the projected image, the watermark coding including at least one image each image defining a watermark and including at least three dots which uniquely define each image.
A method for watermarking a presentation to identify its source, including generating a set of images from watermark files in accordance with an identity of a source of a presentation, each image defining a watermark wherein the images include dots which uniquely define each image relative to the other images by at least an angular relationship between dots of the image.
The advantages, nature, and various additional features of the invention will appear more fully upon consideration of the illustrative embodiments now to be described in detail in connection with accompanying drawings wherein:
It should be understood that the drawings are for purposes of illustrating the concepts of the invention and are not necessarily the only possible configuration for illustrating the invention.
In accordance with embodiments described herein, systems and methods provide images (glyphs), which may be preloaded into a projector and only the timing and spatial positioning of the entire glyph can be modified for a presentation while the glyph itself cannot be modified. In the film-print method the mark (glyph) is essentially customized for each print. The requirements which are addressed by watermarking in accordance with aspects of the present disclosure include, among other things, the following advantages. The scheme permits for the creation of a single subtitle file per distribution which will support multiple screens with a unique watermark result for each screen. The scheme should support a minimum of 128,000 unique combinations, many more are possible, which permits scalability, and permits deployment for use in as many digital cinema auditoriums as possible.
In addition, the scheme provides for data redundancy at the frame and inter-frame level, e.g., the same glyph may be used in different locations of the same digital presentation. The scheme minimizes an amount of time for any temporal encoding. A known constraint regarding subtitles reduces flexibility (see subtitle constraints below). The glyphs presented herein are visually acceptable and not intrusive based on subjective observation. Furthermore, the glyphs are uniquely identifiable from other glyphs, and are robust against partial destruction due to compression or other digital altering techniques. While watermarking techniques are known, specific problems in digital cinema video playback are solved including addressing time constraint issues imposed by existing subtitling mechanisms.
Temporal marking for film may utilize four locations, three of which are used to convey data and the fourth is used as a parity check. Each location may be further divided into 13 zones. Each zone is 8 frames in duration, 3 of which are used for rendering a mark. One of 42 possibilities is encoded by virtue of placing a mark in the corresponding zone for a given location. With three zones dedicated to data 42×42×42=74,000 unique combinations exist. The number of combinations is sufficient for film-print marking. Unique marks are created for each film through a prescreening process. Marks are created in preparation prior to distribution.
In digital cinema physically marking a film is no longer an option, and aspects of the film-print based scheme do not directly translate to digital cinema. The film-based scheme only provides for approximately 74,000 unique combinations. This falls short of the 128,000 minimum requirement dictated by digital cinema standards. Uniquely marking each digital “print” is not possible in the same manner as physical film marking. In accordance with one embodiment, images (glyphs) may be preloaded into a projector and only timing and spatial positioning of the entire glyph can be modified for a presentation while the glyph itself cannot be modified. In the film-print method the mark (glyph) is essentially customized for each print which makes scalability nearly impossible.
It is to be understood that the present invention is described in terms of a digital projector system; however, the present invention is much broader and may include any digital multimedia system, which is capable of digital delivery over a network. In addition, the present invention is applicable to any replay method including, e.g., data delivered or played back by telephone, set top boxes, computer, satellite links, etc. The present invention will now be illustratively described in terms of a digital cinema projector system.
It should be understood that the elements shown in the FIGS. may be implemented in various forms of hardware, software or combinations thereof. Preferably, these elements are implemented in a combination of hardware and software on one or more appropriately programmed general-purpose devices, which may include a processor, memory and input/output interfaces.
Referring now in specific detail to the drawings in which like reference numerals identify similar or identical elements throughout the several views, and initially to
Projector 101 includes a factory assigned watermark designation or class or a set of watermark combinations 120. The designation 120 permits that particular projector 101 to display a particular watermark file or files 122 as provided to (e.g., downloaded to) device 102 or projector 101. A plurality of watermark files 122 is provided. Images of watermarks are generated in accordance with the files 122. A selection of which watermarks will be displayed may be determined in accordance with a set of watermarks selected or determined by a content owner or manufacturer 133. Content owners may employed a table or matrix 132 to determine the set of watermark files 122 designated for a particular projector 101. Watermark files 122 are preferably included at the time of manufacture or in advance of placement of the projector in a theatre.
A script/subtitle track or file 111 is included with a presentation 124 to be rendered and may be formatted in a similar fashion as a subtitle track or file 111. Note that the watermark files 122 are preferably PNG image files, while the normal subtitle files including subtitle information are an xml/text file including the subtitling instructions for a given presentation.
A per-projector watermarking method provides unique visible watermarking per digital projector despite having a common playback scripting mechanism 130. The scripting mechanism 130 controls the digital cinema playback of the video and other ancillary data (such as subtitle information). By exploiting the graphics capability of the subtitling mechanism 130, watermarks can be placed over the video during the projection process.
To achieve unique watermarking per projector, a special “sequence” of watermark files 122 is used to emulate a temporal watermarking scheme. Further, for simple watermarking symbols, the watermark can be deftly placed in a frame to reduce annoyance of visible watermarking to the viewers of the presentation.
The subtitle/scripting language as provided by scripting/subtitle mechanism 130 describes when (e.g., frame/timecode), where (e.g., x, y screen coordinates), and what file to display (e.g., png image). In accordance with the present embodiments, the watermarking file names are common for all projectors (101) for a given presentation (124). Temporal modulation of the watermark is achieved through the use of null and non-null images, which are stored with the common names of the watermark files 122. Null images result in no mark rendered to a screen 134 while the non-null images result in a rendered watermark. This may be implemented using scripting mechanism 130 to give projectors instructions as to what, when and where watermarks are to be generated and depicted on a projection screen.
Advantageously, a same scripting language file 111 controls the video playback for each digital cinema projector 101 (for each individual movie). This scripting language file 111 can specify when (frame/time code) a specific watermark will be presented, where (x, y) a specific watermark will be presented, and the names of the files that include the watermarks. Note that the same watermark file names are used for each projector; however, the contents of these files do not have to be the same. In fact, to achieve an emulated temporal watermarking scheme, the contents of the files are preferably different. In one embodiment, the content of the watermarks may be preloaded on server 102 and loaded when the appropriate watermark file name is called for from the scripting mechanism 130.
As an example, four projectors receive identical instructions to render watermarks: file1, file2, file3 and file4 in sequence (x, y positioning is ignored in this example). Based on the contents of the image files for each projector the following temporal encoding can be achieved:
So in the example, projector1 will render file1, which may include a particular glyph. The sequence is continued so that a same or different glyph is rendered at a next zone or location in accordance with the projector class or assigned value. When and where file1 is rendered may also be assigned using a similar technique. For example, an x and y position may be given and frame numbers assigned as to when a watermark (glyph) of file1 will be displayed on the projection screen. Based on the contents of the image files for each class of projector 101 unique image, spatial and temporal encoding is achieved.
While the watermark files 122 may be similar to subtitling Image files, the watermarking files have stricter rendering rules, and the subtitling mechanism 130 may not be appropriate given some of the following constraints. It is not recommended to mix subtitle text with images. The timing of the images will no longer be reliable since the timing is affected by the timing of the text. Images used for watermarking should remain relatively small. Larger images tend to render line-by-line and also affect the timing of the display. Displaying images should be for a minimum of about 36 ticks (one tick is 1/250 seconds) or roughly 3 frames, otherwise the image may not render. It takes at least 3 frames from the end of displaying one image to the beginning of displaying the next. This leads to a minimum image time start-to-start of about 6 frames. 8 frames may be used for historical reasons. These restrictions may not apply in all subtitling mechanisms, but are provided as an illustration of factors to be considered. In a preferred embodiment, a single frame watermark rendering may be employed.
The images of the presentation with watermarks are then displayed on a display screen 134. The display screen 134 shows the content of the presentation with visible but unobtrusive watermark glyphs. In this way, illegal pirating can be traced to a unique projector or other source.
Some heuristics suggest that 3 dots per mark are reasonably unobtrusive to the viewer. However, more dots or shapes, e.g., five or six dots, may be used successfully for marking schemes. It should be understood that dots shall be taken to mean a relative position represented by a geometric image. Dots may have any shape, e.g., square, circle, triangle, ellipses, or any other shape or image.
Referring to
The marks are comprised of four unique glyphs 206a-d. Each glyph 206 is made of three dots 204. Four glyphs 206a-d permit for optimized encoding in the temporal domain as will be described below. Although dots are shown, the glyphs may be comprised on any geometric shape, e.g., squares, triangles, etc., images, logos or other shapes.
Each glyph 206 is unique in that the orientation of dots 204 is unique to that glyph; specifically the angles of lines 208 connecting each dot 204 within a glyph 206 are not repeated. The relationship between any two dots 204 does not repeat across glyphs 206. This unique relationship provides robustness against data loss when a single dot has been lost due to compression or image manipulation. If a dot 204 is missing, the glyph 206 can still be uniquely identified with two remaining dots. It should be understood that the matrix 202 and lines 208 are not rendered in the watermark, but are presented here to illustrate the concepts involved in placement of the dots 204.
Glyphs 206 can be oriented in such a way that when placed in a matrix 202 no single dot overlaps between glyphs 206 and can therefore be uniquely identified using only a single dot. This may need registering the content under analysis having watermarks with an original version of the content with watermarks to obtain an absolute reference.
When placing a glyph 206 for watermarking purposes, it is useful to composite all the glyph possibilities into a single “placement glyph.” The placement glyph provides a useful tool for summarizing the set of glyphs used in a particular presentation, and can be used to assist in the placement of the watermarks in a frame or frames to reduce intrusiveness.
Referring to
Placement glyphs 302, 304, 306, and 308 form different shapes. For example, placement glyph 302 forms a cup shape on a 4×4 matrix grid 308 including a composite of four glyphs 310. Several dots 315 overlap in locations 311, 313, 317 and 319. Angles between lines 312 connecting dots 315 provide The unique features.
Placement glyph 304 includes a goblet shape with the same four glyphs 310 of placement glyph 302; however, the glyphs 310 do not overlap and are instead presented on a 6×4 matrix grid 316. This placement glyph 304 includes both unique angles and unique dot placement.
Other placement glyphs and glyph combinations are also contemplated. Examples include placement glyphs 306 and 308, which show a 5×5 matrix grid 320 with different arrangements of four glyphs 310. The glyphs of placement glyph 306 are a mirror image of those in placement glyph 308. Both placement glyphs 306 and 308 include both unique angles and unique dot placement.
Dot size and intensity (contrast) for glyphs may be determined based on empirical experiments to ensure survivability in typical situations (e.g. camcorder copying). The dots of a glyph should be perceivable by a viewer to the extent necessary to be present on a recorded version of the presentation but should not be intrusive to the viewer. In this way, the watermark can be deciphered in a boot-legged copy of a movie without detracting from the viewing experience of a legitimate viewer.
Referring to
Using one of four glyphs (one glyph 406 is illustratively shown) in one of 13 zones to encode data in a given location yields 4×13 or at least 52 combinations per location. Using three locations provides 52×52×52=140,608 unique combinations in all. This exceeds the 128,000 unique combination goal as described above. The fourth location 402 may be used for parity calculations. A location in the context of encoding values is a set of (13) zones and represents a value based on the glyph selected and the zone in which it appears.
A parity calculation may be performed in advance and may be part of the watermarking scheme. In one example, the parity is precalculated and becomes part of the pre-deployed watermark value. For example, in the implementation where 3 locations are assigned values, the 4th (parity) location is calculated based on the sum of the values encoded into the first three locations then a modulo is used after divided by a number, for example, a number of combinations, say 52 in this case. Other parity formulas and values may be employed.
In the present example, the series of values provide 52 different possibilities for each location. The parity provides an additional check. The answer of the parity calculation is displayed on screen at a (e.g., fourth) location, but the other location values need not be displayed, but may correspond to a table or matrix kept by the content owner or other authorized entity.
Each zone 404 is similarly treated as for film-based schemes where a zone 404 is about 8 frames long of which about 3 frames are used to render a glyph. One frame is preferable for rendering the mark/glyph. It should be noted that since the glyphs are digitally rendered the glyph may appear over all 8 frames or over more or less frames depending on the circumstances.
Referring to
In block 504, a single scripting mechanism is employed to determine which watermarks are displayed in accordance with the projector class/designation or set or assigned watermark files (null and non-null combinations). The watermark files are provided in advance on the projector. The single script file includes information for a plurality of image files or watermark files (e.g., WM1 in Table 1) with watermark information. The correct files (glyphs) to be rendered are selected in accordance with the script file indicating when and where the watermark files are rendered for that projector. These unique sets of image files (watermarks) are created and deployed for each projector. The sets include all the same file names for the watermark files, but each set has a different combination of null and non-null watermark files. This “pre-modulates” the temporal and watermark information for each projector. Advantageously, all subsequent presentations may use the same relative timing and watermarks in the zones while the detailed timing and positioning (locations) may be determined by the subtitle/script file which is sent with the presentation.
In block 506, for watermarking, the content is screened to locate a position in the frames where the water mark will be visible. A placement glyph may be employed as a tool to make sure that all dots are viewable for the series of glyphs. While the placement glyph is helpful, at most only three of the dots will be shown for a given projector at one time (unless the locations share frames). It is preferable to employ a unique absolute positioning glyph pattern (e.g., no overlapping dots) to support single-dot or reduced dot decoding.
In block 508, during a presentation, in accordance with the projector designation and the image file to be rendered, a unique watermark coding is digitally rendered for a single projector. The watermarks include a sequence of glyphs; each glyph preferably includes a three dot pattern without vertical, horizontal or 45 degree lines between the dots. The glyphs are preferably run at one or more locations in the presentation and included in 13 zones (or a sequence of 4 glyphs combined in 13 places). In a preferred embodiment the glyphs are run in four locations in 13 zones per location. The watermark coding is unique to that projector.
In one embodiment, four locations are employed for rendering watermarks. Each location includes 13 zones, and each zone includes 8 frames. The placement of one or four glyphs can be done in different zones and at different locations to provide the possibility or 52 combinations of glyph presentations. For example, a single glyph may be selected from four glyphs. A single glyph may be used once at each location but the zones are changed for the glyphs placement. This gives 52 combinations per location (4 glyphs times 13 zones).
In block 510, a parity calculation may be performed in advance and may be part of the watermarking scheme. In one example, the parity is precalculated and becomes part of the pre-deployed watermark value. For example, in the implementation where 3 locations are assigned numeric values, the 4th (parity) location is calculated based on the sum of the values encoded into the first three locations then a modulo is used after divided by a number, for example, a number of combinations, say 52 in this case. Other parity formulas and values may be employed. The parity value may be displayed in a zone other than a zone where a glyph is present.
As an example, Table 2 demonstrates four locations each having a series of values. The series of values provide 52 different possibilities for each location. Location D is a modulo 52 of the sum of the values for corresponding zones values for the three locations A, B and C. Other parity formulas and schemes may be employed.
The parity provides an additional check. The answer of the parity calculation is displayed on screen at a (e.g., fourth) location, but the other location values need not be displayed, but may correspond to a table or matrix kept by the content owner or other authorized entity.
Referring to
In block 604, a determination of the watermarking parameters is determined. For example, the locations, glyph sequence in the zones and types of glyphs is made. For scenarios where mirroring, rotation or skew are injected into the image's registration, a comparison with the original image is recommended to avoid misinterpretation of the glyph. In the case where a mark is obliterated, blurred or frames cut from the footage, some data can still be retrieved based on temporal encoding. This is done by recognizing the specific location in time that has been modified and therefore the specific temporal encoding parameter (one of 13 zones within a given location).
In block 606, a database of projectors is consulted to determine which projector rendered the film. The database will include the glyph types and the combination of glyphs in sequences as well as locations where the glyphs were positioned for a given presentation. In this way, a unique projector will be determined in block 608.
The following table outlines the effects of some illustrative whole-mark attacks:
Having described preferred embodiments for system and method for digital cinema projector watermarking system and method (which are intended to be illustrative and not limiting), it is noted that modifications and variations can be made by persons skilled in the art in light of the above teachings. It is therefore to be understood that changes may be made in the particular embodiments of the invention disclosed which are within the scope and spirit of the invention as outlined by the appended claims. Having thus described the invention with the details and particularity required by the patent laws, what is claimed and desired protected by Letters Patent is set forth in the appended claims.
This application is related to U.S. Provisional Patent Application Ser. No. 60/719,637, entitled “DIGITAL CINEMA PER PROJECTOR WATERMARKING SCHEME”, filed Sep. 22, 2005, which is incorporated by reference herein in its entirety.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US06/78828 | 3/3/2006 | WO | 00 | 3/20/2008 |
Number | Date | Country | |
---|---|---|---|
60719637 | Sep 2005 | US |