JP4444967B2 - 画像処理 - Google Patents

画像処理 Download PDF

Info

Publication number
JP4444967B2
JP4444967B2 JP2006545270A JP2006545270A JP4444967B2 JP 4444967 B2 JP4444967 B2 JP 4444967B2 JP 2006545270 A JP2006545270 A JP 2006545270A JP 2006545270 A JP2006545270 A JP 2006545270A JP 4444967 B2 JP4444967 B2 JP 4444967B2
Authority
JP
Japan
Prior art keywords
luminance
image
color
representation
modifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2006545270A
Other languages
English (en)
Other versions
JP2007515124A (ja
Inventor
ヤコブ ストレム,
トマス アケナイン−メラー,
Original Assignee
テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テレフオンアクチーボラゲット エル エム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Publication of JP2007515124A publication Critical patent/JP2007515124A/ja
Application granted granted Critical
Publication of JP4444967B2 publication Critical patent/JP4444967B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/98Adaptive-dynamic-range coding [ADRC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Color Television Systems (AREA)
  • Image Processing (AREA)

Description

本発明は、一般に、画像処理に関し、特に、画像を符号化及び復号化する方法及びシステムに関する。
近年、データ処理システム及びコンピュータ、特に、移動端末などのユーザ端末において、画像及び図形を提示し、レンダリングすることが極めて多くなってきている。例えば、3次元(3D)グラフィックス及び3D画像は、そのような端末において、ゲーム、3Dマップ、及びメッセージ通信、スクリーンセーバ、及びマンマシンインタフェースを含めて、多数の興味深いアプリケーションを有する。
3Dグラフィックスレンダリング処理は、通常、3つの部分段階を含む。簡単に言うと、第1の段階であるアプリケーション段階は、いくつかの三角形を作成する。それらの三角形の角は、第2の段階であるジオメトリ段階で、変換され、射影され、照明される。第3の段階であるラスター化段階においては、多くの場合にテクスチャと呼ばれる画像を三角形の上に「のり付け」することができる。それにより、レンダリングされる画像の現実感が増す。第3の段階は、zバッファを使用してソーティングを更に実行する。
しかし、画像及びテクスチャ、特に3D画像及び3Dグラフィックスのレンダリングは、グラフィックシステムに要求されるメモリ帯域幅及び処理能力に関して、計算の費用がかかるタスクである。例えば、テクスチャは、高速オンチップメモリに格納されなければならないために、高価なメモリを使用する必要があり、1つの画素を描画するために、1つのテクスチャを数回アクセスすることもあるので、メモリ帯域幅に関しても経済的負担が大きい。
帯域幅及び処理能力に課される要求を軽減するために、通常、画像(テクスチャ)符号化方法又はシステムが採用される。そのような符号化システムにより、レンダリング中に、高価なオンチップメモリをより効率よく使用でき、メモリ帯域幅が縮小される。従って、消費電力が減少し且つ/又はレンダリング速度が増すという結果がもたらされる。帯域幅及び処理能力に課される要求がそのように軽減されることは、メモリの量が少なく、メモリ帯域幅が狭く、電力が制限される(バッテリにより給電されるため)移動ユニット及び移動電話のようなシンクライアントの場合に特に重要である。
非特許文献1は、画像符号化のためのブロック切捨て符号化(BTC)と呼ばれる単純な方式を説明する。彼らの方式は、一度に4画素×4画素の1ブロックを考慮することにより、グレイスケール画像を符号化する。そのようなブロックごとに、2つの8ビットグレイスケール値が生成され、ブロック中の各画素は、それらのグレイスケールの一方にインデックス化するために1つのビットを使用する。その結果、画素ごとに2ビット(2bpp)の圧縮率が得られる。しかし、BTCには、特にエッジの周囲の領域及びグレイレベルの勾配を含む低コントラスト領域において、アーティファクトが発生するという問題がある。更に、BTCにより処理されるグレイスケール画像のエッジは、凸凹になる傾向がある。
カラーセル圧縮(CCC)と呼ばれるBTCの単純拡張方式は、非特許文献2により提示された。画像ブロックごとに2つの8ビットグレイスケール値を使用する代わりに、カラーパレットに対するインデックスとして、2つの8ビット値が採用される。このパレットは、R成分、G成分及びB成分の各々に対して8ビットにより表現される256色を含む。そこで、8ビットインデックスは、パレットの中の1つの(24ビット)色を指示する。これにより、2bppで画像を圧縮できる。しかし、これには、パレットにおけるメモリルックアップが必要である。加えて、パレットのサイズが制限される。CCC方式も、大きな色の「ジャギー」を発生させ、1つの画像ブロックの中に3つ以上の色が存在する場合の符号化は不完全になる。
特許文献1の中で、Iourcha他は、CCCの拡張であると考えることができるS3TC(S3 Texture Compression)又はDXTC(DirectX Texture Compression)と呼ばれるテクスチャ圧縮方式を開示する。画像は、4画素×4画素の複数の画像ブロックに分解される。そのような各画像ブロックは、64ビットのビットシーケンスに符号化され、その結果、圧縮率は4bppとなる。64ビットシーケンスは、2つの基本色又は色コードワード(それぞれ16ビット)と、画像ブロック中の画素ごとに1つのインデックスを含む2ビットインデックスの32ビットシーケンスとを含む。復号化中、4色のカラーパレットが生成される。パレットの最初の2つのRGB(赤、緑及び青)色は、2つの基本色(コードワード)に対応する。次に、RGB空間の基本色の間に位置する2つの追加色が、それらの基本色から補間される。そこで、各2ビットインデックスは、画素ごとに、その画素に対して使用されるべきパレットの4つの色のうちの1つを識別する。
S3TC方式は、コンピュータ端末に対してかなり適切に機能するが、移動ユニット及び他のシンクライアントには十分に適応しない。通常、そのような移動ユニットは、せいぜい16ビット又は32ビットのメモリバスを有するにすぎない。従って、移動ユニットにおいてS3TCが実現される場合、1つの画像ブロックの64ビット圧縮バージョンを読み出すために、少なくとも2回、最高4回のメモリアクセスが要求される。更に、カラーパレットの2つの追加色の補間中に、1/3及び2/3を乗算する演算が実行されるが、これはハードウェアにおいては理想的ではない。また、S3TCを使用する圧縮は、少なくとも移動端末では相対的に長い時間を必要とする。
非特許文献3は、特に移動電話をターゲットとするPOOMAと呼ばれる異なるS3TCを開発した。POOMAの場合、3画素×2画素の画像ブロックが32ビットに符号化されるので、圧縮率は5.33bppである。画像ブロックの符号化32ビット表現は、通常は最良でも32ビットである移動電話のメモリバスに適合する。従って、S3TCの2アクセスと比較して、ただ1回のメモリアクセスを使用して1つの画素をレンダリングできる。POOMAは、2つの基本色を使用するが、基本色の間で補間される追加色は1つのみであるので、カラーパレットは3色である。
POOMAの大きな欠点は、3×2画素のブロックサイズである。その結果、特定の画素又はテクセル(テクスチャ要素)に対するブロックアドレスの計算の際に、3による除算が必要になる。これは、ハードウェアの設計上、理想的ではない。更に、グラフィックスにおけるテクスチャ(画像)の幅及び高さは、通常、2の累乗である。従って、ブロック幅が3であるのは不都合である。S3TCに関しては、特に、移動端末で実現された場合、POOMAを使用する符号化は、相対的に長い時間を要する。
非特許文献4は、移動電話のMBXグラフィックスハードウェアプラットフォームにおいて使用される画像符号化方式を開示する。この方式は、2つの低解像度画像を使用し、一方の画像は、通常、元の画像の低域フィルタ処理バージョンである。復号化中、それら2つの画像の双線形拡大(アップスケーリング)が作成される。各画素は、それら2つのアップスケール画像の間のブレンド係数を更に格納する。各画像ブロックを符号化するために64ビットが使用され、2bpp及び4bppの圧縮率が説明される。隣接する画像ブロックからの情報が必要とされるため、復号化は複雑になる。
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 米国特許第5,956,431号公報 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
本発明は、従来の構成のこれらの欠点及び他の欠点を克服する。
本発明の一般的目的は、効率のよい画像処理を提供することである。
本発明の別の目的は、効率のよい画像符号化及び画像復号化を提供することである。
本発明の更に別の目的は、メモリ容量及びメモリ帯域幅が少ないシンクライアントにおいて使用するのに適する画像符号化及び画像復号化を提供することである。
本発明の別の目的は、3次元(3D)グラフィックス及び画像に適合する画像符号化及び画像復号化を提供することである。
これらの目的及び他の目的は、添付の特許請求の範囲により定義されるような発明により達成される。
簡単に言えば、本発明は、画像を符号化(圧縮)し、符号化(圧縮)画像を復号化(伸張)するという形態をとる画像処理を含む。
本発明によれば、符号化されるべき画像は、複数の画像要素(画素又はテクスチャ要素、テクセル)から構成される複数の画像ブロックに分解される。1つの画像ブロックは、8つの画像要素を含み、m=3−n、及びn=0,1,2,3とするとき、2×2画像要素のサイズを有するのが好ましい。ブロック中の各画像要素は、1つの色、例えば、12ビットRGB(赤、緑、青)色により特徴付けられる。次に、画像ブロックは符号化される。
この非可逆ブロック符号化において、画像ブロックに対して色コードワードが判定される。色コードワードは、画像ブロックの画像要素の色の表現である。好ましい表現は、ブロック中の画像要素の色の平均値であり、これが12ビット(RGB色の3つの色成分の各々に対して4ビット)に量子化される。従って、1つの画像ブロックに対して、すなわち、画像ブロックの全ての画像要素に対して全く同一の色コードワード(すなわち、色表現)が生成される。その後、画像ブロックに対して輝度コードワードが提供される。この輝度コードワードは、(復号化中に)画像ブロック中の画像要素の輝度を変更又は変調するために使用される複数の輝度変更子から成るセットの表現である。輝度コードワードが提供された後、画像ブロック中の画像要素の輝度表現が選択される。そのような各輝度表現は、輝度変更子セットからの1つの輝度変更子と関連する。言い換えれば、輝度表現により、ブロックの特定の1つの画像要素に対してセットのどの輝度変更子を使用すべきかを識別できる。
その結果得られる符号化画像ブロックは、好ましくは12ビットの色コードワードと、好ましくは4ビットの輝度コードワードと、好ましくは8×2=16ビットの輝度表現のシーケンスとを含む。従って、1つの符号化画像ブロックのサイズは、わずか32ビットであり、画素(画像要素)ごとに4ビットの圧縮率が得られる。この32ビットという小さなサイズは、通常16ビット又は32ビットのメモリバスを有する移動ユニット及び移動電話などのシンクライアントに十分に適応する。その結果、メモリの記憶場所から符号化画像ブロックを読み出すために必要とされるメモリアクセスの回数は、わずか1回、最悪でも2回である。
本発明の好ましい一実施形態においては、輝度コードワードは、輝度変更子セットの識別を可能にする輝度インデックスである。このインデックスは、いくつかの異なる輝度変更子セットを含むテーブル又はコードブックの中の1つのセットを識別又は指示できるであろう。各セットは、4つの(数学的)相補変更子値を含むのが好ましい。そのような場合、テーブルに格納される変更子セットは、それぞれ2つの異なる輝度変更子値を含むだけでよく、それらの値からセットの他の2つの(相補)値を計算できる。加えて、輝度テーブルは、徐々に変化する表面の表現を可能にするのに適する小さな輝度変更子値を含むセットと、鮮鋭なエッジの表現を可能にするのに適する大きな輝度変更子値を含むセットの双方を含むのが好ましい。
復号化中、復号化されるべき符号化画像ブロックは、例えば、メモリの記憶場所から識別され、取り出される。正しい符号化画像ブロックが識別されると、輝度変更子セットが提供される。この変更子セットは、符号化画像ブロック中の輝度コードワードに基づいて提供される。このセットの提供は、輝度コードワードによって、複数の変更子セットを含む輝度テーブルから1つの輝度変更子セットを識別することにより実行されるのが好ましい。
その後、画像ブロックの画像要素のうちの少なくとも1つに対して、色表現が生成される。この色生成は、符号化ブロック表現の中の色コードワードに基づいて実行される。次に、復号化されるべき画像要素に対して使用される輝度変更子が選択される。変更子値は、その画像要素と関連し且つ符号化画像ブロックの表現シーケンスの中で見出される輝度表現に基づいて、提供された変更子セットから選択される。正しい輝度変更子値が選択された後、画像要素の輝度は、この値によって変更される。
輝度変更子の選択及び輝度の変更は、正しい符号化画像ブロックにおいて復号化されるべき全ての画像要素に対して実行されるのが好ましい。次に、復号化されるべき画像要素を含む全ての画像ブロックに対して、ブロック復号化が繰り返されるのが好ましい。その後、復号化された画像要素及び画像ブロックに基づいて、元の画像又はその一部の復号化表現を生成できる。
色表現は、色コードワードの3つの4ビット色成分を3つの8ビット成分に拡張することにより生成されるのが好ましい。その結果得られた24ビット色は、復号化される画像ブロックの画像要素に割り当てられる。画像要素の輝度は、各色成分に輝度変更子を加算又は乗算することにより変更されるのが好ましい。あるいは、各色成分は輝度変更子によって変調される。その後、得られた輝度変更済色成分は、最小閾値と最大閾値との間にクランプされる。
本発明の画像符号化及び画像復号化は、1D画像、2D画像、3D「合成」画像、写真、テキスト、ゲーム、3Dマップ、3Dシーン、3Dメッセージ、例えば、動画メッセージ、スクリーンセーバ、マンマシンインタフェース(MMI)などを含むいくつかの異なる種類の画像に適用可能である。
符号化画像ブロックのサイズが小さい(32ビット)ため、本発明は、メモリ容量及びメモリ帯域幅が限定されるシンクライアントに適する。更に、符号化の速度が速いので、クロック周波数の低い端末でも符号化を実行できる。また、例えば、若干の規格コンポーネントを使用するハードウェアなどでも、復号化を極めて簡単に実現できる。
本発明は、次のような利点を提供する。
− クロミナンス成分よりルミナンス成分のほうがよく保存されるので、人間の視覚系統に整合させるのに適する。
− 種々の画像の種類に対して、高画質(ピーク信号/雑音比)を示す。
− 復号化のハードウェア実現が極めて簡単である。
− 符号化が非常に速いため、クロック周波数の低い端末でも実現が可能である。
− コンピュータにおいて、実現可能な速度で徹底した符号化が可能である。
− 符号化画像データは、メモリ容量及びメモリ帯域幅が限定されるシンクライアントに適するサイズを有する。
以下の本発明の実施形態の説明を読むことにより、本発明により提供される他の利点が理解されるであろう。
本発明は、その上記以外の目的及び利点を含めて、添付の図面と共に以下の説明を参照することにより最もよく理解されるであろう。
図中、同一の図中符号は、対応する要素又は類似する要素に対して使用される。
本発明は、画像処理及び図形処理に関し、特に、画像を符号化又は圧縮すること及び符号化(圧縮)画像を復号化又は伸張することに関する。
一般に、本発明によれば、画像符号化中、画像は複数の画像ブロックに分解又は分割される。そのような各画像ブロックは、特に、1つの色を有する複数の画像要素から構成される。次に、画像の符号化表現を生成するために、画像ブロックは符号化される。
この後、符号化画像プリミティブ又は符号化図形プリミティブをレンダリングする場合、例えば、画面上に表示する場合に符号化画像ブロックの関連する画像要素は識別され、復号化される。次に、それらの復号化画像要素は、元の画像プリミティブ又は図形プリミティブの復号化表現を生成するために使用される。
本発明は、ゲーム、3Dマップ、3Dシーン、3Dメッセージ、例えば、動画メッセージ、スクリーンセーバ、マンマシンインタフェース(MMI)などの3次元(3D)グラフィックスと共に使用するのに適するが、それらに限定されない。従って、本発明は、1次元(1D)画像又は2次元(2D)画像などの他の種類の画像又は図形を符号化するために採用されることも可能である。
3D図形処理においては、通常、いくつかの三角形が作成され、それらの三角形の角の対応する画面座標が判定される。各三角形の上に、画像(又は画像の一部)、すなわち、いわゆるテクスチャがマッピング(「のり付け」)される。しかし、テクスチャがメモリから取り出される場合、テクスチャの管理は、テクスチャの格納に利用されるメモリに関しても、メモリアクセス中のメモリ帯域幅に関しても、グラフィックシステムにとって大きな経済的負担である。これは、メモリ容量及びメモリ帯域幅が限定される移動ユニット及び移動電話などのシンクライアントに関して特に問題である。そのため、多くの場合に、テクスチャ又は画像符号化方式が採用される。そのような方式においては、通常、テクスチャは、複数のテクセルから構成される複数の画像ブロックに分解又は分割される。次に、画像ブロックは符号化され、メモリに格納される。尚、符号化画像ブロック(画像ブロックの符号化バージョン)のサイズは、対応する画像ブロックの未符号化バージョンのサイズより小さい。
本発明において、「画像要素」という表現は、画像ブロック又は画像ブロックの符号化表現の中の1つの要素を表す。この画像ブロックは、画像又はテクスチャの一部に対応する。従って、本発明によれば、1つの画像要素は、(1D、2D又は3D)テクスチャの1つのテクセル(テクスチャ要素)であるか又は(1D、2D又は3D)画像の1つの画素であることが可能である。一般に、画像要素は、色値などのいくつかの画像要素特性により特徴付けられる。更に、以下の説明中、「画像」という用語は、写真、ゲーム型テクスチャ、テキスト、図面などを含めて(それらに限定されない)、本発明によって符号化及び復号化することが可能である1D、2D又は3D画像、あるいはテクスチャを示すために使用される。
図1は、本発明に従って画像を符号化する(非可逆)方法を示す。第1のステップS1において、画像は複数の画像ブロックに分解又は分割される。そのような各画像ブロックは、複数の画像要素を含む。本発明の好ましい一実施形態では、1つの画像ブロックは、8つの画像要素(画素又はテクセル)を含み、m=3−n及びn=0,1,2,3とするとき、2×2画像要素のサイズを有する。更にはnが1又は2であることが好ましい。図2及び図3は、本発明に従って8つの画像要素610を有する画像ブロック600の2つの例を概略的に示す。図2においては、高さは2画像要素610であり、幅は4画像要素610であり、すなわち、m=1及びn=2である。これに対し、図3の画像ブロック600の場合には、m=2及びn=1である。図1に戻ると、ステップS1において、画像ブロック全体は、(重複しない)画像ブロックに分解されるのが好ましい。しかし、アプリケーションによっては、画像の一部のみが符号化され、従って、その部分のみが画像ブロックに分解される。
続くステップS2〜S4は、画像ブロックの符号化又は圧縮を実行する。まず、ステップS2において、画像ブロックに対して色コードワードが判定される。この色コードワードは、画像ブロック中の画像要素の色の表現である。好ましい一実施形態では、色コードワードは、ブロックの画像要素の平均色の表現である。色は、RGB(赤、緑、青)色、YUV空間の色又はYCrCb空間の色、あるいは画像及び図形の処理及び管理において使用される他の占有色空間のいずれであってもよい。色コードワードは、画像と同一の色フォーマット(空間)にあるのが好ましい。しかし、場合によっては、画像を異なる色フォーマットに変換すること、すなわち、色コードワードが第1の色空間にあり、元の画像は第2の異なる色空間にあることが有用であろう。色コードワードは、12ビット色表現シーケンスであるのが好ましい。例えば、RGB色は、赤色成分に対して4ビット、緑色成分に対して4ビット、青色成分に対して4ビットを含むことが可能である。これに対応して、YUV色コードワードは、3つの異なる成分に対して、6ビット、3ビット、3ビットをそれぞれ含むことができる。
尚、1つの画像ブロックに対して、すなわち、画像ブロックの全ての画像要素に対して、全く同一の色コードワード(すなわち、色表現)が生成される。
その後、ステップS3において、輝度コードワードが提供される。この輝度コードワードは、画像ブロック中の画像要素の輝度を変更するために使用される(復号化中に)複数の輝度変更子から成るセットの表現である。
本発明の好ましい一実施形態においては、輝度コードワードは、輝度変更子セットの識別を可能にする輝度インデックスである。このインデックスは、いくつかの異なる輝度変更子セットを含むテーブル又はコードブックの中のセットを識別又は指示できる。各セットは、2つ以上の輝度変更子値、好ましくは少なくとも4つの変更子値を含む。更に、1つのセットの変更子値は、数学的相補値であるのが好ましい。すなわち、各セットは対称であるのが好ましい。例えば、a及びbを正の整数とし、a>bであるとき、考えられる輝度変更子セットは、[−a,−b,b,a]である。
輝度テーブルは、徐々に変化する表面の表現を可能にするのに適する小さな輝度変更子値を含む複数のセットを含むのが好ましい。加えて、テーブルは、鮮鋭なエッジの表現を可能にするのに適する大きな輝度変更子値を含む複数のセットを更に含むのも好ましい。
ランダム値で開始し、当業者にはよく知られているLBGアルゴリズム(Linde, Buzo及びGray)(非特許文献5)、シミュレーテッドアニーリング法及び座標検索のバージョンなどのいくつかの異なる最適化方式及び最適化アルゴリズムを使用して、それらの値を最適化することにより、テーブル中のセットの実際の輝度変更子値を見出すことができる。例えば、写真、ゲーム型テクスチャ、テキストなどの少数の異なる種類の画像をトレーニングデータとして使用できる。
輝度テーブルのハードウェア実現形態を更に安価にするために、先に述べたように、セットの輝度変更子を強制的に対称にし、且つ/又は所定のセットの輝度変更子を1つの係数、例えば、2により変更された別のセットの輝度変更子のコピーにすることも可能である。
表1は、各セットに4つの変更子値を含む輝度変更子の16個のセットを含む輝度テーブルの現時点で好ましい例を示す。
Figure 0004444967
表1において、輝度変更子のセット9〜16は、セット1〜8のコピーを係数2で乗算したものである。
輝度テーブルが、多くとも16個の異なる輝度変更子のセットを含む場合、輝度コードワードは、テーブルの(16)セットのうちの1つのセットを識別する4ビットインデックス(0000bin − 1111bin)、例えば、コードワード0000bin(0000 2進法)に対して[−8,−2,2,8]であるのが好ましい。セット中の変更子値が慎重に選択されているため(対称的なセットであり、セットの半分は、残り半分の係数2である)、16個の変更子値のみを使用して、表1全体を再構成でき、そこから残る48個の値を計算できる。
しかし、本発明は、表1の使用に限定されず、他の輝度変更子セット及び他の輝度変更子値を含む他のテーブルも使用できる。更に、テーブル中のセット数が17個以上又は15個以下である場合には、輝度コードワードのサイズを変えなければならないであろう。例えば、テーブルが2つ(3〜4個、5〜8個又は17個以上)の輝度変更子セットを含むのであれば、コードワードのサイズを1ビット(2ビット、3ビット又は5ビット以上)に限定することが可能である。更に、セット当たりの輝度変更子値の数は、4以外であっても良い。例えば、セットごとに5つの値が使用されてもよく、その場合の例として、[−8,−2,0,2,8]が与えられる。テーブル中のセットの輝度値は、先に述べたように、いくつかの種類の異なる画像をトレーニングデータとして使用して判定される。しかし、1つの特定の画像の種類のみを符号化する場合には、その画像の種類に対応するトレーニングデータを使用して、すなわち、特定の画像の種類専用の輝度テーブルを提供することにより、変更子値を判定できる。また、1つの特定の画像に適応する輝度変更子値を含む輝度テーブルを提供することも可能である。そのような場合、すなわち、画像又は画像の種類に専用のテーブルの場合、テーブルの輝度変更子値を符号化画像ブロックの圧縮ファイルに含めるか又は輝度変更子値をそれらと関連付けることが必要になるであろう。
加えて、輝度コードワードは、テーブル中の1つの輝度変更子セットを指示するインデックス又はポインタである必要はなく、実際には、輝度変更子セット自体であってもよい。例えば、輝度コードワードは、2及び8などの2つの変更子値を含み、その場合、それら2つの値から、−2及び−8などの他の変更子値を判定できる。
尚、画像ブロックに対しては、全く同一の輝度変更子セットが使用される。
ステップS3において、輝度コードワードが提供された後、次のステップS4は、画像ブロック中の画像要素に関して輝度表現を選択する。そのような各輝度表現は、ステップS3で提供された輝度変更子セットからの1つの輝度変更子値と関連付けられる。言い換えれば、輝度表現は、ブロックの1つの特定の画像要素に対してセットのうちのどの輝度変更子を使用すべきかの識別を可能にする。
−8,−2,2,8のような4つの変更子値を含む輝度変更子セットの場合、輝度表現は、それら4つの値のうちの1つを識別する2ビットシーケンスであってもよい。例えば、11binは−8に対応し、10binは−2に対応し、00binは2に対応し、01binは8に対応する。セットあたりに使用される輝度変更子値の数が5個以上である場合には、正しい変更子を識別するために、輝度要素ごとに3ビット以上が要求される。
ステップS4は、画像ブロック中の全ての画像要素に対して繰り返されるのが好ましい(線1により概略的に示される)。ステップS2〜S4の符号化の結果は、符号化画像ブロック、更に厳密には画像ブロックの符号化(圧縮)表現である。そのような符号化ブロック表現700は、図4に示される。表現700(符号化画像ブロック)は、色コードワード710、輝度コードワード720、及び輝度表現のシーケンス又はビットマップ730(ブロック中の画像要素ごとに1つの輝度表現が存在するのが好ましい)を含む。尚、符号化画像ブロック700の色コードワード710、輝度コードワード720、及び輝度表現シーケンス730の相互順序は、図示されている順序と異なっていてもよい。
画像ブロックが8つの画像要素を含み(例えば、図2及び図3を参照)、各輝度表現が2ビットである場合、シーケンス730のサイズは16ビットである。更に、色コードワード及び輝度コードワードの対応するサイズが、それぞれ、12ビットと4ビットであると仮定する。従って、画像ブロックの符号化表現700の全体のサイズは32ビットになり、画素(画像要素)ごとに4ビット(bpp)の圧縮率が得られる。表現700のこのような小さな(32ビット)サイズは、通常は16ビット又は32ビットのメモリバスを有する移動ユニットなどのシンクライアントに適応する。その結果、符号化表現700を読み出すために必要とされるメモリアクセスは、わずか1回、最悪でも2回である。
図1に戻ると、ステップS2〜S4は、ステップS1の分解中に提供される全ての画像ブロックに対して繰り返されるのが好ましい(線2により概略的に示される)。その結果は、符号化画像ブロックのシーケンス又はファイルである。得られる符号化画像ブロック(画像ブロックの符号化表現)は、それらがステップS1のブロック分解の際に分解されたのと同一の順序で、左から右及び上から下へファイルに配列されることが可能である。その後、この方法は終了する。
その後、符号化画像は、後で画像がレンダリング、例えば、表示されるまで、メモリに提供され、格納されてもよい。更に、符号化画像は、別のユニットへの(無線又は有線)送信のために、符号化ブロック表現から成る信号として送信機へ提供されてもよい。
図5は、図1のステップS2の一実施形態を更に詳細に示す。ステップS10において、画像ブロック中の画像要素の平均色が判定される。以下の説明中、画像の1つの画素又はテクセル(画像要素)の色は、24ビットのRGB色、すなわち、8ビットの赤色成分、8ビットの緑色成分、及び8ビットの青色成分により表現されると仮定する。しかし、本発明は、この特定の例に限定されず、画素及びテクセルのどのような色表現にも適用可能である。そこで、平均色
Figure 0004444967
は、次のように判定される。
Figure 0004444967
式中、Ri, Gi, Biは、画像要素iのR, G, B成分であり、Nは、画像ブロック中の画像要素の総数である。
ステップS10において平均色
Figure 0004444967
が判定された後、次のステップS11は、平均色を量子化する。(24ビット)平均色は、12ビットシーケンス(色コードワード)に量子化されるのが好ましい。言い換えれば、各8ビット平均成分は、4ビット平均成分に量子化される。例えば、平均色
Figure 0004444967
Figure 0004444967
のように計算される場合、4ビット量子化バージョン
Figure 0004444967
は、次の式から生成できる。
Figure 0004444967
すなわち、(12ビット)色コードワードとして、[A, 5, 1]hex=[1010, 0101, 0001]binを使用できる。次に、方法は、図1のステップS3に続く。
図6は、図1のステップS3及びS4の一実施形態を更に詳細に示す。ステップS20は、テーブルの異なる輝度変更子セット及びセットの異なる変更子値を検査し、そのような変更子セット及び変更子値の試験ごとに誤差値を計算する。それらの誤差値に基づいて、ステップS21において、最小の誤差値をもたらす変更子セット及びセット中の輝度変更子値が選択される。このことは、以下に更に詳細に説明される。その後、方法は終了する。
以下に、3つの異なる例と関連させて、画像ブロックの符号化を更に詳細に説明する。これらの例において、表1に対応する輝度テーブルが使用される。
<単純符号化>
本発明の本実施形態に従って画像ブロックを符号化するために、基本的には、正しい色コードワード及び正しい輝度変更子セットが選択される。この選択が実行された後、画像ブロック中の各画像要素の符号化は、セットの4つの輝度変更子の全てを試行し、誤差を計算することにより実行される。画像要素の元の(24ビット)色が(R, G, B)であり、色コードワード(量子化平均色、12ビット)が
Figure 0004444967
であり、選択された変更子セットが[−a,−b,b,a]であると仮定する。その場合、誤差値は、次のように判定される。
Figure 0004444967
式中、α∈[−a,−b,b,a]である。画像ブロック中の画像要素ごとに、誤差εを最小にするαが選択される。これは、画像要素の第1の変更子値の選択肢に対して誤差値を計算し、この第1の誤差値(及び選択された変更子値の選択肢)を格納することにより、実行される。その後、変更子値の異なる選択肢に対して、誤差値が計算される。次に、この誤差値は格納された値と比較される。誤差値が格納された値より小さい場合、格納された値は、この新たな誤差値と置き換えられ、この誤差値の計算に使用された変更子値も格納される。次に、変更子及びセットの全ての組み合わせに対して、この処理が繰り返される。
式(2)は、画像中の平均二乗誤差を最小にするので、ピーク信号/雑音比(PSNR)に関して最良の性能を与える。しかし、知覚に関しては、これが最良の結果をもたらすとは言えないであろう。いくつかの画素(画像要素)p1及びp2に関して、元の画像においてp1がp2より明るく見える場合、画像の復号化バージョンでは、p2がp1より明るく見える。これは、赤色成分、緑色成分、及び青色成分が、人間の視覚系統が輝度として知覚するものに等しい寄与を与えないためである。緑色成分は、輝度の知覚に不均衡な寄与を与えるため、緑色成分の近似は、赤色及び青色の近似より高い精度で(より正確に)表現されるべきである。その結果、次のような重み付き誤差値を採用できる。
Figure 0004444967
式中、WR、WG、及びWBは、色成分に対するそれぞれ異なる重みである。更に、WGは、WR及びWBより大きいのが好ましい。例えば、WR = 5/16、WG = 9/16、及びWB = 2/16、すなわち、WR = 0.299、WG = 0.587、及びWB = 0.114である。
この単純符号化においては、ブロック中の8つの画像要素の平均色を、色成分ごとに4ビットに量子化した値が、色コードワードとして使用される。次に、全数検索により、正しい輝度変更子セットが選択される。すなわち、テーブル中の16セットの全てが試行され、誤差値を最小にするセットが選択される。このためには、画像要素ごとに、16×4=64回の評価が要求される。重みがWR = 5/16、WG = 9/16、及びWB = 2/16である場合、整数演算が使用でき、符号化は高速になる。このような重みが選択された場合には、1.2GHzのPCラップトップにおいて、単純符号化を使用する128×128画素(画像要素)から成る画像の符号化は、約60msの時間を要する。
<全数符号化>
先に説明した単純符号化においては、単純に、画像ブロック中の画像要素の色の表現(色コードワード)として、量子化平均色が使用された。本発明による全数符号化の本実施形態では、色及び輝度変更子セット(変更子値を含む)の双方が選択される。すなわち、可能なあらゆる組み合わせが試行される。所定の画像要素に対して、輝度変更子セットの全4ビット及び輝度表現の2ビットの先の繰り返しに加えて色の全12ビットを通して更に繰り返しが追加実行され、その結果、合わせて218ステップとなる。単純圧縮の場合と同一のPCラップトップを使用すると、128×128画素の画像の符号化に約5分かかる。これは、ランタイムアプリケーションには長すぎるであろうが、オフライン符号化の場合には法外な長さではない。全数符号化の結果を上述の単純符号化の結果と比較すると、PSNRの差は、約1.5dBであることがわかる。視覚的には、単純符号化方式によって符号化された画像のいくつかの領域が色ずれを示すという点で、画像に差が生じる。グレイの領域にある個々の画像ブロックが、急にわずかな緑色の陰影を帯びる。その理由は、単純方式の場合、色コードワードのR成分、G成分、及びB成分が個別に量子化され、それが最適とは言えないことである。
<組み合わせ量子化>
単純符号化方式の場合、本発明の本実施形態は、(24ビット)平均色
Figure 0004444967
で開始するが、この平均色の色成分は、輝度成分、すなわち、輝度変更子セット及び輝度変更子値の選択肢と共に量子化される。
Rlow
Figure 0004444967
のすぐ下の4ビット量子化レベル又は値を示し、Rhigh
Figure 0004444967
のすぐ上の4ビット量子化レベル又は値を示す場合、
Figure 0004444967
となる。次のタスクは、Rlow又はRhighのいずれか一方として
Figure 0004444967
を選択することである。緑色成分及び青色成分についても、同じことが当てはまる。
まず、
Figure 0004444967
として、誤差値が計算される。
Figure 0004444967
これを次のように簡略化できる。
Figure 0004444967
式中、
Figure 0004444967
である。更に、α(輝度変更子)を自由に選択できる、すなわち、αは最適なα=−(δ+δ+δ)/3に等しいと仮定する。この最適なαを式(5)に代入し、簡略化すると、以下が得られる。
Figure 0004444967
式中、ξは、括弧内の式である。
しかし、赤色成分として、より高い値が選択された場合、すなわち、
Figure 0004444967
であり、
Figure 0004444967
であるという事実が使用された場合には、式(5)を次のように書き改めることができる。
Figure 0004444967
この場合の最適なα=−(δ+17+δ+δ)/3を代入することにより、上記の式を更に簡略化できる。
Figure 0004444967
これら2つの量子化色(色コードワード)(Rlow, Glow, Blow)又は(Rhigh, Glow, Blow)のいずれが最良であるかを判定するために、すなわち、どちらの量子化色が最小の誤差値をもたらすかを判定するために、式(8)の大括弧の中の余分な式が検討される。言い換えると、17+2δ−δ−δ<0であるならば、(Rhigh, Glow, Blow)が選択されるべきであり、そうでない場合には、(Rlow, Glow, Blow)が選択される(17+2δ−δ−δ=0の場合、いずれのコードワードを選択してもよい)。次に、3つの色成分に対して、低量子化及び高量子化の全ての可能な組み合わせに関して、すなわち、平均色の全ての近傍量子化色に関して、この手順が繰り返される。その結果を、表2に示す。
Figure 0004444967
尚、ξは、明示して計算される必要はなく、使用する量子化レベル(色コードワード)を選択するために、表2の大括弧の中の式(誤差表現)のみが計算される必要がある。尚、色コードワード(Rlow, Glow, Blow)、及び(Rhigh, Ghigh, Bhigh)は、同一の誤差値を与える。これは、どのようなα(輝度変更子値)にも到達できるという仮定の下で言えることである。しかし、現実には、αは、使用される変更子セットの輝度変更子値、例えば、表1の変更子値に限定される。表1によれば、より小さな変更子値(α)は、より大きな値と比較して高い精度で指定されることが可能である。これは、
Figure 0004444967
が(Rlow, Glow, Blow)より(Rhigh, Ghigh, Bhigh)に近い場合、(Rlow, Glow, Blow)より(Rhigh, Ghigh, Bhigh)を選択するほうがよく、逆に、
Figure 0004444967
が(Rhigh, Ghigh, Bhigh)より(Rlow, Glow, Blow)に近い場合には、(Rhigh, Ghigh, Bhigh)より(Rlow, Glow, Blow)を選択するほうがよいことを意味する。本発明の本実施形態の組み合わせ量子化は、単純符号化と比較して約1dBだけPSNRを向上する。従って、PSNRは、(最適な)全数符号化方式により得られる結果より、約0.5dB低いだけである。総符号化時間は、単純符号化と比較して測定可能なほど変化しなかった。すなわち、128×128画素の画像は、この場合も、約60msで圧縮される。
また、式(3)からの知覚重み付け誤差尺度を使用して、表2に対応する表を作成することも可能である。その場合、最適なαは、
Figure 0004444967
に対して
Figure 0004444967
である。Rlow, Glow, Blow、及びRhigh, Ghigh, Bhighの誤差値を0に「正規化」する(基本的には、表2のR、G及びBの全ての異なる可変部に対して、誤差値εから2/3ξを減算することに相当する)と、以下のような正規化誤差値の表が得られる。尚、表3のRlow, Glow, Blow、及びRhigh, Ghigh, Bhigh以外の色コードワードに対する正規化誤差値は、表2の大括弧の中の式に相当する。
Figure 0004444967
次に、「正規化」誤差値又は表現を比較し、最小の誤差値をもたらす近傍量子化色を色コードワードとして選択することにより、近傍量子化色(X, Y, Zがlow又はhighをそれぞれ独立して表す場合、RXGYBZ)のうちのどれを色コードワードとして使用すべきかを判定できる。
近傍量子化色の中から色コードワードを選択する別の方法では、そのような量子化色の各々によって画像ブロックを圧縮し、最小の誤差と関連する量子化色を選択する。しかし、そのような方式によれば、適切な色コードワードを判定するためにブロックを8回圧縮しなければならないため、1度しかブロック圧縮しない表2又は表3の誤差表現を使用する単純な方法と比較して、処理速度は幾分遅くなる。
図7は、本発明に従って元の画像の符号化画像又は符号化バージョンを復号化する方法のフローチャートを示す。符号化画像は、基本的には、図4の表現700のような画像ブロックのいくつかの符号化表現を含む。それらの符号化ブロック表現は、先に図1に関連して説明した画像符号化方法により生成されるのが好ましい。
一般に、方法は、復号化する符号化画像ブロックを識別することにより開始する。元の画像の復号化表現を生成するために、符号化画像の全ての符号化画像ブロックを復号化することは可能である。あるいは、元の画像の一部のみをアクセスすべき場合もある。そのため、選択された数の画像ブロックのみが復号化される必要がある(より厳密には、いくつかの画像ブロックの選択された量の画像要素が復号化されなければならない)。
正しい符号化画像ブロック(画像ブロックの正しい符号化表現)が識別されると、ステップS30では、1つの輝度変更子セットを提供する。この変更子セットは、符号化表現の中の輝度コードワードに基づいて提供される。このセットの提供は、複数の変更子セットを含むテーブル、例えば、上記の表1から輝度コードワードによって1つの輝度変更子セットを識別することにより実行されるのが好ましい。しかし、アプリケーションによっては、輝度コードワード自体が変更子セットを含み、テーブルルックアップが不要になる場合もある。
次のステップS31において、画像ブロックの画像要素のうちの少なくとも1つ(すなわち、復号化されるべき画像要素)に対して、色表現が生成される。この色生成は、符号化ブロック表現の中の色コードワードに基づいて実行される。ステップS32において、復号化されるべき画像要素に対して使用される輝度変更子が選択される。変更子値は、ステップS30で提供された変更子セットから、画像要素と関連し且つ符号化ブロック表現の表現シーケンスの中で見出される輝度表現に基づいて選択される。ステップS32において、正しい輝度変更子値が選択された後、ステップS33では、画像要素の輝度がこの値によって変更又は変調される。本発明による輝度変更は、(可能であれば重み付けされた)輝度変更子値により色表現の全ての色成分を変更すること、例えば、加算又は乗算することを表す。
ステップS32及びS33は、画像ブロック中のいくつかの画像要素に対して実行される(線3により概略的に示される)。本発明によれば、アプリケーションによって、特定の1つの画像ブロックから1つの画像要素のみが復号化されること、特定の1つの画像ブロックの複数の画像要素が復号化されること、及び/又は特定の1つのブロックの全ての画像要素が復号化されることが予想される。
次に、ステップS30〜S33は、復号化されるべき画像要素を含む全ての画像ブロックに対して繰り返されるのが好ましい(線4により概略的に示される)。これは、ステップS30〜S33のループにおいて一度実行可能であるが、多くの場合、異なる符号化画像ブロックに対して数回実行されること及び/又は1つの特定の符号化画像ブロックに対して数回実行されることも可能であることを意味する。
ステップS34において、復号化された画像要素及び画像ブロックに基づいて、元の画像又はその一部の復号化表現が生成される。尚、アプリケーションによっては、復号化表現の単一の画素をレンダリングするために、いくつかの画像要素が復号化されなければならない。例えば、三線形補間中には、8つの隣接する画像要素が復号化され、双線形補間の場合には、対応する画像要素の数は4つである。このことは、当業者にはよく知られている。その後、方法は終了する。
図8は、図7のステップS30及びS31の一実施形態を更に詳細に示す。ステップS40において、輝度コードワードによって、正しい輝度変更子セットが識別され、輝度テーブルから選択される。輝度テーブルに格納された輝度変更子セットが変更子値の第1のサブセット、例えば、[a,b]を含む場合、輝度変更子値の第2のサブセット、例えば、[−a,−b]を第1のサブセットの値から判定できる。次のステップS41において、好ましくは12ビットである色コードワードの量子化色は、好ましくは24ビットに拡大又は拡張される。その結果、RGB色の場合、色コードワードの各量子化4ビット色成分は、8ビット色成分に拡張される。この色拡張は、256種類の色を伴う実現形態の場合、量子化4ビット色成分に17を乗算することにより実現されてもよい((256−1)/(16−1)=17)。これは、拡張された8ビット色ワードの初めの(先頭の)4ビット及び最後の(下位の)4ビットに対して4ビットパターンを繰り返すのと同じことである。言い換えれば、4ビット色成分1010binは、1010 1010binに拡張されることになる。これに対し、色コードワードが15ビット(R、G、Bの成分ごとに5ビット)を含む場合には、拡張は、30ビット色への拡張になるであろう。これは、(5ビット)色成分に33((1024−1)/(32−1)=33)を乗算するか、又は拡張された10ビット色ワードの先頭の5ビット及び下位の5ビットに対して5ビットパターンを繰り返すことにより実現できる。ステップS42において、拡張色は、復号化される画像ブロックの画像要素に割り当てられる。次に、方法は、図7のステップS32へ続く。
図9は、図7のステップS33の一実施形態を更に詳細に示す。ステップS50において、識別され、選択された輝度変更子値が拡張色に加算される。従って、この変更子値は、画像要素の色の全ての成分(RGB色の場合、3つの成分の全て)に加算される。これは、全ての色成分への変更子値の単純な加算として実現される。しかし、アプリケーションによっては、変更子値を成分に加算する前に、変更子値に重み付けするのが好ましい。そのような場合、異なる色成分に対して異なる重みを採用できる。別の実施形態においては、単純加算以外の種類の変更、例えば、乗算、XOR又は別の形の変更を採用できるであろう。そのような場合には、全く同一の輝度変更子値を使用して、拡張色の全ての成分に対して同一の変調が実行されるが、この値は成分ごとに異なる重みを付加されてもよい。次のステップS51において、得られた輝度変更色成分値は、最小色閾値と最大色閾値との間にクランプされる。例えば、輝度変更子値(可能であれば重み付けされた)を色成分に加算した後、得られた値が最小閾値より小さい場合、その値は最小閾値の値にクランプされる。これに相応して得られた値が最大閾値より大きい場合には、その成分に対して、得られた値の代わりに閾値の値が使用されるべきである。色の種類が256である場合、限定的な意味を持たない最小閾値と最大閾値の例は、それぞれ0と255である。1024色の場合の対応する閾値は、0と1023である。その後、方法は、図7のステップS34へ続く。
以下の例によって、符号化画像ブロックの復号化を更に説明する。この例では、図4に示されるような符号化ブロック表現及び図2に示されるような画像ブロックを想定する。
画像ブロックの符号化表現は、1010 0101 0001 0111 11 01 10 00 10 01 00 00bin(a517D890hex)に従い、この場合、ビット0〜3はブロックの画像要素の色コードワードの赤色成分であり、ビット4〜7は色コードワードの緑色成分であり、ビット8〜11は色コードワードの青色成分であり、ビット12〜15は輝度コードワードであり、ビット16〜31は輝度表現のシーケンスである。
次に、画像ブロックの色表現を生成するために、色コードワードが復号化(拡張)される。色コードワードにおける各色成分は4ビットであるが、17(17 = 11hex)を乗算することにより8ビットに拡張される。これは、8ビット語の先頭の4ビット及び下位の4ビットの双方に対して4ビットパターンを繰り返すことと同じである。すなわち、
赤:ahex × 11hex = aahex ←→ 1010 1010bin ←→ 170
緑:5hex × 11hex = 55hex ←→ 0101 0101bin ←→ 85
青:1hex × 11hex = 11hex ←→ 0001 0001bin ←→ 17
次に、この拡張色は、画像ブロックの画像要素に割り当てられる。その結果、以下のようになる。
Figure 0004444967
輝度コードワードに基づいて、表1から使用すべき正しい輝度変更子セットが選択される。表1からわかるように、0111binの輝度コードワードは、輝度変更子[−127,−42,42,127]に対応する。
輝度表現のシーケンスにより、下記の式に従って、異なる画像要素に対してそれら4つの変更子値のうちのどれを使用すべきかを識別できる。
Figure 0004444967
第1の輝度表現は、11binであり、これは、第1の輝度変更子値である-127を第1の画像要素の3つの成分全てに加算すべきであることを意味する。すなわち、下記の通りである。
Figure 0004444967
得られた成分は、次に、0と255の間にクランプされ、その結果、(43, 0, 0)となる。このとき、部分的に復号化された画像ブロックは、下記の表の通りである。
Figure 0004444967
次の画像要素に対しては、輝度表現は、01binである。すなわち、3つの色成分全てに輝度変更子127が加算されるべきである。クランプ後の結果は、(255, 212, 144)である。ブロック中の全ての画像要素に対してこの手順を繰り返すことにより、以下に示される最終的な復号化画像ブロックが作成されるであろう。
Figure 0004444967
本発明による画像符号化(画像ブロック符号化)及び画像復号化(画像ブロック復号化又は処理)の方式は、汎用データ処理システム、例えば、画像を処理し且つ/又はレンダリングするように構成されたユーザ端末又は他の装置において実行可能である。そのような端末は、コンピュータであってもよい。しかし、本発明は、パーソナルデジタルアシスタンス(PDA)、移動ユニット及び移動電話などのシンクライアントに適する。通常、そのような端末は、メモリ容量及びメモリ帯域幅が限定されることを特徴とし、バッテリにより給電される。すなわち、電力の供給も制限される。本発明の符号化及び復号化は、共に、ハードウェア又はソフトウェア、あるいはハードウェアとソフトウェアの組み合わせにより非常に単純に実現でき、符号化画像ブロックはわずか32ビットの最大サイズを有するのが好ましいので、本発明をシンクライアントに適用することは好都合である。
図10は、移動ユニットにより代表されるユーザ端末100を示す。しかし、本発明は、移動ユニットに限定されず、他の端末及びデータ処理装置でも実現される。本発明に直接関連する移動ユニット100内部の手段及び要素のみが図示される。
移動ユニット100は、移動ユニット100内部で、画像データを含むデータを処理する(中央)処理装置(CPU)200を具備する。移動ユニット100には、画像データ及び図形データを管理するグラフィックシステム130が設けられる。特に、グラフィックシステム130は、接続する画面120又は他の表示装置に画像をレンダリング又は表示する。移動ユニット100は、データを格納する記憶装置又はメモリ140を更に具備する。このメモリ140には、画像データ、特に、本発明に従って符号化された画像データ(符号化画像ブロック)が格納されてもよい。画像ブロック全体のサイズが小さく(32ビット)、圧縮率が高い(4bpp)ため、メモリ容量が限定される移動ユニット100の場合であっても、画像データをメモリ140に効率よく格納できる。
移動ユニット100には、本発明による画像符号器210が設けられる。この符号器210は、画像又はテクスチャを画像(又はテクスチャ)の符号化表現に符号化するように構成される。先に説明したように、そのような符号化表現は、複数の復号化画像ブロックから成るシーケンス又はファイルを含む。この画像符号器210は、図示されるように、CPU200において実行されるソフトウェアとして提供されてもよい。あるいは、又はそれに加えて、符号器210は、移動ユニット100のグラフィックシステム130又はその他の場所に配置されることも可能であろう。
ブロック符号器210からの画像の符号化表現は、後に画像がレンダリングされるまで(メモリ)バス150を介してメモリ140に提供され、そこに格納されてもよい。あるいは、又はそれに加えて、符号化画像データは、入出力(I/O)ユニット110へ転送され、そこから他の外部端末又は外部装置へ(無線又は有線)送信されてもよい。このI/Oユニット110は、外部ユニットから画像データを受信することも可能である。この画像データは、画像符号器210により符号化されるべき画像又は復号化されるべき符号化画像データであってもよい。また、例えば、グラフィックシステム130に設けられた専用テクスチャメモリに、符号化画像表現を格納することも可能である。更に、専用テクスチャメモリに加えて又はその代わりに、例えば、グラフィックシステム130にあるテクスチャキャッシュメモリに、符号化画像の一部を(一時的に)格納することが可能であろう。
(メモリ)バス150が32ビットの最大帯域幅を有する場合、本発明の1つの符号化画像表現をメモリ140から取り出す又は読み出すために要求されるメモリアクセスは、1回である。しかし、バス150がそれより大きな帯域幅容量、例えば、64ビット又は128ビットを有する場合には、1回のメモリアクセスで複数の符号化画像表現を取り出すことができる。例えば、バス150が64ビットであり、画像ブロックサイズは図2に示される通りであると仮定する。画像ブロックが「順次積み重ねられる」と、1つの画像ブロックは、メモリ140内の後続画像ブロックと共に4×4平方の画像要素を形成する。しかし、ブロックが「並列」するように位置している場合には、画像ブロックは、次のブロックと共に2×8のボックスを形成する。当業者にはよく知られているような何らかの形態のテクスチャキャッシングシステムが採用される場合、所望の画像要素を発見する確率は、2×8のボックスと比較して4×4平方のほうが高いため、4×4平方がより好ましい。
移動ユニット100には、復号化画像表現を生成するために符号化画像を復号化する本発明による画像復号器220が設けられる。この復号化表現は、元の画像全体に対応してもよく、その一部に対応してもよい。画像復号器220はグラフィックシステム130に復号化画像データを提供し、グラフィックシステム130は、通常、データが画面120にレンダリング又は提示される前にデータを処理する。画像復号器220は、図示されるように、グラフィックシステム130に配置されることが可能である。あるいは、又はそれに加えて、復号器200は、CPU200又は移動ユニット100の他の場所において実行されるソフトウェアとして提供されてもよい。
移動ユニット100は、図示されるように、画像符号器210及び画像復号器220の双方を具備することができる。しかし、端末100によっては、画像符号器210のみを含むことも可能である。そのような場合、符号化画像データは、画像の復号化を実行し、可能であれば画像のレンダリングを実行する別の端末へ送信されることになる。それに対応して、端末100は、画像復号器220のみを含むこと、すなわち、符号器を含まないことも可能である。そのような端末100は、別の端末から符号化画像データを含む信号を受信し、それを復号化して復号化画像表現を生成する。従って、符号化画像信号は、無線送信器及び無線受信器を使用して端末間で無線送信される。あるいは、本発明に従って端末間で画像及び符号化画像表現を配布するための他の技術、例えば、IRポートを使用するIR技術、及び端末間の画像データの有線転送などが採用されてもよい。また、この端末間のデータ配布のために、端末間で接続及び交換が可能であるメモリカード又はメモリチップも使用できる。
移動ユニット100のユニット110、130、200、210及び220は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。
図11は、本発明による画像符号器210の一実施形態のブロック図を示す。通常、符号器210は、入力画像をいくつかの画像ブロックに分解又は分割する画像分割器215を具備する。分解器215は、画像を8つの画像要素(画素又はテクセル)から構成される画像ブロックに分解するように構成されるのが好ましい。画像ブロックは、一般的に8×1又は8×1画像要素、更に好ましくは4×2又は2×4画像要素のサイズを有する。この分解器215は、異なる入力画像を、それぞれ異なるサイズの画像ブロックに分解するのに適応できるであろう。例えば、第1の画像の種類の場合、4×2画像要素の画像ブロックサイズが使用されるが、第2の種類の場合には、8×1のブロックサイズが使用される。そのような場合、分解器215は、所定の画像に対してどの画像ブロックフォーマットを使用するかの識別を可能にする入力情報を受信するのが好ましい。
画像符号器210の本実施形態は、単一のブロック符号器300を具備する。このブロック符号器300は、画像分割器から受信された画像ブロックを符号化し、符号化ブロック表現を生成する。そのような画像ブロック表現は、色コードワード、輝度コードワード、及び輝度表現のシーケンスを含む。ブロック表現全体のサイズは、対応する未符号化画像ブロックのサイズよりはるかに小さい。ブロック符号器300は、分解器215からの各画像ブロックを順次処理(符号化)するように構成されるのが好ましい。
ブロック符号器300は、複数の輝度変更子セットを含む輝度テーブル500を具備するか、又は輝度テーブル500に対してアクセスする。テーブル500の変更子セットは、符号化中、輝度及び可能であれば色コードワードを生成するために使用される。輝度テーブル500は、ブロック符号器300又は画像符号器210の他の場所に配置されることが可能であろう。
画像符号器210は、単一の輝度テーブル500を含むことができる。あるいは、符号器210にいくつかの異なるテーブルが配置されてもよい。その場合、テーブルの輝度変更子は、異なる画像の種類に適応するか、又は1つのテーブルが特定の1つの画像に適応することが可能である。例えば、第1の輝度テーブルは、写真などの第1の画像の種類の符号化中に使用され、第2のテーブルは、テキストなどの第2の種類の画像を符号化するために使用されてもよい。しかし、メモリを節約するためには、符号器210において、いくつかの異なる画像の種類からのトレーニングデータによって生成された単一の輝度テーブル500が採用されるのが好ましい。
画像符号器210のユニット215及び300は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット215、300及び500は、画像符号器210の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
図12は、本発明による画像符号器210の別の実施形態のブロック図を示す。この画像符号器210は、図11の実施形態のような画像分割器215を具備する。この画像分割器215については、説明を省略する。しかし、符号器210は、複数の(1より大きい正の整数をMとするとき、M個の)ブロック符号器300−1〜300−Mを含む。そのような各ブロック符号器300−1〜300−Mは、基本的には、図11の画像符号器のブロック符号器に対応する。画像符号器210に複数のブロック符号器300−1〜300−Mを設けることにより、分解器215からの複数の画像ブロックを並列して処理(符号化)できるので、総画像符号化時間は短縮される。
各ブロック符号器300−1〜300−Mは、輝度テーブル500を具備できる。異なる符号器300−1〜300−Mの輝度テーブル500は、全て、同一の輝度変更子値を含むことが可能である。あるいは、異なるブロック符号器は、異なるテーブルを含んでもよい。そのような場合、ある1つの画像の種類に、1つ又はいくつかのブロック符号器を適応し、他のブロック符号器は他の画像の種類に適応する。別の実現形態においては、画像符号器210に単一の輝度テーブル500が配置され、輝度テーブル500は、全てのブロック符号器300−1〜300−Mに結合される。
画像符号器210のユニット215及び300−1〜300−Mは、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット215、300−1〜300−M、及び500は、画像符号器210の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
図13は、図11の画像符号器のブロック符号器、又は図12の画像符号器のブロック符号器のうちの1つのような、本発明によるブロック符号器300の一実施形態のブロック図を示す。符号器300は、画像ブロック中の画像要素の色の色表現を判定し、この色表現を量子化する色量子化器310を具備する。色表現は、画像要素の24ビット平均色であるのが好ましく、その後、量子化器310により12ビット色表現、すなわち、色コードワードに量子化される。
ブロック符号器300には、現在の画像ブロックに対して使用される輝度変更子セットを識別する輝度量子化器320が設けられる。量子化器320は、この変更子セットを関連する輝度テーブル500から選択するように構成されるのが好ましい。次に、量子化器320は、選択された変更子セットと関連する輝度コードワードを生成する。符号器300は、輝度選択器330を更に含む。輝度選択器330は、画像ブロック中の画像要素に対して、識別された輝度変更子セットから1つの輝度変更子を選択する。色量子化器310、輝度量子化器320、及び輝度選択器330は、先に詳細に説明されたように、色コードワード及び輝度コードワードを組み合わせ量子化するように構成されるのが好ましい。
ブロック符号器300のユニット310、320、及び330は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット310、320、330、及び500は、ブロック符号器300の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが画像符号器の他の場所に配置された分散型実現形態も可能である。
図14は、本発明によるブロック符号器300の別の実施形態のブロック図を示す。このブロック符号器300は、画像ブロックに対して使用すべき輝度変更子セット及び輝度変更子値、並びに可能であれば量子化色値を選択するという目的のために誤差値を推定する誤差推定器340を具備する。この推定器340は、画像ブロック中の画像要素に対する輝度変更子セット及び輝度変更子値(並びに全数符号化の場合は色)の第1の選択肢に関して誤差値を計算するように構成されるのが好ましい。次に、この第1の誤差値は格納される。その後、変更子セット及び変更子値(並びに色)の可能なあらゆる選択肢に対して誤差計算が繰り返され、計算が終了するたびに、推定誤差値は格納された誤差値と比較される。推定誤差値が格納された誤差値より小さい場合、推定誤差値は、以前に格納された誤差と置き換えられる。更に、その誤差値と関連する変更子セット及び変更子値(並びに色)の選択肢も格納される。全ての組み合わせの試験が完了した後、最小誤差をもたらした選択肢が輝度(及び色)コードワード及び輝度表現の生成に使用される。次に、輝度変更子セット選択器322及び輝度選択器330は、最小誤差と関連する変更子セット及び変更子値を選択する。ブロック符号器300のその他のユニットは、図13に対応するユニットを有し、ここでは詳細な説明を省略する。あるいは、ブロック符号器300の本実施形態は、先に説明されたような組み合わせ量子化に従って動作できる。そのような場合には、色量子化器310は、画像ブロックの計算された平均色の近傍量子化色を提供する。誤差推定器340は、例えば、表2又は表3に示されるように、そのような近傍量子化色ごとに誤差表現を判定し、最小の誤差表現をもたらした近傍量子化色が画像ブロックの色コードワードとして選択される。
ブロック符号器300のユニット310、320、322、330及び340は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット310、320、322、330、340及び500は、ブロック符号器300の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが画像符号器の他の場所に配置された分散型実現形態も可能である。
本発明による色量子化器310の好ましい実現形態が図15のブロック図に示される。量子化器310は、画像ブロック中の画像要素の色の平均を判定するように構成された手段312を具備する。この平均色は、RGB色であるのが好ましいが、画像処理において使用される他の任意の色フォーマットであってもよい。判定された平均色は、次に、量子化手段314に提供され、量子化手段314は平均色を量子化する。量子化器314は、色平均器312からの24ビット平均RGB色を12ビットRGB色に量子化するように構成されるのが好ましい。
色量子化器310のユニット312及び314は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット310及び314は、色量子化器310の中に共に含まれるように実現されてもよい。あるいは、いくつかのユニットがブロック符号器の他の場所に配置された分散型実現形態も可能である。
図16は、本発明によるブロック復号器220の一実施形態のブロック図を示す。ブロック復号器220は、ブロック選択器222を具備するのが好ましい。ブロック選択器222は、復号化のためにブロック復号器400に提供されるべき符号化画像ブロックを、例えばメモリから選択する。ブロック選択器222は、例えば、ヘッダ又はレンダリングエンジンから符号化画像データと関連する入力情報を受信するのが好ましい。その後、その入力情報に基づいて、所望の画像要素を有する符号化画像ブロックのアドレスが計算される。計算されるこのアドレスは、1つの画像の中における画像要素(画素又はテクセル)の座標に依存するのが好ましい。ブロック選択器222は、アドレスを使用してメモリから符号化画像ブロックを識別する。次に、識別されたこの符号化画像ブロックは、記憶装置から取り出され、ブロック復号器400に提供される。
画像ブロックの画像要素に対する(ランダム)アクセスにより、必要とされる画像の部分のみを選択的に復号化できるので好都合である。更に、データが要求される任意の順序で、画像を復号化できる。例えば、テクスチャマッピングの場合、テクスチャの一部のみが要求されることもあり、一般に、それらの部分は無順序に要求される。従って、本発明の画像復号化は、画像の一部又は1セクションのみを処理するために有効に適用できる。
選択された符号化画像ブロックは、その後、ブロック復号器400へ転送される。復号器400は、画像ブロックに加えてブロックのどの画像要素が復号化されるべきかを指定する情報を受信するのが好ましい。この情報は、画像ブロック全体、すなわち、ブロック中の全ての画像要素が復号化されるべきであることを指定できる。しかし、受信される情報は、復号化されるべき1つ又は若干の画像要素のみを識別してもよい。次に、ブロック復号器400は、ブロック中の画像要素の復号化表現を生成する。元の画像における画像要素当たりビット数をPとするとき、この復号化表現は、Pビット色、例えば、24ビットRGB色であるのが好ましい。ブロック復号器400は、復号化手順の間に使用される輝度テーブル500を含むのが好ましい。あるいは、この輝度テーブル500は、画像復号器220の他の場所に設けられることも可能である。先に図11に関連して説明したように、異なる画像の種類に対して異なる輝度テーブルを使用する方法も、画像復号器220に適用できる。
復号器220には、オプションである画像合成器224が設けられてもよい。この合成器は、ブロック復号器400から復号済み画像要素を受信し、それらを合成して、画面にレンダリング又は表示される画素を生成する。合成器224は、1つの画素を生成するために、いくつかの入力画像要素を要求することが可能である。あるいは、この画像合成器224は、グラフィックシステムに設けられてもよい。
ブロック復号器220のユニット222、224、及び400は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット222、224、400、及び500は、ブロック復号器220の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
図17は、本発明による画像復号器220の別の実施形態のブロック図を示す。ブロック選択器222及び画像合成器224は、図16の対応するユニットに類似しているため、ここでは詳細な説明を省略する。
画像復号器220は、複数のブロック復号器400−1〜400−Q(Qは、1より大きい正の整数である)を具備する。複数のブロック復号器400−1〜400−Qにアクセスすることにより、画像復号器220は、並列する複数の符号化画像ブロックを処理(復号化)できる。これらの複数のブロック復号器400−1〜400−Qは、並列処理を可能にするため、画像復号器220の処理性能、及び効率が向上する。例えば、最近傍補間の場合、一般に、1つの復号化画像要素で十分であるが、双線形(三線形)補間の場合には、4つ(8つ)の画像要素が必要とされる。各ブロック復号器400−1〜400−Qは、復号化に使用される輝度テーブル500を具備できる。あるいは、画像復号器220に、単一のテーブル500が配置され、そのテーブルは、全てのブロック復号器400−1〜400−Qに結合される。異なる種類の輝度テーブルを使用する方法を、この画像復号器220にも適用できる(先の図12に関連する説明を参照)。
画像復号器220のユニット222、224、及び400−1〜400−Qは、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット222、224、400−1〜400−Q、及び500は、画像復号器220の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが移動ユニットの他の場所に配置された分散型実現形態も可能である。
図18は、本発明によるブロック復号器400の一実施形態の図である。ブロック復号器400は、輝度コードワードに基づいて、関連する輝度テーブル500から1つの輝度変更子セットを提供する手段410を具備する。この提供する手段410は、輝度テーブル500から変更子値の第1のサブセットを取り出し、変更子の第2のサブセットを第1のサブセットに基づいて判定するように構成される。色発生器420は、色コードワードに基づいて画像ブロック中の全ての画像要素に対して単一の色表現を生成する。この発生器420は、コードワードの12ビット色を24ビット(RGB)色に拡張するのが好ましい。
輝度変更子選択器430は、手段410により提供された変更子セットから輝度変更子値のうちの1つを選択するために配置される。変更子選択器430は、輝度表現のシーケンスに基づいて符号化画像ブロック中の画像要素に対して正しい変更子値を選択するように構成される。色発生器420からの拡張色及び変更子選択器430からの変更子値は、輝度変調器又は変更器440へ転送される。輝度変調器又は変更器440は、変更子値を有する拡張色の色成分の輝度を変更する。輝度変更器440は、異なる色成分に対して異なる重みを有する重み付き輝度変更子値を使用できる。更に、色成分が輝度変更された後、変更器440は、成分を最大閾値と最小閾値との間、例えば、0と255の間にクランプするのが好ましい。
ブロック復号器400のユニット410、420、430、及び440は、ソフトウェア又はハードウェアとして、あるいはそれらの組み合わせとして提供されてもよい。ユニット410、420、430、440、及び500は、ブロック復号器400の中に全て含まれるように実現されてもよい。あるいは、いくつかのユニットが画像復号器の他の場所に配置された分散型実現形態も可能である。
図19は、本発明によるブロック復号器400の可能なハードウェア実現形態を概略的に示す。ブロック復号器400に対する入力は、12ビット色コードワード710(赤色成分、緑色成分、及び青色成分の各々に対して4ビット)、4ビット輝度コードワード720、及び16ビット輝度シーケンス730を含む符号化ブロック表現700である。
色コードワードは、色発生器420に提供される。色発生器420は、3つのビット拡張器422〜426により実現される。第1のビット拡張器422は4ビット赤色成分を受信し、第2のビット拡張器424は4ビット緑色成分を受信し、第3のビット拡張器426は4ビット青色成分を受信する。各々の拡張器422〜426からの出力は、8ビット色成分である。この8ビット成分は、入力成分に17を乗算するか、又は成分に16を乗算し且つ成分を加算することにより単純に求められる。あるいは、拡張器422〜426は、ビットシフタ及びORゲート、例えば、(1011bin<<4) OR 1011bin = 1011 0000bin OR 1011bin = 1011 1011binとして実現されてもよい。この場合、<<4は、1つの語を左へ4ビットシフトすることに相当する。
変更子選択器430は、マルチプレクサ435として実現される。このマルチプレクサ435には、3ビットアドレスインデックスが入力される。このアドレスインデックスに基づいてマルチプレクサ435は、8つの画像要素のうちのどれを復号化すべきかを選択する。次に、選択された画像要素と関連する2ビット輝度表現がテーブルルックアップ415へ転送される。このテーブルルックアップは、図18の変更子セット提供器410及び輝度テーブル500に相当する。入力された輝度コードワード及び輝度表現を使用して、ルックアップ415は、テーブル中の変更子セットのうちの1つから正しい輝度変更子値を取り出す。次に、この9ビット符号付き(正又は負)変更子値は、輝度変更器440に提供される。このハードウェア実現形態においては、変更器440は、3つの加算器441〜443及び3つのクランパ444〜446を具備する。変更子値は、それぞれの加算器441〜443に入力される。第1の加算器441は、ビット拡張器422からの8ビット赤色成分に輝度変更子値を加算する。これに対応して、加算器442は、ビット拡張器424からの8ビット緑色成分に変更子値を加算し、加算器443は、ビット拡張器426からの8ビット青色成分に変更子値を加算する。別の実現形態においては、加算器441〜443は、他の変更要素、例えば、乗算器又はXORゲートと置き換えられることが可能である。加算器441〜443からの出力は、クランパ444〜446へ転送される。クランパ444〜446は、輝度変更済色成分を0と255の間にクランプする。クランパ444〜446からの出力は、画像要素の伸張又は復号化24ビット色である。
図20は、図19のビット拡張器422;424;426の可能なハードウェア実現形態を概略的に示す。これらの拡張器は、4ビット(赤、緑、又は青)色成分を受信し、対応する拡張8ビット色成分を出力する。出力される8ビット色成分の中で、4つの最上位ビット(MSB)は入力された4ビット色成分を構成し、「第5のMSB」は入力成分のMSBに対応し、「第6のMSB」は入力成分の「第2のMSB」に対応し、残る2つの最下位ビット(LSB)は入力成分の2つのLSBに対応する。
図21は、図19のテーブルルックアップ415の可能なハードウェア実現形態を概略的に示す。4ビット入力輝度コードワードのうちの3つのLSBは、2つのマルチプレクサ411及び412に入力される。マルチプレクサ411及び412は、それぞれ、8つの可能な変更子値から1つの7ビット輝度変更子値を選択する。それら16の輝度変更子のうちの残る48個の値は、表1に従った輝度テーブルを採用して計算される。マルチプレクサ411及び412からの選択された輝度変更子値は、別のマルチプレクサ413に入力され、マルチプレクサ413は、図19のマルチプレクサ435からの1ビット入力データ(2ビット輝度表現のうちの1ビット)に基づいて、それらの値のうちの1つを選択する。次に、選択された変更子値は、マルチプレクサ416及び否定手段414の双方へ転送される。否定手段414は変更子値を否定する。この否定された値は、マルチプレクサ416へ転送される。このマルチプレクサ416は、図19のマルチプレクサ435からの輝度表現のうちの残るビットに基づいて正の7ビット輝度変更子値又は否定された値のいずれかを選択する。選択された(8ビット)変更子値は、次に、マルチプレクサ418及びビットシフタ417の双方に供給される。ビットシフタ417は、変更子値を左へ1ビットシフトし、その結果、9ビット輝度変更子(基数10で、値に2を乗算することに相当する)が得られる。そこで、マルチプレクサ418は、輝度コードワードのMSBに基づいて8ビット変更子値又は9ビット変更子値のいずれかを選択する。64の可能な変更子値の中から、特定の画像要素に対して使用すべき9ビット輝度変更子値が選択される。
図22は、図19のクランパ444;445;446の可能なハードウェア実現形態を概略的に示す。クランパ444;445;446に対する入力は、10ビット輝度変更済色成分値である。この入力値の8つのLSBは、マルチプレクサ447に入力される。マルチプレクサに対する他方の入力は、最大閾値(255;8ビット)である。マルチプレクサ447は、輝度変更済色成分の第2のMSBに基づいて8ビット入力値又は最大閾値のいずれかを選択する。言い換えれば、この第2のMSBが1に等しい場合、マルチプレクサ447は、閾値を出力し、そうでない(第2のMSBが0に等しい)場合には、8ビット入力値が第2のマルチプレクサ448へ出力される。この第2のマルチプレクサ448は、色成分のMSBに基づいて第1のマルチプレクサ447からの出力を最小閾値(0;8ビット)と比較する。このMSB又は符号ビットが1に等しい場合、第1のマルチプレクサ447からの出力は負であり、第2のマルチプレクサ448により最小閾値が選択されるべきである。しかし、符号ビットが0である場合には、第1のマルチプレクサ447の出力が第2のマルチプレクサ448からも出力されるべきである。
図19のブロック符号化器400のハードウェアによる解決方法は、非常に単純であり、ビット拡張器422;424;426、テーブルルックアップ415、及びクランパ444;445;446が、それぞれ、図20、図21及び図22に従って実現されるのであれば、基本的には、3つの加算、1つの否定、及び12のマルチプレクサのみを具備する。これを、最高で42の加算、及び2つのマルチプレクサを要求するS3TC方式(特許文献1)を使用する伸張と比較すべきである。
添付の特許請求の範囲により定義される本発明の範囲から逸脱せずに、本発明に対して種々の変形及び変更を実施できることは、当業者により理解されるであろう。
図1は、本発明による画像符号化方法を示すフローチャートである。 図2は、本発明による画像ブロックの一実施形態を示す図である。 図3は、本発明による画像ブロックの別の実施形態を示す図である。 図4は、本発明による画像ブロックの符号化表現の一実施形態を示す図である。 図5は、図1の色コードワードを判定するステップを更に詳細に示すフローチャートである。 図6は、図1の輝度コードワードを提供するステップ、及び輝度表現を選択するステップを更に詳細に示すフローチャートである。 図7は、本発明による画像復号化方法を示すフローチャートである。 図8は、図7の輝度変更子セットを提供するステップ、及び色表現を生成するステップを更に詳細に示すフローチャートである。 図9は、図7の輝度を変更するステップを更に詳細に示すフローチャートである。 図10は、本発明による画像符号器及び画像復号器を有するユーザ端末の一例を概略的に示す図である。 図11は、本発明による画像符号器の一実施形態を概略的に示すブロック図である。 図12は、本発明による画像符号器の別の実施形態を概略的に示すブロック図である。 図13は、本発明によるブロック符号器の一実施形態を概略的に示すブロック図である。 図14は、本発明によるブロック符号器の別の実施形態を概略的に示すブロック図である。 図15は、図13及び図14のブロック符号器の色量子化器を更に詳細に概略的に示すブロック図である。 図16は、本発明による画像復号器の一実施形態を概略的に示すブロック図である。 図17は、本発明による画像復号器の別の実施形態を概略的に示すブロック図である。 図18は、本発明によるブロック復号器の一実施形態を概略的に示すブロック図である。 図19は、本発明によるブロック復号器の一実施形態を概略的に示すハードウェアブロック図である。 図20は、図19のビット拡張器の一実施形態を更に詳細に示すハードウェアブロック図である。 図21は、図19のテーブルルックアップの一実施形態を更に詳細に示すハードウェアブロック図である。 図22は、図19のクランパの一実施形態を更に詳細に示すハードウェアブロック図である。

Claims (52)

  1. 複数の画像要素(610)から構成される画像ブロック(600)を圧縮する方法であって、
    前記画像ブロック(600)中の前記複数の画像要素(610)の色の表現である1つの色コードワード(710)を決定する工程と、
    前記画像ブロック(600)中の前記複数の画像要素(610)の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード(720)を提供する工程と、
    前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度変更子セットからの1つの輝度変更子と関連する輝度表現(730)を選択する工程と
    前記1つの色コードワード(710)と前記輝度コードワード(720)と画像要素(610)ごとの前記輝度表現(730)とを、前記画像ブロック(600)の圧縮表現(700)として、出力する工程と
    を備えることを特徴とする方法。
  2. 画像を符号化する方法であって、
    前記画像を、各々が複数の画像要素(610)を含む複数の画像ブロック(600)に分割する分割工程と、
    少なくとも1つの画像ブロック(600)に関して、
    前記画像ブロック(600)中の前記複数の画像要素(610)の色の表現である1つの色コードワード(710)を決定し、
    前記画像ブロック(600)中の前記複数の画像要素(610)の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード(720)を提供し、
    前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度変更子セットからの1つの輝度変更子と関連する輝度表現(730)を選択することにより、符号化表現(700)を決定する工程と
    を備え
    前記符号化表現(700)は、前記1つの色コードワード(710)と前記輝度コードワード(720)と画像要素(610)ごとの前記輝度表現(730)とを、含む
    ことを特徴とする方法。
  3. 前記符号化表現(700)を決定する前記工程は、画像ブロック(600)ごとに実行されることを特徴とする請求項2に記載の方法。
  4. 前記1つの色コードワード(710)を決定する前記工程は、
    前記画像ブロック(600)中の前記複数の画像要素(610)の平均色を判定する工程と、
    前記平均色を量子化する工程と
    を備えることを特徴とする請求項1乃至3の何れか1項に記載の方法。
  5. 前記平均色を量子化する前記工程は、
    前記平均色の近傍量子化色ごとに、誤差表現を判定する工程と、
    最小の誤差表現と関連する前記近傍量子化色を、前記量子化された平均色として選択する工程と
    を備えることを特徴とする請求項4に記載の方法。
  6. 前記誤差表現は、重み付き誤差表現であることを特徴とする請求項5に記載の方法。
  7. 前記誤差表現を判定する前記工程は、
    近傍量子化色ごとに、前記画像ブロック(600)を圧縮する工程と、
    近傍量子化色ごとに、前記画像ブロック(600)と前記画像ブロック(600)の前記圧縮表現との比較に基づいて、前記誤差表現を判定する工程と
    を備えることを特徴とする請求項5又は6に記載の方法。
  8. 前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項1乃至7の何れか1項に記載の方法。
  9. 前記輝度コードワード(720)を提供する工程では、複数の輝度変更子セットを含む輝度テーブル(500)から前記輝度変更子セットを選択し、それにより、前記輝度コードワード(720)は、前記テーブル(500)からの前記選択された輝度変更子セットの識別を可能にすることを特徴とする請求項1乃至8の何れか1項に記載の方法。
  10. 前記輝度変更子セットを選択する前記工程、及び前記輝度表現(730)を選択する前記工程は、
    前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度テーブル(500)の輝度変更子セットからの1つの輝度変更子によって変更された平均色輝度と元の色値との差を判定する工程と、
    前記判定された差に基づいて、誤差値を推定する工程と、
    前記誤差値を最小にする輝度変更子セット及び輝度変更子を選択する工程と
    を備えることを特徴とする請求項9に記載の方法。
  11. 前記誤差値は重み付き誤差値であり、色成分の重みは、前記元の色及び前記平均色に対して等しいことを特徴とする請求項10に記載の方法。
  12. 前記1つの色コードワード(710)を決定する前記工程、前記輝度変更子セットを選択する前記工程、及び前記輝度表現(730)を選択する前記工程は、
    前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度テーブル(500)の輝度変更子セットからの1つの輝度変更子によって輝度変更された量子化色と元の色値との差を判定する工程と、
    前記判定された差に基づいて、誤差値を推定する工程と、
    前記誤差値を最小にする量子化色、輝度変更子セット、及び輝度変更子を選択する工程と
    を備え、
    それにより、前記1つの色コードワード(710)は、前記選択された量子化色を含むことを特徴とする請求項9に記載の方法。
  13. 前記誤差値は、重み付き誤差値であり、色成分の重みは、前記元の色及び前記量子化色に対して等しいことを特徴とする請求項12に記載の方法。
  14. m=3−n、及びn=0,1,2,3とするとき、前記画像ブロック(600)は、2×2個の画像要素(610)を含むことを特徴とする請求項1乃至13の何れか1項に記載の方法。
  15. 前記画像ブロック(600)の圧縮表現(700)は32ビットシーケンスであり、前記1つの色コードワード(710)は12ビットを含み、前記輝度コードワード(720)は4ビットを含み、前記輝度表現のシーケンス(730)は16ビットを含むことを特徴とする請求項1に記載の方法。
  16. 前記画像ブロック(600)の前記符号化表現(700)は32ビットシーケンスであり、前記1つの色コードワード(710)は12ビットを含み、前記輝度コードワード(720)は4ビットを含み、前記輝度表現のシーケンス(730)は16ビットを含むことを特徴とする請求項2に記載の方法。
  17. 複数の画像要素(610)から構成される画像ブロック(600)の圧縮表現(700)であり、1つの色コードワード(710)、輝度コードワード(720)、及び前記複数の画像要素(610)のそれぞれに対する輝度表現(730)を有する輝度表現シーケンス(730)を含む圧縮表現(700)を処理する方法であって、
    前記輝度コードワード(720)に基づいて、複数の輝度変更子から成るセットを提供する工程と、
    前記画像ブロック(600)中の少なくとも1つの画像要素(610)に対して、
    前記1つの色コードワード(710)に基づいて、色表現を生成する工程と、
    前記輝度表現シーケンス(730)に基づいて、前記輝度変更子セットから1つの輝度変更子を選択する工程と、
    前記選択された輝度変更子に基づいて、前記少なくとも1つの画像要素(610)の輝度を変更する工程と
    を備えることを特徴とする方法。
  18. 複数の画像要素(610)から構成される画像ブロック(600)の符号化表現(700)であり、1つの色コードワード(710)、輝度コードワード(720)、及び前記複数の画像要素(610)のそれぞれに対する輝度表現(730)を有する輝度表現シーケンス(730)を含む符号化表現(700)を複数含む符号化画像を復号化する方法であって、1つの画像ブロック(600)の少なくとも1つの符号化表現(700)に関して、
    前記輝度コードワード(720)に基づいて、複数の輝度変更子から成るセットを提供する工程と、
    前記画像ブロック(600)中の少なくとも1つの画像要素(610)に対して、前記1つの色コードワード(710)に基づいて、色表現を生成する工程と、
    前記画像ブロック(600)中の少なくとも1つの画像要素(610)に対して、前記輝度表現シーケンス(730)に基づいて、前記輝度変更子セットから1つの輝度変更子を選択する工程と、
    前記画像ブロック(600)中の少なくとも1つの画像要素(610)に対して、前記選択された輝度変更子に基づいて、前記少なくとも1つの画像要素(610)の輝度を変更する工程と、
    複数の着色輝度変更済画像要素(610)を合成することにより、前記符号化画像の復号化表現を生成する工程と
    を備えることを特徴とする方法。
  19. 前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項17又は18に記載の方法。
  20. 前記輝度変更子セットを提供する前記工程は、前記輝度コードワード(720)に基づいて、複数の輝度変更子セットを含む輝度テーブル(500)から前記輝度変更子セットを選択することを特徴とする請求項17乃至19の何れか1項に記載の方法。
  21. 前記テーブル(500)は、輝度変更子セットの第1のサブセットを含み、
    前記第1のサブセットの中の輝度変更子セットの輝度変更子を用いて第2のサブセットに対する輝度変更子セットの輝度変更子を決定する工程を更に備えることを特徴とする請求項20に記載の方法。
  22. 前記輝度表現シーケンス(730)は、前記画像ブロック(600)の前記表現(700)の中の画像要素(610)ごとに、前記画像要素(610)に対して、前記輝度変更子セットの前記複数の輝度変更子のうちのどれを使用すべきかの識別を可能にする輝度インデックスを含むシーケンスであることを特徴とする請求項17乃至21の何れか1項に記載の方法。
  23. 前記輝度変更工程では、前記色表現の全ての色成分値に、選択された輝度変更子値を加算することを特徴とする請求項17乃至22の何れか1項に記載の方法。
  24. 前記輝度変更工程では、選択された輝度変更子値に要素特定重みを乗算した値を、前記色表現の全ての色成分値に加算することを特徴とする請求項17乃至22の何れか1項に記載の方法。
  25. 前記輝度変更子値と前記色成分値の和を、最小閾値と最大閾値との間にクランプする工程を更に備えることを特徴とする請求項23又は24に記載の方法。
  26. m=3−n、及びn=0,1,2,3とするとき、前記画像ブロック(600)は、2×2個の画像要素(610)を含むことを特徴とする請求項17乃至25の何れか1項に記載の方法。
  27. 前記画像ブロック(600)の前記表現(700)は32ビットシーケンスであり、前記1つの色コードワード(710)は12ビットを含み、前記輝度コードワード(720)は4ビットを含み、前記輝度表現シーケンス(730)は16ビットを含むことを特徴とする請求項17乃至26の何れか1項に記載の方法。
  28. 複数の画像要素(610)から構成される画像ブロック(600)を圧縮するシステム(300)であって、
    前記画像ブロック(600)中の前記複数の画像要素(610)の色の表現である1つの色コードワード(710)を決定する色量子化器(310)と、
    前記画像ブロック(600)中の前記複数の画像要素(610)の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード(720)を提供する輝度量子化器(320)と、
    前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度変更子セットからの輝度変更子と関連する輝度表現(730)を選択する輝度表現選択器(330)とを備え
    前記システム(300)は、前記1つの色コードワード(710)と前記輝度コードワード(720)と画像要素(610)ごとの前記輝度表現(730)とを、前記画像ブロック(600)の圧縮表現(700)として、出力する
    ことを特徴とするシステム。
  29. 画像符号化システム(210)であって、
    各々が複数の画像要素(610)から構成される複数の画像ブロック(600)に画像を分解する画像分割器(215)と、
    前記画像ブロック(600)の符号化表現(700)を生成するために、画像ブロック(600)を符号化するブロック符号器(300)とを備え、
    前記ブロック符号器(300)は、
    前記画像ブロック(600)中の前記複数の画像要素(610)の色の表現である1つの色コードワード(710)を決定する色量子化器(310)と、
    前記画像ブロック(600)中の前記複数の画像要素(610)の輝度を変更するための複数の輝度変更子から成るセットの表現である輝度コードワード(720)を提供する輝度量子化器(320)と、
    前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度変更子セットからの輝度変更子と関連する輝度表現(730)を選択する輝度表現選択器(330)とを備え
    前記ブロック符号器(300)は、前記1つの色コードワード(710)と前記輝度コードワード(720)と画像要素(610)ごとの前記輝度表現(730)とを、前記画像ブロック(600)の符号化表現(700)として、出力する
    ことを特徴とする画像符号化システム(210)。
  30. 前記色量子化器(310)は、
    前記画像ブロック中の前記複数の画像要素の平均色を判定する手段(312)と、
    前記平均色を量子化する手段(314)と
    を備えることを特徴とする請求項28又は29に記載のシステム。
  31. 前記量子化する手段(314)は、前記平均色の近傍量子化色を提供するように構成されており、
    前記システム(210;300)は、前記平均色の近傍量子化色ごとに、誤差表現を判定し、最小の誤差表現と関連する近傍量子化色を、前記量子化された平均色として選択する誤差推定器(340)を更に備えることを特徴とする請求項30に記載のシステム。
  32. 前記誤差表現は、重み付き誤差表現である請求項31に記載のシステム。
  33. 前記ブロック符号器(300)は、近傍量子化色ごとに、前記画像ブロック(600)を圧縮するように構成されており、
    前記誤差推定器(340)は、近傍量子化色ごとに、前記画像ブロック(600)と前記画像ブロック(600)の前記圧縮表現との比較に基づいて、前記誤差表現を判定するように構成されていることを特徴とする請求項31又は32に記載のシステム。
  34. 前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項28乃至33の何れか1項に記載のシステム。
  35. 複数の輝度変更子セットを含む輝度テーブル(500)を更に備え、
    前記輝度量子化器(320)は、前記輝度テーブル(500)から前記輝度変更子セットを選択する選択器(322)を備え、
    それにより、前記輝度コードワード(720)は、前記テーブル(500)からの前記選択された輝度変更子セットの識別を可能にすることを特徴とする請求項28又は29に記載のシステム。
  36. 前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度テーブル(500)の1つの輝度変更子セットからの1つの輝度変更子によって輝度変更された平均色と元の色値との差を判定する手段(340)と、
    前記判定された差に基づいて、誤差値を推定する誤差推定器(340)とを更に備え、
    前記変更子セット選択器(322)及び前記表現選択器(330)は、前記誤差値を最小にする輝度変更子セット及び輝度変更子を選択するように構成されていることを特徴とする請求項35に記載のシステム。
  37. 前記誤差推定器(340)は、重み付き誤差値を推定し、色成分の重みは、前記元の色及び前記平均色に対して等しいことを特徴とする請求項36に記載のシステム。
  38. 前記画像ブロック(600)中の画像要素(610)ごとに、前記輝度テーブル(500)の1つの輝度変更子セットからの1つの輝度変更子によって輝度変更された量子化色と元の色値との差を判定する手段(340)と、
    前記判定された差に基づいて、誤差値を推定する誤差推定器(340)と
    を更に備え、
    前記色量子化器(310)、前記変更子セット選択器(322)、及び前記表現選択器(330)は、前記誤差値を最小にする量子化色、輝度変更子セット、及び輝度変更子を選択するように構成されており、
    それにより、前記1つの色コードワード(710)は、前記選択された量子化色を含むことを特徴とする請求項35に記載のシステム。
  39. 前記誤差推定器(340)は、重み付き誤差値を推定し、色成分の重みは、前記元の色及び前記量子化色に対して等しいことを特徴とする請求項38に記載のシステム。
  40. m=3−n、及びn=0,1,2,3とするとき、前記画像ブロック(600)は、2×2個の画像要素(610)を含むことを特徴とする請求項28乃至39の何れか1項に記載のシステム。
  41. 前記画像ブロック(600)の圧縮表現(700)は32ビットシーケンスであり、前記1つの色コードワード(710)は12ビットを含み、前記輝度コードワード(720)は4ビットを含み、前記輝度表現のシーケンス(730)は16ビットを含むことを特徴とする請求項28に記載のシステム。
  42. 前記画像ブロック(600)の前記符号化表現(700)は32ビットシーケンスであり、前記1つの色コードワード(710)は12ビットを含み、前記輝度コードワード(720)は4ビットを含み、前記輝度表現のシーケンス(730)は16ビットを含むことを特徴とする請求項29に記載のシステム。
  43. 複数の画像要素(610)から構成される画像ブロック(600)の圧縮表現(700)であり、1つの色コードワード(710)、輝度コードワード(720)、及び前記複数の画像要素(610)のそれぞれに対する輝度表現(730)を有する輝度表現シーケンス(730)を含む圧縮表現(700)を処理するシステム(400)であって、
    前記輝度コードワード(720)に基づいて、複数の輝度変更子から成るセットを提供する手段(410)と、
    前記1つの色コードワード(710)に基づいて、前記画像ブロック(600)中の少なくとも1つの画像要素(610)に対して色表現を生成する色発生器(420)と、
    前記少なくとも1つの画像要素(610)に対して、前記輝度表現シーケンス(730)に基づいて、前記識別された輝度変更子セットから1つの輝度変更子を選択する選択器(430)と、
    前記選択された輝度変更子に基づいて、前記少なくとも1つの画像要素(610)の輝度を変更する輝度変更器(440)と
    を備えることを特徴とするシステム。
  44. 複数の画像要素(610)から構成される画像ブロック(600)の符号化表現(700)であり、1つの色コードワード(710)、輝度コードワード(720)、及び前記複数の画像要素(610)のそれぞれに対する輝度表現(730)を有する輝度表現シーケンス(730)を含む符号化表現(700)を複数含む符号化画像を復号化するシステム(220)であって、
    画像ブロック(600)に対して、前記輝度コードワード(720)に基づいて、複数の輝度変更子から成るセットを提供する手段(410)と、
    前記1つの色コードワード(710)に基づいて、前記画像ブロック(600)の少なくとも1つの画像要素(610)に対して色表現を生成する色発生器(420)と、
    前記少なくとも1つの画像要素(610)に対して、前記輝度表現シーケンス(730)に基づいて、前記識別された輝度変更子セットから1つの輝度変更子を選択する選択器(430)と、
    前記選択された輝度変更子に基づいて、前記少なくとも1つの画像要素(610)の輝度を変更する輝度変更器(440)と、
    複数の着色輝度変更済画像要素(610)を合成し、前記符号化画像の復号化表現を生成する手段(225)と
    を備えることを特徴とするシステム。
  45. 複数の輝度変更子セットを含む輝度テーブル(500)を更に備え、
    前記輝度変更子セットを提供する前記手段は、前記輝度コードワード(720)に基づいて、前記輝度テーブル(500)から前記輝度変更子セットを選択するように構成されていることを特徴とする請求項43又は44に記載のシステム。
  46. 前記輝度変更子セットは、数学的相補輝度変更子値を含むことを特徴とする請求項43乃至45の何れか1項に記載のシステム。
  47. 前記輝度表現シーケンス(730)は、前記画像ブロック(600)の前記表現(700)の中の画像要素(610)ごとに、前記画像要素(610)に対して、前記輝度変更子セットの前記複数の輝度変更子のうちのどれを使用すべきかの識別を可能にする輝度インデックスを含むシーケンスであることを特徴とする請求項43乃至46の何れか1項に記載のシステム。
  48. 前記輝度変更器(440)は、前記色表現の全ての色成分値に、選択された輝度変更子値を加算するように構成されていることを特徴とする請求項43乃至47の何れか1項に記載のシステム。
  49. 前記輝度変更器(440)は、選択された輝度変更子値に成分特定重みを乗算した値を、前記色表現の全ての色成分値に加算するように構成されていることを特徴とする請求項43乃至47の何れか1項に記載のシステム。
  50. 前記輝度変更器(440)は、前記輝度変更子値及び前記色表現値の和を、最小閾値と最大閾値との間にクランプするように構成されていることを特徴とする請求項48又は49に記載のシステム。
  51. m=3−n、及びn=0,1,2,3とするとき、前記画像ブロック(600)は、2×2個の画像要素(610)を含むことを特徴とする請求項43乃至50の何れか1項に記載のシステム。
  52. 前記画像ブロック(600)の前記表現(700)は32ビットシーケンスであり、前記1つの色コードワード(710)は12ビットを含み、前記輝度コードワード(720)は4ビットを含み、前記輝度表現シーケンス(730)は16ビットを含むことを特徴とする請求項43乃至50の何れか1項に記載のシステム。
JP2006545270A 2003-12-19 2004-07-08 画像処理 Expired - Lifetime JP4444967B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE0303497A SE526226C2 (sv) 2003-12-19 2003-12-19 Bildbehandling
PCT/SE2004/001120 WO2005059836A1 (en) 2003-12-19 2004-07-08 Image processing

Publications (2)

Publication Number Publication Date
JP2007515124A JP2007515124A (ja) 2007-06-07
JP4444967B2 true JP4444967B2 (ja) 2010-03-31

Family

ID=30768816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006545270A Expired - Lifetime JP4444967B2 (ja) 2003-12-19 2004-07-08 画像処理

Country Status (15)

Country Link
US (1) US7636471B2 (ja)
EP (2) EP1697897B1 (ja)
JP (1) JP4444967B2 (ja)
CN (3) CN100550057C (ja)
AU (1) AU2004298705B2 (ja)
BR (1) BRPI0417576B1 (ja)
CA (1) CA2545414C (ja)
ES (1) ES2716560T3 (ja)
HU (1) HUE042288T2 (ja)
PL (1) PL2688042T3 (ja)
RU (1) RU2317587C1 (ja)
SE (1) SE526226C2 (ja)
TR (1) TR201901009T4 (ja)
WO (1) WO2005059836A1 (ja)
ZA (1) ZA200604184B (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0401852D0 (sv) 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
SE0401850D0 (sv) * 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
SE526226C2 (sv) 2003-12-19 2005-08-02 Ericsson Telefon Ab L M Bildbehandling
DK1886277T3 (en) 2005-05-27 2016-05-17 Ericsson Telefon Ab L M WEIGHT BASED IMAGE PROCESSING
WO2007021227A1 (en) * 2005-08-19 2007-02-22 Telefonaktiebolaget Lm Ericsson (Publ) Texture compression based on two hues with modified brightness
US7873212B2 (en) 2006-01-24 2011-01-18 Nokia Corporation Compression of images for computer graphics
US7787691B2 (en) 2006-04-11 2010-08-31 Telefonaktiebolaget Lm Ericsson (Publ) High quality image processing
US8233003B2 (en) 2007-03-12 2012-07-31 Seiko Epson Corporation Image processing device, image processing method, and electronic instrument
JP5157419B2 (ja) * 2007-03-12 2013-03-06 セイコーエプソン株式会社 画像処理装置、画像処理方法及び電子機器
US8571339B2 (en) * 2007-04-04 2013-10-29 Telefonaktiebolaget Lm Ericsson (Publ) Vector-based image processing
KR101431185B1 (ko) * 2007-06-22 2014-08-27 삼성전자 주식회사 영상 향상 방법 및 장치, 이를 이용한 영상 처리 시스템
TWI366391B (en) * 2007-06-28 2012-06-11 Novatek Microelectronics Corp Method and circuit for correcting signals and image correcting method and circuit using the same
US8013862B2 (en) * 2007-11-16 2011-09-06 Microsoft Corporation Texture codec
US20100226568A1 (en) * 2009-03-09 2010-09-09 Smith Micro Software, Inc. Effective color modeling method for predictive image compression
CN102571270A (zh) * 2009-03-27 2012-07-11 华为技术有限公司 解码方法及装置
KR20100136890A (ko) 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
JP2011066720A (ja) * 2009-09-17 2011-03-31 Canon Inc 画像処理装置、制御方法、及びプログラム
KR101709822B1 (ko) * 2009-11-24 2017-02-23 텔레폰악티에볼라겟엘엠에릭슨(펍) 부호화된 텍셀 블록에서 동작할 수 있는 복호 시스템 및 방법
US8659616B2 (en) * 2010-02-18 2014-02-25 Nvidia Corporation System, method, and computer program product for rendering pixels with at least one semi-transparent surface
CN102244779B (zh) * 2010-05-11 2014-07-30 联想(北京)有限公司 数据的发送和接收方法及设备、数据传输***
US9129543B2 (en) * 2010-06-18 2015-09-08 Telefonaktie L M Ericsson (publ) Texture compression and decompression
EP3334161B1 (en) 2010-09-13 2019-08-21 Sony Interactive Entertainment Inc. Image processing device, image processing method, and data structure of moving image file
EP2647209B1 (en) * 2010-12-03 2017-11-01 Koninklijke Philips N.V. Transferring of 3d image data
EP2846550B1 (en) * 2011-01-05 2018-10-03 Koninklijke Philips N.V. Video coding and decoding devices and methods preserving PPG relevant information
BR112013017067A2 (pt) * 2011-01-05 2019-01-15 Koninl Philips Electronics Nv dispositivo de codificação de vídeo para codificar dados de vídeo, método de codificação de vídeo, dispositivo de decodificação de vídeo, sistema de decodificação de vídeo e programa de computador
GB2487717B (en) * 2011-01-25 2017-06-21 Advanced Risc Mach Ltd Image encoding method
WO2012136276A1 (en) 2011-04-04 2012-10-11 Telefonaktiebolaget L M Ericsson (Publ) A method and a processor for texture compression
EP2702561A1 (en) * 2011-04-29 2014-03-05 Telefonaktiebolaget LM Ericsson (PUBL) Encoder, decoder and methods thereof for texture compression
WO2013008370A1 (ja) 2011-07-13 2013-01-17 パナソニック株式会社 画像圧縮装置、画像伸長装置および画像処理装置
JP6003049B2 (ja) * 2011-11-30 2016-10-05 富士通株式会社 情報処理装置、画像送信方法及び画像送信プログラム
JP5915131B2 (ja) * 2011-12-08 2016-05-11 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
US9106936B2 (en) * 2012-01-25 2015-08-11 Altera Corporation Raw format image data processing
WO2014014238A1 (en) 2012-07-17 2014-01-23 Samsung Electronics Co., Ltd. System and method for providing image
KR102091137B1 (ko) * 2012-07-17 2020-03-20 삼성전자주식회사 영상 제공 시스템 및 방법
US10147202B2 (en) * 2013-03-15 2018-12-04 Arm Limited Methods of and apparatus for encoding and decoding data
US9716871B2 (en) * 2014-09-30 2017-07-25 Apple Inc. YUV signal generation for high dynamic range video content
CN104899838B (zh) * 2015-05-29 2017-11-28 小米科技有限责任公司 调整图像的方法及装置
US10645418B2 (en) * 2018-04-13 2020-05-05 Google Llc Morphological anti-ringing filter for lossy image compression
CN113076050B (zh) * 2021-04-25 2022-05-20 深圳创维-Rgb电子有限公司 基于内存拷贝的人机交互方法、装置、电视机及存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6451888A (en) * 1987-08-24 1989-02-28 Sharp Kk Picture processor
CA1315392C (en) * 1988-11-18 1993-03-30 Taejeong Kim Side-match and overlap-match vector quantizers for images
US5204665A (en) * 1990-05-02 1993-04-20 Xerox Corporation Color editing with simple encoded images
DE4335143A1 (de) * 1993-10-15 1995-04-20 Hell Ag Linotype Verfahren und Einrichtung zur Umsetzung von Farbwerten
RU2105351C1 (ru) * 1995-02-06 1998-02-20 Товарищество с ограниченной ответственностью "Информ Инжиниринг" Способ анализа изображения текстуры объекта
US5742892A (en) 1995-04-18 1998-04-21 Sun Microsystems, Inc. Decoder for a software-implemented end-to-end scalable video delivery system
US5793371A (en) * 1995-08-04 1998-08-11 Sun Microsystems, Inc. Method and apparatus for geometric compression of three-dimensional graphics data
US6404923B1 (en) * 1996-03-29 2002-06-11 Microsoft Corporation Table-based low-level image classification and compression system
US5748904A (en) * 1996-09-13 1998-05-05 Silicon Integrated Systems Corp. Method and system for segment encoded graphic data compression
US5926647A (en) * 1996-10-11 1999-07-20 Divicom Inc. Processing system with dynamic alteration of a color look-up table
US6658146B1 (en) * 1997-10-02 2003-12-02 S3 Graphics Co., Ltd. Fixed-rate block-based image compression with inferred pixel values
US5956431A (en) * 1997-10-02 1999-09-21 S3 Incorporated System and method for fixed-rate block-based image compression with inferred pixel values
JPH11313219A (ja) * 1998-01-20 1999-11-09 Fujitsu Ltd カラーデータ変換方法
CN1168322C (zh) * 1998-07-03 2004-09-22 株式会社哈德森 图象编码和解码方法
US6636222B1 (en) * 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
WO2000060479A1 (en) * 1999-03-19 2000-10-12 Microsoft Corporation Methods and apparatus for generating and representing luminance intensity values
US7251360B2 (en) * 2003-02-14 2007-07-31 Canon Kabushiki Kaisha Look-up table generation method, computer program, and imaging apparatus
SE0401850D0 (sv) * 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
SE526226C2 (sv) 2003-12-19 2005-08-02 Ericsson Telefon Ab L M Bildbehandling
SE0401852D0 (sv) * 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing

Also Published As

Publication number Publication date
AU2004298705A1 (en) 2005-06-30
JP2007515124A (ja) 2007-06-07
SE0303497L (sv) 2005-06-20
CN1898699A (zh) 2007-01-17
HUE042288T2 (hu) 2019-06-28
CN100498838C (zh) 2009-06-10
SE526226C2 (sv) 2005-08-02
CA2545414A1 (en) 2005-06-30
TR201901009T4 (tr) 2019-02-21
ES2716560T3 (es) 2019-06-13
SE0303497D0 (sv) 2003-12-19
EP1697897A1 (en) 2006-09-06
RU2317587C1 (ru) 2008-02-20
EP2688042A1 (en) 2014-01-22
CN100504926C (zh) 2009-06-24
US7636471B2 (en) 2009-12-22
AU2004298705B2 (en) 2009-08-20
US20070140554A1 (en) 2007-06-21
BRPI0417576A (pt) 2007-03-20
BRPI0417576B1 (pt) 2017-04-18
PL2688042T3 (pl) 2019-06-28
CN1918602A (zh) 2007-02-21
EP1697897B1 (en) 2014-05-21
WO2005059836A1 (en) 2005-06-30
CA2545414C (en) 2014-08-26
CN1898700A (zh) 2007-01-17
EP2688042B1 (en) 2019-01-09
CN100550057C (zh) 2009-10-14
ZA200604184B (en) 2007-11-28

Similar Documents

Publication Publication Date Title
JP4444967B2 (ja) 画像処理
RU2407223C2 (ru) Сжатие текстуры на основании двух оттенков с модифицированной яркостью
KR100821762B1 (ko) 알파 이미지 처리 방법 및 장치
US9466125B2 (en) Weight based image processing
JP4444970B2 (ja) マルチモード画像処理
US7787691B2 (en) High quality image processing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091218

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100114

R150 Certificate of patent or registration of utility model

Ref document number: 4444967

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250