JP4564753B2 - ビットストリームの変更方法及び装置 - Google Patents
ビットストリームの変更方法及び装置 Download PDFInfo
- Publication number
- JP4564753B2 JP4564753B2 JP2003567096A JP2003567096A JP4564753B2 JP 4564753 B2 JP4564753 B2 JP 4564753B2 JP 2003567096 A JP2003567096 A JP 2003567096A JP 2003567096 A JP2003567096 A JP 2003567096A JP 4564753 B2 JP4564753 B2 JP 4564753B2
- Authority
- JP
- Japan
- Prior art keywords
- bitstream
- code
- data
- changing
- motion vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 175
- 230000008859 change Effects 0.000 claims description 127
- 230000033001 locomotion Effects 0.000 claims description 88
- 239000013598 vector Substances 0.000 claims description 88
- 238000007906 compression Methods 0.000 claims description 11
- 230000006835 compression Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims description 3
- 230000000007 visual effect Effects 0.000 claims 2
- 239000000872 buffer Substances 0.000 description 114
- 230000008569 process Effects 0.000 description 49
- 238000012545 processing Methods 0.000 description 30
- 238000004140 cleaning Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 238000013459 approach Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000012958 reprocessing Methods 0.000 description 4
- 238000005406 washing Methods 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 238000003817 vacuum liquid chromatography Methods 0.000 description 2
- 101150115425 Slc27a2 gene Proteins 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/0028—Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
- G06T1/0035—Output size adaptive watermarking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/192—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/467—Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
- H04N21/23476—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23608—Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23611—Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4344—Remultiplexing of multiplex streams, e.g. by modifying time stamps or remapping the packet identifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/633—Control signals issued by server directed to the network components or client
- H04N21/6332—Control signals issued by server directed to the network components or client directed to client
- H04N21/6334—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
- H04N21/63345—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8358—Generation of protective data, e.g. certificates involving watermark
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0052—Embedding of the watermark in the frequency domain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0053—Embedding of the watermark in the coding stream, possibly without decoding; Embedding of the watermark in the compressed domain
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Editing Of Facsimile Originals (AREA)
- Television Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
本発明は、ピクチャ情報を表すデジタルコードを含むビットストリームを変更するビットストリームの変更装置を提供する。このビットストリームの変更装置は、透かし模様を埋め込むピクチャの該透かし模様の部分に対応するデジタルコードであって、上記ピクチャ情報内で視認可能な変更を表す少なくとも1つの変更コードが含まれることになる上記ビットストリームの一部分を占有する少なくとも1つのデジタルコードを選択する選択手段と、上記ビットストリームの一部分から、上記選択されたデジタルコードを取り外す取外し手段と、上記選択されたデジタルコードの代わりに、上記変更コードを、上記ビットストリームの一部分に配置する変更コード配置手段とを備える。上記選択され、取り外されたデジタルコードのビット数は、上記ビットストリームに配置された変更コードのビット数以上である。そして、このビットストリームの変更装置は、(1)上記選択され、取り外されたデジタルコードを、上記ビットストリームと関連付けて格納し、及び/又は(2)上記選択され、取り外されたデジタルコードを上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置する取外しコード配置手段を更に備える。
本発明の第1の実施の形態について説明する。説明を容易にするために、この実施の形態においては、音声の付かない単独のストリームであるMPEG2ビデオビットストリーム、すなわちMPEG2ビデオシーケンスファイルのIフレーム中に透かし模様データを配置することについて説明する。なお、ビットストリームは、パケット化されたビットストリームであってもよい。もちろん、本発明は、Iフレームに限定されるものではなく、ビデオ又はMPEG2に限定されるものでもない。更に、説明を容易にするために、以下の説明では輝度情報のみについて言及するが、本発明は、輝度情報に限定されるものではない。
図13で最もよく示されているが、ピクチャデータ16から取り出された原データ30(DC差分及びAC VLC)には、元の(又はそのコピーの)ブロックエンドコードEOBが含まれている。ピクチャデータ16に加えられたデータ32(すなわち新たなDC差分)には新たな(又は元の)ブロックエンドコードEOBが含まれている。更に、新たに生成された透かし模様ユーザデータスペース20には、ユーザデータスタートコード34が含まれているが、これは、ピクチャデータフレーム内のビット数を増加させる。一旦、原AC VLC及びDC差分が取り出された後、ピクチャデータフレーム内で利用できる余分な容量を決定する場合、ブロックエンドコードEOBが残っているので、DC差分とAC可変長コード(VLC)だけが含まれることになる。
図12において、透かし模様処理により挿入される透かし模様ユーザデータブロック20を元から存在する全てのユーザデータブロックから区別できるようにする必要がある。この目的のために、以下の手法が用いられる。
透かし模様が埋め込まれたMPEG2ファイル中に現れる透かし模様データは、MPEGスタートコードを含んではならない。MPEGスタートコードは、ユーザデータ領域を途中で終了させたり、又はデコーダの他の好ましくない動作の原因となるからである。DC差分及びAC VLCを表すのに使用されるコードの特性としては、表示画像データ内でスタートコードが誤って発生されるものであってはならない。したがって、透かし模様データ内でもそれらが発生してはならず、フラグ情報を発生する際には注意が必要である。しかしながら、透かし模様の暗号化の結果としてスタートコードが生成される場合がある。したがって、暗号化されたデータをスタートコードと対比してチェックする必要があり、それが発生する場合には、暗号化されていない透かし模様データに戻す必要がある(これは、正規の鍵を使って復号するとき、どのバイトが暗号化されずに残っているかを決めることができるだけなので、安全性には影響を及ぼさない)。暗号化されない透かし模様データに戻す必要がある場合には、結果的に暗号化データ/非暗号化データの境界線上で別のスタートコードの生成がなかったかどうかのチェックも行わなければならない。
「idx」は、暗号化される(又は復号される)透かし模様データバイトを割り出すインデックスカウントである。
「zero_count」は、ビットストリーム内の連続するゼロのカウントである。
「ubyte」は、非暗号化透かし模様データのバイトである。
「ebyte」は、暗号化透かし模様データのバイトである。
「r」は、暗号化アルゴリズムにより発生する乱数であり、バイトごとに異なる。
「zero_count++」は、増し分zero_countの増分(increment)を意味する。
「idx++」は、idxの増分を意味する。
イントラブロックのDC係数は、スライス全体を通して差分的に符号化される。上述のように、原差分値は格納され、代わりに新たな差分値が計算され、使われる。これにより、所望の、例えば一定の輝度レベルを提供するような変更が可能になり、テンプレートデザインの良好な定義が可能になる。
P及びBフレーム内のイントラ符号化マクロブロックは、上述と同じように変更できる。非イントラ符号化マクロブロックは、上述のようにAC VLCを取り除くことができるが、非イントラ符号化マクロブロックは、予測符号化されているので、その変化は視認できない。動きベクトル透かし模様法は、Pフレーム及びBフレーム上だけで実行できる。
上述の説明では、透かし模様データを輝度情報だけに与えると仮定しているが、マクロブロックは、色差情報のDCTブロックも含んでもよい。上述の輝度に対する方法と同じ方法で、透かし模様データを色差DCTブロックに含ませてもよい。また、透かし模様データを色差DCTブロックだけに含ませ、輝度DCTブロックには含ませなくともよいが、ここではその方法はとられていない。
図13(c)において、透かし模様が埋め込まれたビットストリーム(一時画像バッファ74中の)の一例が示されるが、これは、主バッファ70に転送されて、デコーダに送信される原ビットストリームを置換する。デコーダで受信されると、原画像が復元されていない場合には、透かし模様が埋め込まれた画像が表示される。図16は、本発明による原画像の復元(洗浄)処理の例の概要を示している。
図17には、透かし模様埋込みシステムの模式図が示されている。ソースからの圧縮されていないデジタルビデオシーケンス50が従来のMPEG2エンコーダ52に供給される。このようなエンコーダは周知のものである。この実施の形態において、エンコーダ52は、コンピュータで実行される圧縮ソフトウェアであるが、エンコーダ52は、専用プロセッサで構成されていてもよい。圧縮ビデオシーケンスは、ファイルとして記憶装置54、例えばエンコーダ(コンピュータともいう)52のハードディスクに格納される。
図19(及び図17)に示すように、圧縮ビットストリームに透かし模様データを埋め込むために、1つのファイル(図17の54)と3つのバッファとが使用される。これらのバッファは、エンコーダ52からのMPEG2規格に準拠した圧縮原ビットストリームを格納して、透かし模様が埋め込まれたビットストリームを出力する主バッファ70と、原DC差分及びAC VLCを格納する透かし模様データバッファ72と、透かし模様が埋め込まれたビットストリームを、主バッファ70に伝送するように構成された一時画像バッファ74とである。これらのバッファは、物理的なバッファでもよいが、この実施の形態ではソフトウエアで定義される仮想バッファである。
次に、上述した様々な処理について、例えば擬似コードを導入する実施の形態について説明する。
主バッファ及び透かし模様データバッファを生成する
(WHILE)画像処理中に
ファイルから1画像分のデータを主バッファに読み込む
一時画像バッファを生成する
(WHILE NOT)表示画像データの開始前に
主バッファの構文解析をする
全ての選択された透かし模様手法を使用可能にする(透かし模様データバッファにフラグ設定)
(WHILE NOT)画像終了前に
(CALL)スライス処理を呼び出す
空間的制約条件が満たされているかを調べる
(IF)空間的制約条件が満たされていない場合
この画像に対する透かし模様手法の幾つかを使用禁止にする(透かし模様データバッファ内にフラグ設定)
(WHILE NOT)画像終了前に
(CALL)スライス処理を呼び出す
画像内に、新たな透かし模様が埋め込まれる表示画像データに利用できるスペースが画像内にあるかを判定する
(IF)5バイト未満である場合、
(IF)原ユーザデータが存在する場合
ユーザデータの最後のブロックにフラグを立てて、それが透かし模様でないことを示す
表示画像データを主バッファに出力する
サイズに合わせて画像をゼロバイトを使って埋める
(ELSE)さもなければ
ユーザデータスタートコードを出力する
(WHILE)透かし模様データが存在し、(AND)且つ画像内に埋め込むスペースがある場合、
透かし模様データを暗号化する
暗号化透かし模様データを一時画像バッファ内のユーザデータスペースに出力する
ユーザデータのブロックにフラグを立て、それが透かし模様データであることを示す
表示画像データを主バッファに出力する
(IF)画像内に埋め込むスペースがある場合、
サイズに合わせて画像をゼロバイトを使って埋める
主バッファからの変更画像をファイルに書き込む
透かし模様データバッファに残っている全てのデータをファイルに書き込む。
(WHILE)スライス中で
(IF)データが透かし模様手法に関係していない場合
(POP)主バッファからデータをポップし
(PUSH)データを一時画像バッファにプッシュする
(ELSE)さもなければ
(POP)主バッファからデータをポップし
(PUSH)データを透かし模様データバッファにプッシュする
変更値を計算し
変更値を符号化する
(PUSH)変更値を一時画像バッファにプッシュする
透かし模様が埋め込まれたコード
透かし模様が埋め込まれたコードの説明をする。MPEG2規格に準拠したビットストリームは、ファイル、例えば図17の記憶装置54に格納され、バッファ70、72、74が生成され、ファイルから1画像分のデータが主バッファ70に書き込まれて、構文解析が行われる。次に、透かし模様手法の選択が行われる。透かし模様手法の選択については、図22を参照して以下により詳細に説明する。先ず最初に、全ての透かし模様手法を使用可能にする。次に、別途より詳細に説明する「スライス処理関数」が実行される。概略すると、そのスライス処理関数では、原DC差分及びAC VLCを透かし模様データバッファ72に格納し、新たな透かし模様DC差分(すなわち変更値)を計算し、変更値を一時画像バッファ74に格納するものである。
この処理の説明に際して、この実施の形態においては、図5において説明したように、データは、スライスで処理される。しかしながら、それは必須条件ではない。それは、単にソフトウェアを実行させる際に便利だからである。
主バッファ及び透かし模様データバッファを生成する
(CALL)透かし模様データ初期化設定を呼び出す
(WHILE)画像処理中に
1画像分のデータをファイルから主バッファに読み込む
一時画像バッファを生成する
(CALL)透かし模様データ取得を呼び出す
(WHILE NOT)表示画像データの開始前に
主バッファの構文解析をする
透かし模様データ内のフラグ設定により示される透かし模様手法を使用可能にする
(WHILE NOT)画像終了前に
(CALL)スライス処理を呼び出す
一時画像バッファの内容を主バッファに出力する
(IF)画像内に埋め込むスペースがある場合
ゼロで埋める
主バッファからの変更画像をファイルに書き込む。
透かし模様ユーザデータブロックをファイルから分離する
データを復号する
一時ファイルに格納する。
(IF)透かし模様データバッファが満杯でなく、(AND)且つ透かし模様データがまだ一時ファイルにある場合
透かし模様データを一時ファイルから透かし模様データバッファに読み込む
スライス処理関数(透かし模様埋込みに使用した関数とは同一ではない)
(WHILE)スライス内で
(IF)データが透かし模様手法に関係していない場合
(POP)主バッファからデータをポップし
(PUSH)データを一時画像バッファにプッシュする
(ELSE)さもなければ
(POP)主バッファからデータをポップし
(POP)透かし模様データバッファから原データをポップし
(PUSH)元の値を一時画像バッファにプッシュする。
透かし模様洗浄コードは、原画像データを復元する。例えば、洗浄装置66には主バッファ70と、透かし模様データバッファ72と、一時画像バッファ74とが生成される。更に、「透かし模様データ初期化関数」により一時ファイルも生成される。
非イントラDCの変更(non-intra changes)
上記第1の実施の形態においては、Iフレーム(Intra-frames)のテンプレートブロック内のDC係数の原DC差分を透かし模様を表す新たな値で置換することにより、透かし模様が加えられる。それ以外の係数は置換されない。元の値は、透かし模様ユーザデータスペース及び/又はビットストリームの最後に格納される。
第1及び第2の実施の形態は、以下のように変更してもよい。
「picture_structure==FRAME」は、フレームピクチャを検出する。
「&&」は論理積。
「frame_pred_frame_dct==0」は、マクロブロックがこのピクチャに対して普遍的に設定されるフレームDCTタイプではなく、個々のベースに基づき特に設定されたDCTタイプを有することを検出する。
「||」は論理和である。
「macroblock_intra||macroblock_pattern」は、イントラ符号化マクロブロック(intra-encoded macroblocks)及び符号化DCTブロックを含む非イントラブロック(non-intra blocks)を検出する。イントラ符号化マクロブロックは、符号化された全てのDCTブロックを有する。符号化ブロックだけがDCTタイプを有するので、この検出が必要である。
上述したように、ピクチャには、下記のステップにより、透かし模様が埋め込まれる。
(a)第1の実施の形態:原DC及びAC係数を表す全てのコードをIフレームのテンプレートブロックから取り外し、そのDC係数を、透かし模様を表す新たな値で置換する。
(b)第2の実施の形態:オプションとして更に加えて、非Iフレーム内の原DC係数を表すコードを取り外し、それらを新たな値で置換する。
(c)オプションとして、上述に更に加えて、テンプレートブロックの原動きベクトル値をゼロ値で置換する。
1.テンプレートブロック内のDC係数の変更を許可する。
2.テンプレートブロックからAC係数の取外しを許可する。
3.テンプレートブロック内の動きベクトルの変更を許可する。
1.テンプレートブロックにおけるDC係数の変更を許可する。
2.テンプレートブロックからのAC係数の取外しを許可する。
3.テンプレートブロック内の動きベクトルの変更を許可する。
・解放されたACビットは、常に、負ではない。AC取外しは、何時でも実行でき、決して画像サイズの増加を起こさない。
・DC変更用ビット及びMV変更用ビットは、正であっても、負であってもよい。その値が正の場合は、その手法を実行するのに必要なビット数は元々存在したビット数より大きくなる。したがって、現在の画像に対する変更を行う場合は、別の手法を用いて(例えばAC取外し)十分なビット数を解放しなければならない。その値が負の場合は、その手法は元々存在したビット数よりも少ないビット数しか必要とせず、したがって、実際には十分なビットが解放されているので、その変更は何時でも実行することができる。
ステップS84において、AC係数を取り除くことにより、データが削除され、DC係数変更のためのビット解放がなされたかどうかを判定する(黒色画像に対してはAC係数はないかもしれない)。解放されたビット数がゼロを超えれば、次にステップS85において、解放されたACビット数が、DC変更用ビットとMV(動きベクトル)変更用ビットの和以上かどうかを判定する。DC変更用ビット数は、原DCコードを取り除くことにより解放されたビット数と新たなDCコードに使用されたビット数との差である。同様に、MV変更用のビット数は、原MVコードを取り除くことにより解放されたビット数と新たなMVコードに使用されたビット数との差である。
これは、AC係数を持たず、したがって透かし模様を埋め込むことができない黒色画像上で起こることがある。黒色画像には保護するコンテンツがないので、それは問題にはならない。
DC及びMV変更の両方を行うのには解放されたビット数が不足する場合には、処理はステップS86に進む。
動きベクトルのゼロ設定
図23(a)において、動きベクトルは、DCTブロック(細線で示された四角形B)よりもむしろマクロブロック(太線で示された四角形MB)と関連付けられる。そこで、明るい陰影で示される動きベクトルテンプレートは、暗い陰影で示される透かし模様テンプレートに基づいて定義されてもよい。上述の第1の実施の形態において仮定したように、Iフレームだけが透かし模様データを含んでいるとしても、動きベクトルは、透かし模様を歪ませてしまうことがある。P及び/又はBフレーム内のどのマクロブロックが動きベクトルテンプレート内にあるかを判定することが、必須ではないが、好ましい。もしあれば、次に、そのマクロブロックの動きベクトルの値がゼロに設定される。動きベクトルは、差分に基づきに符号化されるので、差分値は、動きベクトルに対してゼロの値を表すように設定される(すなわち、動きベクトルは、上述のDC差分に対すると同じように処理される)。
図23(b)に示すように、透かし模様の歪みを更に少なくするために、動きベクトルテンプレートを、透かし模様テンプレートブロックは含まないが、それと境界を接するマクロブッロクを含むように拡張する。拡張された動きベクトルテンプレート内の全てのマクロブロックの動きベクトルコードを、上述の図24で説明したように処理する。
動きベクトルは、「差分DCの再符号化」の項目で説明したのと同様に、差分符号化され、記録される。Pフレームは前方予測動きベクトルを有するが、Bフレームは、前方予測及び後方予測の2つのタイプの動きベクトルを有する。この2つのタイプは、図25で述べるように、別々に処理される。
以上述べたように、2つのタイプのピクチャ、フィールドタイプとフレームタイプの画像がある。ビデオシーケンスは、フィールドピクチャだけ、フレームピクチャだけ、又はフィールドピクチャ及びフレームピクチャの両方を含んでもよい。
フレームピクチャだけのシーケンスについて考える。テンプレートは、水平及び垂直方向における1つのDCTブロック単位(8x8画素)の解像度で定義する。図26(a)に示す、行当たり720画素及び576行を有するフレームピクチャの例に対して、必要なテンプレートサイズは90x72ブロックである。図26(b)においてXの字の形のテンプレートが1ブロック単位の解像度で定義されている。その結果、図26(c)に示す透かし模様を埋め込んだ画像は、1ブロック8x8画素の表示された透かし模様解像度を有する。
フィールドピクチャだけのシーケンスを考える。図27(a1)及び(a2)において、それぞれが720x288画素の2つのフィールドがインタレースされて720x576画素の1つのインタレースされたフレームを定義する。フィールドピクチャにおいては、DCTブロックはフレームピクチャの行数の半分の行数であっても8x8画素ブロックに対応している。マクロブロックは、フレームピクチャにおける場合と同様に、2x2DCTブロックである。
少なくとも1つのフィールドピクチャと少なくとも1つのフレームピクチャを有するビデオシーケンスを考える。そのテンプレート、図27(b)のXは、1つ以上のフィールドピクチャ用に設計されており、1DCTブロックの解像度を有する。その結果、水平に1ブロック×垂直に2ブロックの解像度を有する透かし模様が表示される。1つ以上のフレームピクチャ内の透かし模様は、フィールドピクチャのそれと一致する必要がある。これは、フィールドピクチャに使用されたテンプレートからフレームピクチャ用のテンプレートを自動的に導出することにより保証される。これを達成する最も簡単な方法は、フィールドテンプレートの全ての行を2倍にすることである。それにより、フレームテンプレートは、水平1ブロック×垂直2ブロックの有効解像度を持ち、フレームピクチャに表示された透かし模様がフィールドピクチャのそれと確実に一致する。
パケット化されたビットストリーム
元のシーケンスがMPEG−2パケットストリーム(パケット化ビデオシーケンス又はオーディオ/ビデオマルチプレックス)の場合、透かし模様が埋め込まれたビデオシーケンスが再パケット化されて、残りの透かし模様データがそのパケット化ストリームエンドコードの後に置かれる場合、ビデオシーケンスエンドコードは必要なくなる。
上述の実施の形態では、圧縮ビットストリームに透かし模様データを埋め込む前に、そのビデオは画質を最高にするために最小の圧縮比で圧縮されているものと想定する。よって、透かし模様ユーザデータフィールドが全ての暗号化された元の係数を含むことはなく、残りのデータはファイルの最後に付加される。本発明の別の実施の形態においては、ここではその方法は採らないが、圧縮を実行する前に、透かし模様データを収納するのに必要なデータスペースの推定値を与えて、透かし模様ユーザデータフィールドに元の係数の全部を収め、且つ表示画像データフィールドに新たなDC係数を収めるのに十分な空きスペースを提供するよう圧縮を制御する。
上述の実施の形態においては、透かし模様ユーザデータフィールドに格納される分を超過する原AC VLC及びDC差分は、ファイルの最後に付加される。しかしながら、それらはファイルの最初に置いてもよい。
上述の説明において、原AC VLC及びDC係数は、圧縮ビットストリームのユーザデータフィールド20に格納される。図14のフレームP1及びP2の実施の形態で示したように、フレームP1のデータのある部分が、フレームP1のユーザデータスペース20に格納され、それを超える部分がある場合、フレームP2のユーザデータスペース20に格納される。その処理はビットストリーム全体を通じて継続される。残余のデータがある場合、ビットストリームの最後に付加される。
上述のように、コードBと暗号化された残余のAC VLC及びDC差分とからなる全ての残余のデータは、ビットストリームの最後に付加される。また、他の実施の形態において、その残余のデータは、ビットストリームから分離されたファイルに格納される。そのファイルは、図30に示すように、ビットストリームの開始端292、又は終了端293に付加してもよい。図31に示すように、ファイルは送信媒体294、例えばビットストリームから分離されたデータ記録媒体又は通信チャンネルに格納されてもよい。そのデータ記録媒体は、フロッピー(登録商標)ディスク、テープ又はその他の記録媒体であってもよい。
図29のビットストリームから透かし模様を洗浄するために、ビットストリームP1〜Pnを格納して構文解析を行う。コードB、AC VLC及びDC差分からなる残余のデータは、構文解析処理中に、付加されたデータ292又は293から検索され、又はファイル292、293又は294から取り出されて格納される。各フレームに対し、ユーザデータフィールド20のデータが復号されて、ビットストリームの変更データを置換するのに使われる。そのフィールドに対するバイト数Bが読み出される。それがゼロより大きい場合、次にそのフィールドに対する残余データが復号され、そのフレームの残っている変更データを置換するのに使われる。
上述の説明では、3つの透かし模様手法の選択について説明した。しかしながら、以下の項目を含む多くの手法から選択してもよい。
(a)変更DC差分によるDC差分の置換と原DC差分の取出し
(b)ビットストリーム内に原DC差分に対するスペースを空けるために、AC VLCを取り除く方法
(c)取り外した係数をユーザデータブロックに置く方法
(d)取り外した係数をビットストリームの最後に置く方法
(e)透かし模様を行うための動きベクトルの変更
(f)透かし模様を行うための色情報の変更
(g)P及び/又はBフレームの空きスペースに係数を置く方法
これらの手法は、単独又は組み合わせて使ってもよい。例えば、ある場合には、AC VLCを取り出さずに、DC係数だけを変更された係数で置換することも可能である。常時ではないが、一般に、透かし模様のために係数及び動きベクトルを変更すると、ビット数が増加する。
以上説明した本発明の実施の形態は、次に述べる各状況において適用できる。
上述の手法を用いて製造される可視透かし模様が埋め込まれたファイルは、規格品MPEG−2プレーヤを使って、コンテンツをプレビューでき(その透かし模様ファイルはMPEG−2実証ストリームである)、専用のプレーヤは必要としない。その透かし模様を埋め込んだファイルには、その処理を反転するのに必要な全ての情報が含まれている(暗号化鍵及びテンプレートファイルを除く)。したがって、唯一必要なのはそのコンテンツのコピーを流通/伝送するだけである(従来の手続きでは購買者がそのコンテンツを購入すると、そのシーケンスの保護コピーとそれに続く非保護コピーとを流通する手続きがとられる)。
透かし模様処理の特性を生かしたリアルタイム洗浄装置を開発することが可能である。これは、保護されたコンテンツをプレビューのため聴取者に流すことができることを意味する。続いて、聴取者がそのコンテンツに対する支払いを決めると、例えば受信機セットトップボックスに入力する鍵が与えられて、そのコンテンツは受信と同時にローカルに洗浄される。したがって、送信中にそのデータを変更する必要はない。リアルタイム洗浄を迅速容易にするためには、全ての暗号化透かし模様情報を最初にそのセットトップボックスにダウンロードする必要がある。又は、追加の透かし模様データ分を補償する十分なパディングをピクチャフレーム内に含めるように、コンテンツ圧縮処理を変更することもできる。予め定めたテンプレートデザインを用いて、補償が必要とされる最悪の場合の(ビット数)増加分を計算できる。
Claims (53)
- ピクチャ情報を表すデジタルコードを含むビットストリームを変更するビットストリームの変更方法において、
透かし模様を埋め込むピクチャの該透かし模様の部分に対応するデジタルコードであって、上記ピクチャ情報の変更を表す少なくとも1つの変更コードが含まれることになる上記ビットストリームの一部分を占める少なくとも1つのデジタルコードを選択するステップと、
上記ビットストリームの一部分から、上記選択されたデジタルコードを取り外すステップと、
上記選択されたデジタルコードの代わりに、上記少なくとも1つの変更コードを、上記ビットストリームの一部分に挿入するするステップとを有し、
上記選択され、取り外されたデジタルコードのビット数は、上記ビットストリームに挿入された上記変更コードのビット数以上であり、
上記ピクチャ情報を表すデジタルコードは、該ピクチャ情報のDCT係数を表すコードであり、
上記DCT係数は、DC係数及びAC係数を含み、
上記ビットストリームは、上記ビットストリームの一部分から、(1)AC係数を表すACコードを取り外す技術及び(2)DC係数を表すDCコードを取り外す技術のうち少なくとも1つによって変更可能であり、
当該ビットストリームの変更方法は、
上記DCコードをDC係数の変更コードで置換し、上記選択され、取り外されたデジタルコードを、(a)上記ビットストリームと関連付けて格納し、及び/又は(b)上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置するステップと、
上記ビットストリームの試行変更を実行するステップと、
上記試行変更の上記ビットストリームのビット数に対する影響を評価するステップと、
上記評価に基づいて、上記ビットストリームの変更を実行するための1つ以上の上記技術を選択するステップとを更に有することを特徴とするビットストリームの変更方法。 - 上記選択され、取り外されたデジタルコードを、上記取外しコードデータフィールドに再分配するステップと、
上記選択され、取り外されたデジタルコードを、上記ビットストリームと関連付けて、好ましい順序で格納するステップとを更に有し、
上記好ましい順序は、(1)上記取外しコードデータフィールドに格納し、(2)上記選択され、取り外されたデジタルコードを、上記ビットストリームに関連付けて格納することを特徴とする請求項1に記載のビットストリームの変更方法。 - 上記選択され、取り外されたデジタルコードの幾つかを、上記ビットストリームと関連付けて格納するステップと、
上記選択され、取り外されたデジタルコードの残りを、上記1つ以上の取外しコードデータフィールド内に配置するステップとを更に有する請求項1に記載のビットストリームの変更方法。 - 上記選択され、取り外されたデジタルコードを上記ビットストリームと関連付けて格納するステップ(1)では、上記選択され、取り外されたデジタルコードを、上記ビットストリームの端に付加することを特徴とする請求項1に記載のビットストリームの変更方法。
- 上記選択され、取り外されたデジタルコードを上記ビットストリームと関連付けて格納するステップ(1)では、上記選択され、取り外されたデジタルコードをファイルに格納することを特徴とする請求項1に記載のビットストリームの変更方法。
- 上記ファイルは、上記ビットストリームの端に付加されることを特徴とする請求項5に記載のビットストリームの変更方法。
- 上記ファイルは、上記ビットストリームの開始端に付加されることを特徴とする請求項6に記載のビットストリームの変更方法。
- 上記ファイルは、上記ビットストリームから分離されるとともに、該ビットストリームと関連付けられていることを特徴とする請求項5に記載のビットストリームの変更方法。
- 上記選択され、取り外されたデジタルコードの全てを、上記ビットストリームの最後に付加するステップを更に有する請求項1に記載のビットストリームの変更方法。
- 上記選択され、取り外されたデジタルコードの全てを、上記1つ以上の取外しコードデータフィールド内に配置するステップを更に有する請求項1に記載のビットストリームの変更方法。
- 当該ビットストリームの変更方法によって生ずるピクチャ情報に関連付けられたデータの増加量を判定するステップと、
上記判定されたデータの増加量によって必要とされる空き容量を提供するように、望ましいビットレートで元のピクチャの圧縮を制御するステップとを更に有する請求項10に記載のビットストリームの変更方法。 - 上記変更されたビットストリームのビットレートが元のビットストリームに対して変わらないように、該変更されたビットストリームにパディングビットを加えるステップを更に有する請求項1に記載のビットストリームの変更方法。
- 上記変更コードが含まれることになるビットストリームの一部分又は複数の部分を定義するために、テンプレートを用いるステップを更に有する請求項1に記載のビットストリームの変更方法。
- 上記ビットストリームの同じ部分から取り外されたデジタルコードは、グループコードで識別されるグループにグループ分けされることを特徴とする請求項1に記載のビットストリームの変更方法。
- 上記ビットストリームの一部分は、少なくとも1つのDCTブロックであることを特徴とする請求項14に記載のビットストリームの変更方法。
- 上記ビットストリームは、少なくともイントラ符号化ピクチャを含むビデオビットストリームであり、
上記イントラ符号化ピクチャ上で実行されることを特徴とする請求項1に記載のビットストリームの変更方法。 - 上記ビットストリームは、インター符号化ピクチャを含み、
上記インター符号化ピクチャ上で実行されることを特徴とする請求項16に記載のビットストリームの変更方法。 - 上記インタ符号化ピクチャは、DC係数を表すDCコードを含み、
当該ビットストリームの変更方法は、
上記DCコードのうちの選択されたものを取り外すステップと、
上記取り外されたDCコードを、上記ビットストリームと関連付けて格納し、及び/又は上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置するステップと、
上記取り外されたDCコードを所定値の変更コードで置換するステップとを更に有する請求項17に記載のビットストリームの変更方法。 - 上記インター符号化ピクチャ内のDC係数を表す上記DCコードは、量子化された変更値を表し、
上記所定値は、ゼロより大きな最小の変更の有効値を表すことを特徴とする請求項18に記載のビットストリームの変更方法。 - 上記所定値は、±1であることを特徴とする請求項19に記載のビットストリームの変更方法。
- 上記インター符号化ピクチャは、動きベクトルを表すコードを含み、
当該ビットストリームの変更方法は、
上記変更コードが含まれることになるビットストリームの部分に関連する上記動きベクトルを取り外すステップと、
元の動きベクトルコードを、ゼロ動きベクトルを表す動きベクトル変更コードで置換するステップと、
上記取り外された動きベクトルコードを、上記ビットストリームの最後に付加し、及び/又は該取り外された動きベクトルコードを、上記ビットストリーム内の取外しコードデータフィールド内に配置するステップとを更に有する請求項17に記載のビットストリームの変更方法。 - 上記変更コードが含まれることになるビットストリームの部分にピクチャ内で隣接するインター符号化ピクチャの部分に関連する動きベクトルコードを取り外すステップと、
上記インター符号化ピクチャの部分に関連する元の動きベクトルコードを、ゼロ動きベクトルを表す動きベクトル変更コードで置換するステップと、
上記取り外された動きベクトルコードを、上記ビットストリームの最後に付加し、及び/又は該取り外された動きベクトルコードを、上記ビットストリーム内の取外しコードデータフィールド内に配置するステップとを更に有する請求項21に記載のビットストリームの変更方法。 - 上記変更されるイントラ符号化ピクチャのブロックを定義する第1のテンプレートと、該第1のテンプレートのブロックに対応するインター符号化ピクチャのブロックを定義する第2のテンプレートとを提供するステップを更に有し、
上記インター符号化ピクチャのブロックに関連する動きベクトルは、ゼロに設定されることを特徴とする請求項21に記載のビットストリームの変更方法。 - 上記第2のテンプレートは、上記関連する動きベクトルがゼロに設定される上記ブロックを含むマクロブロックを定義することを特徴とする請求項23に記載のビットストリームの変更方法。
- 上記第2のテンプレートは、上記マクロブロックと境界を接する更なるマクロブロックを定義し、
上記更なるマクロブロックに関連する動きベクトルは、ゼロに設定されることを特徴とする請求項24に記載のビットストリームの変更方法。 - 上記ビットストリームは、符号化のタイプを示すタイプコードによって、フィールドタイプ又はフレームタイプとして符号化可能なDCTブロックを含み、
当該ビットストリームの変更方法は、
上記フィールドタイプを示す上記タイプコードのうちの選択されたものを取り外すステップと、
上記取り外されたタイプコードを、上記フレームタイプを示す変更タイプコードで置換するステップと、
上記取り外されたタイプコードを、上記ビットストリームと関連付けて格納し、及び/又は該取り外されたタイプコードを、該ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置するステップとを更に有する請求項16に記載のビットストリームの変更方法。 - 上記ビットストリームは、MPEG2ビットストリームであることを特徴とする請求項1に記載のビットストリームの変更方法。
- 上記変更コードが含まれることになる上記ビットストリームの部分を示すデータを提供するステップを更に有する請求項1に記載のビットストリームの変更方法。
- 上記ビットストリームは、補助データフィールドを含み、
当該ビットストリームの変更方法は、上記補助データフィールドから取り外されたコードのデータフィールドを識別するデータを上記ビットストリーム内に提供するステップを更に有する請求項27又は28に記載のビットストリームの変更方法。 - 上記選択され、取り外されたデジタルコードを、上記ビットストリームと関連させて格納し、及び/又は該選択され、取り外されたデジタルコードを上記取外しコードデータフィールド内に配置する前に、暗号化するステップを更に有する請求項1に記載のビットストリームの変更方法。
- 上記ピクチャ情報は、ビデオデータ、オーディオデータ、ビジュアルデータ、及びこれら以外のデータのうちの1つ以上を含むことを特徴とする請求項1に記載のビットストリームの変更方法。
- 上記変更は、上記ピクチャ情報により表される情報において視認可能な効果を生ずることを特徴とする請求項1に記載のビットストリームの変更方法。
- プロセッサで実行されたときに、該プロセッサに、請求項1に記載のビットストリームの変更方法の各ステップを実行させるためのコンピュータプログラム。
- 請求項33に記載のコンピュータプログラムを記録した記録媒体。
- ピクチャ情報を表すデジタルコードを含むビットストリームを変更するビットストリームの変更装置において、
透かし模様を埋め込むピクチャの該透かし模様の部分に対応するデジタルコードであって、上記ピクチャ情報内で視認可能な変更を表す少なくとも1つの変更コードが含まれることになる上記ビットストリームの一部分を占有する少なくとも1つのデジタルコードを選択する選択手段と、
上記ビットストリームの一部分から、上記選択されたデジタルコードを取り外す取外し手段と、
上記選択されたデジタルコードの代わりに、上記変更コードを、上記ビットストリームの一部分に配置する変更コード配置手段とを備え、
上記選択され、取り外されたデジタルコードのビット数は、上記ビットストリームに配置された変更コードのビット数以上であり、
上記デジタルコードは、上記ピクチャ情報のDCT係数を表し、
上記DCT係数は、DC係数及びAC係数を含み、
上記取外し手段は、上記ビットストリームの一部分から、(1)AC係数を表すACコードを取り外す技術及び(2)DC係数を表すDCコードを取り外す技術の少なくとも1つを実行可能であり、
上記変更コード配置手段は、上記取り外されたDCコードを変更DCコードで置換し、
上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードを、上記ビットストリームと関連付けて格納し、及び/又は上記上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置し、
当該ビットストリームの変更装置は、
上記ビットストリームの試行変更を実行し、該試行変更の該ビットストリームのビット数に対する影響を評価し、該評価に基づいて、1つ以上の上記技術を選択する手段を更に備えることを特徴とするビットストリームの変更装置。 - 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードを、上記取外しコードデータフィールドに再分配し、上記選択され、取り外されたデジタルコードを好ましい順序で上記ビットストリームと関連付けて格納し、
上記好ましい順序は、(1)上記取外しコードデータフィールドに格納し、(2)上記選択され、取り外されたデジタルコードを、上記ビットストリームと関連付けて格納することを特徴とする請求項35に記載のビットストリームの変更装置。 - 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードの幾つかを、上記ビットストリームと関連付けて格納し、上記選択され、取り外されたデジタルコードの残りを、上記1つ以上の取外しコードデータフィールド内に配置することを特徴とする請求項35に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードを、上記ビットストリームの端に付加することによって、(1)上記選択され、取り外されたデジタルコードを、該ビットストリームと関連付けて格納することを特徴とする請求項35に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードをファイルに格納することによって、(1)上記選択され、取り外されたデジタルコードを、上記ビットストリームと関連付けて格納することを特徴とする請求項35に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記ファイルを上記ビットストリームの端に付加することを特徴とする請求項39に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記ファイルを上記ビットストリームとは分離し、該ビットストリームと関連付けて格納することを特徴とする請求項39に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードの全てを、上記ビットストリームの最後に付加することを特徴とする請求項35に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードの全てを、上記1つ以上の取外しコードデータフィールド内に配置することを特徴とする請求項35に記載のビットストリームの変更装置。
- 上記取外しコード配置手段は、上記選択され、取り外されたデジタルコードを、上記ビットストリームの最後に付加し、及び/又は該選択され、取り外されたデジタルコードを、上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置することを特徴とする請求項43に記載のビットストリームの変更装置。
- 上記ビットストリームは、少なくともイントラ符号化ピクチャを含み、
当該ビットストリームの変更装置は、上記イントラ符号化ピクチャを変更することを特徴とする請求項35に記載のビットストリームの変更装置。 - 上記ビットストリームは、インター符号化ピクチャを含み、
当該ビットストリームの変更装置は、更に上記インター符号化ピクチャを変更することを特徴とする請求項45に記載のビットストリームの変更装置。 - 上記インター符号化ピクチャは、DC係数を表すコードを含み、
当該ビットストリームの変更装置は、
上記DCコードのうちの選択されたものを取り外す手段と、
上記取り外されたDCコードを、上記ビットストリームと関連付けて格納し、及び/又は上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置する手段と、
上記取り外されたDCコードを所定値の変更コードで置換する手段とを更に備える請求項46に記載のビットストリームの変更装置。 - 上記インター符号化ピクチャ内のDC係数を表すコードは、量子化された変更値を表し、
上記所定値は、ゼロより大きな最小の変更の有効値を表すことを特徴とする請求項47に記載のビットストリームの変更装置。 - 所定値は、±1であることを特徴とする請求項48に記載のビットストリームの変更装置。
- 上記インター符号化ピクチャは、動きベクトルを表すコードを含んでおり、
上記変更コードが含まれることになるビットストリームの部分に関連する動きベクトルコードを取り外し、元の動きベクトルコードをゼロ動きベクトルを表す動きベクトル変更コードで置換し、該取り外された動きベクトルコードを、該ビットストリームと関連付けて格納し、及び/又は該取り外された動きベクトルコードを、該ビットストリーム内の取外しコードデータフィールド内に配置する動きベクトルコード取外し手段を更に備える請求項46に記載のビットストリームの変更装置。 - 上記動きベクトルコード取外し手段は、上記変更コードが含まれることになるビットストリームの部分にピクチャ内で隣接するインター符号化ピクチャの部分に関連する動きベクトルコードを取り外し、該インター符号化ピクチャの部分に関連する元の動きベクトルコードを、ゼロ動きベクトルを表す動きベクトル変更コードで置換し、該取り外された動きベクトルコードを、上記ビットストリームと関連付けて格納し、及び/又は該取り外された動きベクトルコードを、上記ビットストリーム内の取外しコードデータフィールド内に配置することを特徴とする請求項50に記載のビットストリームの変更装置。
- 上記ビットストリームは、符号化のタイプを示すタイプコードによって、フィールドタイプ又はフレームタイプとして符号化されるDCTブロックを含み、
当該ビットストリームの変更装置は、
上記フィールドタイプを示すタイプコードのうちの選択されたものを取り外す手段と、
上記取り外されたタイプコードを、上記フレームタイプを示す変更タイプコードで置換する手段と、
上記取り外されたタイプコードを、上記ビットストリームと関連付けて格納し、及び/又は該取り外されたタイプコードを、上記ビットストリーム内の1つ以上の取外しコードデータフィールド内に配置する手段とを更に備える請求項35に記載のビットストリームの変更装置。 - 上記ピクチャ情報は、ビデオデータ、オーディオデータ、ビジュアルデータ、及びこれら以外のデータのうちの1つ以上を含むことを特徴とする請求項35に記載のビットストリームの変更装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0202737A GB0202737D0 (en) | 2002-02-06 | 2002-02-06 | Modifying bitstreams |
GB0215400A GB0215400D0 (en) | 2002-02-06 | 2002-07-03 | Modifying bitstreams |
GB0215403A GB0215403D0 (en) | 2002-02-06 | 2002-07-03 | Modifying bitstreams |
PCT/GB2003/000512 WO2003067886A1 (en) | 2002-02-06 | 2003-02-05 | Modifying bitstreams |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005517362A JP2005517362A (ja) | 2005-06-09 |
JP2005517362A5 JP2005517362A5 (ja) | 2005-12-22 |
JP4564753B2 true JP4564753B2 (ja) | 2010-10-20 |
Family
ID=27738825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003567096A Expired - Fee Related JP4564753B2 (ja) | 2002-02-06 | 2003-02-05 | ビットストリームの変更方法及び装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8238435B2 (ja) |
EP (1) | EP1472874A1 (ja) |
JP (1) | JP4564753B2 (ja) |
CN (1) | CN1270536C (ja) |
WO (1) | WO2003067886A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102014266A (zh) * | 2010-12-01 | 2011-04-13 | 华中科技大学 | 一种基于数字水印的高清视频加密传输方法及系统 |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2840147B1 (fr) * | 2002-05-24 | 2004-08-27 | France Telecom | Procedes de brouillage et de debrouillage de signal video, systeme, decodeur, serveur de diffusion, support de donnees pour la mise en oeuvre de ces procedes |
US20050047627A1 (en) * | 2003-09-02 | 2005-03-03 | Ustra Foundation | Method and apparatus for encoding and decoding digital representations of works |
CN1965584A (zh) * | 2004-06-08 | 2007-05-16 | 皇家飞利浦电子股份有限公司 | 补偿由移动的物体引起的水印不规律 |
CN102685562B (zh) * | 2005-03-14 | 2016-06-08 | 尼尔逊媒介研究股份有限公司 | 用于媒体信号的压缩域编码设备和方法 |
US7599515B2 (en) * | 2005-03-17 | 2009-10-06 | Interdigital Technology Corporation | Wireless communication method and apparatus for generating, watermarking and securely transmitting content |
GB2425906B (en) | 2005-05-05 | 2011-04-06 | Sony Uk Ltd | Data processing apparatus and method |
RU2008105592A (ru) * | 2005-07-14 | 2009-08-20 | Конинклейке Филипс Электроникс Н.В. (Nl) | Способ внедрения данных |
KR101235382B1 (ko) * | 2006-03-17 | 2013-02-20 | 톰슨 라이센싱 | 디지털 워터마크 및 기타 데이터의 추후 삽입을 위한 콘텐츠 처리 시스템 및 방법 |
US7940926B2 (en) * | 2006-06-08 | 2011-05-10 | Novell, Inc. | Cooperative encoding of data by pluralities of parties |
US8102863B1 (en) | 2006-06-27 | 2012-01-24 | Qurio Holdings, Inc. | High-speed WAN to wireless LAN gateway |
US8615778B1 (en) | 2006-09-28 | 2013-12-24 | Qurio Holdings, Inc. | Personalized broadcast system |
US7738676B1 (en) * | 2006-11-02 | 2010-06-15 | Qurio Holdings, Inc. | Client-side watermarking using hybrid I-frames |
US7983440B1 (en) | 2006-11-02 | 2011-07-19 | Qurio Holdings, Inc. | Selection of I-frames for client-side watermarking |
US7802306B1 (en) | 2006-11-30 | 2010-09-21 | Qurio Holdings, Inc. | Multiple watermarks for digital rights management (DRM) and content tracking |
ES2321363B2 (es) * | 2006-12-14 | 2010-01-12 | Tredess 2010, S.L. | Sistema de marcado de agua digital en particular de un sistema de marcado de aguadigital para la deteccion y localizacion de alteraciones en imagenes digitales. |
US8000474B1 (en) | 2006-12-15 | 2011-08-16 | Quiro Holdings, Inc. | Client-side protection of broadcast or multicast content for non-real-time playback |
US8135947B1 (en) | 2007-03-21 | 2012-03-13 | Qurio Holdings, Inc. | Interconnect device to enable compliance with rights management restrictions |
US9191605B1 (en) | 2007-03-26 | 2015-11-17 | Qurio Holdings, Inc. | Remote monitoring of media content that is associated with rights management restrictions |
US7895442B1 (en) | 2007-06-18 | 2011-02-22 | Qurio Holdings, Inc. | Interconnect device to enable compliance with rights management restrictions |
WO2009033248A1 (en) * | 2007-09-10 | 2009-03-19 | Novell, Inc. | A method for efficient thread usage for hierarchically structured tasks |
US8856313B2 (en) * | 2007-11-13 | 2014-10-07 | International Business Machines Corporation | Systems and methods for using provenance information for data retention in stream-processing |
JP2010118936A (ja) * | 2008-11-13 | 2010-05-27 | Mitsubishi Electric Corp | 可視透かし埋め込み装置及び画像復元装置 |
ES2398803T3 (es) | 2009-06-29 | 2013-03-21 | Nds Limited | Extracción del mensaje de protección del contenido |
US8817884B2 (en) * | 2009-11-20 | 2014-08-26 | Texas Instruments Incorporated | Techniques for perceptual encoding of video frames |
US8630412B2 (en) * | 2010-08-25 | 2014-01-14 | Motorola Mobility Llc | Transport of partially encrypted media |
EP2611064A1 (en) * | 2011-12-29 | 2013-07-03 | Thomson Licensing | Method for selectively scrambling bit-streams |
CN104160701B (zh) | 2012-01-27 | 2017-06-30 | 太阳专利托管公司 | 图像编码方法、图像解码方法、图像编码装置、及图像解码装置 |
EP2642744A1 (en) * | 2012-03-19 | 2013-09-25 | Nagravision S.A. | Method and system for scrambling and descrambling a digital image |
US9081953B2 (en) | 2012-07-17 | 2015-07-14 | Oracle International Corporation | Defense against search engine tracking |
EP2979184A4 (en) * | 2013-03-28 | 2016-10-19 | Irdeto Bv | METHOD AND SYSTEM FOR MEDIA PATIENT SECURITY |
US9965601B2 (en) * | 2016-03-29 | 2018-05-08 | Adobe Systems Incorporated | Editing watermarked assets |
KR102637177B1 (ko) * | 2018-05-23 | 2024-02-14 | 세종대학교산학협력단 | 워터마크 기반의 이미지 무결성 검증 방법 및 장치 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0563996A (ja) * | 1991-09-02 | 1993-03-12 | Ricoh Co Ltd | 画像処理装置 |
JP3434088B2 (ja) | 1995-01-17 | 2003-08-04 | 日本電信電話株式会社 | 画像データ変換装置およびその逆変換装置 |
JPH09233455A (ja) | 1996-02-23 | 1997-09-05 | Nippon Telegr & Teleph Corp <Ntt> | 画像スクランブル処理システムおよび方法 |
US6229924B1 (en) * | 1996-05-16 | 2001-05-08 | Digimarc Corporation | Method and apparatus for watermarking video images |
US5809139A (en) * | 1996-09-13 | 1998-09-15 | Vivo Software, Inc. | Watermarking method and apparatus for compressed digital video |
US6037984A (en) * | 1997-12-24 | 2000-03-14 | Sarnoff Corporation | Method and apparatus for embedding a watermark into a digital image or image sequence |
US6327691B1 (en) * | 1999-02-12 | 2001-12-04 | Sony Corporation | System and method for computing and encoding error detection sequences |
JP2003505956A (ja) | 1999-07-15 | 2003-02-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 情報信号への補助データの組み込み |
US6687384B1 (en) * | 2000-03-27 | 2004-02-03 | Sarnoff Corporation | Method and apparatus for embedding data in encoded digital bitstreams |
-
2003
- 2003-02-05 CN CNB038003759A patent/CN1270536C/zh not_active Expired - Fee Related
- 2003-02-05 EP EP20030737368 patent/EP1472874A1/en not_active Withdrawn
- 2003-02-05 WO PCT/GB2003/000512 patent/WO2003067886A1/en active Application Filing
- 2003-02-05 US US10/474,013 patent/US8238435B2/en not_active Expired - Fee Related
- 2003-02-05 JP JP2003567096A patent/JP4564753B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102014266A (zh) * | 2010-12-01 | 2011-04-13 | 华中科技大学 | 一种基于数字水印的高清视频加密传输方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP1472874A1 (en) | 2004-11-03 |
CN1515117A (zh) | 2004-07-21 |
WO2003067886A1 (en) | 2003-08-14 |
US8238435B2 (en) | 2012-08-07 |
US20060050880A1 (en) | 2006-03-09 |
CN1270536C (zh) | 2006-08-16 |
JP2005517362A (ja) | 2005-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4564753B2 (ja) | ビットストリームの変更方法及び装置 | |
EP0928110B1 (en) | Image signal processing for electronic watermarking | |
US8995711B2 (en) | Efficient watermarking approaches of compressed media | |
US6810131B2 (en) | Information processing method and apparatus | |
US7702103B2 (en) | Device for the transformation of MPEG 2-type multimedia and audiovisual contents into secured contents of the same type | |
US20060133477A1 (en) | Combined video decoder and watermark creator | |
KR19990016796A (ko) | 엠펙2 동화상 부호화/복호화 시스템 | |
JPH11252355A (ja) | ウォ―タマ―クをディジタル画像又は画像シ―ケンスに組み込むための方法及び装置 | |
WO2003044735A2 (en) | Watermark embedding | |
US20070189377A1 (en) | Data processing apparatus | |
EP2884748A1 (en) | Apparatus and method for decoding compressed video | |
US20140105392A1 (en) | Method for selectively scrambling bit-streams | |
JP4644851B2 (ja) | ビデオシーケンス供給方法、ビデオストリーム送信装置、ビデオストリーム受信装置、およびビデオストリーム伝送システム | |
JP2005535242A (ja) | Mpeg−4タイプの音響映像マルチメディアコンテンツのスクランブル装置 | |
Simitopoulos et al. | Encryption and watermarking for the secure distribution of copyrighted MPEG video on DVD | |
JP2004522358A (ja) | 電子透かしを検出する方法及び装置 | |
JP3601566B2 (ja) | 情報多重化方法および著作権保護システム | |
CN108781302B (zh) | 提供用于在经编码的视频中嵌入数据的框架的方法和系统 | |
JP4018305B2 (ja) | 画像処理方法及びその装置と記憶媒体 | |
JP2000083254A (ja) | 動画像符号化方法および動画像復号方法 | |
JPH09233455A (ja) | 画像スクランブル処理システムおよび方法 | |
KR20060055622A (ko) | 해쉬함수가 적용되는 엠펙-4 동영상 부호화기 및 복호화기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051026 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071023 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080123 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080130 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080225 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080303 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080324 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080331 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080423 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20080509 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080515 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090421 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090821 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20091028 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100720 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100802 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130806 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |