(57)【要約】  本発明は、メモリに画像を格納する方法に関し、画像はデータ・ブロックに分割され、前記方法は、ｎは整数であるｎ個の変換された要素の組を備える変換されたデータ・ブロックを生成するために入力データ・ブロックの変換を計算するステップと、ｍはｎより小さい整数である、エンコードされたデータ・ブロックを生成するために変換されたデータ・ブロックのｍ個の最初に変換された要素をエントロピー・コーディングするステップと、前記入力データ・ブロックと前記エンコードされたデータ・ブロックとの間のひずみ値と前記メモリに前記エンコードされたデータ・ブロックを書き込むまたは読み出すために必要な電力消費量との加重和に基づいて費用関数を計算するステップと、ｍの様々な値に関する前記エントロピー・コーディングおよび費用関数計算ステップを反復するステップと、前記費用関数を最小化する前記ｍの値に対応する前記エンコードされたデータ・ブロックをメモリに格納するステップとを備える。
2008502261.tif 000002
【特許請求の範囲】
【請求項１】
画像をメモリに格納する方法であって、画像はデータ・ブロックに分割され、
ｎは整数であるｎ個の変換された要素の組を備える変換されたデータ・ブロックを生成するための入力データ・ブロックの変換を計算するステップと、
ｍはｎより小さい整数である、エンコードされたデータ・ブロックを生成するための前記変換されたデータ・ブロックのｍ個の最初に変換された要素をエントロピー・コーディングするステップと、
前記入力データ・ブロックと前記エンコードされたデータ・ブロックの間のひずみ値と、前記エンコードされたデータ・ブロックを前記メモリに書き込むまたは読み出すために必要な電力消費量の加重和に基づいて費用関数を計算するステップと、
ｍの様々な値の場合の前記エントロピー・コーディングおよび費用関数計算ステップを反復するステップと、
前記費用関数を最小化する前記ｍの値に対応する前記エンコードされたデータ・ブロックを前記メモリに格納するステップと
を含む方法。
【請求項２】
前記費用関数が、前記ひずみ値と前記電力消費量と前記エンコードされたデータ・ブロックのビット数との加重和に基づいて計算される、請求項１に記載の方法。
【請求項３】
前記入力データ・ブロックが最初のパスで変換されてエントロピー・エンコードされ、その結果得られたエンコードされたデータ・ブロックが、前記費用関数が最小化される前記ｍの値に対応するビット位置で切り捨てられ、次いで前記メモリに格納される、請求項１に記載の方法。
【請求項４】
前記費用関数の変動が、新しい変換された要素が現行のエンコードされたデータ・ブロックに加えられるごとに計算される方法であって、前記現行のエンコードされたデータ・ブロックが、前記変動が正になるとすぐ前記メモリに格納される、請求項１に記載の方法。
【請求項５】
前記メモリが、ｉは可変整数である予め決められた長さのｉワードのバーストによってアクセスされる方法であって、前記電力消費量が、前記エンコードされたデータ・ブロックの前記ビット数と、ｉワードのバースト内のビットごとの前記電力消費量と、前記ｉの値と、ｉワードの前記バースト数と、前記ワード長とから得られる、請求項１に記載の方法。
【請求項６】
画像をメモリに格納するための記憶装置であって、画像はデータ・ブロックに分割され、
ｎは整数であるｎ個の変換された要素の組を備える変換されたデータ・ブロックを生成するために入力データ・ブロックを変換し、ｍはｎより小さい整数である、エンコードされたデータ・ブロックを生成するために前記変換されたデータ・ブロックのｍ個の最初に変換された要素をエントロピー・コーディングするための組込みエンコーディング（ｅＥＮＣ）ユニットと、
前記入力データ・ブロックと前記エンコードされたデータ・ブロックの間のひずみ値と、前記エンコードされたデータ・ブロックを前記メモリに書き込むまたは読み出すために必要な電力消費量との加重和に基づく費用関数を計算するための計算手段であって、前記エンコードされたデータ・ブロックおよび前記費用関数は様々なｍの値に関して計算される計算手段と、
前記費用関数を最小化する前記ｍの値に対応する前記エンコードされたデータ・ブロックを格納するための前記メモリ（ＭＥＭ）と
を備える記憶装置。
【請求項７】
ビット・ストリームをデコードするためのビデオ・デコーダであって、
前記ビット・ストリームからエラー・データ・ブロックを提供するためのデコーディング・ユニット（ＶＬＤ、ＩＱ、ＩＴ）と、
エンコードされたデータ・ブロックを格納するための請求項６に記載の記憶装置（ｅＥＮＣ−ＭＥＭ）と、
少なくとも１つのエンコードされたデータ・ブロックを前記メモリから抽出し、現行の動き補償データ・ブロック（ｍｃ）を送達するために前記少なくとも１つのエンコードされたデータ・ブロックをデコーディングするための手段（ｅＤＥＣ−ＩＮＴ）と、
現行のエラー・データ・ブロック（ｅ）を前記現行の動き補償データ・ブロックに加える加算器であって、加算器の出力が前記記憶装置の入力に提供される加算器と
を備えるビデオ・デコーダ。
【請求項８】
画像のシーケンスをエンコードするためのビデオ・エンコーダであって、画像は入力データ・ブロックに分割され、
部分的にエンコードされたデータ・ブロックを提供するためのエンコーディング・ユニット（Ｔ−Ｑ）と、
前記部分的にエンコードされたデータ・ブロックから部分的にデコードされたデータ・ブロックを提供するためのデコーディング・ユニット（ＩＱ−ＩＴ）と、
動き補償データ・ブロック（ｍｃ）を送達するために、少なくとも１つのエンコードされたデータ・ブロックを前記メモリから抽出し、前記少なくとも１つのエンコードされたデータ・ブロックをデコードするための、請求項６に記載の記憶装置および手段（ｅＤＥＣ−ＩＮＴ）を連続して備える予測ユニット（ＭＥＭ−ＭＣ）と、
前記動き補償データ・ブロックを前記部分的にデコードされたデータ・ブロックに加える加算器であって、加算器の出力が前記予測ユニットの入力に提供される加算器と、
入力データ・ブロックから前記動き補償データ・ブロックを減じる減算器であって、減算器の出力が前記エンコーディング・ユニットの入力に提供される減算器と
を備えるビデオ・エンコーダ。
【請求項９】
請求項６に記載の記憶装置を備える携帯用装置。
【請求項１０】
プログラムがプロセッサによって実行される場合、請求項１に記載の方法を実施するためのプログラム命令を備える、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測ブロックに基づく技法によって処理される画像をメモリに格納する方法および装置に関する。
【０００２】
本発明は、たとえば、ビデオ・デコーダ、ビデオ・エンコーダ、あるいは、携帯情報端末、または移動電話などの携帯用装置に使用されてよく、前記装置は画像をデコードまたはエンコードするように適応される。
【背景技術】
【０００３】
低電力消費はモバイル装置の重要な機能である。モバイル装置は、現在、大量のエネルギーを浪費することが知られているビデオ・エンコーディングおよびデコーディング機能を提供する。したがって、いわゆる低電力ビデオ・アルゴリズムが必要とされる。
【０００４】
実際、ＳＤＲＡＭなどの外部メモリへのアクセスは、ビデオ装置のネックである。これは、メモリはシステムの最大の電力消費部分であることが知られているので、電力消費問題のためのみならず、中央処理装置ＣＰＵとメモリの間の交換のために利用可能な帯域幅による速度制限のためでもある。
【０００５】
従来のビデオ・デコーダでは、動き補償ユニットは、いわゆる基準フレーム内の画素のブロックを絶えず示すので多くのそのようなアクセスを必要とする。この問題を克服するために、いわゆる「組込み圧縮」が提案されてきた。前記の組込み圧縮は、元々、基準フレームの圧縮は損失が多いため、品質の低下を代償にメモリ・サイズを縮小するために開発されたものである。
【０００６】
Ｈ．２６４ビデオ・デコーダに適用された組込み圧縮の例が、図１に示されている。前記ビデオ・デコーダは、
一方でデコードされたデータ・ブロックを生成し、他方でデコードされた動きベクトルＭＶを生成するために、エンコードされたビット・ストリームＢＳをデコードするのに適した可変長デコーディング・ブロックＶＬＤと
量子化されたデータ・ブロックを生成するのに適した逆量子化ブロックＩＱと、
残差データ・ブロックｅに対応する逆変換データ・ブロックを生成するための逆周波数変換ブロックＩＴ、たとえば逆離散コサイン変換ブロックＩＤＣＴと
を連続して備える。
【０００７】
ビデオ・デコーダはさらに、残差データ・ブロックに動き補償データ・ブロックを加えるための加算器を含む。動き補償データ・ブロックは、エンコードされたデータ・ブロックを生成するための組込みエンコーディング・ユニットｅＥＮＣと、前記エンコードされたデータ・ブロックを格納するための画像メモリＭＥＭと、組込みデコーディング・ユニットｅＤＥＣと、補間フィルタＦＩＬとを連続して備える変形動き補償ユニットＭＭＣによって生成される。加算器の出力は、出力デコードされた画像ＯＦのデコードされたデータ・ブロックであり、これは次いでディスプレイ（表示されていない）に送達され、さらに組込みエンコーディング・ユニットｅＥＮＣに送達される。
【０００８】
いくつかの特定の必要条件が与えられると、組込み補償技法はメモリ転送を低減し、したがって電力浪費量を低減するのに役立つことは、Ａ．ＢｏｕｒｇｅおよびＪ．Ｊｕｎｇによる「Ａ  Ｌｏｗ−Ｐｏｗｅｒ  Ｈ．２６４  Ｄｅｃｏｄｅｒ  ｗｉｔｈ  Ｇｒａｃｅｆｕｌ  Ｄｅｇｒａｄａｔｉｏｎ」、Ｐｒｏｃｅｅｄｉｎｇｓ  Ｏｆ  Ｅｌｅｃｔｒｏｎｉｃ  Ｉｍａｇｉｎｇ、ＶＣＩＰ、Ｊａｎｕａｒｙ  ２００４で証明されている。１つの必要条件は、圧縮比がメモリ構造を写像することである。この必要条件は、圧縮されたブロックがメモリ内の都合の良いアクセス・ポイントに格納されることを意味する。たとえば、各エンコードされたデータ・ブロックのスタート・アドレスは、通常予め決められた長さ（たとえば、１６、３２または６４ビット）を有するワードを含むＳＤＲＡＭメモリ用にワード配列されており、エンコードされたデータ・ブロックのサイズは、それがデータ・サイズ要求に合致した場合に最適化される、すなわち、１つの読出しサイクル中にメモリから１、２、４、６または８ワードのバーストが抽出される。
【０００９】
前記の必要条件を順守する従来の方法は、データ・バーストに適合するためにブロックごとの固定圧縮比を設定することであり得る。たとえば、基準フレームは、８ｘ８輝度Ｙならびに４ｘ４色差ＵおよびＶ画素のデータ・ブロックに分割され、前記輝度および色差の構成要素は８ビットでサンプリングされる。したがって、１つのデータ・ブロックは７６８の非圧縮ビットに相当する。圧縮係数３を設定した場合、１つのデータ・ブロックは、８ワードのバーストを受け入れる３２ビット・データ・バスを有するメモリ・プラットフォームの構造に完全に一致する２５６ビットのビット予算配分に基づいてエンコードされる。
【００１０】
しかし、そのような固定圧縮比法は、表示品質の点で最適ではない。実際、複雑なデータ・ブロックを正しくエンコードするには少なすぎるビットを使用すると、情報の大きな損失が生じ、それほど複雑でないデータ・ブロックは、２５６ビットより少ないビットを使用して損失なしにエンコードされることができるが、その結果、ビットの浪費が生じる。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
本発明の一目的は、メモリの妥当な電力消費量を維持しながら、従来の技術のものより良い表示品質を達成できるようにする、画像をメモリに格納するための方法および装置を提案することである。
【課題を解決するための手段】
【００１２】
このために、本発明による方法は、
ｎは整数であるｎ個の変換された要素の組を含む変換されたデータ・ブロックを生成するための入力データ・ブロックの変換を計算するステップと、
ｍはｎより小さい整数である、エンコードされたデータ・ブロックを生成するための変換されたデータ・ブロックのｍ個の最初に変換された要素をエントロピー・コーディングするステップと、
入力されたデータ・ブロックとエンコードされたデータ・ブロックの間のひずみ値と、エンコードされたデータ・ブロックをメモリに書き込むまたは読み出すために必要な電力消費量との加重和に基づいて費用関数を計算するステップと、
ｍの様々な値の場合のエントロピー・コーディングおよび費用関数計算ステップを反復するステップと、
費用関数を最小化するｍの値に対応するエンコードされたデータ・ブロックをメモリに格納するステップと
を含むことを特徴とする。
【００１３】
パワー・レートひずみ基準（すなわち、ひずみと電力消費量に依存するひずみ基準）に基づく費用関数の導入は、電力消費量、メモリ帯域幅および表示品質の間のより良いトレードオフを可能にする。
【００１４】
有益なことには、費用関数は、エンコードされたデータ・ブロックのひずみ値、電力消費量およびビット数の加重和に基づいて計算される。
【００１５】
本発明はまた、そのような格納方法を実施する記憶装置にも関する。
【００１６】
本発明の一実施形態によれば、入力データ・ブロックは、最初のパスで変換されてエントロピー・エンコードされ、結果として得られたエンコードされたデータ・ブロックは、費用関数が最小になるｍの値に対応するビット位置で切り捨てられ、次いでメモリに格納される。
【００１７】
本発明の他の実施形態によれば、変換された新たな要素が現行のエンコードされたデータ・ブロックに加算されるごとに費用関数の変動が計算され、現行のエンコードされたデータ・ブロックは、変動が正になるとすぐメモリに格納される。
【００１８】
本発明の他の実施形態によれば、メモリは、ｉは可変整数である予め決められた長さのｉワードのバーストによってアクセスされ、電力消費量は、エンコードされたデータ・ブロックのビット数と、ｉワードのバーストのビット当りの電力消費量と、ｉの値と、ｉワードのバースト数と、ワード長とから得られる。この場合、費用関数は、その時、メモリおよびデータ・バスの構造と特性に特に適応される。
【００１９】
本発明はまた、ビット・ストリームをデコードするためのビデオ・デコーダであって、エラー・データ・ブロックを提供するためのデコーディング・ユニットと、エンコードされたデータ・ブロックを格納するための前記記憶装置と、現行の動き補償データ・ブロックを送達するために、メモリから少なくとも１つのエンコードされたデータ・ブロックを抽出し、前記少なくとも１つのエンコードされたデータ・ブロックをデコードする手段と、現行の動き補償データ・ブロックに現行のエラー・データ・ブロックを加算する加算器であって加算器の出力が記憶装置の入力に提供される加算器とを備える、ビデオ・デコーダにも関する。
【００２０】
本発明はまた、画像のシーケンスをエンコードするためのビデオ・エンコーダであって、画像は入力データ・ブロックに分割され、部分的にエンコードされたデータ・ブロックを提供するためのエンコーディング・ユニットと、部分的にエンコードされたデータ・ブロックから部分的にデコードされたデータ・ブロックを提供するためのデコーディング・ユニットと、記憶装置および、メモリから少なくとも１つのエンコードされたデータ・ブロックを抽出し前記少なくとも１つのエンコードされたデータ・ブロックをデコードして動き補償データ・ブロックを送達するための手段を連続して備える予測ユニットと、部分的にデコードされたデータ・ブロックに動き補償データ・ブロックを加える加算器であって加算器の出力が予測ユニットの入力に提供される加算器と、入力データ・ブロックから動き補償データ・ブロックを減じる減算器であって減算器の出力がエンコーディング・ユニットの入力に供給される減算器とを備えるエンコーダにも関する。
【００２１】
本発明はまた、そのような記憶装置を備える携帯用装置にも関する。
【００２２】
前記発明は、最後に、前記記憶装置を実装するためのプログラム命令を含むコンピュータ・プログラムに関する。
【００２３】
本発明のこれらおよび他の態様は、以下で説明される諸実施形態から明らかになり、それらを参照しながら明らかにされる。
【００２４】
次に、本発明は、添付の図面を参照しながら、例として、より詳細に説明される。
【発明を実施するための最良の形態】
【００２５】
本発明は、ビデオ・デコーダおよびエンコーダにおける組込み圧縮方式のための電力消費制約に対処する新しい方法を紹介する。組込み圧縮は、前述のように、予測ビデオ・コーディング方式で基準フレームを圧縮することにある。本発明は、パワー・レートひずみ基準に基づく組込み圧縮方式のビット予算配分を行うことを提案する。
【００２６】
本発明は、シーケンスがメモリに格納されなければならないどんなビデオ・エンコーディングまたはデコーディング装置にも適用されることができる。実際、デコードされたフレームは、動き補償によって次のフレームを予測するために後で取り出されることができるように、一般にメモリに格納される必要がある。本発明は、特に、出力デコードされた画像の十分な全体の画像品質を維持しながら、基準画像メモリのサイズを縮小することに関する。明瞭のために、以下の説明では、従来のビデオ・デコーダ（たとえば、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｈ．２６４など）の場合に焦点を合わせる。
【００２７】
図１のビデオ・デコーダを再度考察する。前記ビデオ・デコーダは、エンコードされた画像のシーケンスを含むビット・ストリームをデコードするように適応され、前記エンコードされた画像はエンコードされたデータ・ブロックに分割される。そのために、前記デコーダは、
可変長デコーディング・ブロックＶＬＤ、逆量子化ブロックＩＱおよび、（たとえば、逆離散コサイン変換ＩＤＣＴを実行するように適応された）逆変換ブロックＩＴを含むデコーディング・ユニットであって、ビット・ストリームおよびデコードされた動きベクトルＭＶからのエラー・データ・ブロックｅを提供するのに適したデコーディング・ユニットと、
動き補償データ・ブロックを送達するために、デコードされたデータ・ブロックおよび動きベクトルに基づいて動き補償を実行する動き補償ユニットＭＭＣと、
現行のデコードされたデータ・ブロックを送達するために、現行の動き補償データ・ブロックに現行のデコードされたエラー・データ・ブロックを加えるための加算器と
を備える。
【００２８】
次いで、デコードされたデータ・ブロックのグループに対応するデコードされた出力画像ＯＦがディスプレイ（表示されていない）に送達される。デコーディング装置は、任意選択で、デブロッキング・フィルタＤＦを備え、前記フィルタは、たとえばＨ．２６４規格で提案されたものである。
【００２９】
本発明によるビデオ・デコーダの再構成ユニットは、組込みエンコーディング・ユニットｅＥＮＣと、メモリＭＥＭと、組込みデコーディング・ユニットｅＤＥＣと、補間フィルタＦＩＬとを連続して備える。
【００３０】
本発明の一実施形態によれば、組込みエンコーディングｅＥＮＣユニットは、各係数が８ビットでサンプリングされる、８ｘ８画素の輝度ブロックの場合６４個の変換された係数（たとえばＤＣＴ係数）の組を備える変換されたデータ・ブロックを生成するために、（たとえば離散コサイン変換ＤＣＴを使用して）入力データ・ブロックを周波数変換するための変換ブロックを備える。
【００３１】
それはさらに、エンコードされたデータ・ブロックを生成するために、変換されたデータ・ブロックのｍ個の最初に変換された要素をエントロピー・コーディングするためのエントロピー・コーディング・ブロックを備える。ただし、ｍは１からｎまで変化する整数であり、ｎは変換されたデータ・ブロック内の関連する変換された要素の合計数である。前記実施形態では、エントロピー・コーディング・ブロックはビット・プレーン・コーディングに基づく。前記コーディングは、最上位ビットから始めて、ビット・プレーンによってＤＣＴ係数ビット・プレーンをエンコードする。そのようなコーディング方式は、たとえば、Ｒ．Ｊ．ｖａｎ  ｄｅｒ  Ｖｌｅｕｔｅｎによる「Ｌｏｗ−ｃｏｍｐｌｅｘｉｔｙ  ｌｏｓｓｌｅｓｓ  ａｎｄ  ｆｉｎｅ−ｇｒａｎｕｌａｒｉｔｙ  ｓｃａｌａｂｌｅ  ｎｅａｒ−ｌｏｓｓｌｅｓｓ  ｃｏｍｐｒｅｓｓｉｏｎ  ｏｆ  ｃｏｌｏｒ  ｉｍａｇｅｓ」、Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｄａｔａ  Ｃｏｍｐｒｅｓｓｉｏｎ  Ｃｏｎｆｅｒｅｎｃｅ、ｐｐ．４７７、Ａｐｒｉｌ  ２００２に記載されている。そのようなコーディング方式によれば、ＤＣ係数は損失なしにエンコードされる。ＡＣ係数では、圧縮はゾーン・コーディングによって達成される。各ビット・プレーンでは、前に非重要であった係数の重要度マップは、１ビットは１に等しい最大行Ｒｍａｘと最大列Ｃｍａｘによって表される。このゾーンを超えるデータは送信される必要はない。エネルギーは一般に低周波数係数にあるので、この技法は良好なビットレート低減を意味する。その大きな利点は、微細粒スケーラビリティを提供することである。前記組込みエンコーディング方式では、各変換された要素はＤＣＴ係数の１ビットであり、ｎは多くても５１２ビットに等しい。
【００３２】
ビデオ・エンコーダは、計算手段（表示されていない）、たとえば、入力データ・ブロックとそれに対応するエンコードされ次いでデコードされたデータ・ブロックとの間のひずみ値と、エンコードされたデータ・ブロックのビット数、および／またはエンコードされたデータ・ブロックをメモリに書き込むまたは読み出すために必要な電力消費量との加重和に基づく費用関数を計算するためのプロセッサを備える。
【００３３】
費用関数ｃ（ｉ＋１）は次のように計算される。
ｃ（ｉ＋ｌ）＝λｌ＊ｓｉｚｅ＿ｉｎ＿ｂｉｔｓ＋λ２＊ｄｉｓｔｏｒｔｉｏｎ＋λ３＊ｐｏｗｅｒ＿ｃｏｎｓｕｍｐｔｉｏｎ
ｃ（ｉ＋ｌ）＝ｃ（ｉ）＋δｃ
上式中、
ｓｉｚｅ＿ｉｎ＿ｂｉｔｓは、次の変換された要素ａ（ｉ＋１）が現行のエンコードされたデータ・ブロックに加えられる場合、次のエンコードされたデータ・ブロックのビット数であり、
ｄｉｓｔｏｒｔｉｏｎは、入力データ・ブロックとそれに対応するエンコードされたデータ・ブロックのデコードされたバージョンとの間の差（たとえば、平均二乗誤差ＭＳＥ、絶対差の和ＳＡＤなど）の算定値であり、前記ｄｉｓｔｏｒｔｉｏｎはまた、たとえば従来のエンコーディング・チェーンＤＣＴ−Ｑ−ＶＬＣの場合、エンコードされたブロックをデコードすることなく計算されることができ、前記ｄｉｓｔｏｒｔｉｏｎは、入力データ・ブロックとエンコードされたデータ・ブロックのデコードされたバージョンとの間のＭＳＥに相当する量子化前と後のＤＣＴ係数間の差、たとえばＭＳＥから得られ、
ｐｏｗｅｒ＿ｃｏｎｓｕｍｐｔｉｏｎは、エンコードされたデータ・ブロックをメモリに書き込み、さらに先の動き補償ステップ中にそれを読み出すための電力浪費量の推定値または算定値であり、
ｃ（ｉ＋ｌ）は、次のデータ・ブロックの（ｉ＋ｌ）個の変換された要素の組がエンコードされた場合の費用関数の値を表し、ｃ（ｉ）は、現行データ・ブロックのｉ個の変換された要素の組がエンコードされた場合の費用関数の値を表し、δｃは、これら２つの値の間のコスト変動であり、
λ１、λ２、およびλ３は、各パラメータの相対重要度を反映する加重係数である。
【００３４】
本発明の一実施形態によれば、次の変換された要素ａ（ｉ＋ｌ）は、δｃの値が負の場合、しかもその場合にのみ、実際にビット・ストリームに加えられる。それは、パラメータｓｉｚｅ＿ｉｎ＿ｂｉｔｓ、ｄｉｓｔｏｒｔｉｏｎ、およびｐｏｗｅｒ＿ｃｏｎｓｕｍｐｔｉｏｎを通しての現行データ・ブロックの特性と、λ１、λ２、およびλ３を通してのエンコーディング方針との両方に依存する。たとえば、圧縮フレームの最終サイズに対する厳しい要求がある場合、λ１の強い値が必要である、すなわち、それは予め決められたサイズ、たとえばＳＤＲＡＭの総サイズを超えてはならない。λ２の大きな値は、表示品質が主要な決定基準であることを意味する。最後に、λ３の値が高い場合、それは、電力浪費量の利得が情報の損失より重要であることを意味する。そのような手法を使用することには、いくつかの利点がある。
【００３５】
第１の利点は、表示品質である。ビデオ・デコーダでの組込み圧縮の使用は、画像のシーケンスを標準デコーディングから外れさせ（いわゆるドリフト効果）、画像のグループを通して累積する品質低下を伴う。従来の技術に記載の固定圧縮比法に比べて、提案された方法は、より柔軟なレート配分を可能にし、従来のレートひずみ手法の場合と同様に、より複雑なブロックにより多くのビット数を与える。
【００３６】
他の利点は、電力消費量およびメモリ構造である。従来のレートひずみ基準に比べて、提案された費用関数の使用は、より多くのビットを格納することによって誘発される電力浪費量を考慮に入れる。実際、この浪費量は、その構造（すなわちワード・サイズ）、データ・バスの幅、利用可能なバースト・モード、および各バースト・モード（読出しまたは書込み）におけるアクセスのエネルギー消費量など、装置に実装されているメモリの知られている特性によって計算（あるいは測定）される。したがって、ビットレート配分法は、大きなエネルギー損失を意味する小さなレートひずみ利得に有利であることはできない。
【００３７】
さらに他の利点は、パワー・スケーラビリティである。必要な場合は、加重係数λ３は、装置バッテリのレベルに応じて自動的に調整される。フル・チャージでは、λ３の値は小さく、費用関数は従来のレートひずみ基準に非常に近く、表示品質を最適化する。ニアエンプティ・チャージでは、電力節約が重大な問題であり、したがって、λ３の値は最大値に設定される。
【００３８】
ビデオ・デコーダは、費用関数を最小化するｍの値に対応するエンコードされたデータ・ブロックをメモリに書き込むことを可能にするメモリ・コントローラ（表示されていない）を備える。前述の実施形態によれば、費用関数の変動は、新しい要素がビット・ストリームに加えられるごとに計算される。プロセスは、変動が正になるとすぐ停止する。この方法は、計算コストがより少ないが、プロセスは費用関数のローカル・ミニマムにトラップされる可能性がある。本発明の他の実施形態によれば、入力データ・ブロックは最初のパスでフルにエンコードされ、その結果として得られたビット・ストリームは、メモリ内の一時保存場所にローカルに格納される。ｍの値ごとに費用関数が計算される。ビット・ストリームは、費用関数が最小であるｍ個の最初の要素に対応するビット位置で切り捨てられ、次いでメモリに書き込まれる。一方では、この方法は、網羅的であり、したがって、全体的に最小コストで切捨て点を見出すことを保証する。他方、この方法は、全ての情報が最後のビットまでコーディングされなければならず、費用関数の全ての値が計算され格納されなければならないので、計算にコストがかかる。
【００３９】
現行のデコードされた動きベクトルＭＶに基づいて、メモリ・コントローラは、少なくとも１つのエンコードされたデータ・ブロックをメモリから読み出すことができるようにする。次いで、組込みデコーディング・ユニットｅＤＥＣは、少なくとも１つのエンコードされたデータ・ブロックをデコードするように適応される。組込みエンコーディング・ユニットに応じて、組込みデコーディング・ユニットは、エントロピー・デコーディング・ブロックおよび逆変換ブロックＩＴのブロックを連続して備える。少なくとも１つのデコードされたデータ・ブロックは、当業者に知られている原理に従って現行の動き補償データ・ブロックｍｃを送達するために、補間フィルタＦＩＬによって最終的に処理される。
【００４０】
本発明の他の実施形態によれば、組込みエンコーディング・ユニットｅＥＮＣは、（たとえばＤＣＴを使用した）変換ブロックと、量子化ブロックと、エントロピー・コーディング・ブロック（たとえば可変長デコーディングＶＬＣブロック）とを連続して含む従来のエンコーディング・チェーンを備える。この場合、エンコードされたデータ・ブロックは、最初のｍ個のＤＣＴ係数であるｍ個の最初に変換された要素を備え、費用関数を最小化するｍの値に対応するエンコードされたデータ・ブロックは、メモリに格納される。対応する組込みデコーディング・ユニットは、次いで、可変長デコーディングＶＬＤブロックと、逆量子化ブロックと、ＩＤＣＴブロックを連続して含む従来のデコーディング・チェーンを備える。
【００４１】
他の圧縮方式も可能であることは、当業者には明らかであろう。たとえば、組込みエンコーディング・ユニットは、ＶＬＣタイプのエントロピー・コーディング・ブロックと共に微分パルス・コード変調ＤＰＣＭに基づく変換ブロックを連続して備える。
【００４２】
このパラグラフでは、費用関数を計算するステップがより詳細に示される。パラメータｓｉｚｅ＿ｉｎ＿ｂｉｔｓは、構成によって各ステップで知られる。ｄｉｓｔｏｒｔｉｏｎ値は、切り捨てられたＤＣＴ係数を構築し、（たとえば、平均二乗誤差ＭＳＥまたは絶対差ＳＡＤの和に基づくアルゴリズムを使用して）オリジナル値で差を計算して算出される。
【００４３】
ｐｏｗｅｒ＿ｃｏｎｓｕｍｐｔｉｏｎは以下のように計算される。現代のＳＤＲＡＭでは、データはｉワード（たとえば、ｉ＝１、２、４、６または８）のバーストによってアクセスされることができる。１ワードはＮビット（一般にＮ＝３２であり、１６および６４は他の一般的な値である）を含み、Ｎはまたデータ・バスの幅でもある。エンコードされたブロックは、８ワードのｎ８バースト、６ワードのｎ６バーストなどを使用して書き込まれ、フェッチされる。各バースト・モードは、それぞれ異なるエネルギー消費量に対応する。表１は、３２ビット・データ・バス幅で、１ワードおよび８ワードのバーストを有するＳＤＲＡＭの場合のアクセスごとの消費量の例を提供する。提示された数字は、特定のモデルを使用した推定値である。
【表１】
2008502261.tif 000003
【００４４】
８ワードのバーストの消費量は８シンプル・アクセスの消費量よりはるかに低いと言える。したがって、変換ビットごとのパワー・コストは各モードで異なる。したがって、所与のビット数（ｓｉｚｅ＿ｉｎ＿ｂｉｔｓ）では、次の式に従って、全てのビットを変換することができるようにするバーストと最小浪費量との組合せを選択しなければならない。
【数１】
2008502261.tif 000004
上式中、αｉは、メモリ特性によって与えられる、バースト・モードｉでのビットごと（またはワードごと）のパワー・コストである。
【００４５】
本発明の一実施形態によれば、最適の｛ｎ８，ｎ６，．．．，ｎｌ｝構成は、トップ−ボトム手法を利用する以下の反復法に基づいて決定される。実際には常にそうであるが、αｉはｉと共に減少すると仮定しよう。各反復で、２つのベクトル候補、ｎ（０）＝｛ｎ８（０），ｎ６（０），．．．，ｎ１（０）｝およびｎ（１）＝｛ｎ８（１）、ｎ６（１），．．．，ｎｌ（１）｝を考える。最初の２つの候補は、
ｎ（０）＝｛ｓｉｚｅ＿ｉｎ＿ｂｉｔｓ／（８＊ｗｏｒｄ＿ｌｅｎｇｔｈ），０，．．．，０｝および
ｎ（ｌ）＝｛１＋ｓｉｚｅ＿ｉｎ＿ｂｉｔｓ／（８＊ｗｏｒｄ＿ｌｅｎｇｔｈ），０，．．．，０｝
である。
【００４６】
ｎ（０）がｓｉｚｅ＿ｉｎ＿ｂｉｔｓにぴったり合う場合、それはベストの候補であり、プロセスは停止する。そうでない場合、ｎ（０）は小さすぎて式（１）の第１条件を満たすことができないが、ｎ（１）は十分に大きい。対応する電力消費量Ｐ（１）が計算される。ｎ（１）およびＰ（ｌ）は、ベストの候補ｎｂｅｓｔおよびＰｂｅｓｔとして格納される。
【００４７】
反復ｓで、ｎ（０）およびｎ（１）は、反復（ｓ−１）にある前のｎ（０）ベクトルから構築される。（ｓ−１）値ｎ８（０）、ｎ６（０）、．．．、ｎｉ（０）は凍結され、確定的に選ばれる。次に、２つの候補は以下の構造を有する。すなわち、
ｎ（０）＝｛ｎ８（０），ｎ６（０），．．．，ｎｉ（０），ｎｉ−１（０），０，．．．，０｝および
ｎ（ｌ）＝｛ｎ８（１），ｎ６（１），．．．，ｎｉ（１），ｎｉ−１（１），０，．．．，０｝であり、
上式中、ｎｉ−１（０）＝δｎ／（（ｉ−１）＊Ｎ）、ｎｉ−１（１）＝ｎｉ−１（０）＋１であり、δｎは反復（ｓ−１）において前のｎ（０）ベクトルによってなくされたビット数である。ｎ（０）がｓｉｚｅ＿ｉｎ＿ｂｉｔｓにぴったり合う場合、ベストの候補であり、プロセスは停止する。そうでない場合は、ｎ（０）は小さすぎて式（１）の第１条件を満たすことができないが、ｎ（１）は、第１反復の場合と同様に、十分に大きい。対応する電力消費量Ｐ（１）が計算される。Ｐ（１）が現行のＰｂｅｓｔより低い場合、ｎ（１）およびＰ（ｌ）はベストの候補ｎｂｅｓｔおよびＰｂｅｓｔとして格納される。プロセスは、最後のバースト・モードに到達するまで、あるいはｎ（０）がｓｉｚｅ＿ｉｎ＿ｂｉｔｓにぴったり合うまで続く。
【００４８】
最適ではないが、より簡単な解決法は、予め設定されたルール、たとえば次の原理、すなわち、ｎ８＝ｓｉｚｅ＿ｉｎ＿ｂｉｔｓ／（８＊Ｎ）であり、ｎｉ＝δｎｉ／（ｉ＊Ｎ）であり、δｎｉは残りのヒット数であるｎ＝｛ｎ８，ｎ６，．．．，ｎ１｝に従ってエンコードされたデータ・ブロックを分解してバースト構成を直接構築することと、関連するｐｏｗｅｒ＿ｃｏｎｓｕｍｐｔｉｏｎを計算することとにある。この値は次いで費用関数に導入される。このような解決法は、複雑さの中で非常に低コストであるという利点を有するが、選択された構成が所与のエンコードされたデータ・ブロックの転送（読出し／書込み）のための電力消費量を最小化することを保証しない。
【００４９】
上記２つの解決法間のトレードオフは、全てのｓｉｚｅ＿ｉｎ＿ｂｉｔｓ値のための最適構成を前もって構築することにあり、それらを（たとえばＲＯＭ内の）表に格納するであろう。いずれにしても、第１の前述の方法は、実際には常にそうであるが、利用可能なバースト・モードの数が限定されている場合、それほど複雑ではない。
【００５０】
前の説明では、量子化ステップは、あるとすれば、既に選択されているものと仮定されている。その結果として得られたビット・ストリームは、前述のように、関連する点で、たとえばＶＬＣエンコードされたランレベル・カップルの後で、切り捨てることによって作成されている。
【００５１】
他の実施形態によれば、あるいは前の説明に追加して、費用関数は、量子化ステップＱＰを先験的に選択するために使用されることができる。Ｓｉｚｅ＿ｉｎ＿ｂｉｔｓは、（ＭＳＥまたはＳＡＤの平均値に基づいて）ＱＰおよび現行のデータ・ブロックのアクティビティを使用して推定される。Ｄｉｓｔｏｒｔｉｏｎは、同じ２つのパラメータから推定される。最後に、ｐｏｗｅｒ＿ｃｏｎｓｕｍｐｔｉｏｎは、前述のように、推定されたｓｉｚｅ＿ｉｎ＿ｂｉｔｓ値を使用して推定される。コスト推定値を最小化するＱＰ値が選択される。
【００５２】
図２は、ビデオ・エンコーディング装置の一例を示す。そのようなエンコーディング装置は、
入力ビデオ・データＩＮを部分的にエンコードされたデータ・ブロックに変換するのに適した直接周波数変換ブロック、たとえば直接離散コサイン変換ＤＣＴ、および量子化ブロックＱ、ならびに部分的にエンコードされたデータ・ブロックからビット・ストリームＥＳを生成するのに適した可変長コーディング・ブロックＶＬＣを連続して備えるエンコーディング・ユニットと、
逆量子化ブロックＩＱ、部分的にエンコードされたデータ・ブロックから部分的にデコードされたデータ・ブロックを提供するための逆周波数変換ブロックＩＴ、たとえば逆離散コサイン変換ブロックＩＤＣＴを連続して備えるデコーディング・ユニットと、
組込みエンコーディング・ユニットｅＥＮＣ、メモリＭＥＭ、組込みデコーディング・ユニットｅＤＥＣ、および動き補償データ・ブロックを生成するための動き補償ユニットＭＣを連続して備える予測ユニットであって、本発明による方法に従って、組込みエンコーディング・ユニットによって生成されたエンコードされたデータ・ブロックがメモリに格納される予測ユニットと、
動き補償データ・ブロックを部分的にデコードされたデータ・ブロックに加える加算器であって、加算器の出力が予測ユニットの入力に提供される加算器と、
動き補償データ・ブロックを入力データ・ブロックから引く減算器であって減算器の出力がエンコーディング・ユニットの入力に提供される減算器と
を含む。
【００５３】
本発明のいくつかの実施形態が前述で例としてのみ説明されてきたが、添付の特許請求の範囲に記載の請求項によって定義された本発明の範囲から逸脱することなく、説明された実施形態に変更および変形が加えられることができることは、当業者には明らかであろう。さらに、特許請求の範囲では、括弧に入れられた参照符号は請求を限定すると解釈されるべきでない。用語「備える」は、特許請求の範囲に掲載されたもの以外の要素またはステップの存在を排除しない。用語（英語の）「ａ」または「ａｎ」は複数を排除しない。本発明は、いくつかの個別要素を備えるハードウェアによって、および適切にプログラムされたコンピュータによって実施されることができる。いくつかの手段を列挙している装置請求項では、これらの手段のいくつかは、１つの同じ項のハードウェアによって実施されることができる。手段が互いに異なる独立の請求項で説明されているという単なる事実は、これらの手段の組合せが有利に使用されることができないことを示さない。
【図面の簡単な説明】
【００５４】
【図１】デコーディング装置の一実施形態を示すブロック図である。
【図２】エンコーディング装置の一実施形態を示すブロック図である。
【図１】
2008502261.tif 000005
【図２】
2008502261.tif 000006
【国際調査報告】
2008502261.tif 000007
2008502261.tif 000008