Home
Patent Search
IMT Blog
REGISTER
|
SIGN IN
United States Patent
6381341
Rhoads
April 30, 2002
Title
Watermark encoding method exploiting biases inherent in original signal
Abstract
Source materials to be watermarked already have variations in their characteristics that may tend to aid the watermark encoding. Where such favorable variations exist, relatively less watermark energy can be applied.
Inventors:
Rhoads; Geoffrey B.
(West Linn,
OR
)
Assignee:
Digimarc Corporation
(Tualatin,
OR
)
Appl. No.:
441820
Filed:
November 17, 1999
Current U.S. Class:
382/100
Field of Search:
382/100,232,250,284,274 395/135 358/454,448,450,142,124 380/4,23,25,54 283/6,93,94 348/475 235/494
U.S. Patent Documents
2630525
March 1953
Tomberlin et al.
3493674
February 1970
Houghton
3562420
February 1971
Thompson
3569619
March 1971
Simjian
3585290
June 1971
Sanford
3665162
May 1972
Yamamoto et al.
3703628
November 1972
Philipson, Jr.
3805238
April 1974
Rothfjell
3809806
May 1974
Walker et al.
3838444
September 1974
Loughlin et al.
3845391
October 1974
Crosby
3914877
October 1975
Hines
3922074
November 1975
Ikegami et al.
3971917
July 1976
Maddox et al.
3982064
September 1976
Barnaby
3984624
October 1976
Waggener
4025851
May 1977
Haselwood et al.
4225967
September 1980
Miwa et al.
4230990
October 1980
Lert, Jr. et al.
4231113
October 1980
Blasbalg
4237484
December 1980
Brown
4238849
December 1980
Gassmann
4252995
February 1981
Schmidt et al.
4262329
April 1981
Bright et al.
4313197
January 1982
Maxemchuk
4367488
January 1983
Leventer et al.
4379947
April 1983
Warner
4380027
April 1983
Leventer et al.
4389671
June 1983
Posner et al.
4395600
July 1983
Lundy et al.
4423415
December 1983
Goldman
4425642
January 1984
Moses et al.
4425661
January 1984
Moses et al.
4476468
October 1984
Goldman
4495620
January 1985
Steele et al.
4528588
July 1985
Lofberg
4532508
July 1985
Ruell
4547804
October 1985
Greenberg
4553261
November 1985
Froessl
4590366
May 1986
Rothfjell
4595950
June 1986
Lofberg
4637051
January 1987
Clark
4639779
January 1987
Greenberg
4644582
February 1987
Morishita et al.
4647974
March 1987
Butler et al.
4654867
March 1987
Labedz et al.
4660221
April 1987
Dlugos
4663518
May 1987
Borror et al.
4665431
May 1987
Cooper
4672605
June 1987
Hustig et al.
4675746
June 1987
Tetrick et al.
4677435
June 1987
Cause D'Aggraives et al.
4677466
June 1987
Lert, Jr. et al.
4682794
July 1987
Margolin
4697209
September 1987
Kiewit et al.
4703476
October 1987
Howard
4712103
December 1987
Gotanda
4718106
January 1988
Weinblatt
4739377
April 1988
Allen
4750173
June 1988
Bluthgen
4765656
August 1988
Becker et al.
4775901
October 1988
Nakano
4776013
October 1988
Kafri et al.
4805020
February 1989
Greenberg
4807031
February 1989
Broughton et al.
4811357
March 1989
Betts et al.
4811408
March 1989
Goldman
4820912
April 1989
Samyn
4835517
May 1989
van der Gracht et al.
4855827
August 1989
Best
4864618
September 1989
Wright et al.
4866771
September 1989
Bain
4870681
September 1989
Sedlak
4874936
October 1989
Chandler et al.
4876617
October 1989
Best et al.
4879747
November 1989
Leighton et al.
4884139
November 1989
Pommier
4885632
December 1989
Mabey et al.
4903301
February 1990
Kondo et al.
4908836
March 1990
Rushforth et al.
4908873
March 1990
Philibert et al.
4920503
April 1990
Cook
4921278
May 1990
Shiang et al.
4939615
July 1990
Adelson
4941150
July 1990
Iwasaki
4943973
July 1990
Werner
4943976
July 1990
Ishigaki
4944036
July 1990
Hyatt
4963998
October 1990
Maufe
4965827
October 1990
McDonald
4967273
October 1990
Greenberg
4969041
November 1990
O'Grady et al.
4972471
November 1990
Gross et al.
4972476
November 1990
Nathans
4977594
December 1990
Shear
4979210
December 1990
Nagata et al.
4993068
February 1991
Piosenka et al.
4996530
February 1991
Hilton
5010405
April 1991
Schreiber et al.
5027401
June 1991
Soltesz
5036513
July 1991
Greenblatt
5063446
November 1991
Gibson
5073899
December 1991
Collier et al.
5075773
December 1991
Pullen
5077608
December 1991
Dubner
5077795
December 1991
Rourke et al.
5079648
January 1992
Maufe
5083224
January 1992
Hoogendoorn et al.
5086469
February 1992
Gupta et al.
5091966
February 1992
Bloomberg et al.
5095196
March 1992
Miyata
5103459
April 1992
Gilhousen et al.
5113437
May 1992
Best
5128525
July 1992
Stearns et al.
5134496
July 1992
Schwab et al.
5144660
September 1992
Rose
5146457
September 1992
Veldhuis et al.
5148498
September 1992
Resnikoff et al.
5150409
September 1992
Elsner
5161210
November 1992
Druyvesteyn et al.
5166676
November 1992
Millheiser
5168146
December 1992
Bloomberg
5181786
January 1993
Hujink
5185736
February 1993
Tyrrell et al.
5199081
March 1993
Saito et al.
5200822
April 1993
Bronfin et al.
5212551
May 1993
Conanan
5213337
May 1993
Sherman
5228056
July 1993
Schilling
5243423
September 1993
DeJean et al.
5245165
September 1993
Zhang
5245329
September 1993
Gockebay
5247364
September 1993
Banker et al.
5253078
October 1993
Balkanski et al.
5257199
October 1993
Funada et al.
5258998
November 1993
Koide
5259025
November 1993
Monroe
5267334
November 1993
Normille et al.
5278400
January 1994
Appel
5280537
January 1994
Sugiyama et al.
5293399
March 1994
Hefti
5295203
March 1994
Krause et al.
5299019
March 1994
Pack et al.
5305400
April 1994
Butera
5315098
May 1994
Tow
5315448
May 1994
Ryan
5319453
June 1994
Copriviza
5319724
June 1994
Blonstein et al.
5319735
June 1994
Preuss et al.
5325167
June 1994
Melen
5327237
July 1994
Gerdes et al.
5337361
August 1994
Wang et al.
5337362
August 1994
Gormish et al.
5349655
September 1994
Mann
5351302
September 1994
Leighton et al.
5374976
December 1994
Spannenburg
5379345
January 1995
Greenberg
5387941
February 1995
Montgomery et al.
5394274
February 1995
Kahn
5396559
March 1995
McGrew
5398283
March 1995
Virga
5404160
April 1995
Schober et al.
5404377
April 1995
Moses
5408542
April 1995
Callahan
5410598
April 1995
Shear
5418853
May 1995
Kanota et al.
5422963
June 1995
Chen et al.
5422995
June 1995
Aoki et al.
5425100
June 1995
Thomas et al.
5428606
June 1995
Moskowitz
5428607
June 1995
Hiller et al.
5432542
July 1995
Thibadeau et al.
5432870
July 1995
Schwartz
5436653
July 1995
Ellis et al.
5444779
August 1995
Daniele
5446273
August 1995
Leslie
5449895
September 1995
Hecht et al.
5450122
September 1995
Keene
5450490
September 1995
Jensen et al.
5453968
September 1995
Veldhuis et al.
5461426
October 1995
Limberg et al.
5469506
November 1995
Berson
5473631
December 1995
Moses
5479168
December 1995
Johnson et al.
5481294
January 1996
Thomas et al.
5488664
January 1996
Shamir
5499294
March 1996
Friedman
5500856
March 1996
Nagase et al.
5510900
April 1996
Shirochi et al.
5513011
April 1996
Matsumoto et al.
5513260
April 1996
Ryan
5515081
May 1996
Vasilik
5521372
May 1996
Hecht et al.
5524936
June 1996
Kunt et al.
5526427
June 1996
Thomas et al.
5530751
June 1996
Morris
5530759
June 1996
Braudaway et al.
5530852
June 1996
Meske, Jr. et al.
5532920
July 1996
Hartrick et al.
5537216
July 1996
Yamashita et al.
5537223
July 1996
Curry
5539471
July 1996
Myhrvold et al.
5539735
July 1996
Moskowitz
5541662
July 1996
Adams et al.
5541741
July 1996
Suzuki
5544255
August 1996
Smithies et al.
5548646
August 1996
Aziz et al.
5557333
September 1996
Jungo et al.
5559559
September 1996
Jungo et al.
5568179
October 1996
Diehl et al.
5568268
October 1996
Tsuji et al.
5568570
October 1996
Rabbani
5572010
November 1996
Petrie
5572247
November 1996
Montgomery
5574787
November 1996
Ryan
5576532
November 1996
Hecht
5579124
November 1996
Aijala et al.
5581800
December 1996
Fardeau et al.
5582103
December 1996
Tanaka et al.
5587743
December 1996
Montgomery
5590197
December 1996
Chen et al.
5602920
February 1997
Bestler et al.
5606609
February 1997
Houser et al.
5611575
March 1997
Petrie
5612943
March 1997
Moses et al.
5613004
March 1997
Cooperman et al.
5613012
March 1997
Hoffman et al.
5614940
March 1997
Cobbley et al.
5617148
April 1997
Montgomery
5627655
May 1997
Okamoto et al.
5629770
May 1997
Brassil
5629980
May 1997
Stefik et al.
5636292
June 1997
Rhoads
5638443
June 1997
Stefik et al.
5638446
June 1997
Rubin
5646997
July 1997
Barton
5647017
July 1997
Smithies et al.
5649054
July 1997
Oomen et al.
5652626
July 1997
Kawakami et al.
5659613
August 1997
Copeland et al.
5659726
August 1997
Sandford, II et al.
5659732
August 1997
Kirsch
5661574
August 1997
Kawana
5663766
September 1997
Sizer, II
5664018
September 1997
Leighton
5666487
September 1997
Goodman et al.
5671277
September 1997
Ikenoue et al.
5687191
November 1997
Lee et al.
5689587
November 1997
Bender et al.
5689623
November 1997
Pinard
5709932
January 1998
Glez et al.
5712920
January 1998
Spille
5719937
February 1998
Warren et al.
5719984
February 1998
Yamagata et al.
5721788
February 1998
Powell et al.
5727092
March 1998
Sandford, II et al.
5737025
April 1998
Dougherty et al.
5737026
April 1998
Lu et al.
5739864
April 1998
Copeland
5745569
April 1998
Moskowitz et al.
5761686
June 1998
Bloomberg
5764763
June 1998
Jensen et al.
5764770
June 1998
Schipper et al.
5774452
June 1998
Wolosewicz
5778102
July 1998
Sandford, II et al.
5799081
August 1998
Kim et al.
5799082
August 1998
Murphy et al.
5819289
October 1998
Sanford, II et al.
5822360
October 1998
Lee et al.
5822432
October 1998
Moskowitz et al.
5825892
October 1998
Braudaway et al.
5826227
October 1998
Jayant
5828325
October 1998
Wolosewicz et al.
5850249
December 1998
Massetti et al.
5857038
January 1999
Owada et al.
5859920
January 1999
Daly et al.
5862218
January 1999
Steinberg
5862260
January 1999
Rhoads
5878010
March 1999
Okamoto et al.
5889868
March 1999
Moskowitz et al.
5893067
April 1999
Bender et al.
5905505
May 1999
Lesk
5905819
May 1999
Daly
5907443
May 1999
Hirata
5920477
July 1999
Hoffberg et al.
5929920
July 1999
Sizer, II
5930369
July 1999
Cox
5937000
August 1999
Lee et al.
5940135
August 1999
Petrovic et al.
5940429
August 1999
Lam et al.
5960151
September 1999
Takahashi
5970140
October 1999
Sandford, II et al.
5987459
November 1999
Swanson et al.
5991500
November 1999
Kanota et al.
6000621
December 1999
Hecht et al.
6086706
July 2000
Brassil et al.
Foreign Patent Documents
05/242217
Sep., 1993
JP
058482
Aug., 1982
EP
2063018
May., 1981
GB
2067871
Jul., 1981
GB
2196167
Apr., 1988
GB
2204984
Nov., 1988
GB
2943436
May., 1981
DE
366381
May., 1990
EP
372601
Jun., 1990
EP
3806411
Sep., 1989
DE
4-248771
Sep., 1992
JP
411232
Feb., 1991
EP
418964
Mar., 1991
EP
441702
Aug., 1991
EP
493091
Dec., 1990
EP
551016
Feb., 1994
EP
581317
Feb., 1994
EP
605208
Jul., 1994
EP
629972
Dec., 1994
EP
642060
Mar., 1995
EP
649074
Apr., 1995
EP
650146
Apr., 1995
EP
651554
May., 1995
EP
705025
Apr., 1996
EP
8-30759
Feb., 1996
JP
WO 89/08915
Sep., 1989
GB
WO89/08915
Sep., 1989
WO
WO93/25038
Dec., 1993
WO
WO95/10835
Apr., 1995
WO
WO95/14289
May., 1995
WO
WO95/20291
Jul., 1995
WO
WO96/26494
Aug., 1996
WO
WO96/27259
Sep., 1996
WO
WO9731440
Aug., 1997
WO
WO9746012
Dec., 1997
WO
WO98/53565
Nov., 1998
WO
Other References
Brassil et al., Electronic Marking and Identification Techniques to Discourage Document Copying, Proceeding of INFOCOM '94 Conference on Computer, IEEE Commun. Soc Conference, Jun. 12-16, 1994, pp. 1278-1287. .
Jain, "Imaging Coding Via a Nearest Neighbors Image Model," IEEE Transactions on Communications, vol. COM-23, No. 3, Mar. 1975, pp. 318-331. .
Arthur, "Digital Fingerprints Protect Artwork," New Scientist, Nov. 12, 1994, p. 24. .
Matthews, "When Seeing is Not Believing," New Scientist, Oct. 16, 1993, pp. 13-15. .
Bender et al., "Techniques for Data Hiding," Massachusetts Institute of Technology, Media Laboratory, Jan. 1995, 10 pages. .
Walton, "Image Authentication for a Slippery New Age," Dr. Dobb's Journal, Apr. 1995, pp. 18-26, 82-87. .
Port, "Halting Highway Robbery on the Internet," Business Week, Oct. 17, 1994, p. 212. .
"Foiling Card Forgers With Magnetic `Noise,`" Wall Street Journal, Feb. 8, 1994. .
Fitzgerald, "Invisible Digital Copyright ID," Editor & Publisher, Jun. 25, 1994, p. 62. .
van Schyndel et al., "A Digital Watermark," IEEE International Conference on Image Processing, Nov. 13-16, 1994, pp. 86-90. .
Matsui et al., "Video-Steganography: How to Secretly Embed a Signature in a Picture," IMA Intellectual Property Project Proceedings, Jan. 1994, vol. 1, Issue 1, pp. 187-205. .
Tanaka et al., "Embedding Secret Information Into a Dithered Multi-Level Image," Proc. IEEE Military Comm. Conf., Sep. 1990, pp. 216-220. .
Tanaka et al., "New Integrated Coding Schemes for Computer-Aided Facsimile," Proc. IEEE Int'l Conf. on Sys. Integration, Apr. 1990, pp. 275-281. .
Schreiber et al., "A Compatible High-Definition Television System Using the Noise-Margin Method of Hiding Enhancement Information," SMPTE Journal, Dec. 1989, pp. 873-879. .
Short, "Steps Toward Unmasking Secure Communications," International Journal of Bifurcation and Chaos, vol. 4, No. 4, 1994, pp. 959-977. .
Tanaka, "Embedding the Attribute Information Into a Dithered Image," Systems and Computers in Japan, vol. 21, No. 7, 1990, pp. 43-50. .
Nakamura et al., "A Unified Coding Method of Dithered Image and Text Data Using Micropatterns," Electronics and Communications in Japan, Part 1, vol. 72, No. 4, 1989, pp. 50-56. .
Simmons, "Subliminal Channels; Past and Present," ETT, vol. 5, No. 4, Jul.-Aug. 1994, pp. 45-59. .
Nakamura et al., "A Unified Coding Method of Image and Text Data Using Discrete Orthogonal Transform," Systems and Computers in Japan, vol. 21, No. 3, 1990, pp. 87-92. .
Tanaka et al., "A Visual Retrieval System with Private Information for Image Database," Proceeding International Conference on DSP Applications and Technology, Oct. 1991, 00. 415-421. .
Sapwater et al., "Electronic Copyright Protection," Photo>Electronic Imaging, vol. 37, No. 6, 1994, pp. 16-21. .
"Access Control and COpyright Protection for Images, WorkPackage 8: Watermarking," Jun. 30, 1995, 46 pages. .
"Access Control and COpyright Protection for Images, WorkPackage 3: Evaluation of Existing Systems," Apr. 19, 1995, 68 pages. .
Boneh, "Collusion-Secure Fingerprinting for Digital Data," Department of Computer Science, Princeton University, 1995, 31 pages. .
Burgett et al., "A Novel Method for Copyright Labeling Digitized Image Data," requested by e-mail from author (unavailable/password protected on IGD WWW site); received Sep. 18, 1995, 1 pages. .
Friedman, "The Trustworthy Digital Camera: Restoring Credibility to the Photographic Image," IEEE Transactions on Consumer Electronics, vol. 39, No. 4, Nov., 1993, pp. 905-910. .
"Cyphertech Systems: Introduces Digital Encoding Device to Prevent TV Piracy," Hollywood Reporter, Oct. 20, 1993, p. 23. .
"NAB--Cyphertech Starts Anti-Piracy Broadcast Tests," Newsbytes, NEW03230023, Mar. 23, 1994. .
Humphrey, "Stamping Out Crime," Hollywood Reporter, Jan. 26, 1994, p. S48. .
Koch et al., "Towards Robust and Hidden Image Copyright Labeling," Proc. of 20995 IEEE Workshop on Nonlinear Signal and Image Processing, Jun. 20-22, 1995, 4 pages. .
"Copyright Protection for Digital Images, Digital Fingerprinting from FBI," Highwater FBI brochure, 1995, 4 pages. .
"High Water FBI Limited Presentation Image Copyright Protection Software," FBI Ltd brochure, Jul., 1995, 17 pages. .
Boland et al, "Watermarking Digital Images for Copyright Protection," Fifth International Conference on Image Processing and its Applications, Conference Date Jul. 4-6, 1995, Conf. Publ. No. 410, p. 326-330. .
"Stenography," Intellectual Property and the National Information Infrastructure The Report of the Working Group on Intellectual Property Rights, Sep. 1995, pp. 212-213. .
Caruso, "Digital Commerce, 2 plans for watermarks, which can bind proof of authorship to electronic works." New York Times, Aug. 7, 1995, one page. .
"Holographic signatures for digital images," The Seybold Report on Desktop Publishing, Aug. 1995, one page. .
Clarke, "Invisible Code Tags Electronic Images," Electronic Engineering Times, Jun. 12, 1995, n. 852, p. 42. .
"The Copyright Can of Worms Opened Up By The New Electronic Media," Computergram Internations, pCGN07170006, Jul. 17, 1995 and "The Copyright Can of Worms Opened Up By the New Electronic Media--2," Computergram Internations, pCGN07210008, Jul. 21, 1995, 3 pages total. .
"Access Control and COpyright Protection for Images, WorkPackage 1: Access Control and Copyright Protection for Images Need Evaluation," Jun., 1995, 21 pages. .
"Access Control and COpyright Protection for Images, Conditional Access and Copyright Protection Based on the Use of Trusted Third Parties," 1995, 43 pages. .
Luc, "Analysis of Spread Spectrum System Parameters for Design of Hidden Transmission," Radioengineering, vol. 4, No. 2, Jun. 1995, pp. 26-29. .
Macq, "Cryptology for Digital TV Broadcasting," Proceedings of the IEEE, vol. 83, No. 6, Jun. 1995, pp. 944-957. .
Zhao et al., "Embedding Robust Labels Into Images for Copyright Protection," Proc. of the International Congress on Intellectual Property Rights for Specialized Information, Knowledge and New Technologies (Vienna, Austria) Aug. 21-25, 1995, 10 pages. .
Frequently Asked Questions About Digimarc Signature Technology, Aug. 1, 1995, HTTP://WWW.DIGIMARC.COM, 9 pages. .
Bender et al, "Techniques for Data Hiding," Draft Preprint, Private Correspondence, dated Oct. 30, 1995. .
Johhnson, "Steganography," Dec. 10, 1995, 32 pages. .
Aura, "Invisible Communication," Helskinki University of Technology, Digital Systems Laboratory, Nov. 5, 1995, 13 pages. .
Digimarc presentation at RSA Conference, approximately Jan. 17, 1996, 4 pages (Cite in any cases filed after Jan. 17, 1996). .
Hecht, "Embedded Data Glyph Technology for Hardcopy Digital Documents," SPIE vol. 2171, 2/94, pp. 341-352. .
Roberts, "Picture Coding Using Pseudorandom Noise," IRE Trans. on Information Theory, vol. 8, No. 2, Feb., 1962, pp. 145-154. .
Choudhury, et al., "Copyright Protection for Electronic Publishing over Computer Networks," IEEE Network Magazine, Jun. 1994, 18 pages. .
Moller, et al., "Rechnergestutzte Steganographie: Wie sie Funktioniert und warum folglich jede Reglementierung von Verschlusselung unsinnig ist," DuK, Datenschutz und Datensicherung, 18/6 (1994) 318-326. .
Pennebaker et al., JPEG Still Image Data Compression Standard, Chapter 3, "Aspects of the Human Visual System," pp. 23-27, 1993, Van Nostrand Reinhold, New York. .
Castro et al., "Registration of Translated and Rotated Images Using Finite Fourier Transforms," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. PAMI-9, No. 5, Sep. 1987, pp. 700-703. .
Weber et al., "Correlative Image Registration," Seminars in Nuclear Medicine, vol. XXIV, No. 4 (Oct. 1994,), pp. 311-323. .
Toga et al., "Registration Revisited," Journal of Neuroscience Methods, 48 (1993), pp. 1-13. .
Sheng et al., "Experiments on Pattern Recognition Using Invariant Fourier-Mellin Descriptors," Journal of Optical Society of America, vol. 3, No. 6, Jun., 1986, pp. 771-776. .
Bartlett, et al., "An Overview of HighWater FBI Technology," Posted on Internet Mar. 22, 1996, 12 pages. .
Kurak et al., "A Cautionary Note On Image Downgrading," 1992 IEEE, pp. 153-159. .
Wagner, "Fingerprinting," 1983 IEEE, pp. 18-22. .
Sandford II, et al., "The Data Embedding Method," SPIE vol. 2615, Oct. 23, 1995, pp. 226-259. .
Brassil et al., "Hiding Information in Document Images," Nov., 1995, 7 pages.
Primary Examiner:
Couso; Jose L.
Attorney, Agent or Firm:
Meyer; Joel R.
Parent Case Text
RELATED APPLICATION DATA
This application is a division of copending application 09/186,962, filed Nov. 5, 1998, which is a continuation of application 08/649,419, filed May 16, 1996 (now U.S. Pat. No. 5,862,260). The foregoing application and patent are incorporated herein by reference. U.S. patent application Ser. No. 08/649,419 is a continuation of PCT/US96/06618, filed May 7, 1996.
The assignee Digimarc's other digital watermark-related patent filings include applications 07/923,841, filed Jul. 31, 1992 (now U.S. Pat. No. 5,721,788); 08/327,426, filed Oct. 21, 1994 (now U.S. Pat. No. 5,768,426); 08/436,098, filed May 8, 1995 (now U.S. Pat. No. 5,636,292); 08/436,099, filed May 8, 1995 (now U.S. Pat. No. 5,710,834); 08/436,134, filed May 8, 1995 (now U.S. Pat. No. 5,748,763); 08/436,102, filed May 8, 1995 (now U.S. Pat. No. 5,748,783); 08/508,083, filed Jul. 27, 1995 (now U.S. Pat. No. 5,841,978); 08/534,005, filed Sep. 25, 1995 (now U.S. Pat. No. 5,832,119); 08/614,521, filed March 15, 1996 (now U.S. Pat. No. 5,745,604); 08/637,531, filed Apr. 25, 1996 (now U.S. Pat. No. 5,822,436); 08/746,613, filed Nov. 12, 1996 (now U.S. Pat. No. 6,122,403); 08/763,847, filed Dec. 4, 1996 (now U.S. Pat. No. 5,841,886); 08/951,858, filed Oct. 16, 1997 (now U.S. Pat. No. 6,026,193); 08/967,693, filed Nov. 12, 1997 (now U.S. Pat. No. 6,122,392); 08/969,072, filed Nov. 12, 1997 (now U.S. Pat. No. 5,809,160); 09/074,034, filed May 6, 1998 (still pending); 09/074,632, filed May 7, 1998 (now U.S. Pat. No. 5,930,377); and 09/127,502, filed Jul. 31, 1998 (still pending).
Claims
I claim:
1. A method of processing a sampled data signal to steganographically encode plural-bit auxiliary data therein, the method including changing plural signal characteristics of the sampled data signal to embed the plural-bit auxiliary data therein, characterized by:
analyzing biases already existing in the signal characteristics of the sampled data signal to determine whether such biases tend toward values associated with the plural-bit auxiliary data values, and
if so, changing the signal characteristics relatively less to encode the auxiliary data into the sampled data signal, said changes being non-zero in value.
2. The method of claim 1 in which the sampled data signal represents visual information.
3. The method of claim 1 in which the signal characteristics comprise sample values.
4. The method of claim 3 which includes:
analyzing biases already existing at plural locations in the sampled data to determine whether such biases aid in the encoding; and
if so, changing the sampled data at such locations relatively less to encode the auxiliary data, and
if not, changing the sampled data at such locations relatively more to encode the auxiliary data.
5. The method of claim 4 in which said locations comprise plural adjoining samples rather than single samples.
6. The method of claim 1 in which the plural-bit auxiliary data includes device control data operative to trigger a response in a consumer appliance, such as enabling or disabling certain operations, depending on the particular plural-bit auxiliary data.
7. A storage medium having a processed data signal produced by the method of claim 1 thereon, the plural-bit auxiliary data encoded therein serving to trigger some operation in a consumer appliance, such as enabling or disabling certain operations, depending on the particular plural-bit auxiliary data.
8. A storage medium having stored thereon a processed data signal produced by the method of claim 1.
9. The method of claim 1 in which the sampled data signal represents audio information.
10. The method of claim 9 in which the signal characteristics comprise sample values.
11. The method of claim 10 which includes:
analyzing biases already existing at plural locations in the sampled data to determine whether such biases aid in the decoding; and
if so, changing the sampled data at such locations relatively less to encode the auxiliary data; and
if not, changing the sampled data at such locations relatively more to encode the auxiliary data.
12. The method of claim 11 in which said locations comprise plural adjoining samples rather than single samples.
13. The method of claim 9 in which the plural-bit auxiliary data includes device control data operative to trigger a response in a consumer appliance, such as enabling or disabling certain operations, depending on the particular plural-bit auxiliary data.
14. A storage medium having a processed data signal produced by the method of claim 9 thereon, the plural-bit auxiliary data encoded therein serving to trigger some operation in a consumer appliance, such as enabling or disabling certain operations, depending on the particular plural-bit auxiliary data.
15. A storage medium having stored thereon a processed data signal produced by the method of claim 9.
16. A method of processing a sampled data signal to steganographically encode auxiliary data therein, each sample having a value, the method including changing plural sample values to thereby bias same, characterized by:
analyzing biases already existing in the signal to determine whether such biases naturally tend toward signal characteristics associated with the plural-bit auxiliary data being encoded, and
where such natural biases are found, changing the sample values relatively less than would otherwise be the case.
17. A method of processing an input data signal representing audio or imagery so as to yield a desired output data signal having auxiliary data encoded therein, the auxiliary data being encoded by adding a low-amplitude signal to the input data signal, the method being characterized by assessing attributes of the input data signal and, where such attributes tend to mimic attributes of the desired output data signal that correspond to encoded auxiliary data values, adding relatively less of said low-amplitude signal thereto.
18. The method of claim 17 that includes, where such attributes tend to be contrary to attributes of the desired output signal, adding relatively more of said low-amplitude signal thereto.
19. The method of claim 17 in which the input and output data signals comprise samples, and said attributes comprise relative biases of samples relative to neighboring samples.
20. The method of claim 1 wherein the signal characteristics are changed by varying a gain value applied to an auxiliary signal embedded into the sampled data signal such that the gain value is dependent on the auxiliary data to be embedded in the sampled data signal.
21. The method of claim 20 wherein the auxiliary signal is embedded into the sampled data signal by adding the auxiliary signal to the sampled data signal.
22. The method of claim 21 wherein the auxiliary signal and the sampled data signal are added in a perceptual domain of the sampled data signal.
23. A computer readable medium on which is stored software for performing the method of claim 1.
24. An auxiliary data decoder for decoding the auxiliary data embedded into sampled data signals according to the method of claim 1.
25. The method of claim 16 wherein the sample values are changed by varying a gain value applied to an auxiliary signal embedded into the sampled data signal such that the gain value is dependent on the auxiliary data to be embedded in the sampled data signal.
26. The method of claim 25 wherein the auxiliary signal is embedded into the sampled data signal by adding the auxiliary signal to the sampled data signal.
27. The method of claim 26 wherein the auxiliary signal and the sampled data signal are added in a perceptual domain of the sampled data signal.
28. A computer readable medium on which is stored software for performing the method of claim 16.
29. An auxiliary data decoder for decoding the auxiliary data embedded into sampled data signals according to the method of claim 16.
30. A decoder for decoding auxiliary data that has been embedded into an input signal representing audio or imagery, where the auxiliary data has been embedded by processing the input data signal so as to yield a desired output data signal having auxiliary data encoded therein, the auxiliary data being encoded by adding a low-amplitude signal to the input data signal, including assessing attributes of the input data signal and, where such attributes tend to mimic attributes of the desired output data signal that correspond to encoded auxiliary data values, adding relatively less of said low-amplitude signal thereto.
31. The decoder of claim 30 wherein the amount of the low-amplitude signal added to the input signal is controlled by applying a gain to the low-amplitude signal that is a function of the input signal and the auxiliary data encoded into the input signal.
32. A method of embedding an auxiliary message into an original media signal to create an embedded media signal in which the auxiliary message is substantially imperceptible, the method comprising:
providing auxiliary message data for embedding into the original media signal, where the auxiliary message data includes two or more message elements, each of the message elements corresponding to characteristics of the embedded media signal;
adjusting characteristics of the original media signal to embed the message elements, including evaluating a characteristic of the original media signal to determine whether the characteristic is already biased toward the characteristic corresponding to a message element in the embedded media signal, changing the characteristics of the original media signal by lesser or greater amounts depending on whether the characteristics are already biased toward or away from the characteristics of the embedded media signal.
33. The method of claim 32 wherein the characteristics are adjusted by varying a gain value.
34. The method of claim 33 wherein the gain value is a function of the original media signal and auxiliary data to be encoded.
35. The method of claim 34 wherein the gain value is applied to an auxiliary signal and added to the media signal in a perceptual domain of the media signal to create the embedded media signal.
36. A computer readable medium on which is stored software for performing the method of claim 32.
37. A auxiliary data decoder for decoding data embedded into media signals according to the method of claim 32.
Description
FIELD OF THE INVENTION
The present invention relates to tracking watermarked materials (such as image data-including video and graphics data-and sound files) as they are disseminated on the Internet.
BACKGROUND AND SUMMARY OF THE INVENTION
Distribution of imagery (including, e.g., graphics and video) and audio on the Internet is quick and simple. While advantageous in most respects, this ease of distribution makes it difficult for proprietors of such materials to track the uses to which their audio/imagery/graphics/video are put. It also allows such properties to be copied illicitly, in violation of the proprietors' copyrights.
The present invention seeks to redress these drawbacks by monitoring Internet dissemination of various properties, and reporting the results back to their proprietors. If an unauthorized copy of a work is detected, appropriate steps can be taken to remove the copy, or compensate the proprietor accordingly.
In accordance with one embodiment of the present invention, a monitoring system downloads various image files (including video or graphic files) or audio files over the Internet, and identifies some as having embedded digital watermark data. The system decodes such watermark data and, from the decoded data, determines the proprietor of each file. The proprietors are then alerted to the results of the monitoring operation, sometimes informing them about otherwise unknown distribution of their image/audio properties.
In some embodiments, the proprietorship is determined by reference to a registry database, in which a watermarked identification code is associated with textual information identifying the proprietor of a work.
In some embodiments, various types of screening operations can be applied to the downloaded files to identify those most likely to contain embedded watermark data, so that complete watermark detection operations are performed only on a subset of the downloaded files.
The foregoing and other features and advantages will be more readily apparent from the following detailed description, which proceeds with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a simple and classic depiction of a one dimensional digital signal which is discretized in both axes.
FIG. 2 is a general overview, with detailed description of steps, of the process of embedding an "imperceptible" identification signal onto another signal.
FIG. 3 is a step-wise description of how a suspected copy of an original is identified.
FIG. 4 is a schematic view of an apparatus for pre-exposing film with identification information.
FIG. 5 is a diagram of a "black box" embodiment.
FIG. 6 is a schematic block diagram of the embodiment of FIG. 5.
FIG. 7 shows a variant of the FIG. 6 embodiment adapted to encode successive sets of input data with different code words but with the same noise data.
FIG. 8 shows a variant of the FIG. 6 embodiment adapted to encode each frame of a videotaped production with a unique code number.
FIGS. 9A-9C are representations of an industry standard noise second.
FIG. 10 shows an integrated circuit used in detecting standard noise codes.
FIG. 11 shows a process flow for detecting a standard noise code that can be used in the FIG. 10 embodiment.
FIG. 12 is an embodiment employing a plurality of detectors.
FIG. 13 shows an embodiment in which a pseudo-random noise frame is generated from an image.
FIG. 14 illustrates how statistics of a signal can be used in aid of decoding.
FIG. 15 shows how a signature signal can be preprocessed to increase its robustness in view of anticipated distortion, e.g. MPEG.
FIGS. 16 and 17 show embodiments in which information about a file is detailed both in a header, and in the file itself.
FIGS. 18-20 show details relating to embodiments using rotationally symmetric patterns.
FIG. 21 shows encoding "bumps" rather than pixels.
FIGS. 22-26 detail aspects of a security card.
FIG. 27 is a diagram illustrating a network linking method using information embedded in data objects that have inherent noise.
FIGS. 27A and 27B show a typical web page, and a step in its encapsulation into a self extracting web page object.
FIG. 28 is a diagram of a photographic identification document or security card.
FIGS. 29 and 30 illustrate two embodiments by which subliminal digital graticules can be realized.
FIG. 29A shows a variation on the FIG. 29 embodiment.
FIGS. 31A and 31B show the phase of spatial frequencies along two inclined axes.
FIGS. 32A-32C show the phase of spatial frequencies along first, second and third concentric rings.
FIGS. 33A-33E show steps in the registration process for a subliminal graticule using inclined axes.
FIGS. 34A-34E show steps in the registration process for a subliminal graticule using concentric rings.
FIGS. 35A-35C shows further steps in the registration process for a subliminal graticule using inclined axes.
FIGS. 36A-36D show another registration process that does not require a 2D FFT.
FIG. 37 is a flow chart summarizing a registration process for subliminal graticules.
FIG. 38 is a block diagram showing principal components of an exemplary wireless telephony system.
FIG. 39 is a block diagram of an exemplary steganographic encoder that can be used in the telephone of the FIG. 38 system.
FIG. 40 is a block diagram of an exemplary steganographic decoder that can be used in the cell site of the FIG. 1 system.
FIGS. 41A and 41B show exemplary bit cells used in one form of encoding.
FIG. 42 shows a hierarchical arrangement of signature blocks, sub-blocks, and bit cells used in one embodiment.
DETAILED DESCRIPTION
In the following discussion of an illustrative embodiment, the words "signal" and "image" are used interchangeably to refer to both one, two, and even beyond two dimensions of digital signal. Examples will routinely switch back and forth between a one dimensional audio-type digital signal and a two dimensional image-type digital signal.
In order to fully describe the details of an illustrative embodiment, it is necessary first to describe the basic properties of a digital signal. FIG. 1 shows a classic representation of a one dimensional digital signal. The x-axis defines the index numbers of sequence of digital "samples," and the y-axis is the instantaneous value of the signal at that sample, being constrained to exist only at a finite number of levels defined as the "binary depth" of a digital sample. The example depicted in FIG. 1 has the value of 2 to the fourth power, or "4 bits," giving 16 allowed states of the sample value.
For audio information such as sound waves, it is commonly accepted that the digitization process discretizes a continuous phenomena both in the time domain and in the signal level domain. As such, the process of digitization itself introduces a fundamental error source, in that it cannot record detail smaller than the discretization interval in either domain. The industry has referred to this, among other ways, as "aliasing" in the time domain, and "quantization noise" in the signal level domain. Thus, there will always be a basic error floor of a digital signal. Pure quantization noise, measured in a root mean square sense, is theoretically known to have the value of one over the square root of twelve, or about 0.29 DN, where DN stands for "Digital Number" or the finest unit increment of the signal level. For example, a perfect 12-bit digitizer will have 4096 allowed DN with an innate root mean square noise floor of 0.29 DN.
All known physical measurement processes add additional noise to the transformation of a continuous signal into the digital form. The quantization noise typically adds in quadrature (square root of the mean squares) to the "analog noise" of the measurement process, as it is sometimes referred to.
With almost all commercial and technical processes, the use of the decibel scale is used as a measure of signal and noise in a given recording medium. The expression "signal-to-noise ratio" is generally used, as it will be in this disclosure. As an example, this disclosure refers to signal to noise ratios in terms of signal power and noise power, thus 20 dB represents a 10 times increase in signal amplitude.
In summary, this embodiment embeds an N-bit value onto an entire signal through the addition of a very low amplitude encodation signal which has the look of pure noise. N is usually at least 8 and is capped on the higher end by ultimate signal-to-noise considerations and "bit error" in retrieving and decoding the N-bit value. As a practical matter, N is chosen based on application specific considerations, such as the number of unique different "signatures" that are desired. To illustrate, if N=128, then the number of unique digital signatures is in excess of 10 38 (2 128). This number is believed to be more than adequate to both identify the material with sufficient statistical certainty and to index exact sale and distribution information.
The amplitude or power of this added signal is determined by the aesthetic and informational considerations of each and every application using the present methodology. For instance, non-professional video can stand to have a higher embedded signal level without becoming noticeable to the average human eye, while high precision audio may only be able to accept a relatively small signal level lest the human ear perceive an objectionable increase in "hiss." These statements are generalities and each application has its own set of criteria in choosing the signal level of the embedded identification signal. The higher the level of embedded signal, the more corrupted a copy can be and still be identified. On the other hand, the higher the level of embedded signal, the more objectionable the perceived noise might be, potentially impacting the value of the distributed material.
To illustrate the range of different applications to which applicant's technology can be applied, the present specification details two different systems. The first (termed, for lack of a better name, a "batch encoding" system), applies identification coding to an existing data signal. The second (termed, for lack of a better name, a "real time encoding" system), applies identification coding to a signal as it is produced. Those skilled in the art will recognize that the principles of applicant's technology can be applied in a number of other contexts in addition to these particularly described.
The discussions of these two systems can be read in either order. Some readers may find the latter more intuitive than the former; for others the contrary may be true.
BATCH ENCODING
The following discussion of a first class of embodiments is best prefaced by a section defining relevant terms:
The original signal refers to either the original digital signal or the high quality digitized copy of a non-digital original.
The N-bit identification word refers to a unique identification binary value, typically having N range anywhere from 8 to 128, which is the identification code ultimately placed onto the original signal via the disclosed transformation process. In the illustrated embodiment, each N-bit identification word begins with the sequence of values `0101,` which is used to determine an optimization of the signal-to-noise ratio in the identification procedure of a suspect signal (see definition below).
The m'th bit value of the N-bit identification word is either a zero or one corresponding to the value of the m'th place, reading left to right, of the N-bit word. E.g., the first (m=1) bit value of the N=8 identification word 01110100 is the value `0;` the second bit value of this identification word is `1`, etc.
The m'th individual embedded code signal refers to a signal which has dimensions and extent precisely equal to the original signal (e.g. both are a 512 by 512 digital image), and which is (in the illustrated embodiment) an independent pseudo-random sequence of digital values. "Pseudo" pays homage to the difficulty in philosophically defining pure randomness, and also indicates that there are various acceptable ways of generating the "random" signal. There will be exactly N individual embedded code signals associated with any given original signal.
The acceptable perceived noise level refers to an application-specific determination of how much "extra noise," i.e. amplitude of the composite embedded code signal described next, can be added to the original signal and still have an acceptable signal to sell or otherwise distribute. This disclosure uses a 1 dB increase in noise as a typical value which might be acceptable, but this is quite arbitrary.
The composite embedded code signal refers to the signal which has dimensions and extent precisely equal to the original signal, (e.g. both are a 512 by 512 digital image), and which contains the addition and appropriate attenuation of the N individual embedded code signals. The individual embedded signals are generated on an arbitrary scale, whereas the amplitude of the composite signal must not exceed the pre-set acceptable perceived noise level, hence the need for "attenuation" of the N added individual code signals.
The distributable signal refers to the nearly similar copy of the original signal, consisting of the original signal plus the composite embedded code signal. This is the signal which is distributed to the outside community, having only slightly higher but acceptable "noise properties" than the original.
A suspect signal refers to a signal which has the general appearance of the original and distributed signal and whose potential identification match to the original is being questioned. The suspect signal is then analyzed to see if it matches the N-bit identification word.
The detailed methodology of this first embodiment begins by stating that the N-bit identification word is encoded onto the original signal by having each of the m bit values multiply their corresponding individual embedded code signals, the resultant being accumulated in the composite signal, the fully summed composite signal then being attenuated down to the acceptable perceived noise amplitude, and the resultant composite signal added to the original to become the distributable signal.
The original signal, the N-bit identification word, and all N individual embedded code signals are then stored away in a secured place. A suspect signal is then found. This signal may have undergone multiple copies, compressions and decompressions, resamplings onto different spaced digital signals, transfers from digital to analog back to digital media, or any combination of these items. IF the signal still appears similar to the original, i.e. its innate quality is not thoroughly destroyed by all of these transformations and noise additions, then depending on the signal to noise properties of the embedded signal, the identification process should function to some objective degree of statistical confidence. The extent of corruption of the suspect signal and the original acceptable perceived noise level are two key parameters in determining an expected confidence level of identification.
The identification process on the suspected signal begins by resampling and aligning the suspected signal onto the digital format and extent of the original signal. Thus, if an image has been reduced by a factor of two, it needs to be digitally enlarged by that same factor. Likewise, if a piece of music has been "cut out," but may still have the same sampling rate as the original, it is necessary to register this cut-out piece to the original, typically done by performing a local digital cross-correlation of the two signals (a common digital operation), finding at what delay value the correlation peaks, then using this found delay value to register the cut piece to a segment of the original.
Once the suspect signal has been sample-spacing matched and registered to the original, the signal levels of the suspect signal should be matched in an rms sense to the signal level of the original. This can be done via a search on the parameters of offset, amplification, and gamma being optimized by using the minimum of the mean squared error between the two signals as a function of the three parameters. We can call the suspect signal normalized and registered at this point, or just normalized for convenience.
The newly matched pair then has the original signal subtracted from the normalized suspect signal to produce a difference signal. The difference signal is then cross-correlated with each of the N individual embedded code signals and the peak cross-correlation value recorded. The first four bit code (`0101`) is used as a calibrator both on the mean values of the zero value and the one value, and on further registration of the two signals if a finer signal to noise ratio is desired (i.e., the optimal separation of the 0101 signal will indicate an optimal registration of the two signals and will also indicate the probable existence of the N-bit identification signal being present.)
The resulting peak cross-correlation values will form a noisy series of floating point numbers which can be transformed into 0's and 1's by their proximity to the mean values of 0 and 1 found by the 0101 calibration sequence. If the suspect signal has indeed been derived from the original, the identification number resulting from the above process will match the N-bit identification word of the original, bearing in mind either predicted or unknown "bit error" statistics. Signal-to-noise considerations will determine if there will be some kind of "bit error" in the identification process, leading to a form of X% probability of identification where X might be desired to be 99.9% or whatever. If the suspect copy is indeed not a copy of the original, an essentially random sequence of 0's and 1's will be produced, as well as an apparent lack of separation of the resultant values. This is to say, if the resultant values are plotted on a histogram, the existence of the N-bit identification signal will exhibit strong bi-level characteristics, whereas the non-existence of the code, or the existence of a different code of a different original, will exhibit a type of random gaussian-like distribution. This histogram separation alone should be sufficient for an identification, but it is even stronger proof of identification when an exact binary sequence can be objectively reproduced.
Specific Example
Imagine that we have taken a valuable picture of two heads of state at a cocktail party, pictures which are sure to earn some reasonable fee in the commercial market. We desire to sell this picture and ensure that it is not used in an unauthorized or uncompensated manner. This and the following steps are summarized in FIG. 2.
Assume the picture is transformed into a positive color print. We first scan this into a digitized form via a normal high quality black and white scanner with a typical photometric spectral response curve. (It is possible to get better ultimate signal to noise ratios by scanning in each of the three primary colors of the color image, but this nuance is not central to describing the basic process.)
Let us assume that the scanned image now becomes a 4000 by 4000 pixel monochrome digital image with a grey scale accuracy defined by 12-bit grey values or 4096 allowed levels. We will call this the "original digital image" realizing that this is the same as our "original signal" in the above definitions.
During the scanning process we have arbitrarily set absolute black to correspond to digital value `30`. We estimate that there is a basic 2 Digital Number root mean square noise existing on the original digital image, plus a theoretical noise (known in the industry as "shot noise") of the square root of the brightness value of any given pixel. In formula, we have:
Here, n and m are simple indexing values on rows and columns of the image ranging from 0 to 3999. Sqrt is the square root. V is the DN of a given indexed pixel on the original digital image. The <> brackets around the RMS noise merely indicates that this is an expected average value, where it is clear that each and every pixel will have a random error individually. Thus, for a pixel value having 1200 as a digital number or "brightness value", we find that its expected rms noise value is sqrt(1204)=34.70, which is quite close to 34.64, the square root of 1200.
We furthermore realize that the square root of the innate brightness value of a pixel is not precisely what the eye perceives as a minimum objectionable noise, thus we come up with the formula:
Where X and Y have been added as empirical parameters which we will adjust, and "addable" noise refers to our acceptable perceived noise level from the definitions above. We now intend to experiment with what exact value of X and Y we can choose, but we will do so at the same time that we are performing the next steps in the process.
The next step in our process is to choose N of our N-bit identification word. We decide that a 16 bit main identification value with its 65536 possible values will be sufficiently large to identify the image as ours, and that we will be directly selling no more than 128 copies of the image which we wish to track, giving 7 bits plus an eighth bit for an odd/even adding of the first 7 bits (i.e. an error checking bit on the first seven). The total bits required now are at 4 bits for the 0101
calibration sequence, 16 for the main identification, 8 for the version, and we now throw in another 4 as a further error checking value on the first 28 bits, giving 32 bits as N. The final 4 bits can use one of many industry standard error checking methods to choose its four values.
We now randomly determine the 16 bit main identification number, finding for example, 1101 0001 1001 1110; our first versions of the original sold will have all 0's as the version identifier, and the error checking bits will fall out where they may. We now have our unique 32 bit identification word which we will embed on the original digital image.
To do this, we generate 32 independent random 4000 by 4000 encoding images for each bit of our 32 bit identification word. The manner of generating these random images is revealing. There are numerous ways to generate these. By far the simplest is to turn up the gain on the same scanner that was used to scan in the original photograph, only this time placing a pure black image as the input, then scanning this 32 times. The only drawback to this technique is that it does require a large amount of memory and that "fixed pattern" noise will be part of each independent "noise image." But, the fixed pattern noise can be removed via normal "dark frame" subtraction techniques. Assume that we set the absolute black average value at digital number `100,` and that rather than finding a 2 DN rms noise as we did in the normal gain setting, we now find an rms noise of 10 DN about each and every pixel's mean value.
We next apply a mid-spatial-frequency bandpass filter (spatial convolution) to each and every independent random image, essentially removing the very high and the very low spatial frequencies from them. We remove the very low frequencies because simple real-world error sources like geometrical warping, splotches on scanners, mis-registrations, and the like will exhibit themselves most at lower frequencies also, and so we want to concentrate our identification signal at higher spatial frequencies in order to avoid these types of corruptions. Likewise, we remove the higher frequencies because multiple generation copies of a given image, as well as compression-decompression transformations, tend to wipe out higher frequencies anyway, so there is no point in placing too much identification signal into these frequencies if they will be the ones most prone to being attenuated. Therefore, our new filtered independent noise images will be dominated by mid-spatial frequencies. On a practical note, since we are using 12-bit values on our scanner and we have removed the DC value effectively and our new rms noise will be slightly less than 10 digital numbers, it is useful to boil this down to a 6-bit value ranging from -32 through 0 to 31 as the resultant random image.
Next we add all of the random images together which have a `1` in their corresponding bit value of the 32-bit identification word, accumulating the result in a 16-bit signed integer image. This is the unattenuated and un-scaled version of the composite embedded signal.
Next we experiment visually with adding the composite embedded signal to the original digital image, through varying the X and Y parameters of equation 2. In formula, we visually iterate to both maximize X and to find the appropriate Y in the following:
where dist refers to the candidate distributable image, i.e. we are visually iterating to find what X and Y will give us an acceptable image; orig refers to the pixel value of the original image; and comp refers to the pixel value of the composite image. The n's and m's still index rows and columns of the image and indicate that this operation is done on all 4000 by 4000 pixels. The symbol V is the DN of a given pixel and a given image.
As an arbitrary assumption, now, we assume that our visual experimentation has found that the value of X=0.025 and Y=0.6 are acceptable values when comparing the original image with the candidate distributable image. This is to say, the distributable image with the "extra noise" is acceptably close to the original in an aesthetic sense. Note that since our individual random images had a random rms noise value around 10 DN, and that adding approximately 16 of these images together will increase the composite noise to around 40 DN, the X multiplication value of 0.025 will bring the added rms noise back to around 1 DN, or half the amplitude of our innate noise on the original. This is roughly a 1 dB gain in noise at the dark pixel values and correspondingly more at the brighter values modified by the Y value of 0.6.
So with these two values of X and Y, we now have constructed our first versions of a distributable copy of the original. Other versions will merely create a new composite signal and possibly change the X slightly if deemed necessary. We now lock up the original digital image along with the 32-bit identification word for each version, and the 32 independent random 4-bit images, waiting for our first case of a suspected piracy of our original. Storage wise, this is about 14 Megabytes for the original image and 32*0.5 bytes*16 million= 256 Megabytes for the random individual encoded images. This is quite acceptable for a single valuable image. Some storage economy can be gained by simple lossless compression.
Finding a Suspected Piracy of our Image
We sell our image and several months later find our two heads of state in the exact poses we sold them in, seemingly cut and lifted out of our image and placed into another stylized background scene. This new "suspect" image is being printed in
100,000 copies of a given magazine issue, let us say. We now go about determining if a portion of our original image has indeed been used in an unauthorized manner. FIG. 3 summarizes the details.
The first step is to take an issue of the magazine, cut out the page with the image on it, then carefully but not too carefully cut out the two figures from the background image using ordinary scissors. If possible, we will cut out only one connected piece rather than the two figures separately. We paste this onto a black background and scan this into a digital form. Next we electronically flag or mask out the black background, which is easy to do by visual inspection.
We now procure the original digital image from our secured place along with the 32-bit identification word and the 32 individual embedded images. We place the original digital image onto our computer screen using standard image manipulation software, and we roughly cut along the same borders as our masked area of the suspect image, masking this image at the same time in roughly the same manner. The word `roughly` is used since an exact cutting is not needed, it merely aids the identification statistics to get it reasonably close.
Next we rescale the masked suspect image to roughly match the size of our masked original digital image, that is, we digitally scale up or down the suspect image and roughly overlay it on the original image. Once we have performed this rough registration, we then throw the two images into an automated scaling and registration program. The program performs a search on the three parameters of x position, y position, and spatial scale, with the figure of merit being the mean squared error between the two images given any given scale variable and x and y offset. This is a fairly standard image processing methodology. Typically this would be done using generally smooth interpolation techniques and done to sub-pixel accuracy. The search method can be one of many, where the simplex method is a typical one.
Once the optimal scaling and x-y position variables are found, next comes another search on optimizing the black level, brightness gain, and gamma of the two images. Again, the figure of merit to be used is mean squared error, and again the simplex or other search methodologies can be used to optimize the three variables. After these three variables are optimized, we apply their corrections to the suspect image and align it to exactly the pixel spacing and masking of the original digital image and its mask. We can now call this the standard mask.
The next step is to subtract the original digital image from the newly normalized suspect image only within the standard mask region. This new image is called the difference image.
Then we step through all 32 individual random embedded images, doing a local cross-correlation between the masked difference image and the masked individual embedded image. `Local` refers to the idea that one need only start correlating over an offset region of +/-1 pixels of offset between the nominal registration points of the two images found during the search procedures above. The peak correlation should be very close to the nominal registration point of 0,0 offset, and we can add the 3 by
3 correlation values together to give one grand correlation value for each of the 32 individual bits of our 32-bit identification word.
After doing this for all 32 bit places and their corresponding random images, we have a quasi-floating point sequence of 32 values. The first four values represent our calibration signal of 0101. We now take the mean of the first and third floating point value and call this floating point value `0,` and we take the mean of the second and the fourth value and call this floating point value `1.` We then step through all remaining 28 bit values and assign either a `0` or a `1` based simply on which mean value they are closer to. Stated simply, if the suspect image is indeed a copy of our original, the embedded 32-bit resulting code should match that of our records, and if it is not a copy, we should get general randomness. The third and the fourth possibilities of 3) Is a copy but doesn't match identification number and 4) isn't a copy but does match are, in the case of 3), possible if the signal to noise ratio of the process has plummeted, i.e. the `suspect image` is truly a very poor copy of the original, and in the case of 4) is basically one chance in four billion since we were using a 32-bit identification number. If we are truly worried about 4), we can just have a second independent lab perform their own tests on a different issue of the same magazine. Finally, checking the error-check bits against what the values give is one final and possibly overkill check on the whole process. In situations where signal to noise is a possible problem, these error checking bits might be eliminated without too much harm.
Benefits
Now that a full description of the first embodiment has been described via a detailed example, it is appropriate to point out the rationale of some of the process steps and their benefits.
The ultimate benefits of the foregoing process are that obtaining an identification number is fully independent of the manners and methods of preparing the difference image. That is to say, the manners of preparing the difference image, such as cutting, registering, scaling, etcetera, cannot increase the odds of finding an identification number when none exists; it only helps the signal-to-noise ratio of the identification process when a true identification number is present. Methods of preparing images for identification can be different from each other even, providing the possibility for multiple independent methodologies for making a match.
The ability to obtain a match even on sub-sets of the original signal or image is a key point in today's information-rich world. Cutting and pasting both images and sound clips is becoming more common, allowing such an embodiment to be used in detecting a copy even when original material has been thus corrupted. Finally, the signal to noise ratio of matching should begin to become difficult only when the copy material itself has been significantly altered either by noise or by significant distortion; both of these also will affect that copy's commercial value, so that trying to thwart the system can only be done at the expense of a huge decrease in commercial value.
An early conception of this technology was the case where only a single "snowy image" or random signal was added to an original image, i.e. the case where N=1. "Decoding" this signal would involve a subsequent mathematical analysis using (generally statistical) algorithms to make a judgment on the presence or absence of this signal. The reason this approach was abandoned as the preferred embodiment was that there was an inherent gray area in the certainty of detecting the presence or absence of the signal. By moving onward to a multitude of bit planes, i.e. N>1, combined with simple pre-defined algorithms prescribing the manner of choosing between a "0" and a "1 ", the certainty question moved from the realm of expert statistical analysis into the realm of guessing a random binary event such as a coin flip. This is seen as a powerful feature relative to the intuitive acceptance of this technology in both the courtroom and the marketplace. The analogy which summarizes the inventor's thoughts on this whole question is as follows: The search for a single identification signal amounts to calling a coin flip only once, and relying on arcane experts to make the call; whereas the N>1 embodiment relies on the broadly intuitive principle of correctly calling a coin flip N times in a row. This situation is greatly exacerbated, i.e. the problems of "interpretation" of the presence of a single signal, when images and sound clips get smaller and smaller in extent.
Another important reason that the N>1 case is preferred over the N=1 embodiment is that in the N=1 case, the manner in which a suspect image is prepared and manipulated has a direct bearing on the likelihood of making a positive identification. Thus, the manner with which an expert makes an identification determination becomes an integral part of that determination. The existence of a multitude of mathematical and statistical approaches to making this determination leave open the possibility that some tests might make positive identifications while others might make negative determinations, inviting further arcane debate about the relative merits of the various identification approaches. The N>1 embodiment avoids this further gray area by presenting a method where no amount of pre-processing of a signal-other than pre-processing which surreptitiously uses knowledge of the private code signals-can increase the likelihood of "calling the coin flip N times in a row."
The fullest expression of the present system will come when it becomes an industry standard and numerous independent groups set up with their own means or `in-house` brand of applying embedded identification numbers and in their decipherment. Numerous independent group identification will further enhance the ultimate objectivity of the method, thereby enhancing its appeal as an industry standard.
Use of True Polarity in Creating the Composite Embedded Code Signal
The foregoing discussion made use of the 0 and 1 formalism of binary technology to accomplish its ends. Specifically, the 0's and 1's of the N-bit identification word directly multiplied their corresponding individual embedded code signal to form the composite embedded code signal (step 8, FIG. 2). This approach certainly has its conceptual simplicity, but the multiplication of an embedded code signal by 0 along with the storage of that embedded code contains a kind of inefficiency.
It is preferred to maintain the formalism of the 0 and 1 nature of the N-bit identification word, but to have the 0's of the word induce a subtraction of their corresponding embedded code signal. Thus, in step 8 of FIG. 2, rather than only `adding` the individual embedded code signals which correspond to a `1` in the N-bit identification word, we will also `subtract` the individual embedded code signals which correspond to a `0` in the N-bit identification word.
At first glance this seems to add more apparent noise to the final composite signal. But it also increases the energy-wise separation of the 0's from the 1's, and thus the `gain` which is applied in step 10, FIG. 2 can be correspondingly lower.
We can refer to this improvement as the use of true polarity. The main advantage of this improvement can largely be summarized as `informational efficiency.`
`Perceptual Orthogonality` of the Individual Embedded Code Signals
The foregoing discussion contemplates the use of generally random noise-like signals as the individual embedded code signals. This is perhaps the simplest form of signal to generate. However, there is a form of informational optimization which can be applied to the set of the individual embedded signals, which the applicant describes under the rubric `perceptual orthogonality.` This term is loosely based on the mathematical concept of the orthogonality of vectors, with the current additional requirement that this orthogonality should maximize the signal energy of the identification information while maintaining it below some perceptibility threshold. Put another way, the embedded code signals need not necessarily be random in nature.
Use and Improvements of the First Embodiment in the Field of Emulsion-Based Photography
The foregoing discussion outlined techniques that are applicable to photographic materials. The following section explores the details of this area further and discloses certain improvements which lend themselves to a broad range of applications.
The first area to be discussed involves the pre-application or pre-exposing of a serial number onto traditional photographic products, such as negative film, print paper, transparencies, etc. In general, this is a way to embed a priori unique serial numbers (and by implication, ownership and tracking information) into photographic material. The serial numbers themselves would be a permanent part of the normally exposed picture, as opposed to being relegated to the margins or stamped on the back of a printed photograph, which all require separate locations and separate methods of copying. The `serial number` as it is called here is generally synonymous with the N-bit identification word, only now we are using a more common industrial terminology.
In FIG. 2, step 11, the disclosure calls for the storage of the "original [image]" along with code images. Then in FIG. 3, step 9, it directs that the original be subtracted from the suspect image, thereby leaving the possible identification codes plus whatever noise and corruption has accumulated. Therefore, the previous disclosure made the tacit assumption that there exists an original without the composite embedded signals.
Now in the case of selling print paper and other duplication film products, this will still be the case, i.e., an "original" without the embedded codes will indeed exist and the basic methodology of the first embodiment can be employed. The original film serves perfectly well as an `unencoded original.`
However, in the case where pre-exposed negative film is used, the composite embedded signal pre-exists on the original film and thus there will never be an "original" separate from the pre-embedded signal. It is this latter case, therefore, which will be examined a bit more closely, along with observations on how to best use the principles discussed above (the former cases adhering to the previously outlined methods).
The clearest point of departure for the case of pre-numbered negative film, i.e. negative film which has had each and every frame pre-exposed with a very faint and unique composite embedded signal, comes at step 9 of FIG. 3 as previously noted. There are certainly other differences as well, but they are mostly logistical in nature, such as how and when to embed the signals on the film, how to store the code numbers and serial number, etc. Obviously the pre-exposing of film would involve a major change to the general mass production process of creating and packaging film.
FIG. 4 has a schematic outlining one potential post-hoc mechanism for pre-exposing film. `Post-hoc` refers to applying a process after the full common manufacturing process of film has already taken place. Eventually, economies of scale may dictate placing this pre-exposing process directly into the chain of manufacturing film. Depicted in FIG. 4 is what is commonly known as a film writing system. The computer, 106, displays the composite signal produced in step 8, FIG. 2, on its phosphor screen. A given frame of film is then exposed by imaging this phosphor screen, where the exposure level is generally very faint, i.e. generally imperceptible. Clearly, the marketplace will set its own demands on how faint this should be, that is, the level of added `graininess` as practitioners would put it. Each frame of film is sequentially exposed, where in general the composite image displayed on the CRT 102 is changed for each and every frame, thereby giving each frame of film a different serial number. The transfer lens 104 highlights the focal conjugate planes of a film frame and the CRT face.
Getting back to the applying the principles of the foregoing embodiment in the case of pre-exposed negative film . . . At step 9, FIG. 3, if we were to subtract the "original" with its embedded code, we would obviously be "erasing" the code as well since the code is an integral part of the original. Fortunately, remedies do exist and identifications can still be made. However, it will be a challenge to artisans who refine this embodiment to have the signal to noise ratio of the identification process in the pre-exposed negative case approach the signal to noise ratio of the case where the un-encoded original exists.
A succinct definition of the problem is in order at this point. Given a suspect picture (signal), find the embedded identification code IF a code exists at al. The problem reduces to one of finding the amplitude of each and every individual embedded code signal within the suspect picture, not only within the context of noise and corruption as was previously explained, but now also within the context of the coupling between a captured image and the codes. `Coupling` here refers to the idea that the captured image "randomly biases" the cross-correlation.
So, bearing in mind this additional item of signal coupling, the identification process now estimates the signal amplitude of each and every individual embedded code signal (as opposed to taking the cross-correlation result of step 12, FIG. 3). If our identification signal exists in the suspect picture, the amplitudes thus found will split into a polarity with positive amplitudes being assigned a `1` and negative amplitudes being assigned a `0`. Our unique identification code manifests itself. If, on the other hand, no such identification code exists or it is someone else's code, then a random gaussian-like distribution of amplitudes is found with a random hash of values.
It remains to provide a few more details on how the amplitudes of the individual embedded codes are found. Again, fortunately, this exact problem has been treated in other technological applications. Besides, throw this problem and a little food into a crowded room of mathematicians and statisticians and surely a half dozen optimized methodologies will pop out after some reasonable period of time. It is a rather cleanly defined problem.
One specific example solution comes from the field of astronomical imaging. Here, it is a mature prior art to subtract out a "thermal noise frame" from a given CCD image of an object. Often, however, it is not precisely known what scaling factor to use in subtracting the thermal frame, and a search for the correct scaling factor is performed. This is precisely the task of this step of the present embodiment.
General practice merely performs a common search algorithm on the scaling factor, where a scaling factor is chosen and a new image is created according to:
The new image is applied to the fast fourier transform routine and a scale factor is eventually found which minimizes the integrated high frequency content of the new image. This general type of search operation with its minimization of a particular quantity is exceedingly common. The scale factor thus found is the sought-for "amplitude." Refinements which are contemplated but not yet implemented are where the coupling of the higher derivatives of the acquired image and the embedded codes are estimated and removed from the calculated scale factor. In other words, certain bias effects from the coupling mentioned earlier are present and should be eventually accounted for and removed both through theoretical and empirical experimentation.
Use and Improvements in the Detection of Signal or Image Alteration
Apart from the basic need of identifying a signal or image as a whole, there is also a rather ubiquitous need to detect possible alterations to a signal or image. The following section describes how the foregoing embodiment, with certain modifications and improvements, can be used as a powerful tool in this area. The potential scenarios and applications of detecting alterations are innumerable.
To first summarize, assume that we have a given signal or image which has been positively identified using the basic methods outlined above. In other words, we know its N-bit identification word, its individual embedded code signals, and its composite embedded code. We can then fairly simply create a spatial map of the composite code's amplitude within our given signal or image. Furthermore, we can divide this amplitude map by the known composite code's spatial amplitude, giving a normalized map, i.e. a map which should fluctuate about some global mean value. By simple examin