(58)【調査した分野】(Int.Cl.,DB名)
前記階調削減数決定手段は、前記画像データに前記グラデーション領域が存在する場合に、前記グラデーション領域解析手段の処理結果に対して設定されている前記重みを大きくして前記階調削減数を決定する処理を行う請求項1に記載の画像処理装置。
前記階調削減数決定手段は、前記画像データの平均輝度値が所定値未満である場合に、前記平均輝度値計算手段の処理結果に対して設定されている前記重みを大きくして前記階調削減数を決定する処理を行う請求項1に記載の画像処理装置。
前記階調削減数決定手段は、前記画像データのコントラスト値が所定値以上である場合に、前記ヒストグラム解析手段の処理結果に対して設定されている前記重みを大きくして前記階調削減数を決定する処理を行う請求項1に記載の画像処理装置。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態について説明する。
【0013】
<全体構成>
図1は、本発明の一実施形態に係る画像処理システムの構成の一例を説明するブロック図である。画像処理システム1は、量子化テーブル生成装置10と、画像処理装置11と、送信装置12とを有する。
【0014】
量子化テーブル生成装置10は、画像処理システム1に入力される画像データを量子化する量子化テーブルを生成する。画像データを量子化するとは、例えば画素の階調値が10ビット(1024階調)の画像データを、8ビットの画像データ(256階調)等に量子化することをいうが、量子化前後のビット数については、これに限定されるものではない。
【0015】
量子化テーブル生成装置10は、例えば従来手法であるロイドマックス量子化法を用いて、量子化する前後の画像の差分を最小にし、量子化による画像の劣化を少なくする量子化テーブルを生成する。量子化テーブル生成装置10は、生成された量子化テーブルデータを画像処理装置11に出力する。
【0016】
画像処理装置11は、画像処理システム1に入力される画像データと、量子化テーブル生成装置10から入力される量子化テーブルデータとを用いて、画像データの内容に対応させて元の量子化テーブルを変更する。例えば、画像処理装置11は、画像処理システム1に入力される画像データを用いて、グラデーション領域解析処理、ヒストグラム解析処理、及びスペクトル解析処理等を行い、その処理結果により、量子化テーブル生成装置10から入力される量子化テーブルデータに対して、更に量子化により何ビット削減するかのビット数を決定する。例えば、量子化テーブルデータが、10ビットから8ビットに量子化するテーブルである場合、更にビット数を1ビット削減して7ビットの画像データ(128階調)になるように、量子化テーブルを変更する処理を行う。削減するビット数については、これに限定されるものではなく、上述した解析処理結果に応じてビット数を削減しなくてもよい。
【0017】
なお、変更後の量子化テーブルにおける量子化値のビット数は、変更前の量子化テーブルにおける量子化値のビット数以下となる。また、画像処理装置11は、変更後の量子化テーブルを用いて入力される画像データの量子化処理を行ってもよい。画像処理装置11は、量子化処理後の画像データ、及び変更後量子化テーブルデータを、送信装置12に出力する。
【0018】
画像処理装置11は、例えば電子回路基板等で実現される。電子回路基板には、例えばFPGA(Field−Programmable Gate Array)等が実装され、各種の処理が実行される。なお、実施形態は、FPGA等のPLD(Programmable Logic Device)に限られない。実施形態は、例えば処理の全部、又は一部をASIC(Application Specific Integrated Circuit)によって実現されてもよい。
【0019】
また、画像処理装置11は、電子回路基板に限られない。画像処理装置11は、例えばPC(Personal Computer)等でもよい。画像処理装置11がPCである場合、画像処理装置11は、CPU(Central Processing Unit)を有し、CPUがプログラムを実行することによって各種の処理を実現してもよい。
【0020】
送信装置12は、画像処理装置11により量子化処理された処理後画像データ、及び画像処理装置11により生成された変更後量子化テーブルデータ等の各種データを、所定の画像復元機能を有する受信装置に送信する。
【0021】
受信側(図示せず)では、受信装置は、送信装置12が送信する画像データ、及び量子化テーブルデータ等を受信し、受信した画像データ、及び量子化テーブルデータを利用して、画像データに対して階調復元等の処理を行う。階調復元処理とは、例えば階調値が8ビット(256階調)の画像データを10ビットの画像データ(1024階調)に逆量子化する処理をいうが、これに限定されるものではない。また、本実施形態では、受信側で階調復元以外の処理が行われてもよい。
【0022】
<画像処理装置11の機能構成例>
図2は、本発明の一実施形態に係る画像処理装置の機能構成の一例を説明する機能ブロック図である。
【0023】
画像処理装置11は、入力手段11F1と、グラデーション領域解析手段11F2と、平均輝度値計算手段11F3と、ヒストグラム解析手段11F4と、階調削減数決定手段11F5と、量子化テーブル変更手段11F6と、量子化手段11F7とを有する。
【0024】
入力手段11F1は、画像処理装置11に画像データ、及び量子化テーブル等各種処理に用いるデータを入力する。また、入力手段11F1は、入力した画像データに対し、入力したブロック領域分割データ等に基づき、グラデーション領域解析処理等の処理単位となる所定のブロック領域に分割したり、所定のブロック領域においてスペクトラム解析を行う基準となる小ブロック領域に分割する。入力手段11F1は、例えば入出力用のインタフェース、及びFPGA等の電子回路によって実現される。
【0025】
グラデーション領域解析手段11F2は、入力手段11F1が入力した画像データの画素値について、周波数のパワーの割合の値によりグラデーション領域を解析する。
【0026】
平均輝度値計算手段11F3は、入力手段11F1が入力した画像データが有する画素について、画素がそれぞれ示す輝度値を平均して画像データの平均輝度値を計算する。
【0027】
ヒストグラム解析手段11F4は、入力手段11F1が入力した画像データが有する画素について、画素がそれぞれ示す輝度値に対する画素の頻度を示すヒストグラムを生成し、ヒストグラムから計算される輝度値の差を示すコントラスト値を求める。
【0028】
階調削減数決定手段11F5は、グラデーション領域解析手段11F2若しくはヒストグラム解析手段11F4における処理結果、又は、グラデーション領域解析手段11F2、平均輝度値計算手段11F3、及びヒストグラム解析手段11F4のうち2以上の処理結果に対応させて階調削減数を決定する。
【0029】
量子化テーブル変更手段11F6は、階調削減数決定手段11F5により得られる削減数に応じて入力した量子化テーブルを変更する。例えば、量子化テーブル変更手段11F6は、入力手段11F1から得られる10ビットから8ビットに量子化するための量子化テーブルを入力する。この量子化テーブルは、例えばロイドマックス量子化法等に基づき画像データを量子化するためのテーブルである。
【0030】
また、量子化テーブル変更手段11F6は、階調削減数決定手段11F5により得られる階調削減数データで示される削減数に応じて、入力した量子化テーブル(元の量子化テーブル)に予め設定された量子化後のビット数を削減する変更を行う。例えば、削減数が1ビットの場合には、元の量子化テーブルは、10ビットから7ビットに量子化する量子化テーブルに変更される。また、削減数が2ビットの場合には、元の量子化テーブルは、10ビットから6ビットに量子化する量子化テーブルに変更される。なお、削減数が0の場合には、元の量子化テーブルは、変更されない。量子化テーブル変更手段11F6は、変更した量子化テーブルを量子化手段11F7に出力する。
【0031】
量子化手段11F7は、量子化テーブル変更手段11F6から出力される量子化テーブルを用いて、入力手段11F1から入力される画像データの量子化を行い、処理後画像データ、及び量子化テーブル変更手段11F6よって変更された量子化テーブルを
図1に示す送信装置12に出力する。
【0032】
なお、本実施形態において、画像処理装置11は、量子化テーブル変更手段11F6、及び量子化手段11F7を有しない構成であってもよく、その場合には、階調削減数決定手段11F5が生成する階調削減数データが出力され、他の装置において量子化テーブルの変更、及び変更された量子化テーブルによって画像データを生成してもよい。本実施形態では、
図1の送信装置12は、画像処理装置11が出力する量子化テーブルデータ、及び処理後画像データを受信側の受信装置等に送信する。
【0033】
従来、入力画像のビットプレーン情報に多くの情報量を割り当てるため、画像のデータ量が多くなってしまう場合が多かった。本発明の一実施形態は、グラデーション領域解析処理、平均輝度値計算処理、及びヒストグラム解析処理等の処理結果に基づいて階調削減数を決定し、画像のビット数を削減するフィードフォワード処理を行う。そのため、画像のデータ量をより少なくすることができる。
【0034】
また、画像処理装置11は、平均輝度値計算処理の処理結果に基づいて階調削減数を決定するため、黒つぶれの画素を少なくし、画質の劣化を少なくできる。また、画像処理装置11は、ヒストグラム解析処理の処理結果に基づいて階調削減数を決定するため、階調不足を少なくし、画質の劣化を少なくできる。
【0035】
画像処理装置11は、階調削減数決定処理において、例えば画像のグラデーション領域、明るさ(平均輝度値)、コントラスト値等を考慮することによって、各処理の処理結果に重みを付けて階調削減数を決定するため、画像の状態に適した重み付けができる。したがって、階調削減数決定処理において、画像のグラデーション領域、明るさ(平均輝度値)、コントラスト値等を考慮することによって、画質の劣化を少なくできる。
【0036】
<全体処理例>
図3は、本発明の一実施形態に係る画像処理装置による全体処理の一例を説明するフローチャートである。
【0037】
図3の例において、ステップS0201では、画像処理装置11の入力手段11F1は、画像データ、及び各種処理に用いるデータ等を入力する。
【0038】
次に、ステップS0202では、画像処理装置11は、グラデーション領域解析処理を行う。画像処理装置11は、各種処理を例えば画像データを所定の領域に分割したブロック領域ごとに行う。以下、各種処理は、ブロック領域ごとに行われる場合を例に説明する。ブロック領域に分割するための情報は、予め入力処理で入力される。
【0039】
図4は、本発明の一実施形態に係るブロック領域の一例を説明する図である。
図4(A)は、本発明の一実施形態に係る画像データを3×3の9のブロック領域に分割する場合の一例を示す図である。
【0040】
入力処理で入力される画像2は、
図4(A)に示すように、画像の縦、及び横方向についてそれぞれ3分割される。同一の被写体で各ヒストグラムのデータ量が同じとなるように、ブロック領域21は、各ブロック領域の有する画素数が等分割となるように生成されるのが好ましい。ブロック領域21は、例えば画像2の面積が9等分となるように生成される。
【0041】
なお、実施形態は、3×3の9のブロック領域に分割する場合に限られず、例えば
図4(B)に示すように4×4の16のブロック領域に分割してもよい。
【0042】
グラデーション領域解析処理は、上述したブロック領域ごとに解析を行い、解析結果を出力する。
図5は、本発明の一実施形態に係るグラデーション領域解析処理の一例を説明する図である。
【0043】
グラデーション領域解析処理において、周波数のパワーの割合を算出する処理は、例えば小ブロック領域ごとに行われる。小ブロック領域は、画像データを上述した3×3、4×4等の所定のブロック領域に分割した際、各ブロック領域においてグラデーション領域解析を行う基準となる単位である。グラデーション領域解析処理では、小ブロック領域ごとに算出される周波数のパワーの割合の値を用いて、ブロック領域ごとに解析を行う。
図5の例では、小ブロック領域が縦軸方向16画素、かつ、横軸方向16画素である場合の例を示す図である。グラデーション領域解析処理は、ブロック領域に例えばDCT(Discrete Cosine Transform:離散コサイン変換)を行う。DCTの結果に基づいて、グラデーション領域解析処理は、
図5に示すように、水平周波数、及び垂直周波数がともに最高周波数の1/8以下となる周波数のパワーの割合を算出する処理である。
【0044】
図3に戻り、ステップS0203では、画像処理装置11は、平均輝度値計算処理を行う。平均輝度値計算処理は、入力された画像データの画素の輝度値の平均輝度値を計算する処理である。ステップS0203では、画像処理装置11は、
図4のブロック領域21ごとに画素の平均輝度値を計算する。計算される平均輝度値の数値が高い場合、
図4のブロック領域21は、明るい場合である。平均輝度値計算処理の処理結果は、ブロック領域の計算された平均輝度値である。
【0045】
ステップS0204では、画像処理装置11は、ヒストグラム解析処理を行う。
【0046】
図6は、本発明の一実施形態に係るヒストグラム解析処理の一例を説明する図である。
図6(A)は、本発明の一実施形態に係るヒストグラムの一例を説明する図である。また、
図6(B)は、
図6(A)のヒストグラムデータを用いてヒストグラム解析処理を行う場合の例である。
【0047】
図6(A)、(B)において、横軸は解析対象の画像データに含まれる各画素の輝度値を示し、縦軸は輝度値ごとにカウントした画像データ内の画素数を頻度として示している。ヒストグラム解析処理は、画像データを上述した
図4に示すように所定の大きさに分割したブロック領域ごとに行われる。
【0048】
図6(A)で示すように、ヒストグラムは、縦軸を度数とする「頻度」、及び横軸を画像における画素の輝度値等である「階調値」とするグラフである。ヒストグラムは、画像データを所定の大きさに分割したブロック領域ごとに生成される。
【0049】
ヒストグラム解析処理の処理結果は、例えばヒストグラムデータに基づいて所定の輝度値の幅となるコントラスト(contrast)値である。
【0050】
図6(B)は、
図6(A)に示すヒストグラムにおいて、輝度値の低い方から数えて、画像データの総画素数に対して5%の値となる画素PA、及び輝度値の低い方から数えて総画素数に対して95%の値となる画素PBの各輝度値を取得し、取得した輝度値の差(幅)をコントラスト値とした例を示している。つまり、画素PA、及び画素PBは、
図6(B)において画素を最も輝度値が低い画素から数えていった値(カウント数)によって判断される。なお、上記の数値については、これに限定されるものではない。
図6(B)の場合、コントラスト値は、画素PA、及び画素PBの輝度値の幅である。したがって、コントラスト値が高いほどコントラスト幅が大きい。
【0051】
なお、ステップS0202乃至ステップS0204の処理順序は
図3で示す順序に限られない。本実施形態では、ステップS0202乃至ステップS0204の処理が
図3に示した以外の処理順序でも、又はステップS0202乃至ステップS0204の処理が並行して行われてもよい。また、本実施形態では、ステップS0202乃至ステップS0204の各処理のうち、1又は複数の処理を選択して実行してもよい。
【0052】
図3に戻り、ステップS0205では、画像処理装置11は、階調削減数決定処理を行う。階調削減数決定処理は、削減する階調数の値を計算し、計算した結果を出力する処理である。階調削減数決定処理は、例えば、グラデーション領域解析処理、平均輝度値計算処理、及びヒストグラム解析処理のうち、少なくとも1つの処理結果に基づいて階調削減数の決定処理を行う。なお、階調削減数決定処理は、グラデーション領域解析処理若しくはヒストグラム解析処理における処理結果、又は、グラデーション領域解析処理、平均輝度値計算処理、及びヒストグラム解析処理のうち2以上の処理結果に対応させて階調削減数を決定するのが好ましい。以下、入力処理で入力された画像データの各画素のデータが10ビットの場合を例に説明する。
【0053】
グラデーション領域解析処理において、
図5で示すように、小ブロック領域ごとに0.00乃至1.00の範囲の値が算出される。グラデーション領域解析処理の処理結果は、例えば小ブロック領域ごとの計算結果の平均値又は最大値等である。グラデーション領域解析処理の処理結果の値が高い場合、領域の画像の周波数は低い。領域の画像の周波数が低い場合は、領域の画像の空間における変化が平坦な場合である。グラデーション領域解析処理の処理結果が高い値の場合、階調削減数決定処理は、削減する階調数の値を小さくするように設定する。
【0054】
図7は、本発明の一実施形態に係るグラデーション領域解析処理の処理結果に基づいて削減する階調の数を設定するための設定テーブルの一例を示す図である。設定テーブルT1は、グラデーション領域解析処理の処理結果に応じて削減する階調の数を設定するためのテーブルである。設定テーブルT1は、グラデーション領域解析結果に対応させて階調を削減する数(ビット)が設定されている。設定テーブルT1は、
図7に示すテーブルに限られない。設定テーブルT1の各値は、任意の値が予め入力されている。
【0055】
図7に示すように、設定テーブルT1は、グラデーション領域解析結果の値が大きくなる場合、階調を削減する数が小さくなるように設定される。
【0056】
即ち、ステップS0205では、画像処理装置11は、周波数の低い平坦な画像、いわゆるグラデーション領域の場合、階調を削減する数を小さくする。階調を削減する数が小さい場合、大きいビット数で階調を表現することができる。したがって、明るさ、又は色等が緩やかに変化するグラデーション領域を大きいビット数で表現するため、いわゆる疑似輪郭(Contouring)である縞が発生するのを少なくすることができる。
【0057】
平均輝度値計算処理の処理結果は、ブロック領域ごとの平均輝度値であり、平均輝度値の値が低い場合、ブロック領域の画像が暗い場合である。ブロック領域の画像が暗い場合は、ヴェーバー(Weber)法則により、輝度値の変化が視覚的に目立つ場合である。ブロック領域の画像が暗い場合、階調削減数決定処理は、削減する階調数の値を小さくするように設定する。
【0058】
図8は、本発明の一実施形態に係る平均輝度値計算処理の処理結果に基づいて削減する階調の数を設定するための設定テーブルの一例を示す図である。設定テーブルT2は、平均輝度値計算結果に対応させて階調を削減する数(ビット)が設定されている。
【0059】
設定テーブルT2は、設定テーブルT1と同様、平均輝度値計算処理の処理結果に応じて削減する階調の数を設定する。設定テーブルT2は、
図8で示すテーブルに限られない。設定テーブルT2の各値は、任意の値が予め入力されている。
【0060】
図8で図示するように、設定テーブルT2は、平均輝度値計算処理の処理結果の値が大きくなる場合、階調を削減する数が大きくなるように設定される。平均輝度値計算処理の処理結果が高い値である場合、階調削減数決定処理は、削減する階調数の値を大きくするように設定する。
【0061】
即ち、ステップS0205では、平均輝度値が低い値、即ち暗い画像である場合、画像処理装置11は、階調を削減する数を小さくする。階調を削減する数が小さい場合、大きいビット数で階調を表現することができる。したがって、輝度値の変化による明るさ、又は色の変化が視認されやすい領域を大きいビット数で表現するため、いわゆる黒つぶれの画素を少なくすることができる。
【0062】
ヒストグラム解析処理の処理結果は、コントラスト値であり、コントラスト値が高い場合、画像の輝度値の幅が大きくなる場合である。画像の輝度値の幅が大きい場合は、階調を削減する数が大きいと、階調不足が目立つことになる。画像の輝度値の幅が大きい場合、階調削減数決定処理は、削減する階調数の値を小さくするように設定する処理である。
【0063】
図9は、本発明の一実施形態に係るヒストグラム解析処理の処理結果に基づいて削減する階調の数を設定するための設定テーブルの一例を示す図である。
【0064】
設定テーブルT3は、ヒストグラム解析結果に対応させて階調を削減する数(ビット)が設定されている。設定テーブルT3は、
図9に示すテーブルに限られない。設定テーブルT3の各値は、任意の値が予め入力されている値である。
【0065】
図9に示すように、設定テーブルT3は、ヒストグラム解析処理の処理結果の値が大きくなる場合、階調を削減する数が小さくなるように設定される。ヒストグラム解析処理の処理結果が高い値の場合、階調削減数決定処理は、削減する階調数の値を小さくするように設定する。
【0066】
つまり、ステップS0205では、画像処理装置11は、コントラスト値が高い値の画像の場合、階調を削減する数を小さくする。階調を削減する数が小さい場合、大きいビット数で階調を表現することができる。したがって、コントラスト値が高い領域を大きいビット数で表現するため、いわゆる階調不足を少なくすることができる。
【0067】
また、ステップS0205では、画像処理装置11は、ヒストグラム解析処理、平均輝度値計算処理、及びグラデーション領域解析処理の各処理結果に重みを設定して、階調削減数を決定してもよい。
【0068】
<各処理結果に対応する重み設定について>
ここで、上述した各処理結果に対応する重み設定について説明する。例えば、グラデーション領域解析処理の処理結果、
図7で示す設定テーブルT1によって設定される削減する階調数の値に対する重み係数を「α」とする。また、平均輝度値計算処理の処理結果、
図8で示す設定テーブルT2によって設定される削減する階調数の値に対する重み係数を「β」とする。また、ヒストグラム解析処理の処理結果、
図9で示す設定テーブルT3によって設定される削減する階調数の値に対する重み係数を「γ」とする。例えば、本実施形態では、各設定テーブルから取得した削減する階調数に上述した各重み係数を乗算し、乗算した値を用いて削減する階調数を決定するが、重み係数を削減する階調数に対してどのように付加するかについては、これに限定されるものではない。
【0069】
例えば、各重み係数α=β=γ=1である場合、決定する階調削減数は、ヒストグラム解析処理、平均輝度値計算処理、及びグラデーション領域解析処理の各処理結果から得られる削減数の値を平均し、平均した値を四捨五入することで決定される。例えば、グラデーション領域解析処理の処理結果に対応する階調削減数が1、平均輝度値計算処理の処理結果に対応する階調削減数が2、ヒストグラム解析処理の処理結果に対応する階調削減数が2である場合、決定される削減数は、(1+2+2)/3=1.6・・・=2ビットとなる。
【0070】
例えば、重み係数α=0である場合、決定する階調削減数は、グラデーション領域解析処理の処理結果を考慮せずに、ヒストグラム解析処理、及び平均輝度値計算処理の処理結果に基づいて決定される。例えば、重み係数α=0、重み係数β=γ=1であり、上述と同様に、グラデーション領域解析処理の処理結果に対応する階調削減数が1、平均輝度値計算処理の処理結果に対応する階調削減数が2、ヒストグラム解析処理の処理結果に対応する階調削減数が2である場合、決定される削減数は、(0+2+2)/3=1.3・・・=1ビットとなる。なお、上述した重み係数α、β、γの値は、予め設定されていてもよく、外部から画像データと共に入力されてもよい。
【0071】
なお、本実施形態では、画像の内容に応じて、重み係数の値が変更されてもよい。例えば、画像にグラデーション領域が存在する場合、画像処理装置11は、グラデーション領域解析処理の処理結果の重みを大きくするため、重み係数αの値を予め設定されているαの値よりも大きくする処理を行う。これにより、例えば削減する階調数の値を決定する際、グラデーション領域解析処理の処理結果の影響を、他の処理結果(平均輝度値計算処理の処理結果、及びヒストグラム解析処理の処理結果)よりも大きくすることができ、適切な削減数を決定することができる。
【0072】
例えば、画像の平均輝度値が所定値未満である場合、画像処理装置11は、平均輝度値計算処理の処理結果の重みを大きくするため、重み係数βの値を予め設定されているβの値よりも大きくする処理を行う。これにより、例えば削減する階調数の値を決定する際、平均輝度値計算処理の処理結果の影響を、他の処理結果(ヒストグラム解析処理の処理結果、及びグラデーション領域解析処理の処理結果)よりも大きくすることができ、適切な削減数を決定することができる。
【0073】
例えば、画像のコントラスト値が所定値以上である場合、画像処理装置11は、ヒストグラム解析処理の処理結果の重みを大きくするため、重み係数γの値を予め設定されているγの値よりも大きくする処理を行う。これにより、例えば削減する階調数の値を決定する際、ヒストグラム解析処理の処理結果の影響を、他の処理結果(平均輝度値計算処理の処理結果、及びグラデーション領域解析処理の処理結果)よりも大きくすることができ、適切な削減数を決定することができる。
【0074】
各重み係数は、例えば各重み係数α=β=γ=1となるように初期値を入力し、初期値を基準とする。重み係数αの値を大きくする場合、画像処理装置11は、例えばα=1.5、及びβ=γ=1というように、重み係数αが他の重み係数より大きくなるような値を設定する。なお、本実施形態は、α=β=γ=1の初期値を基準とする場合に限られない。例えば、各重み係数は、初期値にα≠β≠γとなる値がそれぞれユーザによって入力され、入力された初期値を基準としてもよい。
【0075】
ステップS0205で画像処理装置11は、
図4で示すブロック領域ごとに階調削減数を決定することによって、異なるビット数のブロック領域を有する画像を生成するためのデータを出力することができる。ビット数を削減するブロック領域がある場合、画像データのデータ容量を少なくすることができる。
【0076】
なお、実施形態は、
図3で示された全体処理に限られない。実施形態は、各処理が並行、又は分散して処理されてもよい。また、画像処理装置11内の構成各部は、電子回路によって実現される場合に限られず、構成の全部、又は一部がプログラムによって実現されてもよい。
【0077】
<変更前と変更後の量子化テーブルの例>
次に、上述した階調削減数決定手段11F5により得られた階調削減数に基づき、量子化テーブル変更手段11F6で変更される量子化テーブルの一例について、図を用いて説明する。
【0078】
図10は、変更前後の量子化テーブルの一例を示す図である。画像処理装置11は、まず
図10(A)に示す元の量子化テーブルを入力する。元の量子化テーブルは、例えば画素の階調値が10ビットの画像データを、8ビットの画像データに量子化するためのテーブルである。なお、階調値、及び量子化値のビット数については、これに限定されるものではない。
【0079】
また、量子化テーブルにおいて、階調値と量子化値との対応付けは、例えばロイドマックス法等によって実現される。なお、階調値と量子化値との対応付け方法は、ロイドマックス法による方法に限られない。
【0080】
図10(A)に示す元の量子化テーブルは、
図1で示す量子化テーブル生成装置10が出力する量子化テーブルデータの一例である。
【0081】
元の量子化テーブルが示す量子化値のビット数は、ステップS0205の階調削減数決定処理によって決定される削減数によって変更される。画像処理装置11は、量子化値の8ビットを削減数に応じて値を変更する。
【0082】
例えば階調削減数決定処理によって決定される削減数が1ビットである場合、
図10(B)に示すように、量子化値のビット数は、元の量子化テーブル8ビットから7ビットに変更され、変更されたビット数に対応させて階調値に対する量子化値を割り当てる。同様に、例えば階調削減数決定処理によって決定される削減数が2ビットである場合、
図10(C)に示すように、量子化値のビット数は、元の量子化テーブル8ビットから6ビットに変更され、変更されたビット数に対応させて階調値に対する量子化値を割り当てる。
【0083】
なお、変更後の量子化テーブルは、ブロック領域ごとに削減数が決定され、各ブロック領域に対応した変更後の量子化テーブルが元の量子化テーブルから変更されてそれぞれ生成されてもよい。
【0084】
<実行プログラム>
ここで、上述した画像処理装置11は、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)等の揮発性の記憶媒体、ROM(Read Only Memory)等の不揮発性の記憶媒体、マウスやキーボード、ポインティングデバイス等の入力装置、画像やデータを表示する表示部、並びに外部と通信するためのインタフェースを備えたコンピュータによって構成することができる。
【0085】
したがって、画像処理装置11が有する各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現可能となる。また、これらのプログラムは、磁気ディスク(フロッピィーディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記録媒体に格納して頒布することもできる。
【0086】
つまり、上述した各構成における処理をコンピュータに実行させるための実行プログラムを生成し、例えば汎用のPCやサーバ等にそのプログラムをインストールすることにより、本実施形態における画像処理を実現することができる。
【0087】
上述した本実施形態によれば、疑似輪郭、黒つぶれ、及び階調不足抑制を考慮した階調削減数をブロック領域ごとにフィードフォワードに決定することができる。また、階調削減による量子化処理において、画質の劣化を少なくすることができる。例えば、本実施形態によれば、階調削減の際に画像データの解析を行うことによって、黒つぶれの画素等を少なくできるため、画質の劣化を少なくできる。また、階調削減の際に画像データの解析を行うことによって、画質の劣化を少なくできる。さらに、ブロック領域ごとに階調削減数を決定することによって、異なるビット数のブロック領域を有する画像を生成するためのデータを出力することができる。したがって、ビット数を削減するブロック領域がある場合、量子化後の画像データのデータ容量を、従来のロイドマックス量子化法による量子化後の画像データのデータ容量より少なくすることができる。
【0088】
また、画像にグラデーション領域が存在する場合、上述した重み係数αの値を大きくすることによってグラデーション領域解析処理の処理結果の重み(影響)を大きくすることができる。また、画像が所定の明るさ未満である場合、上述した重み係数βの値を大きくすることによって平均輝度値計算処理の処理結果の重みを大きくすることができる。また、画像が所定のコントラスト以上である場合、上述した重み係数γの値を大きくすることによって、ヒストグラム解析処理の処理結果の重みを大きくすることができる。
【0089】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。