(57)【要約】  画像符号化方式において、入力画像は、複数の画像要素（６１０）、例えば、画素又はテクセルから構成されるいくつかの画像ブロック（６００）に分解される。次に、画像ブロック（６００）は、符号化ブロック表現（７００）に符号化される。そのようなブロック表現（７００）は、色コードワード（７１０）、輝度コードワード（７２０）、及び輝度表現のシーケンス（７３０）を含む。色コードワード（７１０）は、ブロック（６００）の画像要素（６１０）の色の表現である。輝度コードワード（７２０）は、ブロック（６００）中の画像要素（６１０）の輝度を変更するための複数の輝度変更子から成るセットの表現である。表現シーケンス（７３０）は、ブロック（６００）中の画像要素（６１０）ごとに輝度表現を含み、１つの表現は、輝度変更子セットの中の輝度変更子のうちの１つを識別する。復号化中、色コードワード（７１０）、輝度コードワード（７２０）、及び輝度表現（７３０）は、ブロック（６００）中の画像要素（６１０）の復号化表現を生成するために使用される。
2007515124.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像要素（６１０）から構成される画像ブロック（６００）を圧縮する方法であって、
前記画像ブロック（６００）中の前記画像要素（６１０）の色の表現である色コードワード（７１０）を判定する工程と、
前記画像ブロック（６００）中の前記画像要素（６１０）の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード（７２０）を提供する工程と、
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度変更子セットからの１つの輝度変更子と関連する輝度表現（７３０）を選択する工程と
を備えることを特徴とする方法。
【請求項２】
画像を符号化する方法であって、
前記画像を、各々が複数の画像要素（６１０）を含む複数の画像ブロック（６００）に分割する分割工程と、
少なくとも１つの画像ブロック（６００）に関して、
前記画像ブロック（６００）中の前記画像要素（６１０）の色の表現である色コードワード（７１０）を判定し、
前記画像ブロック（６００）中の前記画像要素（６１０）の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード（７２０）を提供し、
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度変更子セットからの１つの輝度変更子と関連する輝度表現（７３０）を選択することにより、符号化表現（７００）を判定する工程と
を備えることを特徴とする方法。
【請求項３】
前記符号化表現（７００）を判定する前記工程は、画像ブロック（６００）ごとに実行されることを特徴とする請求項２に記載の方法。
【請求項４】
前記色コードワード（７１０）を判定する前記工程は、
前記画像ブロック（６００）中の前記画像要素（６１０）の平均色を判定する工程と、
前記平均色を量子化する工程と
を備えることを特徴とする請求項１乃至３の何れか１項に記載の方法。
【請求項５】
前記平均色を量子化する前記工程は、
前記平均色の近傍量子化色ごとに、誤差表現を判定する工程と、
最小の誤差表現と関連する前記近傍量子化色を前記量子化平均色として選択する工程と
を備えることを特徴とする請求項４に記載の方法。
【請求項６】
前記誤差表現は、重み付き誤差表現であることを特徴とする請求項５に記載の方法。
【請求項７】
前記誤差表現を判定する前記工程は、
近傍量子化色ごとに、前記画像ブロック（６００）を圧縮する工程と、
近傍量子化色ごとに、前記画像ブロック（６００）と前記画像ブロック（６００）の前記圧縮表現との比較に基づいて、前記誤差表現を判定する工程と
を備えることを特徴とする請求項５又は６に記載の方法。
【請求項８】
前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項１乃至７の何れか１項に記載の方法。
【請求項９】
前記輝度コードワード（７２０）を提供する工程では、複数の輝度変更子セットを含む輝度テーブル（５００）から前記輝度変更子セットを選択し、それにより、前記輝度コードワード（７２０）は、前記テーブル（５００）からの前記選択された輝度変更子セットの識別を可能にすることを特徴とする請求項１乃至８の何れか１項に記載の方法。
【請求項１０】
前記輝度変更子セットを選択する前記工程、及び前記輝度表現（７３０）を選択する前記工程は、
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度テーブル（５００）の輝度変更子セットからの１つの輝度変更子によって変更された平均色輝度と元の色値との差を判定する工程と、
前記判定された差に基づいて、誤差値を推定する工程と、
前記誤差値を最小にする輝度変更子セット及び輝度変更子を選択する工程と
を備えることを特徴とする請求項９に記載の方法。
【請求項１１】
前記誤差値は重み付き誤差値であり、所定の色成分の重みは、前記元の色及び前記平均色に対して等しいことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記色コードワード（７１０）を判定する前記工程、前記輝度変更子セットを選択する前記工程、及び前記輝度表現（７３０）を選択する前記工程は、
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度テーブル（５００）の輝度変更子セットからの１つの輝度変更子によって輝度変更された量子化色と元の色値との差を判定する工程と、
前記判定された差に基づいて、誤差値を推定する工程と、
前記誤差値を最小にする量子化色、輝度変更子セット、及び輝度変更子を選択する工程と
を備え、
それにより、前記色コードワード（７１０）は、前記選択された量子化色を含むことを特徴とする請求項９に記載の方法。
【請求項１３】
前記誤差値は、重み付き誤差値であり、所定の色成分の重みは、前記元の色及び前記量子化色に対して等しいことを特徴とする請求項１２に記載の方法。
【請求項１４】
ｍ＝３−ｎ、及びｎ＝０，１，２，３とするとき、前記画像ブロック（６００）は、２ｍ×２ｎ個の画像要素（６１０）を含むことを特徴とする請求項１乃至１３の何れか１項に記載の方法。
【請求項１５】
前記画像ブロック（６００）の圧縮表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現のシーケンス（７３０）は１６ビットを含むことを特徴とする請求項１に記載の方法。
【請求項１６】
前記画像ブロック（６００）の前記符号化表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現のシーケンス（７３０）は１６ビットを含むことを特徴とする請求項２に記載の方法。
【請求項１７】
複数の画像要素（６１０）から構成される画像ブロック（６００）の圧縮表現（７００）であり、色コードワード（７１０）、輝度コードワード（７２０）、及び輝度表現シーケンス（７３０）を含む圧縮表現（７００）を処理する方法であって、
前記輝度コードワード（７２０）に基づいて、複数の輝度変更子から成るセットを提供する工程と、
前期画像ブロック（６００）中の少なくとも１つの画像要素（６１０）に対して、
前記色コードワード（７１０）に基づいて、色表現を生成する工程と、
前記輝度表現シーケンス（７３０）に基づいて、前記輝度変更子セットから１つの輝度変更子を選択する工程と、
前記選択された輝度変更子に基づいて、前記少なくとも１つの画像要素（６１０）の輝度を変更する工程と
を備えることを特徴とする方法。
【請求項１８】
複数の画像要素（６１０）から構成される画像ブロック（６００）の符号化表現（７００）であり、色コードワード（７１０）、輝度コードワード（７２０）、及び輝度表現シーケンス（７３０）を含む符号化表現（７００）を複数含む符号化画像を復号化する方法であって、１つの画像ブロック（６００）の少なくとも１つの符号化表現（７００）に関して、
前記輝度コードワード（７２０）に基づいて、複数の輝度変更子から成るセットを提供する工程と、
前記画像ブロック（６００）中の少なくとも１つの画像要素（６１０）に対して、前記色コードワード（７１０）に基づいて、色表現を生成する工程と、
前記画像ブロック（６００）中の少なくとも１つの画像要素（６１０）に対して、前記輝度表現シーケンス（７３０）に基づいて、前記輝度変更子セットから１つの輝度変更子を選択する工程と、
前記画像ブロック（６００）中の少なくとも１つの画像要素（６１０）に対して、前記選択された輝度変更子に基づいて、前記少なくとも１つの画像要素（６１０）の輝度を変更する工程と、
複数の着色輝度変更済画像要素（６１０）を合成することにより、前記符号化画像の復号化表現を生成する工程と
を備えることを特徴とする方法。
【請求項１９】
前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項１７又は１８に記載の方法。
【請求項２０】
前記輝度変更子セットを提供する前記工程は、前記輝度コードワード（７２０）に基づいて、複数の輝度変更子セットを含む輝度テーブル（５００）から前記輝度変更子セットを選択することを特徴とする請求項１７乃至１９の何れか１項に記載の方法。
【請求項２１】
前記テーブル（５００）は、輝度変更子セットの第１のサブセットを含み、
前記第１のサブセットの中の輝度変更子セットの輝度変更子に基づいて、輝度変更子セットの輝度変更子を第２のサブセットとして判定する工程を更に備えることを特徴とする請求項２０に記載の方法。
【請求項２２】
前記輝度表現シーケンス（７３０）は、前記画像ブロック（６００）の前記表現（７００）の中の画像要素（６１０）ごとに、前記画像要素（６１０）に対して、前記輝度変更子セットの前記複数の輝度変更子のうちのどれを使用すべきかの識別を可能にする輝度インデックスを含むシーケンスであることを特徴とする請求項１７乃至２１の何れか１項に記載の方法。
【請求項２３】
前記輝度変更工程では、前記色表現の全ての色成分値に、選択された輝度変更子値を加算することを特徴とする請求項１７乃至２２の何れか１項に記載の方法。
【請求項２４】
前記輝度変更工程では、選択された輝度変更子値に要素特定重みを乗算した値を、前記色表現の全ての色成分値に加算することを特徴とする請求項１７乃至２２の何れか１項に記載の方法。
【請求項２５】
前記輝度変更子値と前記色成分値の和を、最小閾値と最大閾値との間にクランプする工程を更に備えることを特徴とする請求項２３又は２４に記載の方法。
【請求項２６】
ｍ＝３−ｎ、及びｎ＝０，１，２，３とするとき、前記画像ブロック（６００）は、２ｍ×２ｎ個の画像要素（６１０）を含むことを特徴とする請求項１７乃至２５の何れか１項に記載の方法。
【請求項２７】
前記画像ブロック（６００）の前記表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現シーケンス（７３０）は１６ビットを含むことを特徴とする請求項１７乃至２６の何れか１項に記載の方法。
【請求項２８】
複数の画像要素（６１０）から構成される画像ブロック（６００）の信号表現（７００）であって、
前記画像ブロック（６００）中の前記画像要素（６１０）の色の表現である色コードワード（７１０）と、
前記画像ブロック（６００）中の前記画像要素（６１０）の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード（７２０）と、
前記画像ブロック（６００）中の１つの画像要素（６１０）に対して、前記輝度変更子セットからの１つの輝度変更子と各々が関連する複数の輝度表現から成るシーケンス（７３０）と
を備えることを特徴とする信号表現。
【請求項２９】
ｍ＝３−ｎ、及びｎ＝０，１，２，３とするとき、前記画像ブロック（６００）は、２ｍ×２ｎ個の画像要素（６１０）を含むことを特徴とする請求項２８に記載の信号表現。
【請求項３０】
前記信号表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現シーケンス（７３０）は１６ビットを含むことを特徴とする請求項２８に記載の信号表現。
【請求項３１】
複数の画像要素（６１０）から構成される画像ブロック（６００）を圧縮するシステム（３００）であって、
前記画像ブロック（６００）中の前記画像要素（６１０）の色の表現である色コードワード（７１０）を判定する色量子化器（３１０）と、
前記画像ブロック（６００）中の前記画像要素（６１０）の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード（７２０）を提供する輝度量子化器（３２０）と、
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度変更子セットからの輝度変更子と関連する輝度表現（７３０）を選択する輝度表現選択器（３３０）と
を備えることを特徴とするシステム。
【請求項３２】
画像符号化システム（２１０）であって、
各々が複数の画像要素（６１０）から構成される複数の画像ブロック（６００）に画像を分解する画像分割器（２１５）と、
前記画像ブロック（６００）の符号化表現（７００）を生成するために、画像ブロック（６００）を符号化するブロック符号器（３００）とを備え、
前記ブロック符号器（３００）は、
前記画像ブロック（６００）中の前記画像要素（６１０）の色の表現である色コードワード（７１０）を判定する色量子化器（３１０）と、
前記画像ブロック（６００）中の前記画像要素（６１０）の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード（７２０）を提供する輝度量子化器（３２０）と、
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度変更子セットからの輝度変更子と関連する輝度表現（７３０）を選択する輝度表現選択器（３３０）と
を備えることを特徴とする画像符号化システム（２１０）。
【請求項３３】
前記色量子化器（３１０）は、
前記画像ブロック中の前記画像要素の平均色を判定する手段（３１２）と、
前記平均色を量子化する手段（３１４）と
を備えることを特徴とする請求項３１又は３２に記載のシステム。
【請求項３４】
前記量子化する手段（３１４）は、前記平均色の近傍量子化色を提供するように構成されており、
前記システム（２１０；３００）は、前記平均色の近傍量子化色ごとに、誤差表現を判定し、最小の誤差表現と関連する近傍量子化色を前記量子化平均色として選択する誤差推定器（３４０）を更に備えることを特徴とする請求項３３に記載のシステム。
【請求項３５】
前記誤差表現は、重み付き誤差表現である請求項３４に記載のシステム。
【請求項３６】
前記ブロック符号器（３００）は、近傍量子化色ごとに、前記画像ブロック（６００）を圧縮するように構成されており、
前記誤差推定器（３４０）は、近傍量子化色ごとに、前記画像ブロック（６００）と前記画像ブロック（６００）の前記圧縮表現との比較に基づいて、前記誤差表現を判定するように構成されていることを特徴とする請求項３４又は３５に記載のシステム。
【請求項３７】
前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項３１乃至３６の何れか１項に記載のシステム。
【請求項３８】
複数の輝度変更子セットを含む輝度テーブル（５００）を更に備え、
前記輝度量子化器（３２０）は、前記輝度テーブル（５００）から前記輝度変更子セットを選択する選択器（３２２）を備え、
それにより、前記輝度コードワード（７２０）は、前記テーブル（５００）からの前記選択された輝度変更子セットの識別を可能にすることを特徴とする請求項３１又は３２に記載のシステム。
【請求項３９】
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度テーブル（５００）の１つの輝度変更子セットからの１つの輝度変更子によって輝度変更された平均色と元の色値との差を判定する手段（３４０）と、
前記判定された差に基づいて、誤差値を推定する誤差推定器（３４０）とを更に備え、
前記変更子セット選択器（３２２）及び前記表現選択器（３３０）は、前記誤差値を最小にする輝度変更子セット及び輝度変更子を選択するように構成されていることを特徴とする請求項３８に記載のシステム。
【請求項４０】
前記誤差推定器（３４０）は、重み付き誤差値を推定し、所定の色成分の重みは、前記元の色及び前記平均色に対して等しいことを特徴とする請求項３９に記載のシステム。
【請求項４１】
前記画像ブロック（６００）中の画像要素（６１０）ごとに、前記輝度テーブル（５００）の１つの輝度変更子セットからの１つの輝度変更子によって輝度変更された量子化色と元の色値との差を判定する手段（３４０）と、
前記判定された差に基づいて、誤差値を推定する誤差推定器（３４０）と
を更に備え、
前記色量子化器（３１０）、前記変更子セット選択器（３２２）、及び前記表現選択器（３３０）は、前記誤差値を最小にする量子化色、輝度変更子セット、及び輝度変更子を選択するように構成されており、
それにより、前記色コードワード（７１０）は、前記選択された量子化色を含むことを特徴とする請求項３８に記載のシステム。
【請求項４２】
前記誤差推定器（３４０）は、重み付き誤差値を推定し、所定の色成分の重みは、前記元の色及び前記量子化色に対して等しいことを特徴とする請求項４１に記載のシステム。
【請求項４３】
ｍ＝３−ｎ、及びｎ＝０，１，２，３とするとき、前記画像ブロック（６００）は、２ｍ×２ｎ個の画像要素（６１０）を含むことを特徴とする請求項３１から４２の何れか１項に記載のシステム。
【請求項４４】
前記画像ブロック（６００）の圧縮表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現のシーケンス（７３０）は１６ビットを含むことを特徴とする請求項３１に記載のシステム。
【請求項４５】
前記画像ブロック（６００）の前記符号化表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現のシーケンス（７３０）は１６ビットを含むことを特徴とする請求項３２に記載のシステム。
【請求項４６】
複数の画像要素（６１０）から構成される画像ブロック（６００）の圧縮表現（７００）であり、色コードワード（７１０）、輝度コードワード（７２０）、及び輝度表現シーケンス（７３０）を含む圧縮表現（７００）を処理するシステム（４００）であって、
前記輝度コードワード（７２０）に基づいて、複数の輝度変更子から成るセットを提供する手段（４１０）と、
前記色コードワード（７１０）に基づいて、前記画像ブロック（６００）中の少なくとも１つの画像要素（６１０）に対して色表現を生成する色発生器（４２０）と、
前記少なくとも１つの画像要素（６１０）に対して、前記輝度表現シーケンス（７３０）に基づいて、前記識別された輝度変更子セットから１つの輝度変更子を選択する選択器（４３０）と、
前記選択された輝度変更子に基づいて、前記少なくとも１つの画像要素（６１０）の輝度を変更する輝度変更器（４４０）と
を備えることを特徴とするシステム。
【請求項４７】
複数の画像要素（６１０）から構成される画像ブロック（６００）の符号化表現（７００）であり、色コードワード（７１０）、輝度コードワード（７２０）、及び輝度表現シーケンス（７３０）を含む符号化表現（７００）を複数含む符号化画像を復号化するシステム（２２０）であって、
画像ブロック（６００）に対して、前記輝度コードワード（７２０）に基づいて、複数の輝度変更子から成るセットを提供する手段（４１０）と、
前記色コードワード（７１０）に基づいて、前記画像ブロック（６００）の少なくとも１つの画像要素（６１０）に対して色表現を生成する色発生器（４２０）と、
前記少なくとも１つの画像要素（６１０）に対して、前記輝度表現シーケンス（７３０）に基づいて、前記識別された輝度変更子セットから１つの輝度変更子を選択する選択器（４３０）と、
前記選択された輝度変更子に基づいて、前記少なくとも１つの画像要素（６１０）の輝度を変更する輝度変更器（４４０）と、
複数の着色輝度変更済画像要素（６１０）を合成し、前記符号化画像の復号化表現を生成する手段（２２５）と
を備えることを特徴とするシステム。
【請求項４８】
複数の輝度変更子セットを含む輝度テーブル（５００）を更に備え、
前記輝度変更子セットを提供する前記手段は、前記輝度コードワード（７２０）に基づいて、前記輝度テーブル（５００）から前記輝度変更子セットを選択するように構成されていることを特徴とする請求項４６又は４７に記載のシステム。
【請求項４９】
前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項４６乃至４８の何れか１項に記載のシステム。
【請求項５０】
前記輝度表現シーケンス（７３０）は、前記画像ブロック（６００）の前記表現（７００）の中の画像要素（６１０）ごとに、前記画像要素（６１０）に対して、前記輝度変更子セットの前記複数の輝度変更子のうちのどれを使用すべきかの識別を可能にする輝度インデックスを含むシーケンスであることを特徴とする請求項４６乃至４９の何れか１項に記載のシステム。
【請求項５１】
前記輝度変更器（４４０）は、前記色表現の全ての色成分値に、選択された輝度変更子値を加算するように構成されていることを特徴とする請求項４６乃至５０の何れか１項に記載のシステム。
【請求項５２】
前記輝度変更器（４４０）は、選択された輝度変更子値に成分特定重みを乗算した値を、前記色表現の全ての色成分値に加算するように構成されていることを特徴とする請求項４６乃至５０の何れか１項に記載のシステム。
【請求項５３】
前記輝度変更器（４４０）は、前記輝度変更子値及び前記色表現値の和を、最小閾値と最大閾値との間にクランプするように構成されていることを特徴とする請求項５１又は５２に記載のシステム。
【請求項５４】
ｍ＝３−ｎ、及びｎ＝０，１，２，３とするとき、前記画像ブロック（６００）は、２ｍ×２ｎ個の画像要素（６１０）を含むことを特徴とする請求項４６乃至５３の何れか１項に記載のシステム。
【請求項５５】
前記画像ブロック（６００）の前記表現（７００）は３２ビットシーケンスであり、前記色コードワード（７１０）は１２ビットを含み、前記輝度コードワード（７２０）は４ビットを含み、前記輝度表現シーケンス（７３０）は１６ビットを含むことを特徴とする請求項４６乃至５３の何れか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、画像処理に関し、特に、画像を符号化及び復号化する方法及びシステムに関する。
【背景技術】
【０００２】
近年、データ処理システム及びコンピュータ、特に、移動端末などのユーザ端末において、画像及び図形を提示し、レンダリングすることが極めて多くなってきている。例えば、３次元（３Ｄ）グラフィックス及び３Ｄ画像は、そのような端末において、ゲーム、３Ｄマップ、及びメッセージ通信、スクリーンセーバ、及びマンマシンインタフェースを含めて、多数の興味深いアプリケーションを有する。
【０００３】
３Ｄグラフィックスレンダリング処理は、通常、３つの部分段階を含む。簡単に言うと、第１の段階であるアプリケーション段階は、いくつかの三角形を作成する。それらの三角形の角は、第２の段階であるジオメトリ段階で、変換され、射影され、照明される。第３の段階であるラスター化段階においては、多くの場合にテクスチャと呼ばれる画像を三角形の上に「のり付け」することができる。それにより、レンダリングされる画像の現実感が増す。第３の段階は、ｚバッファを使用してソーティングを更に実行する。
【０００４】
しかし、画像及びテクスチャ、特に３Ｄ画像及び３Ｄグラフィックスのレンダリングは、グラフィックシステムに要求されるメモリ帯域幅及び処理能力に関して、計算の費用がかかるタスクである。例えば、テクスチャは、高速オンチップメモリに格納されなければならないために、高価なメモリを使用する必要があり、１つの画素を描画するために、１つのテクスチャを数回アクセスすることもあるので、メモリ帯域幅に関しても経済的負担が大きい。
【０００５】
帯域幅及び処理能力に課される要求を軽減するために、通常、画像（テクスチャ）符号化方法又はシステムが採用される。そのような符号化システムにより、レンダリング中に、高価なオンチップメモリをより効率よく使用でき、メモリ帯域幅が縮小される。従って、消費電力が減少し且つ／又はレンダリング速度が増すという結果がもたらされる。帯域幅及び処理能力に課される要求がそのように軽減されることは、メモリの量が少なく、メモリ帯域幅が狭く、電力が制限される（バッテリにより給電されるため）移動ユニット及び移動電話のようなシンクライアントの場合に特に重要である。
【０００６】
非特許文献１は、画像符号化のためのブロック切捨て符号化（ＢＴＣ）と呼ばれる単純な方式を説明する。彼らの方式は、一度に４画素×４画素の１ブロックを考慮することにより、グレイスケール画像を符号化する。そのようなブロックごとに、２つの８ビットグレイスケール値が生成され、ブロック中の各画素は、それらのグレイスケールの一方にインデックス化するために１つのビットを使用する。その結果、画素ごとに２ビット（２ｂｐｐ）の圧縮率が得られる。しかし、ＢＴＣには、特にエッジの周囲の領域及びグレイレベルの勾配を含む低コントラスト領域において、アーティファクトが発生するという問題がある。更に、ＢＴＣにより処理されるグレイスケール画像のエッジは、凸凹になる傾向がある。
【０００７】
カラーセル圧縮（ＣＣＣ）と呼ばれるＢＴＣの単純拡張方式は、非特許文献２により提示された。画像ブロックごとに２つの８ビットグレイスケール値を使用する代わりに、カラーパレットに対するインデックスとして、２つの８ビット値が採用される。このパレットは、Ｒ成分、Ｇ成分及びＢ成分の各々に対して８ビットにより表現される２５６色を含む。そこで、８ビットインデックスは、パレットの中の１つの（２４ビット）色を指示する。これにより、２ｂｐｐで画像を圧縮できる。しかし、これには、パレットにおけるメモリルックアップが必要である。加えて、パレットのサイズが制限される。ＣＣＣ方式も、大きな色の「ジャギー」を発生させ、１つの画像ブロックの中に３つ以上の色が存在する場合の符号化は不完全になる。
【０００８】
特許文献１の中で、Iourcha他は、ＣＣＣの拡張であると考えることができるＳ３ＴＣ（S3 Texture Compression）又はＤＸＴＣ（DirectX Texture Compression）と呼ばれるテクスチャ圧縮方式を開示する。画像は、４画素×４画素の複数の画像ブロックに分解される。そのような各画像ブロックは、６４ビットのビットシーケンスに符号化され、その結果、圧縮率は４ｂｐｐとなる。６４ビットシーケンスは、２つの基本色又は色コードワード（それぞれ１６ビット）と、画像ブロック中の画素ごとに１つのインデックスを含む２ビットインデックスの３２ビットシーケンスとを含む。復号化中、４色のカラーパレットが生成される。パレットの最初の２つのＲＧＢ（赤、緑及び青）色は、２つの基本色（コードワード）に対応する。次に、ＲＧＢ空間の基本色の間に位置する２つの追加色が、それらの基本色から補間される。そこで、各２ビットインデックスは、画素ごとに、その画素に対して使用されるべきパレットの４つの色のうちの１つを識別する。
【０００９】
Ｓ３ＴＣ方式は、コンピュータ端末に対してかなり適切に機能するが、移動ユニット及び他のシンクライアントには十分に適応しない。通常、そのような移動ユニットは、せいぜい１６ビット又は３２ビットのメモリバスを有するにすぎない。従って、移動ユニットにおいてＳ３ＴＣが実現される場合、１つの画像ブロックの６４ビット圧縮バージョンを読み出すために、少なくとも２回、最高４回のメモリアクセスが要求される。更に、カラーパレットの２つの追加色の補間中に、１／３及び２／３を乗算する演算が実行されるが、これはハードウェアにおいては理想的ではない。また、Ｓ３ＴＣを使用する圧縮は、少なくとも移動端末では相対的に長い時間を必要とする。
【００１０】
非特許文献３は、特に移動電話をターゲットとするＰＯＯＭＡと呼ばれる異なるＳ３ＴＣを開発した。ＰＯＯＭＡの場合、３画素×２画素の画像ブロックが３２ビットに符号化されるので、圧縮率は５．３３ｂｐｐである。画像ブロックの符号化３２ビット表現は、通常は最良でも３２ビットである移動電話のメモリバスに適合する。従って、Ｓ３ＴＣの２アクセスと比較して、ただ１回のメモリアクセスを使用して１つの画素をレンダリングできる。ＰＯＯＭＡは、２つの基本色を使用するが、基本色の間で補間される追加色は１つのみであるので、カラーパレットは３色である。
【００１１】
ＰＯＯＭＡの大きな欠点は、３×２画素のブロックサイズである。その結果、特定の画素又はテクセル（テクスチャ要素）に対するブロックアドレスの計算の際に、３による除算が必要になる。これは、ハードウェアの設計上、理想的ではない。更に、グラフィックスにおけるテクスチャ（画像）の幅及び高さは、通常、２の累乗である。従って、ブロック幅が３であるのは不都合である。Ｓ３ＴＣに関しては、特に、移動端末で実現された場合、ＰＯＯＭＡを使用する符号化は、相対的に長い時間を要する。
【００１２】
非特許文献４は、移動電話のＭＢＸグラフィックスハードウェアプラットフォームにおいて使用される画像符号化方式を開示する。この方式は、２つの低解像度画像を使用し、一方の画像は、通常、元の画像の低域フィルタ処理バージョンである。復号化中、それら２つの画像の双線形拡大（アップスケーリング）が作成される。各画素は、それら２つのアップスケール画像の間のブレンド係数を更に格納する。各画像ブロックを符号化するために６４ビットが使用され、２ｂｐｐ及び４ｂｐｐの圧縮率が説明される。隣接する画像ブロックからの情報が必要とされるため、復号化は複雑になる。
【非特許文献１】E. J. Delp and O. R. Mitchell, "Image compression using block truncation coding", IEEE Transactions on Communications, Vol. COM-2、No. 9、pp.1335-1342, 1979
【非特許文献２】G. Campbell, T. A. DeFanti, J. Frederiksen, S. A. Joyce, L. A. Leske, J. A. Lindberg and D. J. Sandin, "Two bit／pixel full color encoding", SIGGRAPH ’86 Conference Proceedings、Vol.20, No. 4, pp.215-223, August, 1986
【特許文献１】米国特許第５，９５６，４３１号公報
【非特許文献３】T. Akenine-Moller and J. Strom, "Graphics for the masses: A hardware architecture for mobile phones", ACM Transactions on Graphics, Vol. 22, No. 3, Proceedings of ACM SIGGRAPH 2003, pp.801-808, July, 2003
【非特許文献４】S. Fenney "Texture compression using low-frequency signal modulation", Graphics Hardware 2003, pp.84-91, July 2003
【非特許文献５】Y. Linde, A. Buzo and R. Gray, "An algorithm for vector quantizer design", IEEE Transactions on Communications, Vol. 28, pp.84-94, January, 1980
【発明の開示】
【課題を解決するための手段】
【００１３】
本発明は、従来の構成のこれらの欠点及び他の欠点を克服する。
【００１４】
本発明の一般的目的は、効率のよい画像処理を提供することである。
【００１５】
本発明の別の目的は、効率のよい画像符号化及び画像復号化を提供することである。
【００１６】
本発明の更に別の目的は、メモリ容量及びメモリ帯域幅が少ないシンクライアントにおいて使用するのに適する画像符号化及び画像復号化を提供することである。
【００１７】
本発明の別の目的は、３次元（３Ｄ）グラフィックス及び画像に適合する画像符号化及び画像復号化を提供することである。
【００１８】
これらの目的及び他の目的は、添付の特許請求の範囲により定義されるような発明により達成される。
【００１９】
簡単に言えば、本発明は、画像を符号化（圧縮）し、符号化（圧縮）画像を復号化（伸張）するという形態をとる画像処理を含む。
【００２０】
本発明によれば、符号化されるべき画像は、複数の画像要素（画素又はテクスチャ要素、テクセル）から構成される複数の画像ブロックに分解される。１つの画像ブロックは、８つの画像要素を含み、ｍ＝３−ｎ、及びｎ＝０，１，２，３とするとき、２ｍ×２ｎ画像要素のサイズを有するのが好ましい。ブロック中の各画像要素は、１つの色、例えば、１２ビットＲＧＢ（赤、緑、青）色により特徴付けられる。次に、画像ブロックは符号化される。
【００２１】
この非可逆ブロック符号化において、画像ブロックに対して色コードワードが判定される。色コードワードは、画像ブロックの画像要素の色の表現である。好ましい表現は、ブロック中の画像要素の色の平均値であり、これが１２ビット（ＲＧＢ色の３つの色成分の各々に対して４ビット）に量子化される。従って、１つの画像ブロックに対して、すなわち、画像ブロックの全ての画像要素に対して全く同一の色コードワード（すなわち、色表現）が生成される。その後、画像ブロックに対して輝度コードワードが提供される。この輝度コードワードは、（復号化中に）画像ブロック中の画像要素の輝度を変更又は変調するために使用される複数の輝度変更子から成るセットの表現である。輝度コードワードが提供された後、画像ブロック中の画像要素の輝度表現が選択される。そのような各輝度表現は、輝度変更子セットからの１つの輝度変更子と関連する。言い換えれば、輝度表現により、ブロックの特定の１つの画像要素に対してセットのどの輝度変更子を使用すべきかを識別できる。
【００２２】
その結果得られる符号化画像ブロックは、好ましくは１２ビットの色コードワードと、好ましくは４ビットの輝度コードワードと、好ましくは８×２＝１６ビットの輝度表現のシーケンスとを含む。従って、１つの符号化画像ブロックのサイズは、わずか３２ビットであり、画素（画像要素）ごとに４ビットの圧縮率が得られる。この３２ビットという小さなサイズは、通常１６ビット又は３２ビットのメモリバスを有する移動ユニット及び移動電話などのシンクライアントに十分に適応する。その結果、メモリの記憶場所から符号化画像ブロックを読み出すために必要とされるメモリアクセスの回数は、わずか１回、最悪でも２回である。
【００２３】
本発明の好ましい一実施形態においては、輝度コードワードは、輝度変更子セットの識別を可能にする輝度インデックスである。このインデックスは、いくつかの異なる輝度変更子セットを含むテーブル又はコードブックの中の１つのセットを識別又は指示できるであろう。各セットは、４つの（数学的）相補変更子値を含むのが好ましい。そのような場合、テーブルに格納される変更子セットは、それぞれ２つの異なる輝度変更子値を含むだけでよく、それらの値からセットの他の２つの（相補）値を計算できる。加えて、輝度テーブルは、徐々に変化する表面の表現を可能にするのに適する小さな輝度変更子値を含むセットと、鮮鋭なエッジの表現を可能にするのに適する大きな輝度変更子値を含むセットの双方を含むのが好ましい。
【００２４】
復号化中、復号化されるべき符号化画像ブロックは、例えば、メモリの記憶場所から識別され、取り出される。正しい符号化画像ブロックが識別されると、輝度変更子セットが提供される。この変更子セットは、符号化画像ブロック中の輝度コードワードに基づいて提供される。このセットの提供は、輝度コードワードによって、複数の変更子セットを含む輝度テーブルから１つの輝度変更子セットを識別することにより実行されるのが好ましい。
【００２５】
その後、画像ブロックの画像要素のうちの少なくとも１つに対して、色表現が生成される。この色生成は、符号化ブロック表現の中の色コードワードに基づいて実行される。次に、復号化されるべき画像要素に対して使用される輝度変更子が選択される。変更子値は、その画像要素と関連し且つ符号化画像ブロックの表現シーケンスの中で見出される輝度表現に基づいて、提供された変更子セットから選択される。正しい輝度変更子値が選択された後、画像要素の輝度は、この値によって変更される。
【００２６】
輝度変更子の選択及び輝度の変更は、正しい符号化画像ブロックにおいて復号化されるべき全ての画像要素に対して実行されるのが好ましい。次に、復号化されるべき画像要素を含む全ての画像ブロックに対して、ブロック復号化が繰り返されるのが好ましい。その後、復号化された画像要素及び画像ブロックに基づいて、元の画像又はその一部の復号化表現を生成できる。
【００２７】
色表現は、色コードワードの３つの４ビット色成分を３つの８ビット成分に拡張することにより生成されるのが好ましい。その結果得られた２４ビット色は、復号化される画像ブロックの画像要素に割り当てられる。画像要素の輝度は、各色成分に輝度変更子を加算又は乗算することにより変更されるのが好ましい。あるいは、各色成分は輝度変更子によって変調される。その後、得られた輝度変更済色成分は、最小閾値と最大閾値との間にクランプされる。
【００２８】
本発明の画像符号化及び画像復号化は、１Ｄ画像、２Ｄ画像、３Ｄ「合成」画像、写真、テキスト、ゲーム、３Ｄマップ、３Ｄシーン、３Ｄメッセージ、例えば、動画メッセージ、スクリーンセーバ、マンマシンインタフェース（ＭＭＩ）などを含むいくつかの異なる種類の画像に適用可能である。
【００２９】
符号化画像ブロックのサイズが小さい（３２ビット）ため、本発明は、メモリ容量及びメモリ帯域幅が限定されるシンクライアントに適する。更に、符号化の速度が速いので、クロック周波数の低い端末でも符号化を実行できる。また、例えば、若干の規格コンポーネントを使用するハードウェアなどでも、復号化を極めて簡単に実現できる。
【００３０】
本発明は、次のような利点を提供する。
【００３１】
−  クロミナンス成分よりルミナンス成分のほうがよく保存されるので、人間の視覚系統に整合させるのに適する。
【００３２】
−  種々の画像の種類に対して、高画質（ピーク信号／雑音比）を示す。
【００３３】
−  復号化のハードウェア実現が極めて簡単である。
【００３４】
−  符号化が非常に速いため、クロック周波数の低い端末でも実現が可能である。
【００３５】
−  コンピュータにおいて、実現可能な速度で徹底した符号化が可能である。
【００３６】
−  符号化画像データは、メモリ容量及びメモリ帯域幅が限定されるシンクライアントに適するサイズを有する。
【００３７】
以下の本発明の実施形態の説明を読むことにより、本発明により提供される他の利点が理解されるであろう。
【００３８】
本発明は、その上記以外の目的及び利点を含めて、添付の図面と共に以下の説明を参照することにより最もよく理解されるであろう。
【発明を実施するための最良の形態】
【００３９】
図中、同一の図中符号は、対応する要素又は類似する要素に対して使用される。
【００４０】
本発明は、画像処理及び図形処理に関し、特に、画像を符号化又は圧縮すること及び符号化（圧縮）画像を復号化又は伸張することに関する。
【００４１】
一般に、本発明によれば、画像符号化中、画像は複数の画像ブロックに分解又は分割される。そのような各画像ブロックは、特に、１つの色を有する複数の画像要素から構成される。次に、画像の符号化表現を生成するために、画像ブロックは符号化される。
【００４２】
この後、符号化画像プリミティブ又は符号化図形プリミティブをレンダリングする場合、例えば、画面上に表示する場合に符号化画像ブロックの関連する画像要素は識別され、復号化される。次に、それらの復号化画像要素は、元の画像プリミティブ又は図形プリミティブの復号化表現を生成するために使用される。
【００４３】
本発明は、ゲーム、３Ｄマップ、３Ｄシーン、３Ｄメッセージ、例えば、動画メッセージ、スクリーンセーバ、マンマシンインタフェース（ＭＭＩ）などの３次元（３Ｄ）グラフィックスと共に使用するのに適するが、それらに限定されない。従って、本発明は、１次元（１Ｄ）画像又は２次元（２Ｄ）画像などの他の種類の画像又は図形を符号化するために採用されることも可能である。
【００４４】
３Ｄ図形処理においては、通常、いくつかの三角形が作成され、それらの三角形の角の対応する画面座標が判定される。各三角形の上に、画像（又は画像の一部）、すなわち、いわゆるテクスチャがマッピング（「のり付け」）される。しかし、テクスチャがメモリから取り出される場合、テクスチャの管理は、テクスチャの格納に利用されるメモリに関しても、メモリアクセス中のメモリ帯域幅に関しても、グラフィックシステムにとって大きな経済的負担である。これは、メモリ容量及びメモリ帯域幅が限定される移動ユニット及び移動電話などのシンクライアントに関して特に問題である。そのため、多くの場合に、テクスチャ又は画像符号化方式が採用される。そのような方式においては、通常、テクスチャは、複数のテクセルから構成される複数の画像ブロックに分解又は分割される。次に、画像ブロックは符号化され、メモリに格納される。尚、符号化画像ブロック（画像ブロックの符号化バージョン）のサイズは、対応する画像ブロックの未符号化バージョンのサイズより小さい。
【００４５】
本発明において、「画像要素」という表現は、画像ブロック又は画像ブロックの符号化表現の中の１つの要素を表す。この画像ブロックは、画像又はテクスチャの一部に対応する。従って、本発明によれば、１つの画像要素は、（１Ｄ、２Ｄ又は３Ｄ）テクスチャの１つのテクセル（テクスチャ要素）であるか又は（１Ｄ、２Ｄ又は３Ｄ）画像の１つの画素であることが可能である。一般に、画像要素は、色値などのいくつかの画像要素特性により特徴付けられる。更に、以下の説明中、「画像」という用語は、写真、ゲーム型テクスチャ、テキスト、図面などを含めて（それらに限定されない）、本発明によって符号化及び復号化することが可能である１Ｄ、２Ｄ又は３Ｄ画像、あるいはテクスチャを示すために使用される。
【００４６】
図１は、本発明に従って画像を符号化する（非可逆）方法を示す。第１のステップＳ１において、画像は複数の画像ブロックに分解又は分割される。そのような各画像ブロックは、複数の画像要素を含む。本発明の好ましい一実施形態では、１つの画像ブロックは、８つの画像要素（画素又はテクセル）を含み、ｍ＝３−ｎ及びｎ＝０，１，２，３とするとき、２ｍ×２ｎ画像要素のサイズを有する。更にはｎが１又は２であることが好ましい。図２及び図３は、本発明に従って８つの画像要素６１０を有する画像ブロック６００の２つの例を概略的に示す。図２においては、高さは２画像要素６１０であり、幅は４画像要素６１０であり、すなわち、ｍ＝１及びｎ＝２である。これに対し、図３の画像ブロック６００の場合には、ｍ＝２及びｎ＝１である。図１に戻ると、ステップＳ１において、画像ブロック全体は、（重複しない）画像ブロックに分解されるのが好ましい。しかし、アプリケーションによっては、画像の一部のみが符号化され、従って、その部分のみが画像ブロックに分解される。
【００４７】
続くステップＳ２〜Ｓ４は、画像ブロックの符号化又は圧縮を実行する。まず、ステップＳ２において、画像ブロックに対して色コードワードが判定される。この色コードワードは、画像ブロック中の画像要素の色の表現である。好ましい一実施形態では、色コードワードは、ブロックの画像要素の平均色の表現である。色は、ＲＧＢ（赤、緑、青）色、ＹＵＶ空間の色又はＹＣｒＣｂ空間の色、あるいは画像及び図形の処理及び管理において使用される他の占有色空間のいずれであってもよい。色コードワードは、画像と同一の色フォーマット（空間）にあるのが好ましい。しかし、場合によっては、画像を異なる色フォーマットに変換すること、すなわち、色コードワードが第１の色空間にあり、元の画像は第２の異なる色空間にあることが有用であろう。色コードワードは、１２ビット色表現シーケンスであるのが好ましい。例えば、ＲＧＢ色は、赤色成分に対して４ビット、緑色成分に対して４ビット、青色成分に対して４ビットを含むことが可能である。これに対応して、ＹＵＶ色コードワードは、３つの異なる成分に対して、６ビット、３ビット、３ビットをそれぞれ含むことができる。
【００４８】
尚、１つの画像ブロックに対して、すなわち、画像ブロックの全ての画像要素に対して、全く同一の色コードワード（すなわち、色表現）が生成される。
【００４９】
その後、ステップＳ３において、輝度コードワードが提供される。この輝度コードワードは、画像ブロック中の画像要素の輝度を変更するために使用される（復号化中に）複数の輝度変更子から成るセットの表現である。
【００５０】
本発明の好ましい一実施形態においては、輝度コードワードは、輝度変更子セットの識別を可能にする輝度インデックスである。このインデックスは、いくつかの異なる輝度変更子セットを含むテーブル又はコードブックの中のセットを識別又は指示できる。各セットは、２つ以上の輝度変更子値、好ましくは少なくとも４つの変更子値を含む。更に、１つのセットの変更子値は、数学的相補値であるのが好ましい。すなわち、各セットは対称であるのが好ましい。例えば、ａ及びｂを正の整数とし、ａ＞ｂであるとき、考えられる輝度変更子セットは、［−ａ，−ｂ，ｂ，ａ］である。
【００５１】
輝度テーブルは、徐々に変化する表面の表現を可能にするのに適する小さな輝度変更子値を含む複数のセットを含むのが好ましい。加えて、テーブルは、鮮鋭なエッジの表現を可能にするのに適する大きな輝度変更子値を含む複数のセットを更に含むのも好ましい。
【００５２】
ランダム値で開始し、当業者にはよく知られているＬＢＧアルゴリズム（Linde, Buzo及びGray）（非特許文献５）、シミュレーテッドアニーリング法及び座標検索のバージョンなどのいくつかの異なる最適化方式及び最適化アルゴリズムを使用して、それらの値を最適化することにより、テーブル中のセットの実際の輝度変更子値を見出すことができる。例えば、写真、ゲーム型テクスチャ、テキストなどの少数の異なる種類の画像をトレーニングデータとして使用できる。
【００５３】
輝度テーブルのハードウェア実現形態を更に安価にするために、先に述べたように、セットの輝度変更子を強制的に対称にし、且つ／又は所定のセットの輝度変更子を１つの係数、例えば、２により変更された別のセットの輝度変更子のコピーにすることも可能である。
【００５４】
表１は、各セットに４つの変更子値を含む輝度変更子の１６個のセットを含む輝度テーブルの現時点で好ましい例を示す。
【００５５】
【表１】
2007515124.tif 000003
【００５６】
表１において、輝度変更子のセット９〜１６は、セット１〜８のコピーを係数２で乗算したものである。
【００５７】
輝度テーブルが、多くとも１６個の異なる輝度変更子のセットを含む場合、輝度コードワードは、テーブルの（１６）セットのうちの１つのセットを識別する４ビットインデックス（0000bin − 1111bin）、例えば、コードワード0000bin（0000 ２進法）に対して［−８，−２，２，８］であるのが好ましい。セット中の変更子値が慎重に選択されているため（対称的なセットであり、セットの半分は、残り半分の係数２である）、１６個の変更子値のみを使用して、表１全体を再構成でき、そこから残る４８個の値を計算できる。
【００５８】
しかし、本発明は、表１の使用に限定されず、他の輝度変更子セット及び他の輝度変更子値を含む他のテーブルも使用できる。更に、テーブル中のセット数が１７個以上又は１５個以下である場合には、輝度コードワードのサイズを変えなければならないであろう。例えば、テーブルが２つ（３〜４個、５〜８個又は１７個以上）の輝度変更子セットを含むのであれば、コードワードのサイズを１ビット（２ビット、３ビット又は５ビット以上）に限定することが可能である。更に、セット当たりの輝度変更子値の数は、４以外であっても良い。例えば、セットごとに５つの値が使用されてもよく、その場合の例として、［−８，−２，０，２，８］が与えられる。テーブル中のセットの輝度値は、先に述べたように、いくつかの種類の異なる画像をトレーニングデータとして使用して判定される。しかし、１つの特定の画像の種類のみを符号化する場合には、その画像の種類に対応するトレーニングデータを使用して、すなわち、特定の画像の種類専用の輝度テーブルを提供することにより、変更子値を判定できる。また、１つの特定の画像に適応する輝度変更子値を含む輝度テーブルを提供することも可能である。そのような場合、すなわち、画像又は画像の種類に専用のテーブルの場合、テーブルの輝度変更子値を符号化画像ブロックの圧縮ファイルに含めるか又は輝度変更子値をそれらと関連付けることが必要になるであろう。
【００５９】
加えて、輝度コードワードは、テーブル中の１つの輝度変更子セットを指示するインデックス又はポインタである必要はなく、実際には、輝度変更子セット自体であってもよい。例えば、輝度コードワードは、２及び８などの２つの変更子値を含み、その場合、それら２つの値から、−２及び−８などの他の変更子値を判定できる。
【００６０】
尚、画像ブロックに対しては、全く同一の輝度変更子セットが使用される。
【００６１】
ステップＳ３において、輝度コードワードが提供された後、次のステップＳ４は、画像ブロック中の画像要素に関して輝度表現を選択する。そのような各輝度表現は、ステップＳ３で提供された輝度変更子セットからの１つの輝度変更子値と関連付けられる。言い換えれば、輝度表現は、ブロックの１つの特定の画像要素に対してセットのうちのどの輝度変更子を使用すべきかの識別を可能にする。
【００６２】
−８，−２，２，８のような４つの変更子値を含む輝度変更子セットの場合、輝度表現は、それら４つの値のうちの１つを識別する２ビットシーケンスであってもよい。例えば、11binは−８に対応し、10binは−２に対応し、00binは２に対応し、01binは８に対応する。セットあたりに使用される輝度変更子値の数が５個以上である場合には、正しい変更子を識別するために、輝度要素ごとに３ビット以上が要求される。
【００６３】
ステップＳ４は、画像ブロック中の全ての画像要素に対して繰り返されるのが好ましい（線１により概略的に示される）。ステップＳ２〜Ｓ４の符号化の結果は、符号化画像ブロック、更に厳密には画像ブロックの符号化（圧縮）表現である。そのような符号化ブロック表現７００は、図４に示される。表現７００（符号化画像ブロック）は、色コードワード７１０、輝度コードワード７２０、及び輝度表現のシーケンス又はビットマップ７３０（ブロック中の画像要素ごとに１つの輝度表現が存在するのが好ましい）を含む。尚、符号化画像ブロック７００の色コードワード７１０、輝度コードワード７２０、及び輝度表現シーケンス７３０の相互順序は、図示されている順序と異なっていてもよい。
【００６４】
画像ブロックが８つの画像要素を含み（例えば、図２及び図３を参照）、各輝度表現が２ビットである場合、シーケンス７３０のサイズは１６ビットである。更に、色コードワード及び輝度コードワードの対応するサイズが、それぞれ、１２ビットと４ビットであると仮定する。従って、画像ブロックの符号化表現７００の全体のサイズは３２ビットになり、画素（画像要素）ごとに４ビット（ｂｐｐ）の圧縮率が得られる。表現７００のこのような小さな（３２ビット）サイズは、通常は１６ビット又は３２ビットのメモリバスを有する移動ユニットなどのシンクライアントに適応する。その結果、符号化表現７００を読み出すために必要とされるメモリアクセスは、わずか１回、最悪でも２回である。
【００６５】
図１に戻ると、ステップＳ２〜Ｓ４は、ステップＳ１の分解中に提供される全ての画像ブロックに対して繰り返されるのが好ましい（線２により概略的に示される）。その結果は、符号化画像ブロックのシーケンス又はファイルである。得られる符号化画像ブロック（画像ブロックの符号化表現）は、それらがステップＳ１のブロック分解の際に分解されたのと同一の順序で、左から右及び上から下へファイルに配列されることが可能である。その後、この方法は終了する。
【００６６】
その後、符号化画像は、後で画像がレンダリング、例えば、表示されるまで、メモリに提供され、格納されてもよい。更に、符号化画像は、別のユニットへの（無線又は有線）送信のために、符号化ブロック表現から成る信号として送信機へ提供されてもよい。
【００６７】
図５は、図１のステップＳ２の一実施形態を更に詳細に示す。ステップＳ１０において、画像ブロック中の画像要素の平均色が判定される。以下の説明中、画像の１つの画素又はテクセル（画像要素）の色は、２４ビットのＲＧＢ色、すなわち、８ビットの赤色成分、８ビットの緑色成分、及び８ビットの青色成分により表現されると仮定する。しかし、本発明は、この特定の例に限定されず、画素及びテクセルのどのような色表現にも適用可能である。そこで、平均色
【００６８】
【数１】
2007515124.tif 000004
【００６９】
は、次のように判定される。
【００７０】
【数２】
2007515124.tif 000005
【００７１】
式中、Ri, Gi, Biは、画像要素iのR, G, B成分であり、Nは、画像ブロック中の画像要素の総数である。
【００７２】
ステップＳ１０において平均色
【００７３】
【数３】
2007515124.tif 000006
【００７４】
が判定された後、次のステップＳ１１は、平均色を量子化する。（２４ビット）平均色は、１２ビットシーケンス（色コードワード）に量子化されるのが好ましい。言い換えれば、各８ビット平均成分は、４ビット平均成分に量子化される。例えば、平均色
【００７５】
【数４】
2007515124.tif 000007
【００７６】
が
【００７７】
【数５】
2007515124.tif 000008
【００７８】
のように計算される場合、４ビット量子化バージョン
【００７９】
【数６】
2007515124.tif 000009
【００８０】
は、次の式から生成できる。
【００８１】
【数７】
2007515124.tif 000010
【００８２】
すなわち、（１２ビット）色コードワードとして、[A, 5, 1]hex=[1010, 0101, 0001]binを使用できる。次に、方法は、図１のステップＳ３に続く。
【００８３】
図６は、図１のステップＳ３及びＳ４の一実施形態を更に詳細に示す。ステップＳ２０は、テーブルの異なる輝度変更子セット及びセットの異なる変更子値を検査し、そのような変更子セット及び変更子値の試験ごとに誤差値を計算する。それらの誤差値に基づいて、ステップＳ２１において、最小の誤差値をもたらす変更子セット及びセット中の輝度変更子値が選択される。このことは、以下に更に詳細に説明される。その後、方法は終了する。
【００８４】
以下に、３つの異なる例と関連させて、画像ブロックの符号化を更に詳細に説明する。これらの例において、表１に対応する輝度テーブルが使用される。
【００８５】
＜単純符号化＞
本発明の本実施形態に従って画像ブロックを符号化するために、基本的には、正しい色コードワード及び正しい輝度変更子セットが選択される。この選択が実行された後、画像ブロック中の各画像要素の符号化は、セットの４つの輝度変更子の全てを試行し、誤差を計算することにより実行される。画像要素の元の（２４ビット）色が（R, G, B）であり、色コードワード（量子化平均色、１２ビット）が
【００８６】
【数８】
2007515124.tif 000011
【００８７】
であり、選択された変更子セットが［−ａ，−ｂ，ｂ，ａ］であると仮定する。その場合、誤差値は、次のように判定される。
【００８８】
【数９】
2007515124.tif 000012
【００８９】
式中、α∈［−ａ，−ｂ，ｂ，ａ］である。画像ブロック中の画像要素ごとに、誤差ε２を最小にするαが選択される。これは、画像要素の第１の変更子値の選択肢に対して誤差値を計算し、この第１の誤差値（及び選択された変更子値の選択肢）を格納することにより、実行される。その後、変更子値の異なる選択肢に対して、誤差値が計算される。次に、この誤差値は格納された値と比較される。誤差値が格納された値より小さい場合、格納された値は、この新たな誤差値と置き換えられ、この誤差値の計算に使用された変更子値も格納される。次に、変更子及びセットの全ての組み合わせに対して、この処理が繰り返される。
【００９０】
式（２）は、画像中の平均二乗誤差を最小にするので、ピーク信号／雑音比（ＰＳＮＲ）に関して最良の性能を与える。しかし、知覚に関しては、これが最良の結果をもたらすとは言えないであろう。いくつかの画素（画像要素）p1及びp2に関して、元の画像においてp1がp2より明るく見える場合、画像の復号化バージョンでは、p2がp1より明るく見える。これは、赤色成分、緑色成分、及び青色成分が、人間の視覚系統が輝度として知覚するものに等しい寄与を与えないためである。緑色成分は、輝度の知覚に不均衡な寄与を与えるため、緑色成分の近似は、赤色及び青色の近似より高い精度で（より正確に）表現されるべきである。その結果、次のような重み付き誤差値を採用できる。
【００９１】
【数１０】
2007515124.tif 000013
【００９２】
式中、WR、WG、及びWBは、色成分に対するそれぞれ異なる重みである。更に、WGは、WR及びWBより大きいのが好ましい。例えば、WR = ５／１６、WG = ９／１６、及びWB = ２／１６、すなわち、WR = 0.299、WG = 0.587、及びWB = 0.114である。
【００９３】
この単純符号化においては、ブロック中の８つの画像要素の平均色を、色成分ごとに４ビットに量子化した値が、色コードワードとして使用される。次に、全数検索により、正しい輝度変更子セットが選択される。すなわち、テーブル中の１６セットの全てが試行され、誤差値を最小にするセットが選択される。このためには、画像要素ごとに、１６×４＝６４回の評価が要求される。重みがWR = ５／１６、WG = ９／１６、及びWB = ２／１６である場合、整数演算が使用でき、符号化は高速になる。このような重みが選択された場合には、１．２ＧＨｚのＰＣラップトップにおいて、単純符号化を使用する１２８×１２８画素（画像要素）から成る画像の符号化は、約６０ｍｓの時間を要する。
【００９４】
＜全数符号化＞
先に説明した単純符号化においては、単純に、画像ブロック中の画像要素の色の表現（色コードワード）として、量子化平均色が使用された。本発明による全数符号化の本実施形態では、色及び輝度変更子セット（変更子値を含む）の双方が選択される。すなわち、可能なあらゆる組み合わせが試行される。所定の画像要素に対して、輝度変更子セットの全４ビット及び輝度表現の２ビットの先の繰り返しに加えて色の全１２ビットを通して更に繰り返しが追加実行され、その結果、合わせて２１８ステップとなる。単純圧縮の場合と同一のＰＣラップトップを使用すると、１２８×１２８画素の画像の符号化に約５分かかる。これは、ランタイムアプリケーションには長すぎるであろうが、オフライン符号化の場合には法外な長さではない。全数符号化の結果を上述の単純符号化の結果と比較すると、ＰＳＮＲの差は、約１．５ｄＢであることがわかる。視覚的には、単純符号化方式によって符号化された画像のいくつかの領域が色ずれを示すという点で、画像に差が生じる。グレイの領域にある個々の画像ブロックが、急にわずかな緑色の陰影を帯びる。その理由は、単純方式の場合、色コードワードのＲ成分、Ｇ成分、及びＢ成分が個別に量子化され、それが最適とは言えないことである。
【００９５】
＜組み合わせ量子化＞
単純符号化方式の場合、本発明の本実施形態は、（２４ビット）平均色
【００９６】
【数１１】
2007515124.tif 000014
【００９７】
で開始するが、この平均色の色成分は、輝度成分、すなわち、輝度変更子セット及び輝度変更子値の選択肢と共に量子化される。
【００９８】
Rlowが
【００９９】
【数１２】
2007515124.tif 000015
【０１００】
のすぐ下の４ビット量子化レベル又は値を示し、Rhighが
【０１０１】
【数１３】
2007515124.tif 000016
【０１０２】
のすぐ上の４ビット量子化レベル又は値を示す場合、
【０１０３】
【数１４】
2007515124.tif 000017
【０１０４】
となる。次のタスクは、Rlow又はRhighのいずれか一方として
【０１０５】
【数１５】
2007515124.tif 000018
【０１０６】
を選択することである。緑色成分及び青色成分についても、同じことが当てはまる。
【０１０７】
まず、
【０１０８】
【数１６】
2007515124.tif 000019
【０１０９】
として、誤差値が計算される。
【０１１０】
【数１７】
2007515124.tif 000020
【０１１１】
これを次のように簡略化できる。
【０１１２】
【数１８】
2007515124.tif 000021
【０１１３】
式中、
【０１１４】
【数１９】
2007515124.tif 000022
【０１１５】
である。更に、α（輝度変更子）を自由に選択できる、すなわち、αは最適なα＝−（δＲ＋δＧ＋δＢ）／３に等しいと仮定する。この最適なαを式（５）に代入し、簡略化すると、以下が得られる。
【０１１６】
【数２０】
2007515124.tif 000023
【０１１７】
式中、ξは、括弧内の式である。
【０１１８】
しかし、赤色成分として、より高い値が選択された場合、すなわち、
【０１１９】
【数２１】
2007515124.tif 000024
【０１２０】
であり、
【０１２１】
【数２２】
2007515124.tif 000025
【０１２２】
であるという事実が使用された場合には、式（５）を次のように書き改めることができる。
【０１２３】
【数２３】
2007515124.tif 000026
【０１２４】
この場合の最適なα＝−（δＲ＋１７＋δＧ＋δＢ）／３を代入することにより、上記の式を更に簡略化できる。
【０１２５】
【数２４】
2007515124.tif 000027
【０１２６】
これら２つの量子化色（色コードワード）(Rlow, Glow, Blow)又は(Rhigh, Glow, Blow)のいずれが最良であるかを判定するために、すなわち、どちらの量子化色が最小の誤差値をもたらすかを判定するために、式（８）の大括弧の中の余分な式が検討される。言い換えると、１７＋２δＲ−δＧ−δＢ＜０であるならば、(Rhigh, Glow, Blow)が選択されるべきであり、そうでない場合には、(Rlow, Glow, Blow)が選択される（１７＋２δＲ−δＧ−δＢ＝０の場合、いずれのコードワードを選択してもよい）。次に、３つの色成分に対して、低量子化及び高量子化の全ての可能な組み合わせに関して、すなわち、平均色の全ての近傍量子化色に関して、この手順が繰り返される。その結果を、表２に示す。
【０１２７】
【表２】
2007515124.tif 000028
【０１２８】
尚、ξは、明示して計算される必要はなく、使用する量子化レベル（色コードワード）を選択するために、表２の大括弧の中の式（誤差表現）のみが計算される必要がある。尚、色コードワード(Rlow, Glow, Blow)、及び(Rhigh, Ghigh, Bhigh)は、同一の誤差値を与える。これは、どのようなα（輝度変更子値）にも到達できるという仮定の下で言えることである。しかし、現実には、αは、使用される変更子セットの輝度変更子値、例えば、表１の変更子値に限定される。表１によれば、より小さな変更子値（α）は、より大きな値と比較して高い精度で指定されることが可能である。これは、
【０１２９】
【数２５】
2007515124.tif 000029
【０１３０】
が(Rlow, Glow, Blow)より(Rhigh, Ghigh, Bhigh)に近い場合、(Rlow, Glow, Blow)より(Rhigh, Ghigh, Bhigh)を選択するほうがよく、逆に、
【０１３１】
【数２６】
2007515124.tif 000030
【０１３２】
が(Rhigh, Ghigh, Bhigh)より(Rlow, Glow, Blow)に近い場合には、(Rhigh, Ghigh, Bhigh)より(Rlow, Glow, Blow)を選択するほうがよいことを意味する。本発明の本実施形態の組み合わせ量子化は、単純符号化と比較して約１ｄＢだけＰＳＮＲを向上する。従って、ＰＳＮＲは、（最適な）全数符号化方式により得られる結果より、約０．５ｄＢ低いだけである。総符号化時間は、単純符号化と比較して測定可能なほど変化しなかった。すなわち、１２８×１２８画素の画像は、この場合も、約６０ｍｓで圧縮される。
【０１３３】
また、式（３）からの知覚重み付け誤差尺度を使用して、表２に対応する表を作成することも可能である。その場合、最適なαは、
【０１３４】
【数２７】
2007515124.tif 000031
【０１３５】
に対して
【０１３６】
【数２８】
2007515124.tif 000032
【０１３７】
である。Rlow, Glow, Blow、及びRhigh, Ghigh, Bhighの誤差値を０に「正規化」する（基本的には、表２のＲ、Ｇ及びＢの全ての異なる可変部に対して、誤差値ε２から２／３ξを減算することに相当する）と、以下のような正規化誤差値の表が得られる。尚、表３のRlow, Glow, Blow、及びRhigh, Ghigh, Bhigh以外の色コードワードに対する正規化誤差値は、表２の大括弧の中の式に相当する。
【０１３８】
【表３】
2007515124.tif 000033
【０１３９】
次に、「正規化」誤差値又は表現を比較し、最小の誤差値をもたらす近傍量子化色を色コードワードとして選択することにより、近傍量子化色（X, Y, Zがlow又はhighをそれぞれ独立して表す場合、RXGYBZ）のうちのどれを色コードワードとして使用すべきかを判定できる。
【０１４０】
近傍量子化色の中から色コードワードを選択する別の方法では、そのような量子化色の各々によって画像ブロックを圧縮し、最小の誤差と関連する量子化色を選択する。しかし、そのような方式によれば、適切な色コードワードを判定するためにブロックを８回圧縮しなければならないため、１度しかブロック圧縮しない表２又は表３の誤差表現を使用する単純な方法と比較して、処理速度は幾分遅くなる。
【０１４１】
図７は、本発明に従って元の画像の符号化画像又は符号化バージョンを復号化する方法のフローチャートを示す。符号化画像は、基本的には、図４の表現７００のような画像ブロックのいくつかの符号化表現を含む。それらの符号化ブロック表現は、先に図１に関連して説明した画像符号化方法により生成されるのが好ましい。
【０１４２】
一般に、方法は、復号化する符号化画像ブロックを識別することにより開始する。元の画像の復号化表現を生成するために、符号化画像の全ての符号化画像ブロックを復号化することは可能である。あるいは、元の画像の一部のみをアクセスすべき場合もある。そのため、選択された数の画像ブロックのみが復号化される必要がある（より厳密には、いくつかの画像ブロックの選択された量の画像要素が復号化されなければならない）。
【０１４３】
正しい符号化画像ブロック（画像ブロックの正しい符号化表現）が識別されると、ステップＳ３０では、１つの輝度変更子セットを提供する。この変更子セットは、符号化表現の中の輝度コードワードに基づいて提供される。このセットの提供は、複数の変更子セットを含むテーブル、例えば、上記の表１から輝度コードワードによって１つの輝度変更子セットを識別することにより実行されるのが好ましい。しかし、アプリケーションによっては、輝度コードワード自体が変更子セットを含み、テーブルルックアップが不要になる場合もある。
【０１４４】
次のステップＳ３１において、画像ブロックの画像要素のうちの少なくとも１つ（すなわち、復号化されるべき画像要素）に対して、色表現が生成される。この色生成は、符号化ブロック表現の中の色コードワードに基づいて実行される。ステップＳ３２において、復号化されるべき画像要素に対して使用される輝度変更子が選択される。変更子値は、ステップＳ３０で提供された変更子セットから、画像要素と関連し且つ符号化ブロック表現の表現シーケンスの中で見出される輝度表現に基づいて選択される。ステップＳ３２において、正しい輝度変更子値が選択された後、ステップＳ３３では、画像要素の輝度がこの値によって変更又は変調される。本発明による輝度変更は、（可能であれば重み付けされた）輝度変更子値により色表現の全ての色成分を変更すること、例えば、加算又は乗算することを表す。
【０１４５】
ステップＳ３２及びＳ３３は、画像ブロック中のいくつかの画像要素に対して実行される（線３により概略的に示される）。本発明によれば、アプリケーションによって、特定の１つの画像ブロックから１つの画像要素のみが復号化されること、特定の１つの画像ブロックの複数の画像要素が復号化されること、及び／又は特定の１つのブロックの全ての画像要素が復号化されることが予想される。
【０１４６】
次に、ステップＳ３０〜Ｓ３３は、復号化されるべき画像要素を含む全ての画像ブロックに対して繰り返されるのが好ましい（線４により概略的に示される）。これは、ステップＳ３０〜Ｓ３３のループにおいて一度実行可能であるが、多くの場合、異なる符号化画像ブロックに対して数回実行されること及び／又は１つの特定の符号化画像ブロックに対して数回実行されることも可能であることを意味する。
【０１４７】
ステップＳ３４において、復号化された画像要素及び画像ブロックに基づいて、元の画像又はその一部の復号化表現が生成される。尚、アプリケーションによっては、復号化表現の単一の画素をレンダリングするために、いくつかの画像要素が復号化されなければならない。例えば、三線形補間中には、８つの隣接する画像要素が復号化され、双線形補間の場合には、対応する画像要素の数は４つである。このことは、当業者にはよく知られている。その後、方法は終了する。
【０１４８】
図８は、図７のステップＳ３０及びＳ３１の一実施形態を更に詳細に示す。ステップＳ４０において、輝度コードワードによって、正しい輝度変更子セットが識別され、輝度テーブルから選択される。輝度テーブルに格納された輝度変更子セットが変更子値の第１のサブセット、例えば、［ａ，ｂ］を含む場合、輝度変更子値の第２のサブセット、例えば、［−ａ，−ｂ］を第１のサブセットの値から判定できる。次のステップＳ４１において、好ましくは１２ビットである色コードワードの量子化色は、好ましくは２４ビットに拡大又は拡張される。その結果、ＲＧＢ色の場合、色コードワードの各量子化４ビット色成分は、８ビット色成分に拡張される。この色拡張は、２５６種類の色を伴う実現形態の場合、量子化４ビット色成分に１７を乗算することにより実現されてもよい（（２５６−１）／（１６−１）＝１７）。これは、拡張された８ビット色ワードの初めの（先頭の）４ビット及び最後の（下位の）４ビットに対して４ビットパターンを繰り返すのと同じことである。言い換えれば、４ビット色成分1010binは、1010 1010binに拡張されることになる。これに対し、色コードワードが１５ビット（Ｒ、Ｇ、Ｂの成分ごとに５ビット）を含む場合には、拡張は、３０ビット色への拡張になるであろう。これは、（５ビット）色成分に３３（（１０２４−１）／（３２−１）＝３３）を乗算するか、又は拡張された１０ビット色ワードの先頭の５ビット及び下位の５ビットに対して５ビットパターンを繰り返すことにより実現できる。ステップＳ４２において、拡張色は、復号化される画像ブロックの画像要素に割り当てられる。次に、方法は、図７のステップＳ３２へ続く。
【０１４９】
図９は、図７のステップＳ３３の一実施形態を更に詳細に示す。ステップＳ５０において、識別され、選択された輝度変更子値が拡張色に加算される。従って、この変更子値は、画像要素の色の全ての成分（ＲＧＢ色の場合、３つの成分の全て）に加算される。これは、全ての色成分への変更子値の単純な加算として実現される。しかし、アプリケーションによっては、変更子値を成分に加算する前に、変更子値に重み付けするのが好ましい。そのような場合、異なる色成分に対して異なる重みを採用できる。別の実施形態においては、単純加算以外の種類の変更、例えば、乗算、ＸＯＲ又は別の形の変更を採用できるであろう。そのような場合には、全く同一の輝度変更子値を使用して、拡張色の全ての成分に対して同一の変調が実行されるが、この値は成分ごとに異なる重みを付加されてもよい。次のステップＳ５１において、得られた輝度変更色成分値は、最小色閾値と最大色閾値との間にクランプされる。例えば、輝度変更子値（可能であれば重み付けされた）を色成分に加算した後、得られた値が最小閾値より小さい場合、その値は最小閾値の値にクランプされる。これに相応して得られた値が最大閾値より大きい場合には、その成分に対して、得られた値の代わりに閾値の値が使用されるべきである。色の種類が２５６である場合、限定的な意味を持たない最小閾値と最大閾値の例は、それぞれ０と２５５である。１０２４色の場合の対応する閾値は、０と１０２３である。その後、方法は、図７のステップＳ３４へ続く。
【０１５０】
以下の例によって、符号化画像ブロックの復号化を更に説明する。この例では、図４に示されるような符号化ブロック表現及び図２に示されるような画像ブロックを想定する。
【０１５１】
画像ブロックの符号化表現は、1010 0101 0001 0111 11 01 10 00 10 01 00 00bin（a517D890hex）に従い、この場合、ビット０〜３はブロックの画像要素の色コードワードの赤色成分であり、ビット４〜７は色コードワードの緑色成分であり、ビット８〜１１は色コードワードの青色成分であり、ビット１２〜１５は輝度コードワードであり、ビット１６〜３１は輝度表現のシーケンスである。
【０１５２】
次に、画像ブロックの色表現を生成するために、色コードワードが復号化（拡張）される。色コードワードにおける各色成分は４ビットであるが、１７（17 = 11hex）を乗算することにより８ビットに拡張される。これは、８ビット語の先頭の４ビット及び下位の４ビットの双方に対して４ビットパターンを繰り返すことと同じである。すなわち、
赤：ahex × 11hex = aahex ←→ 1010 1010bin ←→ 170
緑：5hex × 11hex = 55hex ←→ 0101 0101bin ←→ 85
青：1hex × 11hex = 11hex ←→ 0001 0001bin ←→ 17
次に、この拡張色は、画像ブロックの画像要素に割り当てられる。その結果、以下のようになる。
【０１５３】
【表４】
2007515124.tif 000034
【０１５４】
輝度コードワードに基づいて、表１から使用すべき正しい輝度変更子セットが選択される。表１からわかるように、0111binの輝度コードワードは、輝度変更子［−１２７，−４２，４２，１２７］に対応する。
【０１５５】
輝度表現のシーケンスにより、下記の式に従って、異なる画像要素に対してそれら４つの変更子値のうちのどれを使用すべきかを識別できる。
【０１５６】
【数２９】
2007515124.tif 000035
【０１５７】
第１の輝度表現は、11binであり、これは、第１の輝度変更子値である-127を第１の画像要素の３つの成分全てに加算すべきであることを意味する。すなわち、下記の通りである。
【０１５８】
【数３０】
2007515124.tif 000036
【０１５９】
得られた成分は、次に、０と２５５の間にクランプされ、その結果、(43, 0, 0)となる。このとき、部分的に復号化された画像ブロックは、下記の表の通りである。
【０１６０】
【表５】
2007515124.tif 000037
【０１６１】
次の画像要素に対しては、輝度表現は、01binである。すなわち、３つの色成分全てに輝度変更子127が加算されるべきである。クランプ後の結果は、(255, 212, 144)である。ブロック中の全ての画像要素に対してこの手順を繰り返すことにより、以下に示される最終的な復号化画像ブロックが作成されるであろう。
【０１６２】
【表６】
2007515124.tif 000038
【０１６３】
本発明による画像符号化（画像ブロック符号化）及び画像復号化（画像ブロック復号化又は処理）の方式は、汎用データ処理システム、例えば、画像を処理し且つ／又はレンダリングするように構成されたユーザ端末又は他の装置において実行可能である。そのような端末は、コンピュータであってもよい。しかし、本発明は、パーソナルデジタルアシスタンス（ＰＤＡ）、移動ユニット及び移動電話などのシンクライアントに適する。通常、そのような端末は、メモリ容量及びメモリ帯域幅が限定されることを特徴とし、バッテリにより給電される。すなわち、電力の供給も制限される。本発明の符号化及び復号化は、共に、ハードウェア又はソフトウェア、あるいはハードウェアとソフトウェアの組み合わせにより非常に単純に実現でき、符号化画像ブロックはわずか３２ビットの最大サイズを有するのが好ましいので、本発明をシンクライアントに適用することは好都合である。
【０１６４】
図１０は、移動ユニットにより代表されるユーザ端末１００を示す。しかし、本発明は、移動ユニットに限定されず、他の端末及びデータ処理装置でも実現される。本発明に直接関連する移動ユニット１００内部の手段及び要素のみが図示される。
【０１６５】
移動ユニット１００は、移動ユニット１００内部で、画像データを含むデータを処理する（中央）処理装置（ＣＰＵ）２００を具備する。移動ユニット１００には、画像データ及び図形データを管理するグラフィックシステム１３０が設けられる。特に、グラフィックシステム１３０は、接続する画面１２０又は他の表示装置に画像をレンダリング又は表示する。移動ユニット１００は、データを格納する記憶装置又はメモリ１４０を更に具備する。このメモリ１４０には、画像データ、特に、本発明に従って符号化された画像データ（符号化画像ブロック）が格納されてもよい。画像ブロック全体のサイズが小さく（３２ビット）、圧縮率が高い（４ｂｐｐ）ため、メモリ容量が限定される移動ユニット１００の場合であっても、画像データをメモリ１４０に効率よく格納できる。
【０１６６】
移動ユニット１００には、本発明による画像符号器２１０が設けられる。この符号器２１０は、画像又はテクスチャを画像（又はテクスチャ）の符号化表現に符号化するように構成される。先に説明したように、そのような符号化表現は、複数の復号化画像ブロックから成るシーケンス又はファイルを含む。この画像符号器２１０は、図示されるように、ＣＰＵ２００において実行されるソフトウェアとして提供されてもよい。あるいは、又はそれに加えて、符号器２１０は、移動ユニット１００のグラフィックシステム１３０又はその他の場所に配置されることも可能であろう。
【０１６７】
ブロック符号器２１０からの画像の符号化表現は、後に画像がレンダリングされるまで（メモリ）バス１５０を介してメモリ１４０に提供され、そこに格納されてもよい。あるいは、又はそれに加えて、符号化画像データは、入出力（Ｉ／Ｏ）ユニット１１０へ転送され、そこから他の外部端末又は外部装置へ（無線又は有線）送信されてもよい。このＩ／Ｏユニット１１０は、外部ユニットから画像データを受信することも可能である。この画像データは、画像符号器２１０により符号化されるべき画像又は復号化されるべき符号化画像データであってもよい。また、例えば、グラフィックシステム１３０に設けられた専用テクスチャメモリに、符号化画像表現を格納することも可能である。更に、専用テクスチャメモリに加えて又はその代わりに、例えば、グラフィックシステム１３０にあるテクスチャキャッシュメモリに、符号化画像の一部を（一時的に）格納することが可能であろう。
【０１６８】
（メモリ）バス１５０が３２ビットの最大帯域幅を有する場合、本発明の１つの符号化画像表現をメモリ１４０から取り出す又は読み出すために要求されるメモリアクセスは、１回である。しかし、バス１５０がそれより大きな帯域幅容量、例えば、６４ビット又は１２８ビットを有する場合には、１回のメモリアクセスで複数の符号化画像表現を取り出すことができる。例えば、バス１５０が６４ビットであり、画像ブロックサイズは図２に示される通りであると仮定する。画像ブロックが「順次積み重ねられる」と、１つの画像ブロックは、メモリ１４０内の後続画像ブロックと共に４×４平方の画像要素を形成する。しかし、ブロックが「並列」するように位置している場合には、画像ブロックは、次のブロックと共に２×８のボックスを形成する。当業者にはよく知られているような何らかの形態のテクスチャキャッシングシステムが採用される場合、所望の画像要素を発見する確率は、２×８のボックスと比較して４×４平方のほうが高いため、４×４平方がより好ましい。
【０１６９】
移動ユニット１００には、復号化画像表現を生成するために符号化画像を復号化する本発明による画像復号器２２０が設けられる。この復号化表現は、元の画像全体に対応してもよく、その一部に対応してもよい。画像復号器２２０はグラフィックシステム１３０に復号化画像データを提供し、グラフィックシステム１３０は、通常、データが画面１２０にレンダリング又は提示される前にデータを処理する。画像復号器２２０は、図示されるように、グラフィックシステム１３０に配置されることが可能である。あるいは、又はそれに加えて、復号器２００は、ＣＰＵ２００又は移動ユニット１００の他の場所において実行されるソフトウェアとして提供されてもよい。
【０１７０】
移動ユニット１００は、図示されるように、画像符号器２１０及び画像復号器２２０の双方を具備することができる。しかし、端末１００によっては、画像符号器２１０のみを含むことも可能である。そのような場合、符号化画像データは、画像の復号化を実行し、可能であれば画像のレンダリングを実行する別の端末へ送信されることになる。それに対応して、端末１００は、画像復号器２２０のみを含むこと、すなわち、符号器を含まないことも可能である。そのような端末１００は、別の端末から符号化画像データを含む信号を受信し、それを復号化して復号化画像表現を生成する。従って、符号化画像信号は、無線送信器及び無線受信器を使用して端末間で無線送信される。あるいは、本発明に従って端末間で画像及び符号化画像表現を配布するための他の技術、例えば、ＩＲポートを使用するＩＲ技術、及び端末間の画像データの有線転送などが採用されてもよい。また、この端末間のデータ配布のために、端末間で接続及び交換が可能であるメモリカード又はメモリチップも使用できる。
【０１７１】
移動ユニット１００のユニット１１０、１３０、２００、２１０及び２２０は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。
【０１７２】
図１１は、本発明による画像符号器２１０の一実施形態のブロック図を示す。通常、符号器２１０は、入力画像をいくつかの画像ブロックに分解又は分割する画像分割器２１５を具備する。分解器２１５は、画像を８つの画像要素（画素又はテクセル）から構成される画像ブロックに分解するように構成されるのが好ましい。画像ブロックは、一般的に８×１又は８×１画像要素、更に好ましくは４×２又は２×４画像要素のサイズを有する。この分解器２１５は、異なる入力画像を、それぞれ異なるサイズの画像ブロックに分解するのに適応できるであろう。例えば、第１の画像の種類の場合、４×２画像要素の画像ブロックサイズが使用されるが、第２の種類の場合には、８×１のブロックサイズが使用される。そのような場合、分解器２１５は、所定の画像に対してどの画像ブロックフォーマットを使用するかの識別を可能にする入力情報を受信するのが好ましい。
【０１７３】
画像符号器２１０の本実施形態は、単一のブロック符号器３００を具備する。このブロック符号器３００は、画像分割器から受信された画像ブロックを符号化し、符号化ブロック表現を生成する。そのような画像ブロック表現は、色コードワード、輝度コードワード、及び輝度表現のシーケンスを含む。ブロック表現全体のサイズは、対応する未符号化画像ブロックのサイズよりはるかに小さい。ブロック符号器３００は、分解器２１５からの各画像ブロックを順次処理（符号化）するように構成されるのが好ましい。
【０１７４】
ブロック符号器３００は、複数の輝度変更子セットを含む輝度テーブル５００を具備するか、又は輝度テーブル５００に対してアクセスする。テーブル５００の変更子セットは、符号化中、輝度及び可能であれば色コードワードを生成するために使用される。輝度テーブル５００は、ブロック符号器３００又は画像符号器２１０の他の場所に配置されることが可能であろう。
【０１７５】
画像符号器２１０は、単一の輝度テーブル５００を含むことができる。あるいは、符号器２１０にいくつかの異なるテーブルが配置されてもよい。その場合、テーブルの輝度変更子は、異なる画像の種類に適応するか、又は１つのテーブルが特定の１つの画像に適応することが可能である。例えば、第１の輝度テーブルは、写真などの第１の画像の種類の符号化中に使用され、第２のテーブルは、テキストなどの第２の種類の画像を符号化するために使用されてもよい。しかし、メモリを節約するためには、符号器２１０において、いくつかの異なる画像の種類からのトレーニングデータによって生成された単一の輝度テーブル５００が採用されるのが好ましい。
【０１７６】
画像符号器２１０のユニット２１５及び３００は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット２１５、３００及び５００は、画像符号器２１０の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
【０１７７】
図１２は、本発明による画像符号器２１０の別の実施形態のブロック図を示す。この画像符号器２１０は、図１１の実施形態のような画像分割器２１５を具備する。この画像分割器２１５については、説明を省略する。しかし、符号器２１０は、複数の（１より大きい正の整数をＭとするとき、Ｍ個の）ブロック符号器３００−１〜３００−Ｍを含む。そのような各ブロック符号器３００−１〜３００−Ｍは、基本的には、図１１の画像符号器のブロック符号器に対応する。画像符号器２１０に複数のブロック符号器３００−１〜３００−Ｍを設けることにより、分解器２１５からの複数の画像ブロックを並列して処理（符号化）できるので、総画像符号化時間は短縮される。
【０１７８】
各ブロック符号器３００−１〜３００−Ｍは、輝度テーブル５００を具備できる。異なる符号器３００−１〜３００−Ｍの輝度テーブル５００は、全て、同一の輝度変更子値を含むことが可能である。あるいは、異なるブロック符号器は、異なるテーブルを含んでもよい。そのような場合、ある１つの画像の種類に、１つ又はいくつかのブロック符号器を適応し、他のブロック符号器は他の画像の種類に適応する。別の実現形態においては、画像符号器２１０に単一の輝度テーブル５００が配置され、輝度テーブル５００は、全てのブロック符号器３００−１〜３００−Ｍに結合される。
【０１７９】
画像符号器２１０のユニット２１５及び３００−１〜３００−Ｍは、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット２１５、３００−１〜３００−Ｍ、及び５００は、画像符号器２１０の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
【０１８０】
図１３は、図１１の画像符号器のブロック符号器、又は図１２の画像符号器のブロック符号器のうちの１つのような、本発明によるブロック符号器３００の一実施形態のブロック図を示す。符号器３００は、画像ブロック中の画像要素の色の色表現を判定し、この色表現を量子化する色量子化器３１０を具備する。色表現は、画像要素の２４ビット平均色であるのが好ましく、その後、量子化器３１０により１２ビット色表現、すなわち、色コードワードに量子化される。
【０１８１】
ブロック符号器３００には、現在の画像ブロックに対して使用される輝度変更子セットを識別する輝度量子化器３２０が設けられる。量子化器３２０は、この変更子セットを関連する輝度テーブル５００から選択するように構成されるのが好ましい。次に、量子化器３２０は、選択された変更子セットと関連する輝度コードワードを生成する。符号器３００は、輝度選択器３３０を更に含む。輝度選択器３３０は、画像ブロック中の画像要素に対して、識別された輝度変更子セットから１つの輝度変更子を選択する。色量子化器３１０、輝度量子化器３２０、及び輝度選択器３３０は、先に詳細に説明されたように、色コードワード及び輝度コードワードを組み合わせ量子化するように構成されるのが好ましい。
【０１８２】
ブロック符号器３００のユニット３１０、３２０、及び３３０は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット３１０、３２０、３３０、及び５００は、ブロック符号器３００の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが画像符号器の他の場所に配置された分散型実現形態も可能である。
【０１８３】
図１４は、本発明によるブロック符号器３００の別の実施形態のブロック図を示す。このブロック符号器３００は、画像ブロックに対して使用すべき輝度変更子セット及び輝度変更子値、並びに可能であれば量子化色値を選択するという目的のために誤差値を推定する誤差推定器３４０を具備する。この推定器３４０は、画像ブロック中の画像要素に対する輝度変更子セット及び輝度変更子値（並びに全数符号化の場合は色）の第１の選択肢に関して誤差値を計算するように構成されるのが好ましい。次に、この第１の誤差値は格納される。その後、変更子セット及び変更子値（並びに色）の可能なあらゆる選択肢に対して誤差計算が繰り返され、計算が終了するたびに、推定誤差値は格納された誤差値と比較される。推定誤差値が格納された誤差値より小さい場合、推定誤差値は、以前に格納された誤差と置き換えられる。更に、その誤差値と関連する変更子セット及び変更子値（並びに色）の選択肢も格納される。全ての組み合わせの試験が完了した後、最小誤差をもたらした選択肢が輝度（及び色）コードワード及び輝度表現の生成に使用される。次に、輝度変更子セット選択器３２２及び輝度選択器３３０は、最小誤差と関連する変更子セット及び変更子値を選択する。ブロック符号器３００のその他のユニットは、図１３に対応するユニットを有し、ここでは詳細な説明を省略する。あるいは、ブロック符号器３００の本実施形態は、先に説明されたような組み合わせ量子化に従って動作できる。そのような場合には、色量子化器３１０は、画像ブロックの計算された平均色の近傍量子化色を提供する。誤差推定器３４０は、例えば、表２又は表３に示されるように、そのような近傍量子化色ごとに誤差表現を判定し、最小の誤差表現をもたらした近傍量子化色が画像ブロックの色コードワードとして選択される。
【０１８４】
ブロック符号器３００のユニット３１０、３２０、３２２、３３０及び３４０は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット３１０、３２０、３２２、３３０、３４０及び５００は、ブロック符号器３００の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが画像符号器の他の場所に配置された分散型実現形態も可能である。
【０１８５】
本発明による色量子化器３１０の好ましい実現形態が図１５のブロック図に示される。量子化器３１０は、画像ブロック中の画像要素の色の平均を判定するように構成された手段３１２を具備する。この平均色は、ＲＧＢ色であるのが好ましいが、画像処理において使用される他の任意の色フォーマットであってもよい。判定された平均色は、次に、量子化手段３１４に提供され、量子化手段３１４は平均色を量子化する。量子化器３１４は、色平均器３１２からの２４ビット平均ＲＧＢ色を１２ビットＲＧＢ色に量子化するように構成されるのが好ましい。
【０１８６】
色量子化器３１０のユニット３１２及び３１４は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット３１０及び３１４は、色量子化器３１０の中に共に含まれるように実現されてもよい。あるいは、いくつかのユニットがブロック符号器の他の場所に配置された分散型実現形態も可能である。
【０１８７】
図１６は、本発明によるブロック復号器２２０の一実施形態のブロック図を示す。ブロック復号器２２０は、ブロック選択器２２２を具備するのが好ましい。ブロック選択器２２２は、復号化のためにブロック復号器４００に提供されるべき符号化画像ブロックを、例えばメモリから選択する。ブロック選択器２２２は、例えば、ヘッダ又はレンダリングエンジンから符号化画像データと関連する入力情報を受信するのが好ましい。その後、その入力情報に基づいて、所望の画像要素を有する符号化画像ブロックのアドレスが計算される。計算されるこのアドレスは、１つの画像の中における画像要素（画素又はテクセル）の座標に依存するのが好ましい。ブロック選択器２２２は、アドレスを使用してメモリから符号化画像ブロックを識別する。次に、識別されたこの符号化画像ブロックは、記憶装置から取り出され、ブロック復号器４００に提供される。
【０１８８】
画像ブロックの画像要素に対する（ランダム）アクセスにより、必要とされる画像の部分のみを選択的に復号化できるので好都合である。更に、データが要求される任意の順序で、画像を復号化できる。例えば、テクスチャマッピングの場合、テクスチャの一部のみが要求されることもあり、一般に、それらの部分は無順序に要求される。従って、本発明の画像復号化は、画像の一部又は１セクションのみを処理するために有効に適用できる。
【０１８９】
選択された符号化画像ブロックは、その後、ブロック復号器４００へ転送される。復号器４００は、画像ブロックに加えてブロックのどの画像要素が復号化されるべきかを指定する情報を受信するのが好ましい。この情報は、画像ブロック全体、すなわち、ブロック中の全ての画像要素が復号化されるべきであることを指定できる。しかし、受信される情報は、復号化されるべき１つ又は若干の画像要素のみを識別してもよい。次に、ブロック復号器４００は、ブロック中の画像要素の復号化表現を生成する。元の画像における画像要素当たりビット数をＰとするとき、この復号化表現は、Ｐビット色、例えば、２４ビットＲＧＢ色であるのが好ましい。ブロック復号器４００は、復号化手順の間に使用される輝度テーブル５００を含むのが好ましい。あるいは、この輝度テーブル５００は、画像復号器２２０の他の場所に設けられることも可能である。先に図１１に関連して説明したように、異なる画像の種類に対して異なる輝度テーブルを使用する方法も、画像復号器２２０に適用できる。
【０１９０】
復号器２２０には、オプションである画像合成器２２４が設けられてもよい。この合成器は、ブロック復号器４００から復号済み画像要素を受信し、それらを合成して、画面にレンダリング又は表示される画素を生成する。合成器２２４は、１つの画素を生成するために、いくつかの入力画像要素を要求することが可能である。あるいは、この画像合成器２２４は、グラフィックシステムに設けられてもよい。
【０１９１】
ブロック復号器２２０のユニット２２２、２２４、及び４００は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット２２２、２２４、４００、及び５００は、ブロック復号器２２０の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
【０１９２】
図１７は、本発明による画像復号器２２０の別の実施形態のブロック図を示す。ブロック選択器２２２及び画像合成器２２４は、図１６の対応するユニットに類似しているため、ここでは詳細な説明を省略する。
【０１９３】
画像復号器２２０は、複数のブロック復号器４００−１〜４００−Ｑ（Ｑは、１より大きい正の整数である）を具備する。複数のブロック復号器４００−１〜４００−Ｑにアクセスすることにより、画像復号器２２０は、並列する複数の符号化画像ブロックを処理（復号化）できる。これらの複数のブロック復号器４００−１〜４００−Ｑは、並列処理を可能にするため、画像復号器２２０の処理性能、及び効率が向上する。例えば、最近傍補間の場合、一般に、１つの復号化画像要素で十分であるが、双線形（三線形）補間の場合には、４つ（８つ）の画像要素が必要とされる。各ブロック復号器４００−１〜４００−Ｑは、復号化に使用される輝度テーブル５００を具備できる。あるいは、画像復号器２２０に、単一のテーブル５００が配置され、そのテーブルは、全てのブロック復号器４００−１〜４００−Ｑに結合される。異なる種類の輝度テーブルを使用する方法を、この画像復号器２２０にも適用できる（先の図１２に関連する説明を参照）。
【０１９４】
画像復号器２２０のユニット２２２、２２４、及び４００−１〜４００−Ｑは、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット２２２、２２４、４００−１〜４００−Ｑ、及び５００は、画像復号器２２０の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
【０１９５】
図１８は、本発明によるブロック復号器４００の一実施形態の図である。ブロック復号器４００は、輝度コードワードに基づいて、関連する輝度テーブル５００から１つの輝度変更子セットを提供する手段４１０を具備する。この提供する手段４１０は、輝度テーブル５００から変更子値の第１のサブセットを取り出し、変更子の第２のサブセットを第１のサブセットに基づいて判定するように構成される。色発生器４２０は、色コードワードに基づいて画像ブロック中の全ての画像要素に対して単一の色表現を生成する。この発生器４２０は、コードワードの１２ビット色を２４ビット（ＲＧＢ）色に拡張するのが好ましい。
【０１９６】
輝度変更子選択器４３０は、手段４１０により提供された変更子セットから輝度変更子値のうちの１つを選択するために配置される。変更子選択器４３０は、輝度表現のシーケンスに基づいて符号化画像ブロック中の画像要素に対して正しい変更子値を選択するように構成される。色発生器４２０からの拡張色及び変更子選択器４３０からの変更子値は、輝度変調器又は変更器４４０へ転送される。輝度変調器又は変更器４４０は、変更子値を有する拡張色の色成分の輝度を変更する。輝度変更器４４０は、異なる色成分に対して異なる重みを有する重み付き輝度変更子値を使用できる。更に、色成分が輝度変更された後、変更器４４０は、成分を最大閾値と最小閾値との間、例えば、０と２５５の間にクランプするのが好ましい。
【０１９７】
ブロック復号器４００のユニット４１０、４２０、４３０、及び４４０は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット４１０、４２０、４３０、４４０、及び５００は、ブロック復号器４００の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが画像復号器の他の場所に配置された分散型実現形態も可能である。
【０１９８】
図１９は、本発明によるブロック復号器４００の可能なハードウェア実現形態を概略的に示す。ブロック復号器４００に対する入力は、１２ビット色コードワード７１０（赤色成分、緑色成分、及び青色成分の各々に対して４ビット）、４ビット輝度コードワード７２０、及び１６ビット輝度シーケンス７３０を含む符号化ブロック表現７００である。
【０１９９】
色コードワードは、色発生器４２０に提供される。色発生器４２０は、３つのビット拡張器４２２〜４２６により実現される。第１のビット拡張器４２２は４ビット赤色成分を受信し、第２のビット拡張器４２４は４ビット緑色成分を受信し、第３のビット拡張器４２６は４ビット青色成分を受信する。各々の拡張器４２２〜４２６からの出力は、８ビット色成分である。この８ビット成分は、入力成分に１７を乗算するか、又は成分に１６を乗算し且つ成分を加算することにより単純に求められる。あるいは、拡張器４２２〜４２６は、ビットシフタ及びＯＲゲート、例えば、(1011bin＜＜4) OR 1011bin = 1011 0000bin OR 1011bin = 1011 1011binとして実現されてもよい。この場合、＜＜4は、１つの語を左へ４ビットシフトすることに相当する。
【０２００】
変更子選択器４３０は、マルチプレクサ４３５として実現される。このマルチプレクサ４３５には、３ビットアドレスインデックスが入力される。このアドレスインデックスに基づいてマルチプレクサ４３５は、８つの画像要素のうちのどれを復号化すべきかを選択する。次に、選択された画像要素と関連する２ビット輝度表現がテーブルルックアップ４１５へ転送される。このテーブルルックアップは、図１８の変更子セット提供器４１０及び輝度テーブル５００に相当する。入力された輝度コードワード及び輝度表現を使用して、ルックアップ４１５は、テーブル中の変更子セットのうちの１つから正しい輝度変更子値を取り出す。次に、この９ビット符号付き（正又は負）変更子値は、輝度変更器４４０に提供される。このハードウェア実現形態においては、変更器４４０は、３つの加算器４４１〜４４３及び３つのクランパ４４４〜４４６を具備する。変更子値は、それぞれの加算器４４１〜４４３に入力される。第１の加算器４４１は、ビット拡張器４２２からの８ビット赤色成分に輝度変更子値を加算する。これに対応して、加算器４４２は、ビット拡張器４２４からの８ビット緑色成分に変更子値を加算し、加算器４４３は、ビット拡張器４２６からの８ビット青色成分に変更子値を加算する。別の実現形態においては、加算器４４１〜４４３は、他の変更要素、例えば、乗算器又はＸＯＲゲートと置き換えられることが可能である。加算器４４１〜４４３からの出力は、クランパ４４４〜４４６へ転送される。クランパ４４４〜４４６は、輝度変更済色成分を０と２５５の間にクランプする。クランパ４４４〜４４６からの出力は、画像要素の伸張又は復号化２４ビット色である。
【０２０１】
図２０は、図１９のビット拡張器４２２；４２４；４２６の可能なハードウェア実現形態を概略的に示す。これらの拡張器は、４ビット（赤、緑、又は青）色成分を受信し、対応する拡張８ビット色成分を出力する。出力される８ビット色成分の中で、４つの最上位ビット（ＭＳＢ）は入力された４ビット色成分を構成し、「第５のＭＳＢ」は入力成分のＭＳＢに対応し、「第６のＭＳＢ」は入力成分の「第２のＭＳＢ」に対応し、残る２つの最下位ビット（ＬＳＢ）は入力成分の２つのＬＳＢに対応する。
【０２０２】
図２１は、図１９のテーブルルックアップ４１５の可能なハードウェア実現形態を概略的に示す。４ビット入力輝度コードワードのうちの３つのＬＳＢは、２つのマルチプレクサ４１１及び４１２に入力される。マルチプレクサ４１１及び４１２は、それぞれ、８つの可能な変更子値から１つの７ビット輝度変更子値を選択する。それら１６の輝度変更子のうちの残る４８個の値は、表１に従った輝度テーブルを採用して計算される。マルチプレクサ４１１及び４１２からの選択された輝度変更子値は、別のマルチプレクサ４１３に入力され、マルチプレクサ４１３は、図１９のマルチプレクサ４３５からの１ビット入力データ（２ビット輝度表現のうちの１ビット）に基づいて、それらの値のうちの１つを選択する。次に、選択された変更子値は、マルチプレクサ４１６及び否定手段４１４の双方へ転送される。否定手段４１４は変更子値を否定する。この否定された値は、マルチプレクサ４１６へ転送される。このマルチプレクサ４１６は、図１９のマルチプレクサ４３５からの輝度表現のうちの残るビットに基づいて正の７ビット輝度変更子値又は否定された値のいずれかを選択する。選択された（８ビット）変更子値は、次に、マルチプレクサ４１８及びビットシフタ４１７の双方に供給される。ビットシフタ４１７は、変更子値を左へ１ビットシフトし、その結果、９ビット輝度変更子（基数１０で、値に２を乗算することに相当する）が得られる。そこで、マルチプレクサ４１８は、輝度コードワードのＭＳＢに基づいて８ビット変更子値又は９ビット変更子値のいずれかを選択する。６４の可能な変更子値の中から、特定の画像要素に対して使用すべき９ビット輝度変更子値が選択される。
【０２０３】
図２２は、図１９のクランパ４４４；４４５；４４６の可能なハードウェア実現形態を概略的に示す。クランパ４４４；４４５；４４６に対する入力は、１０ビット輝度変更済色成分値である。この入力値の８つのＬＳＢは、マルチプレクサ４４７に入力される。マルチプレクサに対する他方の入力は、最大閾値（２５５；８ビット）である。マルチプレクサ４４７は、輝度変更済色成分の第２のＭＳＢに基づいて８ビット入力値又は最大閾値のいずれかを選択する。言い換えれば、この第２のＭＳＢが１に等しい場合、マルチプレクサ４４７は、閾値を出力し、そうでない（第２のＭＳＢが０に等しい）場合には、８ビット入力値が第２のマルチプレクサ４４８へ出力される。この第２のマルチプレクサ４４８は、色成分のＭＳＢに基づいて第１のマルチプレクサ４４７からの出力を最小閾値（０；８ビット）と比較する。このＭＳＢ又は符号ビットが１に等しい場合、第１のマルチプレクサ４４７からの出力は負であり、第２のマルチプレクサ４４８により最小閾値が選択されるべきである。しかし、符号ビットが０である場合には、第１のマルチプレクサ４４７の出力が第２のマルチプレクサ４４８からも出力されるべきである。
【０２０４】
図１９のブロック符号化器４００のハードウェアによる解決方法は、非常に単純であり、ビット拡張器４２２；４２４；４２６、テーブルルックアップ４１５、及びクランパ４４４；４４５；４４６が、それぞれ、図２０、図２１及び図２２に従って実現されるのであれば、基本的には、３つの加算、１つの否定、及び１２のマルチプレクサのみを具備する。これを、最高で４２の加算、及び２つのマルチプレクサを要求するＳ３ＴＣ方式（特許文献１）を使用する伸張と比較すべきである。
【０２０５】
添付の特許請求の範囲により定義される本発明の範囲から逸脱せずに、本発明に対して種々の変形及び変更を実施できることは、当業者により理解されるであろう。
【図面の簡単な説明】
【０２０６】
【図１】図１は、本発明による画像符号化方法を示すフローチャートである。
【図２】図２は、本発明による画像ブロックの一実施形態を示す図である。
【図３】図３は、本発明による画像ブロックの別の実施形態を示す図である。
【図４】図４は、本発明による画像ブロックの符号化表現の一実施形態を示す図である。
【図５】図５は、図１の色コードワードを判定するステップを更に詳細に示すフローチャートである。
【図６】図６は、図１の輝度コードワードを提供するステップ、及び輝度表現を選択するステップを更に詳細に示すフローチャートである。
【図７】図７は、本発明による画像復号化方法を示すフローチャートである。
【図８】図８は、図７の輝度変更子セットを提供するステップ、及び色表現を生成するステップを更に詳細に示すフローチャートである。
【図９】図９は、図７の輝度を変更するステップを更に詳細に示すフローチャートである。
【図１０】図１０は、本発明による画像符号器及び画像復号器を有するユーザ端末の一例を概略的に示す図である。
【図１１】図１１は、本発明による画像符号器の一実施形態を概略的に示すブロック図である。
【図１２】図１２は、本発明による画像符号器の別の実施形態を概略的に示すブロック図である。
【図１３】図１３は、本発明によるブロック符号器の一実施形態を概略的に示すブロック図である。
【図１４】図１４は、本発明によるブロック符号器の別の実施形態を概略的に示すブロック図である。
【図１５】図１５は、図１３及び図１４のブロック符号器の色量子化器を更に詳細に概略的に示すブロック図である。
【図１６】図１６は、本発明による画像復号器の一実施形態を概略的に示すブロック図である。
【図１７】図１７は、本発明による画像復号器の別の実施形態を概略的に示すブロック図である。
【図１８】図１８は、本発明によるブロック復号器の一実施形態を概略的に示すブロック図である。
【図１９】図１９は、本発明によるブロック復号器の一実施形態を概略的に示すハードウェアブロック図である。
【図２０】図２０は、図１９のビット拡張器の一実施形態を更に詳細に示すハードウェアブロック図である。
【図２１】図２１は、図１９のテーブルルックアップの一実施形態を更に詳細に示すハードウェアブロック図である。
【図２２】図２２は、図１９のクランパの一実施形態を更に詳細に示すハードウェアブロック図である。
【図１】
2007515124.tif 000039
【図２】
2007515124.tif 000040
【図３】
2007515124.tif 000041
【図４】
2007515124.tif 000042
【図５】
2007515124.tif 000043
【図６】
2007515124.tif 000044
【図７】
2007515124.tif 000045
【図８】
2007515124.tif 000046
【図９】
2007515124.tif 000047
【図１０】
2007515124.tif 000048
【図１１】
2007515124.tif 000049
【図１２】
2007515124.tif 000050
【図１３】
2007515124.tif 000051
【図１４】
2007515124.tif 000052
【図１５】
2007515124.tif 000053
【図１６】
2007515124.tif 000054
【図１７】
2007515124.tif 000055
【図１８】
2007515124.tif 000056
【図１９】
2007515124.tif 000057
【図２０】
2007515124.tif 000058
【図２１】
2007515124.tif 000059
【図２２】
2007515124.tif 000060
【国際調査報告】
2007515124.tif 000061
2007515124.tif 000062
2007515124.tif 000063