(57)【要約】【課題】本発明はブロックノイズの影響を抑えつつ画像データを圧縮することを目的とする。【解決手段】複数の入力画素値をブロック単位で圧縮して出力する第１ブロックエンコーダを有し、第１ブロックエンコーダは、ブロックの先頭の第１入力画素値を出力し、ブロックに含まれる第１入力画素値以外の第２入力画素値を第１入力画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力する第１エンコーダと、を有することを特徴とする画像符号化装置。【選択図】図２Ｂ
2015053590.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力画素値をブロック単位で圧縮して出力する第１ブロックエンコーダを有し、
前記第１ブロックエンコーダは、
前記ブロックの先頭の第１入力画素値を出力し、
前記ブロックに含まれる前記第１入力画素値以外の第２入力画素値を前記第１入力画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力する第１エンコーダを有することを特徴とする画像符号化装置。
【請求項２】
複数の入力画素値をブロック単位で圧縮して出力する第１ブロックエンコーダを有し、
前記第１ブロックエンコーダは、
前記ブロックの先頭の第１入力画素値を第１圧縮画素値に圧縮して出力する第２エンコーダと、
前記ブロックに含まれる前記第１入力画素値以外の第２入力画素値を前記第１圧縮画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力する第１エンコーダと、
を有することを特徴とする画像符号化装置。
【請求項３】
前記第１エンコーダは、前記第２入力画素値と参照する画素値との差分を量子化することを特徴とした請求項１又は請求項２に記載の画像符号化装置。
【請求項４】
前記参照する画素値は前記ブロックの先頭の前記第１圧縮画素値が復号化された復号化画素値を含むことを特徴とした請求項３に記載の画像符号化装置。
【請求項５】
前記第１エンコーダは、前記第２入力画素値を直接量子化することを特徴とした請求項１又は請求項２に記載の画像符号化装置。
【請求項６】
前記第１ブロックエンコーダとは異なる方式で、前記複数の入力画素値をブロック単位で圧縮して出力し、前記第１ブロックエンコーダとは異なる第２ブロックエンコーダと、
前記第１ブロックエンコーダによって圧縮・復号化された復号化画素値と前記第１ブロックエンコーダに入力された入力画素値との誤差と、前記第２ブロックエンコーダによって圧縮・復号化された復号化画素値と前記第２ブロックエンコーダに入力された入力画素値との誤差と、を比較して、誤差が小さいブロックエンコーダから出力された圧縮画素値を選択して出力する第１マルチプレクサと、を有することを特徴とした請求項１又は請求項２に記載の画像符号化装置。
【請求項７】
前記第１ブロックエンコーダは、
前記第２入力画素値をそれぞれが異なる方法で第２圧縮画素値に圧縮して出力する複数の第１エンコーダと、
前記の第１エンコーダから出力された前記第２圧縮画素値が復号化された第２復号化画素値と前記第２入力画素値との誤差を前記第１エンコーダ別に比較して、最も誤差が小さい前記第１エンコーダから出力された圧縮画素値を選択して出力する第２マルチプレクサと、
を有することを特徴とした請求項１又は請求項２に記載の画像符号化装置。
【請求項８】
前記第２ブロックエンコーダは、
第３入力画素値をそれぞれが異なる方法で第３圧縮画素値に圧縮して出力する複数の第３エンコーダを有し、
前記第３エンコーダから出力された前記第３圧縮画素値が復号化された第３復号化画素値と前記第３入力画素値との誤差を前記第３エンコーダ別に比較して、最も誤差が小さい前記第３エンコーダから出力された圧縮画素値を選択して出力する第３マルチプレクサに接続されることを特徴とした請求項３に記載の画像符号化装置。
【請求項９】
複数の入力画素値をブロック単位で符号化する方法において、
第１ブロックエンコーダによって前記ブロックの先頭の第１入力画素値を出力し、
第１エンコーダによって前記ブロックに含まれる前記第１入力画素値以外の第２入力画素値を前記第１圧縮画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力することを特徴としたデータ符号化方法。
【請求項１０】
複数の入力画素値をブロック単位で符号化する方法において、
第２エンコーダによって前記ブロックの先頭の第１入力画素値を第１圧縮画素値に圧縮して出力し、
第１エンコーダによって前記ブロックに含まれる前記第１入力画素値以外の第２入力画素値を前記第１圧縮画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力することを特徴としたデータ符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを符号化する技術に関する。
【背景技術】
【０００２】
表示パネルを駆動するときは、表示パネルの画素数および表示の階調数に応じた容量のフレームメモリが用いられる。表示パネルの表示品質を向上させるために、特に、携帯電話、スマートフォンなどに用いられる表示パネルにおいては、高精細化などが進んでいる。そのため、フレームメモリの容量についても増加することになり、コストの増加につながっていた。そこで、コスト低減のため、フレームメモリの容量を削減する試みがなされている。また、携帯電話、スマートフォンなどに用いられる表示パネルでは、部分的にフレームメモリを書き換える機能が要求されている。そのため、画像を固定長のブロックに分割して、ブロックごとに圧縮・展開を行う技術が開発されている。例えば、特許文献１では、ブロック毎の圧縮・展開を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１１３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一方で、ブロックごとに圧縮・展開を行うと、画像劣化が発生しやすい問題があった。特に、ブロックの先頭の画素のデータが元のデータから大きくずれてしまうことに起因したブロックノイズの影響で、画像を拡大したときにブロック間の境界が目立ってしまう問題があった。そのため、ブロックノイズを低減し、画像データの圧縮率を高めつつブロックノイズの影響が小さい高品質の圧縮方法が望まれている。
【０００５】
本発明はブロックノイズの影響を抑えつつ画像データを圧縮することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一実施形態に係る画像符号化装置は、複数の入力画素値をブロック単位で圧縮して出力する第１ブロックエンコーダを有し、第１ブロックエンコーダは、ブロックの先頭の第１入力画素値を出力し、ブロックに含まれる第１入力画素値以外の第２入力画素値を第１入力画素値値よりもビット数の少ない第２圧縮画素値に値に圧縮して出力する第１エンコーダを有する。
【０００７】
複数の入力画素値をブロック単位で圧縮して出力する第１ブロックエンコーダを有し、第１ブロックエンコーダは、ブロックの先頭の第１入力画素値を第１圧縮画素値に圧縮して出力する第２エンコーダと、ブロックに含まれる第１入力画素値以外の第２入力画素値を第１圧縮画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力する第１エンコーダと、を有する。
【０００８】
この画像符号化装置によれば、ブロックノイズの影響を抑えつつ画像データを圧縮することができる。
【０００９】
また、別の好ましい態様において、第２のエンコーダは、第２入力画素値と参照する画素値との差分を量子化してもよい。
【００１０】
また、別の好ましい態様において、参照する画素値はブロックの先頭の第１圧縮画素値が復号化された復号化画素値を含んでもよい。
【００１１】
また、別の好ましい態様において、第２のエンコーダは、第２入力画素値を直接量子化してもよい。
【００１２】
この画像符号化装置によれば、ブロックノイズの影響を抑えつつ、さらに劣化の小さい画像データを圧縮することができる。
【００１３】
また、別の好ましい態様において、第１ブロックエンコーダとは異なる方式で、複数の入力画素値をブロック単位で圧縮して出力する第２ブロックエンコーダと、第１ブロックエンコーダによって圧縮・復号化された復号化画素値と前記第１ブロックエンコーダに入力された入力画素値との誤差と、第２ブロックエンコーダによって圧縮・復号化された復号化画素値と前記第２ブロックエンコーダに入力された入力画素値との誤差と、を比較して、誤差が小さいブロックエンコーダから出力された圧縮画素値を選択して出力する第１マルチプレクサと、を有してもよい。
【００１４】
また、別の好ましい態様において、第１ブロックエンコーダは、第２入力画素値をそれぞれが異なる方法で第２圧縮画素値に圧縮して出力する複数の第１エンコーダと、第１エンコーダから出力された、第２圧縮画素値が復号化された第２復号化画素値と第２入力画素値との誤差を前記第１エンコーダ別に比較して、最も誤差が小さい前記第１エンコーダから出力された圧縮画素値を選択して出力する第２マルチプレクサに接続されてもよい。
【００１５】
また、別の好ましい態様において、第２ブロックエンコーダは、第３入力画素値をそれぞれが異なる方法で第３圧縮画素値に圧縮して出力する複数の第３エンコーダを有し、第３エンコーダから出力された複数の第３圧縮画素値が復号化された複数の第３復号化画素値と第３入力画素値との誤差を前記第３エンコーダ別に比較して、最も誤差が小さい前記第３エンコーダから出力された圧縮画素値を選択して出力する第３マルチプレクサに接続されてもよい。
【００１６】
この画像符号化装置によれば、多様な画像データに対しても、ブロックノイズの影響を抑えつつ、劣化の小さい画像データを圧縮することができる。
【００１７】
本発明の一実施形態に係る画像データの符号化方法は、複数の入力画素値をブロック単位で符号化する方法において、第１ブロックエンコーダによってブロックの先頭の第１入力画素値を出力し、第１エンコーダによってブロックに含まれる第１入力画素値以外の第２入力画素値を第１圧縮画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力する。
【００１８】
本発明の一実施形態に係る画像データの符号化方法は、複数の入力画素値をブロック単位で符号化する方法において、第２エンコーダによってブロックの先頭の第１入力画素値を第１圧縮画素値に圧縮して出力し、第１エンコーダによってブロックに含まれる第１入力画素値以外の第２入力画素値を第１圧縮画素値よりもビット数の少ない第２圧縮画素値に圧縮して出力する。
【００１９】
この画像符号化装置によれば、ブロックノイズの影響を抑えつつ画像データを圧縮することができる。
【発明の効果】
【００２０】
本発明によれば、ブロックノイズの影響を抑えつつ画像データを圧縮することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１実施形態に係る表示装置１の構成を示す概略図である。
【図２Ａ】本発明の第１実施形態に係る圧縮器１０の構成を示すブロック図である。
【図２Ｂ】本発明の第１実施形態に係る１ブロック分の圧縮画素値を示す図である。
【図３】本発明の第１実施形態に係るノーマルエンコーダ１２０の構成を示すブロック図である。
【図４】本発明の第１実施形態に係るランダムエンコーダ１３０の構成を示すブロック図である。
【図５】本発明の第１実施形態に係る画像データの画素値の入力順の例を説明する図である。
【図６】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるダイレクトモードエンコードの例を説明する図である。
【図７】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるバックワードリファレンスモードエンコードの例を説明する図である。
【図８】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるグレーモードエンコードの例を説明する図である。
【図９】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるフォワードリファレンスモードエンコードの例を説明する図である。
【図１０】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるリニア２モードエンコードの例を説明する図である。
【図１１】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるパターン２モードエンコードの例を説明する図である。
【図１２】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるパターン３モードエンコードの例を説明する図である。
【図１３】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるリニア４モードエンコードの例を説明する図である。
【図１４】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるリセットリニア４モードエンコードの例を説明する図である。
【図１５】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるパターン４モードエンコードの例を説明する図である。
【図１６】本発明の第１実施形態に係るノーマルエンコーダ１２０におけるターミナルモードエンコードの例を説明する図である。
【図１７】本発明の第１実施形態に係るランダムエンコーダ１３０におけるダイレクトモードエンコードの例を説明する図である。
【図１８】本発明の第１実施形態に係るランダムエンコーダ１３０におけるバックワードリファレンスモードエンコードの例を説明する図である。
【図１９Ａ】本発明の第１実施形態に係る４ビットへの直接量子化において用いられる量子化テーブルの例を説明する図である。
【図１９Ｂ】本発明の第１実施形態に係る３ビットへの直接量子化において用いられる量子化テーブルの例を説明する図である。
【図２０Ａ】本発明の第１実施形態に係るノーマルエンコーダにおける２ビットへの差分量子化において用いられる量子化テーブルの例を説明する図である。
【図２０Ｂ】本発明の第１実施形態に係るノーマルエンコーダにおける３ビットへの差分量子化において用いられる量子化テーブルの例を説明する図である。
【図２１Ａ】本発明の第１実施形態に係るランダムエンコーダにおける２ビットへの差分量子化において用いられる量子化テーブルの例を説明する図である。
【図２１Ｂ】本発明の第１実施形態に係るランダムエンコーダにおける３ビットへの差分量子化において用いられる量子化テーブルの例を説明する図である。
【図２２】本発明の第１実施形態に係るシフト演算の演算方法を示すブロック図である。
【図２３】本発明の第１実施形態に係る伸長器３０の構成を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態に係る表示装置について、図面を参照しながら詳細に説明する。なお、以下に示す実施形態は本発明の実施形態の一例であって、本発明はこれらの実施形態に限定されるものではない。
【００２３】
＜第１実施形態＞
本発明の第１実施形態に係る表示装置について、図面を参照しながら詳細に説明する。
【００２４】
［全体構成］
図１は、本発明の第１実施形態に係る表示装置１の構成を示す概略図である。表示装置１は、スマートフォン、携帯電話、パーソナルコンピュータ、テレビなどにおいて画像を表示する装置であり、例えば有機ＥＬディスプレイ、液晶ディスプレイなどである。表示装置１は、圧縮器１０、フレームメモリ２０、伸長器３０、駆動部４０および表示パネル５０を有する。圧縮器１０、伸長器３０および駆動部４０については、その一部または全部が、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などにより実行されるプログラムによりソフトウェア上で実現されてもよいし、ハードウェア上で実現されてもよい。
【００２５】
表示装置１に表示する画像の各画素の画像データを表す画素値が入力され、この入力画素値に基づく画像が表示パネル５０に表示される。表示パネル５０は複数の画素（例えば、ｍ×ｎのマトリクス）を有する。この例では、各画素は、Ｒ（赤）、Ｇ（緑）、Ｂ（青）の３色のサブ画素により構成されている。入力画素値において各画素は２４ビット（Ｒ、Ｇ、Ｂ各８ビット）で規定されている。なお、この例では２４ビットとしているが、より少ないビット数（例えば１８ビットなど）であってもよいし、多いビット数（例えば３０ビット、４８ビットなど）であってもよい。
【００２６】
図１に示すように、入力画素値が圧縮器１０に入力されて圧縮され、圧縮された圧縮画素値がフレームメモリ２０に記憶される。この例では、１６画素の入力画素値を１ブロックとして、各ブロックで圧縮が行われる。２４ビット×１６画素＝３８４ビットを１ブロック分の入力画素値として、１９２ビットに圧縮される。すなわち、半分の容量に圧縮される。フレームメモリ２０に記憶された圧縮画素値は、１ブロック単位で伸長器３０により復号化される。復号化された画素値を復号化画素値という。駆動部４０は、復号化画素値を用いて表示パネル５０を駆動して、各画素が復号化画素値に応じた階調になるように制御する駆動回路などである。これにより、表示パネル５０に復号化画素値に応じた画像が表示される。以下、圧縮器１０の構成について、詳述する。なお、この例では半分の容量に圧縮しているが、より小さい容量に圧縮してもよいし、逆にそれより大きい容量に圧縮してもよい。
【００２７】
［圧縮器１０の構成］
図２Ａは、本発明の第１実施形態に係る圧縮器１０の構成を示すブロック図である。図２Ａに示すように、圧縮器１０は複数のエンコーダユニット１１で構成される。本実施形態では、それぞれのエンコーダユニットに１６画素ずつ画素値が入力されて、圧縮が行われる。
【００２８】
図２Ａに示すように、それぞれの圧縮器１０は、入力バッファ１００、出力バッファ１０１、第１ブロックエンコーダ１２０（以下、ノーマルエンコーダという）、第２ブロックエンコーダ１３０（以下、ランダムエンコーダという）、誤差評価マルチプレクサ（以下、ＭＵＸという）１４０を有する。
【００２９】
まず、表示装置１の各画素の画像値が１画素単位で入力バッファ１００に入力される。本実施例では、１６画素を１ブロック単位として扱う。入力バッファは書き込み位置を示すポインタによって示される記憶領域に１ブロック分の入力画素値を順次格納し、読み出し位置を示すポインタによって示される記憶領域から入力画素値を次のエンコーダユニット１１へとデータを転送する。携帯用機器の表示パネルでは、部分的にフレームメモリを書き換える機能が要求されるため、入力画素値を固定長のブロックに分割して、ブロック単位で圧縮と復号化を行う必要がある。本実施形態では、１６画素を１ブロックとしてデータ処理しているが、これに限定されず、例えば８画素単位や４画素単位など、より少ない画素単位でもよく、逆に３２画素単位のようにより多い画素単位でもよい。
【００３０】
通常、１ブロックがバッファに入力される時間よりも、エンコーダユニットで圧縮にかかる時間の方が長い。したがって、圧縮時間を短縮するために、複数のエンコーダユニットを配置して、並列にデータ処理することが望ましい。エンコーダユニットは一つの回路を使用して、時間を分けて全画素のデータ処理を行ってもよく、また、複数の回路を使用して、並列にデータ処理してもよい。
【００３１】
エンコーダユニット１１は、ノーマルエンコーダ１２０とランダムエンコーダ１３０を含む。ノーマルエンコーダ１２０は画素間の相関性が高いブロックをデータ処理するのに適している。ランダムエンコーダ１３０は画素間の相関性がほとんどないブロックをデータ処理するのに適している。詳細は後述するが、誤差の評価方法及び選定方法を簡単に説明する。ノーマルエンコーダ１２０とランダムエンコーダ１３０は並列に動作し、それぞれのエンコーダで圧縮して１ブロック分の圧縮画素値を出力する。また、ノーマルエンコーダ１２０によって圧縮・復号化された復号化画素値とノーマルエンコーダ１２０に入力された入力画素値との誤差と、ランダムエンコーダ１３０によって圧縮・復号化された復号化画素値とランダムエンコーダ１３０に入力された入力画素値との誤差と、を比較して、誤差が小さい方のエンコーダから出力された圧縮画素値をその誤差と共に出力する。
【００３２】
図２Ｂに示すように、本実施形態の１ブロック分の圧縮画素値はエンコーダによって異なるが、いずれのエンコーダにおいても１ブロック分の圧縮画素値は１９２ビットで表現される。元の入力画素値は各画素がＲＧＢそれぞれ８ビットで表現され、上記のように３８４ビットで表現されるので、５０％の圧縮率となる。ここで、１ブロック分の圧縮画素値の最初の１ビットの値によって、その１ブロック分の圧縮画素値がノーマルエンコーダ、ランダムエンコーダのどちらによって圧縮されたものかを判別することができる。この例では、１ブロック分の最初の１ビットが“０”の場合はノーマルエンコーダによって圧縮された１ブロック分の圧縮画素値であることを意味し、１ブロック分の最初の１ビットが“１”の場合はランダムエンコーダによって圧縮された１ブロック分の圧縮画素値であることを意味する。
【００３３】
ノーマルエンコーダによって圧縮された１ブロック分の圧縮画素値は、ブロックの先頭の画素（ｐｉｘｅｌ０）の第１画素値を２４ビットで表現している。最初の画素値を２４ビットで表現する、つまりブロックの先頭の入力画素値は圧縮されないためデータが劣化することはなく、ブロックノイズの影響を小さくすることができる。後続の画素値はそれぞれ１１ビットで表現され、直接量子化されるモードや他の参照画素の復号化画素値を参照した複数のモードで量子化される。隣接する画素間の画素値の相関性が高い場合には、入力画素値と他の参照画素の復号化画素値との差分を量子化することで、少ないビット数で画質劣化を抑制することができる。なお、これらの複数のモードの量子化方法については、後で詳しく説明する。
【００３４】
一方、ランダムエンコーダによって圧縮された１ブロック分の圧縮画素値は、全ての画素値を１２ビットで表現している。これは、画素間の相関性が低い場合には、一部の圧縮画素値に比重を大きくビットを割り当てるよりも、全ての圧縮画素値に平均的にビットを割り当てた方が画質劣化を抑制することができるためである。詳細は後述するが、この場合も入力画素値は複数のモードで圧縮される。
【００３５】
ノーマルエンコーダ１２０とランダムエンコーダ１３０との両方から出力された二つの１ブロック分の圧縮画素値と誤差とがＭＵＸ１４０に入力される。ＭＵＸ１４０は、入力された１ブロック分の圧縮画素値から誤差が小さいエンコーダの出力を選定して、出力バッファに圧縮画素値を送る役割を持つ。ここで、バッファに出力される圧縮画素値は入力された入力画素値と同じ１６画素単位に限定されず、任意に設定することができる。
【００３６】
なお、本実施形態における誤差の計算は以下の式で表される。以下の式（１）において、Ｒ、Ｇ、Ｂは圧縮前の入力画素値を示しており、Ｒ’、Ｇ’、Ｂ’は復号化後の復号化画素値を示す。式（１）では、１６画素分の誤差の合計を計算している。
2015053590.tif 000003
【００３７】
図３は、ノーマルエンコーダ１２０の詳細な構成を示すブロック図である。図３に示すように、ノーマルエンコーダ１２０はエンコードモードＡ乃至エンコードモードＮおよびエンコードモードＸの圧縮を行う複数のエンコーダＡ１２１乃至エンコーダＮ１２３およびエンコーダＸ１２９で圧縮して出力する。本実施形態では、それぞれのエンコーダには１乃至４画素ずつデータが入力されて、それぞれデータの圧縮が行われる。各エンコーダについては、後で詳しく説明する。また、本実施例においてはエンコードモードＸのエンコーダＸでは圧縮せずに、２４ビットのまま出力バッファへと出力するため、エンコーダＸを設けなくてもよい。エンコーダＸが設けられていない場合は、ノーマルエンコーダ１２０がブロックの先頭の入力画素値を出力すると表現する。ただし、本実施例に限定されず、エンコーダＸで圧縮して出力してもよい。
【００３８】
図３に示すように、それぞれのノーマルエンコーダ１２０は、入力バッファ１０２、出力バッファ１０３、メモリ１１１、エンコーダＡ１２１、エンコーダＢ１２２、・・・、エンコーダＮ１２３、エンコーダＸ１２９、ＭＵＸ１４１、デコーダＡ１５１、デコーダＢ１５２、・・・、デコーダＮ１５３、デコーダＸ１５９、を有する。
【００３９】
本実施形態では、ノーマルエンコーダ１２０はブロックの先頭の第１画素値を２４ビットで表現し、第１画素値以外の画素値を１画素当たり１１ビットで表現している（図２Ｂ「ノーマルブロックフォーマット」参照）。本実施形態では、ブロックの先頭の入力画素値はエンコーダＸ１２９に入力されているが、２４ビットの画素値のまま出力される。もちろん、エンコーダＸを介さずに、第１経路によってそのまま出力バッファに出力されてもよい。そして、それ以降の入力画素値はエンコーダＡ１２１乃至エンコーダＮ１２３でそれぞれエンコードされ、１画素当たり１１ビットの圧縮画素値へ圧縮される。
【００４０】
このように、ブロックの先頭の第１画素値を２４ビットで表現することによって、ブロックの先頭の圧縮画素値が入力画素値から大きくずれてしまうことに起因したブロックノイズの影響を抑制することが可能になる。本実施形態では、ブロックの先頭の画素値を２４ビットで表現しているが、これに限定されず、ブロックの後続の圧縮画素値のビット数よりも比重が大きければよく、適宜設定することが可能である。
【００４１】
入力バッファ１０２は、記憶領域に１画素乃至４画素ずつ入力画素値を順次格納し、次の各エンコーダへと転送する。入力バッファ１０２から転送された入力画素値は複数のエンコーダによって並列で圧縮が行われる。これらのエンコーダで圧縮が行われる画素数はエンコードモードによって異なる。本実施形態では、１画素乃至４画素ずつ圧縮を行っているが、これに限定されず、もっと多くの画素を同時に圧縮してもよい。
【００４２】
メモリ１１１には、複数の画素に対応する復号化画素値が記憶されている。この複数の画素とは参照画素を含み、参照画素の復号化画素値が必要なエンコードモードにおいて、参照画素の復号化画素値がメモリに記憶されている。本実施形態では、対象画素が参照画素の復号化画素値と同じ値を取るように圧縮されるエンコードモードや、対象画素の入力画素値と参照画素の復号化画素値との差分を量子化するエンコードモードがあり、メモリ１１１にはそれぞれのモードで参照する画素の復号化画素値が記憶されている。この例では、参照画素の位置はエンコードモードによって異なる。
【００４３】
エンコーダＡ１２１乃至エンコーダＮ１２３の全てから出力された複数の圧縮画素値と、これらの圧縮画素値がそれぞれデコーダＡ１５１乃至デコーダＮ１５３によって復号化された複数の復号化画素値と、元の入力画素値とそれぞれの復号化画素値とを比較して算出された誤差と、がＭＵＸ１４１に入力される。ＭＵＸ１４１は、入力された複数の圧縮画素値及び復号化画素値から誤差が最小のエンコーダの出力を選定して、選定された圧縮画素値を出力バッファ１０３に、選定された復号化画素値をメモリ１１１送る役割を持つ。ここで、バッファに出力される圧縮画素値は入力された入力画素値と同じ画素数に限定されず、任意に設定することができる。
【００４４】
なお、本実施形態におけるエンコードモードＡ乃至エンコードモードＮの誤差の計算は以下の式で表される。ここで、式中のｉは０乃至Ｎの任意のインデックスを表し、例えば４画素を同時にエンコードするエンコードモードにおいて、１番目（ｉ＝０）の画素から４番目（ｉ＝３）の画素までのそれぞれの誤差を計算し、その中で最大の誤差を出力する。以下の式（２）において、Ｒ、Ｇ，Ｂは量子化前の入力画素値を示しており、Ｒ’、Ｇ’，Ｂ’は復号化後の復号化画素値を示す。
2015053590.tif 000004
【００４５】
図４は、ランダムエンコーダ１３０の詳細な構成を示すブロック図である。ランダムエンコーダ１３０の構成及び動作方法はノーマルエンコーダ１２０と実質同一なので、異なる点について説明する。図４に示すように、ランダムエンコーダ１３０はエンコードモードＯ乃至エンコードモードＰの圧縮を行う複数のエンコーダＯ１３１乃至エンコーダＰ１３２で圧縮される。また、ランダムエンコーダ１３０は１ブロック全ての圧縮画素値に対して各画素１２ビットで表現されている。
【００４６】
入力バッファ１０４から入力された入力画素値はエンコーダＯ１３１とエンコーダＰ１３２の両方に送られ、両方のエンコーダで並列にデータの圧縮が行われる。ランダムエンコーダでは画素間の相関性が低い入力画素値を処理することが目的であるため、複数の画素を同時に処理せず、それぞれのエンコーダには１画素ずつデータが入力されて圧縮が行われる。それぞれのエンコーダで圧縮された圧縮画素値と、デコーダＯ１６１とデコーダＰ１６２によって復号化された復号化画素値と、元の入力画素値とそれぞれの復号化画素値とを比較して算出された誤差と、がＭＵＸ１４２に入力される。ＭＵＸ１４２は、入力された圧縮画素値及び復号化画素値から誤差が小さいエンコーダの出力を選定して、選定された圧縮画素値を出力バッファ１０５に、選定された復号化画素値をメモリ１１２送る役割を持つ。ここでは、入力は１画素ずつ行われる例を示したが、もちろん複数の画素を同時に処理してもよい。また、バッファに出力される圧縮画素値は入力画素値と同じ画素数に限定されず、任意に設定することができる。
【００４７】
［参照画素］
図５は、本発明の第１実施形態に係る表示装置１に表示する画像の圧縮・復号化の例を説明する図である。この例では、図５に示すように１行１列目（１，１）からｍ列目（ｍ，１）、２行１列目（１，２）からｍ列目（ｍ，２）、・・・の画素の順に入力画素値を圧縮・復号化している。ここで、圧縮・復号化の対象画素は（ｘ，ｙ）と記している。以下の説明で、過去に圧縮・復号化した、という場合は（ｘ−１，ｙ）、（ｘ−２，ｙ）、・・・の画素を指す。この例では、線順次的に画素値が入力されているが、これに限定されず、例えばｎ×ｎ画素単位で画素値を入力してもよい。例えば、１６画素単位で処理する場合は、ｎ＝４として４×４画素単位で画素値を入力してもよい。
【００４８】
［圧縮画素値の構成］
図６〜１６は、本発明の第１実施形態に係るノーマルエンコーダ１２０のエンコードモードＡ乃至エンコードモードＮの各圧縮方法の圧縮画素値の構成を説明する図である。各画素の圧縮画素値は、この例では一つの画素に対して固定長の１１ビットのデータであり、識別子、参照値（Ｒｅｆ）及びパターン値（Ｐａｔｔｅｒｎ）のデータと各ＲＧＢの量子化値のデータとに区分されている。また、圧縮は１つの画素毎に行われてもよく、また、複数の画素毎にまとめて行われてもよい。この場合は識別子、参照値及びパターン値のデータが先頭に表示され、後続のビットに１つ又は複数の画素に対応する量子化値が表示される。本実施例では、先頭のビットが識別子及び参照値に対応し、後続のビットが量子化値に対応していたが、どの部分が識別子及び参照値であるか量子化値であるかは予め決められていればよい。なお、この例では１１ビットに圧縮する場合を説明するが、ビット数はより多くても少なくてもよい。以下に、複数のエンコーダの圧縮方法について図６〜１６を用いて説明する。
【００４９】
（１）ダイレクトモード
図６にダイレクトモードによって圧縮された圧縮画素値の構成を示す。このモードでは、元の入力画素値のＲＧＢがそれぞれ直接量子化される。ダイレクトモードにおいて生成される圧縮画素値の１１ビットの内訳は、識別子が最初の１ビット、直接量子化によって得られた量子化値のＧが４ビット、Ｒ、Ｂがそれぞれ３ビットである。この例における量子化値は、Ｇが４ビットであるが、これを３ビットとしてＲ又はＢが４ビットになるようにしてもよい。ただし、人間にとっては、Ｇ、Ｒ、Ｂの順に明るさの変化の分解能が高いため、Ｒ、Ｇ、Ｂのいずれかを多い量子化ビット数にする必要があれば、分解能の高いＧを多いビットに割り当てることが望ましい。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは隣接する画素間の相関性が低い場合に有効である。
【００５０】
（２）バックワードリファレンスモード
図７にバックワードリファレンスモードによって圧縮された圧縮画素値の構成を示す。バックワードリファレンスモードにおいて生成される圧縮画素値の１１ビットの内訳は、識別子が最初の２ビット、参照値が続く２ビット、差分量子化によって得られた差分量子化値のＤＧが３ビット、ＤＲ、ＤＢがそれぞれ２ビットである。このモードでは、過去に圧縮された４つの画素Ｑ０〜Ｑ３の復号化画素値と対象画素Ｐの入力画素値との差分値がそれぞれ量子化され、４つの画素Ｑ０〜Ｑ３に対する圧縮画素値がそれぞれ得られる。これらの圧縮画素値はデコーダによって復号化され、４つの画素Ｑ０〜Ｑ３に対する復号化画素値がそれぞれ得られる。得られた復号化画素値のうち、最も元の入力画素値との誤差が小さい画素が参照画素として選択される。具体的には、対象画素とＱ０〜Ｑ３との差分値の量子化は、例えばメモリ１１１に保存されたＱ０の復号化画素値と対象画素Ｐの入力画素値との差分値を量子化する。続いて、Ｑ１、Ｑ２、Ｑ３に対しても上記の方法でそれぞれの差分値が量子化され、Ｑ０〜Ｑ３のそれぞれに対しての圧縮画素値が得られる。そして、これらの圧縮画素値をデコードした復号化画素値と元の入力画素値との誤差が最も小さい画素が参照画素として選択され、対象画素と上記の選択された参照画素との圧縮画素値及び復号化画素値が出力される。参照画素の位置情報は、Ｒｅｆのビットに格納される。なお、参照画素との差分量子化の方法についての詳細は後述する（図２０Ａ，２０Ｂ参照）。
【００５１】
ここで、差分値とは対象画素の入力画素値と参照画素の復号化画素値との間の差を示す。入力画素値は入力バッファに入力された対象画素の画素値であり、参照画素の復号化画素値は過去に圧縮された参照画素の圧縮画素値をデコーダによって復号化した値（例えば、図７のＱ０〜Ｑ３に該当）に該当する。なお、このモードは隣接する画素間の相関性が高い場合に有効である。
【００５２】
（３）グレーモード
図８にグレーモードによって圧縮された圧縮画素値の構成を示す。このモードは、Ｇ、Ｒ、Ｂが近い数値、つまりグレー表示されているケースを想定した場合の圧縮の方法である。グレーモードにおいて生成される圧縮画素値の１１ビットの内訳は、識別子が最初の５ビット、グレーとしての量子化値が６ビットであり、Ｒ、Ｇ、Ｂはそれぞれ同じ値に直接量子化されると定義され、６ビットで表現される。例えば、Ｇｒｅｙのビットの量子化値が「１０１１００」である場合、Ｒ，Ｇ，Ｂのそれぞれの量子化値が「１０１１００」であることを意味する。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは画素のＲ，Ｇ，Ｂが近いグレーモードの場合に有効である。
【００５３】
（４）フォワードリファレンスモード
図９にフォワードリファレンスモードによって圧縮された圧縮画素値の構成を示す。フォワードリファレンスモードにおいて生成される圧縮画素値は、２画素分を２２ビットで表現される。その２２ビットの内訳は、識別子が最初の７ビット、参照値が続く１ビット、第１対象画素及び第２対象画素それぞれの差分量子化値のＤＧ０，ＤＧ１がそれぞれ３ビット、ＤＲ０，ＤＲ１、ＤＢ０，ＤＢ１がそれぞれ２ビットである。このモードでは、第２対象画素Ｐ１の入力画素値と過去に圧縮された２つの画素Ｑ０、Ｑ１の復号化画素値との差分値がそれぞれ量子化され、第１対象画素Ｐ０の入力画素値と第２対象画素Ｐ１の復号化画素値との差分値が量子化され、２画素分の圧縮画素値が得られる。２画素分の圧縮画素値は、過去に圧縮された２つの画素Ｑ０、Ｑ１のそれぞれに対して求められ、デコーダによって復号化され、Ｑ０、Ｑ１のそれぞれに対する２画素分の復号化画素値が得られる。２つの画素Ｑ０、Ｑ１のそれぞれに対する復号化画素値のうち、元の入力画素値との誤差が小さい結果となる方が参照画素として選択される。参照画素の位置情報は、Ｒｅｆのビットに格納される。具体的な差分値の量子化方法は、上記のバックワードリファレンスにおける量子化方法と同様にして行われる。このように、フォワードリファレンスモードでは２画素をまとめて圧縮する。なお、参照画素との差分量子化の方法についての詳細は後述する（図２０Ａ，２０Ｂ参照）。なお、このモードは隣接する画素間の相関性が高い場合に有効である。
【００５４】
（５）リニア２モード
図１０にリニア２モードによって圧縮された圧縮画素値の構成を示す。リニア２モードにおいて生成される圧縮画素値は、２画素分を２２ビットで表現される。その２２ビットの内訳は、識別子が最初の５ビット、第２対象画素Ｐ１の量子化値のＧ１、Ｒ１がそれぞれ６ビット、Ｂ１が５ビットであり、これらは直接量子化される。第１対象画素Ｐ０の復号化画素値は、過去に圧縮された参照画素Ｑの復号化画素値と第２対象画素Ｐ１の復号化画素値との中間値を取ると定義される。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは隣接する画素の色調が一定の割合で変化している場合に有効である。
【００５５】
（６）パターン２モード
図１１にパターン２モードによって圧縮された圧縮画素値の構成を示す。パターン２モードにおいて生成される圧縮画素値は、２画素分を２２ビットで表現される。その２２ビットの内訳は、識別子が最初の５ビット、参照値が続く１ビット、第１対象画素Ｐ０の量子化値のＧ０が６ビット、Ｂ０、Ｒ０がそれぞれ５ビットであり、これらは直接量子化される。第２対象画素Ｐ１の復号化画素値は、過去に圧縮された参照画素Ｑ又は第１対象画素Ｐ０の復号化画素値に等しい値を取ると定義され、Ｑ，Ｐ０のそれぞれに対して得られた２画素分の復号化画素値のうち、Ｐ１の入力画素値との誤差が小さい方が参照画素として選択される。参照画素の位置情報は、Ｒｅｆのビットに格納される。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは隣接する画素の一つが同じ画素値である場合に有効である。
【００５６】
（７）パターン３モード
図１２にパターン３モードによって圧縮された圧縮画素値の構成を示す。パターン３モードにおいて生成される圧縮画素値は、３画素分を３３ビットで表現される。その３３ビットの内訳は、識別子が最初の３ビット、パターン値が続く２ビット、対象の３画素のうち２画素の量子化値のＧ、Ｒがそれぞれ５ビット、Ｂが４ビットであり、これらは直接量子化される。ここで、上記の２画素の圧縮画素値をそれぞれＸ０、Ｘ１という。対象の３画素はＸ０及びＸ１の組み合わせによって表現され、パターン０〜３に示す４種類のパターンを有する。
【００５７】
参照画素Ｑ及び第１画素Ｐ０〜第３画素Ｐ２の関係は以下の通りである。パターン０は、Ｐ０及びＰ１がＸ０に等しく、Ｐ２がＸ１に等しい場合である（Ｐ０＝Ｐ１＝Ｘ０，Ｐ２＝Ｘ１）。パターン１は、Ｐ０及びＰ２がＸ０に等しく、Ｐ１がＸ１に等しい場合である（Ｐ０＝Ｐ２＝Ｘ０，Ｐ１＝Ｘ１）。パターン２は、Ｐ０がＸ１に等しく、Ｐ１及びＰ２がＸ０に等しい場合である（Ｐ０＝Ｘ１，Ｐ１＝Ｐ２＝Ｘ０）。パターン３は、Ｐ０がＸ０に等しく、Ｐ１がＸ１に等しく、Ｐ２がＱに等しい場合である（Ｐ０＝Ｘ０，Ｐ１＝Ｘ１，Ｐ２＝Ｑ）。
【００５８】
この例では、パターン０〜３の処理が並列又は順に行われ、パターン０〜３に対する４パターンの圧縮画素値が得られる。得られた４つの圧縮画素値はデコーダによって復号化され、４つの復号化画素値が得られる。４つの復号化画素値のうち、元の入力画素値との誤差が最も小さい結果のパターンが選択される。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは隣接する画素がある一定のパターン性を有している場合に有効である。
【００５９】
（８）リニア４モード
図１３にリニア４モードによって圧縮された圧縮画素値の構成を示す。リニア４モードにおいて生成される圧縮画素値は、４画素分を４４ビットで表現される。その４４ビットの内訳は、識別子が最初の７ビット、第４対象画素Ｐ３の量子化値のＧが７ビット、Ｂ、Ｒがそれぞれ６ビットであり、これらは直接量子化される。また、過去に圧縮された参照画素Ｑの復号化画素値とＰ３の復号化画素値との線形補間値と、各画素の入力画素値と、の差分量子化値ＤＲ，ＤＧ，ＤＢは各２ビットで表現され、合計１８ビットで表現される。ここで、第１対象画素Ｐ０〜第３対象画素Ｐ２は、図１３に示すようにＤ０〜Ｄ２が加算された線形補間によって値が決定される。これらのＤ０〜Ｄ２は線形補間値への加算値の量子化値と呼ばれ、ＱとＰ３との線形補間によって決定された値とＰ０〜Ｐ２のそれぞれの入力画素値との差分を量子化して得られる。具体的な差分量子化値の計算方法は、例えば（２）のバックワードリファレンスモードで示すような差分量子化の計算方法と同様にして行われる。また、ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは隣接する画素の色調が一定の割合で変化している場合に有効である。
【００６０】
（９）リセットリニア４モード
図１４にリセットリニア４モードによって圧縮された圧縮画素値の構成を示す。リセットリニア４モードにおいて生成される圧縮画素値は、４画素分を４４ビットで表現される。その４４ビットの内訳は、識別子が最初の８ビット、第１対象画素Ｐ０の画素値のＲ、Ｇ、Ｂはそれぞれ８ビットのまま出力される。また、第１対象画素Ｐ０の復号化画素値と第４対象画素Ｐ３の入力画素値との差分量子化値ＤＲ３，ＤＧ３，ＤＢ３は各３ビットで表現され、合計９ビットで表現される。第２対象画素Ｐ１及び第３対象画素Ｐ２は、それぞれ図１４に示すようにＰ０とＰ３との線形補間によって値が決定される。具体的な差分量子化値の計算方法は、例えば（２）のバックワードリファレンスモードで示すような差分量子化の計算方法と同様にして行われる。なお、このモードは隣接する画素の色調が一定の割合で変化している場合に有効である。
【００６１】
（１０）パターン４モード
図１５にパターン４モードによって圧縮された圧縮画素値の構成を示す。パターン４モードにおいて生成される圧縮画素値は、４画素分を４４ビットで表現される。その４４ビットの内訳は、識別子が最初の８ビット、パターン値が続く２ビット、対象の４画素のうち２画素の量子化値のＧ０，Ｇ１、Ｒ０，Ｒ１がそれぞれ６ビット、Ｂ０，Ｂ１がそれぞれ５ビットであり、これらは直接量子化される。ここで、上記の２画素の圧縮画素値をそれぞれＸ０、Ｘ１という。対象の４画素はＸ０及びＸ１の組み合わせによって表現され、該パターンはパターン０〜２に示す３種類のパターンを有する。
【００６２】
第１画素Ｐ０〜第４画素Ｐ３の関係は以下の通りである。パターン０は、Ｐ０及びＰ１がＸ０に等しく、Ｐ２及びＰ３がＸ１に等しい場合である（Ｐ０＝Ｐ１＝Ｘ０，Ｐ２＝Ｐ３＝Ｘ１）。パターン１は、Ｐ０及びＰ２がＸ０に等しく、Ｐ１及びＰ３がＸ１に等しい場合である（Ｐ０＝Ｐ２＝Ｘ０，Ｐ１＝Ｐ３＝Ｘ１）。パターン２は、Ｐ０がＸ０に等しく、Ｐ１、Ｐ２及びＰ３がＸ１に等しい場合である（Ｐ０＝Ｘ０，Ｐ１＝Ｐ２＝Ｐ３＝Ｘ１）。
【００６３】
この例では、パターン０〜２の処理が並列又は順に行われ、パターン０〜２に対する３パターンの圧縮画素値が得られる。得られた３つの圧縮画素値はデコーダによって復号化され、３つの復号化画素値が得られる。３つの復号化画素値のうち、元の入力画素値との誤差が最も小さい結果のパターンが選択される。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは隣接する画素がある一定のパターン性を有している場合に有効である。
【００６４】
（１１）ターミナルモード
図１６にターミナルモードによって圧縮された圧縮画素値の構成を示す。ターミナルモードにおいて生成される圧縮画素値は、４画素分を４４ビットで表現される。その４４ビットの内訳は、識別子が最初の８ビット、対象の４画素のうち後半の２画素（第３対象画素Ｐ２、第４対象画素Ｐ３）の量子化値のＲ０，Ｒ１、Ｇ０，Ｇ１、Ｂ０，Ｂ１がそれぞれ６ビットであり、これらは直接量子化される。このモードでは、対象の４画素のうち前半の２画素（第１対象画素Ｐ０、第２対象画素Ｐ１）は、過去に圧縮された２つの画素Ｑ０及びＱ１を参照し、Ｐ０の復号化画素値はＱ０の復号化画素値に等しく、Ｐ１の復号化画素値はＱ１の復号化画素値に等しいと定義される。ノーマルエンコーダにおける直接量子化の方法についての詳細は後述する（図２２参照）。なお、このモードは、単調色から他の色に切り替わる場合に有効である。
【００６５】
以上のように、本発明の第１実施形態に係るノーマルエンコーダ１２０のエンコーダＡ１２１乃至エンコーダＮ１２３に対応するエンコードモードＡ乃至エンコードモードＮの圧縮方法として、（１）〜（１１）に示すようなエンコードモードを採用することができる。これらのエンコードモードは並列に動作し、それぞれの圧縮によって得られた１つ又は複数の圧縮画素値、復号化画素値、入力画素値をそれぞれのエンコーダに対応するデコーダＡ１５１乃至デコーダＮ１５３に出力する。次に、それぞれのデコーダによって復号化された複数の復号化画素値と入力画素値とを比較することで誤差を算出する。そして、圧縮画素値、復号化画素値、誤差をそれぞれＭＵＸ１４１に出力する。ＭＵＸ１４１は、入力された圧縮画素値及び復号化画素値から誤差が最小のエンコーダの出力を選定して、選定された圧縮画素値を出力バッファ１０３に、選定された復号化画素値をメモリ１１１送る役割を持つ。このとき、複数の画素を同時に圧縮するモードにおいては、各画素について誤差の計算を行い、各画素の誤差の最大値をそのモードの誤差値とする。ここで、出力される量子化値は入力と同じ画素数に限定されず、任意に設定することができる。
【００６６】
図１７，１８は、本発明の第１実施形態に係るランダムエンコーダ１３０のエンコードモードＯ乃至エンコードモードＰの各圧縮方法の圧縮画素値の構成を説明する図である。各画素の圧縮画素値は、この例では一つの画素に対して固定長の１２ビットのデータであり、識別子、参照値のデータと各ＲＧＢの量子化値のデータとに区分されている。本実施例では、先頭のビットが識別子に対応し、後続のビットが量子化値に対応していたが、どの部分が識別子であるか量子化値であるかは予め決められていればよい。なお、この例では１２ビットである場合を説明するが、ビット数はより多くても少なくてもよい。以下に、複数のエンコーダの量子化方法について図１７，１８を用いて説明する。
【００６７】
（１２）ダイレクトモード
図１７にダイレクトモードによって圧縮された圧縮画素値の構成を示す。このモードでは、元の入力画素値のＲＧＢがそれぞれ直接量子化される。ダイレクトモードにおいて生成される圧縮画素値の１２ビットの内訳は、識別子が最初の１ビット、直接量子化によって得られた量子化値のＲ、Ｇがそれぞれ４ビット、Ｂが３ビットである。この例における量子化値は、Ｒ、Ｇが４ビットであるが、これらのいずれかを３ビットとしてＢが４ビットになるようにしてもよい。ただし、人間にとっては、Ｇ、Ｒ、Ｂの順に明るさの変化の分解能が高いため、Ｒ、Ｇ、Ｂのいずれかを多い量子化ビット数にする必要があれば、分解能の高いＧを多いビットに割り当てることが望ましい。ランダムエンコーダのダイレクトモードでは、１画素あたりのビット数が１２ビットに増えて量子化値のＲが４ビットになったことで、ノーマルエンコーダのダイレクトモードに比べて復号化画素値の再現性が向上している。また、本実施形態においては、ランダムエンコーダの直接量子化は図１９Ａ，図１９Ｂに示す量子化テーブルを用いている。
【００６８】
（１３）バックワードリファレンスモード
図１８にバックワードリファレンスモードによって圧縮された圧縮画素値の構成を示す。バックワードリファレンスモードにおいて生成される圧縮画素値の１２ビットの内訳は、識別子が最初の１ビット、参照値が続く２ビット、差分量子化によって得られた差分量子化値のＤＲ、ＤＧ、ＤＢがそれぞれ３ビットである。このモードでは、過去に圧縮された４つの画素Ｑ０〜Ｑ３の復号化画素値と対象画素Ｐの入力画素値との差分値がそれぞれ量子化され、４つの画素Ｑ０〜Ｑ３に対する圧縮画素値がそれぞれ得られる。これらの圧縮画素値はデコーダによって復号化され、４つの画素Ｑ０〜Ｑ３に対する復号化画素値がそれぞれ得られる。得られた復号化画素値のうち、最も元の入力画素値との誤差が小さい画素が参照画素として選択される。具体的には、対象画素とＱ０〜Ｑ３との差分値の量子化は、例えばメモリ１１２に保存されたＱ０の復号化画素値と対象画素Ｐの入力画素値との差分値を量子化する。続いて、Ｑ１、Ｑ２、Ｑ３に対しても上記の方法でそれぞれの差分値が量子化され、Ｑ０〜Ｑ３のそれぞれに対しての圧縮画素値が得られる。そして、これらの圧縮画素値をデコードした復号化画素値と元の入力画素値との誤差が最も小さい画素が参照画素として選択され、対象画素と上記の選択された参照画素との圧縮画素値及び復号化画素値が出力される。参照画素の位置情報は、Ｒｅｆのビットに格納される。なお、参照画素との差分量子化の方法についての詳細は後述する（図２１Ａ，２１Ｂ参照）。バックワードリファレンスモードは、１画素あたりのビット数が１２ビットに増えて、識別子が最初の１ビット、参照値が続く２ビット、となり差分量子化値ＤＲ，ＤＧ，ＤＢが共に３ビットになることで、ノーマルエンコーダのバックワードリファレンスモードに比べて復号化画素値の再現性が向上している。
【００６９】
以上のように、本発明の第１実施形態に係るランダムエンコーダ１３０のエンコーダＯ１３１乃至エンコーダＰ１３２に対応するエンコードモードＯ乃至エンコードモードＰの圧縮方法として、（１２）、（１３）に示すようなエンコードモードを採用することができる。これらのエンコードモードは並列に動作し、それぞれの圧縮によって得られた１つ又は複数の圧縮画素値、復号化画素値、入力画素値と復号化画素値との誤差をＭＵＸ１４２に出力する。ＭＵＸ１４２は、入力された圧縮画素値及び復号化画素値から誤差が最小のエンコーダ出力を選定して、選定された圧縮画素値を出力バッファ１０５に、選定された復号化画素値をメモリ１１２送る役割を持つ。また、本実施形態では１ブロックの先頭の画素の画像データをダイレクトモードで処理した例を示した。
【００７０】
上記のように、ノーマルエンコーダとランダムエンコーダとのそれぞれで得られた１ブロック分の圧縮画素値と誤差とがＭＵＸ１４０に入力される。ＭＵＸ１４０は、入力された１ブロック分の圧縮画素値から誤差が小さいエンコーダの出力を選定して出力バッファ１０１に出力する。
【００７１】
以上のように、入力された画素値は複数のエンコード方法によって並列に処理され、複数の圧縮画素値が誤差と共に並列で出力される。圧縮画素値と誤差は上記のような誤差評価マルチプレクサに入力され、最も誤差が小さい圧縮画素値をそのエンコード方法の１ブロック分の出力としてフレームメモリへと送信される。
【００７２】
［量子化テーブル］
この例では、ランダムエンコーダによる直接量子化及び両エンコーダによる差分量子化のそれぞれは、量子化を行うときに、図１９〜２１に示す量子化テーブルを用いている。なお、図１９〜２１に例示がない場合の量子化の際には、量子化テーブルを用いずに、例えば図２２に示すようなシフト演算などの演算によって量子化してもよい。
【００７３】
図１９Ａ，図１９Ｂは、本発明の第１実施形態に係るランダムエンコーダによる直接量子化において用いられる量子化テーブルの例を説明する図である。図１７に示すように、ランダムエンコーダのダイレクトモードでは、各色８ビットの入力画素値は、Ｒ、Ｇが４ビット（量子化ステップサイズ＝１７）に量子化され、Ｂが３ビット（量子化ステップサイズ＝３６）に量子化される。例えば、入力画素値のＲが「９５」であれば、エンコーダによって量子化された量子化値は「６」となり、デコーダによって逆量子化された逆量子化値は「１０２」となる。一方、入力画素値のＢが「９５」であれば、量子化値は「３」となり、逆量子化値は「１０８」となる。
【００７４】
図２０Ａ，図２０Ｂは、本発明の第１実施形態に係るノーマルエンコーダによる差分量子化において用いられる量子化テーブルの例を説明する図である。図２０Ａ，図２０Ｂに示すように、２ビットに量子化する場合と３ビットに量子化する場合とで用いるテーブルが異なる。また、図２０Ａ，図２０Ｂの差分量子化のテーブルでは入力レンジに偏りがある。言い換えると、差分値が小さいときに僅かな差分値の違いを区別できるように細かく入力レンジ範囲を設定している。これは、差分量子化は前後の画素の画像データと近い値になるケースを想定しているためである。
【００７５】
図２１Ａ，図２１Ｂは、本発明の第１実施形態に係るランダムエンコーダによる差分量子化において用いられる量子化テーブルの例を説明する図である。図２０Ａ，図２０Ｂと同様に、量子化する際に使用するテーブルは２ビットと３ビットとの場合で異なる。また、ノーマルエンコーダに比べて、ランダムエンコーダの量子化テーブルの入力レンジ範囲は広く設定されている。これは、ランダムエンコーダによる差分量子化はノーマルエンコーダによる差分量子化に比べると前後の画素の画像データの差が大きいケースを想定しているためである。
【００７６】
以上のように、ノーマルエンコーダ及びランダムエンコーダの差分量子化テーブルにおいて、小さい差分を精度良く近似し、大きい差分を粗く近似している。表示画像において、グラデーションのように画素値の変化が小さい部分では、近似の精度が粗いと圧縮前後の差異が容易に視認されてしまう。したがって、画素値の変化が小さい部分では精度良く近似する必要がある。一方、画素値の変化が大きい部分では、近似の精度が粗くても圧縮前後の差異が認識されにくいため、粗く近似して入力レンジを広げることができる。実際の表示画像では、画素値の変化の小さい領域が続いて、突然大きく変化し、また変化の小さい領域が続くことがある。このような場合、画素値の大きな変化を粗く近似し、小さな近似を精度良く近似することで、再現性良く圧縮することができる。
【００７７】
例えば、対象画素の入力画素値が「９１」であり、参照画素の復号化画素値が「９０」である場合、差分値は「１」となる。これをノーマルエンコーダにおいて２ビットに量子化する場合は、図２０Ａを参照して量子化値は「０」となり、デコーダで逆量子化されると逆量子化値は「０」として出力され、参照画素の復号化画素値と合わせて復号化画素値「９０」を得る。また、ノーマルエンコーダにおいて３ビットに量子化する場合は、図２０Ｂを参照して量子化値は「１」となり、デコーダで逆量子化されると逆量子化値も「１」として出力され、参照画素の復号化画素値と合わせて復号化画素値「９１」を得る。一方、ランダムエンコーダにおいて２ビットに量子化する場合は、図２１Ａを参照して量子化値は「０」となり、デコーダで逆量子化されると逆量子化値は「０」として出力され、参照画素の復号化画素値と合わせて復号化画素値「９０」を得る。また、ランダムエンコーダにおいて３ビットに量子化する場合は、図２１Ｂを参照して量子化値は「０」となり、デコーダで逆量子化されると逆量子化値も「０」として出力され、参照画素の復号化画素値と合わせて復号化画素値「９０」を得る。つまり、ノーマルエンコーダでは僅かな階調の違いを再現性良く表現する点において利点がある。一方、例示はしないが、ランダムエンコーダの場合は、比較的大きな階調の違いを再現性良く表現する点において利点がある。
【００７８】
［シフト演算］
この例では、直接量子化及び差分量子化のそれぞれは量子化を行うときに、図１９〜２１に例示がない場合の量子化方法について説明する。図２２に示す量子化方法はシフト演算と呼ばれる演算方法である。
【００７９】
図２２において、ｖは入力値、ｑはｖを演算することで得られる量子化値、ｂは量子化後のビット数、ｗはｑを逆量子化することで得られる逆量子化値をそれぞれ表している。
【００８０】
図２２に示す量子化演算式６０について説明する。入力値ｖに対してビット数ｂに量子化する場合、各画素の元のビット数と量子化後のビット数の差分（８−ｂ）の下位ビットを無視して、その他の上位ビットを量子化値とする。例えば、８ビットの入力値ｖ（１１００１０１０）を５ビットに圧縮する場合、（８−５）＝３ビット分の下位ビットを除いた上位５ビットを量子化値とする。具体的には、量子化値ｑは（１１００１）となる。
【００８１】
次に、図２２に示す逆量子化演算式７０について説明する。ここで、逆量子化演算は本実施形態のデコーダによる復号化に該当する。１，２行目の演算式は、逆量子化された全てのビットが“０”の場合は逆量子化演算によって“０”が追加されることを意味している。また、３，４行目の演算式は、量子化された全てのビットが“１”の場合は逆量子化演算によって“１”が追加されることを意味している。この例では、８ビットに逆量子化するので、逆量子化値は２５５である。５，６行目の演算式は、上記の２つのケース以外では、演算前後の誤差を抑えるために中央値に相当するビットを追加している。上記の３つの例を具体的に示すと、５ビットから８ビットに逆量子化する場合、（０００００）を逆量子化すると（００００００００）となり、（１１１１１）を逆量子化すると（１１１１１１１１）となる（下３桁は追加されたビット）。また、（１１００１）を逆量子化すると（１１００１１００）となる（下３桁は追加されたビット）。
【００８２】
［伸長器３０の構成］
図２３は、本発明の第１実施形態に係る伸長器３０の構成を示すブロック図である。図２３に示すように、伸長器３０は複数のデコーダユニット３１で構成される。デコーダユニット３１はエンコーダユニット１１に含まれていた各エンコーダに対応する複数のデコーダを有する。本実施形態では、デコーダＡはエンコーダＡに対応し、デコーダＢはエンコーダＢに対応し、・・・、デコーダＸはエンコーダＸに対応する。まず、フレームメモリ２０からの出力が入力バッファ１０６に入力される。入力バッファ１０６は書き込み位置を示すポインタによって示される記憶領域にフレームメモリ２０から出力された圧縮画素値を順次格納し、読み出し位置を示すポインタによって示される記憶領域から圧縮画素値を次のデコーダユニット３１へとデータを転送する。エンコーダユニット１１とは異なり、デコーダユニット３１は全てのデコーダが入力バッファ１０６とＭＵＸ１４５との間に並列に接続されている。つまり、フレームメモリ２０の圧縮画素値がデコーダＡ乃至Ｐ、Ｘに並列に供給され、圧縮画素値に含まれる識別子によって、各デコーダは復号化された復号化画素値と識別子が適正か否かのフラグを出力する。ＭＵＸ１４５は出力されたフラグから正しい復号化画素値を選択して出力バッファ１０７に出力する。ここで、圧縮画素値が差分量子化値を含む場合、メモリ１１３に保存された参照画素の復号化画素値と合わせた復号化画素値がＭＵＸ１４５に出力される。
【００８３】
また、入力バッファ１０６に入力された画素値の識別子からデコーダを選定して、処理するデコーダを選定して単独で処理を行ってもよい。この場合、必要に応じたデコーダのみを動作させればよいので、低消費電力化には有利である。
【００８４】
上述した実施形態では、１画素をＲ，Ｇ，Ｂの３色のサブ画素に分けた例を示したが、単色でグレースケールの表示装置でもよい。この場合、上記のサブ画素が一つの画素としての役割を持つことになるので、精細度を３倍に向上させることができ、より高精細な表示装置を得ることができる。
【００８５】
以上のように、本発明の第１実施形態における表示装置１においては、上述した圧縮器１０を用いて入力画素値を圧縮しているため、ブロックノイズの影響を抑えつつ入力画素値を圧縮することができる。したがって、表示パネル５０に表示される画像の表示品質の低下を抑制しつつフレームメモリ２０の容量を低減することができる。
【００８６】
なお、本発明は上記実施の形態に限られたものではなく、要旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００８７】
１…表示装置、  １０…圧縮器、  １１…エンコーダユニット、  ２０…フレームメモリ、  ３０…伸長器、  ３１…デコーダユニット、  ４０…駆動部、  ５０…表示パネル、  １００，１０２，１０４，１０６…入力バッファ、  １０１，１０３，１０５，１０７…出力バッファ、  １１１，１１２，１１３…メモリ、  １２０…ノーマルエンコーダ、  １３０…ランダムエンコーダ、  １２１，１２２，１２３，１２９，１３１，１３２…エンコーダ、  １４０，１４１，１４２，１４５…誤差評価マルチプレクサ、  １５１，１５２，１５３，１５９，１６１，１６２，３０１，３０２，３０３，３０４，３０５，３０９…デコーダ、  ６０…シフト演算（量子化）、  ７０…シフト演算（逆量子化）
【図１】
2015053590.tif 000005
【図２Ａ】
2015053590.tif 000006
【図２Ｂ】
2015053590.tif 000007
【図３】
2015053590.tif 000008
【図４】
2015053590.tif 000009
【図５】
2015053590.tif 000010
【図６】
2015053590.tif 000011
【図７】
2015053590.tif 000012
【図８】
2015053590.tif 000013
【図９】
2015053590.tif 000014
【図１０】
2015053590.tif 000015
【図１１】
2015053590.tif 000016
【図１２】
2015053590.tif 000017
【図１３】
2015053590.tif 000018
【図１４】
2015053590.tif 000019
【図１５】
2015053590.tif 000020
【図１６】
2015053590.tif 000021
【図１７】
2015053590.tif 000022
【図１８】
2015053590.tif 000023
【図１９Ａ】
2015053590.tif 000024
【図１９Ｂ】
2015053590.tif 000025
【図２０Ａ】
2015053590.tif 000026
【図２０Ｂ】
2015053590.tif 000027
【図２１Ａ】
2015053590.tif 000028
【図２１Ｂ】
2015053590.tif 000029
【図２２】
2015053590.tif 000030
【図２３】
2015053590.tif 000031