画像処理装置、画像処理方法及びプログラム
【課題】簡易な構成で画質劣化の少ない圧縮及び伸張を実現する。
【解決手段】画像処理装置はカラー画像を所定数の代表色で表すことにより圧縮する圧縮処理部を備え、前記圧縮処理部は、カラー画像の各画素の色値から一又は複数の評価値を算出し(ステップS2)、算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けし(ステップS6、S8、S9)、各グループに属する画素の色値に基づいてグループの代表色の色値を算出し(ステップS10)、各画素の色値をその画素が属するグループの代表色を示す符号に符号化し(ステップS11)、当該符号と前記代表値の色値とを圧縮画像として出力する。
【解決手段】画像処理装置はカラー画像を所定数の代表色で表すことにより圧縮する圧縮処理部を備え、前記圧縮処理部は、カラー画像の各画素の色値から一又は複数の評価値を算出し(ステップS2)、算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けし(ステップS6、S8、S9)、各グループに属する画素の色値に基づいてグループの代表色の色値を算出し(ステップS10)、各画素の色値をその画素が属するグループの代表色を示す符号に符号化し(ステップS11)、当該符号と前記代表値の色値とを圧縮画像として出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
従来、画像のデータ圧縮に関しては様々な手法が用いられており、その一つとしてBTC(Block Truncation Coding)と呼ばれる手法がある。カラー画像をBTCの手法により圧縮する場合、画像を小領域に分けて各領域内の画素を、近似する色毎にグループ化し、各グループの代表色を求めてこの代表色に符号を割り当てることにより符号化する。
【0003】
画質劣化を抑えるためには、グループ分けをどのようにするか、つまり代表色の選択が重要となる。精度良く代表色を選択する方法として、従来、領域毎に各色のデータ値の分散を算出し、この分散が最大となる色を着目色として当該着目色の平均値によりグループ分けする手法が開示されている(例えば、特許文献1参照)。
【特許文献1】特開2001−338284号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1の手法では平均値により2つのグループに分けるので、代表色の色数に達するまでグループ分けを繰り返さなければならない。このようなループ構造を持つ回路は回路規模が大きくなる。また、特許文献1の手法では着目色を決めるため分散を算出したり、グループ分けする閾値を決めるため着目色の平均値を算出しなければならない。これでは、演算のための回路構成が必要になるとともに、演算にかかる時間が長くなってしまう。
【0005】
本発明の課題は、簡易な構成で画質劣化の少ない圧縮及び伸張を実現することである。
【課題を解決するための手段】
【0006】
請求項1に記載の発明によれば、
カラー画像を所定数の代表色で表すことにより圧縮する圧縮処理部を備え、
前記圧縮処理部は、
カラー画像の各画素の色値から一又は複数の評価値を算出し、
算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けし、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出し、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する画像処理装置が提供される。
【0007】
請求項2に記載の発明によれば、
前記圧縮処理部は、前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項1に記載の画像処理装置が提供される。
【0008】
請求項3に記載の発明によれば、
前記カラー画像は複数の色からなり、
前記圧縮処理部は、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項1又は2に記載の画像処理装置が提供される。
【0009】
請求項4に記載の発明によれば、
前記圧縮処理部は、複数の評価値を算出した場合、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が少なくとも代表色の数となるように全ての評価値のレンジについて分割を行う請求項1〜3の何れか一項に記載の画像処理装置が提供される。
【0010】
請求項5に記載の発明によれば、
前記評価値は、色の特徴を示す値である請求項1〜4の何れか一項に記載の画像処理装置が提供される。
【0011】
請求項6に記載の発明によれば、
前記圧縮処理部は、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置が提供される。
【0012】
請求項7に記載の発明によれば、
前記圧縮処理部は、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置が提供される。
【0013】
請求項8に記載の発明によれば、
前記圧縮処理部は、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項1〜7の何れか一項に記載の画像処理装置が提供される。
【0014】
請求項9に記載の発明によれば、
請求項1〜8の何れか一項に記載の画像処理装置により符号化された圧縮画像を伸張する伸張処理部を備え、
前記伸張処理部は、圧縮画像の各画素の符号に対応する代表色の色値を出力する画像処理装置が提供される。
【0015】
請求項10に記載の発明によれば、
カラー画像を所定数の代表色で表すことにより圧縮するにあたり、
カラー画像の各画素の色値から一又は複数の評価値を算出する工程と、
前記算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けする工程と、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出する工程と、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する工程と、
を含む画像処理方法が提供される。
【0016】
請求項11に記載の発明によれば、
前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項10に記載の画像処理方法が提供される。
【0017】
請求項12に記載の発明によれば、
前記カラー画像は複数の色からなり、
前記評価値を算出する工程では、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項10又は11に記載の画像処理方法が提供される。
【0018】
請求項13に記載の発明によれば、
評価値を算出する工程において複数の評価値を算出した場合、
前記グループ分けする工程では、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が代表色の数となるように全ての評価値のレンジについて分割を行う請求項10〜12の何れか一項に記載の画像処理方法が提供される。
【0019】
請求項14に記載の発明によれば、
前記評価値は、色の特徴を示す値である請求項10〜13の何れか一項に記載の画像処理方法が提供される。
【0020】
請求項15に記載の発明によれば、
前記グループ分けする工程では、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法が提供される。
【0021】
請求項16に記載の発明によれば、
前記グループ分けする工程では、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法が提供される。
【0022】
請求項17に記載の発明によれば、
前記グループ分けする工程では、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項10〜16の何れか一項に記載の画像処理方法が提供される。
【0023】
請求項18に記載の発明によれば、
請求項10〜17の何れか一項に記載の画像処理方法により符号化された圧縮画像の各画素の符号に対応する代表色の色値を出力し、圧縮画像を伸張する画像処理方法が提供される。
【0024】
請求項19に記載の発明によれば、
コンピュータを、
請求項1〜9の何れか一項に記載の画像処理装置として機能させるためのプログラムが提供される。
【発明の効果】
【0025】
請求項1、9、10、18、19に記載の発明によれば、レンジの分割数を予め代表色数に定めてレンジを分割するので、従来のように代表色の数に達するまで2分割を繰り返すといったループ処理を経ずに圧縮することができる。よって、圧縮処理をハードウェア又はソフトウェア処理の何れによって実現する場合にも、簡易な構成で圧縮を行うことができる。また、評価値によりできるだけ評価が類似する画素毎にグループ分けすることができ、圧縮及び伸張による画質劣化の低減を図ることができる。
【0026】
請求項2、11に記載の発明によれば、圧縮及び伸張による誤差を小さくして画質劣化の低減を図ることができる。
【0027】
請求項3、12に記載の発明によれば、複数色それぞれの色の特徴を加味した評価値を算出することができ、グループ分けを精度よく行って画質劣化の低減を図ることができる。
【0028】
請求項4、13に記載の発明によれば、他の評価値より突出して大きい評価値、つまりばらつきが非常に大きい評価値のレンジを分割することにより、できるだけ評価が類似する画素を同じグループにグループ分けすることができる。これにより、グループ分けの精度を向上させて画質劣化の低減を図ることができる。
【0029】
請求項5、14に記載の発明によれば、色の特徴を評価することができ、色の特徴が類似する画素同士を同じグループにグループ分けすることができる。これにより、圧縮及び伸張による色味の誤差を小さくして画質劣化の低減を図ることができる。
【0030】
請求項6、15に記載の発明によれば、レンジを分割する閾値を算出する演算が容易となり、圧縮時間を短縮することができる。
【0031】
請求項7、16に記載の発明によれば、伸張時の誤差を小さくすることができ、画質劣化の低減を図ることができる。
【0032】
請求項8、17に記載の発明によれば、評価値による各画素の分布状態に応じた符号化が可能となり、画質劣化の一層の低減を図ることができる。
【発明を実施するための最良の形態】
【0033】
本実施形態では、本発明をMFP(Multi Function Peripheral)に適用した例を説明するが、画像の圧縮又は伸張を行う画像処理装置であれば本発明を適用可能である。
【0034】
まず、構成を説明する。
図1に、本実施形態におけるMFP100の機能的構成を示す。
MFP100は、図1に示すように本体部10、画像読取部20、操作部30、タッチパネル40、表示部50、プリンタ部60等を備えて構成されている。本体部10は、画像処理部1、制御部2、記憶部3、画像制御部4、画像メモリ5を備えて構成されている。
【0035】
画像読取部20は、ADF(Auto Document Feeder)、スキャナ等を備えている。画像読取部20は、原稿の画像を読み取り、当該画像信号(アナログ)を生成する処理を行う。生成された画像は画像処理部1に出力される。なお、画像読取部20において生成される画像は、R(赤)、G(緑)、B(青)の3色に分解されたカラー画像である。
【0036】
操作部30は操作キーを備え、この操作キーやタッチパネル40等の操作に応じた操作信号を生成して制御部2に出力する。
表示部50はタッチパネル40と一体に構成されるディスプレイを備え、制御部2の表示制御に従って、画像形成条件の設定画面等の各種操作画面を表示する。
【0037】
プリンタ部60は、画像処理部1から入力される画像のデータに基づいて用紙上に画像をプリントする。プリンタ部60のプリント方式は何れのものであってもよいが、ここでは電子写真方式の場合を例に説明する。電子写真方式の場合、プリンタ部60はY(黄)、M(マジェンタ)、C(シアン)、K(黒)の色毎に露光及び現像を行うユニットを備えている他、中間ベルト、給紙部、定着部等を備えている。各色のユニットでは、レーザ光源から感光ドラムにレーザ光を照射して露光を行い、静電潜像を形成する。その後、感光ドラム上の静電潜像をトナーで現像してトナー像を形成し、これを中間ベルト上に転写する。この露光、現像、転写の工程を、中間ベルトの回動に合わせて各色のユニットが順次繰り返すことにより、中間ベルト上に各色のトナー像を重ね合わせたカラー画像を形成する。最後に、カラー画像を給紙部から搬送された用紙に転写し、定着部により定着処理を施す。
【0038】
次に、本体部10の各部について説明する。
制御部2は、CPU(Central Processing Unit)、RAM(Random Access Memory)等から構成されている。制御部2は、記憶部3に記憶されている制御プログラムとの協働により各種演算を行うとともに、各部の動作を制御する。例えば、一連のプリントの過程において各部への画像のデータの入出力を制御したり、操作画面の表示制御等を行う。
【0039】
記憶部3は、制御部2や画像処理部1で用いられるプログラムやパラメータ等を記憶している。記憶部3は例えばハードディスク等を適用できる。
【0040】
画像制御部4は、画像メモリ5への画像の保存、読み出しを制御する。
画像メモリ5は画像保存用のメモリであり、ハードディスク等の大容量メモリから構成されている。
【0041】
画像処理部1は、画像に対し各種画像処理を施す。
図2は、画像処理部1の主な機能部分を示す図である。画像処理部1は、図2に示すように前処理部11、色変換部12、圧縮処理部13、伸張処理部14,γ補正部15、スクリーン処理部16等を備えて構成されている。
【0042】
前処理部11は、R、G、Bの各画像(アナログ信号)のA/D変換処理を行って画像のデジタルデータを生成したり、シェーディング補正処理を施して画像読取部20により生じる輝度ムラを補正する。また、前処理部11は、画像読取部2のスキャナ特有の輝度特性を人の視覚特性に応じた最適な輝度特性に変換するI−I′変換処理、MTF(Modulation Transfer Function)フィルタを用いた鮮鋭化処理等を施す。
【0043】
色変換部12は、R、G、Bの各画像に対して色補正を施した後、色変換を行ってR、G、Bのカラー画像からC、M、Y、Kのカラー画像を生成する。生成したC、M、Y、Kのカラー画像は圧縮処理部13に出力される。
【0044】
圧縮処理部13は、C、M、Y、Kのカラー画像に対し、BTC方式による圧縮処理を施す。
まず、図3を参照してカラー画像を圧縮する場合の原理について説明する。
圧縮処理は一定領域単位で行う。この一定領域とは、画像の主走査方向及び副走査方向の2次元に並ぶ複数の画素からなる領域をいい、例えば図3Aに示すように8画素×8画素の小領域である。
【0045】
図3Aに示す元画像G1は1画素がC、M、Y、Kの4色の色値を有するカラー画像である。各色の色値は8bitのデータであり、0〜255の階調表現が可能である。元画像G1は8画素×8画素の64画素からなるので、元画像G1は4色×8bit×64画素=2048bitのデータ量となる。
【0046】
圧縮処理部13では、この元画像G1を4色の代表色で表すことにより圧縮を行う。すなわち、元画像G1の各画素を4つのグループに分けて、各グループの代表色となる色値を求める。図3Bの注釈G3は、元画像G1の各画素を、色の特徴が類似する4つのグループに分け、各グループから求めた4つの代表色の色値(C、M、Y、K)を示している。圧縮処理部13は、各代表色に代表色を示す2bitの符号00、01、10、11を割り当て、元画像G1の各画素の色値を各画素が属するグループの代表色を示す符号に置き換えて符号化する。図3Bは、各画素を代表色とその符号により示した圧縮画像G2の図である。
【0047】
圧縮画像G2は、各画素の符号と、符号に対応する代表色の色値(C、M、Y、K)とからなる。伸張する際は各符号に対応する代表色の色値(C、M、Y、K)を出力すればよい。代表色の色値は1色8bitのデータであるので、圧縮画像G2は符号2bit×64画素+8bit×4色×4代表色数=256bitとなる。結果として、256bit/2048bit=12.5倍の圧縮率となる。
【0048】
圧縮及び伸張による画質劣化を防ぐためには、グループ分けをどのように行うか、つまり代表色をどのように選択するかが重要となる。できるだけ色の特徴が類似する画素同士を同じグループにまとめれば、各画素の色値がその画素が属するグループの代表色の色値に近い値となるので、圧縮前の色値と伸張後の色値との誤差が小さくなるからである。本実施形態に係る圧縮処理は、代表色の選択を、簡易な構成でかつ画質劣化が少なくなるように行うものである。
【0049】
図4を参照して、本実施形態に係る圧縮処理について説明する。なお、図4に示す圧縮処理は、記憶部3に記憶されている圧縮処理用のプログラムと、圧縮処理部13との協働により実現されるソフトウェア処理であるが、この処理の処理ステップを回路化し圧縮処理をハードウェアによって実現することとしてもよい。
【0050】
以下の圧縮処理では、代表色の数を4とし、2bitの符号を割り当てる例を説明する。
図4に示すように、n画素×n画素の一定領域毎に画像を入力する(ステップS1)。ここでは、n=8の例を説明する。圧縮処理部13は領域内の各画素の色値(C、M、Y、K)を用いて、各画素について色の特徴を示す一又は複数の評価値を算出する(ステップS2)。評価値は各画素の色の特徴の類似度合いを評価するために用いるものである。色の特徴とは、明度、色相、彩度等、色の表現に必要な要素をいう。
【0051】
ここでは、評価値としてL(明度)、r_g(赤緑度)、b(青度)の3つの評価値を算出する例を説明する。
まず、色値(C、M、Y、K)を、下記式1〜3によりRGB空間の色値(r、g、b)に変換する。この変換は逆UCR(Under Color Removal)変換に相当する。
r=(255−C)×(255+30−K)/256…(1)
g=(255−M)×(255+30−K)/256…(2)
b=(255−Y)×(255+30−K)/256…(3)
【0052】
次に、求めた色値(r、g、b)を、下記式4〜6によりL、r_g、bに変換する。
L=(r+g)/2…(4)
r_g=(r+255+30−g)/2…(5)
b=b…(6)
【0053】
このようにして、64の各画素につき評価値L、r_g、bを算出すると、3つの評価値のうちL、r_gの2つを要素とする2次元空間において、各画素について算出した評価値L、r_gの値を元に各画素を示す点をプロットする。これにより、L、r_g空間における各画素の分布領域を形成する(ステップS3)。なお、評価値bを除外したのは、後述する分割の操作をより容易にかつ迅速に行うためである。評価値は代表色の選択を左右するが、評価値bは人の視覚感度が低いことから、これを除外しても代表色の選択の精度に大きな影響はないと考えられる。
【0054】
次いで、形成した分布領域で評価値L、r_gのレンジをそれぞれ算出する(ステップS4)。レンジとは、各画素について算出された評価値L、r_gの最大値と最小値間の区間をいう。次いで、他の評価値のレンジに比して突出して大きいレンジの評価値の有無を判断するため、算出した評価値Lのレンジと、評価値r_gのレンジの2倍とを比較する(ステップS5)。なお、ここでは一方のレンジRrgを2倍したものを閾値として、レンジRLがレンジRrgより突出して大きいかどうかを判断しているが、突出して大きいかどうかを判断できるのであれば一方のレンジを1.5倍したものを閾値とする等、その係数を変えても良いし、別の閾値を採用してもよい。
【0055】
図5Aに示すように、評価値r_gのレンジRrgを2倍しても評価値LのレンジRLの方が大きい場合(ステップS5;Y)、レンジRLは突出して大きいと判断し、図5Bに示すようにレンジRLを均等に4分割し、分割した各区間に属する画素毎にグループ化する(ステップS6)。なお、分割数を4としているのは代表色数4に一致させているのであり、少なくとも代表色の数だけ分割できるのであれば、分割数は4以上であってもよい。
【0056】
具体的には、図5Bに示すように評価値LのレンジRLを4等分する3つの閾値THL1〜THL3を求め、この3つの閾値THL1〜THL3とLの最大値LMax、最小値Lminを元に、Lmin≦L<THL1、THL1≦L<THL2、THL2≦L<THL3、THL3≦L≦LMaxの4つの区間に分割する。そして、分割した各区間の何れに属するかによって各画素をグループ化し、4つのグループを形成する。
【0057】
一方、評価値LのレンジRLは、評価値r_gのレンジRrgの2倍よりも小さい場合(ステップS5;N)、逆に評価値LのレンジRLを2倍したものと、評価値r_gのレンジRrgとを比較する(ステップS7)。図6Aに示すように、評価値LのレンジRLを2倍しても、評価値r_gのレンジRrgの方が大きい場合(ステップS7;Y)、レンジRrgは突出して大きいと判断し、図6Bに示すようにレンジRrgを均等に4分割し、分割した各区間に属する画素毎にグループ化する(ステップS8)。
【0058】
分割方法はステップS6で説明した方法と同様である。つまり、図6Bに示すように評価値r_gのレンジRrgを4等分する3つの閾値THrg1〜THrg3と、r_gの最大値rgMax、最小値rgminとから、rgmin≦r_g<THrg1、THrg1≦r_g<THrg2、THrg2≦r_g<THrg3、THrg3≦r_g≦rgMaxの4つの区間に分割する。そして、分割した各区間の何れに属するかによって各画素をグループ化し、4つのグループを形成する。
【0059】
評価値LのレンジRLがレンジr_gの2倍より小さく、レンジr_gもレンジRLの2倍より小さい場合(ステップS7;N)、つまりレンジRL、Rrgの何れも他の評価値に比して突出して大きいものではないと判断した場合、図7Aに示すようにレンジRL、Rrgの差が小さい分布領域を形成していると考えられる。よって、この場合は合計分割数が4となるように、レンジRLを均等に2分割、さらにレンジRrgを均等に2分割し、分割した各区間に属する画素毎にグループ化する(ステップS9)。
【0060】
具体的には、レンジRL、Rrgを2等分する閾値THL、THrgをそれぞれ算出する。そして、rgmin≦r_g<THrgかつTHL≦L≦LMax、THrg≦r_g≦rgMaxかつTHL≦L≦LMax、THrg≦r_g≦rgMaxかつLmin≦L<THL、rgmin≦r_g<THrgかつLmin≦L<THLの4つの区間の何れに属するかによって各画素をグループ化し、4つのグループを形成する。
【0061】
このようにして、64画素を4つにグループ分けすると、各グループからそれぞれ代表色0、1、2、3の色値(C、M、Y、K)を求める。代表色0〜3は、各グループに属する画素の色値(C、M、Y、K)の平均値とする。或いは、平均値に近い色値を持つ画素を求め、この画素の色値を代表色の色値として採用してもよい。
【0062】
次いで、圧縮処理部13は64画素の符号化を行う(ステップS11)。代表色と符号の関係は、代表色0を示す符号を00、代表色1を示す符号を01、代表色2を示す符号を10、代表色3を示す符号を11とする。圧縮処理部13は、64の各画素がどの区間に属するかによって所属すべきグループを判断し、各画素の色値(C、M、Y、K)を、各画素が属するグループの代表色0〜3を示す符号に置き換える。
【0063】
圧縮処理部13は、上述の処理を8画素×8画素の領域毎に繰り返し行い、領域毎に符号と各代表色0〜3の色値(C、M、Y、K)とを算出する。圧縮処理部13は、この領域毎に求められた符号(2bit)と代表色0〜3の色値(C、M、Y、K)(8bit)を圧縮画像として出力する。圧縮画像は、画像制御部4を介して画像メモリ5に出力され、画像メモリ5において保存される。
【0064】
伸張処理部14は、画像制御部4を介して画像メモリ5に保存されている圧縮画像が入力されると、当該圧縮画像に伸張処理を施す。
以下、伸張処理について説明する。
なお、伸張処理についても圧縮処理と同じ処理単位である8画素×8画素の領域毎に伸張処理を施すので、圧縮画像は圧縮処理がなされた8画素×8画素の領域毎に伸張処理部14に入力される。
【0065】
上記のように、圧縮画像は64画素についての符号と、4つの代表色0〜3の色値(C、M、Y、K)とからなる。伸張処理部14は、各画素の符号に対応する代表色0〜3の色値(C、M、Y、K)を、その画素の色値(C、M、Y、K)として出力することにより、復号化を行う。このように伸張された画像は、γ補正部15に出力される。
【0066】
γ補正部15は、伸張処理部14から入力された画像に対し、LUTを用いて画像の階調を補正する補正処理を行う。この階調補正は、画像の階調を人の視覚特性に応じたものとするための処理であり、LUTもその階調補正用に予め備えられているものである。
【0067】
スクリーン処理部16は、中間調を再現するため、γ補正部15から入力された画像に対しディザ法や誤差拡散法等による中間調処理を施す。中間調処理が施された画像は、プリンタ部60に出力される。
【0068】
以上のように、本実施形態によれば、圧縮処理部13は、カラー画像の各画素の色値(C、M、Y、K)を用いて複数の評価値L、r_gを算出し、算出した評価値のレンジを代表色の数4に分割し、分割した各区間に該当する画素毎にグループ分けする。また、圧縮処理部13は4つの各グループに属する画素の色値(C、M、Y、K)からグループの代表色0〜3の色値(C、M、Y、K)を算出し、各画素の色値(C、M、Y、K)をその画素が属するグループの代表色0〜3を示す符号に置き換えて符号化する。圧縮処理部13はこの符号と代表色0〜3の色値(C、M、Y、K)とを圧縮画像として出力する。伸張時には、伸張処理部14は圧縮画像の符号を、その符号に対応する代表色0〜3の色値(C、M、Y、K)に代えて出力する。
【0069】
このように、予め分割数を代表色の数に定めてレンジを分割するので、代表色の数に達するまで2分割を繰り返すといったループ処理は不要となる。ループ処理のための回路構成は不要となり、回路の拡張を回避することができる。よって、圧縮処理をハードウェアにより実現する場合も簡易な構成で圧縮を行うことができる。
【0070】
また、上記圧縮処理は一定領域毎に行うので、代表色0〜3の選択を小領域毎に行うことができ、圧縮及び伸張による誤差を小さくして画質劣化の低減を図ることができる。
【0071】
また、評価値Lとr_gについて一方のレンジと他方のレンジを2倍したものと比較することにより、他の評価値に比して突出してレンジが大きい評価値の有無を判断し、突出してレンジが大きい評価値についてはその評価値のレンジを代表色数分だけ分割する。突出してレンジが大きいということは、評価値のばらつきが大きいということであるため、当該評価値のレンジを分割することにより、できるだけ評価値つまり色の特徴が類似するもの同士を同じグループにグループ化することができる。これにより、圧縮及び伸張による画質劣化の低減を図ることができる。
【0072】
一方、特に突出してレンジが大きい評価値がない場合、評価値のばらつきが少ないといえる。このような場合には、合計分割数が代表色数の4となるように評価値LのレンジRLを2分割、評価値r_gのレンジRrgを2分割し、全ての評価値について分割を行う。これにより、上記の場合と同様にできるだけ色の特徴が類似するもの同士を同じグループにグループ化することができる。
【0073】
また、レンジの分割は分割した各区間が均等となるように行う。これにより、分割する閾値の演算が容易となり、圧縮のための時間を短縮することができる。また、複雑な演算のための回路構成も不要となる。
【0074】
なお、上述した実施形態は本発明の好適な一例であり、これに限定されない。
例えば、上記実施形態では、各画素の色値(C、M、Y、K)をL、g_r、bの表色系の色成分に分解し、そのうち2つの評価値L、g_rをグループ分けに用いたが、評価値は色の特徴を示すものであれば他の評価値を用いてもよいし、その数も特に限定されない。他の評価値としては色値(C、M、Y、K)をL*a*b*やXYZ、マンセル等の表色系の色成分に分解したときの色成分値が上げられる。
【0075】
一例として、3つの評価値L*、a*、b*を用いた場合の処理方法を説明する。
まず、L*、a*、b*の何れか1つの評価値のレンジが他の2つの評価値のレンジの2倍以上ならその1つの評価値のレンジを8分割し、グループ化する。また、何れか2つの評価値のレンジが他の1つの評価値のレンジの2倍以上なら、当該2つの評価値のレンジをそれぞれ4分割して合計8つにグループ分けする。その何れでもない場合には、各評価値のレンジをそれぞれ2分割して合計8つにグループ分けする。そして、各グループの代表色を求め、符号化する。このときの符号は3bitのデータである。
【0076】
また、レンジの分割数を代表色の数より多くし、分割した各区間のうちその区間に属する画素の頻度の多い順に代表色の数だけ区間を抽出して、抽出した各区間に属する画素毎にグループ化して代表色を求めることとしてもよい。
例えば、代表色の数が4である場合、図8に示すように代表色の数より多い6つにレンジを分割する。そして、分割した6つの区間にそれぞれ属する画素の頻度を求め、最大頻度の28から順に、頻度16、10、7の合計4つの区間を抽出する。抽出されなかった残り2つの区間(頻度が1と2の区間)を抽出した4つの区間のうち隣接する区間に併合する。例えば、頻度1の区間は頻度16の区間に併合し、頻度2の区間は頻度28の区間に併合する。そして、併合後の4つの区間に属する画素の色値からそれぞれ代表色0〜3を算出する。これにより、各画素の色の分布状態に応じた符号化が可能となり、圧縮及び伸張による画質劣化の一層の低減を図ることができる。
【0077】
また、上記実施形態では評価値L、r_gのレンジを均等に分割する閾値を求めて分割を行っていた。つまり、符号化時の区間が均等となるように閾値を決めていたが、図9に示すように復号時の区間が均等となるように閾値を決めることとしてもよい。具体的には、図9に示すようにレンジの最大値LMax、最小値Lmin、最大値と最小値Lmin間を3等分する値を求める。そして、これらの値の中央値を、評価値Lのレンジを分割する閾値THL1、THL2、THL3としてグループ分けを行う。この構成によれば、復号時の誤差が少なくすることができ、圧縮及び伸張による画質劣化の低減を図ることができる。
【0078】
また、上記実施形態では、CMYKの4色からなる画像を圧縮する例を説明したが、例えばKのみ等、1色のみからなる画像を同様の処理により圧縮することもできる。1色のみの場合、r_gの評価値についてはレンジが小さくなることが予想されるので、Lの評価値のみを用いることとしてもよい。
【0079】
また、本発明に係るプログラムのコンピュータ読み取り可能な媒体としては、ROM、フラッシュメモリ等の不揮発性メモリ、CD-ROM等の可搬型記録媒体を適用することが可能である。
また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
【図面の簡単な説明】
【0080】
【図1】本実施形態におけるMFPの機能的構成を示す図である。
【図2】図1の画像処理部の機能的構成を示す図である。
【図3A】元画像の一例を示す図である。
【図3B】図3Aの元画像の圧縮画像を示す模式図である。
【図4】圧縮処理部による処理の流れを示すフローチャートである。
【図5A】評価値Lのレンジが評価値r_gのレンジの2倍よりも大きい場合の各画素の分布領域例を示す図である。
【図5B】評価値Lに4分割する例を示す図である。
【図6A】評価値r_gのレンジが評価値Lのレンジの2倍よりも大きい場合の各画素の分布領域例を示す図である。
【図6B】評価値r_gのレンジを4分割する例を示す図である。
【図7A】評価値L、評価値r_gともにレンジが他の評価値の2倍よりも大きくない場合の各画素の分布領域例を示す図である。
【図7B】評価値Lのレンジを2分割、評価値r_gのレンジを2分割する例を示す図である。
【図8】分割数を代表色数より多くする他の実施例を示す図である。
【図9】復号時の復号区間が均等となるように分割する他の実施例を示す図である。
【符号の説明】
【0081】
100 MFP
1 画像処理部
12 色変換部
13 圧縮処理部
14 伸張処理部
2 制御部
3 記憶部
5 画像メモリ
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
従来、画像のデータ圧縮に関しては様々な手法が用いられており、その一つとしてBTC(Block Truncation Coding)と呼ばれる手法がある。カラー画像をBTCの手法により圧縮する場合、画像を小領域に分けて各領域内の画素を、近似する色毎にグループ化し、各グループの代表色を求めてこの代表色に符号を割り当てることにより符号化する。
【0003】
画質劣化を抑えるためには、グループ分けをどのようにするか、つまり代表色の選択が重要となる。精度良く代表色を選択する方法として、従来、領域毎に各色のデータ値の分散を算出し、この分散が最大となる色を着目色として当該着目色の平均値によりグループ分けする手法が開示されている(例えば、特許文献1参照)。
【特許文献1】特開2001−338284号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1の手法では平均値により2つのグループに分けるので、代表色の色数に達するまでグループ分けを繰り返さなければならない。このようなループ構造を持つ回路は回路規模が大きくなる。また、特許文献1の手法では着目色を決めるため分散を算出したり、グループ分けする閾値を決めるため着目色の平均値を算出しなければならない。これでは、演算のための回路構成が必要になるとともに、演算にかかる時間が長くなってしまう。
【0005】
本発明の課題は、簡易な構成で画質劣化の少ない圧縮及び伸張を実現することである。
【課題を解決するための手段】
【0006】
請求項1に記載の発明によれば、
カラー画像を所定数の代表色で表すことにより圧縮する圧縮処理部を備え、
前記圧縮処理部は、
カラー画像の各画素の色値から一又は複数の評価値を算出し、
算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けし、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出し、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する画像処理装置が提供される。
【0007】
請求項2に記載の発明によれば、
前記圧縮処理部は、前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項1に記載の画像処理装置が提供される。
【0008】
請求項3に記載の発明によれば、
前記カラー画像は複数の色からなり、
前記圧縮処理部は、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項1又は2に記載の画像処理装置が提供される。
【0009】
請求項4に記載の発明によれば、
前記圧縮処理部は、複数の評価値を算出した場合、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が少なくとも代表色の数となるように全ての評価値のレンジについて分割を行う請求項1〜3の何れか一項に記載の画像処理装置が提供される。
【0010】
請求項5に記載の発明によれば、
前記評価値は、色の特徴を示す値である請求項1〜4の何れか一項に記載の画像処理装置が提供される。
【0011】
請求項6に記載の発明によれば、
前記圧縮処理部は、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置が提供される。
【0012】
請求項7に記載の発明によれば、
前記圧縮処理部は、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置が提供される。
【0013】
請求項8に記載の発明によれば、
前記圧縮処理部は、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項1〜7の何れか一項に記載の画像処理装置が提供される。
【0014】
請求項9に記載の発明によれば、
請求項1〜8の何れか一項に記載の画像処理装置により符号化された圧縮画像を伸張する伸張処理部を備え、
前記伸張処理部は、圧縮画像の各画素の符号に対応する代表色の色値を出力する画像処理装置が提供される。
【0015】
請求項10に記載の発明によれば、
カラー画像を所定数の代表色で表すことにより圧縮するにあたり、
カラー画像の各画素の色値から一又は複数の評価値を算出する工程と、
前記算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けする工程と、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出する工程と、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する工程と、
を含む画像処理方法が提供される。
【0016】
請求項11に記載の発明によれば、
前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項10に記載の画像処理方法が提供される。
【0017】
請求項12に記載の発明によれば、
前記カラー画像は複数の色からなり、
前記評価値を算出する工程では、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項10又は11に記載の画像処理方法が提供される。
【0018】
請求項13に記載の発明によれば、
評価値を算出する工程において複数の評価値を算出した場合、
前記グループ分けする工程では、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が代表色の数となるように全ての評価値のレンジについて分割を行う請求項10〜12の何れか一項に記載の画像処理方法が提供される。
【0019】
請求項14に記載の発明によれば、
前記評価値は、色の特徴を示す値である請求項10〜13の何れか一項に記載の画像処理方法が提供される。
【0020】
請求項15に記載の発明によれば、
前記グループ分けする工程では、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法が提供される。
【0021】
請求項16に記載の発明によれば、
前記グループ分けする工程では、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法が提供される。
【0022】
請求項17に記載の発明によれば、
前記グループ分けする工程では、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項10〜16の何れか一項に記載の画像処理方法が提供される。
【0023】
請求項18に記載の発明によれば、
請求項10〜17の何れか一項に記載の画像処理方法により符号化された圧縮画像の各画素の符号に対応する代表色の色値を出力し、圧縮画像を伸張する画像処理方法が提供される。
【0024】
請求項19に記載の発明によれば、
コンピュータを、
請求項1〜9の何れか一項に記載の画像処理装置として機能させるためのプログラムが提供される。
【発明の効果】
【0025】
請求項1、9、10、18、19に記載の発明によれば、レンジの分割数を予め代表色数に定めてレンジを分割するので、従来のように代表色の数に達するまで2分割を繰り返すといったループ処理を経ずに圧縮することができる。よって、圧縮処理をハードウェア又はソフトウェア処理の何れによって実現する場合にも、簡易な構成で圧縮を行うことができる。また、評価値によりできるだけ評価が類似する画素毎にグループ分けすることができ、圧縮及び伸張による画質劣化の低減を図ることができる。
【0026】
請求項2、11に記載の発明によれば、圧縮及び伸張による誤差を小さくして画質劣化の低減を図ることができる。
【0027】
請求項3、12に記載の発明によれば、複数色それぞれの色の特徴を加味した評価値を算出することができ、グループ分けを精度よく行って画質劣化の低減を図ることができる。
【0028】
請求項4、13に記載の発明によれば、他の評価値より突出して大きい評価値、つまりばらつきが非常に大きい評価値のレンジを分割することにより、できるだけ評価が類似する画素を同じグループにグループ分けすることができる。これにより、グループ分けの精度を向上させて画質劣化の低減を図ることができる。
【0029】
請求項5、14に記載の発明によれば、色の特徴を評価することができ、色の特徴が類似する画素同士を同じグループにグループ分けすることができる。これにより、圧縮及び伸張による色味の誤差を小さくして画質劣化の低減を図ることができる。
【0030】
請求項6、15に記載の発明によれば、レンジを分割する閾値を算出する演算が容易となり、圧縮時間を短縮することができる。
【0031】
請求項7、16に記載の発明によれば、伸張時の誤差を小さくすることができ、画質劣化の低減を図ることができる。
【0032】
請求項8、17に記載の発明によれば、評価値による各画素の分布状態に応じた符号化が可能となり、画質劣化の一層の低減を図ることができる。
【発明を実施するための最良の形態】
【0033】
本実施形態では、本発明をMFP(Multi Function Peripheral)に適用した例を説明するが、画像の圧縮又は伸張を行う画像処理装置であれば本発明を適用可能である。
【0034】
まず、構成を説明する。
図1に、本実施形態におけるMFP100の機能的構成を示す。
MFP100は、図1に示すように本体部10、画像読取部20、操作部30、タッチパネル40、表示部50、プリンタ部60等を備えて構成されている。本体部10は、画像処理部1、制御部2、記憶部3、画像制御部4、画像メモリ5を備えて構成されている。
【0035】
画像読取部20は、ADF(Auto Document Feeder)、スキャナ等を備えている。画像読取部20は、原稿の画像を読み取り、当該画像信号(アナログ)を生成する処理を行う。生成された画像は画像処理部1に出力される。なお、画像読取部20において生成される画像は、R(赤)、G(緑)、B(青)の3色に分解されたカラー画像である。
【0036】
操作部30は操作キーを備え、この操作キーやタッチパネル40等の操作に応じた操作信号を生成して制御部2に出力する。
表示部50はタッチパネル40と一体に構成されるディスプレイを備え、制御部2の表示制御に従って、画像形成条件の設定画面等の各種操作画面を表示する。
【0037】
プリンタ部60は、画像処理部1から入力される画像のデータに基づいて用紙上に画像をプリントする。プリンタ部60のプリント方式は何れのものであってもよいが、ここでは電子写真方式の場合を例に説明する。電子写真方式の場合、プリンタ部60はY(黄)、M(マジェンタ)、C(シアン)、K(黒)の色毎に露光及び現像を行うユニットを備えている他、中間ベルト、給紙部、定着部等を備えている。各色のユニットでは、レーザ光源から感光ドラムにレーザ光を照射して露光を行い、静電潜像を形成する。その後、感光ドラム上の静電潜像をトナーで現像してトナー像を形成し、これを中間ベルト上に転写する。この露光、現像、転写の工程を、中間ベルトの回動に合わせて各色のユニットが順次繰り返すことにより、中間ベルト上に各色のトナー像を重ね合わせたカラー画像を形成する。最後に、カラー画像を給紙部から搬送された用紙に転写し、定着部により定着処理を施す。
【0038】
次に、本体部10の各部について説明する。
制御部2は、CPU(Central Processing Unit)、RAM(Random Access Memory)等から構成されている。制御部2は、記憶部3に記憶されている制御プログラムとの協働により各種演算を行うとともに、各部の動作を制御する。例えば、一連のプリントの過程において各部への画像のデータの入出力を制御したり、操作画面の表示制御等を行う。
【0039】
記憶部3は、制御部2や画像処理部1で用いられるプログラムやパラメータ等を記憶している。記憶部3は例えばハードディスク等を適用できる。
【0040】
画像制御部4は、画像メモリ5への画像の保存、読み出しを制御する。
画像メモリ5は画像保存用のメモリであり、ハードディスク等の大容量メモリから構成されている。
【0041】
画像処理部1は、画像に対し各種画像処理を施す。
図2は、画像処理部1の主な機能部分を示す図である。画像処理部1は、図2に示すように前処理部11、色変換部12、圧縮処理部13、伸張処理部14,γ補正部15、スクリーン処理部16等を備えて構成されている。
【0042】
前処理部11は、R、G、Bの各画像(アナログ信号)のA/D変換処理を行って画像のデジタルデータを生成したり、シェーディング補正処理を施して画像読取部20により生じる輝度ムラを補正する。また、前処理部11は、画像読取部2のスキャナ特有の輝度特性を人の視覚特性に応じた最適な輝度特性に変換するI−I′変換処理、MTF(Modulation Transfer Function)フィルタを用いた鮮鋭化処理等を施す。
【0043】
色変換部12は、R、G、Bの各画像に対して色補正を施した後、色変換を行ってR、G、Bのカラー画像からC、M、Y、Kのカラー画像を生成する。生成したC、M、Y、Kのカラー画像は圧縮処理部13に出力される。
【0044】
圧縮処理部13は、C、M、Y、Kのカラー画像に対し、BTC方式による圧縮処理を施す。
まず、図3を参照してカラー画像を圧縮する場合の原理について説明する。
圧縮処理は一定領域単位で行う。この一定領域とは、画像の主走査方向及び副走査方向の2次元に並ぶ複数の画素からなる領域をいい、例えば図3Aに示すように8画素×8画素の小領域である。
【0045】
図3Aに示す元画像G1は1画素がC、M、Y、Kの4色の色値を有するカラー画像である。各色の色値は8bitのデータであり、0〜255の階調表現が可能である。元画像G1は8画素×8画素の64画素からなるので、元画像G1は4色×8bit×64画素=2048bitのデータ量となる。
【0046】
圧縮処理部13では、この元画像G1を4色の代表色で表すことにより圧縮を行う。すなわち、元画像G1の各画素を4つのグループに分けて、各グループの代表色となる色値を求める。図3Bの注釈G3は、元画像G1の各画素を、色の特徴が類似する4つのグループに分け、各グループから求めた4つの代表色の色値(C、M、Y、K)を示している。圧縮処理部13は、各代表色に代表色を示す2bitの符号00、01、10、11を割り当て、元画像G1の各画素の色値を各画素が属するグループの代表色を示す符号に置き換えて符号化する。図3Bは、各画素を代表色とその符号により示した圧縮画像G2の図である。
【0047】
圧縮画像G2は、各画素の符号と、符号に対応する代表色の色値(C、M、Y、K)とからなる。伸張する際は各符号に対応する代表色の色値(C、M、Y、K)を出力すればよい。代表色の色値は1色8bitのデータであるので、圧縮画像G2は符号2bit×64画素+8bit×4色×4代表色数=256bitとなる。結果として、256bit/2048bit=12.5倍の圧縮率となる。
【0048】
圧縮及び伸張による画質劣化を防ぐためには、グループ分けをどのように行うか、つまり代表色をどのように選択するかが重要となる。できるだけ色の特徴が類似する画素同士を同じグループにまとめれば、各画素の色値がその画素が属するグループの代表色の色値に近い値となるので、圧縮前の色値と伸張後の色値との誤差が小さくなるからである。本実施形態に係る圧縮処理は、代表色の選択を、簡易な構成でかつ画質劣化が少なくなるように行うものである。
【0049】
図4を参照して、本実施形態に係る圧縮処理について説明する。なお、図4に示す圧縮処理は、記憶部3に記憶されている圧縮処理用のプログラムと、圧縮処理部13との協働により実現されるソフトウェア処理であるが、この処理の処理ステップを回路化し圧縮処理をハードウェアによって実現することとしてもよい。
【0050】
以下の圧縮処理では、代表色の数を4とし、2bitの符号を割り当てる例を説明する。
図4に示すように、n画素×n画素の一定領域毎に画像を入力する(ステップS1)。ここでは、n=8の例を説明する。圧縮処理部13は領域内の各画素の色値(C、M、Y、K)を用いて、各画素について色の特徴を示す一又は複数の評価値を算出する(ステップS2)。評価値は各画素の色の特徴の類似度合いを評価するために用いるものである。色の特徴とは、明度、色相、彩度等、色の表現に必要な要素をいう。
【0051】
ここでは、評価値としてL(明度)、r_g(赤緑度)、b(青度)の3つの評価値を算出する例を説明する。
まず、色値(C、M、Y、K)を、下記式1〜3によりRGB空間の色値(r、g、b)に変換する。この変換は逆UCR(Under Color Removal)変換に相当する。
r=(255−C)×(255+30−K)/256…(1)
g=(255−M)×(255+30−K)/256…(2)
b=(255−Y)×(255+30−K)/256…(3)
【0052】
次に、求めた色値(r、g、b)を、下記式4〜6によりL、r_g、bに変換する。
L=(r+g)/2…(4)
r_g=(r+255+30−g)/2…(5)
b=b…(6)
【0053】
このようにして、64の各画素につき評価値L、r_g、bを算出すると、3つの評価値のうちL、r_gの2つを要素とする2次元空間において、各画素について算出した評価値L、r_gの値を元に各画素を示す点をプロットする。これにより、L、r_g空間における各画素の分布領域を形成する(ステップS3)。なお、評価値bを除外したのは、後述する分割の操作をより容易にかつ迅速に行うためである。評価値は代表色の選択を左右するが、評価値bは人の視覚感度が低いことから、これを除外しても代表色の選択の精度に大きな影響はないと考えられる。
【0054】
次いで、形成した分布領域で評価値L、r_gのレンジをそれぞれ算出する(ステップS4)。レンジとは、各画素について算出された評価値L、r_gの最大値と最小値間の区間をいう。次いで、他の評価値のレンジに比して突出して大きいレンジの評価値の有無を判断するため、算出した評価値Lのレンジと、評価値r_gのレンジの2倍とを比較する(ステップS5)。なお、ここでは一方のレンジRrgを2倍したものを閾値として、レンジRLがレンジRrgより突出して大きいかどうかを判断しているが、突出して大きいかどうかを判断できるのであれば一方のレンジを1.5倍したものを閾値とする等、その係数を変えても良いし、別の閾値を採用してもよい。
【0055】
図5Aに示すように、評価値r_gのレンジRrgを2倍しても評価値LのレンジRLの方が大きい場合(ステップS5;Y)、レンジRLは突出して大きいと判断し、図5Bに示すようにレンジRLを均等に4分割し、分割した各区間に属する画素毎にグループ化する(ステップS6)。なお、分割数を4としているのは代表色数4に一致させているのであり、少なくとも代表色の数だけ分割できるのであれば、分割数は4以上であってもよい。
【0056】
具体的には、図5Bに示すように評価値LのレンジRLを4等分する3つの閾値THL1〜THL3を求め、この3つの閾値THL1〜THL3とLの最大値LMax、最小値Lminを元に、Lmin≦L<THL1、THL1≦L<THL2、THL2≦L<THL3、THL3≦L≦LMaxの4つの区間に分割する。そして、分割した各区間の何れに属するかによって各画素をグループ化し、4つのグループを形成する。
【0057】
一方、評価値LのレンジRLは、評価値r_gのレンジRrgの2倍よりも小さい場合(ステップS5;N)、逆に評価値LのレンジRLを2倍したものと、評価値r_gのレンジRrgとを比較する(ステップS7)。図6Aに示すように、評価値LのレンジRLを2倍しても、評価値r_gのレンジRrgの方が大きい場合(ステップS7;Y)、レンジRrgは突出して大きいと判断し、図6Bに示すようにレンジRrgを均等に4分割し、分割した各区間に属する画素毎にグループ化する(ステップS8)。
【0058】
分割方法はステップS6で説明した方法と同様である。つまり、図6Bに示すように評価値r_gのレンジRrgを4等分する3つの閾値THrg1〜THrg3と、r_gの最大値rgMax、最小値rgminとから、rgmin≦r_g<THrg1、THrg1≦r_g<THrg2、THrg2≦r_g<THrg3、THrg3≦r_g≦rgMaxの4つの区間に分割する。そして、分割した各区間の何れに属するかによって各画素をグループ化し、4つのグループを形成する。
【0059】
評価値LのレンジRLがレンジr_gの2倍より小さく、レンジr_gもレンジRLの2倍より小さい場合(ステップS7;N)、つまりレンジRL、Rrgの何れも他の評価値に比して突出して大きいものではないと判断した場合、図7Aに示すようにレンジRL、Rrgの差が小さい分布領域を形成していると考えられる。よって、この場合は合計分割数が4となるように、レンジRLを均等に2分割、さらにレンジRrgを均等に2分割し、分割した各区間に属する画素毎にグループ化する(ステップS9)。
【0060】
具体的には、レンジRL、Rrgを2等分する閾値THL、THrgをそれぞれ算出する。そして、rgmin≦r_g<THrgかつTHL≦L≦LMax、THrg≦r_g≦rgMaxかつTHL≦L≦LMax、THrg≦r_g≦rgMaxかつLmin≦L<THL、rgmin≦r_g<THrgかつLmin≦L<THLの4つの区間の何れに属するかによって各画素をグループ化し、4つのグループを形成する。
【0061】
このようにして、64画素を4つにグループ分けすると、各グループからそれぞれ代表色0、1、2、3の色値(C、M、Y、K)を求める。代表色0〜3は、各グループに属する画素の色値(C、M、Y、K)の平均値とする。或いは、平均値に近い色値を持つ画素を求め、この画素の色値を代表色の色値として採用してもよい。
【0062】
次いで、圧縮処理部13は64画素の符号化を行う(ステップS11)。代表色と符号の関係は、代表色0を示す符号を00、代表色1を示す符号を01、代表色2を示す符号を10、代表色3を示す符号を11とする。圧縮処理部13は、64の各画素がどの区間に属するかによって所属すべきグループを判断し、各画素の色値(C、M、Y、K)を、各画素が属するグループの代表色0〜3を示す符号に置き換える。
【0063】
圧縮処理部13は、上述の処理を8画素×8画素の領域毎に繰り返し行い、領域毎に符号と各代表色0〜3の色値(C、M、Y、K)とを算出する。圧縮処理部13は、この領域毎に求められた符号(2bit)と代表色0〜3の色値(C、M、Y、K)(8bit)を圧縮画像として出力する。圧縮画像は、画像制御部4を介して画像メモリ5に出力され、画像メモリ5において保存される。
【0064】
伸張処理部14は、画像制御部4を介して画像メモリ5に保存されている圧縮画像が入力されると、当該圧縮画像に伸張処理を施す。
以下、伸張処理について説明する。
なお、伸張処理についても圧縮処理と同じ処理単位である8画素×8画素の領域毎に伸張処理を施すので、圧縮画像は圧縮処理がなされた8画素×8画素の領域毎に伸張処理部14に入力される。
【0065】
上記のように、圧縮画像は64画素についての符号と、4つの代表色0〜3の色値(C、M、Y、K)とからなる。伸張処理部14は、各画素の符号に対応する代表色0〜3の色値(C、M、Y、K)を、その画素の色値(C、M、Y、K)として出力することにより、復号化を行う。このように伸張された画像は、γ補正部15に出力される。
【0066】
γ補正部15は、伸張処理部14から入力された画像に対し、LUTを用いて画像の階調を補正する補正処理を行う。この階調補正は、画像の階調を人の視覚特性に応じたものとするための処理であり、LUTもその階調補正用に予め備えられているものである。
【0067】
スクリーン処理部16は、中間調を再現するため、γ補正部15から入力された画像に対しディザ法や誤差拡散法等による中間調処理を施す。中間調処理が施された画像は、プリンタ部60に出力される。
【0068】
以上のように、本実施形態によれば、圧縮処理部13は、カラー画像の各画素の色値(C、M、Y、K)を用いて複数の評価値L、r_gを算出し、算出した評価値のレンジを代表色の数4に分割し、分割した各区間に該当する画素毎にグループ分けする。また、圧縮処理部13は4つの各グループに属する画素の色値(C、M、Y、K)からグループの代表色0〜3の色値(C、M、Y、K)を算出し、各画素の色値(C、M、Y、K)をその画素が属するグループの代表色0〜3を示す符号に置き換えて符号化する。圧縮処理部13はこの符号と代表色0〜3の色値(C、M、Y、K)とを圧縮画像として出力する。伸張時には、伸張処理部14は圧縮画像の符号を、その符号に対応する代表色0〜3の色値(C、M、Y、K)に代えて出力する。
【0069】
このように、予め分割数を代表色の数に定めてレンジを分割するので、代表色の数に達するまで2分割を繰り返すといったループ処理は不要となる。ループ処理のための回路構成は不要となり、回路の拡張を回避することができる。よって、圧縮処理をハードウェアにより実現する場合も簡易な構成で圧縮を行うことができる。
【0070】
また、上記圧縮処理は一定領域毎に行うので、代表色0〜3の選択を小領域毎に行うことができ、圧縮及び伸張による誤差を小さくして画質劣化の低減を図ることができる。
【0071】
また、評価値Lとr_gについて一方のレンジと他方のレンジを2倍したものと比較することにより、他の評価値に比して突出してレンジが大きい評価値の有無を判断し、突出してレンジが大きい評価値についてはその評価値のレンジを代表色数分だけ分割する。突出してレンジが大きいということは、評価値のばらつきが大きいということであるため、当該評価値のレンジを分割することにより、できるだけ評価値つまり色の特徴が類似するもの同士を同じグループにグループ化することができる。これにより、圧縮及び伸張による画質劣化の低減を図ることができる。
【0072】
一方、特に突出してレンジが大きい評価値がない場合、評価値のばらつきが少ないといえる。このような場合には、合計分割数が代表色数の4となるように評価値LのレンジRLを2分割、評価値r_gのレンジRrgを2分割し、全ての評価値について分割を行う。これにより、上記の場合と同様にできるだけ色の特徴が類似するもの同士を同じグループにグループ化することができる。
【0073】
また、レンジの分割は分割した各区間が均等となるように行う。これにより、分割する閾値の演算が容易となり、圧縮のための時間を短縮することができる。また、複雑な演算のための回路構成も不要となる。
【0074】
なお、上述した実施形態は本発明の好適な一例であり、これに限定されない。
例えば、上記実施形態では、各画素の色値(C、M、Y、K)をL、g_r、bの表色系の色成分に分解し、そのうち2つの評価値L、g_rをグループ分けに用いたが、評価値は色の特徴を示すものであれば他の評価値を用いてもよいし、その数も特に限定されない。他の評価値としては色値(C、M、Y、K)をL*a*b*やXYZ、マンセル等の表色系の色成分に分解したときの色成分値が上げられる。
【0075】
一例として、3つの評価値L*、a*、b*を用いた場合の処理方法を説明する。
まず、L*、a*、b*の何れか1つの評価値のレンジが他の2つの評価値のレンジの2倍以上ならその1つの評価値のレンジを8分割し、グループ化する。また、何れか2つの評価値のレンジが他の1つの評価値のレンジの2倍以上なら、当該2つの評価値のレンジをそれぞれ4分割して合計8つにグループ分けする。その何れでもない場合には、各評価値のレンジをそれぞれ2分割して合計8つにグループ分けする。そして、各グループの代表色を求め、符号化する。このときの符号は3bitのデータである。
【0076】
また、レンジの分割数を代表色の数より多くし、分割した各区間のうちその区間に属する画素の頻度の多い順に代表色の数だけ区間を抽出して、抽出した各区間に属する画素毎にグループ化して代表色を求めることとしてもよい。
例えば、代表色の数が4である場合、図8に示すように代表色の数より多い6つにレンジを分割する。そして、分割した6つの区間にそれぞれ属する画素の頻度を求め、最大頻度の28から順に、頻度16、10、7の合計4つの区間を抽出する。抽出されなかった残り2つの区間(頻度が1と2の区間)を抽出した4つの区間のうち隣接する区間に併合する。例えば、頻度1の区間は頻度16の区間に併合し、頻度2の区間は頻度28の区間に併合する。そして、併合後の4つの区間に属する画素の色値からそれぞれ代表色0〜3を算出する。これにより、各画素の色の分布状態に応じた符号化が可能となり、圧縮及び伸張による画質劣化の一層の低減を図ることができる。
【0077】
また、上記実施形態では評価値L、r_gのレンジを均等に分割する閾値を求めて分割を行っていた。つまり、符号化時の区間が均等となるように閾値を決めていたが、図9に示すように復号時の区間が均等となるように閾値を決めることとしてもよい。具体的には、図9に示すようにレンジの最大値LMax、最小値Lmin、最大値と最小値Lmin間を3等分する値を求める。そして、これらの値の中央値を、評価値Lのレンジを分割する閾値THL1、THL2、THL3としてグループ分けを行う。この構成によれば、復号時の誤差が少なくすることができ、圧縮及び伸張による画質劣化の低減を図ることができる。
【0078】
また、上記実施形態では、CMYKの4色からなる画像を圧縮する例を説明したが、例えばKのみ等、1色のみからなる画像を同様の処理により圧縮することもできる。1色のみの場合、r_gの評価値についてはレンジが小さくなることが予想されるので、Lの評価値のみを用いることとしてもよい。
【0079】
また、本発明に係るプログラムのコンピュータ読み取り可能な媒体としては、ROM、フラッシュメモリ等の不揮発性メモリ、CD-ROM等の可搬型記録媒体を適用することが可能である。
また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
【図面の簡単な説明】
【0080】
【図1】本実施形態におけるMFPの機能的構成を示す図である。
【図2】図1の画像処理部の機能的構成を示す図である。
【図3A】元画像の一例を示す図である。
【図3B】図3Aの元画像の圧縮画像を示す模式図である。
【図4】圧縮処理部による処理の流れを示すフローチャートである。
【図5A】評価値Lのレンジが評価値r_gのレンジの2倍よりも大きい場合の各画素の分布領域例を示す図である。
【図5B】評価値Lに4分割する例を示す図である。
【図6A】評価値r_gのレンジが評価値Lのレンジの2倍よりも大きい場合の各画素の分布領域例を示す図である。
【図6B】評価値r_gのレンジを4分割する例を示す図である。
【図7A】評価値L、評価値r_gともにレンジが他の評価値の2倍よりも大きくない場合の各画素の分布領域例を示す図である。
【図7B】評価値Lのレンジを2分割、評価値r_gのレンジを2分割する例を示す図である。
【図8】分割数を代表色数より多くする他の実施例を示す図である。
【図9】復号時の復号区間が均等となるように分割する他の実施例を示す図である。
【符号の説明】
【0081】
100 MFP
1 画像処理部
12 色変換部
13 圧縮処理部
14 伸張処理部
2 制御部
3 記憶部
5 画像メモリ
【特許請求の範囲】
【請求項1】
カラー画像を所定数の代表色で表すことにより圧縮する圧縮処理部を備え、
前記圧縮処理部は、
カラー画像の各画素の色値から一又は複数の評価値を算出し、
算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けし、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出し、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する画像処理装置。
【請求項2】
前記圧縮処理部は、前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項1に記載の画像処理装置。
【請求項3】
前記カラー画像は複数の色からなり、
前記圧縮処理部は、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項1又は2に記載の画像処理装置。
【請求項4】
前記圧縮処理部は、複数の評価値を算出した場合、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が少なくとも代表色の数となるように全ての評価値のレンジについて分割を行う請求項1〜3の何れか一項に記載の画像処理装置。
【請求項5】
前記評価値は、色の特徴を示す値である請求項1〜4の何れか一項に記載の画像処理装置。
【請求項6】
前記圧縮処理部は、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置。
【請求項7】
前記圧縮処理部は、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置。
【請求項8】
前記圧縮処理部は、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項1〜7の何れか一項に記載の画像処理装置。
【請求項9】
請求項1〜8の何れか一項に記載の画像処理装置により符号化された圧縮画像を伸張する伸張処理部を備え、
前記伸張処理部は、圧縮画像の各画素の符号に対応する代表色の色値を出力する画像処理装置。
【請求項10】
カラー画像を所定数の代表色で表すことにより圧縮するにあたり、
カラー画像の各画素の色値から一又は複数の評価値を算出する工程と、
前記算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けする工程と、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出する工程と、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する工程と、
を含む画像処理方法。
【請求項11】
前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項10に記載の画像処理方法。
【請求項12】
前記カラー画像は複数の色からなり、
前記評価値を算出する工程では、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項10又は11に記載の画像処理方法。
【請求項13】
評価値を算出する工程において複数の評価値を算出した場合、
前記グループ分けする工程では、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が代表色の数となるように全ての評価値のレンジについて分割を行う請求項10〜12の何れか一項に記載の画像処理方法。
【請求項14】
前記評価値は、色の特徴を示す値である請求項10〜13の何れか一項に記載の画像処理方法。
【請求項15】
前記グループ分けする工程では、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法。
【請求項16】
前記グループ分けする工程では、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法。
【請求項17】
前記グループ分けする工程では、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項10〜16の何れか一項に記載の画像処理方法。
【請求項18】
請求項10〜17の何れか一項に記載の画像処理方法により符号化された圧縮画像の各画素の符号に対応する代表色の色値を出力し、圧縮画像を伸張する画像処理方法。
【請求項19】
コンピュータを、
請求項1〜9の何れか一項に記載の画像処理装置として機能させるためのプログラム。
【請求項1】
カラー画像を所定数の代表色で表すことにより圧縮する圧縮処理部を備え、
前記圧縮処理部は、
カラー画像の各画素の色値から一又は複数の評価値を算出し、
算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けし、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出し、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する画像処理装置。
【請求項2】
前記圧縮処理部は、前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項1に記載の画像処理装置。
【請求項3】
前記カラー画像は複数の色からなり、
前記圧縮処理部は、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項1又は2に記載の画像処理装置。
【請求項4】
前記圧縮処理部は、複数の評価値を算出した場合、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が少なくとも代表色の数となるように全ての評価値のレンジについて分割を行う請求項1〜3の何れか一項に記載の画像処理装置。
【請求項5】
前記評価値は、色の特徴を示す値である請求項1〜4の何れか一項に記載の画像処理装置。
【請求項6】
前記圧縮処理部は、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置。
【請求項7】
前記圧縮処理部は、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項1〜5の何れか一項に記載の画像処理装置。
【請求項8】
前記圧縮処理部は、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項1〜7の何れか一項に記載の画像処理装置。
【請求項9】
請求項1〜8の何れか一項に記載の画像処理装置により符号化された圧縮画像を伸張する伸張処理部を備え、
前記伸張処理部は、圧縮画像の各画素の符号に対応する代表色の色値を出力する画像処理装置。
【請求項10】
カラー画像を所定数の代表色で表すことにより圧縮するにあたり、
カラー画像の各画素の色値から一又は複数の評価値を算出する工程と、
前記算出した評価値のレンジを少なくとも代表色の数に分割し、分割した各区間に該当する画素毎にグループ分けする工程と、
各グループに属する画素の色値に基づいてグループの代表色の色値を算出する工程と、
各画素の色値をその画素が属するグループの代表色を示す符号に符号化し、当該符号と前記代表値の色値とを圧縮画像として出力する工程と、
を含む画像処理方法。
【請求項11】
前記圧縮をカラー画像の主走査方向及び副走査方向の2次元状に並ぶ複数の画素単位で行う請求項10に記載の画像処理方法。
【請求項12】
前記カラー画像は複数の色からなり、
前記評価値を算出する工程では、各画素が持つ複数色の色値を用いて前記評価値を算出する請求項10又は11に記載の画像処理方法。
【請求項13】
評価値を算出する工程において複数の評価値を算出した場合、
前記グループ分けする工程では、当該複数の評価値のうち、他の評価値に比してレンジが突出して大きい評価値の有無を、閾値を用いて判断し、当該評価値が有る場合には当該評価値について代表色数分の分割を行い、当該評価値が無い場合には合計分割数が代表色の数となるように全ての評価値のレンジについて分割を行う請求項10〜12の何れか一項に記載の画像処理方法。
【請求項14】
前記評価値は、色の特徴を示す値である請求項10〜13の何れか一項に記載の画像処理方法。
【請求項15】
前記グループ分けする工程では、分割した各区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法。
【請求項16】
前記グループ分けする工程では、前記符号を復号化する際の復号区間が均等となるように、前記評価値のレンジを分割する請求項10〜14の何れか一項に記載の画像処理方法。
【請求項17】
前記グループ分けする工程では、前記評価値のレンジの分割数を、代表色の数より多くし、分割した各区間に該当する画素の頻度が多い順に代表色の色数だけ区間を抽出し、当該抽出した区間に該当する画素毎にグループ分けする請求項10〜16の何れか一項に記載の画像処理方法。
【請求項18】
請求項10〜17の何れか一項に記載の画像処理方法により符号化された圧縮画像の各画素の符号に対応する代表色の色値を出力し、圧縮画像を伸張する画像処理方法。
【請求項19】
コンピュータを、
請求項1〜9の何れか一項に記載の画像処理装置として機能させるためのプログラム。
【図1】
【図2】
【図3A】
【図3B】
【図4】
【図5A】
【図5B】
【図6A】
【図6B】
【図7A】
【図7B】
【図8】
【図9】
【図2】
【図3A】
【図3B】
【図4】
【図5A】
【図5B】
【図6A】
【図6B】
【図7A】
【図7B】
【図8】
【図9】
【公開番号】特開2009−212916(P2009−212916A)
【公開日】平成21年9月17日(2009.9.17)
【国際特許分類】
【出願番号】特願2008−54864(P2008−54864)
【出願日】平成20年3月5日(2008.3.5)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
【公開日】平成21年9月17日(2009.9.17)
【国際特許分類】
【出願日】平成20年3月5日(2008.3.5)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
[ Back to top ]