(57)【特許請求の範囲】
【請求項１】
画像データ又は音声データのいずれかであるエンコードされたデータのブロックをデコードするのに用いられる欠落／破損した圧縮定数であって、当該エンコードされたデータのブロックにおける欠落／破損した圧縮定数の少なくとも１つを復元するデータ復元方法において、
少なくとも１つの隣接するブロックのエンコードされたデータと、上記エンコードされたデータのブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とを用いて当該ブロックの上記欠落／破損した圧縮定数を推定するステップを有し、
上記欠落／破損した圧縮定数は、上記ブロックのエンコードされたデータと上記少なくとも１つの隣接するブロックのエンコードされたデータとの間の差分を用いて推定されることを特徴とするデータ復元方法。
【請求項２】
上記エンコードされたデータは、画像データであり、各ブロックは、当該ブロックにおける最小のデータ値を表すＭＩＮ、当該ブロックのダイナミックレンジを表すＤＲ、当該ブロックにおける最大のデータ値を表すＭＡＸからなるグループから選択される圧縮定数を有することを特徴とする請求項１記載のデータ復元方法。
【請求項３】
上記欠落／破損した圧縮定数は、上記ブロック及び上記少なくとも１つの隣接するブロックにおけるエンコードされたデータと、当該ブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とに基づき、最小二乗推定法を用いることで推定されることを特徴とする請求項１記載のデータ復元方法。
【請求項４】
上記欠落／破損した圧縮定数は、上記ブロックのデコードされた値の総和を上記少なくとも１つの隣接するブロックのデコードされた値の総和に等しくする値を計算することによって推定されることを特徴とする請求項１記載のデータ復元方法。
【請求項５】
上記推定を行うステップは、Ｎは上記ブロックに隣接するブロックの数を表し、ＭＩＮ’は当該隣接するブロックのＭＩＮ値を表し、ＤＲ及びＤＲ’はそれぞれ当該ブロック及び当該隣接するブロックのＤＲ値を表し、Ｑは当該ブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は当該隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅiは当該ブロックのエンコードされたデータを表し、ｅi’は当該隣接するブロックのエンコードされたデータを表すものとして、以下の式のいずれかに基づいてＭＩＮを推定するステップを有することを特徴とする請求項２記載のデータ復元方法。
【数１】
0004796228.tif 000014
【数２】
0004796228.tif 000015
【請求項６】
上記推定を行うステップは、Ｎは上記ブロックに隣接するブロックの数を表し、ＭＩＮ及びＭＩＮ’はそれぞれ当該ブロック及び当該隣接するブロックのＭＩＮ値を表し、Ｑは当該ブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は当該隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅi及びｅi’はそれぞれ当該ブロック及び当該隣接するブロックのエンコードされたデータを表し、ＤＲ’は当該隣接するブロックのダイナミックレンジを表すものとして、以下の式のいずれかに基づいてＤＲを推定するステップを有することを特徴とする請求項２記載のデータ復元方法。
【数３】
0004796228.tif 000016
【数４】
0004796228.tif 000017
【数５】
0004796228.tif 000018
【数６】
0004796228.tif 000019
【請求項７】
上記欠落／破損した圧縮定数を復元するために、整数演算が使用されることを特徴とする請求項１記載のデータ復元方法。
【請求項８】
上記ＭＩＮ値は、上記ブロックからデコードされた値と、上記隣接するブロックからデコードされた値との間の差の平均値を最小にする値を計算することによって推定されることを特徴とする請求項２記載のデータ復元方法。
【請求項９】
上記ＤＲは、上記ブロックのデコードされた値の総和を上記隣接するブロックのデコードされた値の総和に等しくする値を計算することによって推定されることを特徴とする請求項２記載のデータ復元方法。
【請求項１０】
上記推定を行うステップは、ある方程式に従って実行され、その方程式の計算は、該方程式を除算処理するための分子及び分母の値を完全な精度で生成し、そして、Ｋを定数として、上記分子及び分母の上記値が２Kより小さくまで上記分子及び分母の上記値から最下位ビットを切り捨て、さらに、Ｋビットの除算を行うことにより実行されることを特徴とする請求項１記載のデータ復元方法。
【請求項１１】
画像データ又は音声データのいずれかであるエンコードされたデータのブロックをデコードするのに用いられる欠落／破損した圧縮定数であって、当該エンコードされたデータのブロックにおける欠落／破損した圧縮定数の少なくとも１つを復元するデータ復元システムにおいて、
少なくとも１つの隣接するブロックのエンコードされたデータと、上記エンコードされたデータのブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とが入力データとして供給され、該入力データを用いて当該ブロックの上記欠落／破損した圧縮定数を推定する推定回路を備え、
上記欠落／破損した圧縮定数は、上記ブロックのエンコードされたデータと上記少なくとも１つの隣接するブロックのエンコードされたデータとの間の差分を用いて推定されることを特徴とするデータ復元システム。
【請求項１２】
上記推定回路は、推定論理回路、プロセッサ、及び推定論理回路とプロセッサの組合せのいずれかから選択されることを特徴とする請求項１１記載のデータ復元システム。
【請求項１３】
上記エンコードされたデータは、画像データであり、各ブロックは、当該ブロックにおける最小のデータ値を表すＭＩＮ、当該ブロックのダイナミックレンジを表すＤＲ、当該ブロックにおける最大のデータ値を表すＭＡＸからなるグループから選択される圧縮定数を有することを特徴とする請求項１１記載のデータ復元システム。
【請求項１４】
上記欠落／破損した圧縮定数は、上記ブロック及び上記少なくとも１つの隣接するブロックにおけるエンコードされたデータと、当該ブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とに基づき、最小二乗推定法を用いることで推定されることを特徴とする請求項１１記載のデータ復元システム。
【請求項１５】
上記欠落／破損した圧縮定数は、上記ブロックのデコードされた値の総和を上記少なくとも１つの隣接するブロックのデコードされた値の総和に等しくする値を計算することによって推定されることを特徴とする請求項１１記載のデータ復元システム。
【請求項１６】
上記推定回路は、Ｎは上記ブロックに隣接するブロックの数を表し、ＭＩＮ’は当該隣接するブロックのＭＩＮ値を表し、ＤＲ及びＤＲ’はそれぞれ当該ブロック及び当該隣接するブロックのＤＲ値を表し、Ｑは当該ブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は当該隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅiは当該ブロックのエンコードされたデータを表し、ｅi’は当該隣接するブロックのエンコードされたデータを表すものとして、以下の式のいずれかに基づいてＭＩＮを推定することを特徴とする請求項１３記載のデータ復元システム。
【数７】
0004796228.tif 000020
【数８】
0004796228.tif 000021
【請求項１７】
上記推定回路は、Ｎは上記ブロックに隣接するブロックの数を表し、ＭＩＮ及びＭＩＮ’はそれぞれ当該ブロック及び当該隣接するブロックのＭＩＮ値を表し、Ｑは当該ブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は当該隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅi及びｅi’はそれぞれ当該ブロック及び当該隣接するブロックのエンコードされたデータを表し、ＤＲ’は当該隣接するブロックのダイナミックレンジを表すものとして、以下の式のいずれかに基づいてＤＲを推定することを特徴とする請求項１３記載のデータ復元システム。
【数９】
0004796228.tif 000022
【数１０】
0004796228.tif 000023
【数１１】
0004796228.tif 000024
【数１２】
0004796228.tif 000025
【請求項１８】
上記欠落／破損した圧縮定数を復元するために、整数演算が使用されることを特徴とする請求項１１記載のデータ復元システム。
【請求項１９】
上記ＭＩＮ値は、上記ブロックからデコードされた値と、上記隣接するブロックからデコードされた値との間の差の平均値を最小にする値を計算することによって推定されることを特徴とする請求項１３記載のデータ復元システム。
【請求項２０】
上記ＤＲは、上記ブロックのデコードされた値の総和を上記隣接するブロックのデコードされた値の総和に等しくする値を計算することによって推定されることを特徴とする請求項１３記載のデータ復元システム。
【請求項２１】
上記推定回路は、推定に使用する式において除算処理するための分子及び分母の値を格納する高精度レジスタと、Ｋを定数として、上記分子及び分母の上記値が２Kより小さくなるまで、該分子及び分母の上記値から最下位ビットを切り捨てるシフト論理回路と、Ｋビット除算処理を実行する除算論理回路とを備える請求項１１記載のデータ復元システム。
【請求項２２】
画像データ又は音声データのいずれかであるエンコードされたデータのブロックをデコードするのに用いられる欠落／破損した圧縮定数であって、当該エンコードされたデータのブロックにおける欠落／破損した圧縮定数の少なくとも１つを復元する処理システムに、
少なくとも１つの隣接するブロックのエンコードされたデータと、上記エンコードされたデータのブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とを用いて当該ブロックの上記欠落／破損した圧縮定数を推定することを実行させるためのプログラムが格納されたコンピュータ読取可能な媒体であって、
上記欠落／破損した圧縮定数は、上記ブロックのエンコードされたデータと上記少なくとも１つの隣接するブロックのエンコードされたデータとの間の差分を用いて推定されることを特徴とするコンピュータ読取可能な媒体。
【請求項２３】
上記エンコードされたデータは、ブロックの最小のデータ値を表すＭＩＮ、上記ブロックのダイナミックレンジを表すＤＲ、上記ブロックにおける最大のデータ値を表すＭＡＸからなるグループから選択される圧縮定数を有することを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【請求項２４】
上記欠落／破損した圧縮定数は、上記ブロック及び上記少なくとも１つの隣接するブロックにおけるエンコードされたデータと、当該ブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とに基づき、最小二乗推定法を用いることで推定されることを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【請求項２５】
上記欠落／破損した圧縮定数は、上記ブロックのデコードされた値の総和を上記少なくとも１つの隣接するブロックのデコードされた値の総和に等しくする値を計算することによって推定されることを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【請求項２６】
上記処理は、Ｎは上記ブロックに隣接するブロックの数を表し、ＭＩＮ’は当該隣接するブロックのＭＩＮ値を表し、ＤＲ及びＤＲ’はそれぞれ当該ブロック及び当該隣接するブロックのＤＲ値を表し、Ｑは当該ブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は当該隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅiは当該ブロックのエンコードされたデータを表し、ｅi’は当該隣接するブロックのエンコードされたデータを表すものとして、以下の式のいずれかに基づいてＭＩＮを推定することを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【数１３】
0004796228.tif 000026
【数１４】
0004796228.tif 000027
【請求項２７】
上記処理は、Ｎは上記ブロックに隣接するブロックの数を表し、ＭＩＮ及びＭＩＮ’はそれぞれ当該ブロック及び当該隣接するブロックのＭＩＮ値を表し、Ｑは当該ブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は当該隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅi及びｅi’はそれぞれ当該ブロック及び当該隣接するブロックのエンコードされたデータを表し、ＤＲ’は当該隣接するブロックのダイナミックレンジを表すものとして、以下の式のいずれかに基づいてＤＲを推定することを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【数１５】
0004796228.tif 000028
【数１６】
0004796228.tif 000029
【数１７】
0004796228.tif 000030
【数１８】
0004796228.tif 000031
【請求項２８】
上記ＭＩＮ値は、上記ブロックからデコードされた値と、上記隣接するブロックからデコードされた値との間の差の平均値を最小にする値を計算することによって推定されることを特徴とする請求項２３記載のコンピュータ読取可能な媒体。
【請求項２９】
上記ＤＲは、上記ブロックのデコードされた値の総和を上記隣接するブロックのデコードされた値の総和に等しくする値を計算することによって推定されることを特徴とする請求項２３記載のコンピュータ読取可能な媒体。
【請求項３０】
上記欠落／破損した圧縮定数を復元するために、整数演算が使用されることを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【請求項３１】
上記推定は、ある方程式に従って実行され、その方程式の計算は、該方程式を除算処理するための分子及び分母の値を完全な精度で生成し、そして、Ｋを定数として、上記分子及び分母の上記値が２Kより小さくまで上記分子及び分母の上記値から最下位ビットを切り捨て、さらに、Ｋビットの除算を行うことにより実行されることを特徴とする請求項２２記載のコンピュータ読取可能な媒体。
【請求項３２】
画像データ又は音声データのいずれかであるエンコードされたデータのブロックをデコードするのに用いられる欠落／破損した圧縮定数であって、当該エンコードされたデータのブロックにおける欠落／破損した圧縮定数の少なくとも１つを復元するデータ復元装置において、
少なくとも１つの隣接するブロックのエンコードされたデータと、上記エンコードされたデータのブロック及び当該少なくとも１つの隣接するブロックにおける復元可能な他の圧縮定数とを用いて当該ブロックの上記欠落／破損した圧縮定数を推定する推定手段を備え、
上記欠落／破損した圧縮定数は、上記ブロックのエンコードされたデータと上記少なくとも１つの隣接するブロックのエンコードされたデータとの間の差分を用いて推定されることを特徴とするデータ復元装置。
【請求項３３】
上記エンコードされたデータは、画像データであり、各ブロックは、当該ブロックにおける最小のデータ値を表すＭＩＮ、当該ブロックのダイナミックレンジを表すＤＲ、当該ブロックにおける最大のデータ値を表すＭＡＸからなるグループから選択される圧縮定数を有することを特徴とする請求項３２記載のデータ復元装置。
【請求項３４】
上記推定は、ある方程式に従って実行され、その方程式の計算は、該方程式を除算処理するための分子及び分母の値を完全な精度で生成し、そして、Ｋを定数として、上記分子及び分母の上記値が２Kより小さくまで上記分子及び分母の上記値から最下位ビットを切り捨て、さらに、Ｋビットの除算を行うことにより実行されることを特徴とする請求項３２記載のデータ復元装置。
【発明の詳細な説明】
【０００１】
本発明の背景技術
１．本発明の技術分野
本発明はデータの復元に関する。詳しくは、本発明は、圧縮データのビットストリームにおける欠落又は破損したブロックデータの復元に関する。
【０００２】
２．技術背景
ビデオ画像又は音声データを伝送又は記録するために、このようなデータを圧縮することが望まれることが多い。データが圧縮される場合、通常、圧縮定数（compression constants）が生成される。幾つかの具体例では、ブロックサイズのデータが生成される。圧縮定数は、圧縮された画像と共に伝送され、あるいは記録される。この圧縮定数が、データの伸張処理を行う前に欠落又は破損すると問題が生じる。具体例として、以下では、画像データの圧縮定数が欠落してしまった場合に生じる問題について説明する。
【０００３】
デジタル画像を構成する離散データ点は、画素と呼ばれる。通常、各画素は、それぞれ独立して８ビットを用いて表現されるが、圧縮又は分析の目的では、他の表現を用いることもある。これら代用的な表現の多くでは、まず、生データを互いに素な集合（disjoint sets）に分割する。これらの集合は、必ずしも一般的なブロック形状を有しているわけではないが、歴史的な理由から、これらの集合は「ブロック」と呼ばれる。代用的な表現では、次に、ブロック全体に亘る情報（block-wide information）及び画素毎の情報によりデータを特徴付ける。
【０００４】
ブロック全体に亘る情報の例としては、最小画素値（ＭＩＮ）、最大画素値（ＭＡＸ）、画素値のダイナミックレンジ（ＤＲ）等が含まれ、ここでＤＲ＝ＭＡＸ−ＭＩＮ又はＤＲ＝１＋ＭＡＸ−ＭＩＮである。画素毎の情報は、例えば、全体的な情報により特定された範囲内で画素値がどこに属するかを示している。圧縮を実現するために、画素毎の情報は、記録用の数ビットのみが使用され、この結果、使用されるビットの総数は、生の画像を記録するために必要なビットの総数より少なくなる。
【０００５】
一具体例において、ブロックデータは、ＭＩＮ、ＤＲ及びＱビット数（後述する）を有し、画素データは、Ｑコード（Q code）を有する。Ｑコードは、集合（ＭＩＮ，ＭＩＮ＋１・・・ＭＡＸ）内の１つの値を特定する［０，２Ｑ−１］の範囲内の整数であるＱビット数である。Ｑビット数は、通常小さく、ＤＲ値は、比較的大きいため、通常、全ての画素値を正確に表現することは不可能である。したがって、画素値をＱコード値に変換してビット数を削減した場合、量子化エラーが生じる。例えば、Ｑビット数が３の場合、エラーを生じることなく、集合（ＭＩＮ，ＭＩＮ＋１・・・ＭＡＸ）から２３＝８個の値を表現することができる。これら以外の画素の値は、これら８つの値のいずれかに丸められる。この丸めにより量子化エラーが生じる。
【０００６】
例えばＭＩＮ、ＭＡＸ、ＤＲ等のブロック情報のいずれかが欠落すると、多くの画素に影響が生じるため、画像における破損が大きくなる。このため、これら欠落したデータを正確に推定又は復元する技術が望まれている。
【０００７】
復元方法は、デコード領域とエンコード領域の２つのカテゴリに分類される。デコード領域の復元法は、画像の一部を生のデータフォーマットに復元し、ローカルにおける相関的な特性を利用して、失われたデータを推定するものである。圧縮定数を含むデータの復元は、デコード領域において実行することができる。しかしながら、この手法では、デコード処理を実行し評価するための追加的な演算及び時間が必要であり、したがって、追加的なコストが必要となる。
【０００８】
発明の開示
本発明に基づく装置及び方法は、エンコード領域において、ブロックの欠落又は破損した（欠落／破損）圧縮定数を復元する有効な手法を提供する。一具体例において、少なくとも１つの隣接するブロックのエンコードされたデータと、推定されるブロック及び他のブロックにおいて復元可能な他の圧縮定数とを用いて欠落／破損した圧縮定数を推定する。例えば、一具体例において、エンコードされたデータは画像データであり、各データのブロックは、定数としてダイナミックレンジ（ＤＲ）と最小値（ＭＩＮ）とを有し、ここでＤＲ＝ＭＡＸ−ＭＩＮであり、ＭＡＸはブロック内の最大のデータ値を表す。
【０００９】
詳細な説明
以下では、本発明を明瞭にするために、説明を目的として、多くの詳細事項について記述する。しかしながら、これらの詳細事項は、本発明を実施するための必要条件ではないことは、当業者にとって明らかである。また、本発明を不必要に不明瞭しないために、ブロック図には周知の電気的構造及び回路を示す。
【００１０】
以下では、適応型ダイナミックレンジ符号化（Adaptive Dynamic Range Coding：以下、ＡＤＲＣという。）によりエンコードされた画像において、特にダイナミックレンジ（ＤＲ）及び最小値（ＭＩＮ）等が欠落又は破損した圧縮定数（以下、欠落／破損圧縮定数と呼ぶ。）の復元について説明する。しかしながら、本発明はＡＤＲＣ符号化及び生成される特定の圧縮定数に限定されるものではない。すなわち、本発明は、異なる種類の圧縮技術に適用でき、また、これに限定されるものではなく、音声データ等の異なる種類のデータにも適用でき、さらに、これに限定されるものではなく、ＡＤＲＣ処理において使用できる最大値（ＭＡＸ）等の異なる圧縮定数に適用することもできる。さらに、本発明は、エッジ整合形（edge-matching）ＡＤＲＣ及びエッジ非整合形（non edge-matching ADRC）等、異なる種類のＡＤＲＣ処理にも適用することができる。ＡＤＲＣに関するさらに詳細な説明については、１９９１年９月４〜６日、イタリア、チュリンで開催された第４回高精細度テレビジョン及びその後に関する国際会議（Fourth International Workshop on HDTV and Beyond）におけるコンドウ（Kondo）、フジモリ（Fujimori）、ナカヤ（Nakaya）らによる「将来のＨＤＴＶデジタルＶＴＲのための適応型ダイナミックレンジコーディング法（Adaptive Dynamic Range Coding Scheme for Future HDTV Digital VTR）」に開示されている。
【００１１】
ＦＩＧ．１は、本発明に基づき、欠落／破損圧縮定数を復元する処理の具体例を示す図である。この具体例では、ビットストリームにおけるエンコードされたデータの配置（placement）を特定する情報等の所定の情報は既知である。しかしながら、エンコードされたデータをデコードするために必要な少なくとも１つの圧縮定数が欠落又は破損（欠落／破損）している。データがＡＤＲＣを用いてエンコードされている一具体例においては、本発明に基づく手法は、ＤＲ、ＭＡＸ、ＭＩＮ等の欠落／破損圧縮定数を復元するために用いることができる。通常、ＤＲ及びＭＩＮ等、これら定数のうちの２つの定数を使用して、ビットストリームにおいて受信された例えばＱコード等のエンコードされたデータをデコードする。
【００１２】
ＦＩＧ．１に示すステップ１０５において、少なくとも１つの隣接するブロックのエンコードされたデータ、欠落／破損圧縮定数を含むブロックのエンコードされたデータ、及びそのブロック及び隣接するブロックの事前に復元された圧縮定数が入力データとして供給される。ステップ１１０において、隣接するブロックのエンコードされたデータと、そのブロックのエンコードされたデータと、そのブロック及び隣接するブロックの事前に復元された圧縮定数とを用いて、欠落／破損圧縮定数を推定する。
【００１３】
デコードすべきブロック及び隣接するブロックのエンコードされたデータを使用することにより、欠落／破損圧縮定数を判定する前にコストが高いデコード処理を１回以上繰り返す必要がないため、時間及びコストを節約できる。
【００１４】
ＱコードをデコードするためにＭＩＮ及びＤＲを使用するこの具体例では、ＭＩＮが欠落／破損した場合、そのブロックのＤＲ値及びＱコードと、隣接するブロックのＭＩＮ値及びＱコードとを用いて、エンコードされたデータからＭＩＮ値を推定する。
【００１５】
ＭＩＮ値は、そのブロックからデコードされた値と、少なくとも１つの隣接するブロックからデコードされた対応するＭＩＮ値との間の差の平均値を最小にする値として推定される。平均関数（average function）は、隣接する値の重み付けされた平均であってもよく、例えば、処理の対象となるブロックに対する隣接するブロックの位置に関連付けて値に重み付けをしてもよい。一具体例においては、ＭＩＮは、最小二乗推定法（least squares estimation）を用いて推定される。例えば、ＭＩＮは、以下のようにして求められる。
【００１６】
エッジ非整合形ＡＤＲＣ
【００１７】
【数１９】
0004796228.tif 000002
【００１８】
エッジ整合形ＡＤＲＣ
【００１９】
【数２０】
0004796228.tif 000003
【００２０】
ここで、Ｎは使用する隣接するエンコードされたデータの数を表し、ＭＩＮ’は隣接するブロックのＭＩＮ値を表し、ＤＲ及びＤＲ’はそれぞれこのブロック及び隣接するブロックのＤＲ値を表し、Ｑはこのブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅｉはエンコードされたデータ（例えば、Ｑコード）を表し、ｅｉ’は隣接するブロックのエンコードされたデータ等の隣接するエンコードされたデータを表す。
【００２１】
ＤＲ値が欠落／破損している場合、そのブロックのＭＩＮ値及びＱコードと、隣接するブロックのＤＲ値、ＭＩＮ値及びＱコードとを用いて、ＤＲを推定する。
【００２２】
一具体例においては、ＤＲは、例えば最小二乗推定法を用いて以下のように推定される。
【００２３】
エッジ非整合形ＡＤＲＣ用の整数式（integer formula）
【００２４】
【数２１】
0004796228.tif 000004
【００２５】
エッジ整合形ＡＤＲＣ用の整数式
【００２６】
【数２２】
0004796228.tif 000005
【００２７】
ここで、Ｎは使用する隣接するエンコードされたデータの数を表し、ＭＩＮ及びＭＩＮ’はそれぞれこのブロック及び隣接するブロックのＭＩＮ値を表し、Ｑはこのブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅｉ及びｅｉ’はそれぞれこのブロック及び隣接するブロックのエンコードされたデータを表し、ＤＲ’は隣接するブロックのダイナミックレンジを表す。
【００２８】
別の具体例では、これと異なる復元式を用いてもよい。ＤＲは、このブロックのデコードされた値の総和を隣接するブロックのデコードされた値の総和に等しくする値として推定してもよい。例えば、ＤＲは、次の式により求めることもできる。
【００２９】
エッジ非整合形ＡＤＲＣ
【００３０】
【数２３】
0004796228.tif 000006
【００３１】
エッジ整合形ＡＤＲＣ
【００３２】
【数２４】
0004796228.tif 000007
【００３３】
ここで、Ｎは使用する隣接するエンコードされたデータの数を表し、ＭＩＮ及びＭＩＮ’はそれぞれこのブロック及び隣接するブロックのＭＩＮ値を表し、Ｑはこのブロックをエンコードするために使用された量子化ビット数を表し、Ｑ’は隣接するブロックをエンコードするために使用された量子化ビット数を表し、ｅｉ及びｅｉ’はそれぞれこのブロック及び隣接するブロックのエンコードされたデータを表し、ＤＲ’は隣接するブロックのダイナミックレンジを表す。
【００３４】
変形例においては、他の圧縮定数を決定するために使用された変数を用いて、ここに説明する圧縮定数以外の圧縮定数を決定してもよい。例えば、ＡＤＲＣを用いてエンコードされたデータについて、Ｑビット及び動きフラグの値は、以下の変数を利用する。
【００３５】
【数２５】
0004796228.tif 000008
【００３６】
【数２６】
0004796228.tif 000009
【００３７】
ここで、ｅｉ及びｅｉ’は、それぞれこのブロック及び隣接するブロックのエンコードされたデータを表す。（この総和は、Ｎ個の使用可能な隣接関係について求められるため）ハードウェアの多くの部分は、上述の総和の演算に費やされるので、適用可能な部分にＸ及びＹの値を入力することにより、ＭＩＮ及びＤＲ推定回路の複雑性を大きく減少させることができる。例えば、一具体例においては、以下のようにＸ、Ｙ、ＭＩＮ、ＤＲを使用する。
【００３８】
エッジ非整合形ＡＤＲＣ
【００３９】
【数２７】
0004796228.tif 000010
【００４０】
【数２８】
0004796228.tif 000011
【００４１】
エッジ整合形ＡＤＲＣ
【００４２】
【数２９】
0004796228.tif 000012
【００４３】
【数３０】
0004796228.tif 000013
【００４４】
ここで、Ｎは、隣接するデータの数を表し、Ｑ及びＱ’はそれぞれこのブロック及び隣接するブロックのＱビット数を表し、ＭＩＮ’は隣接するブロックのＭＩＮ値を表し、ＤＲ及びＤＲ’はそれぞれこのブロック及び隣接するブロックのＤＲ値を表す。
【００４５】
この具体例では、ｎ＝ｍａｘ（０，１）となるように分子をクリップしてもよい。
【００４６】
上述の式の分子及び分母のビット数は多く（例えば、２４ビット）となることもあり、したがって、広い範囲の値に対応する汎用除算器は、多くのハードウェアを必要とする。ここで、結果の有効性を損なうことなく、一定の効率化を実現できることが見出された。すなわち、圧縮値（例えば、ＭＩＮ又はＤＲ）に許容されている範囲は、一定の範囲（例えば、１つの値につき０〜２５５）に制限されているので、低い分解能（例えば、８ビット）しか要求されない。さらに、結果の精度を変化させることなく、上位に連続する０（leading zeros）を除外することができ、また、最下位ビットを切り捨てても結果に大きな影響はないことが見出された。
【００４７】
これらの事実に基づく変形例をＦＩＧ．２を用いて説明する。この具体例では、各ステップは、ハードウェア論理回路により素早く実行することができる。上述のように、ＤＲ及びＭＩＮの式では、除算処理を実行する必要がある。したがって、以下の説明では、商の分子及び分母について検討する。
【００４８】
ステップ２０５において、ＭＩＮを決定するための式の分子が完全な精度で算出される。ステップ２１０において、完全な精度で分母が算出される。ステップ２１５において、分子及び分母は、いずれも長さが少なくともＫビットになるまで（すなわち、長さがＫビット以下になるまで）、最下位ビットを切り捨てるようにシフトされる。この具体例においては、分子及び分母は同じビット数になるようシフトされる。しかしながら、他の具体例においては、分子及び分母は、異なるビット数になるようにシフトされてもよい。このような場合、ビットシフトの差分をどこかで補償する必要がある。すなわち、この具体例では、（ｎ≧２Ｋ又はｄ≧２Ｋ）として、以下のようなシフトを行う。
ｎ／２（ＬＳＢを切り捨てるシフト）
ｄ／２（ＬＳＢを切り捨てるシフト）
ここで、ｎは分子を表し、ｄは分母を表す。
【００４９】
Ｋの値は、許容できる画質を維持しながら、コスト効率の高い論理回路を用いて整数除算が行えるように選択される。一具体例においては、Ｋの値は、例えば最大誤差が３％を超えないようにする等、最大誤差が視覚的に感知されないように選択される。８ビットのエンコードを行うこの具体例においては、Ｋの値として１３を選択する。
【００５０】
ステップ２３０において、この値は、例えば他の利用可能な圧縮定数等、利用可能な外部情報に矛盾しないようにクリップされる。この具体例では、値は、許容可能な値の範囲を満足させるようにクリップされる。例えば、８ビットＡＤＲＣでは、以下のとおりとする。
【００５１】
エッジ非整合形ＡＤＲＣ
ＭＩＮ＋ＤＲ≦２５４
エッジ整合形ＡＤＲＣ
ＭＩＮ＋ＤＲ≦２５５
【００５２】
本発明に基づく推定回路の具体的構成をＦＩＧ．３ａに示す。ＦＩＧ．３ａは、ここに説明する処理に用いることができる推定回路を単純化して機能的に示すブロック図である。この推定回路は、例えば大規模集積（ＬＳＩ）論理回路又はプログラマブルゲートアレーのような特別に構成された論理回路により実現してもよい。これに代えて、この推定回路は、ＦＩＧ．３ｂに示すように、メモリ又は他の記憶素子に格納された命令を実行する、専用の特別に構成された又は汎用のプロセッサにより実行されるコードとして実現してもよい。さらに、本発明は、上述した構成の組合せにより実現してもよい。
【００５３】
ＦＩＧ．３ａに示すように、分子論理回路３１０は、エンコード領域において、欠落／破損した圧縮定数を推定するための式の分子となる部分を完全な精度で算出する。分母論理回路３２０は、式の分母となる部分を完全な精度で算出する。一具体例においては、Ｋビットのシフトレジスタ（図示せず）により、論理回路３１０，３２０が生成した分子及び分母の長さがそれぞれＫビットになるまで、それぞれの最下位ビットを切り捨てる。これに代えて、このシフト処理を演算論理回路３５０により実行してもよい。上述のように、Ｋの値は、例えば、許容可能なレベルの精度を保ちながら、後続する処理を実行するために必要な論理ハードウェア回路が効率化のために最小となるように、経験的に選択される。
【００５４】
演算論理回路３５０は、分子及び分母の整数除算（integer division）を実行する。クリップ論理回路３６０は、演算論理回路３５０の出力値が利用可能な他の圧縮定数と矛盾しないように演算論理回路３５０の出力値をクリップするために、オプションとして設けられている。すなわち、この構造により、欠落／破損した圧縮定数の推定を高速且つ効率的なコストで行うことができる。
【００５５】
この推定回路の出力は、例えば、復元された圧縮定数を含むデータによりデコード処理を行う論理回路（図示せず）に接続されている。一具体例においては、データは画像データであり、デコードされたデータは、表示装置を駆動するために使用される。
【００５６】
欠落／破損した圧縮定数を復元するための推定回路の他の具体例をＦＩＧ．３ｂに示す。上述した手法は、特別に構成された又は汎用の処理装置３７０により実現してもよい。メモリ３９０には命令が格納され、プロセッサ３７５は、このメモリ３９０にアクセスして、上述した様々な処理ステップを実行する。入力回路３８０は入力ビットストリームを受け取り、このビットストリームをプロセッサ３７５に供給する。出力回路３８５はデータを出力する。一具体例において、出力されるデータは、圧縮定数を復元した後にデコードされた画像データであって、例えば表示装置３９５等の外部装置を駆動するために十分なデータである。他の具体例においては、出力回路３８５は、復元された圧縮定数を出力する。復元された圧縮定数は、他の回路（図示せず）に供給され、ここでデコードされたデータが生成される。
【００５７】
本発明を画像データを用いて説明したが、本発明は、他の形式の関連付けられたデータ、例えば、これらに限定されるものではないが、写真（photographs）又はその他の２次元静止画像、ホログラム又はその他の３次元静止画像、ビデオ又はその他の２次元動画像、３次元動画像、モノラル音声ストリーム、又はステレオ方式等の複数の空間的に関連するストリームに分割された音声ストリーム等に適用することができる。
【００５８】
本発明を好適な実施の形態を用いて説明した。上述の説明から、様々な変更、修正、変形及び用途が当業者にとって明らかである。
【図面の簡単な説明】
【図１】  ＦＩＧ．１は、本発明に基づく方法の具体例を示すフローチャートである。
【図２】  ＦＩＧ．２は、本発明に基づく方法の変形例を示すフローチャートである。
【図３】  ＦＩＧ．３ａは、本発明に基づく推定回路の具体的構成を示す図であり、ＦＩＧ．３ｂは、本発明に基づく装置の変形例を示すブロック図である。
【図１】
0004796228.tif 000032
【図２】
0004796228.tif 000033
【図３】
0004796228.tif 000034