(57)【要約】      （修正有）【課題】逆変換を行なわずにトランスコードが可能となる符号化方法を提供する。【解決手段】変換ベースのビデオ圧縮処理で、動き推定中に識別されて動き補正されたインターフレーム差分演算に用いられる動きベクトルは、基準データのブロック境界に一致するよう限定される。このような動きベクトルの制限は、逆方向及び順方向変換をせずに変換領域において得られたコード化ビデオビットストリームをさらに処理することを可能にする。入力ビットストリームは、部分的にコード化され、動きベクトル及び予測誤差を回復する。動きベクトルは基準データのブロック境界と一致するので、動き補正されたインターフレーム差分追加演算が変換領域において実行され引き続く処理のために変換データを発生させる。動き補正が変換領域で実行されるので、ビットストリームデータはさらに変換領域で処理でき、コスト高で損失の大きな逆方向及び順方向の変換を回避できる。【選択図】図１
2010268505.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを圧縮する方法において、
（ａ）対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであり、
（ｂ）前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
（ｃ）前記インターフレーム差データに一つ又はそれ以上のビデオ圧縮過程を与えて前記ビデオデータに対応するコード化されたビデオビットストリームに対してコード化されたデータを発生させるようにした方法。
【請求項２】
過程（ａ）及び（ｂ）が、画素領域において実行され、及び、過程（ｃ）が、
（１）前記インターフレーム差データに変換を加えて変換領域に変換係数データを発生させ、及び、
（２）前記変換係数データを量子化して量子化された変換係数データを発生させる過程からなるようにした特許請求の範囲第１項に記載の方法。
【請求項３】
前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合し、及び、前記変換が、離散コサイン変換（ＤＣＴ）であるようにした特許請求の範囲第２項に記載の方法。
【請求項４】
過程（ａ）が、さらに、画素データに変換を加えて変換領域において変換係数データを発生させ、その際前記動き推定が、変換領域において前記基準データに基づいて前記変換係数データに加えられるようにした過程を含むようにした特許請求の範囲第１項に記載の方法。
【請求項５】
コード化されたプログラムコードを含む機械読み取り可能な媒体であって、前記プログラムコードが機械によって実行されるとき、前記機械が、
（ａ）対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであり、
（ｂ）前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
（ｃ）前記インターフレーム差データに一つ又はそれ以上のビデオ圧縮過程を与えて前記ビデオデータに対応するコード化されたビデオビットストリームに対してコード化されたデータを発生させることからなる過程を展開するようにした機械読み取り可能な媒体。
【請求項６】
存在する入力コード化ビデオビットストリームを処理する方法において、
（ａ）一つ又はそれ以上のデコード化過程を入力ビットストリームに施して変換領域内における変換係数データ及び対応するブロックベースの動きベクトルを回復し、その際前記ブロックベースの動きベクトルが、対応する基準データにおけるブロック境界との一致に制限され、
（ｂ）前記ブロックベースの動きベクトルと前記基準データに基づいて変換領域内において動き補正されたインターフレーム追加を実行して予測エラー補正された（ＰＥＣ）変換係数データを発生させ、及び、
（ｃ）変換領域内において前記ＰＥＣ変換係数データの引き続いての処理を実行するようにした方法。
【請求項７】
前記ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであるようにした特許請求の範囲第６項に記載の方法。
【請求項８】
前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合し、及び、前記変換領域が、ＤＣＴ変換領域に対応するようにした特許請求の範囲第６項に記載の方法。
【請求項９】
前記過程（ｃ）が、一つ又はそれ以上のビデオ圧縮過程を施して処理された出力コード化ビデオビットストリームを発生させる過程を含むようにした特許請求の範囲第６項に記載の方法。
【請求項１０】
前記一つ又はそれ以上のビデオ圧縮過程が、動き補正されたインターフレーム差別を変換領域において処理された変換係数に行なって変換係数差データを発生させるようにした特許請求の範囲第９項に記載の方法。
【請求項１１】
コード化されたプログラムコードを含む機械読み取り可能な媒体であって、前記プログラムコードが機械によって実行されるとき、前記機械が、
（ａ）一つ又はそれ以上のデコード化過程を存在する入力コード化ビデオビットストリームに施して変換領域内における変換係数データ及び対応するブロックベースの動きベクトルを回復し、その際前記ブロックベースの動きベクトルが、対応する基準データにおけるブロック境界との一致に制限され、
（ｂ）前記ブロックベースの動きベクトルと前記基準データに基づいて変換領域内において動き補正されたインターフレーム追加を実行して予測エラー補正された（ＰＥＣ）変換係数データを発生させ、及び、
（ｃ）変換領域内において前記ＰＥＣ変換係数データの引き続いての処理を実行するようにした機械読み取り可能な媒体。
【請求項１２】
ビデオデータを圧縮する方法において、
（ａ）対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルのすべてが、０動きベクトルであり、
（ｂ）前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
（ｃ）前記インターフレーム差データに一つ又はそれ以上のビデオ圧縮過程を与えて前記ビデオデータに対応するコード化されたビデオビットストリームに対してコード化されたデータを発生させ、その際前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合するようにした方法。 
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ビデオ圧縮及び伸長アルゴリズムに関する。
【０００２】
（優先権の主張）
この出願は、１９９８年９月２９日に出願された米国仮出願Ｎｏ．６０／１０２，２１４及び１９９９年２月２５日に出願された米国仮出願Ｎｏ．６０／１２１，５３１の出願日に基づく利益を請求するものである。 
【背景技術】
【０００３】
Ｍｏｖｉｎｇ Ｐｉｃｔｕｒｅ Ｅｘｐｅｒｔｓ Ｇｒｏｕｐ（ＭＰＥＧ）ファミリのアルゴリズムに対応するような典型的な変換ベースのビデオ圧縮アルゴリズムにおいては、離散コサイン変換（ＤＣＴ）のようなブロックベースの変換が、例えば、動き補正されたインターフレーム差別体系に基づいて発生された画素値又は画素差のいずれかに対応した像データのブロックに施される。それぞれのブロックに対する得られた変換係数は、次いで、引き続くコード化（例えば、可変長さコード化によってフォローされるラン長さコード化）のために一般的に量子化されてコード化されたビデオビットストリームを発生させる。
【０００４】
特定のビデオ圧縮アルゴリズムに応じて、像は、圧縮処理のために以下のような種々のフレームとして指定できる。
【０００５】
・イントラフレーム圧縮技術のみを用いてコード化されるイントラ（Ｉ）フレーム、
・予測される（Ｐ）フレームであって、予めＩ又はＰフレームに対応する基準フレームに基づいてイントラフレーム圧縮技術を用いてコード化されるとともにそれ自身一つ又はそれ以上のその他のフレームをコード化するための基準フレームを発生するのに用いることができる予測される（Ｐ）フレーム、及び、
・（i）予めのＩ又はＰフレーム、（ii）引き続くＩ又はＰフレーム、（iii）両方の組み合わせのいずれかから（i）順方向、（ii）逆方向、又は、（iii）双方向予測に基づいてインターフレーム圧縮技術を用いてコード化され、及び、それ自身はその他のフレームのコード化には使えない双方向（Ｂ）フレーム。
【０００６】
Ｐ及びＢフレームにおいて、像データの一つ又はそれ以上のブロックは、イントラフレーム圧縮技術を用いてコード化できる。
【０００７】
いずれにしても、得られたコード化されたビデオビットストリームをデコード化するために、特定の圧縮処理が、逆転又は反転されなければならない。例えば、可変長さデコード化が、ラン長さデコード化に引き続いてビットストリームに施すことができて、次いで、非量子化によって非量子化された変換係数のブロックが発生する。反転変換が、次いで、非量子化された変換係数のブロックに施され、（１）デコード化された画素データ又は（２）画素差データのいずれかが発生する（像データの対応するブロックが、当初に、それぞれ、（１）イントラフレーム又は（２）インターフレーム圧縮技術を用いてコード化されたかどうかに応じて）。動き補正されたインターフレーム圧縮技術が使われるとき、次いで、イントラフレーム追加が、動き補正された基準フレームデータを用いる画素差データに施されてデコード化された画素データを発生させ、ここで、動き補正の量は、圧縮処理中にビットストリームにコード化される動きベクトルによって決定される。動き補正された基準フレームデータは、デコード化された像データの予測であると考えられ、画素差データは、その予測における誤差であると考えられる。このようにして、動き補正されたインターフレーム圧縮追加過程は、予測の補正に対応する。
【０００８】
いくつかのアプリケーションにおいて、追加的な処理が、コード化されたビデオビットストリームが発生された後に施される。典型的に、コード化されたビデオビットストリームは、別の、多分離れて位置するプロセッサによって予め発生されており、必要な追加の処理の目的で入力として取り扱われる。例えば、「トランスコーディング（transcoding）」が実行できることが好ましく、これは、一つのビデオ圧縮／伸長（コーデック）アルゴリズムに適合する存在するコード化ビデオビットストリームが、異なるビデオコーデックアルゴリズムに適合する対応するコード化されたビデオビットストリームに変換されることである。このような 「トランスコーディング」操作が実行できる一つの「暴力的な(brute force)」アプローチは、入力ビットストリームを第１のビデオコーデックアルゴリズムに基づいてデコード化された画素領域に完全にデコード化し、次いで、得られたデコード化画素データを第２のビデオコーデックアルゴリズムに基づいて出力ビットストリームに完全にコード化することである。
【０００９】
その他の可能なアプリケーションは、存在するコード化ビデオビットストリームへのウォータマークの挿入である。ここで、またウォータマーク挿入への一つの暴力的なアプローチは、入力ビットストリームをデコード化される画素領域に完全にデコード化し、画素領域内のデコード化される画素データを処理して必要なウォータマークを挿入し、次いで、修正された画素データを完全に再コード化し、必要な処理を受けた出力コード化ビデオビットストリームを発生することである。
【００１０】
典型的な変換ベースのビデオコーデックアルゴリズムにおいて、進行方向及び逆方向変換過程は、コード化の複雑さと処理時間の両方のために比較的コスト高である。さらに、損失のある変換において、存在するコード化されたビデオビットストリームの乱暴な強行な処理中における逆方向変換の適用と、次に順方向変換の再適用は、入力ビットストリームに含まれる情報の損失を一般的に招き、処理されたビットストリームにおけるデコード化された画質に劣化をもたらす。このようにして、最初にビットストリームを完全にデコード化せずに入力ビットストリームにある処理操作（例えば、トランスコーディングやウォータマーク挿入のような）を行なえることが望ましい。このような処理操作が情報の大きな損失無しに変換領域において実行できるときは、コスト高で損失の大きな逆方向及び順方向変換過程は、回避される。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
この発明は、ビデオ圧縮及び伸長技術に関するものであって、入力ビットストリームを最初に完全にデコード化することなく存在するコード化ビデオビットストリームをさらに処理することを可能にする技術に関する。特に、この発明は、入力ビットストリームに含まれている情報の大きな損失のない、又は、できればまったく損失のない変換領域における部分的にデコード化されたビデオデータを処理することを可能にするものである。このようにして、この発明は、存在する入力ビットストリームの処理中にコスト高で損失の大きな逆方向及び順方向変換過程を施すことを回避する。
【課題を解決するための手段】
【００１２】
この発明によれば、コード化された入力ビデオビットストリームを発生させるのに用いられる動き補正されたインターフレームビデオ圧縮技術は、ブロック境界に一致する動きベクトルに基づくものに限定される。例えば、(８×８)ＤＣＴ変換に基づいたＭＰＥＧビデオ圧縮アルゴリズムにおいて、動きベクトル成分は、整数×８（整数は、正、負又は０であることができる）に限定される。その結果、処理操作が、大きな情報の損失のない（又は、できればまったく損失のない）変換領域において部分的にデコード化されたビデオデータに適用できる。典型的なＭＰＥＧビデオコーデックアルゴリズムに対して、可変長さデコード化、ラン長さデコード化が、コード化された入力ビデオビットストリームに施すことができて、次いで、非量子化によってＤＣＴ係数データが発生される。動きベクトルはブロック境界との一致に限定されるので、動き補正されたインターフレーム追加が、次いで、逆方向ＤＣＴ変換を最初に適用することなくＤＣＴ変換領域において実行される。得られた動き補正された変換データは、次いで、変換領域において特別の必要な処理操作（例えば、トランスコーディング操作、ウォータマークの挿入）を受けることができる。適用の仕方に対応して、得られた処理されたＤＣＴ係数データは、次に動き推定、動き補正されたインターフレーム減算、再量子化、ラン長さ再コード化、及び、可変長さ再コード化の少なくとも一部分を受けることができて逆方向及び順方向ＤＣＴ変換過程を別々に展開することなく必要な処理された出力コード化ビデオビットストリームを発生させる。
【００１３】
一つの実施例によれば、この発明は、ビデオデータを圧縮する方法であって、
（ａ）対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであり、
（ｂ）前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
（ｃ）前記インターフレーム差データに一つ又はそれ以上のビデオ圧縮過程を与えて前記ビデオデータに対応するコード化されたビデオビットストリームに対してコード化されたデータを発生させる過程からなるものである。
【００１４】
この発明の他の実施例によれば、この発明は、存在する入力コード化ビデオビットストリームを処理する方法であって、
（ａ）一つ又はそれ以上のデコード化過程を入力ビットストリームに施して変換領域内における変換係数データ及び対応するブロックベースの動きベクトルを回復し、その際前記ブロックベースの動きベクトルが、対応する基準データにおけるブロック境界との一致に制限され、
（ｂ）前記ブロックベースの動きベクトルと前記基準データに基づいて変換領域内において動き補正されたインターフレーム追加を実行して予測エラー補正された（ＰＥＣ）変換係数データを発生させ、及び、
（ｃ）変換領域内において前記ＰＥＣ変換係数データの引き続いての処理を実行するようにした過程からなるものである。
【００１５】
この発明のさらに他の実施例によれば、この発明は、ビデオデータを圧縮する方法であって、
（ａ）対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルのすべてが、０動きベクトルであり、
（ｂ）前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
（ｃ）前記インターフレーム差データに一つ又はそれ以上の追加のビデオ圧縮過程を与えて前記ビデオデータに対応するコード化されたビデオビットストリームに対してコード化されたデータを発生させ、その際前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合する過程からなるものである。
【発明の効果】
【００１６】
この発明によれば、入力ビットストリームを最初に完全にデコード化することなく存在するコード化ビデオビットストリームをさらに処理することができる。
【図面の簡単な説明】
【００１７】
この発明のその他の構成、特徴、及び、利点は、以下の詳細な説明、付属する特許請求の範囲、及び、添付の図面から完全に明らかになろう。
【図１】この発明の一つの実施例における動き補正されたインターフレームビデオ圧縮処理のブロック図である。
【図２】従来周知の動き推定処理（図２）を示している。
【図３】（８×８）ブロックの像データに対するこの発明による動き推定処理（図３）の差を示している。
【図４】この発明の他の実施例における動き補正されたインターフレームビデオ圧縮処理のブロック図である。
【図５】この発明の一つの実施例における部分的なデコード化処理のブロック図である。
【発明を実施するための形態】
【００１８】
図１は、この発明の一つの実施例における動き補正されたインターフレームビデオ圧縮処理のブロック図である。この実施例により、動きベクトルが、ブロック境界と一致するものに限定される。
【００１９】
特に、ブロックベースの動き推定１０２が、適切な基準データに対して入力像データに施される。インターフレームビデオ圧縮処理が（i）順方向予測、（ii）逆方向予測、又は、（iii）双方向予測に基づいているかどうかにより、基準データが、それぞれ、（i）予めのフレーム、（iii）引き続くフレーム、（iii）両方の組み合わせ（例えば、予めのフレームと引き続くフレームの平均）のいずれかに基づいて発生される。いずれにせよ、動き推定処理は、なんらかの適切な同様の尺度（例えば、絶対的な画素差の和（ＳＡＤ））に基づいて像データのその時点でのブロックに極めて密に一致する基準データのブロックを識別しようとするものである。この発明によれば、動き推定処理中に用いられる基準データのブロックの組は、ブロック境界に一致するものに限定される。従来周知の動き推定処理においては、このような制限は存在せず、従って、動き推定処理に使うことができる基準データのブロックは、特定のサーチ範囲内の画素（又はサブ画素）位置に対応する。
【００２０】
図２及び図３は、従来周知の動き推定処理（図２）及び(８×８)ブロックの像データに対するこの発明による動き推定処理（図３）の差を示している。図２及び図３は、像データの特定の(８×８)ブロックに対する基準データのサーチ領域を示しており、基準データにおけるその対応する位置は、ブロックの中央に対する（０，０）の動きベクトルを備えた太い(８×８)ブロックにより図において示されている。図２及び図３におけるサーチ領域は、その成分が８画素の大きさにそれぞれ制限されている動きベクトルに基づいている（すなわち、動きベクトル成分は、−８から＋８に独立に変動する）。
【００２１】
図２に示されているように、従来周知の整数画素ベースの動き推定処理では、−８から＋８までの１７の異なる整数成分値の組み合わせに基づく２８９の異なる整数ベースの動きベクトルに対応する基準データの２８９の異なる使用可能な(８×８)ブロックが存在する。「フラクショナル画素」に基づいた動き推定体系においては、それ以上の基準データのブロックを使うことができる。
【００２２】
他方、図３に示されるように、この発明によるブロックベースの動き推定処理のこのような特定の実施例に対して、使用可能な基準データのブロックは、ブロック境界に対応して９ブロックに限定される（すなわち、−８，０，＋８の３個の異なる成分値の組み合わせに基づいた９個の動きベクトルの一つを備えた）。このブロックベースの動き推定処理体系から得られた典型的な予測は、従来周知の画素ベースの動き推定処理体系よりも精度が低いが、多くのアプリケーションにおいて、ブロックベースの動き推定処理予測の精度は、許容し得るものであろう。
【００２３】
使用可能な基準データのブロックの数は所定のサーチ範囲に対して非常に小さいので（例えば、図２及び図３の実施例において２８９から９に）、この発明によるブロックベースの動き推定処理は、より迅速に実行が可能である。その上、サーチ範囲は、従来周知の画素ベースの動き推定処理体系よりも動き推定に対して必要な処理時間が少ないのにもかかわらず、非常に拡張されている。例えば、±８の代わりに±２４にサーチ範囲を拡大しても処理されるべき基準データは４９(８×８)ブロックを残すのみである。実際のところ、サーチ範囲は、同一の数の基準ブロック（すなわち、２８９）が±８に制限されているサーチ範囲を備えた画素ベースの動き推定に使えるようになる前に、±６４に拡大可能である。
【００２４】
特別なビデオ圧縮アルゴリズム及びフレームのタイプ（例えば、Ｐ又はＢ）に対応して、ブロック１０２における動き推定処理は、像データのブロックのそれぞれに対して３個の、順方向光予測、逆方向予測及び双方向予測からなる異なるブロックベースの動きベクトルを識別できる。モード制御処理１０４が、動き推定後に実行され、イントラフレームコード化技術を用いてコード化する可能性を含んで、その時点での像データにおけるブロックのコード化の仕方を決定する。このコード化モード制御の結果に応じて、イントラフレーム差別化１０６が、次いで、対応する動き補正された基準データを用いる像データに実行されてブロック動き補正されたインターフレーム画素差データを発生させる。
【００２５】
いずれにせよ、(８×８)ＤＣＴブロック変換のような変換１０８が、次いで、画素領域データのブロックに適用され、１１０で量子化され、１１２でラン長さコード化され、１１４で可変長さコード化される変換係数のブロックを発生してコード化されたビデオビットストリームの一部分を発生させる。図１には示されていないが、可能ならば、像データのブロックをコード化するために使われる動きベクトルは、また、ビットストリーム内でコード化される。
【００２６】
ラン長さコード化１１２及び可変長さコード化１１４は典型的な損失の少ないコード化過程であるので、図１における圧縮アルゴリズムの一部分（すなわち、図１の上方部分）であるデコード化処理は、ビデオコーデックアルゴリズムに対する信頼性を損なうことなく量子化ブロック１１０によって発生させられる量子化係数とともにスタートできる。特に、ブロック１１０からの量子化された変換係数は、１１６で非量子化され、１１８で逆方向に変換され、及び、もし可能ならば、動き補正されたインターフレーム追加１２０が施されて、像データにおけるその他の組のコード化において使われる可能性のある基準データを発生させる。
【００２７】
この発明によるブロックベースの動き推定に対するものを除いて、図１の処理過程のその他が、ＭＰＥＧ標準に適合するような従来周知のビデオ圧縮技術に基づいて展開できるものであることは、当該技術に通常の知識を有する者には明らかなことであろう。
【００２８】
図４は、この発明の他の実施例における動き補正されたインターフレームビデオ圧縮処理のブロック図である。図１の実施例と同じように、動きベクトルは、ブロック境界に一致するものに限定される。しかしながら、図４において、変換４０１が、動き推定４０２の前に未処理の像データに施される。このようにして、ブロック限定の動き推定４０２、モード制御４０４、及び、動き補正されたインターフレーム差別化４０６が、図１の実施例におけるような画素領域においてではなく、変換領域においてすべて実行される。動き推定及び補正が変換領域において実行されるので、コード化フィードバック路において生じる動き補正されたインターフレーム追加４２０の過程は、また、変換領域において実行される。その結果、逆方向変換は、コード化処理の間はまったく実行されない。量子化１１０、ラン長さコード化４１２、可変長さコード化４１４、非量子化４１６は、図１に示されている実施例における過程と類似した過程で実行される。
【００２９】
図５は、この発明の一つの実施例における部分的なデコード化処理のブロック図である。図５の部分的なデコード化処理は、図１におけるブロックベースの動き補正されたインターフレームビデオ圧縮アルゴリズムを用いて発生される存在するコード化されたビデオビットストリームで動作するように設計されている。特に、部分的なデコード化処理が、入力ビットストリームを受け入れて部分的にデコード化して出力非量子化変換データを発生させる。追加の処理過程（例えば、トランスコーディングやウォータ挿入に関連し、図５には示されていない）が、次いで、変換領域内において非量子化された変換データに適用されて処理された変換データを発生し、次いで、さらにコード化されて、必要な処理をされたコード化されたビデオビットストリームを発生させる。
【００３０】
特に、動きベクトルデコード化５０２、モードデコード化５０４、及び、可変長さデコード化／ラン長さデコード化／非量子化５０６は、入力ビットストリームに適用され、それぞれ、（１）ブロックベース動きベクトル、（２）モード制御情報（すなわち、いずれのブロックが、順方向、逆方向又は双方向（すなわち、内挿された）予測に基づいてイントラフレーム技術又はインターフレーム技術を用いてコード化されたか）、及び、（３）変換領域における予測誤差に対応する非量子化された変換(例えば、ＤＣＴ)を回復する。
【００３１】
もし可能ならば、メモリＡ５０８は、引き続くフレームに対応する変換領域基準データ（例えば、非量子化されたＤＣＴ係数）を保持し、他方で、メモリＢ５１０は、先行するフレームに対応する変換領域基準データを保持している。メモリＡ及びＢからの基準データの対応するブロックは、デコード化ブロック５０２によって回復されたブロックベースの動きベクトルによって識別されるように、平均化ノード５１２によって平均化されて双方向予測のための内挿された基準データを形成する。
【００３２】
４位置スイッチ５１４の状態は、ブロック５０４からのデコード化モード制御データによって指令される。モード制御データが「後方予測」を指示しているとき、スイッチ５１４は、メモリＡから加算ノード５１６への適切な（すなわち、動き補正された）引き続くフレーム基準データを送るように配置されている。モード制御データが「前方予測」を指示しているとき、スイッチ５１４は、メモリＢから加算ノード５１６への適切な先行フレーム基準データを送るように配置されている。モード制御データが「双方向予測」を指示しているとき、スイッチ５１４は、平均化ノード５１２から加算ノード５１６への適切な内挿された基準データを送るように配置されている。最後に、モード制御データが「イントラコード化」を指示しているとき、スイッチ５１４は、０を加算ノード５１６へ送る「接地」に配置されている。
【００３３】
いずれにせよ、加算ノード５１６において、ブロック５０６からの非量子化されたＤＣＴ係数が、スイッチ５１４から選択された変換領域基準データに加えられてすべて変換領域内にある予測誤差とともに予測を補正する。もし適切ならば（すなわち、現時点でのフレームがＩ又はＰフレームであるとき）、加算ノード５１６からの変換データは、一つ又はそれ以上のその他のビデオフレームをコード化するために基準データとして使うためにメモリＡ又はＢにフィードバックされる。
【００３４】
動きベクトルはブロック境界に一致するものに限定されるとともにＤＣＴのような変換が直線的であるために、加算ノード５１６における動き補正されたインターフレーム追加は、変換領域において、逆方向変換を最初に行なわずに実行できる。このようにして、量子化損失などを除いて、加算ノード５１６において発生された得られた動き補正された変換データは、原像データに直接変換を施したときに得られるであろう変換データに対応する。追加の処理（図５には示されていない）が、次いで、逆方向変換を施さずに得られた補正された変換データに対して実行される。この追加の処理は、典型的に、必要な処理を受けた出力コード化ビデオビットストリームを発生させるのに必要な過程を含んでいる。その場合、追加の処理は、変換領域における動き推定及び動き補正、再量子化、ラン長さ再コード化、及び、可変長さ再コード化過程を含むことができる。適当な状況において、変換領域における動き推定及び／又は動き補正過程は、省略することができる。例えば、入力ビットストリームからの動きベクトルが再使用されるときは、動き推定が省略できる。動き補正なしに出力ビットストリームが発生されるときは、動き推定及び動き補正の両方が省略できる。
【００３５】
ＭＰＥＧビデオコーデックアルゴリズムに加えて、この発明は、その他の適切なビデオコーデックアルゴリズムに展開することができ、それらには、(８×８)ＤＣＴ変換以外の変換に基づいたアルゴリズム及び／又はラン長さコード化及び可変長さコード化過程を含まず及び／又は追加のその他の量子化後コード化過程を含むアルゴリズムが含まれる。
【００３６】
この発明は、単一の集積回路への適用可能性を含む回路ベースの処理として展開できる。当該技術に通常の知識を備えた者には明らかなように、回路部材の種々の機能が、ソフトウェアプログラムにおける処理過程としてデジタル領域において展開できる。このようなソフトウェアは、例えば、デジタル信号プロセッサ、マイクロコントローラ、又は、汎用のコンピュータにおいて使える。
【００３７】
この発明は、方法の形で具体化され、さらに、それらの方法を実施する装置の形で具体化できる。この発明は、また、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭ、ハードドライブ、又は、その他の機械読み取り可能な記憶媒体のような実体的な媒体において実現されるプログラムコードの形で具体化され、その際プログラムコードがコンピュータのような機械によって装填されるとともに実行されるとき、この機械は、この発明を具体化する装置となる。この発明は、また、例えば、記憶媒体に記憶され、機械に装填され及び／又は機械によって実行され、又は、光学繊維を介して、又は、電磁放射線を経由して電線又はケーブルのようなものからなるいくつかの通信媒体又はキャリヤにまたがって搬送されるプログラムコードの形で具体化可能であり、その際プログラムコードがコンピュータのような機械に装填され及び実行されるとき、この機械は、この発明を具体化する装置となる。汎用のプロセッサのために実行されるとき、プログラムコードセグメントは、プロセッサに組み合わせられて特定の論理回路をアナログ的に作動させるユニークな装置を構成する。
【００３８】
この発明の性質を説明するために記述され、図示された細部、材料、部品の配置の様々な変化が、特許請求の範囲に表現されているような発明の原理及び範囲を逸脱することなく当該技術に通常の知識を備えた者にとって容易に行ない得ることは明らかであろう。
【図１】
2010268505.tif 000003
【図２】
2010268505.tif 000004
【図３】
2010268505.tif 000005
【図４】
2010268505.tif 000006
【図５】
2010268505.tif 000007
【手続補正書】
【提出日】平成22年9月27日(2010.9.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを圧縮する方法において、
対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであって、識別された前記ブロックベースの動きベクトルのみが前記動き推定の実行のために使用されるものであり、
前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
前記インターフレーム差データにビデオ圧縮過程を与えてコード化されたデータを発生させるようにした方法。
【請求項２】
前記識別および前記動き補正されたインターフレーム差別が、画素領域において実行され、及び、前記ビデオ圧縮過程が、
前記インターフレーム差データに変換を加えて変換領域に変換係数データを発生させ、及び、
前記変換係数データを量子化して量子化された変換係数データを発生させる過程  をさらに含む特許請求の範囲第１項に記載の方法。
【請求項３】
前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合し、及び、前記変換が、離散コサイン変換（ＤＣＴ）であるようにした特許請求の範囲第２項に記載の方法。
【請求項４】
前記識別が、さらに、画素データに変換を加えて変換領域において変換係数データを発生させ、その際前記動き推定が、変換領域において前記基準データに基づいて前記変換係数データに加えられるようにした過程を含むようにした特許請求の範囲第１項に記載の方法。
【請求項５】
命令を記録しているコンピュータに読み取り可能な媒体であって、前記命令は、コンピュータに対し、、
対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別させ、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであって、識別された前記ブロックベースの動きベクトルのみが前記動き推定の実行のために使用されるものであり、
前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
前記インターフレーム差データにビデオ圧縮過程を与えてコード化されたデータを発生させることからなる過程を展開するようにした、コンピュータに読み取り可能な媒体。
【請求項６】
入力コード化ビデオビットストリームを処理する方法において、
デコード化をコード化されたビットストリームに施して変換領域内における変換係数データ及び対応するブロックベースの動きベクトルを回復し、その際前記ブロックベースの動きベクトルが、対応する基準データにおけるブロック境界との一致に制限され、
前記ブロックベースの動きベクトルと前記基準データに基づいて変換領域内において動き補正されたインターフレーム追加を実行して予測エラー補正された（ＰＥＣ）変換係数データを発生させ、及び、
変換領域内において前記ＰＥＣ変換係数データの引き続いての処理を実行させるようにした方法。
【請求項７】
前記ブロックベースの動きベクトルの少なくとも一つが、非ゼロ動きベクトルであるようにした特許請求の範囲第６項に記載の方法。
【請求項８】
前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合し、及び、前記変換領域が、ＤＣＴ変換領域に対応するようにした特許請求の範囲第６項に記載の方法。
【請求項９】
前記ＰＥＣ変換係数データの引き続いての処理を実行することが、ビデオ圧縮を施して処理されたコード化ビデオビットストリームを発生させる過程を含むようにした特許請求の範囲第６項に記載の方法。
【請求項１０】
前記ビデオ圧縮が、動き補正されたインターフレーム差別を変換領域において処理された変換係数に行なって変換係数差データを発生させるようにした特許請求の範囲第９項に記載の方法。
【請求項１１】
命令を記録しているコンピュータに読み取り可能な媒体であって、前記命令は、コンピュータに対し、
デコード化をコード化ビデオビットストリームに施して変換領域内における変換係数データ及び対応するブロックベースの動きベクトルを回復させ、その際前記ブロックベースの動きベクトルが、対応する基準データにおけるブロック境界との一致に制限され、
前記ブロックベースの動きベクトルと前記基準データに基づいて変換領域内において動き補正されたインターフレーム追加を実行して予測エラー補正された（ＰＥＣ）変換係数データを発生させ、及び、
変換領域内において前記ＰＥＣ変換係数データの引き続いての処理を実行させるようにした機械読み取り可能な媒体。
【請求項１２】
ビデオデータを圧縮する方法において、
対応する基準データに基づいてビデオデータのフレームについて動き推定を行なってそのフレームに対する動きベクトルの組を識別し、その際前記動き推定が、前記基準データにおけるブロック境界と一致するブロックベースの動きベクトルのみの識別に制限され、及び、ブロックベースの動きベクトルのすべてが、０動きベクトルであって、識別された前記ブロックベースの動きベクトルのみが前記動き推定の実行のために使用されるものであり、
前記基準データ及び前記ブロックベースの動きベクトルに基づいた前記ビデオデータに対して動き補正されたインターフレーム差別を行なってインターフレーム差データを発生させ、及び、
前記インターフレーム差データにビデオ圧縮を与えて前記ビデオデータに対応するコード化されたビデオビットストリームに対してコード化されたデータを発生させ、その際前記コード化されたビデオビットストリームが、ＭＰＥＧコーデックアルゴリズムに適合するようにした方法。