(57)【要約】      （修正有）【課題】圧縮符号化されたビデオシーケンスを変更する。【解決手段】ビデオシーケンス変更方法は、グループオブピクチャ内のインタ符号化ピクチャを検出し、検出されたインタ符号化ピクチャから画像ブロックを抽出し、抽出された画像ブロックの少なくとも一部を圧縮し、圧縮された画像ブロックデータを生成し、それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び圧縮された画像ブロックデータをビデオシーケンスに挿入し、抽出された画像ブロックを置換するステップとを有する。動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロックを表す置換ピクチャデータを提供することによって、変更されたビデオシーケンスのインタ符号化ピクチャは、復号されると前のイントラ符号化ピクチャと同じ画像になり、これにより、可視ウォータマークのような、除去可能な（逆に戻すことができる）形式の変更を加えることができる。【選択図】  図９
2006325199.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ画像を表す圧縮符号化されたビデオシーケンスを変更するビデオシーケンス変更方法において、該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、当該ビデオシーケンス変更方法は、
上記各グループオブピクチャについて、グループオブピクチャ内のインタ符号化ピクチャを検出するステップと、
上記検出されたインタ符号化ピクチャから画像ブロックを抽出するステップと、
上記抽出された画像ブロックの少なくとも一部を圧縮し、圧縮された画像ブロックデータを生成するステップと、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び上記圧縮された画像ブロックデータを上記ビデオシーケンスに挿入し、上記抽出された画像ブロックを置換するステップとを有するビデオシーケンス変更方法。
【請求項２】
上記圧縮された画像ブロックデータを暗号化するステップを更に有する請求項１記載のビデオシーケンス変更方法。
【請求項３】
上記ビデオシーケンスの１つ以上のイントラ符号化ピクチャに可視ウォータマークを埋め込むステップを更に有する請求項１記載のビデオシーケンス変更方法。
【請求項４】
上記各インタ符号化ピクチャは、画像ブロックが単一の動きベクトルを有する予測符号化されたピクチャ又は画像ブロックが、ビデオシーケンス内の他のピクチャ内のそれぞれの参照画像ブロックに対する画像ブロックの移動をそれぞれが表す複数の動きベクトルを有する双方向符号化されたピクチャであることを特徴とする請求項１記載のビデオシーケンス変更方法。
【請求項５】
上記検出するステップは、上記インタ符号化ピクチャが予測符号化されたピクチャであるか、双方向符号化されたピクチャであるかを検出し、上記置換画像ブロックは、検出された予測符号化されたピクチャを置換するための第１の所定のコード又は双方向符号化されたピクチャを置換するための第２の所定のコードを含むことを特徴とする請求項４記載のビデオシーケンス変更方法。
【請求項６】
上記ビデオシーケンスは、ＭＰＥＧ２ビットストリームであり、上記画像ブロックは、ＭＰＥＧ２マクロブロックであり、上記第１及び第２の所定のコードは、それぞれがインタ符号化ピクチャ内のマクロブロックの行を表し、行の最初及び最後のマクロブロックだけを定義するコード部分をそれぞれ含むことを特徴とする請求項５記載のビデオシーケンス変更方法。
【請求項７】
ビデオ画像を表す圧縮符号化されたビデオシーケンスを構築するビデオシーケンス構築方法において、
圧縮符号化されたビデオシーケンスを生成するステップと、
上記生成した圧縮符号化されたビデオシーケンスを請求項１乃至６いずれか１項記載のビデオシーケンス変更方法に基づいて変更するステップとを有するビデオシーケンス構築方法。
【請求項８】
ビデオ画像を表す圧縮符号化されたビデオシーケンスを変更するビデオシーケンス変更装置において、該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、当該ビデオシーケンス変更装置は、
上記各グループオブピクチャについて、グループオブピクチャ内のインタ符号化ピクチャを検出するピクチャ検出器と、
上記検出されたインタ符号化ピクチャから画像ブロックを抽出する抽出器と、
上記抽出された画像ブロックの少なくとも一部を圧縮し、圧縮された画像ブロックデータを生成する圧縮器と、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び上記圧縮された画像ブロックデータを上記ビデオシーケンスに挿入し、上記抽出された画像ブロックを置換する挿入器とを備えるビデオシーケンス変更装置。
【請求項９】
上記圧縮された画像ブロックデータを暗号化する暗号化器を更に備える請求項８記載のビデオシーケンス変更装置。
【請求項１０】
上記ビデオシーケンスの１つ以上のイントラ符号化ピクチャに可視ウォータマークを埋め込む埋込器を更に備える請求項８記載のビデオシーケンス変更装置。
【請求項１１】
ビデオ画像を表す変更された圧縮符号化されたビデオシーケンスに施された変更を逆に戻すビデオシーケンス逆変更方法において、該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、上記変更されたビデオシーケンスは、置換画像ブロックと、元の画像ブロックから形成された圧縮画像ブロックデータとを含み、当該ビデオシーケンス逆変更方法は、
上記各グループオブピクチャについて、上記ビデオシーケンス内のインタ符号化ピクチャを検出するステップと、
上記検出されたインタ符号化ピクチャから圧縮された画像ブロックデータを抽出するステップと、
抽出された圧縮画像ブロックデータを伸長し、元の画像ブロックを再生するステップと、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する上記置換画像ブロック及び上記圧縮された画像ブロックデータを元の画像ブロックにより置換するステップとを有するビデオシーケンス逆変更方法。
【請求項１２】
上記圧縮された画像ブロックデータを平文化するステップを更に有する請求項１１記載のビデオシーケンス逆変更方法。
【請求項１３】
上記ビデオシーケンスの１つ以上のイントラ符号化ピクチャから可視ウォータマークを取り除き、元のイントラ符号化ピクチャを復元するステップを更に有する請求項１１記載のビデオシーケンス逆変更方法。
【請求項１４】
ビデオ画像を表す圧縮符号化されたビデオシーケンスに施された変更を逆に戻すビデオシーケンス逆変更装置において、該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、当該ビデオシーケンス逆変更装置は、
上記各グループオブピクチャについて、上記ビデオシーケンス内のインタ符号化ピクチャを検出する検出器と、
上記検出されたインタ符号化ピクチャから圧縮された画像ブロックデータを抽出する抽出器と、
抽出された圧縮画像ブロックデータを伸長し、元の画像ブロックを再生する伸長器と、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び上記圧縮された画像ブロックデータを元の画像ブロックにより置換するピクチャ生成器とを備えるビデオシーケンス逆変更装置。
【請求項１５】
上記圧縮された画像ブロックデータを平文化する平文化器を更に備える請求項１４記載のビデオシーケンス逆変更装置。
【請求項１６】
上記ビデオシーケンスの１つ以上のイントラ符号化ピクチャから可視ウォータマークを取り除き、元のイントラ符号化ピクチャを復元するウォータマークデコーダを更に備える請求項１４記載のビデオシーケンス逆変更装置。
【請求項１７】
サーバ装置とクライアント装置とを備えるビデオシーケンス配信システムにおいて、該サーバ装置は、
変更された圧縮符号化ビデオシーケンスをクライアント装置に提供し、
変更された圧縮符号化ビデオシーケンスに施された変更を逆に戻す情報をクライアント装置に提供し、
該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、
上記圧縮符号化されたビデオシーケンスは、
上記各グループオブピクチャについて、グループオブピクチャ内のインタ符号化ピクチャを検出し、
上記検出されたインタ符号化ピクチャから画像ブロックを抽出し、
上記抽出された画像ブロックの少なくとも一部を圧縮し、圧縮された画像ブロックデータを生成し、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び上記圧縮された画像ブロックデータを上記ビデオシーケンスに挿入し、上記抽出された画像ブロックを置換することにより変更されることを特徴とするビデオシーケンス配信システム。
【請求項１８】
上記クライアント装置は、
変更された圧縮符号化ビデオシーケンスに施された変更を逆に戻す情報をサーバ装置に要求し、
ビデオ画像を表す変更された圧縮符号化されたビデオシーケンスに施された変更を逆に戻し、該変更された圧縮符号化されたビデオシーケンスに施された変更を逆に戻す処理は、
上記各グループオブピクチャについて、上記ビデオシーケンス内のインタ符号化ピクチャを検出し、
上記検出されたインタ符号化ピクチャから圧縮された画像ブロックデータを抽出し、
抽出された圧縮画像ブロックデータを伸長し、元の画像ブロックを再生し、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する上記置換画像ブロック及び上記圧縮された画像ブロックデータを元の画像ブロックにより置換することにより実行されることを特徴とする請求項１７記載のビデオシーケンス配信システム。
【請求項１９】
コンピュータにロードされると、ビデオ画像を表す圧縮符号化されたビデオシーケンスを変更するビデオシーケンス変更方法を実行するコンピュータにより実行可能な命令を提供するコンピュータプログラムにおいて、
該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、
当該ビデオシーケンス変更方法は、
上記各グループオブピクチャについて、グループオブピクチャ内のインタ符号化ピクチャを検出するステップと、
上記検出されたインタ符号化ピクチャから画像ブロックを抽出するステップと、
上記抽出された画像ブロックの少なくとも一部を圧縮し、圧縮された画像ブロックデータを生成するステップと、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び上記圧縮された画像ブロックデータを上記ビデオシーケンスに挿入し、上記抽出された画像ブロックを置換するステップとを有するコンピュータプログラム。
【請求項２０】
コンピュータにロードされると、ビデオ画像を表す変更された圧縮符号化されたビデオシーケンスに施された変更を逆に戻すビデオシーケンス逆変更方法を実行するコンピュータにより実行可能な命令を提供するコンピュータプログラムにおいて、
該圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、該インタ符号化ピクチャは、複数の画像ブロックを含み、該画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、該画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有し、上記変更されたビデオシーケンスは、置換画像ブロックと、元の画像ブロックから形成された圧縮画像ブロックデータとを含み、当該ビデオシーケンス逆変更方法は、
上記各グループオブピクチャについて、上記ビデオシーケンス内のインタ符号化ピクチャを検出するステップと、
上記検出されたインタ符号化ピクチャから圧縮された画像ブロックデータを抽出するステップと、
抽出された圧縮画像ブロックデータを伸長し、元の画像ブロックを再生するステップと、
それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する上記置換画像ブロック及び上記圧縮された画像ブロックデータを元の画像ブロックにより置換するステップとを有するコンピュータプログラム。
【請求項２１】
請求項１９又は２０記載のコンピュータプログラムの表現を搬送するデータ担体。
【請求項２２】
請求項１記載のビデオシーケンス変更方法により変更されたデータを表す情報信号。
【請求項２３】
請求項２２記載の情報信号を搬送する情報媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオシーケンスを変更する方法及び装置、変更されたビデオシーケンスから変更を取り除く方法及び装置、並びに情報信号及びコンピュータプログラムに関する。幾つかの実施形態では、この変更は、可視ウォータマークの導入であってもよい。
【背景技術】
【０００２】
ビデオ、オーディオ、オーディオ／ビジュアル及び／又は他の情報信号にウォータマークを埋め込む技術が知られている。ウォータマークは、情報信号の出所を確認し、所有者又は情報信号に関連する他の個人を特定するために付されることが多い。ウォータマークは、可視であっても不可視であってもよく、可視ウォータマークは、例えば、ビデオ画像にロゴを重ねることによって可視にすることで、情報信号の価値を低めることにより情報信号を保護する手法として用いることができる。
【０００３】
可視ウォータマークは、シーケンス内の画像ピクチャの少なくとも一部を見えなくすることによって、ビデオシーケンスの価値を低めることを意図するが、幾つかの画像ピクチャが他のビデオピクチャを参照して符号化されるインタ符号化ビデオシーケンスにウォータマークを付与すると、画像及びウォータマークの両方について、望ましくない歪みが生じやすい。これは、ＭＰＥＧ２等の符号化方法で、ビデオストリームを圧縮するために用いられる動き補償のためである。
【０００４】
ユーザは、利用可能な完全なコンテンツを提供されることなく、ビデオシーケンスのコンテンツを見ることができ、シーケンス内のビデオ画像の画質を確認できるように、ビデオシーケンスを変更する意図がある場合、画像及びウォータマークの両方に望ましくない歪みを生じさせることなく、ビデオシーケンスを変更することが望ましい。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、元のビデオ画像が再生できるように、圧縮符号化されたビデオ画像を変更することができる改良されたビデオシーケンス変更方法を提供することである。本発明の更なる目的は、圧縮符号化されたビデオ画像に可視ウォータマークを付す改善された手法を提供することである。
【課題を解決するための手段】
【０００６】
本発明の一側面として、本発明は、ビデオ画像を表す圧縮符号化されたビデオシーケンスを変更するビデオシーケンス変更方法を提供する。圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、インタ符号化ピクチャは、複数の画像ブロックを含む。画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有する。ビデオシーケンス変更方法は、各グループオブピクチャについて、グループオブピクチャ内のインタ符号化ピクチャを検出するステップと、検出されたインタ符号化ピクチャから画像ブロックを抽出するステップと、抽出された画像ブロックの少なくとも一部を圧縮し、圧縮された画像ブロックデータを生成するステップと、それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロック及び圧縮された画像ブロックデータをビデオシーケンスに挿入し、抽出された画像ブロックを置換するステップとを有する。
【０００７】
本発明は、動き値ゼロのベクトル及び値ゼロの差信号を有する置換画像ブロックを表す置換ピクチャデータを提供することによって、前のイントラ符号化ピクチャに表示されていた画像と同じ画像が表示されるように、変更されたビデオシーケンスのインタ符号化ピクチャを設定する。すなわち、インタ符号化ピクチャ内の全ての画像ブロックの動きベクトルをゼロに設定し、対応する差分値をゼロに設定することにより、インタ符号化ピクチャの各画像ブロックがグループオブピクチャ内の他のピクチャ（参照ピクチャ）の同じ位置の画像ブロックを参照することを確実することができる。参照ピクチャがグループオブピクチャのイントラ符号化ピクチャであるか、又は最終的に（複数の中間ピクチャを経て）グループオブピクチャのイントラ符号化ピクチャを参照する場合、グループオブピクチャ内の全てのインタ符号化ピクチャは、復号されると、グループオブピクチャのイントラ符号化ピクチャと同じように表示され、すなわちグループオブピクチャの期間の全体に亘って、同じ画像が表示される。ピクチャがフレームである場合、この処理により、見かけ上のフレームレートが実際のフレームレートより遙かに低くなる（なお、デコーダは、全てのピクチャを復号し、表示し、したがって、単に、同じ画像が何回も繰り返し表示される）。これにより、ユーザは、ビデオシーケンスの保護されていなバージョンにアクセスすることなく、ビデオシーケンスのコンテンツ及び個々のピクチャの品質を確認することができる。
【０００８】
また、元のピクチャデータが、圧縮された形式ではあるが、ビットストリーム内に存在するため、ユーザは、変更されたビットストリームから元のビットストリームを再生し、この結果、元のコンテンツにアクセスすることができる。圧縮ビットストリームは、好ましくは、暗号化され、この場合、認証されたユーザだけが、適切なデコーダ及び必要な暗号鍵を用いて、元のコンテンツにアクセスできる。
【０００９】
本発明は、特に、可視ウォータマークに有利に適用される。インタ符号化されたビデオシーケンスにウォータマークを付す場合、ビデオシーケンスを復号すると、特に、大きな動きがあり、したがって値が大きな動きベクトルがあるビデオシーケンスの場合、インタ符号化ピクチャ内に存在する動きベクトルにより、イントラ符号化ピクチャに埋め込まれているウォータマークが歪みやすい。このような作用は視覚的に好ましくない。本発明では、インタ符号化ピクチャは、デコーダに関する限り、ウォータマークが付されたイントラ符号化ピクチャの静的なコピーである。したがって、ウォータマークが付された画像に歪みは生じない。
【００１０】
更に、この手法の組合せにより、動き補償技術を用いてウォータマークの背後の画像のプロパティを推定することができなくなり、イントラ符号化ピクチャからウォータマークを権限なく除去することがより困難になる。これは、インタ符号化ピクチャが、権限のないユーザには、関連するイントラ符号化ピクチャが提供する以上の如何なる追加的情報も提供しないためである。
【００１１】
ＭＰＥＧ２の場合、他のロングＧＯＰ符号化方式にも同じ原理が適用できるが、置換ピクチャデータは、単に、あらゆるインタ符号化ピクチャに適用できる標準コードであってもよい。ＭＰＥＧ２では、各Ｐピクチャ用の置換ピクチャデータとして適用する標準コードと、各Ｂピクチャ用の置換ピクチャデータとして適用する標準コードの２つの標準コードを用いることができる。性能を高めるために、Ｂピクチャのために用いるコードは、グループオブピクチャ内の後のピクチャを参照する動きベクトルを設定する。Ｐピクチャ及びＢピクチャのそれぞれのための所定のコードは、インタ符号化ピクチャ内のマクロブロックの行を表すコード部分を含むことができ、各コード部分は、その行の最初及び最後のマクロブロックだけを定義することができる。これは、中間的な「スキップされたマクロブロック」を前のマクロブロックと同じであるとして処理し、符号化されたビットストリームにおいては、これらの中間マクロブロックを実際には指定しないＭＰＥＧ２デコーダの機能を利用している。
【００１２】
本発明の第２の側面として、本発明は、ビデオ画像を表す変更された圧縮符号化されたビデオシーケンスに施された変更を逆に戻すビデオシーケンス逆変更方法を提供する。圧縮符号化されたビデオシーケンスは、イントラ符号化ピクチャ及び少なくとも１つのインタ符号化ピクチャを含むグループオブピクチャを含み、インタ符号化ピクチャは、複数の画像ブロックを含む。画像ブロックの少なくとも１つは、グループオブピクチャ内の他のピクチャ内の参照画像ブロックに対する画像ブロックの移動を表す動きベクトルと、画像ブロック及び参照画像ブロックの間の差分を表す差信号とを有する。変更されたビデオシーケンスは、置換画像ブロックと、元の画像ブロックから形成された圧縮画像ブロックデータとを含む。ビデオシーケンス逆変更方法は、各グループオブピクチャについて、ビデオシーケンス内のインタ符号化ピクチャを検出するステップと、検出されたインタ符号化ピクチャから圧縮された画像ブロックデータを抽出するステップと、抽出された圧縮画像ブロックデータを伸長し、元の画像ブロックを再生するステップと、それぞれ動き値ゼロのベクトル及び値ゼロの差信号を有する所定の置換画像ブロック及び圧縮された画像ブロックデータを元の画像ブロックにより置換するステップとを有する。所定の置換画像ブロックは、それぞれ、動き値ゼロのベクトル及び値ゼロの差信号を有する。
【００１３】
圧縮された画像ブロックデータが暗号化されている場合、抽出された圧縮画像ブロックデータは、平文化した後に伸長する。圧縮された画像ブロックデータが秘密鍵を用いて暗号化されている場合、この鍵を入手し、これを用いて、圧縮され、暗号化された画像ブロックデータを平文化する必要がある。
【００１４】
また、本発明は、サーバ装置及びクライアント装置を備えるビデオシーケンス配信システムを提供する。サーバは、変更された圧縮符号化ビデオシーケンスをクライアント装置に提供し、変更された圧縮符号化ビデオシーケンスに施された変更を逆に戻す情報をクライアント装置に提供する。変更された圧縮符号化ビデオシーケンスに施された変更を逆に戻すための情報は、秘密鍵であってもよい。
【００１５】
ビデオシーケンス配信システムのクライアント装置は、変更された圧縮符号化ビデオシーケンスに施された変更を逆に戻すための情報及び上述した本発明の第２の側面に基づいて変更された圧縮符号化ビデオシーケンスに施された変更を逆に戻すための情報をサーバ装置に要求してもよい。
【００１６】
本発明の様々な側面の特徴は、特許請求の範囲に定義されており、これらの側面には、ビデオシーケンスを変更するビデオシーケンス変更装置、ビデオシーケンスに施された変更を逆に戻すビデオシーケンス逆変更装置、情報信号及びコンピュータプログラムが含まれる。
【発明を実施するための最良の形態】
【００１７】
以下、符号化方法としてＭＰＥＧ２を用いて本発明の実施形態について説明する。なお、ロングＧＯＰ構造に基づいて動作する他の符号化方法に本発明を適用してもよい。更に、以下の説明では、フレーム又はフィールドではなく、主にピクチャについて言及するが、本発明は、フレーム毎又はフィールド毎に適用してもよい。
【００１８】
まず、ＭＰＥＧ２について説明する。図１は、画像フレーム２を示している。画像は、画素によって表現されている。図２に示すように、８×８画素のブロック４を選択し、図３に示すように、これらのブロックに対して、離散コサイン変換（Discrete Cosine Transform：ＤＣＴ）を施し、８×８ＤＣＴ係数を含むＤＣＴブロックを生成する。これらの係数は、ＤＣ係数６及びＡＣ係数７を含む。そして、シリアルビットストリームを生成するために、図３に示すように、ジグザグスキャンパターン８により係数をスキャンする。なお、他のパターンも知られている。図４に示すように、４つの隣接しているＤＣＴブロックのグループをマクロブロック１０にグループ化する。図５に示すように、画像フレームは、マクロブロックの行Ｒ１、Ｒ２、Ｒ３等として組織化される。マクロブロックは、スライスに組織化される。スライスは、マクロブロックの水平方向の集合である。新たなスライスは、マクロブロックの各行の最初から始まる。スライスは、幾つのマクロブロックを含んでいてもよく、マクロブロックの行は、幾つのスライスを含んでいてもよい。
【００１９】
図６に示すように、ＭＰＥＧ２には、以下のような種類のフレームがある。Ｉフレームは、イントラ符号化されたフレームであり、この場合、他の如何なるフレームも参照することなく、全ての画像データがそのフレームに含まれている。Ｐフレームは、前のＩフレーム又はＰフレームからの動き補償予測を用いて符号化されたフレームである。Ｂフレームは、前の及び／又は後のＩフレーム又はＰフレームからの動き補償予測を用いて符号化されたフレームである。
【００２０】
フレームは、グループオブピクチャ（Groups of Pictures：ＧＯＰ）に組織化される。図６は、一般的なＧＯＰの一部を示しており、この場合、Ｉ、Ｂ、Ｂ、Ｐフレームの繰り返しシーケンスがＧＯＰを形成している。他のシーケンスを用いてもよい。一般的なＧＯＰのフレーム数は、１２又は１５であるが、他の数のフレームを用いてもよい。
【００２１】
図７は、本明細書ではピクチャデータと呼ぶデータフォーマットを示している。本明細書におけるピクチャデータは、ピクチャ開始コードの間の全てのデータを含み、ヘッダ（header：ＨＤＲ）、ユーザデータ（user data：ＵＤ）及び画像の１つのフレームを表す画像データ１６を含む。ＭＰＥＧ２では、ピクチャデータ内で、画像データ１６の前にユーザデータ（ＵＤ）を設けることができる。ユーザデータフィールドＵＤは、設けなくてもよく、１つ以上のユーザデータフィールドＵＤを設けてもよい。
【００２２】
図８に示すように、ＤＣＴブロック及びマクロブロックは、画像データ１６内でフォーマットされる。マクロブロックは、用いられる色フォーマット（chroma format）［４、２、０］、［４、２、２］又は［４、４、４］に応じて、６、８又は１０のＤＣＴブロックから構成され、図８では、最初の４つのＤＣＴブロックのみを示している。各ブロックは、ＤＣ係数と、これに続くＡＣ係数とを含む。ブロックは、エンドオブブロックコードＥＯＢによって分離されている。
【００２３】
ＭＰＥＧ２符号化処理では、ＭＰＥＧ２規格に準拠する如何なるデコーダでも復号することができるビットストリームを生成する必要がある。デコーダは、ビットストリームを復号する際に、一時的にビットストリームを保存するバッファを備える。ＭＰＥＧ２規格では、バッファのサイズが定義されている。通常、バッファでは、アンダフローもオーバフローも発生してはならず、アンダフロー又はオーバフローが発生すると、データが失われるが、一定の条件下では、アンダフローが許容されることもある。したがって、符号化処理は、アンダフロー及びオーバフローが生じないようにビットレートを制御しながら行われる。
【００２４】
ビットストリーム変更装置（Bitstream Modifying Apparatus）
図９は、本発明の第１の実施形態に基づくビットストリーム変更装置の構成を示している。この実施形態におけるビットストリーム変更装置は、ビデオ信号を入力として受け取り、ＭＰＥＧ２符号化されたビデオビットストリームを出力するＭＰＥＧエンコーダ１０２を備える。これに代えてビットストリーム変更装置には、単に、予め準備されたＭＰＥＧ２ビットストリームを供給してもよい。ＭＰＥＧ２ビットストリームは、Ｐ／Ｂピクチャ検出器１０４に供給され、Ｐ／Ｂピクチャ検出器１０４は、ビットストリームの現在のピクチャがイントラ符号化ピクチャ（Ｉピクチャ）であるかインタ符号化ピクチャ（Ｐピクチャ又はＢピクチャ）であるかを判定する。検出された現在のピクチャがＩピクチャである場合、変更は施さない。検出された現在のピクチャがＰピクチャ又はＢピクチャである場合、現在のピクチャに関連するビットストリームの一部を変更する。
【００２５】
具体的には、現在のピクチャがインタ符号化ピクチャである場合、抽出器１０６が現在のピクチャを表すビットストリームの一部を抽出する。抽出器１０６は、抽出されたビットストリームの少なくとも一部を圧縮エンコーダ１０８に供給し、圧縮エンコーダ１０８は、そのビットストリームの一部のデータ量を削減する。ここでは、適切な如何なる圧縮アルゴリズムを用いてもよい。なお、ＭＰＥＧ２ビットストリームであるので、ビットストリームは、既に圧縮されている。圧縮エンコーダ１０８によって実行される更なる圧縮は、例えば、モディファイドＭＰＥＧ２圧縮アルゴリズム又はＭＰＥＧ４圧縮アルゴリズムに基づいて行ってもよい。
【００２６】
圧縮ビットストリームは、暗号化エンコーダ１１０に供給され、暗号化エンコーダ１１０は、現在のピクチャが元の形式のままで不正にアクセスされることを防止するために、圧縮ビットストリームを暗号化する。ここでも圧縮の場合と同様に、適切な如何なる暗号化アルゴリズムも用いてもよい。なお、対称暗号化アルゴリズム、例えば、ＡＥＳ１アルゴリズムを用いて、秘密鍵でデータを暗号化することが好ましい。対称アルゴリズムは、非対称アルゴリズムに比べて、暗号化によるデータ量の増加が少なく、実行速度が速いという利点を有する。なお、更なるセキュリティが求められる場合、秘密鍵を配布する前に、例えば、公開鍵暗号化方式（public key infrastructure：ＰＫＩ）に基づいて、秘密鍵自体を暗号化してもよい。
【００２７】
更に、ビットストリーム変更装置は、元のＰピクチャ及びＢピクチャを置換する置換Ｐピクチャ及び置換Ｂピクチャを生成するインタ符号化ピクチャ生成器１１２を備える。置換Ｐピクチャ及び置換Ｂピクチャは、前のＩピクチャ、すなわち、ＧＯＰの第１のピクチャによって指定されたものと同じ画像を表すように符号化される。これにより、ＧＯＰ内の全てのピクチャは、同じに見える。例えば、一連のＧＯＰのそれぞれが１２個のピクチャを含み、各ピクチャがフレームであり、表示されるフレームレートが１２フレーム／秒である場合、見かけ上のフレームレートは、約２フレーム／秒になる。置換Ｐピクチャ及び置換Ｂピクチャは、ピクチャ結合器１１４に供給され、ピクチャ結合器１１４は、元の変更されていないＩピクチャを置換Ｐピクチャ及び置換Ｂピクチャに結合し、変更されたＭＰＥＧ２ビデオシーケンスを生成し、出力する。
【００２８】
図１０は、ＭＰＥＧ２ビットストリームを変更する処理の各ステップを示すフローチャートである。まず、ステップＳ１において、ＭＰＥＧ２ビットストリームのピクチャが入力される。ステップＳ２において、入力したピクチャがイントラ符号化ピクチャ（Ｉピクチャ）であるか、インタ符号化ピクチャ（Ｐピクチャ又はＢピクチャ）であるかを判定する。入力したピクチャがＩピクチャである場合、処理はステップＳ１に戻り、次のピクチャを受け取る。一方、入力したピクチャがＰピクチャ又はＢピクチャであると判定された場合、ステップＳ３において、現在のピクチャからピクチャデータを抽出する。そして、ステップＳ４において、抽出されたピクチャデータを圧縮し、圧縮されたピクチャデータを生成し、続いてステップＳ５において暗号化し、圧縮され暗号化されたピクチャデータを生成する。
【００２９】
ステップＳ２から続くステップＳ６において、置換ピクチャデータを生成する。図９に関して上述したように、置換ピクチャは、現在のピクチャの新たなピクチャデータによって表される画像がＧＯＰの最初のＩピクチャによって表される画像に一致するように生成される。そして、ステップＳ７において、圧縮され暗号化されたピクチャデータ及び置換ピクチャデータを結合し、対応する入力ビットストリーム部分を置換するための置換ビットストリーム部分を生成する。最後に、ステップＳ８において、ＭＰＥＧビットストリームのＩピクチャを置換ビットストリーム部分に再び挿入し、変更されたビットストリームを生成する。
【００３０】
図１１Ａ及び図１１Ｂは、上述したビデオシーケンスの変更の処理を図式的に説明する図である。具体的には、図１１Ａは、変更前のビデオシーケンスを表し、図１１Ｂは、上述の手法に基づいて変更された後の同じビデオシーケンスを表している。図１１Ａは、ピクチャ１〜１５の番号が付された１５個の連続したピクチャのシリーズを示している。これらのピクチャを比較すると、ピクチャ間に動きがあることがわかる。例えば、２５ピクチャ毎秒のフレームレートで実時間で表示させると、ピクチャ間の動き（inter-picture motion）は、円滑に見える。図１１Ｂに示すように、変更後のピクチャ１、１３は、図１１Ａのピクチャ１、１３と同じであり、ピクチャ２〜１２、１４及び１５は、図１１Ａの対応するピクチャとは異なっている。この具体例では、１２ピクチャの長さを有する（Ｉピクチャの後に１１個のＰピクチャ及び／又はＢピクチャが続く）ＧＯＰを用いており、ピクチャ１、１３は、Ｉピクチャであり、変更処理では変更されないため、同じである。一方、Ｉピクチャ以外のピクチャは、ＧＯＰのＩピクチャと同じに見えるように変更されるので、図１１Ｂのピクチャ２〜１２は、図１１Ｂのピクチャ１と同じになり、図１１Ｂピクチャ１４、１５は、図１１Ｂのピクチャ１３と同じになる。したがって、実時間で見ると、図１１Ｂのシーケンスは、見かけ上のフレームレートが２フレーム／秒のみであるため、不連続（jumpy）に見える。この見かけ上のフレームレートは、ビデオシーケンスの情報コンテンツを示すには十分であり、個々のピクチャの画質は損なわれていないが、この映像は使用には不完全である。したがって、対称暗号化が用いられている場合、第三者は、元のＰピクチャ及びＢピクチャデータを暗号化するために用いられた秘密鍵にアクセスし、元のデータを平文化し、完全なビデオシーケンスを復元する必要がある。
【００３１】
図１２Ａ及び図１２Ｂは、変更前（図１２Ａ）及び変更後（図１２Ｂ）のＭＰＥＧ２ピクチャ構造の具体例を示している。図１２Ａ、図１２Ｂのデータ構造は、それぞれピクチャヘッダ２０２、２０２’を有する。ピクチャヘッダ２０２、２０２’の後には、それぞれ第１のユーザデータブロック２０４、２０４’が続いている。なお、ビットストリームには、幾つのユーザデータブロックを設けてもよい。図１２Ａにおいて、ユーザデータブロック２０４の後には、現在のピクチャの画像値を表すピクチャデータ２０６が続いている。ピクチャデータ２０６のこのブロックは、抽出、圧縮及び暗号化され、ユーザデータブロック２０８としてビットストリームに挿入される。新たなユーザデータブロック２０８の次には、前のＩピクチャと同じに見えるように現在のピクチャを定義するために用いられる置換ピクチャデータ２１０が設けられている。ＭＰＥＧ２デコーダは、ピクチャを復号する場合、このユーザブロックの存在を無視し、置換ピクチャデータ２１０だけを復号し、画像を生成する。
【００３２】
図１３Ａ及び図１３Ｂは、変更前（図１３Ａ）及び変更後（図１３Ｂ）のＭＰＥＧ２スライス及びマクロブロック構造を示している。この具体例では、図１３Ａによって表される元のビットストリーム部分には、如何なるユーザデータも存在していない。図１３Ａに示すように、ピクチャヘッダ３０２は、ＭＰＥＧ２ビットストリーム内の新たなピクチャの開始を示す。スライスヘッダ３０４は、このピクチャヘッダ３０２の後に続き、現在のピクチャ内の新たなスライスの開始を示す。ピクチャヘッダ３０２に続き、他のピクチャヘッダの前に出現する全てのスライスは、同じ現在のピクチャに属する。スライスヘッダ３０４の後には、１つ以上のマクロブロックが続いている。この具体例では、マクロブロック３０６、３０８、３１０を含むＮ個のマクロブロックが設けられている。スライス内の最後のマクロブロック３１０の後には、新たなスライスの開始を示すために新たなスライスヘッダ３１２が設けられている。スライスヘッダ３０４と同様に、スライスヘッダ３１２の後には、この具体例では、マクロブロック３１４を含む１つ以上のマクロブロックが続いている。各スライスは、スライスの長さに応じて、多数のマクロブロックを含むことができる。例えば、標準精細度（ＳＤ）ピクチャの場合、スライスは、（スライスがピクチャの行全体を占める場合）最大４５個のマクロブロックを含み、高精細度（ＨＤ）ピクチャの場合、スライスは、最大１２０のマクロブロックを含むことができる。
【００３３】
図１３Ｂでは、図１３Ａのピクチャヘッダ３０２に対応するピクチャヘッダ３２０が設けられている。ピクチャヘッダ３２０の後には、図１３Ａのピクチャからの圧縮され暗号化された元のピクチャデータを格納するユーザデータブロック３２２が続いている。圧縮され暗号化された元のピクチャデータは、図１３Ａのビットストリーム内に存在する元のスライス及びマクロブロックを含む。ユーザデータブロック３２２の後には、図１３Ａのスライスヘッダ３０４に対応するスライスヘッダ３２４が続いている。スライスヘッダ３２４の後には、第１のマクロブロック３２６及び第２のマクロブロック３２８が続いている。すなわち第１のスライスでは、２つのマクロブロックだけが定義されている。なお、スライスは、実際には、マクロブロックの完全な行を表していてもよい。第１のスライスは、そのスライスが表す行の一部に関して、図１３Ａの第１のスライスに対応する。一具体例では、同じ数のスライスが図１３Ａによって表されるピクチャと、図１３Ｂによって表されるピクチャとを表すように、同じスライス構造を提供する。なお、各スライスがピクチャ内のマクロブロックの行全体に対応する新たなスライス構造を定義し、これにより、最小数のスライスを用いて変更されたピクチャを表現することが好ましい。これにより、置換ピクチャデータを定義するためのデータのビット数が小さくなり、符号化効率が向上する。
【００３４】
図１３Ｂの第１のスライスの２つのマクロブロックは、そのスライスの最初及び最後のマクロブロックである。ＭＰＥＧ２の定義では、ある状況では、全てのマクロブロックを送信しなくてもよい。送信されないマクロブロックは、「スキップされたマクロブロック」と呼ばれる。Ｐピクチャでは、スキップされたマクロブロックは、ゼロのＤＣＴ係数及びゼロの動きベクトルを有するマクロブロックとして定義される。Ｂピクチャでは、スキップされたマクロブロックは、ゼロのＤＣＴ係数及び前のマクロブロックと同じ動きベクトルを有するマクロブロックとして定義される。これらの定義から、この具体例の場合のように、スライスの最初及び最後のマクロブロックだけが送信され、これらの間の全てのスキップされたマクロブロックは、第１のマクロブロックと同じであると定義される。したがって、最初及び最後のマクロブロックをゼロのＤＣＴ係数及びゼロの動きベクトルに設定した場合、ピクチャがＰピクチャ又はＢピクチャであるかにかかわらず、スライス全体は、ゼロのＤＣＴ係数及びゼロの動きベクトルを有し、これにより、デコーダでは、スライスは、ＧＯＰ内の他のピクチャの対応する部分と同じに見えるように解釈される。
【００３５】
ピクチャの全ての行において、同じ原理を適用し、図１３Ｂに示すように、第２のスライスヘッダ３３０の後には、２つのマクロブロック３３２、３３４が続き、第３のスライスヘッダ３３６の後には、２つのマクロブロック３３８、３４０が続く。これにより、Ｂピクチャ又はＰピクチャの全体は、ＧＯＰ内の他のピクチャと同じになり、そして最終的には、前のＩピクチャと同じになるように復号されるように符号化することできる。
【００３６】
図１４Ａ〜図１４Ｄは、図１３Ｂに関して上述したような適切なマクロブロック構造を実現するために用いることができるＭＰＥＧ２コードを示している。上述したマクロブロック構造を実現するために、行の第１のスライスヘッダを変更する必要はなく、したがって、図１４Ａ〜図１４Ｄでは、スライスヘッダコードは定義されていない。図１４Ａ〜図１４Ｄでは、テーブルの第１の列にＭＰＥＧ２コードの具体例を示し、第２の列にコード識別子を示し、第３の列にコードが可変長符号（variable length code：ＶＬＣ）であるか固定長符号（fixed length code：ＦＬＣ）であるか及びコード長を示している。図１４Ａは、標準精細度（ＳＤ）Ｐピクチャの場合における、スライスの最初及び最後のマクロブロック（及びスキップされたマクロブロック及び全ての中間マクロブロック）を符号化するために必要であるＭＰＥＧ２コードを示すテーブルである。標準精細度ピクチャは、ＰＡＬフォーマット及びＮＴＳＣフォーマットの両方について、１ラインあたり７２０サンプルを含むことができ、１画像あたり５７６ラインを含むことができる。図１４Ａに示すＭＰＥＧ２コードは、スライスヘッダの後に設けられる。
【００３７】
第１のコードは、ｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔコード４０２である。これは、現在のアドレスをインクリメントし、現在のスライス内で特定のマクロブロック位置を指定する。この具体例では、マクロブロックアドレスは、＋１インクリメントされる。マクロブロックアドレスの初期値は、ゼロであり、したがって、ｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔコード４０２は、第１のマクロブロックを符号化するために、マクロブロックアドレスを１にインクリメントする。次のコードは、符号化されるマクロブロックの種類を指定するｍａｃｒｏｂｌｏｃｋ＿ｔｙｐｅコード４０４である。この場合、マクロブロックの種類は、ＤＣＴ値が符号化されない前方動き補償（motion compensated：ＭＣ）マクロブロックとして指定される。これに続くｆｒａｍｅ＿ｍｏｔｉｏｎ＿ｔｙｐｅコード４０６は、フレームピクチャのための予測タイプを設定し、この場合、フレーム予測に設定する。以下の２つのコードは、ｍｏｔｉｏｎ＿ｃｏｄｅ  ｈｏｒｉｚｏｎｔａｌ４０８及びｍｏｔｉｏｎ＿ｃｏｄｅ  ｖｅｒｔｉｃａｌ４１０であり、マクロブロックの水平方向及び垂直方向の動きベクトルを、この場合、ゼロに設定する。以上のコード４０２〜４１０は、スライス内の第１のマクロブロックを表す。テーブル内の残りのコードは、スライス内の最後のマクロブロックを表す。
【００３８】
最後のマクロブロックの第１のコードは、この場合、マクロブロックアドレスを＋３３インクリメントするために用いられるｍａｃｒｏｂｌｏｃｋ＿ｅｓｃａｐｅコード４１２である。２つのマクロブロックアドレスの間のアドレス差分が３３を超えている場合、ｍａｃｒｏｂｌｏｃｋ＿ｅｓｃａｐｅコード４１２は、ｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔコード４０２と組み合わせて用いられる。この具体例では、所望のマクロブロックアドレスは４５であり、これは、標準精細度ピクチャの行内の最後のマクロブロックのマクロブロックアドレスである。したがって、第１のマクロブロックのマクロブロックアドレス「１」から＋４４のインクリメントが必要である。したがって、テーブルからわかるように、ｍａｃｒｏｂｌｏｃｋ＿ｅｓｃａｐｅコード４１２を用いて＋３３のインクリメントを実現し、ｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔコード４１４で残りの＋１１を実現する。
【００３９】
ｍａｃｒｏｂｌｏｃｋ＿ｔｙｐｅコード４１６、ｆｒａｍｅ＿ｍｏｔｉｏｎ＿ｔｙｐｅコード４１８、ｍｏｔｉｏｎ＿ｃｏｄｅ  ｈｏｒｉｚｏｎｔａｌ４２０、ｍｏｔｉｏｎ＿ｃｏｄｅ  ｖｅｒｔｉｃａｌ４２２は、全て、第１のマクロブロックについて用いられる対応するコード４０４〜４１０と同じであり、行の最初及び最後のマクロブロックが同じになり、これらは、ゼロの動きベクトル及びゼロの差分値により予測符号化される。上述したように、ＭＰＥＧ２デコーダは、これらの最初及び最後のマクロブロックの間に、スライス内のこれらの最初及び最後のマクロブロックと同じスキップされたマクロブロックを埋め込む。
【００４０】
図１４Ｂは、行、したがって、スライスが１２０個のマクロブロックを含む高精細度ピクチャの場合の図１４Ａと同様のテーブルを示す。高精細度ピクチャは、ＰＡＬフォーマット及びＮＴＳＣフォーマットの両方について、１ラインあたり１９２０個のサンプルを含み、１画像あたり１０８０のラインを含み、又は１ラインあたり１２８０個のサンプルを含み、１画像あたり７２０のラインを含む。図１４Ａ及び図１４Ｂにおいて、同じ機能を有する同じコードには、同じ参照符号を付し、図１４Ｂに関して同じ説明は繰り返さない。なお、図１４Ｂの場合、３つのｍａｃｒｏｂｌｏｃｋ＿ｅｓｃａｐｅコード４３２、４３４、４３６及びｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔコード４３８を用いて、１から１２０までの＋１１９の必要なインクリメントを実現する。図１４Ｂで用いられている他の全てのＭＰＥＧ２コードは、図１４Ａのコードに対応している。
【００４１】
図１４Ｃは、１行あたり４５個のマクロブロックを有する標準精細度（ＳＤ）Ｂピクチャの場合において、最初及び最後のマクロブロックを符号化するために必要であるＭＰＥＧ２コードを示すテーブルである。図１４Ａ及び図１４Ｃにおいて、同じ機能を有する同じコードには、同じ参照符号を付し、図１４Ｃに関して同じ説明は繰り返さない。なお、図１４Ｃの場合、ｍａｃｒｏｂｌｏｃｋ＿ｔｙｐｅコードが異なり、マクロブロックは、ＤＣＴ値が符号化されない後方動き補償（motion compensated：ＭＣ）マクロブロックとして設定される。これは、図１４Ａの場合と異なる点であり、Ｂピクチャについて前方予測を行ってもよいが、ＭＰＥＧ２規格の下では、Ｂピクチャ内のマクロブロックについて後方予測を行う方が好適である。
【００４２】
図１４Ｄは、行、したがって、スライスが１２０個のマクロブロックを含む高精細度ピクチャの場合の図１４Ｃと同様のテーブルを示す。図１４Ｃ及び図１４Ｄにおいて、同じ機能を有する同じコードには、同じ参照符号を付し、図１４Ｄに関して同じ説明は繰り返さない。なお、図１４Ｄの場合、３つのｍａｃｒｏｂｌｏｃｋ＿ｅｓｃａｐｅコード４５０、４５２、４５４及びｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔコード４５６を用いて、１から１２０までの＋１１９の必要なインクリメントを実現する。図１４Ｄで用いられている他の全てのＭＰＥＧ２コードは、図１４Ｃのコードに対応している。
【００４３】
図１４Ａ〜図１４Ｄの列３からわかるように、マクロブロックの各対を表すために用いられるビット数は、図１４Ａ、図１４Ｃの標準精細度の場合、３３ビットであり、図１４Ｂ、図１４Ｄの高精細度の場合、５８ビットである。上述した処理により生じる追加的データに関して、スライスの第１のマクロブロックは、常に存在しており、したがって、第１のｍａｃｒｏｂｌｏｃｋ＿ａｄｄｒｅｓｓ＿ｉｎｃｒｅｍｅｎｔは、常に＋１であり、したがって、データ量の増加分から除外することができる。したがって、更なるビット数は、標準精細度及び高精細度について、それぞれ、１スライスあたり３２ビット及び５７ビットに削減される。これは、標準精細度の場合、１ピクチャあたり１１５２ビットが追加され、高精細度の場合、１ピクチャあたり３８７６ビットが追加されることを意味する。更に、スライスヘッダに存在するスライス開始コードは、常にバイトアライン（byte-aligned）され、したがって、スライスを記述するデータは、整数バイトになるようにパディングされる。したがって、実際のデータの増加量は、上に示したものより僅かに大きくなることがある。なお、パディングビットは、潜在的に、データを保存することができる。
【００４４】
ビットストリームウォッシング装置
図９に示す装置によって変更されたビットストリームから元のビットストリームを再構築するビットストリームウォッシング装置（bitstream washing apparatus）を図１５に示す。ビットストリームウォッシング装置は、変更されたＭＰＥＧビットストリームを受け取り、ビットストリームの現在のピクチャが、イントラ符号化ピクチャ（Ｉピクチャ）であるか、インタ符号化ピクチャ（Ｐピクチャ又はＢピクチャ）であるかを判定するＰ／Ｂピクチャ検出器５１０を備える。検出された現在のピクチャがＩピクチャである場合、そのピクチャには如何なる変更も施されていないので、処理は不要である。検出された現在のピクチャがＰピクチャ又はＢピクチャである場合、現在のピクチャに関連するビットストリームの一部は、元の形式に戻すために処理される。
【００４５】
現在のピクチャがインタ符号化ピクチャである場合、抽出器５２０が元のピクチャを表すビットストリームの一部を抽出する。抽出器５２０は、抽出したビットストリームの一部を平文化器５３０に供給し、平文化器５３０は、暗号化器において、データを暗号化するために用いられた暗号化アルゴリズムに基づいて、データを平文化し、元の圧縮されたデータを復元する。通常、これの処理では、平文化を実行するための鍵を受け取る必要がある。なお、この鍵は、暗号化器及び平文化器の両方にプレコーディングしてもよく、この場合、鍵の伝送は不要である。図９を参照して説明したように秘密鍵を使用する場合、鍵は、受信側に送信する前に、非対称ＰＫＩ暗号化を用いて更に保護してもよい。
【００４６】
平文化器５３０は、平文化の後、元の圧縮されたピクチャデータを伸長器５４０に供給し、伸長器５４０は、圧縮されたピクチャデータを伸長して、元のピクチャデータを再構築する。ビットストリームウォッシング装置は、ビットストリーム内の残りの変更されていないデータ及び伸長器から供給された再構築されたピクチャデータから元のＰピクチャ及びＢピクチャを再生するインタ符号化ピクチャ生成器５５０を備える。受信ビットストリーム内に存在している置換ピクチャデータは、取り除かれ、削除される。そして、再生された元のＰピクチャ及びＢピクチャは、ピクチャ結合器５６０に供給され、ピクチャ結合器５６０は、元の、変更されていないＩピクチャと、再生された元のＰピクチャ及びＢピクチャとを結合し、変更が戻されたＭＰＥＧ２ビデオシーケンス（washed MPEG2 video sequence）を生成する。この場合、可視のビデオシーケンスを生成するためにＭＰＥＧ２ビデオを復号するＭＰＥＧ２デコーダ５７０も設けている。なお、後に使用するために、変更が戻されたＭＰＥＧ２ビデオを単に保存してもよい。
【００４７】
図１６は、図１５に示す装置が受信したＭＰＥＧ２ビットストリームに施された変更を元に戻す際に実行されるステップのフローチャートである。まず、ステップＳ１１において、変更されたＭＰＥＧ２ビットストリームのピクチャを受け取る。次に、ステップＳ１２において、受け取ったピクチャがイントラ符号化ピクチャ（Ｉピクチャ）であるかインタ符号化ピクチャ（Ｐピクチャ又はＢピクチャ）であるかを判定する。受け取ったピクチャがＩピクチャである場合、処理は、ステップＳ１１に戻り、次のピクチャを受け取る。一方、受け取ったピクチャがＰピクチャ又はＢピクチャであると判定された場合、ステップＳ１３において、現在のピクチャからピクチャデータを抽出する。次に、ステップＳ１４において、抽出されたピクチャデータを平文化して圧縮されたピクチャデータを生成し、ステップＳ１５において、これを伸長して元のピクチャデータを再構築する。そして、ステップＳ１６において、ビットストリームの変更されていない部分及び再構築されたピクチャデータを結合し、対応する受信ビットストリームの一部を置換する再生された元のビットストリームの一部を生成し、これをビットストリーム内の変更されていないＩピクチャに結合し、再生された元のビットストリームを生成する。
【００４８】
図１７は、本発明の第２の実施形態に基づくビットストリーム変更装置のブロック図である。図１７において、図９の要素と同じ部分には同一の参照符号を付し、ここでは説明を繰り返さない。図９の場合と同様に、この具体例のビットストリーム変更装置は、ビデオ信号が入力され、ＭＰＥＧ２符号化されたビデオビットストリームを出力するＭＰＥＧエンコーダ１０２を備えるが、このビットストリーム変更装置は、単に予め生成されたＭＰＥＧ２ビットストリームを受け取ってもよい。ＭＰＥＧ２ビットストリームは、Ｐ／Ｂピクチャ検出器１０４に供給され、Ｐ／Ｂピクチャ検出器１０４は、ビットストリームの現在のピクチャがイントラ符号化ピクチャ（Ｉピクチャ）であるかインタ符号化ピクチャ（Ｐピクチャ又はＢピクチャ）であるかを判定する。検出された現在のピクチャがＰピクチャ又はＢピクチャである場合、図９を用いて上述した手法と同じ手法により、現在のピクチャに関連するビットストリームの一部を変更する。一方、検出された現在のピクチャがＩピクチャである場合、ウォータマークエンコーダ１１６がＩピクチャに可視ウォータマークを挿入する。ＭＰＥＧ２のコンテキストで可視のウォータマークを付与する処理は、当分野で既知であり、通常、ビットストリーム内のＩピクチャのＤＣＴ係数を変更する処理を伴う。また、Ｐピクチャ及びＢピクチャを変更することもできるが、この具体例では、変更されたＰピクチャ及びＢピクチャは、Ｉピクチャを参照するのみであり、変更されたＰピクチャ及びＢピクチャは、参照により、Ｉピクチャに適用された如何なるウォータマークも表現するため、Ｐピクチャ及びＢピクチャに個別に変更を施すことは無意味である。可視のウォータマークを付与する処理では、元のＩピクチャから取り除いたデータを暗号化してもよい。Ｐピクチャ及びＢピクチャの元のデータをユーザデータブロックに格納する上述の処理と同様に、ウォータマークが付されたＩピクチャに関連するビットストリーム内の暗号化されたデータをユーザデータブロックに保存してもよい。ウォータマーキング処理において、鍵を用いてＩピクチャから取り除いたデータを暗号化する場合、ウォータマークエンコーダ１１６及び暗号化エンコーダ１１０の両方において、同じ鍵を用いてもよい。
【００４９】
図１７の抽出器１０６、圧縮エンコーダ１０８、暗号化エンコーダ１１０及びインタ符号化ピクチャ生成器１１２は、図９の場合と同様に動作するため、ここでは説明を繰り返さない。図９の実施形態と同様に、置換Ｐピクチャ及び置換Ｂピクチャは、前のＩピクチャによって指定された画像、すなわちＧＯＰの第１のピクチャの画像を表すように、符号化される。これにより、ＧＯＰ内の全てのピクチャは同じに見える。
【００５０】
ピクチャ結合器１１４は、図９の場合と同様に、Ｉピクチャと、置換Ｐピクチャ及び置換Ｂピクチャとを結合するが、この場合、Ｉピクチャには、ウォータマークエンコーダ１１６によりウォータマークが付されている。したがって、デコーダは、１秒のビデオシーケンスあたり、全てにウォータマーク（例えば、ロゴ）が付された２つピクチャをユーザに表示する。
【００５１】
このように、図１７に示す構成におけるビットストリームを変更する処理は、検出されたＩピクチャにウォータマークを付す更なるステップ、及びウォータマークが付されたＩピクチャを変更されたＰピクチャ及びＢピクチャに結合する変更されたステップを除いて図９と同じである。
【００５２】
図１８Ａ及び図１８Ｂは、図１７に関して上述したビデオシーケンスの変更の処理を図式的に説明する図である。具体的には、図１８Ａは、変更の前のビデオシーケンスを表し、図１８Ｂは、上述の手法に基づいて変更された後の同じビデオシーケンスを表している。図１８Ａは、ピクチャ１〜１５の番号が付された１５個の連続したピクチャのシリーズを示している。これらのピクチャを比較すると、ピクチャ間に動きがあることがわかる。例えば、２５ピクチャ毎秒のフレームレートで実時間で表示させると、ピクチャ間の動きは、円滑に見える。図１８Ｂに示すように、変更の後、ピクチャ１、１３は、ウォータマーク「Ｓ」が加わっている点を除けば、図１８Ａのピクチャ１、１３と同じであるが、ピクチャ２〜１２、１４、１５は、ウォータマークが加わっているだけではなく、そのコンテンツについても、図１８Ａの対応するピクチャと異なっている。この具体例では、１２ピクチャの長さを有する（Ｉピクチャの後に１１個のＰピクチャ及び／又はＢピクチャが続く）ＧＯＰを用いており、ピクチャ１、１３は、Ｉピクチャであり、Ｐピクチャ及びＢピクチャを変更する変更処理では変更されないため、同じ（ウォータマークの付加を除く。）である。一方、Ｉピクチャ以外のピクチャは、ウォータマークを含むように変更されたＧＯＰのＩピクチャと同じに見えるように変更されるので、図１８Ｂのピクチャ２〜１２は、図１８Ｂのピクチャ１と同じになり、図１８Ｂピクチャ１４、１５は、図１８Ｂのピクチャ１３と同じになる。したがって、実時間で見ると、図１８Ｂのシーケンスは、静的なウォータマークと共に、見かけ上のフレームレートが２フレーム／秒のみであるため、不連続（jumpy）に見える。
【００５３】
図１７に示す装置によって変更されたビットストリームから元のビットストリームを再構築するビットストリームウォッシング装置を図１９に示す。図１９において、図１５の要素と同じ部分には同一の参照符号を付し、ここでは説明を繰り返さない。ビットストリームウォッシング装置は、変更されたＭＰＥＧビットストリームを受け取り、ビットストリームの現在のピクチャがイントラ符号化ピクチャ（Ｉピクチャ）であるか、インタ符号化ピクチャ（Ｐピクチャ又はＢピクチャ）であるかを判定するＰ／Ｂピクチャ検出器５１０を備える。検出された現在のピクチャがＰピクチャ又はＢピクチャである場合、図１５を参照して上述した手法に基づき、現在のピクチャに関連するビットストリームの一部を処理し、元の形式に戻す。
【００５４】
Ｉピクチャが検出されると、Ｉピクチャは、ウォータマーク除去器（watermark washer）５８０に供給され、ウォータマーク除去器５８０は、ウォータマーキング処理と同じ秘密鍵を用いて、Ｉピクチャからウォータマークを除去し、元のデータを復元する。
【００５５】
また、抽出器５２０、平文化器５３０、伸長器５４０及びインタ符号化ピクチャ生成器５５０は、それぞれ図１５の構成と同様に動作する。再生された元のＰピクチャ及びＢピクチャは、ピクチャ結合器５６０に供給され、ピクチャ結合器５６０は、変更が戻されたＩピクチャと、再生された元のＰピクチャ及びＢピクチャとを結合し、変更が戻されたＭＰＥＧ２ビデオシーケンスを生成する。この場合、可視のビデオシーケンスを生成するためにＭＰＥＧ２ビデオを復号するＭＰＥＧ２デコーダも設けている。なお、後に使用するために、変更が戻されたＭＰＥＧ２ビデオを単に保存してもよい。ビットストリーム変更装置の場合と同様に、ビットストリームウォッシング装置は、平文化器５３０及びウォータマーク除去器５８０の両方で同じ秘密鍵を用いてもよい。
【００５６】
第２の実施形態として、ビットストリームのＩピクチャに可視ウォータマークを適用し、同じ装置で、実質的に同時にビットストリームのＰピクチャ及びＢピクチャに変更を施す装置を開示した。このような構成は、２つの処理が、例えば、Ｉ、Ｐ、Ｂピクチャの検出及びＩ、Ｐ、Ｂピクチャの結合等、共通の処理要素を共有でき、これらを共に実行することが望ましいため、有利である。なお、これに代えて、先にウォータマークが付されたＭＰＥＧ２ビットストリームに第１の実施形態の装置及び方法を適用してもよく、この場合も、第２の実施形態と実質的に同じ結果が得られる。更に、独立したウォータマーク付加装置により、第１の実施形態のビットストリーム変更装置が生成したビットストリームにウォータマークを付加してもよく、この場合も、第２の実施形態と実質的に同じ結果が得られる。
【００５７】
ビットストリーム変更装置及びビットストリームウォッシング装置は、専用の装置として実現してもよく、適切なソフトウェアを実行するコンピュータとして実現してもよい。
【図面の簡単な説明】
【００５８】
【図１】画像フレームの概略図である。
【図２】画像フレームの８×８の画素のブロックの概略図である。
【図３】ＤＣＴブロックの概略図である。
【図４】マクロブロックの概略図である。
【図５】マクロブロック及びスライスの行の概略図である。
【図６】グループオブピクチャ（ＧＯＰ）の概略図である。
【図７】ピクチャデータの１つのフレームの概略図である。
【図８】１つのマクロブロックのビットストリームの概略図である。
【図９】本発明の第１の実施形態に基づくビットストリーム変更装置の概略図である。
【図１０】本発明の第１の実施形態に基づくビットストリーム変更方法の概要を示すフローチャートである。
【図１１Ａ】例示的なビットストリームに対する第１の実施形態のビットストリーム変更方法の作用を説明する概略図である。
【図１１Ｂ】例示的なビットストリームに対する第１の実施形態のビットストリーム変更方法の作用を説明する概略図である。
【図１２Ａ】変更前のＩピクチャ又はＢピクチャの構造を示す概略図である。
【図１２Ｂ】変更後のＩピクチャ又はＢピクチャの構造を示す概略図である。
【図１３Ａ】変更前のマクロブロック構造を示す概略図である。
【図１３Ｂ】変更後のマクロブロック構造を示す概略図である。
【図１４Ａ】図１３Ｂのマクロブロック構造を実現するために用いられるＭＰＥＧ２コードのテーブルの具体例を示す図である。
【図１４Ｂ】図１３Ｂのマクロブロック構造を実現するために用いられるＭＰＥＧ２コードのテーブルの具体例を示す図である。
【図１４Ｃ】図１３Ｂのマクロブロック構造を実現するために用いられるＭＰＥＧ２コードのテーブルの具体例を示す図である。
【図１４Ｄ】図１３Ｂのマクロブロック構造を実現するために用いられるＭＰＥＧ２コードのテーブルの具体例を示す図である。
【図１５】図９及び図１０に示す装置及び方法によって変更されたビットストリームを元に戻すビットストリームウォッシング装置の構成を示す図である。
【図１６】ビットストリームウォッシング方法の手順を示すフローチャートである。
【図１７】本発明の第２の実施形態に基づくビットストリーム変更装置の概略図である。
【図１８Ａ】例示的なビットストリームに対する第２の実施形態のビットストリーム変更方法の作用を説明する概略図である。
【図１８Ｂ】例示的なビットストリームに対する第２の実施形態のビットストリーム変更方法の作用を説明する概略図である。
【図１９】図１７に示す装置によって変更されたビットストリームを元に戻すビットストリームウォッシング装置の構成を示す図である。
【図１】
2006325199.tif 000003
【図２】
2006325199.tif 000004
【図３】
2006325199.tif 000005
【図４】
2006325199.tif 000006
【図５】
2006325199.tif 000007
【図６】
2006325199.tif 000008
【図７】
2006325199.tif 000009
【図８】
2006325199.tif 000010
【図９】
2006325199.tif 000011
【図１０】
2006325199.tif 000012
【図１１Ａ】
2006325199.tif 000013
【図１１Ｂ】
2006325199.tif 000014
【図１２Ａ】
2006325199.tif 000015
【図１２Ｂ】
2006325199.tif 000016
【図１３Ａ】
2006325199.tif 000017
【図１３Ｂ】
2006325199.tif 000018
【図１４Ａ】
2006325199.tif 000019
【図１４Ｂ】
2006325199.tif 000020
【図１４Ｃ】
2006325199.tif 000021
【図１４Ｄ】
2006325199.tif 000022
【図１５】
2006325199.tif 000023
【図１６】
2006325199.tif 000024
【図１７】
2006325199.tif 000025
【図１８Ａ】
2006325199.tif 000026
【図１８Ｂ】
2006325199.tif 000027
【図１９】
2006325199.tif 000028
【外国語明細書】
2006325199000001.pdf
2006325199000002.pdf
2006325199000003.pdf
2006325199000004.pdf