Data processing apparatus and method
Abstract
This record has no abstract on file.
Term
Term ended
Expired 13 December 2022, 3.8 years ago.
- Priority
- Filed
- Granted
- Expired
- Today
19 claims: 13 independent, 6 dependent
- 1originalMaterial itemAt least one of the original material items by introducing one of the codewords in a given set of codewords intoVersion with embedded codewordHas multiple codeword coefficients in a coded data processing device that generatesthe aboveThe codeword generator that generates the codeword and the above codeword coefficientoriginalA plurality of codewords in the above predetermined set of codewords, comprising a coding processor to be coupled to a material item, are a first codeword having a first plurality of codeword coefficients and the first codeword. ToPatrolGenerated by shiftingRuIncludes at least one other codewordMi, The coding processor is characterized by changing the order of the codeword coefficients coupled to the original material based on the reordering code.Coded data processing device. オリジナルマテリアルアイテムに所定のコードワードの組のうちの1つのコードワードを導入することにより、該オリジナルマテリアルアイテムの少なくとも1つのコードワードが埋め込まれたバージョンを生成する符号化データ処理装置において、 複数のコードワード係数を有する上記コードワードを生成するコードワード生成器と、 上記コードワード係数を上記オリジナルマテリアルアイテムに結合する符号化プロセッサとを備え、 上記所定のコードワードの組内の複数のコードワードは、第1の複数のコードワード係数を有する第1のコードワードと、該第1のコードワードを巡回的にシフトして生成される少なくとも1つの他のコードワードとを含み、 上記符号化プロセッサは、順序変更コードに基づいて、上記オリジナルマテリアルに結合する上記コードワード係数の順序を変更することを特徴とする符号化データ処理装置。
- 5the aboveoriginalConvert material item to discrete cosine transform areaAnd generate multiple discrete cosine transform coefficientsDiscrete cosine transform processorWith, The coding processor has the codeword coefficient,One of the corresponding discrete cosine transform coefficientsToBy addingthe aboveCodewordTothe aboveoriginalMaterial itemToCombine and the aboveCodeword by coding processorcoefficientWas addedDiscrete cosine transform coefficientBy inverse discrete cosine transformoriginalMaterial itemEmbedded codewordAn inverse discrete cosine transform processor that produces versionsFurthermoreClaims to prepare1 to 4The coded data processing device described. 上記オリジナルマテリアルアイテムを離散コサイン変換領域に変換し、複数の離散コサイン変換係数を生成する離散コサイン変換プロセッサを備え、 上記符号化プロセッサは、上記コードワード係数を、対応する離散コサイン変換係数の1つに加算することにより、上記コードワードを上記オリジナルマテリアルアイテムに結合し、 上記符号化プロセッサによってコードワード係数が加算された離散コサイン変換係数を逆離散コサイン変換することにより、上記オリジナルマテリアルアイテムのコードワードが埋め込まれたバージョンを生成する逆離散コサイン変換プロセッサを更に備える請求項1乃至4記載の符号化データ処理装置。
- 8pseudoRandomly distributed multiple predeterminedCodewordA first codeword with a coefficient and the first codewordPatrolMultiple composed of at least one other codeword generated by shiftingofOriginal material from a set of codewordsofOf the original material item generated by combining each sample with each corresponding codeword coefficientEmbedded codewordIn a detection data processing device that identifies one or more predetermined codewords that exist in a version, the aboveEmbedded version of the material item codewordA decoding processor that reproduces a codeword from a codeword and generates a reproduced codeword, and a detection processor that detects at least one codeword from a correlation value of a codeword that exceeds a predetermined threshold value. Is Swap the order of one of the replay codewords or the first codeword of the set of codewords based on the reorder code, The Fourier transform value of the reproduction codeword is calculated, the Fourier transform value of the first codeword of the set of the codewords is calculated, the Fourier transform value of the reproduction codeword and the Fourier transform value of the generated codeword. Calculate the complex conjugate of either one of the above, and Fourier transform the above-mentioned reproduction codeword.Value or its complex conjugateWith sample、Fourier transform of the corresponding first codeword aboveValue or its complex conjugateMultiply the sample to calculate the first intermediate product sample, and reverse the above intermediate product sample.FourierBy transforming and calculating a correlation sample, each representing a correlation value of one of the above set of codewords.、DesiredCharacterized byDetection data processing device. 擬似ランダム的に分布した複数の所定のコードワード係数を有する第1のコードワードと、該第1のコードワードを巡回的にシフトして生成された少なくとも1つの他のコードワードとから構成された複数のコードワードの組から、オリジナルマテリアルの各サンプルに、それぞれ対応する各コードワード係数を結合することにより生成された、オリジナルマテリアルアイテムのコードワードが埋め込まれたバージョン内に存在する1つ以上の所定のコードワードを識別する検出データ処理装置において、 上記マテリアルアイテムのコードワードが埋め込まれたバージョンからコードワードを再生し、再生コードワードを生成する復号プロセッサと、 所定の閾値を超えるコードワードの相関値から少なくとも1つのコードワードを検出する検出プロセッサとを備え、 上記複数のコードワードの相関値は、 順序変更コードに基づいて、上記再生コードワード又は上記コードワードの組の第1のコードワードのうちの1つの順序を入れ替え、 上記再生コードワードのフーリエ変換値を算出し、上記コードワードの組の第1のコードワードのフーリエ変換値を算出し、 上記再生コードワードのフーリエ変換値及び上記生成されたコードワードのフーリエ変換値のいずれか一方の複素共役を算出し、 上記再生コードワードのフーリエ変換値又はその複素共役のサンプルと、対応する上記第1のコードワードのフーリエ変換値又はその複素共役のサンプルとを乗算して第1の中間積サンプルを算出し、 上記中間積サンプルを逆フーリエ変換し、それぞれが上記コードワードの組のうちの1つの相関値を表す相関サンプルを算出することにより、求められることを特徴とする検出データ処理装置。
- 9The above decoding processorFrom the sample of the version in which the codeword of the above material item is embedded, the corresponding sample of the above original material itemBy subtracting, the above-mentioned reproduction codeword is reproduced, and for each of the above-mentioned plurality of codewords,TheA claim characterized in that the sum of the correlation values is generated by examining the correlation between the reproduced code word and each of the code words.8The detection data processing device described. 上記復号プロセッサは、上記マテリアルアイテムのコードワードが埋め込まれたバージョンのサンプルから上記オリジナルマテリアルアイテムの対応するサンプルを減算することにより上記再生コードワードを再生し、上記複数のコードワードのそれぞれについて、該再生コードワードと該各コードワードとの相関を調べることにより相関値の総和を生成することを特徴とする請求項8記載の検出データ処理装置。
- 10Of the above original material itemsEmbedded codewordVersion sample,the aboveClaim with a registration processor associated with the corresponding sample of the original material item8Or9The detection data processing device described. 上記オリジナルマテリアルアイテムのコードワードが埋め込まれたバージョンのサンプルを、上記オリジナルマテリアルアイテムの対応するサンプルに関連付ける登録プロセッサを備える請求項8又は9記載の検出データ処理装置。
- 11the aboveDecryptionThe processor is the above material itemCodeword embedded versionA claim comprising a codeword generator that generates the above seed value from8To10The detection data processing device according to any one of the items. 上記復号プロセッサは、上記マテリアルアイテムのコードワードが埋め込まれたバージョンから上記シード値を生成するコードワード生成器を備えることを特徴とする請求項8乃至10いずれか1項記載の検出データ処理装置。
- 12The above codeword is used in the discrete cosine transform region.The above originalIntroduced in material itemsTeori、 Decoding processorIs aboveEmbedded codewordversionas well asOriginal material itemToEquipped with a discrete cosine transform processor that converts to the discrete cosine transform region The decoding processor uses the discrete cosine transform coefficient of the original material item from the corresponding discrete cosine transform coefficient of the version in which the codeword is embedded.The claim is characterized in that the reproduction code word is generated by subtracting.8To11The detection data processing device according to any one of the items. 上記コードワードは、離散コサイン変換領域において上記オリジナルマテリアルアイテムに導入されており、 上記復号プロセッサは、上記コードワードが埋め込まれたバージョン及びオリジナルマテリアルアイテムを離散コサイン変換領域に変換する離散コサイン変換プロセッサを備え、 上記復号プロセッサは、上記コードワードが埋め込まれたバージョンの対応する離散コサイン変換係数から上記オリジナルマテリアルアイテムの離散コサイン変換係数を減算することにより、上記再生コードワードを生成することを特徴とする請求項8乃至11いずれか1項記載の検出データ処理装置。
- 14originalMaterial itemAt least one of the original material items by introducing one of the codewords in a given set of codewords intoVersion with embedded codewordHas multiple codeword coefficients in the coding method to generatethe aboveSteps to generate codewords and the above codeword coefficientsoriginalThe step of generating the above codeword, which has a step of binding to a material item, includes a step of generating a first codeword having a first plurality of codeword coefficients, and a step of generating the first codeword.the aboveThe first codewordPatrolHas steps to generate at least one other codewordAnd The combining step is characterized in that the order of the codeword coefficients to be combined with the original material item is changed based on the ordering code.Encoding method. オリジナルマテリアルアイテムに所定のコードワードの組のうちの1つのコードワードを導入することにより、該オリジナルマテリアルアイテムの少なくとも1つのコードワードが埋め込まれたバージョンを生成する符号化方法において、 複数のコードワード係数を有する上記コードワードを生成するステップと、 上記コードワード係数を上記オリジナルマテリアルアイテムに結合するステップとを有し、 上記コードワードを生成するステップは、 第1の複数のコードワード係数を有する第1のコードワードを生成するステップと、上記第1のコードワードを巡回的にシフトして少なくとも1つの他のコードワードを生成するステップとを有し、 上記結合するステップは、順序変更コードに基づいて、上記オリジナルマテリアルアイテムに結合する上記コードワード係数の順序を変更することを特徴とする符号化方法。
- 15Original materialofOf the original material item generated by combining each sample with each corresponding codeword coefficientEmbedded codewordIn an identification method that identifies one or more predetermined sets of codewords that exist in a version, the aboveEmbedded version of the material item codewordIt has a step of reproducing a codeword from a codeword and generating a reproduced codeword, and a step of detecting at least one codeword from the correlation value of the codeword exceeding a predetermined threshold value. , Swap the order of one of the replay codewords or the first codeword of the set of codewords based on the reorder code, The Fourier transform value of the reproduction codeword is calculated, the Fourier transform value of the first codeword of the set of the codewords is calculated, the Fourier transform value of the reproduction codeword and the Fourier transform value of the generated codeword. Calculate the complex conjugate of either one of the above, and each Fourier transform of the above-mentioned reproduction codeword.Value or its complex conjugateWith sample、Fourier transform of the corresponding first codeword aboveValue or its complex conjugateMultiply the sample to calculate the first intermediate product sample, and reverse the above intermediate product sample.FourierBy transforming and calculating a correlation sample, each representing a correlation value of one of the above set of codewords.、DesiredCharacterized byIdentification method. オリジナルマテリアルの各サンプルに、それぞれ対応する各コードワード係数を結合することにより生成された、オリジナルマテリアルアイテムのコードワードが埋め込まれたバージョン内に存在する1つ以上の所定のコードワードの組を識別する識別方法において、 上記マテリアルアイテムのコードワードが埋め込まれたバージョンからコードワードを再生し、再生コードワードを生成するステップと、 所定の閾値を超えるコードワードの相関値から少なくとも1つのコードワードを検出するステップとを有し、 上記複数のコードワードの相関値は、 順序変更コードに基づいて、上記再生コードワード又は上記コードワードの組の第1のコードワードのうちの1つの順序を入れ替え、 上記再生コードワードのフーリエ変換値を算出し、 上記コードワードの組の第1のコードワードのフーリエ変換値を算出し、 上記再生コードワードのフーリエ変換値及び上記生成されたコードワードのフーリエ変換値のいずれか一方の複素共役を算出し、 上記再生コードワードの各フーリエ変換値又はその複素共役のサンプルと、対応する上記第1のコードワードのフーリエ変換値又はその複素共役のサンプルとを乗算して第1の中間積サンプルを算出し、 上記中間積サンプルを逆フーリエ変換し、それぞれが上記コードワードの組のうちの1つの相関値を表す相関サンプルを算出することにより、求められることを特徴とする識別方法。
- 16Loaded into a data processor, the data processor is claimed from claim 1 to.5The coded data processing device or claim according to any one of the above.8To12The detection data processing device according to any one of the items.Each means inAsTo make it workBy computerExecutableprogram. データプロセッサにロードされて、該データプロセッサを請求項1乃至5いずれか1項記載の符号化データ処理装置又は請求項8乃至12いずれか1項記載の検出データ処理装置における各手段として機能させるためのコンピュータにより実行可能なプログラム。
- 17Loaded into a data processor and claimed to that data processor14 Coding method describedOrClaim 15DescribedidentificationMethodEach step inTo runforA program that can be executed by a computer. データプロセッサにロードされて、該データプロセッサに請求項14記載の符号化方法又は請求項15記載の識別方法における各ステップを実行させるためのコンピュータにより実行可能なプログラム。
- 18Claim16Or17The program describedRecordedComputer readableData recordingMedium. 請求項16又は17記載のプログラムを記録したコンピュータにより読取可能なデータ記録媒体。
- 19A receiver that receives a signal that represents a material itemInClaims 1 to5Equipped with the coded data processing device described in any one of the items, The coded data processing device sends the received signal to the signal.Combine at least one codeword that uniquely identifies the received signalCharacterized byReceiver. マテリアルアイテムを表す信号を受信する受信装置において、請求項1乃至5いずれか1項記載の符号化データ処理装置を備え、 上記符号化データ処理装置は、上記受信信号に、該受信信号を固有に識別する少なくとも1つのコードワードを結合することを特徴とする受信装置。
Independent claims13
61 paragraphs, as filed
[Technical field to which the invention belongs] The present invention is a material.<u style="single">item</u>The present invention relates to a detection data processing device that detects a code word embedded in.<u style="single">Some</u>of<u style="single">Embodiment</u>In, codewords are used to identify material items.
[0002] [Conventional Technique] Material<u style="single">item</u>Material to identify<u style="single">item</u>The process of embedding information in is called water marking process.
[0003] The identification code word is embedded in the version of the material item to identify the version of the material item. That is, the material is processed by water marking.<u style="single">item</u>Can identify recipients of a particular version of. Here, the material<u style="single">item</u>Material in a way that does not match the intentions of the distributor<u style="single">item</u>If is copied or used, the distributor will use the material from the identification codeword.<u style="single">item</u>You can identify the version of and take appropriate measures.
[0004] In this specification, the material<u style="single">item</u>A material item that has been copied or used in a manner that does not meet the wishes of its supplier, owner, creator or distributor is referred to as an offending item or offending material for convenience.
[0005] The material may be any of a video material, an audio material, an audio / video material, a software program, a digital document and an information bearing material of any kind.
[0006] In order for the watermark mechanism to be successful, the user must use an identification code.<u style="single">word</u>Should be as difficult as possible to remove. Also, the user has an identification code<u style="single">word</u>It should also be as difficult as possible to change and show the creator of the material's offending item to others. Such user masking of codewords or tampering that causes codewords to indicate other users<u style="single">Collud attack</u>It is called (collusion attack).
[0007] [Problems to be Solved by the Invention] The same material is used in all watermark mechanisms.<u style="single">item</u>The user who received the copy of<u style="single">Collud attack</u>Must be difficult to succeed. Therefore, the mechanism of watermark is<u style="single">Collud attack</u>The watermark that was the target of<u style="single">Embedded</u>The material item needs to be identifiable with high probability. This identification is achieved by identifying the codeword reproduced from the offending material. On the other hand, the probability of determining that the codeword does not exist even though the codeword exists (missing probability: false negative probability) must be low. Furthermore, in reality<u style="single">Collud attack</u>The probability that a user who is not involved in the process will be mistakenly determined to be a user who has cheated (false positive probability) must be as low as possible.
[0008] U.S. Pat. No. 5,640,018 is a material.<u style="single">item</u>From<u style="single">of</u>From codewords that have a given number of coefficients in multiple copies<u style="single">Constitution</u>Be done<u style="single">Ru</u>Digital watermark<u style="single">Embed</u>The water marking process is disclosed. Watermark<u style="single">Embed</u>The material item is, for example, an image. The device for embedding the watermark disclosed here transforms the image into a Discrete Cosine Transform (hereinafter referred to as DCT) region. The digital watermark has a normal distribution and is composed of a set of randomly distributed coefficients. In the DCT region, for each DCT coefficient<u style="single">、</u>Each corresponding codeword coefficient<u style="single">Addition</u>Will be done. Related literature, published by MIT on July 27, 1998, by J. Kilian and FT Leighton, "<u style="single">Collud attack</u>Of the digital watermark against<u style="single">Resistance</u>(Resistance of Digital Watermarks to Collusion Attacks)<u style="single">Collud attack</u>A detailed mathematical analysis of this water marking process to prevent
[Means for Solving the Problems] The coded data processing apparatus according to the present invention is an original.<u style="single">Material item</u>At least one of the original material items by introducing one of the codewords in a given set of codewords into<u style="single">Version with embedded codeword</u>To generate. A codeword has a plurality of codeword coefficients. The coded data processor comprises a coding processor that combines codeword coefficients into material items. A plurality of codewords in a predetermined set of codewords are a first codeword having a first plurality of codeword coefficients and this first codeword.<u style="single">Patrol</u>Generated by shifting<u style="single">Ru</u>Includes at least one other codeword.<u style="single">The coding processor reorders the codeword coefficients that combine with the original material based on the reordering code.</u>[0010] An object of the present invention is to provide a realistic watermark system using codewords having randomly distributed coefficients, as disclosed in US Pat. No. 5,664,018. In order to realize a practically effective system, the number of uniquely identifiable codewords should be as large as possible. For example, for distribution to consumer devices such as video devices and projectors for movie theaters, it is necessary to provide millions, preferably tens of millions of codeword sets. Here, the process of generating a set of codewords composed of 10 million codewords and correlating each generated codeword with the reproduced codeword is a heavy processing load. Even with a high-performance computer, such correlation processing takes a long time, which is unrealistic or at least inconvenient for the user. Of the present invention<u style="single">Embodiment</u>Then, the calculation of the correlation for a set of code words can be performed efficiently. this<u style="single">Embodiment</u>So, at least some of the codeword sets generate the first codeword, and this first codeword is used.<u style="single">Patrol</u>It is generated by shifting in order and calculating other codewords. As a result, the correlation values of all the codewords in the set can be calculated using the Fourier transform correlator. As will be described later, the Fourier transform correlator calculates a set of correlation values in one process, which substantially reduces the calculation task.
[0011] Further, the detection data processing device according to the present invention is<u style="single">Embedded version of the material item codeword</u>It includes a decoding processor that reproduces a codeword from and generates a reproduced codeword, and a detection processor that detects at least one codeword. The codeword is<u style="single">Regeneration</u>It is detected based on the correlation value calculated by correlating the codeword with each of the generated codewords. That is, when the correlation value exceeds a predetermined threshold value, the corresponding code word is detected. This correlation value calculates the Fourier transform value of the reproduced codeword, calculates the Fourier transform value of the first codeword of the set of codewords, and calculates the Fourier transform value of the reproduced codeword and the Fourier transform of the generated codeword. Calculate the complex conjugate of one of the values and each Fourier transform of the replay codeword<u style="single">Value or its complex conjugate</u>Fourier transform of the first codeword corresponding to the sample<u style="single">Value or its complex conjugate</u>Multiply with the sample to calculate the first intermediate product sample and reverse the intermediate product sample<u style="single">Fourier</u>By transforming and calculating a correlation sample, each representing a correlation value for one of a set of codewords<u style="single">、</u>Desired.
【0012】<u style="single">Preferred Embodiment</u>In, the coding processor is based on the reordering code,<u style="single">Combined with the original material item</u>Codeword coefficient<u style="single">of</u>Change the order. Corresponding to this<u style="single">Preferred Embodiment</u>In, the detection data processing device returns the order of the generated codeword coefficient or the reproduced codeword coefficient to calculate the correlation value. The first codeword<u style="single">Patrol</u>By shifting<u style="single">Collud attack</u>Is more likely to succeed, but this probability can be reduced by changing the order of the codeword coefficients.
[0013] Further aspects and features of the invention are defined in the appended claims.
[Embodiments of the Invention] Watermark<u style="single">Embedding</u>Overview of the System Hereinafter, embodiments of the present invention will be described in the context of protecting video images. Deliver video images<u style="single">To do</u>The number of copies is determined by the number of users. Each copy has an identification code word to identify the copy assigned to one of these users.<u style="single">Embedded</u>。
[0015] Video images are digital<u style="single">of</u>This is a specific example of a material that is protected by embedding a codeword. The material protected by embedding the codeword may be a material containing software programs, digital documents, music, audio signals and any other kind of information, in addition to video images.
[0016] FIG. 1 is a block diagram showing a specific configuration of an encoding image processing apparatus that introduces an identification code word into a copy of an original image. The original image I is supplied from the source and goes to frame memory 1.<u style="single">Memory</u>Will be done. This original image<u style="single">I</u>Is a watermark<u style="single">Was embedded</u>It is reproduced as multiple copies, and each copy has a unique identification code word.<u style="single">Embedded</u>.. Original image<u style="single">I</u>Is supplied to DCT processor 2, DCT processor 2 is the original image<u style="single">I</u>Is divided into 8 × 8 pixel blocks, and DCT processing is applied to each 8 × 8 pixel block. As a result, the DCT processor 2 has a DCT transform image.<u style="single">(Hereafter, it is simply called DCT image.)</u>Generate V.
[0017] In the following description, the term "sample" refers to a discrete sample that constitutes an image (or may actually be another type of material). Samples from pixels<u style="single">Consists</u>It may be an image brightness sample. Therefore, the terms sample and pixel may be interchangeable in some circumstances.
The DCT image V is supplied to the coding processor (hereinafter, also referred to as an encoder) 4. The coding processor 4 is also supplied with the identification code word from the identification code word generator 8.
[0019] A plurality of seed values (seed) are supplied to the identification code word generator 8. Each seed value is used to generate one of the corresponding identification codewords. Each generated identification code word is an original image<u style="single">I</u>Embedded in a copy of<u style="single">、</u>Watermark<u style="single">Embedded DCT</u>An image is generated. Identification code word generator 8<u style="single">pseudo</u>It is equipped with a random number generator.<u style="single">pseudo</u>The random number generator uses a specific identification code word<u style="single">Constitution</u>Generate a codeword coefficient to do. preferable<u style="single">Embodiment</u>In, the codeword coefficients are generated based on a normal distribution. Instead of this, the codeword coefficient is<u style="single">pseudo</u>It may be predetermined based on the seed value used to initialize the random number generator. Therefore, each identification code word has a corresponding seed value, and each seed value is stored in the memory 12. That is, the identification code word X<sup>i</sup>Seed value seed to generate<sub>i</sub>Is read from memory 12 and this seed value seed<sub>i</sub>In the identification code word generator 8 using<u style="single">pseudo</u>Initialize the random number generator.
[0020] In the following description, the original image<u style="single">I</u>The DCT version of is represented as V. Where V = {v<sub>i</sub>} = {v<sub>1</sub>, v<sub>2</sub>, v<sub>3</sub>, v<sub>4</sub>, , v<sub>N</sub>} And v<sub>i</sub>Is<u style="single">original</u>The DCT coefficient of the image. other<u style="single">Embodiment</u>In v<sub>i</sub>Is an image sample value, and may represent an image sample value in a spatial region or an image sample value in another region.
[0021] Each identification code word X<sup>i</sup>Is composed of n codeword coefficients as follows. X<sup>i</sup>= {x<sup>i</sup><sub>j</sub>} = {x<sup>i</sup><sub>1</sub>, x<sup>i</sup><sub>2</sub>, x<sup>i</sup><sub>3</sub>, x<sup>i</sup><sub>4</sub>, ..., x<sup>i</sup><sub>n</sub>} The number n of codeword coefficients corresponds to the number of samples in the original image V. In addition, it should be noted.<u style="single">Codeword</u>The number of coefficients may be different and this number is specific<u style="single">Use</u>It may be decided according to.
And the i-th identification code word X<sup>i</sup>The vector of the codeword coefficients constituting the encoder 4 is supplied to the encoder 4 via the channel 14. Encoder 4<u style="single">DCT</u>Identification code word X on image V<sup>i</sup>To<u style="single">Addition</u>By doing, the watermark<u style="single">Embedded</u>Image W<sub>i</sub>To generate. Actually, as shown in the following formula,<u style="single">DCT</u>image<u style="single">V</u>Each of<u style="single">DCT</u>coefficient<u style="single">v</u><sub><u style="single">1</u></sub><u style="single">~ v</u><sub><u style="single">N</u></sub>To each codeword coefficient<u style="single">x</u><sup><u style="single">i</u></sup><sub><u style="single">1</u></sub><u style="single">~ x</u><sup><u style="single">i</u></sup><sub><u style="single">n</u></sub>By adding, the watermark<u style="single">Embedded</u>Image W<sub>i</sub>Is generated. W<sub>i</sub>= V + X<sup>i</sup>W<sub>i</sub>= v<sub>1</sub>+ x<sup>i</sup><sub>1</sub>, v<sub>2</sub>+ x<sup>i</sup><sub>2</sub>, v<sub>3</sub>+ x<sup>i</sup><sub>3</sub>, v<sub>4</sub>+ x<sup>i</sup><sub>4</sub>, , v<sub>n</sub>+ x<sup>i</sup><sub>n</sub>As shown in Figure 1, the watermark<u style="single">Embedded</u>Image W<sub>i</sub>Was generated by encoder 4<u style="single">DCT</u>The image is output from this image processing device after being subjected to the inverse DCT transform by the inverse DCT processor 18 that performs the inverse DCT transform.
Therefore, as shown in FIG. 1, the watermark is displayed from the encoder 4.<u style="single">Embedded DCT</u>A set of images is output.<u style="single">Identifying code</u>word<u style="single">X</u><sup><u style="single">i</u></sup>With a maximum of 20 bits, you can select one of the 10 million identification codewords, the original image<u style="single">I</u>In contrast, 10 million watermarks<u style="single">Embedded</u>version<u style="single">Image of</u>W<sub>i</sub>Can be generated.
[0024] By this identification code word,<u style="single">original</u>The watermark in image I<u style="single">Embedded</u>copy<u style="single">, That is, the image</u>W<sub>i</sub>Can be identified individually, but other<u style="single">Embodiment</u>In, data can be sent in the image by the above-mentioned 20 bits. Therefore, it is used to select the identification codeword as described below.<u style="single">To do</u>20 bits<u style="single">DCT</u>Provides a 20-bit payload for sending data within Image V.
[0025] The watermark shown in Fig. 1<u style="single">Embedded</u>A coded image processor that produces an image is incorporated into a variety of products in a variety of different scenarios to which the present invention applies. For example, if you connect a coded image processor to a website or web server, the watermark will appear.<u style="single">Embedded</u>You can download the image. Prior to downloading a copy of the image, a unique codeword is introduced into the downloaded image, which allows the recipient of the downloaded image to be detected later.
[0026] In another application, the coded image processor is incorporated as part of a digital cinema projector, and the identification code word is incorporated into the image when projecting a movie, for example in a cinema.<u style="single">Embedded</u>.. This identification code word can identify the projector and movie theater on which the movie was projected. Therefore, the projector and the movie theater in which the pirated copy is made can be identified by the identification code word included in the pirated copy obtained by shooting the image projected from the projector. On the other hand, the watermark<u style="single">Embedded</u>The image may be copied as a photo or printed matter, or a copy of the copied photo or printed matter may be made and distributed. In FIG. 1, the watermark generated by the coded image processor is<u style="single">Embedded</u>The delivery destination of the image is indicated by delivery 19 represented by a cloud-shaped frame.
[0027] Detection processor In Fig. 2, the watermark is<u style="single">Embedded</u>It is a block diagram which shows the structure of the detecting image processing apparatus which detects one or more code words embedded in an offending marked image. Comprehensively speaking, the detection image processing apparatus shown in FIG. 2 is used for image offending.<u style="single">version</u>That is, it has a function of identifying one or more codewords existing in the copy.
[0028] The watermark is<u style="single">Embedded offending image (below</u>Offending version of the image<u style="single">Also called. )</u>W'is the data<u style="single">Source</u>Supplied from, to frame memory 20<u style="single">Memory</u>Will be done. The detection process in this detection image processing device is<u style="single">Original image (hereinafter,</u>Original version of the image<u style="single">Also called. )</u>Need<u style="single">So</u>, The frame memory 24 has the original version of the image<u style="single">Memory</u>Has been done. Watermark<u style="single">Embedded</u>The offending version W'of the image and the original version of the image are supplied to the registration processor 30 via separate connection channels 26 and 28, respectively.
[0029] As described above, the offending version W'of the image has a watermark.<u style="single">Embedded</u>Image W<sub>i</sub>It may have been generated by photographing or copying a part of. Therefore, in order to increase the detection rate of the identification code word, the registration processor 30 is set to the frame memories 20 and 24, respectively.<u style="single">Memory</u>Aligns the offending image that has been made with the original version of the image. The purpose is the original image<u style="single">I sample</u>When,<u style="single">Image W with watermark embedded by adding codeword coefficient</u><sub><u style="single">i</u></sub><u style="single">Match with the corresponding sample in</u>That is.
[0030] This<u style="single">Alignment</u>The process will be described with reference to FIG. Figure 3 shows the original image I<u style="single">、</u>Watermark<u style="single">Embedded</u>It is shown in comparison with the offending version W'of the image. As shown in Figure 3, the watermark<u style="single">Embedded</u>The offending version W'of the image is the original image<u style="single">I</u>It has an offset with respect to this offset, which is watermarked by the watermark.<u style="single">Embedded</u>Offending version of the image<u style="single">To</u>Generate<u style="single">did</u>Due to the relative field of view of the camera<u style="single">are doing</u>there is a possibility.
[0031] To reproduce the codeword coefficient<u style="single">Is</u>, Watermark<u style="single">Embedded</u>Offending version of the image W'<u style="single">Sample</u>Original image from<u style="single">I</u>You need to subtract the correct sample of. Two images are aligned for this process. As shown in Figure 3,<u style="single">Alignment</u>Image W is the original image<u style="single">I</u>Has a peripheral area PA that includes parts that do not exist in.
[0032] Other<u style="single">Embodiment</u>So, for example, the offending version from the internet<u style="single">W'</u>Offending image W'<u style="single">Is essentially</u>Already the original image<u style="single">I</u>Version of<u style="single">Because it is complete in</u>In such a case, it is not necessary to use the registration processor 30. Therefore, this detection image processing device has a watermark.<u style="single">Embedded</u>It has an alternative channel 32 for feeding images directly to the playback processor 40.
【0033】<u style="single">Alignment</u>The generated image W is supplied to the reproduction processor 40. The reproduction processor 40 is also supplied with a copy of the original image I via the second channel 44.<u style="single">Alignment</u>The resulting image W and the original image I are converted into a DCT region by the DCT processor 46. Next, as shown in the following equation,<u style="single">From the sample of the image V'in the DCT area where the water mark is embedded, the sample of the original image V in the DCT area</u>By subtracting<u style="single">Regeneration</u>The codeword X'is calculated. X'= V'-V = v'<sub>1</sub>-v<sub>1</sub>, v'<sub>2</sub>-v<sub>2</sub>, v'<sub>3</sub>-v<sub>3</sub>, v'<sub>4</sub>-v<sub>4</sub>, ..., v'<sub>n</sub>-v<sub>n</sub> = x'<sub>1</sub>, x'<sub>2</sub>, x'<sub>3</sub>, x'<sub>4</sub>, ..., x'<sub>n</sub> Therefore, the playback processor 40 identifies via the connection channel 50.<u style="single">To do</u>Outputs the estimated value of the codeword coefficient.<u style="single">Regeneration</u>The codeword X'is supplied to the first input terminal of the correlator 52. The second input terminal of the correlator 52 is the codeword X generated by the codeword generator 54.<sup>i</sup>Is being supplied. The codeword generator 54 was read from the memory 58 in the same manner as the identification codeword generator 8 described above.<u style="single">、</u>With a given seed value that uniquely identifies the codeword<u style="single">、</u>Generate all possible codeword pairs.
Correlator 52 produces n similar values sim (i). one<u style="single">Embodiment</u>In, the similarity value sim (i) is calculated by finding the correlation based on the following equation.
[0035] [Number 1]<img file="JP4100675B2_D0001.tif" />[0036] Each of the n similar values sim (i) is supplied to the detector 60. The detector 60 then sets a similarity value sim (i) for each of the n possible codewords.<u style="single">analysis</u>To do. FIG. 4 shows the relationship between a specific example of the similarity value sim (i) generated by the correlator 52 and the threshold value TH of each possible codeword. As shown in FIG. 4, two codewords 2001 and 12345 exceed the threshold TH. Therefore, the detector 60 has a watermark corresponding to codeword 2001 and codeword 12345.<u style="single">Embedded</u>It is determined that the offending image was created from the image version. Therefore, this<u style="single">Embodiment</u>In, the false positive probability, which is determined by the size of the population, which is 10 million, and the watermarking strength.<u style="single">α</u>Guarantee false positive probability based on<u style="single">for</u>The height of the threshold TH can be set. Shown in Figure 4<u style="single">Embodiment</u>Then, when the similarity value sim (i) generated by the correlator 52 exceeds the threshold value TH, this watermark has this false detection probability.<u style="single">Embedded</u>Image recipient cheats and watermarks<u style="single">Embedded</u>Image W<sup>i</sup>It is judged that he was involved in the creation of the offending version of.
[0037] Hereinafter, the features and advantages of the watermark system shown in FIGS. 1 and 2 will be described.
[0038] The registered watermark<u style="single">Embedded</u>The process of aligning the offending version of the image with the copy of the original image is done by the sample of the original image and the watermark.<u style="single">Embedded</u><u style="single">Ta</u>Includes processing to check the correlation with the image sample. This correlation process is performed by shifting each sample of the image by a different shift amount. This process will be described with reference to FIG. Figure 5A shows a discrete sample of the original image, and Figure 5B shows the watermark.<u style="single">Embedded</u>A discrete sample of the offending image W'is shown. As shown in FIGS. 5A and 5B, the time difference between each sample is dt determined by the sampling rate. Figure 5C shows the results of shifting each sample set in these images and correlating the discrete samples.
[0039] As shown in FIG. 5C, 6 samples<u style="single">shift</u>And 7 samples<u style="single">shift</u>The correlation peak is the highest among them. So the watermark<u style="single">Embedded</u>The offending image is shifted by this amount with respect to the original image.<u style="single">Alignment</u>Will be done.
Fourier Decoding The watermark system described above with reference to FIGS. 1 and 2 has 10 million watermarks on the original image.<u style="single">Embedded</u>Version<u style="single">Generate</u>can do. This is achieved by using a 20-bit watermark value. Here, as described above, the watermark is among the plurality of codewords.<u style="single">Embedded</u>In order to detect the presence of codewords in an offending image, it is necessary to examine the correlation between the codewords reproduced from that image and each of the 10 million possible codewords. Such a calculation task imposes a heavy processing load.
[0041] A correlator based on the present invention reduces the burden of this arithmetic processing, and therefore<u style="single">、</u>Watermark<u style="single">Embedded</u>Reduce the time required to detect codewords in offending images. This correlator based on the present invention is shown in FIG. The correlator shown in FIG. 6 provides an alternative and effective method for calculating the sum of the correlation values described above. That is, this<u style="single">Embodiment</u>Then, the sum of the correlation values is calculated based on the following formula. F<sup>-1</sup>[F (X') F (x<sup>(1)</sup>)<sup>*</sup>] Where F (A) represents the Fourier transform of A, F<sup>-1</sup>(A) represents the inverse Fourier transform of A.
[0042] The correlator 52 shown in FIG. 6 includes a first Fourier transform processor 100 and a second Fourier transform processor 102. The first and second Fourier transform processors 100 and 102 may be realized by using a high-speed Fourier transform algorithm. The second Fourier transform processor 102 is the generated codeword<u style="single">X</u><sup><u style="single">1</u></sup>The complex conjugate of the Fourier transform value of is also calculated. Play code word<u style="single">X'</u>Fourier transform value of and the generated codeword<u style="single">X</u><sup><u style="single">1</u></sup>Fourier transform of<u style="single">value</u>The complex conjugate of is supplied to the first and second input terminals of the multiplier 110, respectively. The multiplier 110 multiplies each sample from the Fourier transform processors 100 and 102 and supplies the result to the inverse Fourier transform processor 112. The correlator 52 outputs the inverse Fourier transform value of the multiplied signal sample.
As described above, in the correlator 52 shown in FIG. 6, n codewords X are generated.<sup>i</sup>The time required to calculate the correlation between and the playback code word X'is reduced. This is a Fourier transform processor 100, 102<u style="single">And inverse Fourier transform processor</u>This is because the 112 can be configured by a fast Fourier transform integrated circuit such as a commercially available application specific integrated circuit (ASIC). Further, the inverse Fourier transform value output from the correlator 52 provides n similar values sim (i) corresponding to the sum of n correlation values. Here, in order to utilize the characteristics of the correlator 52 shown in FIG. 6, the code word is<u style="single">pseudo</u>One codeword X generated using a specific seed value supplied to the random number generator<sup>(1)</sup>To<u style="single">,Patrol</u>It is generated by shifting the target. The generation of this code word will be described below. First codeword X, as described below<sup>(1)</sup>Is<u style="single">identification</u>By codeword generator 8<u style="single">pseudo</u>Value x corresponding to a randomly generated number<sub>1</sub>~ x<sub>n</sub>It is expressed as. Meanwhile, the second codeword X<sup>(2)</sup>Is the first codeword X<sup>(1)</sup>Against<u style="single">Patrol shift</u>Is generated by executing. In addition, as shown below, the other codewords are the first codeword X until the nth codeword is shifted to the n-1 position.<sup>(1)</sup>To<u style="single">Patrol</u>It is generated by shifting the target. X<sup>(1)</sup>= (x<sub>1</sub>, x<sub>2</sub>, x<sub>3</sub>, x<sub>4</sub>..., x<sub>n-1</sub>, x<sub>n</sub>) X<sup>(2)</sup>= (x<sub>2</sub>, x<sub>3</sub>, x<sub>4</sub>..., x<sub>n-1</sub>, x<sub>n</sub>, x<sub>1</sub>) X<sup>(3)</sup>= (x<sub>3</sub>, x<sub>4</sub>..., x<sub>n-1</sub>, x<sub>n</sub>, x<sub>1</sub>, x<sub>2</sub>) X<sup>(n)</sup>= (x<sub>n</sub>, x<sub>1</sub>, x<sub>2</sub>, x<sub>3</sub>, x<sub>4</sub>..., x<sub>n-2</sub>, x<sub>n-1</sub>) Using this set of codewords<u style="single">Coding processor 4</u>By constructing part or all of the set of codewords generated by, the Fourier transform correlator 52 can calculate all similar values for all n codewords in a single process. it can. Therefore, as described above, the corresponding shift from 1 to n with respect to the original codeword produces a sum of n similar values, sim (i), for at least one codeword, as shown in FIG. A sum of large similar values sim (i) is generated. Thus, the correlator 52 is the first codeword X.<sup>(1)</sup>It is possible to receive only one generated codeword corresponding to and calculate similar values for n codeword pairs as shown in FIG.
[0044] As is clear from the above explanation, it is possible if the codeword contains N samples.<u style="single">Patrol</u>There are only N shifts. Therefore, if the required codeword population p is greater than N, multiple underlying watermarks are needed. Each underlying watermark is<u style="single">Patrol</u>Shifts to generate N unique code words.
[0045] The watermark<u style="single">Embedded</u>If an image constitutes one of multiple images, for example a video sequence, each image should have the same codeword.<u style="single">Embed</u>be able to. Therefore, when one suspected code word in the determination is identified using the Fourier transform correlator shown in FIG. 6, the sum of the perfect correlation values sim (i) is used as described above. Also, the subsequent correlation value can be calculated. Here, since the code word being determined has already been specified, the correlation processing only needs to be performed on the code word specified by the Fourier transform correlator shown in FIG.
Also, the generated first codeword X<sup>1</sup>Instead of calculating the complex conjugate of the Fourier transform value of<u style="single">X'</u>You may calculate the complex conjugate of the Fourier transform value of. This process is represented as a second variant of the process by the Fourier transform correlator shown below. F<sup>-1</sup>[F (X')<sup>*</sup>F (x<sup>(1)</sup>)] Like this, the playback codeword<u style="single">X'</u>Either the complex conjugate of the Fourier transform value of the above and the Fourier transform value of the generated codeword are calculated by either the Fourier transform processor 100 or 102.
Changing the order of secret codewords First codeword X<sup>1</sup>To<u style="single">Patrol</u>There is a problem that the security of the water mark is lowered in the method of generating the code word by shifting the target. is this,<u style="single">Collud attack</u>In, the watermark<u style="single">Embedded</u>This is because the two images are compared. For each image<u style="single">hand</u>, Same codeword<u style="single">Patrol</u>Codeword, which is two versions of the same codeword generated by shifting<u style="single">Embedded</u>If<u style="single">Collud attack</u>For those who try, the watermark<u style="single">Embedded</u>2<u style="single">Horn</u>Identify differences between materials and therefore<u style="single">、</u>Makes it easier to identify codewords.<u style="single">Collud attack</u>If the person attempting to identify the code word, he / she will be able to remove the water mark or tamper with the water mark to pretend to be another person.
[0048] Such<u style="single">Collud attack</u>To prevent this<u style="single">Embodiment</u>Now, based on the secret permutation code π,<u style="single">Patrol</u>Randomly change the order of each codeword coefficient of each codeword that is shifted in a random manner. Watermarks can be used to change the order of codeword coefficients.<u style="single">Embedded</u>It is kept secret from the recipient of the image. This will<u style="single">Collud attack</u>The person who tries is the watermark<u style="single">Embedded</u>It becomes difficult to identify the correlation between the two images,<u style="single">Collud attack</u>Is less likely to succeed.
【0049】<u style="single">Detection image processing device (hereinafter,</u>Detection data processor<u style="single">Also called. )</u>In, the secret reordering code π is known. In the detection data processor, the codeword generator<u style="single">54</u>Or<u style="single">Regeneration</u>Reverse ordering π with respect to the codeword coefficient or playback codeword coefficient generated by processor 40<sup><u style="single">-1</u></sup>After executing, the correlation processing is performed. The coding processor shown in Figure 1.<u style="single">4</u>The operation of the detection data processor shown in FIG. 2 and FIG. 2 is shown in FIGS. 7 and 8, respectively.
[0050] Codeword<u style="single">of</u>Generated code used to generate a word<u style="single">pseudo</u>By generating a seed value of a random number from the source image sample, the present invention shown in FIGS. 1 and 2<u style="single">Embodiment</u>Performance can be further improved. This process is<u style="single">Add codeword count</u>The DCT coefficient of the image<u style="single">analysis</u>However, it is realized by generating the seed value used to generate the codeword from these DCT coefficients. For this process, for example, a "secure hashing algorithm 1: sha-1" well known to those skilled in the art can be used. This algorithm is specified in the ANSI standard (ANSI x9.30-2). This algorithm is also disclosed in the Handbook of applied cryptography by AJ Menezes. As a result, the coded image processing device and the detection image processing device are based on the DCT coefficient.<u style="single">pseudo</u>Random seed values can be generated and determined.
Other application examples Watermark system<u style="single">Coded image processing device (hereinafter referred to as</u>Coded data processing device<u style="single">Also called. )</u>Can be applied to other uses in addition to the projectors and web servers described above. For example, the present invention receives a signal from a communication device and introduces a code word into the received signal.<u style="single">、</u>Watermark for information<u style="single">Embed</u>It can also be applied to receivers / decoders. For example, a set-top box receives television and video signals from a broadcast "head-end" or multicast device. In such an application, the encoded data processor forms part of a set-top box and introduces a watermark codeword into the video signal as it receives and decodes the signal. one<u style="single">Embodiment</u>In, this watermark codeword uniquely identifies the settop box that received and decoded the video signal.
[0052] Further, the present invention can also be applied to a digital movie receiver that receives a digital cinema film from a satellite. The digital movie receiver receives a signal representing a digital movie, decodes the signal, and plays the digital movie. The receiver comprises a coded data processor that introduces a watermark codeword into the decoded movie signal. The watermark codeword uniquely identifies, for example, a digital cinema receiver that has received a digital cinema.
[0053] Further, the present invention can be applied to a digital camera, a camcorder, or the like provided with a memory and a memory controller. In this application example, the coded data processing apparatus according to the present invention introduces a water mark code word stored in a memory into a video signal captured by a digital camera or the like. In this application, the codewords are pre-stored in memory and therefore the coded data processor does not include a codeword generator. The codeword stored in the memory is embedded in the video signal under the control of the memory controller, thereby making the video signal unique or<u style="single">Semi</u>Identify quasi-uniquely.
Further<u style="single">Embodiment</u>In, the coded data processing apparatus based on the present invention individually embeds a series of watermark code words in each of a plurality of different digital image frames constituting a continuous image or moving image. These codewords may be related to each other, and these codewords allow the image corresponding to each frame to be individually identified.
[0055] Further various aspects and features of the invention are defined in the appended claims. The embodiments described above can be variously modified without departing from the scope of the claims.
BRIEF DESCRIPTION OF THE DRAWINGS [Fig. 1] Fig. 1 is a block diagram showing a configuration of a coded image processing apparatus.
FIG. 2 is a block diagram showing a configuration of a detection image processing device.
[Fig. 3] Fig. 3A shows the original image, and Fig. 3B shows the watermark.<u style="single">Embedded</u>An image is shown, Figure 3C<u style="single">Alignment</u>It is a figure which shows the image which was made.
FIG. 4 is a graph showing a specific example of correlation results for each codeword in a set of N codewords.
FIG. 5A is a graph corresponding to the sample of the original image I, and FIG. 5B has a watermark.<u style="single">Embedded</u>It is a graph corresponding to image W', and Fig. 5C shows the original image and watermark.<u style="single">Embedded</u>It is a graph which shows the correlation result for every discrete sample shift with an image.
FIG. 6 is a block diagram showing a configuration of a correlator that is a part of the detection data processor shown in FIG.
FIG. 7: Watermark is created by a coded image data processing device.<u style="single">Embedded</u>It is a flowchart which shows the procedure of creating an image.
FIG. 8 shows the watermark received by the detection data processor shown in FIG.<u style="single">Embedded</u>It is a flowchart which shows the process of specifying a watermark from an image.
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| US5664018A | Cites | United States of America |
| WO00033282A1 | Cites | World Intellectual Property Organization (WIPO) |
| WO99045705A1 | Cites | World Intellectual Property Organization (WIPO) |
7 members in 4 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 0129840 | United Kingdom | A | |
| 0129840 | United Kingdom | A | |
| 01298405 | United Kingdom | – | |
| 2001200129840 | – | – | – |
| GB20010029840 | – | – | – |
Members7
| Document | Office | Kind | |
|---|---|---|---|
| GB2383218A | United Kingdom | A | |
| EP1324264A2 | European Patent Office (EPO) | A2 | |
| US2003123658A1 | United States of America | A1 | |
| JP2004040754A | Japan | A | |
| EP1324264A3 | European Patent Office (EPO) | A3 | |
| JP4100675B2This record | Japan | B2 | |
| US7487355B2 | United States of America | B2 |
15 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Certificate of patent or registration of utility modelR150 | R150 | |
| First payment of annual fees (during grant procedure)A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Written amendmentA521 | A521 | |
| Written permission of extension of timeA602 | A602 | |
| Written request for extension of timeA601 | A601 | |
| Written permission of extension of timeA602 | A602 | |
| Written request for extension of timeA601 | A601 | |
| Written permission of extension of timeA602 | A602 | |
| Written request for extension of timeA601 | A601 | |
| Notification of reasons for refusalA131 | A131 | |
| Written request for application examinationA621 | A621 |
Numbers
- Publication
- 4100675
- Publication, DOCDB
- 4100675
- Publication, EPODOC
- JP4100675B
- Application
- 362516
- Application, DOCDB
- 2002362516
- Application, EPODOC
- JP20020362516
Titles2
- Japanese
- データ処理装置及びデータ処理方法
- English
- Data processing device and data processing method
Classification
- CPC, 8
- H04N1/32154
- G06T1/005
- G06T2201/0052
- G06T2201/0063
- H04N1/32165
- H04N2201/3236
- H04N2201/324
- H04N2201/327
- IPC, 7
- H04N1 387
- G06Q30 00
- G06Q10 00
- G06T1 00
- G09C5 00
- H04N5 91
- H04N1 32