(57)【要約】【課題】視覚的な画像の劣化をほとんど発生させずに、圧縮効率を向上させる。【解決手段】画像データの符号化方法は、ブロック内の画素の画素平均値を基準に、ブロックを２個のサブブロックに設定する過程を繰り返し、設定されたサブブロックのマップ情報を生成し、サブブロック数によるビット列の生成のためのモードを決定する第１４ステップと、決定されたモードのビット列、マップ情報のビット列及びブロックまたはサブブロックの画素値を代表するそれぞれの代表画素値のビット列を生成する第２０ステップと、を含む。【選択図】図２
2006148892.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）ブロック内の画素の画素平均値を基準に、前記ブロックを２個のサブブロックに設定する過程を繰り返し、前記設定されたサブブロックのマップ情報を生成し、前記サブブロック数によるビット列の生成のためのモードを決定するステップと、
（ｂ）前記決定されたモードのビット列、前記マップ情報のビット列及び前記ブロック、または前記サブブロックの画素値を代表するそれぞれの代表画素値のビット列を生成するステップと、
を含むことを特徴とする画像データの符号化方法。
【請求項２】
前記（ａ）ステップは、
（ａ１）前記ブロック内の画素の前記画素平均値を算出するステップと、
（ａ２）前記算出された画素平均値を基準に、前記画素平均値以上の画素値を有する画素を１つの画素グループに指定し、前記画素平均値より小さい画素値を有する画素を他の１つの画素グループに指定するステップと、
（ａ３）２個の前記画素グループのそれぞれの画素平均値を算出するステップと、
（ａ４）前記画素グループのそれぞれの画素平均値の差に該当する平均差値が、所定臨界値より大きいか否かを検査するステップと、
（ａ５）前記平均差値が前記所定臨界値より大きければ、前記画素グループのそれぞれをサブブロックに設定し、前記（ａ２）ステップに進むステップと、
（ａ６）前記平均差値が前記所定臨界値より大きくなければ、前記代表画素値を決定するステップと、
（ａ７）前記代表画素値が決定された前記サブブロックのそれぞれの画素についての前記マップ情報を生成するステップと、
（ａ８）前記ブロックのすべてのサブブロックの設定が終了されたか否かを検査し、すべてのサブブロックの設定が終了されていなければ、前記（ａ２）ステップに進むステップと、
（ａ９）前記ブロックのすべてのサブブロックの設定が終了したら、前記モードを決定するステップと、
を含むことを特徴とする請求項１に記載の画像データの符号化方法。
【請求項３】
前記（ａ６）ステップは、
前記ブロックまたは前記サブブロックのそれぞれの画素についての画素値の平均を前記代表画素値として決定することを特徴とする請求項２に記載の画像データの符号化方法。
【請求項４】
前記（ａ７）ステップは、
前記サブブロックごとに同じマップ情報を有することを特徴とする請求項２または請求項３に記載の画像データの符号化方法。
【請求項５】
前記モードの形式が前記ブロックに設定されうるサブブロックの最大個数の範囲内であらかじめ決まっていることを特徴とする請求項１に記載の画像データの符号化方法。
【請求項６】
前記（ｂ）ステップは、
まず、前記モードのビット列を生成した後に、前記マップ情報及び前記代表画素値のビット列を生成することを特徴とする請求項１から請求項４のいずれかに記載の画像データの符号化方法。
【請求項７】
（ｃ）空間的に近接したブロックを利用して、現在ブロックの画素値を空間上で予測するか、または時間的に直前のブロックを利用して、前記現在ブロックの画素値を時間上で予測し、前記（ａ）ステップに進むステップをさらに含むことを特徴とする請求項１から請求項６のいずれかに記載の画像データの符号化方法。
【請求項８】
前記（ｂ）ステップは、
前記（ｃ）ステップの後に、前記（ａ）ステップで求めた前記画素平均値を剰余平均値としたとき、前記ブロックに対するサブブロックが設定されずに、前記剰余平均値が“０”に該当すれば、前記決定されたモードについてのビット列を生成し、前記マップ情報及び前記代表画素値についてのビット列を生成しないことを特徴とする請求項７に記載の画像データの符号化方法。
【請求項９】
前記画像データの符号化方法は、
（ｄ）前記（ｃ）ステップで、Ｒ、Ｇ及びＢのそれぞれの色に対して前記空間上で予測された画素値及び前記時間上で予測された画素値のうち、重複する情報を除去してＲＧＢ信号を符号化するステップをさらに含むことを特徴とする請求項７に記載の画像データの符号化方法。
【請求項１０】
（ｅ）前記（ａ）ステップの後に、前記ブロックの圧縮比率の調整が要求されているか否かを検出するステップと、
（ｆ）前記圧縮比率の調整が要求されていれば、前記所定臨界値を再設定し、前記（ａ）ステップに進むステップと、
をさらに含むことを特徴とする請求項１から請求項９のいずれかに記載の画像データの符号化方法。
【請求項１１】
（ａ）ブロックにおいてサブブロック数によってビット列の生成のためのモードのビット列を復号化するステップと、
（ｂ）前記サブブロックのマップ情報についてのビット列を復号化し、前記ブロックまたは前記サブブロックの画素値を代表するそれぞれの代表画素値についてのビット列を復号化するステップと、
を備えることを特徴とする画像データの復号化方法。
【請求項１２】
前記画像データの復号化方法は、
（ｃ）前記（ｂ）ステップの後に、前記符号化されたＲＧＢ信号を復号化するステップをさらに含むことを特徴とする請求項１１に記載の画像データの復号化方法。
【請求項１３】
前記画像データの復号化方法は、
（ｄ）前記（ｃ）ステップの後に、前記復号化されたブロックの空間上で予測された画素値を補償するか、または時間上で予測された画素値を補償するステップをさらに含むことを特徴とする請求項１２に記載の画像データの復号化方法。
【請求項１４】
ブロック内の画素の画素平均値を基準に、前記ブロックを２個のサブブロックに設定する過程を繰り返し、前記設定されたサブブロックのマップ情報を生成し、前記サブブロック数によるビット列の生成のためのモードを決定するサブブロック符号化部と、
前記サブブロック符号化部で符号化された前記決定されたモードのビット列、前記マップ情報のビット列及び前記ブロック、または前記サブブロックの画素値を代表する代表画素値のビット列を生成するビット列生成部と、
を備えることを特徴とする画像データの符号化装置。
【請求項１５】
前記サブブロック符号化部は、
前記ブロックまたは前記サブブロック内の画素の前記画素平均値をそれぞれ算出する画素平均値算出部と、
前記算出された画素平均値を基準に、前記画素平均値以上の画素値を有する画素を１つの画素グループに指定し、前記画素平均値より小さい画素値を有する画素を他の１つの画素グループに指定する画素グループ指定部と、
２個の前記画素グループのそれぞれの画素平均値の差に該当する平均差値が、所定臨界値より大きいか否かを検査する臨界値比較部と、
前記臨界値比較部の比較結果に応じて、前記画素グループのそれぞれをサブブロックに設定するサブブロック設定部と、
前記臨界値比較部の比較された結果に応じて、前記代表画素値を決定する代表画素値決定部と、
前記代表画素値が決定された前記サブブロックのそれぞれの画素についての前記マップ情報を生成するマップ情報生成部と、
前記ブロックのすべてのサブブロックの設定が終了したか否かを検査する設定終了検査部と、
前記設定終了検査部の検査結果に応じて、前記ブロックについての前記モードを決定するモード決定部と、
を備えることを特徴とする請求項１４に記載の画像データの符号化装置。
【請求項１６】
前記代表画素値決定部は、
前記ブロックまたは前記サブブロックのそれぞれの画素についての画素値の平均を前記代表画素値として決定することを特徴とする請求項１５に記載の画像データの符号化装置。
【請求項１７】
前記マップ情報生成部は、
前記サブブロックごとに同じマップ情報を生成することを特徴とする請求項１５または請求項１６に記載の画像データの符号化装置。
【請求項１８】
前記モードの形式が、前記ブロックで設定できるサブブロックの最大個数の範囲内であらかじめ決まっていることを特徴とする請求項１４に記載の画像データの符号化装置。
【請求項１９】
前記ビット列生成部は、
まず、前記モードのビット列を生成した後に、前記マップ情報及び前記代表画素値のビット列を生成することを特徴とする請求項１４に記載の画像データの符号化装置。
【請求項２０】
空間的に近接したブロックを利用して、現在ブロックの画素値を空間上で予測するか、または時間上で直前のブロックを利用して、前記現在ブロックの画素値を時間上で予測する時空間上予測部をさらに備えることを特徴とする請求項１４に記載の画像データの符号化装置。
【請求項２１】
前記ビット列生成部は、
前記時空間上予測部で予測された画素値に対して、前記サブブロック符号化部で求めた前記画素平均値を剰余平均値とした場合、前記ブロックに対するサブブロックが設定されずに、前記剰余平均値が“０”に該当すると、前記決定されたモードについてビット列を生成し、前記マップ情報及び前記代表画素値についてのビット列を生成しないことを特徴とする請求項２０に記載の画像データの符号化装置。
【請求項２２】
Ｒ、Ｇ及びＢのそれぞれの色に対して、前記時空間上予測部で予測された画素値のうち、重複する情報を除去して、ＲＧＢ信号を符号化するＲＧＢ信号符号化部をさらに備えることを特徴とする請求項２０に記載の画像データの符号化装置。
【請求項２３】
前記ブロックについて圧縮比率の調整が要求されるか否かを検出する圧縮比率要求感知部と、
前記圧縮比率要求感知部の検出結果に応じて、前記所定臨界値を再設定する臨界値再設定部と、をさらに備えることを特徴とする請求項１５に記載の画像データの符号化装置。
【請求項２４】
ブロックにおいて、サブブロック数によるビット列の生成のためのモードのビット列を復号化するモード復号化部と、
前記サブブロックのマップ情報についてのビット列を復号化するマップ情報復号化部と、
前記ブロックまたは前記サブブロックの画素値を代表するそれぞれの代表画素値についてのビット列を復号化する代表画素値復号化部と、
を備えることを特徴とする画像データの復号化装置。
【請求項２５】
前記画像データの復号化装置は、
前記復号化されたブロックについて空間上で予測された画素値を補償するか、または時間上で予測された画素値を補償する時空間上予測補償部をさらに備えることを特徴とする請求項２４に記載の画像データの復号化装置。
【請求項２６】
前記画像データの復号化装置は、
符号化されたＲＧＢ信号を復号化するＲＧＢ信号復号化部をさらに備えることを特徴とする請求項２４または請求項２５に記載の画像データの復号化装置。
【請求項２７】
（ａ）ブロック内の画素の画素平均値を基準に、前記ブロックを２個のサブブロックに設定する過程を繰り返し、前記設定されたサブブロックのマップ情報を生成し、前記サブブロック数によるビット列の生成のためのモードを決定するステップと、
（ｂ）前記決定されたモードのビット列、前記マップ情報のビット列及び前記ブロック、または前記サブブロックの画素値を代表するそれぞれの代表画素値のビット列を生成するステップと、
を含むことを特徴とする画像データの符号化方法を実行するための少なくとも１つ以上の命令を保存するコンピュータで読み取り可能な記録媒体。
【請求項２８】
（ａ）ブロックにおいて、サブブロック数によるビット列の生成のためのモードのビット列を復号化するステップと、
（ｂ）前記サブブロックのマップ情報についてのビット列を復号化し、前記ブロックまたは前記サブブロックの画素値を代表するそれぞれの代表画素値についてのビット列を復号化するステップと、
を含むことを特徴とする画像データの復号化方法を実行するための少なくとも１つ以上の命令を保存するコンピュータで読み取り可能な記録媒体。
【請求項２９】
（ａ）サブブロックの画素の平均値によってブロックを区分する過程を繰り返すステップと、
（ｂ）サブブロック数によって、前記画素に関する情報のビット列を生成するステップと、
を含むことを特徴とする画像データの符号化方法。
【請求項３０】
前記画素に関する情報は、サブブロックのマップ情報及びサブブロックの画素値を代表する代表画素値を含むことを特徴とする請求項２９に記載の画像データの符号化方法。
【請求項３１】
前記画素に関する情報は、ビット列を生成するためのモードの形式を含むことを特徴とする請求項２９に記載の画像データの符号化方法。
【請求項３２】
前記モードの形式は、前記サブブロックの総数及び前記サブブロックのマップ情報についてのマップビット数によって決定されることを特徴とする請求項３１に記載の画像データの符号化方法。
【請求項３３】
前記モードの形式は、ビット列の開始時に所定ビット数に設定されることを特徴とする請求項３１に記載の画像データの符号化方法。
【請求項３４】
前記各サブブロックの画素の平均と各画素との比較結果によって、前記サブブロックを２個のグループに指定するステップと、
前記２個のグループの平均値の差が前記各サブブロックの画素の所定範囲内に属するまで、前記サブブロックを２個のグループに指定する過程を繰り返すステップと、
を含むことを特徴とする請求項２９に記載の画像データの符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像圧縮に関し、特に、圧縮するための画像のブロックをサブブロックに分けて符号化及び復号化する画像データの符号化方法及び復号化方法並びに符号化装置及び復号化装置に関する。
【背景技術】
【０００２】
一般的に、カラー画像を符号化する場合、カラー変換を行った後に符号化を行う。例えば、Ｒ（Ｒｅｄ）、Ｇ（Ｇｒｅｅｎ）、Ｂ（Ｂｌｕｅ）映像をＹＣｂＣｒ映像に変換して、輝度成分と色成分とに分離した後に符号化を行う。このようにすれば、符号化効率が高まるが、その理由は、各色成分の間に多くの重複情報があり、変換により重複情報が除去されたためである。特に、最近は、リフティング方法を用いた整数変換方法が研究されているが、例えば、米国所在のマイクロソフト（登録商標）コーポレーションで開発したＹＣｏＣｇ−Ｒのような方法がある。
【０００３】
また、カラー画像の符号化時に、各色成分（すなわち、Ｒ、Ｇ及びＢ）別に予測符号化を行うこともできる。カラー画像内では、各色成分を独立に考えて、成分ごとに予測符号化を行って圧縮する。この方法では、Ｒ、Ｇ及びＢの色成分間で重複する情報については考慮しない。したがって、それぞれの色成分を独立に符号化しているので、色成分間の相関関係を利用できないため、符号化効率が低下する。
【０００４】
このように変換された映像を符号化するときは、時空間の予測により各色成分間の重複情報を除去する過程を経て、その結果、剰余映像を得る。最近、ＩＳＯ／ＩＥＣとＩＴＵ−ＴのＶＣＥＧ（Video Coding Experts Group）との合同ビデオチーム（Joint Video Team; JVT）によって策定されたＨ.２６４／ＭＰＥＧ−４  ｐｔ.１０  ＡＶＣ標準化技術では、多様な方法で空間的及び時間的に予測符号化を行って、符号化効率を向上させている。
【０００５】
一方、前記の方法以外に、クワッドツリー分割方式によりカラー画像を符号化する方法が用いられている。図１Ａ及び図１Ｂは、クワッドツリー分割方式による符号化方法の一例を示す図である。図１Ａは、クワッドツリー分割方式により分割されたブロックのサブブロックの一例を示す図であり、図１Ｂは、分割されたサブブロックの画素値の情報をツリー構造として表現した一例を示す図である。図１Ａ及び図１Ｂから分かるように、クワッドツリー分割方式は、符号化するブロックを４個のサブブロックに分割し、分割された４個のサブブロックのそれぞれを、さらに４個のサブブロックに分割する過程を繰り返すことにより、それぞれの分割されたサブブロックの画素値をツリー構造の情報として符号化する方式である。
【０００６】
しかし、前記の従来の符号化方式によれば、カラー画像に対する圧縮効率が低下し、圧縮効率を向上させると、相対的にカラー画像の劣化が深刻化するという問題点がある。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明が達成しようとする技術的課題は、視覚的な画像の劣化をほとんど発生させずに、圧縮効率を向上できる画像データの符号化方法及び復号化方法を提供することにある。
【０００８】
本発明が達成しようとする他の技術的課題は、視覚的に画像の劣化をほとんど発生させずに、圧縮効率を向上できる画像データの符号化装置及び復号化装置を提供することにある。
【課題を解決するための手段】
【０００９】
前記の課題を達成するために、本発明に係る画像データの符号化方法は、ブロック内の画素の画素平均値を基準に、ブロックを２個のサブブロックに設定する過程を繰り返し、設定されたサブブロックのマップ情報を生成し、サブブロック数によるビット列の生成のためのモードを決定するステップと、決定されたモードのビット列、マップ情報のビット列及びブロック、またはサブブロックの画素値を代表するそれぞれの代表画素値のビット列を生成するステップと、を含むことを特徴とする。
【００１０】
前記の課題を達成するために、本発明に係る画像データの復号化方法は、ブロックにおいてサブブロック数によってビット列の生成のためのモードのビット列を復号化するステップと、サブブロックのマップ情報についてのビット列を復号化し、ブロックまたはサブブロックの画素値を代表するそれぞれの代表画素値についてのビット列を復号化するステップと、を含むことを特徴とする。
【００１１】
前記の他の課題を達成するために、本発明に係る画像データの符号化装置は、ブロック内の画素の画素平均値を基準に、ブロックを２個のサブブロックに設定する過程を繰り返し、設定されたサブブロックのマップ情報を生成し、サブブロック数によるビット列の生成のためのモードを決定するサブブロック符号化部と、サブブロック符号化部で符号化された決定されたモードのビット列、マップ情報のビット列及びブロック、またはサブブロックの画素平均値についてのビット列を生成するビット列生成部と、を備えることを特徴とする。
【００１２】
前記の他の課題を達成するために、本発明に係る画像データの復号化装置は、ブロックにおいて、サブブロック数によるビット列の生成のためのモードのビット列を復号化するモード復号化部と、サブブロックのマップ情報についてのビット列を復号化するマップ情報復号化部と、ブロックまたはサブブロックの画素値を代表するそれぞれの代表画素値についてのビット列を復号化する代表画素値復号化部と、を備えることを特徴とする。
【発明の効果】
【００１３】
本発明による画像データの符号化及び復号化方法並びに符号化装置及び復号化装置によれば、視覚的な画像の劣化をほとんど発生させずに、圧縮効率を向上できる。
【発明を実施するための最良の形態】
【００１４】
以下、添付した図面を参照して、本発明による画像データの符号化方法について説明する。
【００１５】
図２は、本発明による画像データの符号化方法の一実施形態を示すフローチャートである。
空間的に近接したブロックを利用して、現在ブロックの画素値を空間上で予測するか、または時間的に直前のブロックを利用して、現在ブロックの画素値を時間上で予測する（第１０ステップ）。空間上で予測した画素値は、各色成分の現在ブロック及び空間的に近接したブロックから予測方向を推定して求めた予測画素値を意味する。時間上で予測した画素値は、各色成分の直前のブロックと現在ブロックとの間に動きを推定して求めた予測画素値を意味する。
【００１６】
時間上または空間上で予測された画素値を一般的に剰余値と称するが、以下、画素値という。また、時間上または空間上で予測された画素値に対してサブブロック別に平均した値は、剰余平均値と言えるが、以下、画素平均値という。
【００１７】
時空間上の予測において、ＲＧＢ画像をＹＣｂＣｒ画像に変換し、分けられた輝度成分と色成分とについて画素値を予測することもでき、ＲＧＢ画像のＲ、Ｇ及びＢのそれぞれの色について直接画素値を予測することもできる。
【００１８】
第１０ステップの後に、Ｒ、Ｇ及びＢのそれぞれの色について空間上で予測された画素値及び時間上で予測された画素値のうち、重複する情報を除去してＲＧＢ信号を符号化する（第１２ステップ）。第１０ステップで、ＲＧＢ画像のＲ、Ｇ及びＢのそれぞれの色について直接画素値を予測したとき、予測されたＲ、Ｇ及びＢのそれぞれの色についての画素値の相関関係を利用して重複する情報を除去し、重複する部分が除去されたＲＧＢ信号を符号化する。
【００１９】
第１２ステップの後に、符号化されたＲＧＢ信号のブロック内の画素についての画素平均値を基準に、ブロックを２個のサブブロックに設定する過程を繰り返し、設定されたサブブロックのマップ情報を生成し、サブブロック数によるビット列の生成のためのモードを決定する（第１４ステップ）。
【００２０】
図３は、図２に示す第１４ステップを説明するための一実施形態のフローチャートである。
まず、ブロック内の画素の画素平均値を算出する（第３０ステップ）。
【００２１】
図４Ａないし図４Ｆは、４×４ブロックに対して設定されるサブブロックの一例を示す図である。
図４Ａは、４×４ブロックの画素値の一例を示す図であって、図４Ａに示す４×４ブロックの各画素値を合算すると、“１９２”という値が求められ、“１９２”の値を４×４ブロックの各画素の数に該当する“１６”に分けると、４×４ブロック内の画素の画素平均値である“１２”を算出できる。整数ではない画素平均値は、四捨五入するか、またはその他の方法で整数にすることが好ましい。
【００２２】
第３０ステップの後に、算出された画素平均値を基準に、画素平均値以上の画素値を有する画素を１つの画素グループに指定し、画素平均値より小さい画素値を有する画素を他の１つの画素グループに指定する（第３２ステップ）。
【００２３】
図４Ｂは、図４Ａに示す４×４ブロックに対して画素平均値を基準に、各画素を２個の画素グループに区分したものを示す図である。図４Ｂに示すように、画素平均値に該当する“１２”を基準に、“１２”以上の画素値を有する画素（太線で表示した部分）と、“１２”より小さい画素値を有する画素とをそれぞれ区分して、２個の画素グループに分ける。
【００２４】
第３２ステップの後に、２個の画素グループのそれぞれの画素平均値を算出する（第３４ステップ）。
【００２５】
図４Ｂを参照し、２個の画素グループのそれぞれについて画素平均値を求めると、“１２”より小さい画素値を有する画素の画素平均値は、“４０÷１０＝４”であり、“１２”以上の画素値を有する画素の画素平均値は、“１５２÷６≒２５．３３”である。整数でない画素平均値は、四捨五入するか、またはその他の方法で整数にする。したがって、四捨五入して整数にした場合、“１２”以上の画素値を有する画素の画素平均値は、“２５”である。
【００２６】
第３４ステップの後に、画素グループのそれぞれの画素平均値の差に該当する平均差値が、所定臨界値より大きいか否かを検査する（第３６ステップ）。
【００２７】
例えば、“１２”より小さい画素値を有する画素の画素平均値が“４”であり、“１２”以上の画素値を有する画素の画素平均値が“２５”であるとき、画素平均値の差に該当する平均差値は“２５−４＝２１”である。あらかじめ決められた所定臨界値が“６”であるとき、平均差値“２１”と所定臨界値“６”との大きさを比較する。
【００２８】
もし、平均差値が所定臨界値より大きい場合、画素グループのそれぞれをサブブロックに設定し（第３８ステップ）、前記第３２ステップに進む。前記したように、平均差値が“２１”であり、所定臨界値が“６”である場合、平均差値が所定臨界値より大きいため、“１２”より小さい画素値を有する画素の画素グループと、“１２”以上の画素値を有する画素の画素グループとをそれぞれ４×４ブロックのサブブロックに設定する。
【００２９】
第３８ステップの後に、第３２ステップに進み、前記の第３２ステップから第３６ステップまでを繰り返す。
【００３０】
したがって、第３２ステップでは、それぞれのサブブロックについての画素平均値を基準に、それぞれのサブブロックをそれぞれ２個の画素グループに指定する。
【００３１】
図４Ｃは、“１２”より小さい画素値を有するサブブロックが、当該サブブロックの画素平均値を基準に、２個の画素グループに指定された一例を示す図である。図４Ｃを参照すると、“１２”より小さい画素値を有するサブブロックの画素平均値が“４”であるため、算出された画素平均値“４”を基準に、“４”以上の画素値を有する画素を１つの画素グループ（太線で表示した部分）に指定し、“４”より小さい画素値を有する画素を他の１つの画素グループに指定する。
【００３２】
図４Ｄは、“１２”以上の画素値を有するサブブロックが、当該サブブロックの画素平均値を基準に２個の画素グループに指定された一例を示す図である。図４Ｄを参照すると、“１２”以上の画素値を有するサブブロックの画素平均値が“２５”であるため、算出された画素平均値“２５”を基準に、画素平均値“２５”以上の画素値を有する画素を１つの画素グループ（太線で表示した部分）に指定し、画素平均値“２５”より小さい画素値を有する画素を他の１つの画素グループに指定する。
【００３３】
第３２ステップの後に、４個の画素グループのそれぞれの画素平均値を算出する（第３４ステップ）。
【００３４】
図４Ｃを参照し、２個の画素グループのそれぞれについて画素平均値を求めると、“４”より小さい画素値を有する画素の画素平均値は“７÷４＝１.７５”であり、“４”以上の画素値を有する画素の画素平均値は“３３÷６＝５.５”である。整数でない画素平均値を四捨五入する方法で整数にすると、“４”より小さい画素値を有する画素の画素平均値は“２”となり、“４”以上の画素値を有する画素の画素平均値は“６”となる。また、図４Ｄを参照し、２個の画素グループのそれぞれについての画素平均値を求めると、“２５”より小さい画素値を有する画素の画素平均値は“７０÷４＝１７.５”であり、“２５”以上の画素値を有する画素の画素平均値は“８２÷２＝４１”である。整数でない画素平均値を四捨五入する方法で整数にすると、“２５”より小さい画素値を有する画素の画素平均値は“１８”となる。
【００３５】
第３４ステップの後に、画素グループのそれぞれの画素平均値の差に該当する平均差値が所定臨界値より大きいか否かを検査する（第３６ステップ）。
【００３６】
図４Ｃを参照すると、“４”より小さい画素値を有する画素の画素平均値が“２”であり、“４”以上の画素値を有する画素の画素平均値が“６”であるため、画素平均値の差に該当する平均差値は“６−２＝４”となる。あらかじめ決められた所定臨界値が“６”であるとき、平均差値“４”と所定臨界値“６”の大きさを比較すればよい。
【００３７】
一方、図４Ｄを参照すると、“２５”より小さい画素値を有する画素の画素平均値が“１８”であり、“２５”以上の画素値を有する画素の画素平均値が“４１”であるため、画素平均値の差に該当する平均差値は“４１−１８＝２３”となる。あらかじめ決められた所定臨界値が“６”であるとき、平均差値“２３”と所定臨界値“６”との大きさを比較すればよい。
【００３８】
もし、平均差値が所定臨界値より大きければ、画素グループのそれぞれをサブブロックに設定し、前記第３２ステップに進む（第３８ステップ）。
【００３９】
図４Ｄに示すように、平均差値が“２３”であり、所定臨界値が“６”である場合、平均差値が所定臨界値より大きいため、“２５”より小さい画素値を有する画素の画素グループと“２５”以上の画素値を有する画素の画素グループをそれぞれサブブロックに設定する。
【００４０】
第３８ステップの後に、第３２ステップに進み、前記の第３２ステップから第３６ステップまでを再び繰り返す。
【００４１】
したがって、第３２ステップでは、それぞれのサブブロックについての画素平均値を基準に、それぞれのサブブロックをそれぞれ２個の画素グループに指定する。
【００４２】
図４Ｅは、“２５”より小さい画素値を有するサブブロックが、当該サブブロックの画素平均値を基準に２個の画素グループに指定された一例を示す図である。
図４Ｅを参照し、２個の画素グループのそれぞれについての画素平均値を求めると、“２５”より小さい画素値を有するサブブロックの画素平均値が“１８”であるため、算出された画素平均値“１８”を基準に、画素平均値“１８”以上の画素値を有する画素を１つの画素グループ（太線で表示した部分）に指定し、画素平均値“１８”より小さい画素値を有する画素を、他の１つの画素グループに指定する。
【００４３】
図４Ｆは、“２５”以上の画素値を有するサブブロックが、当該サブブロックの画素平均値を基準に２個の画素グループに指定された一例を示す図である。
図４Ｆを参照すると、“２５”以上の画素値を有するサブブロックの画素平均値が“４１”であるため、算出された画素平均値“４１”を基準に、画素平均値“４１”以上の画素値を有する画素を１つの画素グループ（太線で表示した部分）に指定し、画素平均値“４１”より小さい画素値を有する画素を、他の１つの画素グループに指定する。
【００４４】
第３２ステップの後に、４個の画素グループのそれぞれの画素平均値を算出する（第３４ステップ）。
【００４５】
図４Ｅを参照し、２個の画素グループのそれぞれについて画素平均値を求めると、“１８”より小さい画素値を有する画素の画素平均値は“３０÷２＝１５”であり、“１８”以上の画素値を有する画素の画素平均値は“４０÷２＝２０”である。
【００４６】
一方、図４Ｆを参照し、２個の画素グループのそれぞれについて画素平均値を求めると、“４１”より小さい画素値を有する画素の画素値“４０”と、“４１”以上の画素値を有する画素の画素値“４２”とを確認できる。
【００４７】
第３４ステップの後に、画素グループのそれぞれの画素平均値の差に該当する平均差値が、所定臨界値より大きいか否かを検査する（第３６ステップ）。
【００４８】
図４Ｅを参照すると、“１８”より小さい画素値を有する画素の画素平均値が“１５”であり、“１８”以上の画素値を有する画素の画素平均値が“２０”であるため、画素平均値の差に該当する平均差値は、“２０−１５＝５”となる。あらかじめ決められた所定臨界値が“６”である場合、平均差値“５”と所定臨界値“６”との大きさを比較すればよい。
【００４９】
一方、図４Ｆを参照すると、“４１”より小さい画素値を有する画素の画素平均値が“４０”であり、“４１”以上の画素値を有する画素の画素平均値が“４２”であるため、画素平均値の差に該当する平均差値は“４２−４０＝２”となる。あらかじめ決められた所定臨界値が“６”である場合、平均差値“２”と所定臨界値“６”の大きさを比較すればよい。
【００５０】
第３６ステップで平均差値が所定臨界値より大きくなかった場合、ブロックまたはサブブロックの画素値を代表して表す代表画素値を決定する（第４０ステップ）。ブロックまたはサブブロックのそれぞれの画素についての画素値の平均が、代表画素値として決定される。
【００５１】
図４Ｃに示すように、２個の画素グループの平均差値が“４”であり、所定臨界値が“６”の大きさを有する場合、平均差値“４”が所定臨界値“６”より大きくないため、図４Ｃのサブブロックを代表する代表画素値を決定する。すなわち、図４Ｃのサブブロックの各画素値の合算した値を画素数で割ると、“４０÷１０＝４”のように代表画素値を求めることができる。
【００５２】
一方、図４Ｅに示すように、２個の画素グループの平均差値が“５”であり、所定臨界値が“６”の大きさを有する場合、平均差値“５”が所定臨界値“６”より大きくないため、図４Ｅのサブブロックを代表する代表画素値を決定する。すなわち、図４Ｅのサブブロックの各画素値の合算した値を画素数で割ると、“７０÷４＝１７.５”のように代表画素値を求めることができる。整数ではない代表画素値を四捨五入する方法で整数にすれば、図４Ｅの画素グループの代表画素値は“１８”となる。
【００５３】
また、図４Ｆに示すように、２個の画素グループの平均差値が“２”であり、所定臨界値“６”の大きさを有する場合、平均差値“２”が所定臨界値“６”より大きくないため、図４Ｆのサブブロックを代表する代表画素値を決定する。すなわち、図４Ｆのサブブロックの各画素値の合算した値を画素数で割ると、“８２÷２＝４１”のように代表画素値を求めることができる。
【００５４】
第４０ステップの後に、代表画素値が決定されたサブブロックのそれぞれの画素についてのマップ情報を生成する（第４２ステップ）。代表画素値が決定されたサブブロックごとに同じマップ情報が生成される。
【００５５】
図５Ａないし図５Ｃは、サブブロックのマップ情報の一例を示す図である。
図５Ａは、代表画素値が決定された図４Ｃのサブブロックのマップ情報の一例を示す図である。この場合、代表画素値が決定された各画素について同じマップ情報が生成されている。図５Ａは、例えば“０”のマップ情報が生成されたものである。
【００５６】
図５Ｂは、代表画素値が決定された図４Ｅのサブブロックのマップ情報の一例を示す図である。この場合、図５Ａで生成されたマップ情報に付加して、代表画素値が新たに決定された図４Ｅの各画素について同じマップ情報が生成されている。図５Ｂは、例えば“１”のマップ情報が生成されたものである。
【００５７】
図５Ｃは、代表画素値が決定された図４Ｆのサブブロックのマップ情報の一例を示す図である。この場合、マップ情報は、図５Ａ及び図５Ｂで生成されたマップ情報に付加して、代表画素値が新たに決定された図４Ｆの各画素について同じマップ情報が生成されている。図５Ｃは、例として“２”のマップ情報が生成されたものである。
【００５８】
第４２ステップの後に、ブロックのすべてのサブブロックの設定が終了されたか否かを検査する（第４４ステップ）。この例では、４×４ブロックのサブブロックの設定がいずれにも行われたか否かを検査する。検査方法の一例として、４×４ブロックに対する各画素の代表画素値がいずれも決定されたか否かにより、サブブロックの設定が終了したか否かを検査できる。
【００５９】
もし、すべてのサブブロックの設定が終了していなければ、第３２ステップに進む。
【００６０】
しかし、ブロックのすべてのサブブロックの設定が終了したら、サブブロック数によってビット列の生成のためのモードを決定する（第４６ステップ）。モードの形式は、ブロックで設定できるサブブロックの最大個数の範囲内であらかじめ決まっている。例えば、４×４ブロックで設定できるサブブロックの最大数は、１６個である。したがって、４×４ブロックであらかじめ決めることができるモード形式は、１６種類に分けられる。また、ブロックに対するサブブロックが設定されずに、画素平均値が“０”に該当する場合を、モードの付加的な１形式として区分する。
【００６１】
ビット列の生成のためのモードの一例は、次の表１に示す通りである。
【００６２】
【表１】
2006148892.tif 000003
【００６３】
ここで、モード形式は、８つのモードに分けられることを例として挙げた。したがって、モード０ないしモード７に該当する８つのモードを２進数で表現するためには、“３［ｂｉｔ］”が必要であるため、表１に示すように、モードビット数が“３［ｂｉｔ］”となる。
【００６４】
モード０は、前記の第３０ステップで算出されるブロックの画素平均値（正確に表現すれば、時空間予測によるブロックの各画素の平均値に該当する剰余平均値）が“０”に該当し、ブロックに対するサブブロックが設定されていない場合に決定されるモードである。モード０では、第３２ステップないし第４４ステップを行っても、サブブロックが設定されず、画素平均値が“０”に該当するため、サブブロック数を“０”に指定する。また、サブブロックが設定されないため、マップ情報を生成する必要がなく、マップ情報のマップビット数は“０［ｂｉｔ］”となる。
【００６５】
モード１は、ブロックに対するサブブロックが設定されていない場合であって、画素平均値が“０”ではない場合に決定されるモードである。モード１では、サブブロックが設定されていないため、サブブロック数は存在せず、単に１つのブロックが存在するということを表す数字“１”が指定される。また、サブブロックが設定されないため、マップ情報を生成する必要がなく、マップ情報のマップビット数は“０［ｂｉｔ］”となる。
【００６６】
モード２は、ブロックに対するサブブロックが２個設定される場合のモードである。モード２では、２個のサブブロックが設定されるため、サブブロック数は“２”であり、２個のサブブロックに対してそれぞれ“０”及び“１”というマップ情報を付与するためには、“１［ｂｉｔ］”のマップビット数が必要である。
【００６７】
モード３は、ブロックに対するサブブロックが３個設定される場合のモードである。モード３では、３個のサブブロックが設定されるため、サブブロック数は“３”であり、３個のサブブロックに対してそれぞれ“０”、“１”及び“２”というマップ情報を付与するためには、“２［ｂｉｔ］”のマップビット数が必要である。
【００６８】
モード４は、ブロックに対するサブブロックが４個設定される場合のモードである。モード４では、４個のサブブロックが設定されるため、サブブロック数は“４”であり、４個のサブブロックに対してそれぞれ“０”、“１”、“２”及び“３”というマップ情報を付与するためには、“２［ｂｉｔ］”のマップビット数が必要である。
【００６９】
モード５はブロックに対するサブブロックが５個設定される場合のモードである。モード５では、５個のサブブロックが設定されるため、サブブロック数は“５”であり、５個のサブブロックに対してそれぞれ“０”、“１”、“２”、“３”及び“４”というマップ情報を付与するためには、“３［ｂｉｔ］”のマップビット数が必要である。
【００７０】
モード６は、ブロックに対するサブブロックが６個設定される場合のモードである。モード６では、サブブロックが６個設定されるため、サブブロック数は“６”であり、６個のサブブロックに対してそれぞれ“０”、“１”、“２”、“３”、“４”及び“５”というマップ情報を付与するためには、“３［ｂｉｔ］”のマップビット数が必要である。
【００７１】
モード７は、ブロックに７個ないし１６個のサブブロックを設定する場合のモードである。７個ないし１６個のサブブロックを設定する場合には、圧縮される前のブロックに対して２進化することがより適切であるため、この場合は、マップ情報のマップビット数を“０［ｂｉｔ］”に指定する。
【００７２】
モードの形式をさらに細分化することを所望する場合、ブロックに７個ないし１６個のサブブロックを設定する場合にも、サブブロックの数によってそれぞれのモードを指定できる。ただし、このような細分化されたモードによれば、圧縮効率が低下するという問題点があるため、要求される圧縮比率によって細分化されるモードの形式を、前記のモード７のように１つのモードに統合してもよい。
【００７３】
前記の図４Ａないし図４Ｆで設定されるサブブロックのサブブロック数は３個であるため、図４Ａに示すブロックに対するビット列のためのモードは、モード３に該当する。
【００７４】
また、第１４ステップの後に、ブロックに対する圧縮比率の調整が要求されたかを検出する（第１６ステップ）。
【００７５】
ここで、圧縮比率の調整が要求された場合（第１６ステップの「はい」）、所定臨界値を再設定し（第１８ステップ）、第１４ステップに進む。圧縮比率を上げることを望む場合、所定臨界値の数値をさらに大きくすればよい。所定臨界値の数値を大きくすれば、相対的にサブブロックが少なく設定されるため、圧縮比率を上げることができる。ただし、圧縮比率を上げることにより、画像品質が低下することはやむを得ない。逆に、圧縮比率を低くすることを望む場合、所定臨界値の数値をさらに低くすればよい。所定臨界値の数値を低くすれば、相対的にサブブロックが多く設定されるため、圧縮比率を下げることができる。サブブロックが多く設定されれば、相対的に画像の品質を維持できる。
【００７６】
しかし、圧縮比率の調整が要求されなかった場合（第１６ステップの「いいえ」）、決定されたモードのビット列、マップ情報のビット列及び代表画素値のビット列を生成する（第２０ステップ）。
【００７７】
まず、モードのビット列を生成した後に、マップ情報及び代表画素値のビット列を生成する。
【００７８】
前記の図４Ａに示すブロックに対するモードの形式は、表１に示すように、モード３に該当する。したがって、モード３に対してモードのビット列を生成すると、モード形式を表す数が“３”であるため、これを２進化すれば、“０１１”のビット列が得られる。
【００７９】
前記の図４Ａに示すブロックについてのマップ情報は、図５Ｃに示す通りである。このマップ情報についてのマップビット数が“２［ｂｉｔ］”に該当するため、ブロックの各画素についてのマップ情報のビット列を生成すると、ビット量が“２×１６［ｂｉｔ］”に該当するビット列が得られる。図５Ｃの（１）ないし（１６）に該当する各画素のマップ情報を２進化すると、“０”のマップ情報は、“００”という２進値となり、“１”のマップ情報は、“０１”という２進値となり、“２”のマップ情報は、“１０”という２進値となる。（１）ないし（１６）の各画素のマップ情報を（１）ないし（１６）の順序によって順次に配列すれば、ビット量が“２×１６［ｂｉｔ］”に該当する“００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１”のビット列が得られる。
【００８０】
前記の図４Ａに示すブロックに対するサブブロックの代表画素値は、それぞれ“４”、“１８”及び“４１”である。代表画素値についてのビット列は、サブブロック数が３個であるため、“３×９［ｂｉｔ］”のビット列が生成される。８［ｂｉｔ］の画素値を有するブロックは、時空間予測により９［ｂｉｔ］の画素値を有し、９［ｂｉｔ］の画素値を有するブロックの３個のサブブロックは、ビット量が“３×９［ｂｉｔ］”に該当するビット列を生成する。すなわち、３個のサブブロックのそれぞれの代表画素値“４”、“１８”及び“４１”に対する２進化されたビット列を順に配列すれば、“００００００１００，００００１００１０，０００１０１００１”というビット列が得られる。
【００８１】
したがって、前記の図４Ａに示すブロックに対するモードのビット列、マップ情報のビット列及び代表画素値のビット列を順に配列すると、ビット量が“３＋３×９＋２×１６＝６２［ｂｉｔ］”である“０１１，００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１，００００００１００，００００１００１０，０００１０１００１”のビット列が得られる。
【００８２】
一方、ブロックに対するサブブロックが設定されず、画素平均値が“０”に該当するモード０の場合には、モード形式を表すビット列のみを生成する。この場合、モード０に該当するブロックについてのマップ情報、及び代表画素値についてのビット列は生成しない。モード０に該当するブロックのビット化される量は、モード形式のみについてビット列が生成されるため、“３＋０×９＋０×１６＝３［ｂｉｔ］”のみで表現できる。
【００８３】
モード１は、サブブロックが設定されないため、サブブロック数は存在せず、単に１つのブロックが存在することを表す数字“１”が指定される。また、マップ情報のマップビット数は、“０［ｂｉｔ］”となる。したがって、モード１に該当する場合にブロックのビット化される量は、表１に示すように、“３＋１×９＋０×１６＝１２［ｂｉｔ］”である。
【００８４】
モード２は、サブブロック数が“２”であり、“１［ｂｉｔ］”のマップビット数が必要である。したがって、モード２に該当する場合にブロックのビット化される量は、表１に示すように、“３＋２×９＋１×１６＝３７［ｂｉｔ］”である。
【００８５】
モード３は、サブブロック数が“３”であり、“２［ｂｉｔ］”のマップビット数が必要である。したがって、モード３に該当する場合にブロックのビット化される量は、表１に示すように、“３＋３×９＋２×１６＝６２［ｂｉｔ］”である。
【００８６】
モード４は、サブブロック数が“４”であり、“２［ｂｉｔ］”のマップビット数が必要である。したがって、モード４に該当する場合にブロックのビット化される量は、表１に示すように、“３＋４×９＋２×１６＝７１［ｂｉｔ］”である。
【００８７】
モード５は、サブブロック数が“５”であり、“３［ｂｉｔ］”のマップビット数が必要である。したがって、モード５に該当する場合にブロックのビット化される量は、表１に示すように、“３＋５×９＋３×１６＝９６［ｂｉｔ］”である。
【００８８】
モード６は、サブブロック数が“６”であり、“３［ｂｉｔ］”のマップビット数が必要である。したがって、モード６に該当する場合にブロックのビット化される量は、表１に示すように、“３＋６×９＋３×１６＝１０５［ｂｉｔ］”である。
【００８９】
モード７は、圧縮される前のブロックについての画素の画素値をそれぞれビット化するためのモードである。したがって、サブブロック数及びマップビット数についてのビット列を生成せずに、圧縮される前の“８［ｂｉｔ］”のビット数を有するブロックの各画素の画素値についてビット列を生成する。モード７に該当するブロックのビット化される量は、表１に示すように、“３＋８×１６＝１３１［ｂｉｔ］”である。
【００９０】
以上で説明したように、ブロックに対してサブブロックを設定し、設定されたサブブロックに対して幾つかのモードに区分して、モードによってビット列を生成することにより、従来の圧縮方式に比べて画像の劣化を減らしつつ、圧縮効率を向上できる。
【００９１】
以下、添付した図面を参照して、本発明による画像データの復号化方法を次の通り説明する。
【００９２】
図６は、本発明による画像データの復号化方法を説明するための一実施形態のフローチャートである。
本発明による画像データの復号化方法は、図２に示す画像データの符号化方法により生成されたモードのビット列、マップ情報のビット列及び代表画素値のビット列を複号化する方法である。
【００９３】
まず、ブロックの決定されたモードについてのビット列を復号化する（第３０ステップ）。例えば、前記の図４Ａに示すブロックに対するモードのビット列に該当する“０１１”を復号化すると、“３”という数字情報が得られ、したがって、モード形式がモード３ということを確認できる。モードビット数は、あらかじめ決まっているものであるため、モードビット数が“３［ｂｉｔ］”という情報により、“０１１，００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１，００００００１００，００００１００１０，０００１０１００１”のビット列のうち、優先的に“３［ｂｉｔ］”に該当する“０１１”を復号化する。
【００９４】
第３０ステップの後に、ブロックのマップ情報についてのビット列を復号化する（第３２ステップ）。例えば、前記の図４Ａに示すブロックについてのマップ情報のビット列に該当する“００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１”を復号化すると、図５Ｃに該当するマップ情報が得られる。第３０ステップでブロックに対して、モード３によるビット列が生成されたことが分かり、モード３によりマップビット数が“２［ｂｉｔ］”であるということが分かる。したがって、“０１１，００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１，００００００１００，００００１００１０，０００１０１００１”のビット列のうち、“０１１”以後に“２［ｂｉｔ］”ずつ１６個のビット列を読み取ってマップ情報を復号化する。
【００９５】
第３２ステップの後に、ブロックの代表画素値についてのビット列を復号化する（第３４ステップ）。例えば、前記の図４Ｃ、図４Ｅ及び図４Ｆに示すサブブロックについての代表画素値のビット列に該当する“００００００１００，００００１００１０，０００１０１００１”を復号化すると、図４Ｃ、図４Ｅ及び図４Ｆに示すサブブロックについてのそれぞれの代表画素値に該当する“４”“１８”及び“４１”が得られる。第３０ステップでブロックに対して、モード３によるビット列が生成されたということが分かり、モード３によりサブブロック数が“３”個であるということが分かる。したがって、“０１１，００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１，００００００１００，００００１００１０，０００１０１００１”のビット列のうち、“０１１，００，００，００，０１，００，０１，０１，１０，００，００，００，１０，００，００，００，０１”以後に、“９［ｂｉｔ］”ずつ３個のビット列を読み取って代表画素値を復号化する。
【００９６】
図７は、第３０ステップないし第３４ステップにより、図４Ａに示すブロックのビット列が復号化された一例を示す図である。図７を参照すると、本来の画像に対して損失圧縮された画像の復号化された状態を確認できる。
【００９７】
第３４ステップの後に、符号化されたＲＧＢ信号を復号化する（第３６ステップ）。前記の第１２ステップで符号化されたＲＧＢ信号を復号化する。例えば、図７のビット列が復号化されたブロックに対するＲＧＢ信号を復号化する。
【００９８】
第３６ステップの後に、復号化されたブロックの空間上で予測された画素値を補償するか、または復号化されたブロックの時間上で予測された画素値を補償する（第３８ステップ）。
【００９９】
以下、添付した図面を参照して、本発明による画像データの符号化装置を次の通り説明する。
【０１００】
図８は、本発明による画像データの符号化装置の一実施形態を示すブロック図であって、この画像データの符号化装置は、時空間上予測部１００、ＲＧＢ信号符号化部１１０、サブブロック符号化部１２０、圧縮比率要求感知部１３０、臨界値再設定部１４０及びビット列生成部１５０から構成されている。
【０１０１】
時空間上予測部１００は、空間的に近接したブロックを利用して現在ブロックの画素値を空間上で予測するか、または時間上で直前のブロックを利用して現在ブロックの画素値を時間上で予測して、予測した結果をＲＧＢ信号符号化部１１０に出力する。時空間上予測部１００は、空間上での予測時に各色成分の現在ブロックと空間的に近接したブロックから予測方向を推定して画素値を予測する。また、時空間上予測部１００は、時間上での予測時に各色成分の直前のブロックと現在ブロックとの間に動きを推定して画素値を予測する。
【０１０２】
ＲＧＢ信号符号化部１１０は、Ｒ、Ｇ及びＢのそれぞれの色に対して、時空間上予測部１００で予測された画素値のうち、重複する情報を除去してＲＧＢ信号を符号化し、符号化した結果をサブブロック符号化部１２０に出力する。ＲＧＢ信号符号化部１１０は、予測されたＲ、Ｇ及びＢのそれぞれの色についての画素値の相関関係を利用して、重複する情報を除去し、重複する部分が除去されたＲＧＢ信号を符号化する。
【０１０３】
サブブロック符号化部１２０は、ブロック内の画素の画素平均値を基準に、ブロックを２個のサブブロックに設定する過程を繰り返し、設定されたサブブロックのマップ情報を生成し、サブブロック数によるビット列の生成のためのモードを決定する。
【０１０４】
図９は、図８に示したサブブロック符号化部１２０の一実施形態のブロック図であって、このサブブロック符号化部１２０は、画素平均値算出部２００、画素グループ指定部２１０、臨界値比較部２２０、サブブロック設定部２３０、代表画素値決定部２４０、マップ情報生成部２５０、設定終了検査部２６０及びモード決定部２７０から構成されている。
【０１０５】
画素平均値算出部２００は、ブロックまたはサブブロック内の画素の画素平均値をそれぞれ算出し、算出した結果を画素グループ指定部２１０及び臨界値比較部２２０に出力する。画素平均値算出部２００は、画素グループ指定部２１０およびサブブロック設定部２３０、または設定終了検査部２６０から得られた結果に応じて、サブブロック内の画素の画素平均値をそれぞれ算出する。
【０１０６】
画素平均値算出部２００は、算出された画素平均値が整数ではない場合には四捨五入するか、またはその他の方法で整数にする。
【０１０７】
画素グループ指定部２１０は、算出された画素平均値を基準に、画素平均値以上の画素値を有する画素を１つの画素グループに指定し、画素平均値より小さい画素値を有する画素を他の１つの画素グループに指定し、指定した結果を画素平均値算出部２００に出力する。
【０１０８】
臨界値比較部２２０は、２個の画素グループのそれぞれの画素平均値の差に該当する平均差値が所定臨界値より大きいか否かを検査し、検査した結果をサブブロック設定部２３０及び代表画素値決定部２４０に出力する。
【０１０９】
平均差値が所定臨界値より大きいという比較結果を臨界値比較部２２０から入力されれば、サブブロック設定部２３０は、画素グループのそれぞれをサブブロックに設定し、設定した結果を画素平均値算出部２００に出力する。
【０１１０】
平均差値が所定臨界値より大きくないという比較結果を臨界値比較部２２０から入力されると、代表画素値決定部２４０は、ブロックまたはサブブロック内の画素値を代表する代表画素値を決定し、決定した結果をマップ情報生成部２５０に出力する。代表画素値決定部２４０は、ブロックまたはサブブロックのそれぞれの画素についての画素値の平均を代表画素値として決定する。
【０１１１】
マップ情報生成部２５０は、代表画素値が決定されたサブブロックのそれぞれの画素についてのマップ情報を生成し、生成した結果を設定終了検査部２６０に出力する。マップ情報生成部２５０は、サブブロックごとに同じマップ情報を生成する。
【０１１２】
設定終了検査部２６０は、ブロックのすべてのサブブロックの設定が終了されたか否かを検査し、検査した結果を画素平均値算出部２００及びモード決定部２７０に出力する。
【０１１３】
設定終了検査部２６０からブロックのすべてのサブブロックの設定が終了したという検査結果を入力されると、モード決定部２７０は、ブロックに対するモードを決定する。モードの形式は、ブロックで設定できるサブブロックの最大個数範囲内であらかじめ決まっている。また、ブロックに対するサブブロックが設定されずに、画素平均値が“０”に該当する場合を、モードの付加的な１形式として区分できる。
【０１１４】
圧縮比率要求感知部１３０は、画像データの圧縮比率の調整が要求されているか否かを検出し、感知した結果を臨界値再設定部１４０及びビット列生成部１５０に出力する。
【０１１５】
圧縮比率要求感知部１３０から圧縮比率の調整が要求されているという検出結果を入力されると、臨界値再設定部１４０は、所定臨界値を再設定し、再設定した結果をサブブロック符号化部１２０に出力する。圧縮比率を上げることを所望する場合、所定臨界値の数値をさらに大きくすればよい。臨界値再設定部１４０は、圧縮比率を上げるには、所定臨界値の数値を高く調整する。また、臨界値再設定部１４０は、圧縮比率を下げるには、所定臨界値の数値を低く調整する。
【０１１６】
圧縮比率要求感知部１３０から圧縮比率の調整が要求されていないという検出結果を入力されると、ビット列生成部１５０は、サブブロック符号化部１２０で符号化されて決定されたモードのビット列、マップ情報のビット列及び代表画素値のビット列を生成する。ビット列生成部１５０は、まず、モードのビット列を生成した後に、マップ情報及び代表画素値のビット列を生成する。
【０１１７】
ブロックに対するサブブロックが設定されずに、画素平均値が“０”に該当すると、ビット列生成部１５０は、決定されたモードについてビット列を生成し、マップ情報及び代表画素値についてのビット列は生成しない。
【０１１８】
以下、添付した図面を参照して、本発明による画像データの復号化装置について、次の通り説明する。
【０１１９】
図１０は、本発明の一実施形態による画像データの復号化装置を示すブロック図である。画像データの復号化装置は、モード復号化部３００、マップ情報復号化部３１０、代表画素値復号化部３２０、ＲＧＢ信号復号化部３３０及び時空間上予測補償部３４０から構成されている。
【０１２０】
モード復号化部３００は、前記の画像データの符号化装置により生成されたモードについてのビット列を復号化し、復号化した結果をマップ情報復号化部３１０に出力する。モード復号化部３００は、画像データ符号化装置によって生成されたビット列から、あらかじめ決められたビット列数によって、ビット列を復号化する。
【０１２１】
マップ情報復号化部３１０は、前記の画像データの符号化装置により生成されたマップ情報についてのビット列を復号化し、復号化した結果を代表画素値復号化部３２０に出力する。
【０１２２】
代表画素値復号化部３２０は、前記の画像データの符号化装置により生成された代表画素値についてのビット列を復号化し、復号化した結果をＲＧＢ信号復号化部３３０に出力する。
【０１２３】
ＲＧＢ信号復号化部３３０は、代表画素値復号化部３２０で復号化されて入力されたＲＧＢ信号を復号化し、復号化した結果を時空間上予測補償部３４０に出力する。
【０１２４】
ＲＧＢ信号復号化部３３０から復号化されたＲＧＢ信号が入力されると、時空間上予測補償部３４０は、復号化されたブロックの空間上で予測された画素値を補償するか、または復号化されたブロックの時間上で予測された画素値を補償する。
【０１２５】
このような本願発明の画像データの符号化方法及び復号化方法並びに符号化装置及び復号化装置は、理解を容易にするために、各図に示す実施形態を参照して説明したが、これらは、例示的なものに過ぎず、当業者ならば、これから多様な変形及び均等な他の実施形態が可能であるということが理解できるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲により決定されなければならない。
【０１２６】
例えば、前記した画像データの符号化方法または復号化方法を実行するための少なくとも１つ以上のプロセッサを制御する命令を、コンピュータで読み取り可能な記録媒体に保存するようにしてもよい。
【０１２７】
また、画像データの符号化を、サブブロックの画素の平均値によってブロックを区分する過程を繰り返すステップと、サブブロック数によって、前記画素に関する情報のビット列を生成するステップと、を含む方法によって行ってもよい。この場合、この画素に関する情報は、サブブロックのマップ情報及びサブブロックの画素値を代表する代表画素値を含んでいてもよい。また、この画素に関する情報は、ビット列を生成するためのモードの形式を含んでいてもよい。
【０１２８】
この画素に関する情報がビット列を生成するためのモードの形式を含んでいる場合、このモードの形式は、サブブロックの総数及びサブブロックのマップ情報についてのマップビット数によって決定してもよい。このモードの形式は、ビット列の開始時に所定ビット数に設定されるようにしてもよい。
また、画像データの符号化を、各サブブロックの画素の平均と各画素との比較結果によって、サブブロックを２個のグループに指定するステップと、２個のグループの平均値の差が各サブブロックの画素の所定範囲内に属するまで、サブブロックを２個のグループに指定する過程を繰り返すステップと、をさらに含む方法によって行ってもよい。
【産業上の利用可能性】
【０１２９】
本発明は、画像データ圧縮に関連した技術分野に好適に適用され得る。
【図面の簡単な説明】
【０１３０】
【図１Ａ】クワッドツリー分割方式による符号化方法の一例を示す図である。
【図１Ｂ】クワッドツリー分割方式による符号化方法の一例を示す図である。
【図２】本発明の一実施形態に係る画像データの符号化方法を示すフローチャートである。
【図３】図２に示す第１４ステップの一実施形態を示すフローチャートである。
【図４Ａ】４×４ブロックに対して設定されるサブブロックの一例を示す図である。
【図４Ｂ】４×４ブロックに対して設定されるサブブロックの一例を示す図である。
【図４Ｃ】４×４ブロックに対して設定されるサブブロックの一例を示す図である。
【図４Ｄ】４×４ブロックに対して設定されるサブブロックの一例を示す図である。
【図４Ｅ】４×４ブロックに対して設定されるサブブロックの一例を示す図である。
【図４Ｆ】４×４ブロックに対して設定されるサブブロックの一例を示す図である。
【図５Ａ】サブブロックのマップ情報の一例を示す図である。
【図５Ｂ】サブブロックのマップ情報の一例を示す図である。
【図５Ｃ】サブブロックのマップ情報の一例を示す図である。
【図６】本発明の一実施形態に係る画像データの復号化方法を示すフローチャートである。
【図７】図６に示す第３０ないし第３４ステップにより図４Ａに示すブロックのビット列を復号化した一例を示す図である。
【図８】本発明の一実施形態に係る画像データの符号化装置を示すブロック図である。
【図９】図８に示すサブブロック符号化部の一実施形態を示すブロック図である。
【図１０】本発明の一実施形態に係る画像データの復号化装置を示すブロック図である。
【符号の説明】
【０１３１】
１００  時空間上予測部
１１０  ＲＧＢ信号符号化部
１２０  サブブロック符号化部
１３０  圧縮比率要求感知部
１４０  臨界値再設定部
１５０  ビット列生成部
２００  画素平均値算出部
２１０  画素グループ指定部
２２０  臨界値比較部
２３０  サブブロック設定部
２４０  代表画素値決定部
２５０  マップ情報生成部
２６０  設定終了検査部
２７０  モード決定部
３００  モード復号化部
３１０  マップ情報復号化部
３２０  代表画素値復号化部
３３０  ＲＧＢ信号復号化部
３４０  時空間上予測補償部
【図１Ａ】
2006148892.tif 000004
【図１Ｂ】
2006148892.tif 000005
【図２】
2006148892.tif 000006
【図３】
2006148892.tif 000007
【図４Ａ】
2006148892.tif 000008
【図４Ｂ】
2006148892.tif 000009
【図４Ｃ】
2006148892.tif 000010
【図４Ｄ】
2006148892.tif 000011
【図４Ｅ】
2006148892.tif 000012
【図４Ｆ】
2006148892.tif 000013
【図５Ａ】
2006148892.tif 000014
【図５Ｂ】
2006148892.tif 000015
【図５Ｃ】
2006148892.tif 000016
【図６】
2006148892.tif 000017
【図７】
2006148892.tif 000018
【図８】
2006148892.tif 000019
【図９】
2006148892.tif 000020
【図１０】
2006148892.tif 000021