(57)【要約】  画素ブロック（３００）は、ブロック（３００）における画素（３１０〜３１８）の複数のデプス値に基づいて開始デプス値及び再開デプス値を選択することにより圧縮される。平面表現（４３０）は、開始デプス値平面又は再開デプス値平面のうち画素（３１１〜３１８）に対して判定される平面を示す。表現（４３０）は、符号化される画素（３１８）に対してブロック（３００）における少なくとも１つの他の画素（３１２、３１４〜３１７）を含む画素セットを選択するために採用される。セットの画素（３１２、３１４〜３１７）のデプス値は、画素（３１８）のデプス値の予測を判定するために使用される。デプス値及び予測は、符号化される予測誤差を計算するために採用される。圧縮画素ブロック（４００）は、符号化予測誤差（４６０）、開始値表現（４２０）、再開値表現（４３０）及び平面表現（４４０）を含む。
2011512067.tif 000002
【特許請求の範囲】
【請求項１】
各々がデプス値を含む複数の画素のブロックを圧縮する方法であって：
前記ブロックにおける複数のデプス値のうち第１のデプス値平面に属する開始デプス値を選択するステップと；
前記ブロックにおける前記複数のデプス値のうち第２のデプス値平面に属する再開デプス値を選択するステップと；
前記複数の画素の少なくとも一部分に対して、前記第１のデプス値平面及び前記第２のデプス値平面のうち、前記複数の画素の前記少なくとも一部分が属する平面を示す平面表現を生成するステップと；
前記ブロックにおける少なくとも１つの画素に対して、前記少なくとも１つの画素及び少なくとも１つの他の画素の画素セットの平面表現に基づいて画素セットを選択するステップと；
前記選択された画素セットの少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供するステップと；
前記少なくとも１つの画素の前記デプス値及び前記予測値に基づいて予測誤差を推定するステップと；
前記予測誤差の符号化表現を判定するステップとを有し、
前記ブロックの圧縮表現は前記開始デプス値の表現、前記再開デプス値の表現及び前記予測誤差の前記符号化表現を含むことを特徴とする方法。
【請求項２】
前記再開デプス値を選択する前記ステップは：
前記ブロックにおける前記複数のデプス値のうち前記開始デプス値と最も異なるデプス値を識別するステップと；
前記複数の画素の少なくとも一部分に対して、画素のデプス値と前記開始デプス値との間の第１の差分を判定するステップと；
前記複数の画素の前記少なくとも一部分に対して、前記画素の前記デプス値と前記識別されたデプス値との間の第２の差分を判定するステップと；
前記判定した第１の差分及び前記判定した第２の差分に基づいて前記再開デプス値を選択するステップとを含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記生成するステップは：
画素のデプス値と前記開始デプス値との間の第１の差分を判定するステップと；
前記画素の前記デプス値と、前記開始デプス値に対して最も異なる前記ブロックのデプス値との間の第２の差分を判定するステップと；
前記第１の差分の絶対値が前記第２の差分の絶対値より小さい場合に前記第１のデプス値平面を示す前記平面表現を生成し、前記第１の差分の絶対値が前記第２の差分の絶対値より小さくない場合に前記第２のデプス値平面を示す前記平面表現を生成するステップと
を含むことを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記判定するステップは：
正の予測誤差を得るために前記予測誤差を変更するステップと；
前記予測誤差の前記符号化表現を得るために前記正の予測誤差をGolomb-Rice符号化するステップであって、当該ステップは、
値がゼロ又は正の整数である値ｋを探索するステップと、
ｈが事前定義済みの定数、ｗが事前定義済みの重みとしたとき、前記選択された画素セットが複数の画素を含む場合はｋに等しく、複数の画素を含まない場合はｗ×ｋ＋ｈに基づく数ｌを提供し、
商及び余りを形成するために前記正の予測誤差を２lで除算し、
前記商をアルファ符号化することによりGolomb-Rice符号化するステップと
を含み、前記予測誤差の前記符号化表現は前記余りの表現及び前記アルファ符号化された商を含み、前記ブロックの前記圧縮表現はｋの表現を含むことを特徴とする請求項１乃至３のいずれか１項に記載の方法。
【請求項５】
圧縮画素ブロックを伸張する方法であって：
前記圧縮画素ブロックに含まれる開始値表現に基づいて第１のデプス値平面に属する開始デプス値を提供するステップと；
前記圧縮画素ブロックに含まれる再開値表現に基づいて第２のデプス値平面に属する再開デプス値を提供するステップと；
前記ブロックの少なくとも１つの画素に対して、前記少なくとも１つの画素と関連付けられ且つ前記圧縮画素ブロックに含まれる符号化誤差表現に基づいて予測誤差を判定するステップと；
前記少なくとも１つの画素に対して、前記第１のデプス値平面及び前記第２のデプス値平面のうち画素が属する平面を示し且つ前記少なくとも１つの画素及び前記ブロックの少なくとも１つの他の画素を含む画素セットと関連付けられる平面表現に基づいて前記画素セットを選択するステップと；
前記選択された画素セットの前記少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供するステップと；
前記予測誤差及び前記予測値に基づいて前記少なくとも１つの画素の前記デプス値の表現を計算するステップと
を有することを特徴とする方法。
【請求項６】
更に、前記複数の画素の少なくとも一部分に対して、前記圧縮画素ブロックから平面表現を提供するステップを含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記画素セットを選択する前記ステップは、前記少なくとも１つの画素に対する前記ブロック（３００）における第１の予測方向に存在する第１の隣接画素、前記少なくとも１つの画素に対する前記ブロックにおける第２の予測方向に存在する第２の隣接画素、及び、前記少なくとも１つの画素に対する前記ブロックにおける第３の予測方向に存在する第３の隣接画素が前記平面表現に基づいて判定されるように前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１乃至６のいずれか１項に記載の方法。
【請求項８】
前記予測値を提供する前記ステップは、前記第１の隣接画素及び前記第２の隣接画素のデプス値の合計から前記第３の隣接画素のデプス値を減算した値と等しくなるように前記予測値を計算するステップを含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記少なくとも１つの画素に対する前記ブロックにおける第１の予測方向に存在する第１の隣接画素及び前記第１の予測方向の第２の画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第１の隣接画素及び前記第２の画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１乃至８のいずれか１項に記載の方法。
【請求項１０】
前記予測値を提供する前記ステップは、前記第１の隣接画素のデプス値を２倍した値から前記第２の画素のデプス値を減算した値に等しくなるように前記予測値を計算するステップを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記少なくとも１つの画素に対する前記ブロックにおける第２の予測方向に存在する第２の隣接画素及び前記第２の予測方向の第３の画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第２の隣接画素及び前記第３の画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１乃至１０のいずれか１項に記載の方法。
【請求項１２】
前記予測値を提供する前記ステップは、前記第２の隣接画素のデプス値を２倍した値から前記第３の画素のデプス値を減算した値に等しくなるように前記予測値を計算するステップを含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記画素セットを選択する前記ステップは：
前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さず且つ前記第１の隣接画素及び前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第１の隣接画素及び前記第２の隣接画素のうちの一方を含むように前記画素セットを選択するステップと；
前記第１の隣接画素及び前記第２の隣接画素のうち前記選択された画素と関連付けられるガイドビットを提供するステップとを含み、前記ブロックの前記圧縮表現は前記ガイドビットを含むことを特徴とする請求項７乃至１２のいずれか１項に記載の方法。
【請求項１４】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さず且つ前記第１の隣接画素及び前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記画素に割り当てられ且つ前記圧縮画素ブロックに含まれるガイドビットに基づいて前記第１の隣接画素及び前記第２の隣接画素のうちの一方を含むように前記画素セットを選択するステップを含むことを特徴とする請求項７乃至１２のいずれか１項に記載の方法。
【請求項１５】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素いずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属さず且つ前記第１の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第１の隣接画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１３又は１４に記載の方法。
【請求項１６】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属さない場合、前記開始デプス値又は前記再開デプス値と関連付けられる画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
各々がデプス値を含む複数の画素のブロックを圧縮するブロック圧縮システムであって：
前記ブロックにおける前記複数のデプス値のうち第１のデプス値平面に属する開始デプス値を選択する開始選択器と；
前記ブロックにおける前記複数のデプス値のうち第２のデプス値平面に属する再開デプス値を選択する再開選択器と；
前記複数の画素の少なくとも一部分に対して、前記第１のデプス値平面及び前記第２のデプス値平面のうち前記複数の画素の前記少なくとも一部分が属する平面を示す平面表現を生成する平面表現生成器と；
前記ブロックにおける少なくとも１つの画素に対して、前記少なくとも１つの画素及び少なくとも１つの他の画素の画素セットの平面表現に基づいて前記画素セットを選択するセット選択器と；
前記選択された画素セットの少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供する予測提供器と；
前記少なくとも１つの画素の前記デプス値及び前記予測値に基づいて予測誤差を推定する誤差推定器と；
前記予測誤差の符号化表現を判定する表現判定器とを具備し、
前記ブロックの圧縮表現は前記開始デプス値の表現、前記再開値の表現及び前記予測誤差の前記符号化表現を含むことを特徴とするシステム。
【請求項１８】
前記再開選択器は：
前記ブロックにおける前記複数のデプス値のうち前記開始デプス値と最も異なるデプス値を識別する値識別器と；
前記複数の画素の少なくとも一部分に対して、画素のデプス値と前記開始デプス値との間の第１の差分、及び、前記画素の前記デプス値と前記識別されたデプス値との間の第２の差分を判定する差分計算機と；
前記判定した第１の差分及び前記判定した第２の差分に基づいて前記再開デプス値を選択する値選択器とを含むことを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記平面表現生成器は：
画素のデプス値と前記開始デプス値との間の第１の差分を判定し、前記画素の前記デプス値と前記開始デプス値と最も異なる前記ブロックのデプス値との間の第２の差分を判定する差分判定器と；
前記第１の差分が前記第２の差分の絶対値より小さい場合に前記第１のデプス値平面を示す前記平面表現を生成し、前記第１の差分が前記第２の差分より小さくない場合に前記第２のデプス値平面を示す前記平面表現を生成する表現生成器とを含むことを特徴とする請求項１７又は１８に記載のシステム。
【請求項２０】
表現判定器は：
正の予測誤差を得るために前記予測誤差を変更する誤差変更器と；
Golomb-Rice符号器とを有し、当該Golomb-Rice符号器は、
ゼロ又は正の整数である場合に値ｋを探索する値探索器と；
ｈが事前定義済みの定数、ｗが事前定義済みの重みであるとしたとき、前記選択された画素セットが複数の画素を含む場合はｋに等しく、複数の画素を含まない場合はｗ×ｋ＋ｈに基づく数ｌを提供する数値提供器と；
商及び余りを形成するために前記正の予測誤差を２lで除算する除算器と；
前記商をアルファ符号化するアルファ符号器とを含み、前記予測誤差の前記符号化表現は前記余りの表現及び前記アルファ符号化された商を含み、前記ブロックの前記圧縮表現はｋの表現を含むことを特徴とする請求項１７乃至１９のいずれか１項に記載のシステム。
【請求項２１】
圧縮画素ブロックを伸張するブロック伸張システムであって：
前記圧縮画素ブロックに含まれる開始値表現に基づいて第１のデプス値平面に属する開始デプス値を提供する開始提供器と；
前記圧縮画素ブロックに含まれる再開値表現に基づいて第２のデプス値平面に属する再開デプス値を提供する再開提供器と；
前記ブロックの少なくとも１つの画素に対して、前記少なくとも１つの画素と関連付けられ且つ前記圧縮画素ブロックに含まれる符号化誤差表現に基づいて予測誤差を判定する誤差判定器と；
前記少なくとも１つの画素に対して、前記第１のデプス値平面及び前記第２のデプス値平面のうち画素が属する平面を示し且つ前記少なくとも１つの画素及び前記ブロックの少なくとも１つの他の画素を含む画素セットと関連付けられる平面表現に基づいて前記画素セットを選択するセット選択器と；
前記選択された画素セットの前記少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供する予測提供器と；
前記予測誤差及び前記予測値に基づいて前記少なくとも１つの画素の前記デプス値の表現を計算する表現計算機と
を具備することを特徴とするシステム。
【請求項２２】
更に、前記複数の画素の少なくとも一部分に対して、前記圧縮画素ブロックから平面表現を提供する平面提供器を具備することを特徴とする請求項２１に記載の記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に画像処理に関し、特に画像ブロックの予測に基づく圧縮及び伸張に関する。
【背景技術】
【０００２】
グラフィックス処理ユニット（ＧＰＵ）の性能を向上するために、メモリ帯域幅減少技術が採用される。そのような帯域幅に対する要求を軽減する方法の１つは、バッファ圧縮と呼ばれる処理を実行することである。一般にグラフィックスシステムは、２つのバッファ、すなわち画素の色が描かれるカラーバッファ及び各画素のデプス（depth:奥行き）が格納されるデプスバッファを使用する。レンダリング中、これらのバッファに対して読み出し及び書き込みが行なわれ、多くの場合、同一画素が双方のバッファに対して数回アクセスされる。この読み出し及び書き込みアクセスは、エネルギーに関して高価であるため、特にモバイル機器等の、電源に制限があるユーザ端末に対しては最小限に維持されるべきである。
【０００３】
バッファ圧縮は、バッファデータのブロックが圧縮されてメモリに格納されることを示す。伸張及び圧縮が特定の画素及びブロックに対して数回行なわれる可能性があるため、圧縮は可逆的、すなわち非破壊的であることが重要である。
【０００４】
非特許文献１及び２において、従来のカラーバッファ圧縮及びデプスバッファ圧縮の適切な概要が与えられる。
【０００５】
依然として、効率的なデプスバッファ圧縮／伸張アルゴリズム、特に種々のデプス値平面に属するデプスバッファ値を有する画素ブロックを処理するために効果的に採用されるようなアルゴリズムが必要とされる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Rasmusson、Hasselgren及びAkenine-Mollerの「Exact and Error-bounded Approximate Color Buffer Compression and Decompression」Graphics Hardware、２００７年、４１〜４８ページ
【非特許文献２】Haselgren及びAkenine-Mollerの「Efficient Depth Buffer Compression」Graphics Hardware、２００６年、１０３〜１１０ページ
【非特許文献３】Lapidous及びJiaoの「Optimal Depth Buffer for Low-Cost Graphics Hardware」Graphics Hardware、１９９９年、６７〜７３ページ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、従来の構成の上記欠点及び他の欠点を克服する。
【０００８】
本発明の一般的な目的は、画素ブロックの効率的な圧縮及び伸張を提供することである。
【０００９】
本発明の別の目的は、デプスバッファ値に適応される圧縮及び伸張を提供することである。
【課題を解決するための手段】
【００１０】
この目的及び他の目的は、添付の請求の範囲により規定される本発明により満足される。
【００１１】
簡単に説明すると、本発明は、関連するデプスバッファ値を有する画素のブロックの圧縮及び伸張を含む。圧縮は、好ましくはブロック中の事前定義済み位置の画素のデプス値として選択される画素ブロックに対する開始デプス値を選択することを含む。開始デプス値は、開始デプス値平面に含まれるものとして考えられる。再開デプス値平面に存在する再開デプス値は、画素ブロックに対して選択され、好ましくはブロック中の識別された画素のデプス値として選択される。
【００１２】
更に、ブロック中の画素に対する各平面表現が生成される。それらの表現は、開始平面及び再開平面のうち画素が属する平面を示すものとして考えられる。平面表現は、圧縮される画素に対してブロック中の少なくとも１つの他の画素を含む画素セットを選択するために使用される。そのセットは、ブロックにおいて１つ又は複数の予測方向に１つ又は複数の先行画素を含むのが好ましい。画素セットの少なくとも１つの画素のデプス値は、現在の画素のデプス値の予測値を判定するために採用される。
【００１３】
予測誤差は、判定された予測値及び画素のデプス値に基づいて、好ましくはそれらの間の差分として計算される。予測値は、符号化予測誤差を得るために符号化される。画素ブロックの圧縮表現は、開始値及び再開値の表現、並びに好ましくは平面表現と共に符号化予測誤差を含む。
【００１４】
伸張中、開始デプス値は、圧縮ブロックに含まれる開始値表現に基づいて画素ブロックに対して提供される。この開始デプス値は、ブロック中の事前定義済み位置の画素のデプス値として割り当てられる。これに対応して、再開デプス値は、圧縮ブロックに含まれる情報に基づいて提供され、ブロックにおいて識別される画素に対するデプス値として割り当てられる。
【００１５】
画素と関連付けられ且つ圧縮ブロックに含まれる符号化予測誤差表現は、画素に対する予測誤差を得るために復号される。好ましくは圧縮ブロックに含まれるブロック中の画素の平面表現は、その画素に対する画素セットを構成するブロック中の少なくとも１つの他の画素を選択するために検索及び採用される。画素に対する予測値は、画素セットの少なくとも１つの画素のデプス値に基づいて判定される。
【００１６】
画素は、判定された予測値及び復号予測誤差から自身のデプス値を計算することにより復号される。
【００１７】
更に本発明は、圧縮システム及び伸張システムに関する。
【００１８】
本発明は、平面の境界を越えてデプス値を予測することを防止し、それによりブロックの画素に対して適切な予測候補を提供し、その結果、効率的な画素の圧縮及び伸張を提供する。
【００１９】
本発明により提供される他の利点は、本発明の実施形態の以下の説明を読むことにより理解されるだろう。
【００２０】
本発明は、添付の図面と共に以下の説明を参照することにより、本発明の更なる目的及び利点と共に最もよく理解されるだろう。
【図面の簡単な説明】
【００２１】
【図１】本発明に係るブロック圧縮方法の一実施形態を示すフローチャートである。
【図２】本発明において有用な画素ブロックの一例を示す図である。
【図３】浮動小数点数の表現としての整数の使用を概略的に示す図である。
【図４】図１の圧縮方法の追加のステップを示すフローチャートである。
【図５】本発明の一実施形態に係る平面表現生成ステップを示すフローチャートである。
【図６】符号化誤差表現を判定するステップの一実施形態を更に詳細に示すフローチャートである。
【図７Ａ】、
【図７Ｂ】図１又は図９のセット選択ステップ及び予測値提供ステップの一実施形態を更に詳細に示すフローチャートである。
【図８】画素ブロックの圧縮表現の一例を示す図である。
【図９】本発明に係るブロック伸張方法の一実施形態を示すフローチャートである。
【図１０】図９の伸張方法の追加のステップを示すフローチャートである。
【図１１】本発明の教示が適用可能であるデプスバッファアーキテクチャを示す概略ブロック図である。
【図１２】本発明の一実施形態に係る圧縮システムを示す概略ブロック図である。
【図１３】本発明の一実施形態に係る図１２の再開選択器を示す概略ブロック図である。
【図１４】本発明の一実施形態に係る図１２の平面生成器判定器を示す概略ブロック図である。
【図１５】本発明の一実施形態に係る図１２の予測値提供器を示す概略ブロック図である。
【図１６】本発明の一実施形態に係る図１２の表現判定器を示す概略ブロック図である。
【図１７】本発明の一実施形態に係る伸張システムを示す概略ブロック図である。
【図１８】本発明の一実施形態に係る図１７の誤差判定器を示す概略ブロック図である。
【図１９】本発明の一実施形態に係る図１７の予測値提供器を示す概略ブロック図である。
【図２０】本発明の圧縮性能と従来の圧縮方式との比較を示す図である。
【発明を実施するための形態】
【００２２】
図中、同一の図中符号が対応する要素又は類似する要素に対して使用される。
【００２３】
本発明は、一般に、画素パラメータ値の可逆圧縮及び伸張に関し、特に、デプスバッファ（depth buffer）圧縮及び伸張に適切な圧縮及び伸張に関する。
【００２４】
本発明は、ゲーム、３次元（３Ｄ）地図及びシーン、例えば動画メッセージである３Ｄメッセージ、スクリーンセーバ、マンマシンインタフェース（ＭＭＩ）等の３Ｄ図形と共に使用するのに最適であるが、それらに限定されない。従って、本発明は、１次元（１Ｄ）、２次元（２Ｄ）又は３Ｄ画像等の他の種類の画像又は図形を符号化するために採用されてもよい。
【００２５】
本発明において、圧縮及び伸張は、一般に画素のタイル又はブロックの形式で、複数の画素を一括処理する。本発明の好適な一実施形態において、画素ブロックは、Ｍ×Ｎ画素のサイズを有する。ここで、Ｍ、Ｎは整数であるが、Ｍ及びＮの双方が同時に１にならないという条件付きである。好ましくは、Ｍ＝２m且つＮ＝２nである。ｍ、ｎはゼロ又は整数であるが、ｍ及びｎが同時にゼロにならないという条件付きである。一般的な一実現例において、Ｍ＝Ｎであり、そのような好適なブロックの実施形態は、４×４画素、８×８画素又は１６×１６画素である。
【００２６】
画素又は「画像要素（image element）」という表現は、ブロック中の要素又はブロックの符号化表現を示す。このブロックは、画像、テクスチャ又はバッファの一部分に対応する。従って、本発明によると、画像要素は、（１Ｄ、２Ｄ、３Ｄ）テクスチャのテクセル（テクスチャ要素）、（１Ｄ又は２Ｄ）画像の画素又は３Ｄ画像のボクセル（体素）であってもよい。一般に、画素は関連する画素パラメータ値又は特徴により特徴付けられる。本発明の好適な一実施形態において、画素パラメータ値はデプス値又はいわゆるＺ値である。この特徴は、特定の画素に対する眼までのデプス又は距離を表し、レンダリング中に実際に表示される画素を制御する。
【００２７】
同一直線上の画素パラメータ値、すなわちある平面に位置するパラメータ値を処理するために、圧縮及び伸張が適応される。従って、圧縮されるブロックの画素パラメータ値の全ては、パラメータ空間の単一の平面に位置するか又は一般には２つの平面である複数の平面のセットのうちの１つに位置する。この要求は、画素パラメータ値の元の表現の元のビット数より少ないビット数を使用して画素ブロックの可逆圧縮を達成できる可能性があることを意味する。
【００２８】
更に以下において、「画像」という用語は、本発明により符号化及び復号可能な任意の１Ｄ、２Ｄ又は３Ｄ画像又はテクスチャを示すために使用される。それらの画像又はテクスチャは、バンプマップ、法線マップ、写真、ゲーム形式のテクスチャ、テキスト、図面、ダイナミックレンジの広い画像及びテクスチャ等を含むがそれらに限定されない。
【００２９】
［圧縮］
図１は、本発明に従って画素のブロックを圧縮する方法を示すフローチャートである。方法は、圧縮されるブロックに対する開始デプス値を選択することによりステップＳ１において開始する。この開始デプス値Ｚstartは、ブロック中の１つ画素及び好ましくはブロック中の事前定義済み位置を占有する画素のデプス値と等しくなるように設定されるのが好ましい。そのような事前定義済み位置の好適な一実現例は、ブロックの第１の画素、すなわち左上隅を占有する画素、Ｚstart ＝ Ｚ11を使用することである。可能な開始画素位置の他の例は、任意の他のブロックの隅である。実際には、隅の位置及び特に左上隅の画素はブロックの圧縮を非常に簡略化するが、ブロック中の任意の事前定義済み位置が開始位置として使用可能である。
【００３０】
選択された開始デプス値は、ブロックの第１のデプス値平面に属するものとして考えられる。選択されたデプス値がＰビットを含む場合に、Ｐビットの開始値等の開始値の表現はブロックの圧縮表現に含まれる。
【００３１】
次のステップＳ２は、ブロックに対していわゆる再開デプス値を選択する。この値は、第２のデプス値平面、すなわち開始値とは異なる平面に属するものとして考えられる。再開デプス値Ｚrestartは、ブロック中の識別された画素のデプス値に等しくなるように、すなわちＺrestart = Ｚijとなるように選択されるのが好ましい。ここで、位置(1, 1)の画素が開始デプス値を提供するために使用されるので、Ｎが行毎及び列毎の画素数を表す場合、(i, j) ≠ (1, 1)という条件で、i, j = 1, 2, ..., Nである。
【００３２】
圧縮ブロックは、選択されたデプス値がＰビットを含む場合、好ましくはＰビットの再開値の形式で選択された再開値の表現を含む。
【００３３】
ステップＳ３は、画素に対する平面表現を生成する。この平面表現は、第１の（開始）平面及び第２の（再開）平面のうち画素が属する平面を示す。表現は、好ましくは１ビットワードである。ここで、０bin（又は１bin）の値は第１の平面を示し、１bin（又は０bin）は第２の平面を表す。
【００３４】
ステップＳ３は、ブロック中の複数の画素の少なくとも一部分に対して実行されるのが好ましい。これを線Ｌ１で概略的に示す。更に好ましくは、ステップＳ３は、可能性として開始画素（開始デプス値と関連付けられる画素）を除くブロック中の各画素に対して実行される。オプションとして、再開画素（再開デプス値と関連付けられる画素）を除外することも可能である。複数の平面表現は、各画素が属する平面を区別するビットマップとして考えられる。ビットマップ（平面表現）は、圧縮ブロック表現に含まれるのが好ましい。
【００３５】
別の一実施形態としては、ステップＳ２及びＳ３の順序が交換することである。これは、ステップＳ１の開始デプス値の選択の後に、平面表現がブロック中の残りの画素に対して生成されることを意味する。そのような場合、開始デプス値と関連付けられる（開始）平面表現とは異なる平面表現を生成したブロックのトラバーサル順で第１の画素が再開画素と考えられる。その画素のデプス値は、ブロックに対する再開デプス値として採用される。
【００３６】
次のステップＳ４〜Ｓ７は、ブロックの複数の画素のうち符号化される画素毎に実行される。ステップＳ４は、その画素に対してブロックの少なくとも１つの他の画素を含む画素セットを選択する。このセット選択は、セット内の画素及び現在の画素の各平面表現に基づいて実行される。好適な一実現例において、セット内の選択された画素は、現在の画素と同一の平面表現を有する。すなわち、その画素と同一平面に属する。
【００３７】
選択されたセットの画素のデプス値は、現在の画素のデプス値Ｚijの予測値：
2011512067.tif 000003
を提供するステップＳ５において使用される。換言すると、画素のデプス値予測は、画素セットの少なくとも１つのデプス値に基づいて計算又は判定される。
【００３８】
次のステップＳ６は、画素のデプス値及びステップＳ５で提供された予測値に基づいて画素の予測誤差:
2011512067.tif 000004
を推定する。予測誤差は、画素の元のデプス値と予測との間の差分:
2011512067.tif 000005
として計算されるのが好ましい。
【００３９】
計算された予測誤差の符号化表現は、ステップＳ７で判定される。ブロックの圧縮又は符号化表現は、この符号化表現を含む。
【００４０】
上記の手順は、ブロック中の複数の画素に対して繰り返されるのが好ましい。これを線Ｌ２で概略的に示す。そのような場合、圧縮ブロックは、それらの画素（当然、開始値と関連付けられる画素及び再開値と関連付けられる画素以外）の各々に対する各符号化予測誤差表現を含む。圧縮ブロックは、開始デプス値、再開デプス値及び好ましくは平面表現のビットマップの表現を更に含むのが好ましい。
【００４１】
図２は、複数の画素３１０〜３１８のブロック３００を示す概略図である。従来技術において周知であるように、デプスバッファの画素の元のデプス値成分は２４ビットの整数である場合が多い。非特許文献３のLapidous及びJaioは、浮動小数点数を使用してデプスバッファを符号化する別の方法、いわゆる「相補的なＺ表現」を提示する。この表現を使用して、ｆｐ１６、ｆｐ２４、ｆｐ３２等を使用できる。Lapidous及びJaioにより使用されるｆｐ１６形式は、３ビットの指数部、１３ビットの仮数を有し、符号ビットは有さない。ｆｐ１６の数値は２(exponent-4) × (1.mantissa)である。
【００４２】
しかし、浮動小数点数の浮動小数点特性は問題を引き起こす。浮動小数点数の密度が均一でないため、２つの浮動小数点数の間の差分が表現できない場合がある。図３はこの概念を示す。図３の上半分は浮動小数表現を示す。数密度の不均一性は明らかに見て分かる。密度はゼロに近付くほど増加する。浮動小数点数の形式で色成分表現を有する問題を示すために、第１のデプス値は７．５であり、第２のデプス値は１．８７５であると仮定する。双方の数字はｆｐ１６を使用して表現可能である。しかし、２つの数字の差分７．５−１．８７５＝５．６２５はｆｐ１６で表現できない。これに対して、最も近い表現は５．５である。しかし、背景の節で説明したように、デプスバッファ圧縮は可逆的である必要がある。従って、上述の浮動小数点数の間の差分の計算を必要とするブロックは、その差分がｆｐ１６で正確に表現できないため可逆圧縮できない。
【００４３】
本発明は、図３に示すように、各浮動小数点数を整数表現にマッピングすることにより浮動小数点の数の問題を解決できる。基本的にこれは、各浮動小数点数に固有の整数を割り当てることに対応する。浮動小数点から整数領域にマッピングすることは、より大きな整数をより大きな浮動小数点数に割り当てることを含む。これは、０．０には整数表現０が割り当てられ、次に最も小さい正の浮動小数点数には１が割り当てられ、更に次に最も小さい浮動小数点数には２が割り当てられる。
【００４４】
上記例は、整数１５に差分１６を加算して３１の結果、すなわち浮動小数点として解釈すると７．５の結果を得ることに対応する。従って、本発明の好適な一実現例は、浮動小数点領域と整数領域との間の１対１マッピングに従って浮動小数点のデプス値を整数として解釈することを含む。整数領域において計算及び算術を行なうことにより、コストのかかる浮動小数点演算が回避される。また、圧縮が可逆的であるため、更にNaN（非数；Not a number）、Inf（無限大:Infinity）及びdenorm（非正規化数:denormal numbers）が適切に処理される。そのような場合、圧縮中、浮動小数点数は図３に示す上述のマッピングに従って整数として解釈される。伸張後、整数は、浮動小数点数に再度変換される。
【００４５】
本発明は、整数のデプス値及び浮動小数点のデプス値の双方と関連して使用される。浮動小数点のデプス値は、整数値と浮動小数点数との間の上述の１対１関係を介するのが好ましい。
【００４６】
再開画素位置は、種々の実施形態に従って識別される。第１の方法において、ブロックは、再開値を全く使用せずに圧縮される。同一のブロックは、可能な再開位置毎に、すなわち上述の開始画素位置以外の全ての画素位置に対して１度圧縮される。４×４のブロックの場合、これは、１＋１５個の異なる圧縮ブロック候補を判定することを意味する。再開値を全く使用せずに圧縮されたブロックが最小の圧縮サイズを与える場合、再開値は現在のブロックに対して採用されない。しかし、最小の圧縮サイズを与える圧縮ブロック候補が再開値を使用する１５個の候補のうちの１つである場合、再開画素の位置は、最小の圧縮サイズを有するブロック候補において使用される位置になるように識別される。
【００４７】
計算的に更に効果的である別の方法について、図４と関連して以下に更に説明する。図４は、図１の選択ステップＳ２の一実施形態を示す。方法は、図１のステップＳ１から継続する。次のステップＳ１０は、開始デプス値と最も異なるブロック中のデプス値を識別する。最初に、開始値に対する絶対差分｜Ｚstart − Ｚij｜がブロック中の全ての残りの画素に対して計算される。この式中、(i, j) ≠ (1, 1)である。最大の絶対差分を結果として与えるデプス値を有する画素が識別される。本明細書において、このデプス値はＺdiffで示される。その後、画素のデプス値と開始値との間の第１の絶対差分｜Ｚij − Ｚstart｜、及び、デプス値とＺdiffとの間の第２の絶対差分｜Ｚij − Ｚdiff｜が画素に対して計算される。第１の絶対差分が第２の絶対差分より小さい場合、その画素は開始デプス平面に属するものとして考えられ、開始値の予測である。第１の絶対差分が第２の絶対差分より小さくない場合、画素は再開平面に属するものとして分類され、再開値の予測である。開始平面に属する画素には０bin（又は１bin）の一時的な分類指標が割り当てられ、再開予測画素には１bin（又は０bin）の一時的な分類指標が割り当てられる。この場合、再開画素は、第１の差分より大きい第２の絶対差分を有するブロックのトラバーサル順で第１の画素として識別される。従って、１binの一時的な分類指標を有する上位行から開始し且つ下向きに進むように行毎に横切る場合のブロックの第１の画素が再開画素として考えられる。識別された再開画素のデプス値は、ステップＳ１２において再開デプス値として選択される。その後、図１のステップＳ３に進む。
【００４８】
更に別の方法において、再開デプス値は、画素の少なくとも一部分に対して、好ましくは開始画素を除くブロック中の各画素に対して生成される平面表現から識別される。そのような場合、開始デプス値が属する第１の平面と関連付けられない平面表現を有するブロックのトラバーサル順で第１の画素が再開デプス画素として考えられる。この画素のデプス値は、ブロックに対する再開値として採用される。
【００４９】
図５は、図１の平面表現生成ステップの一実施形態を示すフローチャートである。この方法は、図１のステップＳ２から継続する。次のステップＳ２０は、画素のデプス値と開始デプス値との間の第１の差分を計算する。また、デプス値と再開デプス値との間の第２の差分が計算される。別の方法において、特に再開デプス値がまだ判定されていない場合、第２の差分はデプス値と上述のＺdiffとの間で計算される。第１の差分の絶対値が第２の差分の絶対値より小さい場合、すなわち｜Ｚij − Ｚstart｜ ＜ ｜Ｚij − Ｚrestart｜、又は、｜Ｚij − Ｚstart｜ ＜ ｜Ｚij − Ｚdiff｜である場合、ステップＳ２１に進む。
【００５０】
ステップＳ２１は、第１のデプス値平面を示す０bin（又は１bin）等の第１の平面表現を生成する。この平面表現は、現在の画素に割り当てられ、圧縮ブロックのビットマップの一部として含まれる。
【００５１】
しかし、画素のデプス値が開始値より再開値に近い場合、ステップＳ２２に進む。このステップＳ２２は、第２のデプス値平面を示す１bin（又は０bin）等の第２の平面表現を生成する。平面表現は、画素に割り当てられ且つ圧縮ブロックに含まれる。
【００５２】
再開画素の識別中に判定される一時的な分類ビットが平面表現を提供するために実際に採用されることは、本発明により理解される。そのような場合、専用平面表現提供手順は必要なく、表現は再開値選択手順と関連して提供される。
【００５３】
計算費用が更に高価である平面表現を生成する更なる一実施形態は、平面表現の全ての２15個の可能な組合せをテストし且つ計算的に最も効果的な組合せを選択すること、すなわち最小の圧縮ブロックサイズを提供することである。
【００５４】
更に別の実施形態は、Haselgren及びAkenine-Mollerの非特許文献２により説明される手順を使用することである。簡単に説明すると、開始平面は、予測誤差が大きくなりすぎるまで開始デプス値から増加することが可能である。それに応じて、再開平面は、誤差が大きくなりすぎるまでブロック中のはす向かいの位置から増加可能である。２つの平面が共に全てのブロックを含むと、平面表現が取得される。
【００５５】
本発明は、更なる一実施形態を含む。この場合、１５個の可能な位置（４×４のブロックの場合）のうち再開位置がテストされる。この位置に基づいて、平面表現の「最適な」セット又はビットマップが判定される。そのような手順において、候補再開位置に対するブロックのトラバーサル順で先行位置の全ての画素が第１の平面／開始平面を示す平面表現を有するものとして考えられる。ブロックのトラバーサル順で再開位置に後続する画素毎に、画素が第１の平面／開始平面に属するか又は第２の平面／再開平面に属するかがテストされる。このテストは、種々の基準に従って実行される。第１の基準は、結果として最小の予測誤差を与える平面表現を選択することである。しかし、画素に対する最小の予測誤差を結果として与える平面表現は、必ずしもブロックの最も効率的な符号化を与えるとは限らない。Golomb-Rice符号化と関連して本明細書で更に説明されるように、予測誤差は値２lで除算される。ここで、ｌは、現在の画素に対する予測を計算するために使用された隣接するデプス値の数に依存して、判定された値ｋと等しいか又はｋの関数である。ｌ＝ｋであるか又はｌ ＝ｆ（ｋ）であるかに依存して、例えば平面表現がｌ＝ｋではなくｌ＝ｆ（ｋ）をもたらす値を有する場合、実際にはより大きい予測誤差は結果として得られるより短い圧縮ブロックを提供できる。
【００５６】
手順は、全ての可能な再開位置及び全ての可能な平面表現に対してテストされる。
【００５７】
図６は、図１の予測誤差の符号化表現を判定するステップの一実施形態を示すフローチャートである。方法は、図１のステップＳ６から継続する。次のステップＳ３０は、正の予測誤差を得るために予測誤差を変更する。この変更は、負の予測誤差（ゼロを含む）に関数ｎ（ｘ）＝ −２ｘを適用し、正の予測誤差（ゼロを除く）に関数ｐ（ｘ）＝ ２ｘ −１を適用することを含むのが好ましい。その結果、｛0, 1, -1, 2, -2, 3, -3, ...}である予測誤差の新しい構成が得られる。これは、小さい大きさの数が小さい値を有することを意味する。変更された各予測誤差は、符号化表現を取得するためにGolomb-Rice符号化されるのが好ましい。
【００５８】
Golomb-Rice符号化は、ステップＳ３１において、指数ｋを探索することを含む。この数ｋは、ブロックの少なくとも１つの画素のセットに対して採用されるのが好ましい。例えば、ブロックの２×２のグループの４画素又は実際には４×４の全ての画素は同一のｋを共有できる。０と１５との間等のｋの利用可能な値の間で全数探索が使用され、グループに最適なｋを見つける。
【００５９】
次のオプションのステップＳ３２は、探索されたｋに基づいて指数値ｌを計算する。すなわち、ｌ＝ｆ（ｋ）である。好適な一実施形態において、現在の画素に対してステップＳ４で選択された画素セットが１つの画素を含む場合、関数ｆ（ｋ）はｗ×ｋ＋ｈ、又は、
2011512067.tif 000006
と等しく、それ以外の場合、関数はｋと等しい。従って、画素のデプス値予測がブロック中の単一の他の画素の単一のデプス値に基づいて判定され且つ予測のセットに含まれる場合、ｌ＝ｗ×ｋ＋ｈである。ここで、式中、ｗは事前定義済みの重みであり、ｈは事前定義済みの定数であり、例えばｗ＝０．５及びｈ＝１０である。重み及び定数の最適な値は、複数のデプスバッファを圧縮することと種々の重み及び定数値をテストすることとを含む最適化手順を介して判定される。最適な圧縮をもたらす値、すなわち可能な限り多くのテストデプスバッファを圧縮し且つ更に結果としてビット数に関して可能な限り短い圧縮バッファを与える値が見つけられて使用される。そのような最適化手順は、ｗ＝０．５及びｈ＝１０を得るために実行された。しかし、これらの値は、従来技術において周知の手順に更に従って最適化される。
【００６０】
現在の画素の画素セットがブロック中の複数の他の画素を含む場合、すなわち画素のデプス値がブロック中のそれらの他の画素のデプス値に基づいて予測される場合、ｌ＝ｋである。
【００６１】
いくつかの画素が同一の値ｋを共有できるため、画素に対して選択される各画素セットの画素数に依存して、全ての画素が同一の値ｌ又は異なる値ｌを有することができる。
【００６２】
次のステップＳ３３は、グループの各予測誤差を２lで除算し、商及び余りを形成する。商は、次のステップＳ３４においてアルファ符号化（unary encode）される。このアルファ符号化は、以下の表１に従って実行されるのが好ましい。
【００６３】
【表１】
2011512067.tif 000007
【００６４】
アルファ符号化は、表１から明らかであるように、より大きな値により長いコードを割り当てる。一般に３１より大きい値は、０ｘｆｆｆｆhexを使用して符号化され、その後値の１６ビットが続く。
【００６５】
予測誤差の符号化表現は、アルファ符号及び余りのｌビットを含む。更に値ｋは、画素のグループに対して格納される。この手順は、開始画素及び再開画素を除くブロック中の画素毎に実行される。上述したように、これらの画素の元のデプス値は開始成分値及び再開成分値としてそれぞれ格納される。
【００６６】
本発明は、Golomb-Rice符号化アルゴリズムであるが、これに限定されない。これに対して、ハフマンアルゴリズム等の他の符号化アルゴリズムが代わりに使用できる。
【００６７】
図７Ａ及び図７Ｂは、図１の画素セット選択ステップ及び予測提供ステップの好適な一実施形態を示す。図２を参照してこの好適な実施形態を更に説明する。図中、画素ブロック３００においてＤで示される画素３１８が圧縮対象である。方法は、図１のステップＳ４から継続する。次のステップＳ４０は、画素３１８に対するブロックにおいて第１の予測方向に存在するＡで示される第１の隣接画素３１７、第２の予測方向に存在するＢで示される第２の隣接画素３１５及び第３の予測方向に存在する図２のＣで示される第３の隣接画素３１４は全て、画素３１８と同一のデプス値平面に属するかが調べられる。
【００６８】
第１の隣接画素３１７は、現在の画素３１８と同一の行に存在する先行画素であるのが好ましい。同様に、第２の隣接画素３１５は、ブロック３００において同一列の先行画素位置に位置する。最後に第３の隣接画素３１４は、画素３１８に対して対角線上で左上に位置する対角の先行画素、すなわち先行する行及び先行する列の画素であるのが好ましい。
【００６９】
図１のステップＳ３で判定されるようなこれらの３つの隣接画素３１４、３１５、３１７の平面表現は、符号化される画素３１８の対応する平面表現と比較される。平面表現が全て等しい場合、すなわち全ての画素３１４、３１５、３１７、３１８が同一のデプス値平面に存在するものとして考えられる場合、ステップＳ４１に進む。ステップＳ４１は、３つの隣接画素３１４、３１５、３１７の予測値に基づいて画素３１８に対するデプス値の予測値を計算する。好適な一実施形態において、予測値は、第１の隣接画素３１７及び第２の隣接画素３１５のデプス値の合計から第３の隣接画素３１４のデプス値を減算したものとして計算される。すなわち、
2011512067.tif 000008
である。
【００７０】
しかし、３つの隣接画素３１４、３１５、３１７の平面表現のいずれかが画素３１８の平面表現と等しくない場合、ステップＳ４０からステップＳ４２に進む。ステップＳ４２は、第１の予測方向の第１の隣接画素３１７及び第１の予測方向に存在する図２においてＥで示される第２の画素３１６が現在の画素３１８と同一のデプス値平面に属するかを調査する。
【００７１】
第２の画素３１６は、現在の画素（及び第１の隣接画素３１７）と同一行に存在する第２の先行画素３１６であるのが好ましい。全ての３つの画素３１６、３１７、３１８の平面予測が等しい場合、ステップＳ４３に進む。ステップＳ４３は、画素セットに含まれるように選択された２つの先行画素３１６、３１７の予測値に基づいて画素３１８に対するデプス値の予測値を計算する。好適な一実施形態において、デプス値の予測値は、第１の隣接画素のデプス値の２倍から第２の画素のデプス値を減算した値と等しくなるように計算される。すなわち、
2011512067.tif 000009
である。
【００７２】
しかし、これらの３つの画素３１６、３１７、３１８の平面表現が等しくない場合、ステップＳ４２からステップＳ４４に進む。ステップＳ４４は、第２の隣接画素３１５及び第２の予測方向に存在する図２においてＦで示される第３の画素３１２が現在の画素３１８と同一のデプス値平面に属するかを調査する。
【００７３】
第３の画素３１２は、現在の画素３１８（及び第２の隣接画素３１５）と同一列に存在する第２の先行画素３１２であるのが好ましい。全ての３つの画素３１２、３１５、３１８の平面予測が等しい場合、ステップＳ４５に進む。ステップＳ４５は、画素セットに含まれるように選択された２つの先行画素３１２、３１５の予測値に基づいて画素３１８に対するデプス値の予測値を計算する。好適な一実施形態において、デプス値の予測値は、第２の隣接画素のデプス値の２倍から第３の画素のデプス値を減算した値に等しくなるように計算される。すなわち、
2011512067.tif 000010
である。
【００７４】
図７Ａの別の一実施形態において、ステップＳ４０、Ｓ４２及びＳ４４の順序は変更される。例えば、ステップＳ４０において隣接画素３１４、３１５、３１７の平面表現のいずれかが画素３１８の平面表現と等しくない場合、ステップＳ４０からステップＳ４４に進む。その後、画素３１６、３１７のいずれかが現在の画素３１８と同一の平面表現を有さない場合、ステップＳ４４からＳ４２に進む。
【００７５】
更に図７Ａの手順は、ステップＳ４２のチェックから開始し、ステップＳ４０に進み且つその後ステップＳ４４に進んでもよく、ステップＳ４２から開始し、ステップＳ４４に進み且つその後ステップＳ４０に進んでもよい。同様に、手順はステップＳ４４の調査から開始し、ステップＳ４０に進み且つその後ステップＳ４２に進んでもよく、あるいはステップＳ４４から開始し、ステップＳ４２に進み且つ最後にステップＳ４０に進んでもよい。
【００７６】
従って、３つのステップＳ４０、Ｓ４２、Ｓ４４の順序は任意の事前定義済みの順序であってもよい。圧縮されるブロックに対して選択される特定の順序は、本発明の符号化品質に影響を及ぼさない。
【００７７】
上述の条件のいずれも満たされない場合、図７ＢのステップＳ４６に進む。このステップＳ４６は、第１の隣接画素３１７及び第２の隣接画素３１５が各平面表現を使用して画素３１８と同一のデプス値平面に属するかを調査する。それらの隣接画素の全てが同一平面に属する場合、次のステップＳ４８（ステップＳ４７は、圧縮中ではなく伸張中に実行される）は、現在の画素に対するデプス値の予測として２つの隣接画素３１５、３１７のデプス値のうちの一方を選択する。好適な一実施形態において、画素３１８のデプス値に最も近いデプス値が選択される。換言すると、｜Ｚi(j-1) − Ｚij｜ ＜ ｜Ｚ(i-1)j − Ｚij｜である場合、
2011512067.tif 000011
であり、これ以外の場合、
2011512067.tif 000012
である。別の方法において、予測は選択されたデプス値から計算される。すなわち、
2011512067.tif 000013
である。
【００７８】
次のステップＳ４９は、現在の画素３１８に対する予測の基礎として使用するために、第１の隣接画素３１７及び第２の隣接画素３１５のうち選択された画素と関連付けられるガイドビットを提供する。２つの隣接画素３１５、３１７の間で選択されるため、ガイドビットは、その名前が提案するように１ビットの選択ワードとすることができる。
【００７９】
別の一実施形態において、ステップＳ４６からステップＳ４８に直接進まない。本実施形態は、２つの隣接画素３１５、３１７がほぼ同一のデプス値を有するかを調査するための更なるチェックを実行することを含む。その結果、デプス値の間の絶対差分が計算され、差分が事前定義済みの閾値より小さい場合、すなわち｜Ｚi(j-1) − Ｚ(i-1)j｜ ＜ Ｔである場合、２つの値の平均が計算されて予測として使用される。すなわち、
2011512067.tif 000014
である。整数の予測のみが望ましい場合、
2011512067.tif 000015
のように、平均は丸められるか又は床（又は天井）関数に入力される。この場合、追加のガイドビットは必要ない。
【００８０】
絶対差分が閾値を超える場合、ステップＳ４８に進み、隣接画素３１５、３１７のうちの一方が現在の画素３１８に対する予測の基礎として採用される。
【００８１】
第１の隣接画素３１７及び第２の隣接画素３１５のいずれかが現在の画素３１８と同一のデプス値平面に属さない場合、ステップＳ４６からステップＳ５０に進む。ステップＳ５０は、第１の隣接画素３１７が画素３１８と同一のデプス平面に存在するかを調査する。そのような場合、ステップＳ５１は、第１の隣接画素のデプス値に基づいてデプス値の予測値を規定する。好ましくは、隣接するデプス値と等しくなるように予測値を設定する。すなわち、
2011512067.tif 000016
である。
【００８２】
第１の隣接画素３１７が現在の画素３１８と同一のデプス値平面に属さない場合、ステップＳ５０からステップＳ５２に進む。このステップＳ５２は、ステップＳ５０と同様に実行されるが、第２の隣接画素３１５が画素３１８と同一のデプス平面に属するかを調査する。各平面表現の比較に基づいて判定されるように、これが該当する場合、ステップＳ５３に進む。ステップＳ５３において、画素３１８の予測は、第２の隣接画素３１５のデプス値に基づいて判定され、好ましくは、
2011512067.tif 000017
である。
【００８３】
第１の隣接画素３１７及び第２の隣接画素３１５の双方ともが画素３１８と同一のデプス平面に属さない場合、ステップＳ５４に進む。ステップＳ５４は、開始デプス値及び再開デプス値のうちの一方に基づくように画素３１８の予測値を選択する。予測値は、画素３１８が属する平面に基づいて選択される。画素３１８が開始値と同一の平面に属する場合、
2011512067.tif 000018
が使用され、属さない場合には、
2011512067.tif 000019
が使用される。別の方法において、予測値を、選択されたデプス値から計算する。すなわち、
2011512067.tif 000020
である。
【００８４】
その後、デプス値がステップＳ４１、Ｓ４３、Ｓ４５、Ｓ４８、Ｓ５１、Ｓ５３又はＳ５４において提供されると、図１のステップＳ６に進む。ステップＳ６において、予測誤差は提供されたデプス値の予測に基づいて推定される。
【００８５】
上記説明において、第１の隣接画素は、画素ブロックにおいて符号化される現在の画素と同一行に存在する先行画素として開示された。しかし、これは可能な一実現例の単なる例である。別の一実施形態において、第１の隣接画素は、画素ブロックにおいて現在の画素と同一列に存在する先行画素であってもよい。そのような場合、第２の隣接画素は、ブロックにおいて現在の画素と同一行に存在する先行画素であるのが好ましい。
【００８６】
図７Ａ〜図７Ｂにおいて開示される手順のＡ〜Ｆで示される任意の画素が実際にはブロック外に存在する場合、その画素は符号化される画素と同一のデプス値平面に属さないものとして処理される。例えば、図２の画素３１７が符号化される対象と仮定する。更にこの例において、第３の隣接画素３１３は画素３１７とは異なる平面に属する。従って、図７ＡのステップＳ４０の条件は満足されず、ステップＳ４２に進む。しかし、この場合、第１の予測方向の第２の画素はブロックの境界の外側に位置付けられる。従って、画素は画素３１７とは異なる平面表現を有すると考えられる。ステップＳ４２からＳ４４に進む。
【００８７】
これは、第１の行又は第１の列に存在する画素３１１、３１２，３１３、３１６に対して、デプス値の予測が同一の第１の列又は第１の行の隣接する先行画素のデプス値と等しくなること、あるいは第１の行又は第１の列の直前の画素のデプス値から計算されることを意味する。すなわち、Ｚ11 ＝ Ｚstartである場合、 
2011512067.tif 000021
である。
【００８８】
図８は、本発明に従って圧縮された画素ブロックの圧縮表現４００を示す概略図である。レンダリングの前に、全てのブロックはクリアされるのが好ましく、Ｚfar値のみを含む。ブロックにおけるレンダリングが開始した後でも、多くの画素がＺfar値に設定されるのが一般的である。従って、多くの開始値はＺfar値と等しくなる。従って、このことを信号伝送する特別な例を有するという利点がある。圧縮ブロック４００は、現在のブロックがＺfarに等しい開始デプス値を有するかを信号伝送するための１ビット４１０を含むのが好ましい。開始値の表現４２０は、圧縮ブロック４００に含まれるか又はクリアビット４１０が設定される場合には省略される。圧縮ブロック４００は、再開値の表現４３０を更に含む。平面表現４４０のビットマップは、判定されたｋ値４５０と同様にブロック４００に含まれる。一般的な一実施形態において、ビットマップ４４０は１５個の平面表現を含む。開始画素を除く画素毎に１つの表現を含む。しかし、従来技術において周知であり且つ本発明に適用されるそのような平面表現を符号化する更に効率的な他の方法がある。追加のガイドビット４６０は、画素に対して選択された予測に依存して含まれてもよい。圧縮ブロック４００は、図中では符号化誤差表現４７０で示されるGolomb-Rice符号化による商及び余りのアルファ符号を更に含む。
【００８９】
圧縮ブロック４００の含まれる成分の実際の順序は、図８に示す順序と異なってもよい。
【００９０】
［伸張］
図９は、本発明に従って圧縮又は符号化画素ブロックを伸張又は復号する方法を示すフローチャートである。方法は、ステップＳ６０において開始する。ステップＳ６０は、ブロックに対して開始デプス値を提供する。この開始値は、圧縮画素ブロックに含まれる開始値表現に基づいて提供される。好適な一実施形態において、開始デプス値は、圧縮ブロックにおいて圧縮されずに提供されるため、開始画素のデプス値として直接割り当てられる。この画素は、上述したようにブロックにおいて事前定義済みの位置、好ましくは(i, j) = (1, 1)を有する。あるいは、ビットは、開始デプス値がＺfar値に等しいかを示すことができ、この場合は開始値を明示的に格納することを回避する。
【００９１】
次のステップＳ６１は、圧縮ブロックに対して再開デプス値を提供する。この値は、圧縮ブロックに含まれる再開値表現に基づいて提供される。この表現は、好ましくは圧縮せずに再開値を含む。一般に再開画素の位置は、平面表現から取得される。開始デプス値と同一の平面表現を有さないトラバーサル順で第１の画素は、再開値の位置にある。ステップＳ６１は、平面表現からブロックにおける再開画素を識別すること及び識別された画素に対して再開値をデプス値として割り当てることを含む。上述したように、開始デプス値及び再開デプス値は、異なるデプス値平面に属すると考えられる。
【００９２】
次のステップＳ６２〜Ｓ６５のループは、ブロックにおいて復号される画素毎に実行される。ステップＳ６２は、画素と関連付けられ且つ圧縮ブロックに含まれる符号化誤差表現に基づいて画素に対する予測誤差を判定する。
【００９３】
予測誤差は、予測誤差の符号化表現をGolomb-Rice復号することにより実行されるのが好ましい。そのような場合、予測誤差は、アルファ符号化された商、余り及び指数値ｋを含むのが好ましい。商は上記の表１を使用してアルファ符号化されたデータから取得される。その後、商及び余りは、予測誤差を形成するために２lで乗算される値を形成する。値ｌは、現在の画素の画素セットが１つの他の画素を含むか又は複数の他の画素を含むかに依存して、ｋに等しいか又はｋの関数である。
【００９４】
次のステップＳ６３は、ブロックにおいて少なくとも１つの他の画素を含む画素セットを選択する。この選択は、画素と関連付けられる各平面表現に基づいて実行される。上述したように、平面表現は、開始デプス平面及び再開デプス平面のうち画素が属する平面を示す。
【００９５】
画素のデプス値の予測値は、ステップＳ６４において提供される。このステップＳ６４は、選択された画素セットの少なくとも１つの画素のデプス値に基づいて予測値を提供することを含むのが好ましい。従って、画素セットの少なくとも１つのデプス値は、デプス値の予測値を提供又は計算するために使用される。
【００９６】
最後にステップＳ６５は、ステップＳ６２で判定された予測誤差及びステップＳ６４で提供されたデプス値の予測値に基づいて画素のデプス値の表現を計算する。この計算は、復号画素のデプス値を得るために判定された予測誤差を予測値に加算することにより実現されるのが好ましい。
【００９７】
図９の伸張方法は、復号されるブロック中の画素毎に繰り返されるのが好ましい。これを線Ｌ３により概略的に示す。これは、所定の圧縮ブロックに対して、方法がブロックの画素毎に１回等、１回又は複数回実行されることを意味する。
【００９８】
図１０は、伸張方法の追加のステップを示すフローチャートである。この方法は図９のステップＳ６０から継続する。次のステップＳ７０は、圧縮ブロックに含まれるものから画素と関連付けられる各平面表現を提供する。検索された平面表現は、再開画素を識別するために図１０のステップＳ６１で使用され、画素に対する正確な画素セット及び画素に対する正確なデプス値の予測を識別するためにステップＳ６３で使用される。
【００９９】
図９の画素セット選択ステップ及び予測提供ステップの好適な一実施形態を図７Ａ及び図７Ｂに示す。手順は、提供された平面表現に基づいてステップＳ４０、Ｓ４２、Ｓ４４、Ｓ４６、Ｓ５０又はＳ５２において正確な予測のセットをステップ毎に識別するために上述したように実行される。正確な画素セットが識別されると、デプス値の予測値は、ステップＳ４１、Ｓ４３、Ｓ４５、Ｓ４８、Ｓ５１、Ｓ５３又はＳ５４のうちの１つに従って画素セットのデプス値に基づいて判定される。
【０１００】
圧縮中に実行される手順と比較した場合の本実施形態の相違点は、第１の隣接画素及び第２の隣接画素の双方が復号する現在の画素と同一の平面に属するとステップＳ４６において判断される場合にステップＳ４７に進むことである。ステップＳ４７は、現在の画素と関連付けられ且つ圧縮ブロックに含まれるガイドビットを提供する。ガイドビットは、第１の隣接画素及び第２の隣接画素のどちらを画素に対する予測の基礎として使用するかを示す。従って、ステップＳ４８におけるデプス値の予測値の選択は、関連するガイドビットに基づいて実行される。次のステップＳ４９は、伸張中には実行されないが、圧縮に関連してのみ実行される。
【０１０１】
上述したように、ガイドビットの使用は、現在の画素と同一行又は同一列の２つの先行画素が等しい又はほぼ等しいデプス値を有する場合に省略されてもよい。そのような場合、予測は２つの隣接するデプス値の平均から判定される。
【０１０２】
［伸張の例］
以下の例において、図２に示すようなブロックサイズ及び図８に示すような圧縮ブロックレイアウトを仮定している。
Ｚfarビット：０bin
開始値：010011101001101011010001bin
再開値：000000101001101011010001bin
平面表現：000100011111111bin
ｋ値：X1X2...Xn、ここで、Xi = 0/1bin、i = 1...nである。
ガイドビット：なし
符号化表現：Y1Y2...Ym、ここで、Yi = 0/1bin、i = 1...mである。
【０１０３】
Ｚfarビットは、現在のブロックに対して設定されず、開始値がＺfar値に設定されるべきでないことを示す。その代わり、開始値は開始値ビットから直接取得されるべきである。再開画素の位置は、平面表現から取得される。平面表現ビットベクトルの第１の非ゼロビットは位置４にあるため、再開画素の位置が４である。これは、トラバーサル順に(1, 1)が位置番号０を有し、(1, 2)が位置番号１を有する場合に(2, 1)に対応する。再開値は、000000101001101011010001bin = 170705である。従って、Ｚ(2,1) = Ｚrestart = 170705である。開始画素は位置（1, 1)にあり、開始値は010011101001101011010001bin = 5151441である。従って、Ｚ(1,1) = Ｚstart = 5151441である。この時点で、部分的に復号されたブロックは以下のように見える。
2011512067.tif 000022
【０１０４】
その後、ブロックは第１の行から開始してトラバーサル順に復号される。第１の行の全ての残りの画素は、開始デプス値と同一のデプス値平面に属することを示す０binに設定される平面表現を有する。画素の平面表現は以下に従う。
2011512067.tif 000023
【０１０５】
図７Ａ〜図７Ｂの伸張の実施形態に従うと、第２の先行する隣接画素又は第３の先行する隣接画素が存在しないため、位置(1, 2)にある次の画素がステップＳ５０に従って第１の隣接画素を含む予測セットを有するべきであることが分かる。これは、
2011512067.tif 000024
であることを意味する。
【０１０６】
以下の例において、予測誤差は、本明細書では開示されないGolomb-Rice復号を介して判定される。従って、ブロックに対する復号予測誤差を以下のように仮定する。
2011512067.tif 000025
【０１０７】
従って、第２の画素のデプス値は以下のように計算される。すなわち、
2011512067.tif 000026
である。第１の行の次の画素は、ステップＳ４２の要求を満たすため、
2011512067.tif 000027
を有する。第１の行の第３の画素の対応するデプス値は、
2011512067.tif 000028
である。手順は、第１の行の第４の最後の画素に対して繰り返され、以下のような部分的に復号されたブロックが得られる。
2011512067.tif 000029
【０１０８】
その後、第２の行の残りの画素が復号される。第２の行の第２の画素は、ステップＳ５２の要求を満たすため、
2011512067.tif 000030
のデプス値を有する。第２の行の第３の画素は、ステップＳ４０の基準を満たし、以下のように復号される。
2011512067.tif 000031
【０１０９】
同一の手順が第２の行の最後の画素に対して実行され、以下のような部分的に復号されたブロックが得られる。
2011512067.tif 000032
【０１１０】
残りの２つの行に対して復号手順を繰り返すことにより、以下の最終的な復号ブロックが得られる。
2011512067.tif 000033
【０１１１】
上記に従って計算されたデプス値は、図３と関連して上述したようにオプションとして浮動小数点数に再度マッピングされる。
【０１１２】
［実現例の態様］
図１１は、本発明の教示が適用されるデプスバッファアーキテクチャ１を示す概略図である。アーキテクチャは、特にデプス値を含む画素ブロックを格納するためのランダムアクセスメモリ（ＲＡＭ）５０を含む。デプスユニット１０は、ＲＡＭ５０から取り出した圧縮ブロックを伸張するための本発明に係る伸張システム２００を含む。伸張ブロック又は復号ブロックは、デプスユニット１０の関連するタイルキャッシュ１４に一時的に格納される。更に、ＲＡＭ５０に格納するためにキャッシュ１４に存在する画素ブロックを圧縮する本発明に係る圧縮システム１００がデプスユニット１０に提供される。
【０１１３】
好適な一実施形態において、デプスユニット１０は、タイルテーブルキャッシュ１２を更に含む。このテーブルキャッシュ１２は、画素ブロックと関連し且つデプスバッファデータとは別に保持されるヘッダ情報を格納する。一般にタイルテーブルエントリは、関連する画素ブロックが圧縮されずにＲＡＭ５０に格納されるか又は圧縮されてＲＡＭ５０に格納されるかを信号伝送するフラグを含む。後者の場合、種々の圧縮ブロックが種々の合計ビット長を有することができるため、フラグは圧縮ブロックのサイズを信号伝送するのが好ましい。例えば、２ビットのフラグは、非圧縮ブロック、元のサイズの７５％で圧縮された圧縮ブロック、元のサイズの５０％で圧縮された圧縮ブロック又はfast-Z-clearedで圧縮された圧縮ブロックを信号伝送するために使用される。
【０１１４】
ラスタライザ２０は、デプスユニット１０に接続され、画素の実際の展開を実行する。ラスタライザ２０は、画素のデプス及び色を算出するために採用される１つ又は複数の画素パイプライン３０に接続される。各画素パイプライン３０は、先に描かれた幾何学的形状により隠蔽される画素、すなわちより大きなデプス値を有する画素を廃棄する役割を果たすデプステストユニット４０に接続される。いくつかの実施形態において、画素パイプライン３０及びデプステスト４０の順序は交換可能である。
【０１１５】
［圧縮器］
図１２は、本発明に係る圧縮器又は圧縮システム１００を示す概略ブロック図である。システム１００は、圧縮されるブロックに対する開始デプス値を選択するように実現される開始選択器１１０を含む。この選択器１１０は、ブロックの左上隅の画素等のブロック中の事前定義済み画素位置にある画素のデプス値と等しくなるように開始値を選択するのが好ましい。この開始デプス値は第１の（開始）デプス平面に属するものとして考えられ、開始デプス値の表現は圧縮ブロックに含まれる。
【０１１６】
再開選択器１２０は、ブロックに対する再開デプス値を選択するように構成される。この再開選択器１２０は、ブロック中で識別された画素のデプス値と等しくなるように再開値を選択するのが好ましい。再開値は、第２の（再開）デプス平面に属するものとして考えられ、再開値の表現は圧縮ブロックに含まれる。
【０１１７】
圧縮システム１００は、画素の平面表現を生成する平面表現生成器１３０を更に含む。表現は、開始平面及び再開平面のうち画素が属する平面を示す。平面生成器は、ブロック中の複数の画素の少なくとも一部分に対して及び更に好ましくは開始画素を除く各画素に対して、平面表現を生成するのが好ましい。そのような場合、再開選択器１２０は、上述したように正確な再開画素を識別するために平面表現を使用できる。これは、平面表現がブロックにおける再開画素の位置の表現として考えられることを意味する。
【０１１８】
セット選択器１４０は、符号化対象の画素に対してブロック中の少なくとも１つの画素の画素セットを選択するために提供される。このセットの選択は、表現生成器１３０により判定される画素の平面表現に基づいて更に実行される。セットは、上述したようにブロックにおいて種々の予測方向に存在する１つの画素、あるいは２つ又は３つ等の複数の画素を含むことができる。
【０１１９】
画素のデプス値の予測値は、予測提供器１５０により判定される。そのような場合、提供器１５０は、セット選択器１４０からの画素セットに含まれる画素のデプス値に基づいてデプス予測値を生成する。
【０１２０】
提供されるデプス予測値は、画素に対する予測誤差を推定又は計算するために誤差推定器１６０により使用される。この誤差は、予測提供器１５０により判定される予測値と画素の元のデプス値との間の差分として計算されるのが好ましい。
【０１２１】
表現判定器１７０は、誤差推定器１６０からの予測誤差の符号化表現を判定するために圧縮システム１００において実現される。この誤差表現は、画素に割り当てられ、圧縮画素ブロックに含まれる。
【０１２２】
圧縮システム１００は、２つの利用可能な隣接画素のうち現在の画素に対する予測の基礎として使用する画素を信号伝送するために使用されるガイドビットを提供するように実現されるガイドビット提供器１８０をオプションとして含んでもよい。そのような場合、それらの２つの隣接画素の双方が画素と同一のデプス値平面に属し、ガイドビットは２つの画素のデプス値を区別するために採用される。
【０１２３】
圧縮システム１００のユニット１１０〜１８０は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット１１０〜１８０は、圧縮システム１００に共に実現されてもよい。あるいは、いくつかのユニットがデプスバッファアーキテクチャの他の場所に提供される分散型実現例も可能である。
【０１２４】
再開選択器１２０は、ブロック中の利用可能な各ビット位置（開始画素の位置を除く）をテストする全数探索を介して再開画素を識別するように実現される。最も効率的な圧縮ブロック、すなわち最短のビット長の圧縮ブロック表現をもたらす再開位置及び再開値が選択される。図１３は、再開選択器１２０の別の実現例を示す。
【０１２５】
再開選択器１２０は、開始選択器からの開始デプス値と最も異なるデプス値を有するブロック中の画素を識別するように構成される値識別器１２２を含む。差分計算機１２４は、デプス値と開始値との間の第１の差分Ｚij − Ｚstart、及び、デプス値と最も異なる値との間の第２の差分Ｚij − Ｚdiffを好ましくは画素毎に計算するように実現される。第１の差分の絶対値が画素に対して最小である場合、画素は開始デプス平面に属すると考えられる。しかし、｜Ｚij - Ｚdiff｜ ＜ ｜Ｚij − Ｚstart｜である場合、画素は再開デプス平面に属する。
【０１２６】
値選択器１２６は、再開平面に属すると考えられる全ての画素を調査し、再開値平面に属するトラバーサル順（４×４の画素ブロックの場合、(1, 1) → (1, 4), (2, 1) → (2, 4), (3, 1) → (3, 4), (4, 1) → (4, 4)）で第１の画素である再開画素を識別する。圧縮ブロック表現は、再開値の表現、すなわち識別された再開画素のデプス値の表現を含むのが好ましい。
【０１２７】
再開選択器１２０のユニット１２２〜１２６は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット１２２〜１２６は、再開選択器１２０に共に実現されてもよい。あるいは、いくつかのユニットが圧縮システムの他の場所に提供される分散型実現例も可能である。
【０１２８】
再開選択器１２０は、本明細書で上述した任意の他の実施形態に従って動作可能である。例えば再開選択器１２０は、開始デプス値の平面とは異なる平面に属すると考えられるトラバーサル順で第１の画素である再開画素を識別するために平面表現生成器１３０からの情報を使用できる。
【０１２９】
図１４は、平面表現生成器１３０の一実施形態を示す概略ブロック図である。生成器１３０は、画素のデプス値と開始デプス値との間の第１の差分を判定するように実現される差分判定器１３２を含む。更に生成器１３０は、デプス値と再開デプス値又は開始値と最も異なるブロック中の値、すなわちＺdiffとの間の第２の差分を計算する。
【０１３０】
表現生成器１３４は、第１の差分の絶対値が第２の差分の絶対値より小さい場合に開始デプス値平面を示す画素の平面表現を生成するため、平面生成器１３０に含まれる。あるいは、第１の差分の絶対値が第２の差分の絶対値より小さくない場合、生成器１３４は再開平面を示す平面表現を提供する。
【０１３１】
平面表現生成器１３０のユニット１３２及び１３４は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット１３２及び１３４は、生成器１３０に共に実現されてもよい。あるいは、いくつかのユニットが圧縮システムの他の場所に提供される分散型実現例も可能である。
【０１３２】
好適な一実施形態において、セット選択器１４０は、ブロックにおいて異なる予測方向に存在する３つの先行する隣接画素の平面表現により符号化対象の画素の平面表現を調査する。全てのそれらの４つの画素が同一平面に属する場合、図１５に示される予測提供器１５０の予測計算機１５２は、３つの隣接画素のデプス値に基づいて画素に対するデプス値の予測値を計算する。好適な一実現例において、計算機１５２は、
2011512067.tif 000034
として予測値を計算する。
【０１３３】
３つの隣接画素のいずれかが画素と同一の平面に属さない場合、セット選択器は、第１の隣接画素及び第２の画素が第１の隣接画素及び現在の画素と同一行（又は同一列）に存在するかを調査するのが好ましい。そのような場合、計算機１５２は、２つの画素のデプス値に基づいて、好ましくは
2011512067.tif 000035
として予測値を判定する。
【０１３４】
第１の隣接画素及び第２の隣接画素のいずれかが現在の画素と同一の平面に属さない場合、セット選択器は、第２の隣接画素及び第３の画素が第２の隣接画素及び現在の画素と同一列（又は同一行）にあるかをチェックする。この条件が満たされる場合、予測計算機１５２は、それらの２つの画素のデプス値に基づいて、好ましくは 
2011512067.tif 000036
として予測値を判定する。
【０１３５】
あるいは、上記チェックの順序は上述したように異なってもよい。
【０１３６】
しかし、条件がいずれも満たされない場合、セット選択器は、第１の隣接画素及び第２の隣接画素の双方が本発明と同一のデプス値平面に属するかを調査する。そのような場合、現在の画素のデプス値に最近接するそれら２つの画素のデプス値、すなわち結果として最小の絶対差分を与えるそれら２つの画素のデプス値は、予測提供器１５０により画素に対する予測値として選択される。更に圧縮システムのガイドビット提供器は、ガイドビットを画素に割り当てる。このガイドビットは、第１の隣接画素及び第２の隣接画素のうち選択された画素を示す。
【０１３７】
あるいは、これら２つの画素のデプス値は比較され、それらのデプス値が互いに非常に異なるかを確認する。デプス値が互いに非常に異ならない場合、予測提供器１５０は、可能性として丸められた後の２つのデプス値の平均値に基づくように予測値を判定する。２つの値が規定された閾値を上回る程互いに異なる場合、上述したように、それらの値のいずれかが選択される。
【０１３８】
第１の隣接画素及び第２の隣接画素のいずれかが現在の画素と同一の平面に属さない場合、セット選択器は、第１の隣接画素が同一の平面に属するかをチェックし、このチェックが肯定でない場合、第２の隣接画素が符号化する画素と同一の平面に属するかを調査する。予測提供器１５０は、画素と同一の平面に属する第１の隣接画素及び第２の隣接画素のうちの一方のデプス値と等しくなるようにデプス値の予測値を設定する。
【０１３９】
最後に、平面表現に基づいて判定されるように、第１の隣接画素及び第２の隣接画素のいずれも画素と同一の平面に属さない場合、セット選択器は、開始画素又は再開画素を含むセットを判定する。それらの２つの画素から選択する画素は、現在の画素の平面表現に基づいて判定される。従って、表現が再開平面を示す場合、セットは再開画素を含み、示さない場合、セットは開始画素を含む。これは、予測提供器が開始デプス値及び再開デプス値の一方になるようにデプス値の予測値を選択することを意味する。
【０１４０】
予測提供器１５０のユニット１５２は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット１５２は、予測提供器１５０に共に実現されてもよい。あるいは、ユニットの一部が圧縮システムの他の場所に提供される分散型実現例も可能である。
【０１４１】
図１６は、図１２の表現判定器１７０の好適な一実現例を更に詳細に示すブロック図である。判定器１７０は、誤差変更器１７２を含む。この変更器１７２は、上述したように正の予測誤差を取得するために、計算された予測誤差を処理する。すなわち、負の予測誤差（ゼロを含む）の場合には予測誤差xを関数ｎ（ｘ）＝ −２ｘに入力し、正の予測誤差（ゼロを除く）の場合には予測誤差xを関数ｐ（ｘ）＝ ２ｘ−１に入力する。結果として得られる変更された予測誤差は、好ましくはGolomb-Rice符号器１７４により符号化される。この符号器１７４は、誤差変更器１７２からの正の誤差の符号化に基づいて符号化予測誤差表現を出力する。
【０１４２】
一般に符号器１７４は、値ｋを探索するための値探索器を含む。値ｋは、ブロック中の画素が同一の値ｋを共有するようにそれらの画素のグループに対して判定されるのが好ましい。これにより、ブロックの画素毎に専用の値ｋを有する場合と比較して最終的な圧縮ブロック表現のビット数が節約される。値探索器１７１は、０ ≦ ｋ ≦ １５等の全ての利用可能な値ｋの間で全数探索を実行できる。最も効率的な符号化、すなわち最短の圧縮ブロック表現をもたらす値ｋが画素グループに対して選択及び使用される。
【０１４３】
数値提供器１７３は、判定された値ｋに基づいて指数ｌを提供する。好適な一実施形態において、この数ｌは、セット選択器により選択される画素セットが複数の画素を含む場合にｋに等しくなるように提供器１７３により判定される。複数の画素を含まない場合、ｌ =ｗ × ｋ + h、又は、
2011512067.tif 000037
である。ここで、ｗは重み値であり、ｗ＝０．５であるのが好ましい。また、ｈは定数であり、ｈ＝１０であるのが好ましい。
【０１４４】
除算器１７５は、判定された値ｌを使用し、現在のグループの画素の予測誤差を数字２lで除算して、商及びｌビットの余りを得る。アルファ符号器１７７は、周知の手順に従って商をアルファ符号化するために提供される。画素の符号化予測誤差表現は、アルファ符号化された商、余り及び値ｋを含む。
【０１４５】
表現判定器１７０のユニット１７１〜１７７は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット１７１〜１７７は、表現判定器１７０に共に実現されてもよい。あるいは、いくつかのユニットが圧縮システムの他の場所に提供される分散型実現例も可能である。
【０１４６】
［伸張器］
図１７は、本発明に係る伸張器又は伸張システム２００を示す概略ブロック図である。システム２００は、画素ブロックの開始デプス値を提供する開始提供器２１０を含む。提供器２１０は、圧縮画素ブロックに含まれる開始値表現に基づいてこの開始値を提供する。この開始値は、画素ブロックにおいて事前定義済みの位置を有する画素のデプス値として割り当てられるのが好ましい。
【０１４７】
再開提供器２２０は、それに応じて圧縮ブロックにおける情報に基づいて再開デプス値を提供する。この情報は、実際の再開値の表現を含む。また、圧縮ブロックは、ブロックにおける特定の再開位置の識別を可能にする情報を更に含む。この位置情報は、平面表現のビットマップであってもよく、あるいはより好ましくないが、専用の再開位置ワードであってもよい。識別された画素（再開画素）には、再開値がデプス値として割り当てられる。
【０１４８】
システム２００は、ブロックにおける少なくとも１つの画素に対する予測誤差を判定する誤差判定器２３０を更に含む。この予測誤差は、画素と関連付けられ且つブロックに含まれる符号化誤差表現に基づいて判定される。
【０１４９】
セット選択器２４０は、画素と関連付けられる平面表現に基づいて、ブロック中の少なくとも１つの先に復号された他の画素を含む画素セットを選択する。これらの平面表現は、平面提供器２７０により圧縮画素ブロックから取り出されるのが好ましい。セット選択器２４０の動作は、図１２の圧縮システムと関連し且つ図７Ａ及び図７Ｂと更に関連して説明されるセット選択器２４０に類似する。
【０１５０】
予測提供器２５０は、選択された画素セットに含まれる画素のデプス値に基づいて復号される画素のデプス値の予測値を提供する。
【０１５１】
表現計算機２６０は、画素のデプス値の表現を計算し且つそれにより復号画素を生成するために、誤差判定器２３０からの予測誤差と共に予測提供器２５０からの予測値を使用する。
【０１５２】
伸張システム２００のユニット２１０〜２７０は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット２１０〜２７０は、伸張システム２００に共に実現されてもよい。あるいは、いくつかのユニットがデプスバッファアーキテクチャの他の場所に提供される分散型実現例も可能である。
【０１５３】
図１８は、誤差判定器２３０の一実施形態を示す概略ブロック図である。判定器２３０は、圧縮ブロックにおける符号化予測誤差表現に対して動作するGolomb-Rice復号器２３２を含む。特に復号器２３２は、上述したように予測誤差を計算するために、アルファ符号化された商、ｌビットの余り及び画素の値ｋを使用する。
【０１５４】
誤差判定器２３０のユニット２３２は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット２３２は、誤差判定器２３０に共に実現されてもよい。あるいは、ユニットの一部が伸張システムの他の場所に提供される分散型実現例も可能である。
【０１５５】
図１９は、図１７の予測提供器２５０の可能な一実現例である。提供器は、セット選択器により選択された画素セットに含まれる複数の画素のデプス値に基づいてデプス値の予測を計算するように構成される予測計算機２５２を含む。計算機２５２は、選択される特定の画素セットに依存して図７ＡのステップＳ４１、Ｓ４３又はＳ４５に関連して上述したように予測値を計算する。あるいは、予測提供器２５０は、図７ＢのステップＳ４８、Ｓ５１、Ｓ５３又はＳ５４で開示されるようにデプス値の予測値を提供する。
【０１５６】
予測提供器２５０のユニット２５２は、ソフトウェア、ハードウェア又はそれらの組合せとして提供されてもよい。ユニット２５２は、予測提供器２５０に共に実現されてもよい。あるいは、ユニットの一部が伸張システムの他の場所に提供される分散型実現例も可能である。
【０１５７】
特定の一実施形態において、圧縮又は伸張システムのセット選択器は、圧縮又は伸張される少なくとも１つの画素に対するブロックにおける第１の予測方向に存在する第１の隣接画素、少なくとも１つの画素に対するブロックにおける第２の予測方向に存在する第２の隣接画素及び前記少なくとも１つの画素に対するブロックにおける第３の予測方向に存在する第３の隣接画素が平面表現に基づいて判定されるように少なくとも１つの画素と同一のデプス値平面に属する場合、第１の隣接画素、第２の隣接画素及び第３の隣接画素を含むように画素セットを選択するように構成される。
【０１５８】
そのような場合、圧縮又は伸張システムの予測提供器は、第１の隣接画素及び第２の隣接画素のデプス値の合計から第３の隣接画素のデプス値を減算した値に等しくなるように予測値を計算する予測計算機を含む。
【０１５９】
別の特定の実施形態において、セット選択器は、少なくとも１つの画素に対するブロックにおける第１の予測方向に存在する第１の隣接画素及び第１の予測方向の第２の画素が平面表現に基づいて判定されるように少なくとも１つの画素と同一のデプス値平面に属する場合、第１の隣接画素及び第２の画素を含むように画素セットを選択するように構成される。
【０１６０】
そのような場合、予測提供器は、第１の隣接画素のデプス値を２倍した値から第２の画素のデプス値を減算した値に等しくなるように予測値を計算する予測計算機を含む。
【０１６１】
更なる特定の一実施形態において、セット選択器は、少なくとも１つの画素に対するブロックにおける第２の予測方向に存在する第２の隣接画素及び第２の予測方向の第３の画素が平面表現に基づいて判定されるように少なくとも１つの画素と同一のデプス値平面に属する場合、第２の隣接画素及び第３の画素を含むように画素セットを選択するように構成される。
【０１６２】
そのような場合、予測提供器は、第２の隣接画素のデプス値を２倍した値から前記第３の画素のデプス値を減算した値に等しくなるように予測値を計算する予測計算機を含む。
【０１６３】
セット選択器は、前記平面表現に基づいて判定されるように、第１の隣接画素、第２の隣接画素及び第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第１の隣接画素及び第２の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第２の隣接画素及び第３の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さず且つ第１の隣接画素及び第２の隣接画素が少なくとも１つの画素と同一のデプス値平面に属する場合、第１の隣接画素及び第２の隣接画素のうちの一方を含むように画素セットを選択するように構成されるのが好ましい。圧縮システムは、第１の隣接画素及び第２の隣接画素のうち選択された画素と関連付けられるガイドビットを提供するガイド提供器を更に含む。ブロックの圧縮表現はガイドビットを含む。
【０１６４】
伸張システムのセット選択器は、平面表現に基づいて判定されるように、第１の隣接画素、第２の隣接画素及び第３の隣接画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第１の隣接画素及び第２の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第２の隣接画素及び第３の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さず且つ第１の隣接画素及び第２の隣接画素が少なくとも１つの画素と同一のデプス値平面に属する場合、少なくとも１つの画素に割り当てられ且つ圧縮画素ブロックに含まれるガイドビットに基づいて、第１の隣接画素及び第２の隣接画素のうちの一方を含むように画素セットを選択するように構成されるのが好ましい。
【０１６５】
更にセット選択器は、平面表現に基づいて判定されるように、第１の隣接画素、第２の隣接画素及び第３の隣接画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第１の隣接画素及び第２の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第２の隣接画素及び第３の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第２の隣接画素が少なくとも１つの画素と同一のデプス値平面に属さず且つ第１の隣接画素が少なくとも１つの画素と同一のデプス値平面に属する場合、第１の隣接画素を含むように画素セットを選択するように構成されるのが好ましい。
【０１６６】
セット選択器は、平面表現に基づいて判定されるように、第１の隣接画素、第２の隣接画素及び第３の隣接画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第１の隣接画素及び第２の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第２の隣接画素及び第３の画素のいずれかが少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第１の隣接画素が少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに第２の隣接画素が少なくとも１つの画素と同一のデプス値平面に属さない場合、開始デプス値又は再開デプス値と関連付けられる画素を含むように画素セットを選択するように更に構成されるのが好ましい。
【０１６７】
図２０は、種々の解像度に対する「影」のシーンの圧縮性能を示す図である。１００％は元の帯域幅を表す。破線はHasselgren及びAkenine-Mollerの非特許文献２により提示されるデプスバッファ圧縮方式に対応し、実線は本発明のデプスバッファ圧縮を表す。尚、本発明は、最も高い解像度以外の全ての解像度に対して当該技術の現状より適切に実行が行える。
【０１６８】
種々のサイズの三角形に対して性能をテストするために、同一シーンが複数の解像度で使用されている。低解像度は、三角形が画素と比較して小さいこと、すなわち「複雑さの高い」種類のシーンを意味する。高解像度は、三角形が画素と比較して大きいことを意味し、「複雑さの低い」種類のシーンを表す。
【０１６９】
添付の請求の範囲により規定される本発明の範囲から逸脱せずに、種々の変形及び変更が本発明に対して行なわれてもよいことが当業者には理解されるだろう。
【図１】
2011512067.tif 000038
【図２】
2011512067.tif 000039
【図３】
2011512067.tif 000040
【図４】
2011512067.tif 000041
【図５】
2011512067.tif 000042
【図６】
2011512067.tif 000043
【図７Ａ】
2011512067.tif 000044
【図７Ｂ】
2011512067.tif 000045
【図８】
2011512067.tif 000046
【図９】
2011512067.tif 000047
【図１０】
2011512067.tif 000048
【図１１】
2011512067.tif 000049
【図１２】
2011512067.tif 000050
【図１３】
2011512067.tif 000051
【図１４】
2011512067.tif 000052
【図１５】
2011512067.tif 000053
【図１６】
2011512067.tif 000054
【図１７】
2011512067.tif 000055
【図１８】
2011512067.tif 000056
【図１９】
2011512067.tif 000057
【図２０】
2011512067.tif 000058
【手続補正書】
【提出日】平成21年10月12日(2009.10.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
各々がデプス値を含む複数の画素のブロックを圧縮する方法であって：
前記ブロックにおける複数のデプス値のうち第１のデプス値平面に属する開始デプス値を選択するステップと；
前記ブロックにおける前記複数のデプス値のうち第２のデプス値平面に属する再開デプス値を選択するステップと；
前記複数の画素の少なくとも一部分に対して、前記第１のデプス値平面及び前記第２のデプス値平面のうち、前記複数の画素の前記少なくとも一部分が属する平面を示す平面表現を生成するステップと；
前記ブロックにおける少なくとも１つの画素に対して、前記少なくとも１つの画素に関する前記ブロック内の第１の予測方向に位置する第１の隣接画素及び前記第１の予測方向に位置する第２の画素が、前記平面表現に基づき、前記少なくとも１つの画素と同じデプス値平面に属している場合、前記第１の隣接画素及び前記第２の画素を有するように画素セットを選択するステップと；
前記選択された画素セットの少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供するステップと；
前記少なくとも１つの画素の前記デプス値及び前記予測値に基づいて予測誤差を推定するステップと；
前記予測誤差の符号化表現を判定するステップとを有し、
前記ブロックの圧縮表現は前記開始デプス値の表現、前記再開デプス値の表現及び前記予測誤差の前記符号化表現を含むことを特徴とする方法。
【請求項２】
前記再開デプス値を選択する前記ステップは：
前記ブロックにおける前記複数のデプス値のうち前記開始デプス値と最も異なるデプス値を識別するステップと；
前記複数の画素の少なくとも一部分に対して、画素のデプス値と前記開始デプス値との間の第１の差分を判定するステップと；
前記複数の画素の前記少なくとも一部分に対して、前記画素の前記デプス値と前記識別されたデプス値との間の第２の差分を判定するステップと；
前記判定した第１の差分及び前記判定した第２の差分に基づいて前記再開デプス値を選択するステップとを含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記生成するステップは：
画素のデプス値と前記開始デプス値との間の第１の差分を判定するステップと；
前記画素の前記デプス値と、前記開始デプス値に対して最も異なる前記ブロックのデプス値との間の第２の差分を判定するステップと；
前記第１の差分の絶対値が前記第２の差分の絶対値より小さい場合に前記第１のデプス値平面を示す前記平面表現を生成し、前記第１の差分の絶対値が前記第２の差分の絶対値より小さくない場合に前記第２のデプス値平面を示す前記平面表現を生成するステップと
を含むことを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記判定するステップは：
正の予測誤差を得るために前記予測誤差を変更するステップと；
前記予測誤差の前記符号化表現を得るために前記正の予測誤差をGolomb-Rice符号化するステップであって、当該ステップは、
値がゼロ又は正の整数である値ｋを探索するステップと、
ｈが事前定義済みの定数、ｗが事前定義済みの重みとしたとき、前記選択された画素セットが複数の画素を含む場合はｋに等しく、複数の画素を含まない場合はｗ×ｋ＋ｈに基づく数ｌを提供し、
商及び余りを形成するために前記正の予測誤差を２lで除算し、
前記商をアルファ符号化することによりGolomb-Rice符号化するステップと
を含み、前記予測誤差の前記符号化表現は前記余りの表現及び前記アルファ符号化された商を含み、前記ブロックの前記圧縮表現はｋの表現を含むことを特徴とする請求項１乃至３のいずれか１項に記載の方法。
【請求項５】
圧縮画素ブロックを伸張する方法であって：
前記圧縮画素ブロックに含まれる開始値表現に基づいて第１のデプス値平面に属する開始デプス値を提供するステップと；
前記圧縮画素ブロックに含まれる再開値表現に基づいて第２のデプス値平面に属する再開デプス値を提供するステップと；
前記ブロックの少なくとも１つの画素に対して、前記少なくとも１つの画素と関連付けられ且つ前記圧縮画素ブロックに含まれる符号化誤差表現に基づいて予測誤差を判定するステップと；
前記少なくとも１つの画素に対して、前記少なくとも１つの画素に関する前記ブロック内の第１の予測方向に位置する第１の隣接画素及び前記第１の予測方向に位置する第２の画素が、前記平面表現に基づき、前記少なくとも１つの画素と同じデプス値平面に属している場合、前記第１の隣接画素及び前記第２の画素を有するように画素セットを選択するステップと；
前記選択された画素セットの前記少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供するステップと；
前記予測誤差及び前記予測値に基づいて前記少なくとも１つの画素の前記デプス値の表現を計算するステップと
を有することを特徴とする方法。
【請求項６】
前記予測値を提供する前記ステップは、前記第１の隣接画素のデプス値を２倍した値から前記第２の画素のデプス値を減算した値に等しくなるように前記予測値を計算するステップを含むことを特徴とする請求項１又は５に記載の方法。
【請求項７】
更に、前記複数の画素の少なくとも一部分に対して、前記圧縮画素ブロックから平面表現を提供するステップを含むことを特徴とする請求項５に記載の方法。
【請求項８】
前記画素セットを選択する前記ステップは、前記少なくとも１つの画素に関する前記ブロック内の第２の予測方向に位置する第２の隣接画素及び前記第２の予測方向に位置する第３の画素が、前記平面表現に基づき、前記少なくとも１つの画素と同じデプス値平面に属し、且つ、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同じデプス値平面に属していない場合、前記第２の隣接画素及び前記第３の画素を有するように画素セットを選択するステップを含むことを特徴とする請求項１乃至７のいずれか１項に記載の方法。
【請求項９】
前記予測値を提供する前記ステップは、前記第２の隣接画素のデプス値を２倍した値から前記第３の画素のデプス値を減算した値に等しくなるように前記予測値を計算するステップをを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記画素セットを選択する前記ステップは：
前記平面表現に基づく判定で、前記第１の隣接画素、前記第２の隣接画素及び第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さず且つ前記第１の隣接画素及び前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第１の隣接画素及び前記第２の隣接画素のうちの一方を含むように前記画素セットを選択するステップと；
前記第１の隣接画素及び前記第２の隣接画素のうち前記選択された画素と関連付けられるガイドビットを提供するステップとを含み、前記ブロックの前記圧縮表現は前記ガイドビットを含むことを特徴とする請求項８又は９に記載の方法。
【請求項１１】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さず且つ前記第１の隣接画素及び前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記画素に割り当てられ且つ前記圧縮画素ブロックに含まれるガイドビットに基づいて前記第１の隣接画素及び前記第２の隣接画素のうちの一方を含むように前記画素セットを選択するステップを含むことを特徴とする請求項７乃至１２のいずれか１項に記載の方法。
【請求項１２】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素いずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属さず且つ前記第１の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属する場合、前記第１の隣接画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１０又は１１に記載の方法。
【請求項１３】
前記画素セットを選択する前記ステップは、前記平面表現に基づいて判定されるように、前記第１の隣接画素、前記第２の隣接画素及び前記第３の隣接画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素及び前記第２の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素及び前記第３の画素のいずれかが前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第１の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属さない場合、並びに、前記第２の隣接画素が前記少なくとも１つの画素と同一のデプス値平面に属さない場合、前記開始デプス値又は前記再開デプス値と関連付けられる画素を含むように前記画素セットを選択するステップを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
各々がデプス値を含む複数の画素のブロックを圧縮するブロック圧縮システムであって：
前記ブロックにおける前記複数のデプス値のうち第１のデプス値平面に属する開始デプス値を選択する開始選択器と；
前記ブロックにおける前記複数のデプス値のうち第２のデプス値平面に属する再開デプス値を選択する再開選択器と；
前記複数の画素の少なくとも一部分に対して、前記第１のデプス値平面及び前記第２のデプス値平面のうち前記複数の画素の前記少なくとも一部分が属する平面を示す平面表現を生成する平面表現生成器と；
前記複数の画素の少なくとも一部分に対して、前記少なくとも１つの画素に関する前記ブロック内の第１の予測方向に位置する第１の隣接画素及び前記第１の予測方向に位置する第２の画素が、前記平面表現に基づき、前記少なくとも１つの画素と同じデプス値平面に属している場合、前記第１の隣接画素及び前記第２の画素を有するように画素セットを選択するセット選択器と；
前記選択された画素セットの少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供する予測提供器と；
前記少なくとも１つの画素の前記デプス値及び前記予測値に基づいて予測誤差を推定する誤差推定器と；
前記予測誤差の符号化表現を判定する表現判定器とを具備し、
前記ブロックの圧縮表現は前記開始デプス値の表現、前記再開値の表現及び前記予測誤差の前記符号化表現を含むことを特徴とするシステム。
【請求項１５】
前記再開選択器は：
前記ブロックにおける前記複数のデプス値のうち前記開始デプス値と最も異なるデプス値を識別する値識別器と；
前記複数の画素の少なくとも一部分に対して、画素のデプス値と前記開始デプス値との間の第１の差分、及び、前記画素の前記デプス値と前記識別されたデプス値との間の第２の差分を判定する差分計算機と；
前記判定した第１の差分及び前記判定した第２の差分に基づいて前記再開デプス値を選択する値選択器とを含むことを特徴とする請求項１４に記載のシステム。
【請求項１６】
前記平面表現生成器は：
画素のデプス値と前記開始デプス値との間の第１の差分を判定し、前記画素の前記デプス値と前記開始デプス値と最も異なる前記ブロックのデプス値との間の第２の差分を判定する差分判定器と；
前記第１の差分が前記第２の差分の絶対値より小さい場合に前記第１のデプス値平面を示す前記平面表現を生成し、前記第１の差分が前記第２の差分より小さくない場合に前記第２のデプス値平面を示す前記平面表現を生成する表現生成器とを含むことを特徴とする請求項１４又は１５に記載のシステム。
【請求項１７】
表現判定器は：
正の予測誤差を得るために前記予測誤差を変更する誤差変更器と；
Golomb-Rice符号器とを有し、当該Golomb-Rice符号器は、
ゼロ又は正の整数である場合に値ｋを探索する値探索器と；
ｈが事前定義済みの定数、ｗが事前定義済みの重みであるとしたとき、前記選択された画素セットが複数の画素を含む場合はｋに等しく、複数の画素を含まない場合はｗ×ｋ＋ｈに基づく数ｌを提供する数値提供器と；
商及び余りを形成するために前記正の予測誤差を２lで除算する除算器と；
前記商をアルファ符号化するアルファ符号器とを含み、前記予測誤差の前記符号化表現は前記余りの表現及び前記アルファ符号化された商を含み、前記ブロックの前記圧縮表現はｋの表現を含むことを特徴とする請求項１４乃至１６のいずれか１項に記載のシステム。
【請求項１８】
圧縮画素ブロックを伸張するブロック伸張システムであって：
前記圧縮画素ブロックに含まれる開始値表現に基づいて第１のデプス値平面に属する開始デプス値を提供する開始提供器と；
前記圧縮画素ブロックに含まれる再開値表現に基づいて第２のデプス値平面に属する再開デプス値を提供する再開提供器と；
前記ブロックの少なくとも１つの画素に対して、前記少なくとも１つの画素と関連付けられ且つ前記圧縮画素ブロックに含まれる符号化誤差表現に基づいて予測誤差を判定する誤差判定器と；
前記少なくとも１つの画素に対して、前記少なくとも１つの画素及び前記画素セットに関連づけられ前記１つの画素が前記第１、第２のデプス値平面のいずれに属しているかを示している前記平面表現に基づいて、前記少なくとも１つの画素に関する前記ブロック内の第１の予測方向に位置する第１の隣接画素及び前記第１の予測方向に位置する第２の画素が、前記少なくとも１つの画素と同じデプス値平面に属している場合、前記第１の隣接画素及び前記第２の画素を有するように画素セットを選択するセット選択器と；
前記選択された画素セットの前記少なくとも１つのデプス値に基づいて前記少なくとも１つの画素のデプス値の予測値を提供する予測提供器と；
前記予測誤差及び前記予測値に基づいて前記少なくとも１つの画素の前記デプス値の表現を計算する表現計算機と
を具備することを特徴とするシステム。
【請求項１９】
更に、前記複数の画素の少なくとも一部分に対して、前記圧縮画素ブロックから平面表現を提供する平面提供器を具備することを特徴とする請求項１８に記載の記載のシステム。
【国際調査報告】
2011512067.tif 000059
2011512067.tif 000060
2011512067.tif 000061