(57)【特許請求の範囲】
【請求項１】
コード化されたビットストリーム中にデータを埋め込むための方法であって、ここで、コード化されたビットストリームが、複数のスライスヘッダ及び各スライスヘッダに後続する複数のマクロブロックを有し、各スライスヘッダは、少なくとも１つのマクロブロックをコード化するための、コード化された構文要素を有しており、
前記スライスヘッダに後続する第１のマクロブロック内の明示的にコード化された構文要素が、前記スライスヘッダ内のコード化された構文要素と同じ値を有する場合には、データ・インサータが、ビデオビットストリーム付加情報として、前記スライスヘッダ内の構文要素に、同じ形式で異なる値を有するデータを挿入するステップを含む方法。
【請求項２】
前記スライスヘッダ内の構文要素を前記挿入する前の値に戻すステップをさらに含む請求項１に記載の方法。
【請求項３】
前記コード化されたビットストリームが、ＭＰＥＧ及びＭＰＥＧライクコーディングのいずれかに従ってコード化される請求項１に記載の方法。
【請求項４】
コード化されたビットストリーム中にデータを埋め込むための方法であって、ここで、コード化されたビットストリームが、複数のスライスヘッダ及び各スライスヘッダに後続する複数のマクロブロックを有し、各スライスヘッダは、少なくとも１つのマクロブロックをコード化するための、コード化された構文要素を有しており、
前記スライスヘッダに後続する第１のマクロブロック内の潜在的にコード化された構文要素が、前記スライスヘッダ内のコード化された構文要素と同じ値を有する場合には、該第１のマクロブロック内の潜在的にコード化された構文要素を、前記スライスヘッダ内のコード化された構文要素と同じ値を含む明示的な構文要素に変換するステップと、
データ・インサータが、ビデオビットストリーム付加情報として、前記スライスヘッダ内の構文要素に、同じ形式で異なる値を有するデータを挿入するステップと
を含んでなる方法。
【請求項５】
前記スライスヘッダ内の構文要素を前記挿入する前の値に戻すステップをさらに含む請求項４に記載の方法。
【請求項６】
コード化されたビットストリーム中にデータを埋め込むための装置であって、ここで、コード化されたビットストリームが、複数のスライスヘッダ及び各スライスヘッダに後続する複数のマクロブロックを有し、各スライスヘッダは、少なくとも１つのマクロブロックをコード化するための、コード化された構文要素を有しており、
前記スライスヘッダに後続する第１のマクロブロック内の明示的にコード化された構文要素が、前記スライスヘッダ内のコード化された構文要素と同じ値を有する場合には、ビデオビットストリーム付加情報として、前記スライスヘッダ内の構文要素に、同じ形式で異なる値を有するデータを挿入するデータ・インサータを含む装置。
【請求項７】
コード化されたビットストリーム中にデータを埋め込むための装置であって、ここで、コード化されたビットストリームが、複数のスライスヘッダ及び各スライスヘッダに後続する複数のマクロブロックを有し、各スライスヘッダは、少なくとも１つのマクロブロックをコード化するための、コード化された構文要素を有しており、
前記スライスヘッダに後続する第１のマクロブロック内の潜在的にコード化された構文要素が、前記スライスヘッダ内のコード化された構文要素と同じ値を有する場合には、該第１のマクロブロック内の潜在的にコード化された構文要素を、前記スライスヘッダ内のコード化された構文要素と同じ値を含む明示的な構文要素に変換する、エンコーダと、
ビデオビットストリーム付加情報として、前記スライスヘッダ内の構文要素に、同じ形式で異なる値を有するデータを挿入するデータ・インサータと
を含んでなる装置。
【請求項８】
コード化されたビットストリーム中にデータを埋め込むためにコンピュータによって読み取ることができる命令を記憶している記憶媒体であって、該コード化されたビットストリームは、複数のスライスヘッダ及び各スライスヘッダに後続するマクロブロックを有し、各スライスヘッダは、少なくとも１つのマクロブロックをコード化するための、コード化された構文要素を有しており、前記命令は、前記コンピュータに実行されると、前記コンピュータに対し、
前記スライスヘッダに後続する第１のマクロブロック内の明示的にコード化された構文要素が、前記スライスヘッダ内のコード化された構文要素と同じ値を有する場合には、ビデオビットストリーム付加情報として、前記スライスヘッダ内の構文要素に、同じ形式で異なる値を有するデータを挿入させる手順を実行させるものである、記憶媒体。
【請求項９】
コード化されたビットストリーム中にデータを埋め込むためにコンピュータによって読み取ることができる命令を記憶している記憶媒体であって、該コード化されたビットストリームは、複数のスライスヘッダ及び各スライスヘッダに後続するマクロブロックを有し、各スライスヘッダは、少なくとも１つのマクロブロックをコード化するための、コード化された構文要素を有しており、前記命令は、前記コンピュータに実行されると、前記コンピュータに対し、
前記スライスヘッダに後続する第１のマクロブロック内の潜在的にコード化された構文要素が、前記スライスヘッダ内のコード化された構文要素と同じ値を有する場合には、該第１のマクロブロック内の潜在的にコード化された構文要素を、前記スライスヘッダ内のコード化された構文要素と同じ値を含む明示的な構文要素に変換させる手順と、
ビデオビットストリーム付加情報として、前記スライスヘッダ内の構文要素に、同じ形式で異なる値を有するデータを挿入させる手順と
を実行させるものである、記憶媒体。
【発明の詳細な説明】
【０００１】
本発明は、エンコードされたデジタルデータにデジタルデータを埋め込むことに関し、特に、そのための方法及び装置に関する。
【０００２】
ビデオ又はオーディオエンターテイメント、ビデオ又はフィルムイメージ、コンピュータープログラム、コンピュータ生成情報、文学的材料又は他のデータコンテンツ又は、プログラミング及びインターネット、ＣＤ−ＲＯＭ、ＤＶＤ、地球型及び人工衛星ブロードキャスト、などを含むそのソースに関わらず、ますます情報はデジタルフォームで利用可能になっている。このようなデジタル情報は、データ又は情報の損失又は破壊なしでしばしばコピーされるデジタルフォームのデータ又は情報の能力のために、合法の手段以外によりこのようなコンテンツ又はプログラムを盗用するために追求するハッカー及び泥棒にとってのより大きな興味である。このような高品質のコピーは、実際、記録媒体以外の費用なく且つ迅速に海賊及び他によって行われることができる。
【０００３】
このような行為に対する１つの防御が、ファイアウォール、反コピー方式、暗号化など等の、セキュリティ方式によって提供され、それは、保護されたデジタル情報の未許可のコピーを防止するために障害かバリアを提供することを意図している。セキュリティ方式との相補型は、デジタル情報に一意の識別特性を提供する認識方式であり、コピーされるか、著作権を侵害されると、コピーは、例えば、著作権オーナーの識別を認証するためにコピーされたファイルのソース及び起源を証明するために使用されることのできる識別特性を含む。これへの物理的なアナログは、オーナーの名前を物理的な対象物に刻み込むことである。好ましくは、識別情報は、海賊又は泥棒がそれを認識しないように隠され、その正しいオーナーにコピーされたコンテンツをトレースすることを妨げることを意図してそれを消さない。これへの物理的なアナログは、その後盗まれた自動車及びその部分を識別するための自動車の連続番号での自動車部品のマークであり、通常それは場所を見いだすのが明白でないか困難である。
【０００４】
情報は、いかなる数のコード化方式にでもよってデジタルフォームで伝送のためにエンコードされ、それは、たとえば、国際規格化機構、ジュネーブ、スイスによって広められたコード化規格等の国際規格ＩＳＯ／ＩＥＣ  １３８１８−１、「情報技術−一般的なコーディングまたは映画及び関連オーディオ：システム」、（ＭＰＥＧ−２  システムと一般に言及される）、及び国際規格ＩＳＯ／ＩＥＣ  １１１７２−２及びＩＳＯ／ＩＥＣ  １３８１８−２、「情報技術−一般的なコーディングまたは映画及び関連オーディオ：ビデオ」（それぞれＭＰＥＧ−１ビデオ及び、ＭＰＥＧ−２ビデオと言及される）である。
【０００５】
識別情報は、従来、例えば正しくデコードされるとき、望ましくは再生するデータにおいて明瞭でない方法で、信号コーディングの間、オーディオ又はビデオピクセルのグループに対して、ピクセルサンプルをわずかに改良することによってＭＰＥＧ−２標準でコード化される情報に埋め込まれる。この技術は、書類の通常のウォーターマークへのその類似性のためにしばしば「デジタルウォーターマーク」と言及され、製造業者のビジュアル表示（例えば、ステーショナリに関する）又はその発信者、又はそれについて行われる文書又は装置の確実性（例えば株券及び通貨）を提供する。埋め込まれたデジタルウォーターマーク情報が、ビデオ信号自身に挿入され（ピクセル−ドメイン技術）又は圧縮ＭＰＥＧ又はＭＰＥＧライクビデオビットストリーム（圧縮ドメイン技術）に挿入されるかに否かに関わらず、ノーズライクパターンがビデオの上に置かれるという点で、通常、代表的なビューワのビジュアル閾値以下のレベルにビデオ特性をある程度必然的にグレードを落す。
【０００６】
通常、ＭＰＥＧ−２コーディングにより、ウォーターマークがデータの圧縮の間か後のどちらでも挿入されても、それがピクセル領域にあるので、特定の不利は起こる。例えば、ＭＰＥＧ圧縮は、（ウォーターマークは適度な追加のデコーディング及びレコーディングを生き残らなければならないが）ウォーターマークを除去するかグレードを落すだろう。それに加えて、ウォーターマークは、再生像又は他のデータ等の明瞭でなく又は、デコードされたデータのグレードを落さないために、低レベルでなければならない。そして、例えば、非常に低いビット速度、例えば６４ビット／フレームより少ないものだけに制限され、より高いビット伝送速度、例えば１５０−３４０のビット／フレーム又はそれ以上）が所望であるところでは有効でない。更に、ウォーターマークは、もし同じデータの２つのコピー（ウォーターマークのないオリジナル及びウォーターマークを入れられたコピー又は２つの異なるようにウォーターマークを入れたコピーなど）に、アクセスするならば、容易に検出され、マップされ、それから取り外される。
【０００７】
従って、デコードされたデータのグレードを落さない方法で識別し、又は、コード化したデジタルデータに挿入される他の情報の必要性がある。通常のデータウォーターマークで利用できるものより、挿入された情報のビットレートが実質的に高いことも望ましい。
【０００８】
このために、本発明の方法は、コード化されたビットストリームにデータを埋め込み、コード化されたビットストリームは、その値は、複数位置でコード化されることができる少なくとも１つの構文要素を有し、他の位置でコード化される値を考慮に入れることを優先する。当該方法は、
優先する構文要素位置にある１つの構文要素の値をコード化することと、
埋め込まれたデータを他の構文要素位置に挿入することと、を含む。
【０００９】
本発明の更なる見地に従うと、コード化されたビットストリームで、データを埋め込むためのコーダは、ヘッダ及びデータブロックを有し、
コード化されたビットストリームは少なくとも１つの構文要素を有し、
それは、ヘッダで及びデータブロック位置でコード化されることができ、少なくとも１つの構文要素を有するビットストリームをコード化するための手段を含み、それは、ヘッダで及びデータブロック位置でコード化されることができ、ヘッダ及びデータブロック位置のうちの１つにおいてコード化される値は、ヘッダ及びデータブロック位置の他でコード化される値を考慮に入れることを優先しており、ヘッダ及びデータブロック位置のうちの１つに優先する際に１つの構文要素の値をコード化するための手段を含み、埋め込まれたデータをヘッダ及びデータブロック位置の他に挿入するための手段を含む。
【００１０】
【発明の実施の形態】
本発明の好ましい実施形態の詳細な説明は、図面と共に読むとより容易に理解されるであろう。
【００１１】
図面では、構成要素又は特徴が複数の図面図で示されるところでは、同じ英数字記号が、各々の図でこのような構成要素又は特徴を表すために使用されるだろう。また密接に関連した又は改良された構成要素が図示されるところでは、プライム記号をつけられた同じアルファベット数字的記号が、改良された構成要素又は特徴を表すために使用されるだろう。同じように、同様の構成要素又は特徴は、図面の異なる図で同類の英数字記号で、また明細書の中の同様の名称によって表されるだろう。しかし、図面で説明される実施形態に固有の数字に先行される。例えば、特定の構成要素は、１つの図で「ｘｘ」、他の図では「１ｘｘ」、他の図「２ｘｘ」等によって表されるだろう。
【００１２】
ここで使用されるように、「ウォータマーキング」は、ＭＰＥＧ又はＭＰＥＧライクコード化標準に従ってコード化される信号で、信号コーディングの間、オーディオ又はビデオサンプルのグループのために、ピクセルサンプルを改良することによって、情報を埋め込むことを指し、「ウォーターマーク」はウォータマーキングによって埋め込まれる情報を指す。ウォーターマーク情報は、妥当なＭＰＥＧ又はＭＰＥＧライクコード化標準に従って動作している標準のデコーダーによって作り出されるデコードされた信号に存在する。埋め込まれたデジタルウォーターマーク情報は、（ピクセル−ドメイン技術）信号自身又は圧縮ＭＰＥＧか又はＭＰＥＧライクビットストリーム（圧縮ドメイン技術）に挿入されるか否かに関わらず、ビデオ特性は、そのノイズ−ライクでいくらかの量に必然的にグレードを落され、又は、通常、聴覚及び／又は視覚知覚の閾値の下のレベルで他のパターンがオーディオ及び／又はビデオにスーパーインポーズされる。
【００１３】
ここで使用されるように、「データ隠蔽」はＭＰＥＧ又はＭＰＥＧライクコード化標準に従ってコード化された信号に情報を埋め込むことを指し、情報がオーディオ又はビデオピクセルのピクセルサンプルを変更することなくコード化された信号構文に埋め込まれ、「陰データ」は、埋め込まれる又は、隠れているデータによって埋め込まれるべき情報を指す。陰データは、妥当なＭＰＥＧ又はＭＰＥＧライクコード化標準に従って動作する標準デコーダーによって作り出されるデコードされた信号に存在しない。
【００１４】
「ＭＰＥＧ」又は「ＭＰＥＧライク」コード化標準は、コード化された構文を使用する他のどのコード化標準と同様に識別されるＩＳＯ／ＩＥＣ規格を指し、それは、いかなるパラメーター又は値の冗長又は複数の明細書を含むことができ、無関係なデータによって、全体又は一部の冗長又は複数の明細書のうちの少なくとも１つが置き換えられることができる。ＭＰＥＧは、ＭＰＥＧ−１及び／又はＭＰＥＧ−２及び／又は次のＭＰＥＧ規格を含む。
【００１５】
図１は、データ埋め込み装置１０の例示的な実施形態の略ブロック図であり、本発明に従って隠れているデータを使用する。デジタルフォーマットのビデオデータが、ＭＰＥＧビデオエンコーダー等のビデオエンコーダー２０に加えられ、ＭＰＥＧ又はＭＰＥＧライクコード化標準に従って、ビデオをコード化する。矢印２２は、本発明のＭＰＥＧエンコーダー２０の１つの実施形態が、ＭＰＥＧ標準記載のビデオデータをコード化することに加えて改良されることを示し、下記のように陰データの形でコード化されたビデオ付加情報で挿入し又は埋め込まれる。そのケースで、ＭＰＥＧエンコーダー２０によって作り出されるビットストリーム２４は、ＭＰＥＧ又はＭＰＥＧライク標準に従ってコード化される準拠ビットストリームであり、本発明に従った陰データ含み、陰データインサータ４０は必要でない。
【００１６】
任意に、ビデオデータは、通常のウォーターマークインサータ１２（想像線で示す）によって処理される。それは、ウォータマーキングパターンを、コーダ２０に加えられるビデオデータに先立ってそのピクセルサンプルに加える。ビデオデータの通常のウォータマーキングとともに本データ隠蔽発明を使用することが好ましい。
【００１７】
代替えとして、標準のＭＰＥＧエンコーダー２０が、ＭＰＥＧ標準コード化標準に従ってコード化される入力ビデオデータを含むビットストリームを作り出してもよい。その後、ビットストリーム２４は陰データインサータ４０によって処理される。そしてそれは、下記のように陰データの形でコード化されるＭＰＥＧにビデオビットストリーム付加情報を挿入する。それによって作り出されるビットストリームは、ＭＰＥＧ又はＭＰＥＧライク標準に従ってコード化されるビットストリームであり、本発明に従った陰データを含み、中にデータが隠されたビットストリームはＭＰＥＧ又はＭＰＥＧライク標準に準拠しており、標準に準拠したデコーダーによってデコードされることができる。
【００１８】
陰データがＭＰＥＧ及びＭＰＥＧライク構文要素に直接に埋め込まれるので、ビデオ構成要素の相関劣化がなく、従って、信号がデコードされるとき作り出されることができるビデオの特性への劣化がない。明白なように、データの隠蔽に、低諸経費の付属機器及びコード化された情報が提供され、更に、通常のウォータマーキング方法によって提供されたより実質的に高い隠された情報に対するデータレートを提供する。
【００１９】
図２Ａ及び２Ｂは、ＭＰＥＧ又はＭＰＥＧライクコード体系に従ったスライス１３０及びマクロブロック１４０でコード化された例示的なデジタルデータの図である。コード化データのフレーム１００は、ロー１１２、１１４、１１６などのロー連続順序で、多くのロー１１０に編成される。強制的なスライスヘッダ１２０は、いずれの行１１０の初めにも要求され、続くマクロブロック１４０での情報のコーディングに関連する構文情報を含む（図２Ａ及び２Ｂの各々の正方形はマクロブロック１４０を表示している）。従って、強制的なスライスヘッダ１２２は、そのすぐ後に続く３つのマクロブロック１４０に関連する構文情報を含み、強制的なスライスヘッダ１２４は、その直後に続く１０のマクロブロック１４０、その他に関連する構文情報を含む。
【００２０】
ローは、１と全体のローのマクロブロック１４０の数の間のいかなる数のスライス１３０も含むだろう。一列のスライスの数もスライスのマクロブロックの数も、同じものである必要はなく、又はスライスからスライスまで又は行から行まで始終一貫している必要はない。ロー１１２は、例えば３つのスライス１３０を含む、第一番目は３つのマクロブロック１４０を含み、第二番目は５つのマクロブロック１４０を含み、第三番目は６つのマクロブロック１４０を含む。ロー１１４は、例えば２つのスライス１３０を含む、第一番目は１０のマクロブロック１４０を含み、第二番目は４つのマクロブロック１４０を含む。各々のスライス１３０は、一個のマクロブロック１４０だけを含むことができるが、コード化されたビットストリームのたくさんのビットを含まなければならない、情報のコーディング及びコーディングの計算の強度においてあまり効率的でない。ロー１１８等のローは、例えば、ロー１１８でマクロブロック１４０の全てを含む一個スライス１３０であり、一般に最高のコーディング効率を提供する装置である。
【００２１】
図２Ｂのフレーム１００で、各々のローは、そのローでマクロブロック１４０の全てを含む１つのスライス１３０を含む。フレーム１００は、例えば、ラスター走査イメージの表示で、従来、テレビ及び他のビデオ提示フォーマットで利用されているように垂直に数Ｖのラインがあり、水平に数Ｈのピクセルサンプルがある。各々のロー１１０は、ラスター走査順序デコード化されるピクセルサンプルの水平ラインに対応している複数マクロブロック１４０を含むスライス１３０である。複数のロー−スライス１１０−１３０は垂直走査順序でのフレーム１００を含む。この種類のフレームコーディングは、ビデオ情報がＭＰＥＧ−２ビデオコード化標準に従ってコード化されるとき利用され、それは典型的「メインプロファイル」用途であり、例えば、地球型のトランスミッタ又は直接放送衛星から、あるいは、有線テレビ、インターネット、ＣＤ−ＲＯＭ、ＤＶＤ又は他の伝送媒体のを越えたデジタルテレビジョン伝送のような放送及びマルチメディアである。スライスは、ＭＰＥＧ−２メインプロファイル映像コード化で、全体のローより少なくなることができるが、それは、実際不必要なビットオーバーヘッドによるケースであまりない。ＭＰＥＧ−１ビデオコード化標準で、スライスは、ラスター走査順序でのマクロブロックを有し、１つのマクロブロックと同じくらい小さくなることができ、全体のフレームと同じくらい大きくなることができる。
【００２２】
図３Ａ、３Ｂ及び３Ｃは、図２Ａ及び２Ｂのコード化されたデジタルデータフレーム１００等の、ＭＰＥＧ又はＭＰＥＧライクコード化デジタルデータの数「ｎ」コード化マクロブロック１４０の例示的なスライス１３０の図である。図３Ａの例示的なスライス１３０は、複数のマクロブロック１４０ａ、１４０ｂ、１４０ｃ、．．．１４０ｎによって続かれるスライスヘッダ１２２を含む。ビデオ情報は、妥当なＭＰＥＧ又はＭＰＥＧライクコード化標準に従って、各々のスライスヘッダで及び各々のマクロブロックデコード化される。例えば、ＭＰＥＧ−２ビデオコード化で各々のコード化されたマクロブロック１４０は、ピクセルサンプルのクロミナンスのサブサンプリングされたアレイを含む輝度ピクセルサンプルの１６×１６アレイを含み、そして、コード化された信号ビットストリーム内に、フレームごとにＶ／１６ロー及びローごとにＨ／１６マクロブロックがある。例えば、上から下まで４８０の水平スキャンラインを含む標準の定義ビデオ画像で、フレームは、４８０／１６  ＝３０のスライスを含み、図２Ｂで示すようにマクロブロックのローにつき１つのスライスを仮定する。そのマクロブロックを含むいかなる８×８のブロックのいかなる構成要素係数の少なくとも１つの量子化された離散余弦変換（ＤＣＴ）が、ゼロ以外の値を有するときはいつでも、ＭＰＥＧマクロブロックは「コード化」と呼ばれる。
【００２３】
輝度及びクロミナンスのためのピクセルサンプルに加えて、各々のコード化されたマクロブロックは、マクロブロックヘッダでコーディング構文情報又は構成要素を含む。ＤＣＴ係数のコーディング、従って、デコーダーがそのマクロブロックでＤＣＴ係数をデコードする際に動作しなければならない方法を指定する。これらの構文要素は、マクロブロックで明示的にコード化されるだろう、すなわち、要素値は実際に指定され、マクロブロックヘッダで含まれ、又はマクロブロックが構文要素値を含まない場合、要素値が暗にコード化され、先のスライスヘッダ又はマクロブロックで指定されるように、マクロブロックは構文要素値に従ってデコードされる。
【００２４】
そのような要素値は、量子化スケールコード又はＱＳＣであり、それは、ピクセルサンプル圧縮コーディングで、加えられたスケーリング量子化に関連があり、それは、それらのサンプルをデコードする際に使用されることになっている。ＱＳＣは、明示的にコード化されるか、又は各々のマクロブロック１４０で暗にコード化されるだろう。しかし、各々のスライスヘッダ１２０で明示的にコード化されなければならない。従って、ＱＳＣ構文要素の値は、ＭＰＥＧコード化されたビットストリームの２つの異なる「層」（スライス層及びマクロブロック層）でコード化される。図３Ａ、３Ｂ及び３Ｃで、明示的にコード化されたＱＳＣは、マクロブロック１４０又はスライスヘッダ１３０の中の数によって表示され、暗にコード化されたＱＳＣは、括弧の中の数によって表示される。ＱＳＣは、ＭＰＥＧ−１及びＭＰＥＧ−２コード化標準で、「０００００」を除いてどんな値でもとることができる５−ビットワードである。
【００２５】
図３Ａにおいて、例示的なＭＰＥＧスライス１３０は、「４」の明示的にコード化されたＱＳＣ値を有するスライスヘッダを含む。スライスヘッダ１２２に直接に続くマクロブロック１４０ａ、１４０ｂは、明示的にコード化されたＱＳＣ値を有さず、それらがスライスヘッダ１２２で指定されるＱＳＣ値を利用するように、中の「（４）」で示すように暗にコード化する。マクロブロック１４０ｃは、「５」の明示的にコード化されたＱＳＣ値を有し、それは、すぐ後続のマクロブロック１４０ｄ、１４０ｅ及び１４０ｆに暗にコード化される値である。このスライスの最後のマクロブロック１４０ｎは、値「６」で明示的にコード化され、直接に続くスライスヘッダ１２４は、同様に「７」その他の異なる明示的にコード化されたＱＳＣ値を有する。従って、マクロブロック１４０内の、明示的及び潜在的ＱＳＣコーディングを使用することで完全な自由があるが、しかし、明示ＱＳＣコーディングは、スライスヘッダ１２２、１２４に対して強制的である。一般的に、ＱＳＣ値は、マクロブロックからマクロブロックに多くを変化せず、増加するコード化効率のために、スライスヘッダデコード化されるＱＳＣ値から異なる場合だけ、マクロブロックＱＳＣは明示的にコード化され伝えられる。スライスＱＳＣ値が常に明示的にコード化されるので、他のＱＳＣ値が明示的にコード化されるまで、その値は次のマクロブロックによって、スライス又はマクロブロック層、すなわち次のスライスヘッダ又はマクロブロックヘッダのどちらでも使用される。マクロブロック層のＱＳＣの潜在的コーディングは、通常操作でビットをセーブする。
【００２６】
図３Ｂでは、ＭＰＥＧスライス１３０は、「４」の明示的にコード化されたＱＳＣ値を有するスライスヘッダを含む。この例では、しかし、スライスヘッダ１２２に直接に続いているマクロブロック１４０ａは、「４」の明示的にコード化されたＱＳＣ値を有し、その後のマクロブロック１４０ｂは明示的にコード化されたＱＳＣ値を有さず、マクロブロック１４０ｂで「（４）」で示すように、暗にマクロブロック１４０ａで指定されるＱＳＣ値を利用するためにコード化する。マクロブロック１４０ｃから１４０ｎは、図３Ａのものと同じように明示的に且つ暗にコード化され、スライスヘッダ１２４及び直後のマクロブロックはＱＳＣ値「７」に明示的にコード化される。従って、スライスヘッダ１２２に続く第一のマクロブロック１４０ａが明示的にコード化されたとき、すなわち、コード化されたマクロブロックであるとき、スライスヘッダ１２２、１２４デコード化された強制的に明示的にコード化されたＱＳＣ値が、圧縮ビットストリームのデコーディングで無視される冗長又は余分な情報を含むことが見られる。
【００２７】
本発明に従うと、スライスヘッダのＱＳＣ値の強制的な明示コーディングで含まれるこの冗長な情報は、スライスヘッダのＱＳＣ構文要素コーディング位置を利用しているデータチャネルを作成するために取り外されるだろう。この情報が各々のスライスヘッダに続いている第一のコード化されたマクロブロックで、ＱＳＣ値の明示コーディングのために、本当に冗長であるので、通常のウォータマーキングのケースのように、マクロブロック、スライス及びフレームのどこデコード化されるビデオ情報も劣化がない。明示及び潜在的ＱＳＣコーディングを使用して完全な自由がマクロブロック１４０で残る一方、本発明に従うと、コード化している明示ＱＳＣは、各々のスライスヘッダに続いている第一のコード化されたマクロブロックのために強制的になる。
【００２８】
図３Ｃに、本発明に従ったスライスヘッダ１２２、１２４その他で陰データチャネルを含むスライス１３０を示す。スライスヘッダ１２２に続く第一のコード化されたマクロブロック１４０ａは、ＱＳＣ値「４」に明示的にコード化され、各々のスライスの第一のコード化されたマクロブロック１４０は、また、明示的にＱＳＣ値でコード化する。陰データ又は「シークレットメッセージ」は、各々のスライスヘッダで強制的コード化されたＱＳＣ値と置換される（例えば、スライスヘッダ１２２での値「９」及びスライスヘッダ１２４での値「３」）。ＭＰＥＧ−１（ＩＳＯ／ＩＥＣ  １１１７２−２）及びＭＰＥＧ−２（ＩＳＯ／ＩＥＣ  １３８１８−２）ビデオ仕様の中の、量子化スケールコードの５ビットのＱＳＣ構文要素コーディングは、ビデオに無関係なデータが挿入されるラインデータチャネルごとに５ビットを提供し、フレームごとに１５０のビット又は第二データレートにつき４５００ビットを有するデータチャネルを提供する。言及したように、禁止されたＱＳＣコード値「０００００」を避けるニーズのため、実際のデータレートはわずかにより少ない。
【００２９】
準拠ＭＰＥＧ−１又はＭＰＥＧ−２デコーダーがスライスヘッダのＱＳＣ構文要素位置で埋め込まれる陰データを無視することに注意されたい。それは、それらが直後のそれぞれの第一のコード化されたマクロブロックに含まれる明示的にコード化されたＱＳＣ値によって優先されるからである。改良された準拠ＭＰＥＧデコーダーは、陰データをスライスヘッダから抜き出すことができ、説明されるように、下記及びこのような抜き出されたデータは多くの異なる目的のために利用されることができる。
【００３０】
図４は、本発明に従って有効なデータインサータ２４０及びマクロブロックコーダー２２０の例示的な実施形態の略ブロック図である。改良されたＭＰＥＧ−２エンコーダー２２０に加えられるビデオデータは、ＭＰＥＧ−２準拠ビットストリームを作り出すためにＭＰＥＧ−２コード化標準に従ってコード化される圧縮である。加えて、エンコーダー２２０でのコード化は、各々のスライスヘッダに続く第一コード化マクロブロックに、量子化スケールコード構文要素の値が明示的にコード化されるという点で改良され、各々のスライスヘッダでのＱＳＣ構文コーディング位置が冗長なＱＳＣ値データを含むようなっている。スライスヘッダでのこれらのＱＳＣ構文コード化位置は、データが挿入されるデータチャネルを提供し、どのデータが、陰データであって及びビデオデータに少しも関連がある必要はない。データインサータ２４０は、スライスヘッダＱＳＣ構文要素位置で形成されるデータチャネルを有するビットストリームを受け取り、ＭＰＥＧ−コード化標準に準拠し、データチャネルで陰データを含むビットストリームを作り出すためにそのデータチャネルへの所望のデータ「データイン」挿入する。最終的に、中で隠されるデータインデータ及び準拠ビットストリームは、そこからビデオデータを抜き出すために標準のＭＰＥＧ準拠デコーダー（図示せず）に加えられ、また、データチャネルで隠されるデータイン位置するデータリムーバ２６０に加えられ、すなわちスライスヘッダのＱＳＣ構成要素位置で、データチャネルからの埋め込まれ又は隠されたデータインデータを抜き出してデータアウトと同じものを再生させる。
【００３１】
圧縮ビデオビットストリームでの陰データの埋め込みがビデオビットストリームのコーディングとともに、容易且つ自動的に収容されるので、図４の実施形態が好まれることに注意をされたい。具体的には、改良されたコーダ２２０の速度制御機能は、各々のスライスの第一のコード化されたマクロブロックのＱＳＣ値を明示的にコード化することによって導入された追加のビットを自動的に考慮し、そして、コード化標準を有する準拠圧縮コード化ビデオビットストリームを作り出す。
【００３２】
図４の改良されたＭＰＥＧ−２エンコーダー２２０の操作が図５に関して理解されるだろう。それは、ＭＰＥＧかＭＰＥＧライクコード化装置で、スライスコーディングループの方法を図示した概略図流れ図である。スライスが提供され２２２、スライスヘッダがその中で形成され２２４、ＱＳＣ構文要素の５ビット値を受け取るための位置を含めてＭＰＥＧコード化標準に従って必要な構文要素コード化を受け取るために適合される。各々のスライスヘッダに続く第一のコード化されたマクロブロックは、ＱＳＣ構文要素の値で明示的にコード化される２２６。スライスでのマクロブロックの残りは、スライスのマクロブロックの全てがコード化するまで標準的な態様でコード化される２２８。次のスライスが次に得られ２２２、過程はスライスにエンコードされるデータがある限り繰り返す。
【００３３】
図４のデータインサータ２４０の操作は、図６に関して理解されるだろう。それは、ＭＰＥＧ又はＭＰＥＧライクコーディング装置でコード化したビットストリームでデータを陰データチャネルに挿入するか、埋め込む方法を図示した概略図流れ図である。データインサータ２４０は、次の出来事のスライスヘッダのためにデータチャネルを有するビットストリームを検索する２４２。スライスヘッダが位置するとき、データインサータ２４０は、埋め込まれるか、その中で隠されるデータインデータでスライスヘッダのＱＳＣ値を置き換える２４２（それはｍ各々のスライスの第一のコード化されたマクロブロックが明示的にＱＳＣ値デコード化されるので、冗長である）。ＭＰＥＧ−１及びＭＰＥＧ−２規格のコード化５ビットＱＳＣ値で、陰データ又はシークレットメッセージデータインは、５ビットのフォームにデジタルワードを持っていくだろう。そこで１ビットは常に「１」で、常に、禁止されたＱＳＣ値「０００００」を避ける。従って、例えば、「ｂｂｂｂ」がデータインデータでの次の４つのビットである値「ｂｂｂｂ１」によって、スライスＱＳＣ値は、置き換えられる。すなわち、データインであるデータは、４ビットセグメントに組織され、４ビットセグメントがＭＰＥＧ準拠ビットストリームのスライスヘッダで陰データチャネルに挿入される。１つのビットが常に「１」であるので、これが陰データが約２０％伝えられるデータレートを縮小するが、８ビットデータ（各々のバイトは、８ビットを有する）を有することは、非常に都合がよく、そこで、４つの最上位ビットが１つのスライスヘッダで埋め込まれ、４つの最小桁のビットが、次のスライスヘッダで埋め込まれる。ＱＳＣ値のための補充データとしてデータインデータを受け取るために利用できるいかなるスライスヘッダもなくなるまで、又は、埋め込まれるいかなるデータインもなくなるまでデータ補充を続ける２４６。
【００３４】
スライスヘッダでデータインデータをＱＳＣ値にマップすることは、「ｂｂｂｂ１」又は「１ｂｂｂｂ」の例示的な単純なフォーム、又は値「１」へのどんな１つの特定のビットセットにも関連して、値「０００００」が避けられる限り４ビットのデータの他の変化をとる必要はない。例えば、データの９ビットセグメント（例えばバイト）の連続の各々は、「０００００」値を避ける２つの連続した５ビット記号にマップされることができる。更なる例によって、標準の鮮明ビデオ画像で、データの連続した１４９−ビットセグメントは、「０００００」値を避けるそれぞれ５ビットの３０の記号にマップされることができる。それが盗用又は他の隠されたダット（ｄａｔ）を含むビデオビットストリームの未許可のコピーを行う可能性を低減することは、データが、スライスヘッダに埋め込まれるスライスレベルデータチャネルで埋め込まれることを発見し、スライスヘッダでのＱＳＣ位置へのデータのより洗練されたマッピングが利用されるだろう。例えば、スライスヘッダのＱＳＣ位置の陰データ値が、第一のコード化されたマクロブロックで明示的にコード化されたＱＳＣ値に近いことを確実とし、ビットストリームが構文の見解から自然に作り出されたビットストリームにより似ているようにする。データがコード化されたビデオビットストリームのすべてのスライスヘッダに挿入される必要があるというわけではないことにも注意をされたい。
【００３５】
図４のデータリムーバ２６０の操作が、図７に関して理解されるだろう。それは、ＭＰＥＧ又はＭＰＥＧライクコーディング装置に従ったビットストリームで陰データチャネルで隠れた又は埋め込まれたデータを取り外す方法を図で示している概略図流れ図である。データリムーバ２６０は、各々のスライスの第一のコード化されたマクロブロックが明示的にコード化されたＱＳＣ値を含むかどうかを決定する２６２。もしそうでなければ、陰データチャネルはなく、データリムーバ２６０はそこからデータを抜き出そうとする試みを停止することができる２７０。いかなるＭＰＥＧコード化ビットストリームも少なくともいくらかのスライス（第一のコード化されたマクロブロックは、明示的にコード化されたＱＳＣ値を含む）を含みそうであるので、多くのこのようなブロックは、陰データチャネルを含むビットストリームが受け取られているという確信で決定がなされる前にスライスの連続で存在しなければならない。そのために、その第一のコード化されたマクロブロックで、明示的にコード化されたＱＳＣ値を有している「Ｓ」の連続スライスが受け取られたとき、データリムーバ２６０は決定し２６２、そこでＳは信頼の所望の程度を提供する多くの十分な大きさである。小さすぎるＳが選択されるならば、このようなデータチャネルが受け取られたビットストリーム（すなわち偽りの検出）で存在しないリムーバ２６０は、ある場合に陰データを陰データチャネルから抜き出すためことを試みる。他方、Ｓが大きすぎる場合、データリムーバ２６０が受け取られたビットストリームが陰データチャネルを含み、そこからデータを抜き出すのを開始すると決定する前に、いくらかの陰データは消失するだろう。
【００３６】
データリムーバ２６０が陰データチャネルが受け取られたビットストリームで存在すること可能性があることを決定すると２６２、それは、次のスライスヘッダのために探索２６４によってそこから陰データを抜き出すことを開始する。それは、スライスヘッダのコード化されたＱＳＣ値の第一の４つを抜き出し２６６、すなわち、それは、データがフォーム「ｂｂｂｂ１」である陰データの「ｂｂｂｂ」値を上のように抜き出す。陰データの抜き出された４つのビットは、データアウトファイル又はレジスタにストアされる。どのようなスライスヘッダも見いだされないまで、あるいは、スライスヘッダがデータをもはや含まないまで、データリムーバ２６０は２６８を続ける。
【００３７】
陰データは抜き出されて４ビット増加量でストアされるが、データは都合がいい態様でデータアウトとして作り出されるだろう。例えば、４つのビットデータバイトは、それらがスライスヘッダから受け取られたビットストリームに抜き出されるとシフトレジスタ又は他のメモリに刻時されることができ、リアルタイムで８ビット並列のワードに本質的に読出される。また、例えば４つのビットデータバイトは、メモリでストアされることができ、後にいかなる都合がいいフォーマットでも読み出される。
【００３８】
図８は、マクロブロックコーダー３２０及び有効な本発明に従うデータインサータ３４０の代替え例示的な実施形態の略ブロック図である。標準のＭＰＥＧ−２エンコーダー３２０に加えられるビデオデータは、ＭＰＥＧ−２準拠ビットストリームを作り出すＭＰＥＧ−２コード化標準に従って圧縮されたコード化である。データチャネルクリエータ及びデータインサータ３４０は、エンコーダー３２０によって作り出されるＭＰＥＧ準拠ビットストリームを、各々のスライスヘッダに続く第一のコード化されたマクロブロックで、明示的に量子化スケールコード構文要素の値をコード化することによって改良し、各々のスライスヘッダでのＱＳＣ構文コーディング位置が冗長ＱＳＣ値データを含むようになっている。スライスヘッダでのこれらのＱＳＣ構文コード化している位置は、データが挿入されるだろうデータチャネルを提供し、このデータは、陰データであってビデオデータに少しも関連がある必要はない。データチャネルクリエータ及びインサータ３４０は、所望のデータ「データイン」をＭＰＥＧ−コード化標準に準拠しビットストリームを作り出すためにスライスヘッダＱＳＣ構文要素位置で作成されるデータチャネルに挿入し、データチャネルで陰データを含む。最終的に、準拠ビットストリーム及びその中に隠されるデータインデータは、そこからビデオデータを抜き出すために標準のＭＰＥＧ準拠デコーダー（図示せず）に加えられ、また、データリムーバ２６０に加える。それは、データチャネルで隠されるデータイン位置し、すなわちスライスヘッダのＱＳＣ構成要素位置で、データチャネルからの埋め込まれるか隠されたデータインデータを抜き出して及びデータアウトと同じものを再生させる。
【００３９】
データチャネルクリエータの操作及び図８のインサータ３４０は、図９に関して理解されるだろう。それは、スライスヘッダでデータチャネルを作成し、ＭＰＥＧかＭＰＥＧライクコード化ビットストリームで、データをその中に挿入している方法を図示した概略図流れ図である。データチャネルクリエータ及びインサータ３４０は、次の出来事スライスヘッダのためのＭＰＥＧコード化ビットストリームを検索する３４２。スライスヘッダが配置されるとき、それに関連するスライスの第一のコード化されたマクロブロックが明示的にコード化されたＱＳＣ値を有するか否か決定することが検査される３４４。決定３４４がＹＥＳであるならば、次に３４０のデータインサータ部分は、ＱＳＣスライスヘッダの値が埋め込まれる又は中に隠されるデータインデータで置き換える３４６（各々のスライスの第一のコード化されたマクロブロックが明示的にＱＳＣ値デコード化されるので、冗長である）。上のように、陰データ又はシークレットメッセージデータインは、５ビットのフォームにデジタルワードを持っていき、そこでは１つのビットはＱＳＣ値「０００００」を避けるために常に「１」である。従って、「ｂｂｂｂ」が次のデータインデータの４つのビットである値「ｂｂｂｂ１」によって、スライスＱＳＣ値は置き換えられる３４６。すなわち、データインであるデータは、４ビットセグメントに組織され、４ビットセグメントは、ＭＰＥＧ準拠ビットストリームのスライスヘッダで、陰データチャネルに挿入される。次のスライスヘッダのための検索３４２が、次に再開し、位置されるスライスがその第一のコード化されたマクロブロックで、明示的にコード化されたＱＳＣ値を有する限り、上述の操作が繰り返される。すなわち、決定３４４はＹＥＳである。
【００４０】
スライスの第一のコード化されたマクロブロックが明示的にコード化されたＱＳＣ値を有しないならば、決定３４４はＮＯであり、スライスヘッダのＱＳＣ値がセーブされる、例えば、ランダムアクセスメモリー又は他の適切なメモリで、「オリジナルのスライスＱＳＣ」と呼ばれる。３４０のデータインサータ部分は、スライスヘッダでのＱＳＣ値を、その中で埋め込まれ又は隠されるデータインデータ３５２を置き換える。すなわち、「ｂｂｂｂ」が次の４つのビットである値「ｂｂｂｂ１」によって、スライスＱＳＣ値は、データインデータに置き換えられる３５２。ＱＳＣ値データをスライスにリストアするために、第一のコード化されたマクロブロックは、マクロブロックヘッダを変えることによって変えられ３５４、それを反映するために、明示的にコード化されたＱＳＣ値は、ＱＳＣ値がまだ中デコード化されていないにも関わらずその中で含まれる。その結果、スライスヘッダでＱＳＣ値構文要素位置であるどんな冗長なデータでもコード化している画像が関係する限り与えられ、それによって陰データのためにデータチャネルを作成する。具体的には、マクロブロックヘッダは、「ｍａｃｒｏｂｌｏｃｋ＿ｔｙｐｅ」可変長符号（ＶＬＣ）を新しいＶＬＣ値に変えることによって変えられる３５４、それは、（ＭＰＥＧ−２標準ＩＳＯ／ＩＥＣ  １３８１８−２のＢ−８への表Ｂ−２に従って）コード化している明示ＱＳＣを示して「ｍａｃｒｏｂｌｏｃｋ＿ｑｕａｎｔ」＝  １を示す。これらの２つの操作は、一般的に６−９のビットを第一のコード化されたマクロブロックのコード化されたサイズに加える、又は、標準の鮮明度イメージフレームに約１８０−２７０のビットを加える。ＶＢＶアンダーフローを避けるために、フレームごとのビットのコード化された数は、下記のように縮小される。オリジナルのスライスＱＳＣ値は、次にメモリから検索される。そのスライスの第一のコード化されたマクロブロックのヘッダに明示的にコード化される３５６。スライスに加えられる追加のビットの数Ｍは、下記のように後で使用するコード化される全体の画像のために累積される３５８。画像が完全でないならば、決定３５８はＮＯであり、プロセスはスライスヘッダのための探索３４２に戻り説明されるまでプロセスを繰り返し、明示的にコード化されたＱＳＣ値を有するようにピクチャーの全てのスライスが変えられるまで、陰データの４ビットセグメントにより、各々のスライスの第一のコード化されたマクロブロック及びスライスヘッダでの全てのＱＳＣ値で置き換えられる３５２。
【００４１】
画像の全てのスライスがそのように処理されたとき、決定３５８はＹＥＳになる。数Ｍは、次に画像に対してＭＰＥＧ−２コード化されたビットストリームに加えられた追加のビットの総数を反映し、比較されて３６０、もしあればビットストリームで存在する画像レベルのゼロのスタッフィング（画像スタッフィング）の量を決定する。画像スタッフィングは、バッファを修正するための、標準のＭＰＥＧエンコーダーによって画像のビデオビットストリームに加えられる余分のビット、及び消失するデータに結果的になるデコーダービデオバッファー検査機（ＶＢＶ）バッファのオーバーフローを防止するための圧縮ＭＰＥＧコード化ビットストリームのビットカウントに関連がある。データチャネルクリエータ及びインサータ３４０によって受け取られるビデオビットストリーム３４０は画像スタッフィングを含まず、そのビットは、少しの画像情報も伝えない。
【００４２】
テスト３６０は、画像スタッフィングビットが存在するかどうか決定する。画像スタッフィングビットが存在するならば、テスト３６０の結果はＹＥＳであり、スタッフィングビットを数Ｍビットまで縮小する（すなわち取り外す）３６２。これは、コード化された構文と合致したビットカウントをリストアする好ましい方法である。スライスヘッダでの陰データチャネルを作成し、スライスの第一のコード化されたマクロブロックへＱＳＣ値を加えることによって、画像スタッフィングビットの数ＮSは、ビットストリームに加えられるビットの数Ｍを超えると、Ｍビットのこの減算３６２は、ビットストリームのビットカウント構文をリストアし、それは、デコーダーＶＢＶバッファをオーバーフロー又はアンダーフローせず、及び追加のビットを取り外す必要がなく、それで、決定３６４はＮＯである。陰データのためのデータチャネルの作成及びその中のデータの挿入が完了し、この画像に対するビットカウント構文の挿入及び補正が完了する３６８。全ての画像がそのように処理されるまで、プロセスは続き、スライスヘッダがこれ以上なく、挿入される陰データもこれ以上ない。
【００４３】
付加されたビットの数Ｍがスタッフィングビットの数ＮSを超えると、ＮSスタッフィングビットが減じられた後、過剰なＭ−ＮSビットがビットストリームに残り、そしてビットを減ずるニーズがまだあり、決定３６４はＹＥＳである。ビットの過剰が残り、ＶＢＶバッファがアンダーフローすることができる可能性があるので、少なくとも少数の例での最少で、余分のビットの数は小さい。これは、ちょうど処理される画像の構文をレコードすることによって避けられることができる。それで、そのビットカウント及び構文コーディングは、既知のビットレート制御スキームを使用してコード化標準に準拠する。
【００４４】
代替えとして、過去の画像を再加工することがそのビデオビットストリームのストア及びかなりの処理を要求するので、実際的な代替は、次の次の画像（及びおそらくその後の１つ以上の画像）のビットカウントを調整することで、２つ以上の連続した画像のビットカウントを均等にする。このために、次の画像でのマクロブロックは、全ての過剰なＭ−ＮSビットが補償されるまで、好ましくは次のＢ−フレーム画像で及びあまり好ましくないが次のＰ−フレーム画像で、過剰Ｍの全くより高いＱＳＣ値、又はスキップされたマクロブロックでレコードされる３６６。ＱＳＣ値のための補充データとしてデータインデータを受け取るために、又はこれ以上の埋め込まれるデータインがないように、利用できるどのようなスライスヘッダもなくなるまで、データ補充及び／又はデータチャネル作成３５８及びビットカウント補正３６８は続く。
【００４５】
データがコード化されたビデオビットストリームのすべてのスライスヘッダに、挿入される必要があるというわけではないので他の代替が起こり、明示的に第一のコード化マクロブロックをコード化することを停止することができ、スライスヘッダでデータを挿入する。例えば、例えば、ＶＢＶバッファのアンダーフローから又は構文的にコード化標準に準拠しないビットストリームを行うのに十分な、すでにコード化されたビデオビットストリームの各々のスライスの第一のコード化されたマクロブロックの明示コーディングが多くの追加のビットを導入するところで、データチャネルクリエータ及びインサータ３４０の操作を一次停止することによって次のフレームまで隠れているデータが一時停止されることができる。ＱＳＣ記号の特定の値は確保され、ビデオビットストリームで隠れているデータの開始及び終端を示すために使用される。代替えとして隠れているデータのサスペンションにピクチャーフレーム内の選択されたでマクロブロックは、より高いＱＳＣ値で再量子化され、ビデオビットストリームで要求されるビットの数を縮小し、ＶＢＶバッファアンダーフローが避けられる。ビデオ特性の最小の劣化を有するビデオビットレートを低減するための、圧縮ビデオの再量子化のための他の方法が知られている。
【００４６】
図４及び８の実施形態も、陰データがデコーダー２６０によってリカバーされることができることを図で示す。ビデオビットストリームが例えば、例えば認証目的のためにデコードされるとき、利用でき、再エンコード化され、必要に応じて、ビデオビットストリームがある時は、再−コード化される。
【００４７】
本発明は、コンピュータ実施プロセス、及び／又はこのようなコンピュータ−実施されたプロセスを実行するための装置又はプロセスとして具体化されることができ、また、コンピュータープログラムを含んでいる現実の記憶媒体又は他の機械で読み取ることができるインストラクション（ここで「コンピュータープログラム）の形で具体化することができ、コンピュータープログラムがコンピュータ又は他のプロセッサー（ここで「コンピュータ」）にロードして及び／又はコンピュータによって実行されるとき、コンピュータは、本発明を行うための装置になる。例えば、このようなコンピュータープログラムを含む記憶媒体としては、フロッピーディスク及びディスケット、コンパクトディスク（ＣＤ）−ＲＯＭ（書き込み可能か否かに関わらず）ＤＶＤデジタルディスク、ＲＡＭ及びＲＯＭメモリ、コンピュータハードディスク及びバックアップドライブ、及びコンピュータによって読取り可能な他のどの記憶媒体もある。例えば、発明はまた、記憶媒体でストアされるか、電気伝導体、光ファイバー又は他の光導体等の伝送路の上に伝えられるか、あるいは、電磁放射によるかどうかに関係なく、コンピュータープログラムの形で具体化されることができ、コンピュータープログラムがコンピュータにロードされおよび／又はコンピュータによって実行されると、コンピュータは、発明を行うための装置になる。特に本発明を実施するために構成された汎用マイクロプロセッサー又はデジタルプロセッサーで特に実施されるだろう。汎用マイクロプロセッサーが使用されるとき、コンピュータプログラムコードは特性論理回路装置を作成するのマイクロプロセッサーの回路を構成する。
【００４８】
図１０は、装置本発明に従って埋め込んだデータの例示的な用途の略ブロック図である。ネットワークソース又はポストプロダクションハウスのソース４００は、１つ以上の関係ブロードキャスター等の１つ以上の受け側４３０へ本発明に従ってコード化されたビデオ情報を伝える。ビデオは汎用フォーマットとして言及されるどんなフォーマットででも始めることができるだろう。フォーマットコンバーター４１０によって所望の寄与フォーマットに変換される。例えば、汎用フォーマットは、１秒レートにつき２４又は３０フレームの、赤、緑及び青（ＲＧＢ）のピクセルの１０ビットとしてフォーマットされる１９２０の×１４４０のピクセルイメージであるだろう。そして、１９２０の×１０８０のピクセルイメージに返還されるだろう。寄与フォーマットビデオビットストリームは、図４及び８で示されるコーダのようなエンコーダー４２０によって処理され、図４−９に関して記載されたものと同様の態様で寄与ビットストリームでの陰データチャネルでの陰データとして「ステアリングインフォ」を埋め込む。寄与ビットストリームは、３００Ｍｂ／ｓ  ＭＰＥＧ−２ビデオビットストリームであり、Ｉ−フレームは４：２：２輝度−クロミナンスフォーマットを使用してコーディングされ、放送スタジオ用途に対する高精細度ビデオのために使用されるように高水準機能性へセットされる主要なプロファイルを有する。ＭＰＥＧ−２寄与コーダ４２０は、リアルタイム（ＲＴ）で又は非リアルタイムＮＲＴ）態様で動作するだろう。
【００４９】
各々の受け側４３０は、標準のＭＰＥＧ−２デコーダーを含むＭＰＥＧ−２寄与デコーダー４４０を利用し、スタジオ処理装置４５０及び上で説明されるデータリムーバ２６０に同様のデータリムーバに加えられるビデオビットストリームを作り出す。受け取られたビットストリームのスライスヘッダで、陰データチャネルで含まれる隠されたステアリングインフォを抜き出す。ＭＰＥＧ−２寄与デコーダー４４０は、リアルタイム（ＲＴ）の同じ１つ又は寄与コーダ４２０がするよう非リアルタイム（ＮＲＴ）態様でおいて動作する。スタジオ処理装置４５０は、定位置ステーション認識又はステーションロゴ又は移動ディスプレー等（画像に渡る「チッカーテープ」メッセージスクロール等）の、他のビデオ情報をデコーダー４３０からのビデオビットストリームに挿入する。ステアリングインフォは、スタジオ処理装置４５０で制御ビデオ処理に利用されることができ、ＡＴＳＣデジタルフォーマットエンコーダー４６０、又は両方とも、所望まれるサーバー又は放送又は他のトランスミッタへのＡＴＳＣビットストリーム伝えられることができる。エミッションエンコーダー４６０は、また、所望のＡＴＳＣコーディングフォーマットを選択するためにエミッションフォーマットセレクト入力に反応する。
【００５０】
陰データステアリングインフォは、例えば、エンコーダー４２０にコード化される前に寄与ビデオの分析から得られるだろう。そして、種々の受け側によって使用されることのできる利用可能なエミッションフォーマットの各々で、最高品質の信号を得るために、最適コーディングを示し、すなわち最もよくビデオデータを処理するか又は下流のプロセッサーの他の機能を制御する方法に関して下流のプロセッサーに案内又は指示する。代替えとして、陰データは、課金情報、音声メッセージ送信、処理方法を始める認識、ビデオ処理ヒストリ、現場認識、及び／又は位置、その又は他の位置のＧ．Ｐ．Ｓ．座標、時刻／日付スタンプ等の他の情報を伝えるために利用されるだろう。航空用途で、陰データチャネルは、パイロット又は航空機搭載用人員から、コード化されたビデオビットストリームを受け取る地上又はフォーム−ベース人員まで音声通信チャネルとして利用されるだろう。同じように、デジタル映画産業用途で陰データは、独自に、法廷の分析が盗まれたビットストリームを識別することをできるようにするコピーの発信元に関する、例えば、日付、時間及び／又は位置及び／又は他のタグを有する、その各々のコピーに商標を付けるためにデジタルビットストリームに挿入されるだろう。
【００５１】
本発明が上述のもの例示的な実施形態に関して説明された一方、請求項によって定義される本発明の範囲及び精神内の代替が、当該技術に熟練したものにとって明らかである。例えば、上述のもの実施形態がＭＰＥＧ−１及びＭＰＥＧ−２コーディングフォーマットに関して説明される一方、本発明は、いかなるコード化フォーマットでも有効であり、
例えば明示的に優先されるだろうＭＰＥＧスライスヘッダでＱＳＣ構成要素によって指定される潜在的ＱＳＣ値及びＭＰＥＧマクロブロックでの潜在的ＱＳＣ値等の、そのコード化が潜在的及び優先している値を含むところで、１つ以上のパラメーターの冗長なコード化を認めまた要求し、それによって潜在的値明示を行うことによって、スライスヘッダ値は、冗長になって及びビットストリームで埋め込まれる無関係なデータによって置き換えられるだろう。
【００５２】
更に、陰データが、通常標準のＭＰＥＧ準拠デコーダーで一般的に消失する本発明に従った隠れているデータは、通常のウォータマーキングとともに利用され、一般的に１以上のデコード及びレコード操作を乗り越え、ビデオビットストリームが変更され、本データ隠蔽発明を利用する許可された人以外によって調整又は再生された表示を提供し、ここで説明されるように、例えば、データコーダー及びデコーダーを利用することによってコピーで陰データを維持する。
【図面の簡単な説明】
【図１】  図１は、本発明に従って装置を埋め込んでいるデータの例示的な実施形態の略ブロック図である。
【図２Ａ】  図２Ａは、ＭＰＥＧ又はＭＰＥＧライクコード体系に従ってスライスで及びマクロブロックデコード化される例示的なデジタルデータの図である。
【図２Ｂ】  図２Ｂは、ＭＰＥＧ又はＭＰＥＧライクコード体系に従ってスライスで及びマクロブロックデコード化される例示的なデジタルデータの図である。
【図３Ａ】  図３Ａは、例えば図２Ａ及び２Ｂのコード化されたデジタルデータ等の、ＭＰＥＧのコード化マクロブロック又はＭＰＥＧライクコード化デジタルデータの例示的なスライスの図である。
【図３Ｂ】  図３Ｂは、例えば図２Ａ及び２Ｂのコード化されたデジタルデータ等の、ＭＰＥＧのコード化マクロブロック又はＭＰＥＧライクコード化デジタルデータの例示的なスライスの図である。
【図３Ｃ】  図３Ｃは、例えば図２Ａ及び２Ｂのコード化されたデジタルデータ等の、ＭＰＥＧのコード化マクロブロック又はＭＰＥＧライクコード化デジタルデータの例示的なスライスの図である。
【図４】  図４は、本発明に従って有効なマクロブロックコーダー及びデータインサータ例示的な実施形態の略ブロック図である。
【図５】  図５は、例えば、図４において示される改良されたＭＰＥＧ−２エンコーダーの、ＭＰＥＧ又はＭＰＥＧライクコーディング装置でのスライスコーディングループの方法を図示した概略流れ図である。
【図６】  図６は、例えば、図４において示されるデータインサータの、ＭＰＥＧ又はＭＰＥＧライクコーディング装置でのデータを挿入する方法を図示した概略図流れ図である。
【図７】  図７は、例えば、図４及び８のデータリムーバの、ＭＰＥＧ又はＭＰＥＧライクコーディング装置でのデータを取り外す方法を図示した概略流れ図である。
【図８】  図８は、本発明に従って有効なマクロブロックコーダー及びデータインサータ例示的な実施形態の略ブロック図である。
【図９】  図９は、例えば、図８のデータチャネルクリエータ及びインサータの、ＭＰＥＧ又はＭＰＥＧライクコーディング装置でのスライスコーディングループ及びデータインサータの方法を図示した概略流れ図である。
【図１０】  図１０は本発明に従ったデータ埋め込み装置の例示的な用途の略ブロック図である。
【図１】
0004617049.tif 000002
【図２Ａ】
0004617049.tif 000003
【図２Ｂ】
0004617049.tif 000004
【図３Ａ】
0004617049.tif 000005
【図３Ｂ】
0004617049.tif 000006
【図３Ｃ】
0004617049.tif 000007
【図４】
0004617049.tif 000008
【図５】
0004617049.tif 000009
【図６】
0004617049.tif 000010
【図７】
0004617049.tif 000011
【図８】
0004617049.tif 000012
【図９】
0004617049.tif 000013
【図１０】
0004617049.tif 000014