画像処理装置及び画像処理方法
【課題】 代表色が過度に分割されているかどうかを簡易に判定する。
【解決手段】 色相環において設定した複数の領域と輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定め、入力画像から各配列要素の頻度分布を作成する。当該作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する。そして、当該選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する。そして、入力画像の各画素の画素値を、選定された代表色に置き換える。
【解決手段】 色相環において設定した複数の領域と輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定め、入力画像から各配列要素の頻度分布を作成する。当該作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する。そして、当該選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する。そして、入力画像の各画素の画素値を、選定された代表色に置き換える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、入力画像の代表色を選定して減色処理を行う画像処理装置及び画像処理方法に関するものである。
【背景技術】
【0002】
近年、情報の電子化が進み、紙文書を保存するのではなく、紙文書をスキャナ等で読み込み、電子データとして保存し、その電子データを他装置に送信するシステムが普及している。また、紙文書そのものに使われる色も白黒の2値からカラー化(多値化)が進んでいる。
【0003】
電子データとして保存される電子文書には、可読性向上や高圧縮性を実現させるために文字部は鮮明な色が、背景は均一な色が求められている。しかし、実際に紙文書を電子化する際には、各種のノイズやにじみ、むらなどが発生する。特に、スクリーン等を使用したハーフトーンで構成されたカラー文書では、スクリーンの構成要素(網点と称す)そのものの色に起因したにじみ、むらなどが発生し、可読性や画質に影響を及ぼす。
【0004】
このため、文書の電子化処理において、画像中から代表色を選定し減色する減色処理を行うのが一般的である。
【0005】
スキャン画像の減色処理は、一般的にスキャナや複合機などの機器に組み込み、リアルタイムで稼働させることが想定される。よって、減色処理には高精度もさることながら、高速化と省メモリ化が求められる。
【0006】
特許文献1では、入力画像を規定のサイズのタイルに分割し、タイルの中で一番初めに発見された所定閾値以上の彩度を有する画素の色相値によって色相と彩度で構成される色空間を分割したヒストグラムを生成する。そして、このヒストグラムからタイルの代表色を選定し、タイルの中の画素の色情報を代表色に置換して減色処理する技術が開示されている。
【0007】
特許文献2では、入力画像を、RGB色空間上でRGBそれぞれ規定の階調に落としたインデックスカラー画像を生成する。そして、インデックスカラー画像の色情報(インデックスカラー画像に含まれる色の平均値)をインデックスカラー画像に加算した画素数順に順次比較し、一定の閾値より差が小さければ、インデックスカラー画像を統合して減色処理する技術が公開されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2010−268438号公報
【特許文献2】特開2003−309727号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、特許文献1では、色相の分割の基準はタイルの中で一番初めに発見された所定閾値以上の彩度を有する画素に依存する。このため、タイル分割の位置によっては図5に示す(B)のように、本来区分したい色相の範囲で分割されず、同一色にしたい色分布が過度に分割される場合があり、高画質なタイル画像が得られなかった。
【0010】
一方、特許文献2では、類似した色を統合する際に、RGBの3つの色成分を使って各色の色距離を計算している。特許文献2に開示される減色処理は計算コストが大きくなる問題があった。
【0011】
本発明は、特許文献1のように画像を色相と彩度で構成される色空間を分割して代表色を選定する装置において、同一色にすべき色が過度に分割されないようにする処理を簡易に行う装置及び方法を提供する。
【課題を解決するための手段】
【0012】
本発明の画像処理装置は、彩度と色相とによって構成される色相環を所定の基準に基づいて分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定める色空間分割手段と、
第1の画像データに含まれる画素を対象として、前記色空間分割手段で決定された各配列要素に属する画素数を計数することにより頻度分布を作成するとともに、各配列要素に属する画素の色情報の平均値を当該配列要素ごとの色情報として求める頻度分布作成手段と、
前記頻度分布作成手段で作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する候補色選定手段と、
前記候補色選定手段で選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する代表色選定手段と、
前記第1の画像データに含まれる画素の各画素値を、前記選定された代表色を用いて置換する置換手段と、
を有することを特徴とする。
【発明の効果】
【0013】
本発明によれば、代表色が過度に分割されているかどうか簡易に判定することで、減色処理の負荷を軽減できる。
【図面の簡単な説明】
【0014】
【図1】第1の実施形態による画像処理システムの全体構成を示すブロック図。
【図2】画像処理装置100の機能構成を示すブロック図。
【図3】(A)は入力画像の一例を示す図、(B)は複数のタイル画像を示す図。
【図4】HSV色空間を説明するための図。
【図5】(A)〜(C)は色相環を示す図、(D)〜(F)はヒストグラムを示す図。
【図6】(A)は頻度分布を示す図、(B)は頻度分布のデータ構造を示す図。
【図7】代表色を選定する処理を示すフローチャート。
【図8】候補色選定処理(S701)の詳細を示すフローチャート。
【図9】色相範囲の位置関係を表す用語を説明するための図。
【図10】過分割BINか否かを判定するBINの位置関係を示す図。
【図11】過分割判定の詳細な処理を示すフローチャート。
【図12】径方向過分割判定処理(S1102)の詳細を示すフローチャート。
【図13】色相に差がある場合の処理を説明するための図。
【図14】周方向過分割判定処理(S1104)の詳細を示すフローチャート。
【発明を実施するための形態】
【0015】
以下、図面を参照しながら発明を実施するための形態について詳細に説明する。尚、以下の実施形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【0016】
[第1の実施形態]
まず、第1の実施形態として、本発明に係る画像処理装置と、パーソナルコンピュータ(PC)とがネットワークを介して相互に接続される画像処理システムを例に挙げて説明する。
【0017】
<システム構成>
図1は、第1の実施形態による画像処理システムの全体構成を示すブロック図である。画像処理装置100は、原稿画像を読み取り、画像データを生成するスキャナ101及び外部装置とデータの入出力を行うためのネットワークI/F105を備えている。一方、PC120は、画像処理装置100とLAN110などのネットワークで接続され、画像処理装置100から送信されたデータを受信する。
【0018】
画像処理装置100は、スキャナ101により読み取った画像データ又はネットワークI/F105を介して外部装置から取得した画像データに画像処理を施すための処理プログラムを実行するCPU102を有する。更に、画像処理装置100は、処理プログラムを実行する際のワークメモリやデータの一時的な保存等に利用されるメモリ103、及びプログラムやデータを格納するハードディスク104を備えている。
【0019】
図2は、画像処理装置100の機能構成を示すブロック図である。尚、以下で説明する処理部は、CPU102が各種の処理プログラムを実行することによって実現されることを想定するが、その一部又は全部を電気回路(ASIC等)で構成するようにしてもよい。
【0020】
図2において、画像入力部201は、スキャナ101により読み取った画像データ又はネットワークI/F105を介して外部装置から取得した画像データを入力する。ここでは、入力される画像データは、RGBの色空間で表現され、解像度が600dpiとして生成されたカラー画像であるとして説明する。尚、画素値としては、24ビット(各色8ビット)で表現され、各色0〜255の値をとり得る。
【0021】
図3に示す(A)は、画像入力部201から入力された入力画像の一例を示す図である。入力画像300の色情報は、背景領域301、文字領域302、画像領域304でそれぞれ異なり、領域303は背景領域301と文字領域302との境界で発生したにじみとする。ここで、背景領域301は有彩色青系、文字領域302は有彩色黄色系、画像領域304は有彩色赤系で色は網点で表現している。尚、にじみは、原稿に元々存在するもの(印刷時に生じたもの)に由来するか、スキャナ101による原稿画像の読み取り時に生じるものである。
【0022】
ここで図2に戻り、タイル分割部202は、画像入力部201が入力した画像データを予め定められたサイズの複数のタイル画像(第1の画像データ)に分割する。タイル状に分割して順に処理していくことで、処理時に必要となるメモリ量を少なくすることができる。図3に示す(B)は、分割された複数のタイル画像305〜313を示す図であり、この例では、入力画像300を、32画素四方を1単位として9分割したものである。尚、以下の処理は、タイル単位に分割した分割タイル画像203に対して実行する。
【0023】
ここで図2に戻り、ヒストグラム生成部204は、色空間分割部205、頻度分布生成部206で構成される。色空間分割部205で用いられる色空間は、HSV色空間のため、色空間分割部205にはRGB色空間からHSV色空間への変換処理が含まれる。尚、ヒストグラム生成部204の詳細については更に後述する。
【0024】
一色多色判定部207は、タイル画像が背景のみ(1色)か、前景があるのか(多色)を判定する。ここではヒストグラムの分散(画素が加算されたBINの数、BINが存在する色相範囲の数及び輝度レベルの数)を参照し、分散が所定の値より大きい場合は多色、そうでない場合は1色とする。ここで、BINは、度数分布を表現するヒストグラムにおける配列要素である。
【0025】
代表色選定部208は、ヒストグラム生成部204が生成したヒストグラムからタイル画像内の代表色の色(代表色情報213)を決定する。この代表色選定部208は、代表色候補選定部209及び過分割BIN判定部210を有する。尚、代表色選定部208の詳細は更に後述する。
【0026】
色置換部214は、分割タイル画像203の画素単位の色と代表色選定部208で決定された代表色情報213との色間の距離を求め、入力画像に最も距離が近い代表色に色を置き換える量子化処理を行う。この結果、タイル単位に減色処理が行われた量子化タイル215が生成される。
【0027】
この例では、色置換部214は、注目画素と代表色のRGB空間のユークリッド距離を計算しているが、色空間、距離算出方法はこれに限られるものではない。
【0028】
次に、本発明に係る画像処理装置のヒストグラム生成部204、代表色選定部208について詳細に説明する。まず、ヒストグラム生成部204の色空間分割部205における色空間分割処理を説明する。
【0029】
<色空間分割>
色空間分割部205は、頻度分布生成部206の頻度分布情報を生成するために用いる複数のBINを決定する。
【0030】
まず、各画素に対応するRGB画素値から、HSV色空間の色相(H)と彩度(S)の値、及びYUV色空間の輝度(Y)の値を導出する。HSV色空間は、図4に示すような色相(Hue)、彩度(Saturation)、明度(Value)により構成される円錐として示される。ここで、半径方向が彩度であり、円錐の中心線からの距離に対応する0〜1の値により表される。円の中心(S=0)では無彩色であり、遠い方(1に近い値)がより鮮やかな有彩色になる。また、色相は円周方向(円の角度方向)に対応しており、0〜360度の値により色相を表現する。例えば、0度は赤系の色、50度は黄系の色、120度は緑系の色、200度は青系の色に対応する。明度Vは色の明るさを示し、0〜100(%)の値で示され、値が大きくなるにつれ明るくなる。尚、0%は黒色、100%は白色に対応している。
【0031】
RGB画素値(R,G,B)の値の最大値をMAXとし、最小値をMINとしたとき、HSV画素値(H,S,V)の各値は以下のように算出される。
【0032】
H=60×(G−B)/(MAX−MIN)+0 if MAX=R
H=60×(B−R)/(MAX−MIN)+120 if MAX=G
H=60×(R−G)/(MAX−MIN)+240 if MAX=B
S=(MAX−MIN)
V=MAX
ここで、RGBの各値は、0〜255の範囲で表されるものとする。尚、HSV色空間の明度Vよりも、YUV色空間の輝度Yの方がより人間の目で見た場合の明るさの感覚に近い。このため、第1の実施形態においては、明度Vの替わりにYUV色空間の輝度Yを用いる。
【0033】
すなわち、第1の実施形態では、HSV色空間の色相及び彩度と、YUV色空間の輝度とを用いるものとする。以下では、HSV色空間の色相及び彩度、YUV色空間の輝度により表される色空間をY/HS色空間と呼ぶ。尚、輝度Yの値は、RGB画素値(R,G,B)から以下のように算出される。
【0034】
Y=0.29891×R+0.58661×G+0.11448×B
上記の数式により、RGB画素値から、H,S,Yの値が算出できる。
【0035】
次に、色相及び彩度における閾値と、輝度における閾値とを設定することにより色空間を分割する。輝度方向については、一次元の線形であるため、輝度値を所定の輝度閾値に基づいて分割するとよい。以下では、輝度レベルを16段階に設定した場合を例に挙げて説明する。このとき、各輝度値間の15個(所定のP個)の輝度閾値に基づいて、16個(P+1個)の領域(Y0〜Y15)に分割される。
【0036】
図4に示す下段は、色相と彩度とにより表現される色相環401を複数の領域402〜406に分割する例を示す図である。まず、色相環401を無彩色領域(低彩度領域)と有彩色領域(高彩度領域)に分ける。上述のように、彩度は、色相環における半径方向の距離で表現でき、色相環の原点に近いほど白、灰色、黒などの無彩色に近づき、逆に原点から離れるほど鮮やかな有彩色となる。そこで、所定の彩度閾値S’(所定閾値)を設定し、彩度が当該彩度閾値S’より小さい範囲を、無彩色の領域402(H0)とする。
【0037】
次に、有彩色領域の分割について説明する。色相は、色相環における位相で表現されるため、色相環上を設定した角度で分割し、有彩色領域を区分する。第1の実施形態では、色空間を4等分、すなわち、90度間隔で区分色相値を設定し、有彩色領域403〜406をH1〜H4まで設定する。
【0038】
色相分割に際しての基準となるH1の区分色相値は、タイル画像に含まれる画素を順に走査し、最初に発見された彩度閾値S’以上の彩度を有する画素の色相値に±45度加算したものとする。以下、具体例を挙げて説明する。
【0039】
図5に示す(A)は、図3に示すタイル画像308の色相環である。まず、色相環上のH1の区分色相値は、タイル画像308を順に走査していき、彩度閾値S’以上を有する画素を発見すると、当該最初に発見した画素(基準画素)の画素値501を中心に±45度で色相環の分割位置を決定する。そして、90度間隔で区分色相値を設定することで、有彩色領域H1〜H4に分割する。色分布502、503は、タイル画像308をすべて走査した後の、画素値の分布を示し、色分布502は背景領域301の色分布、色分布503は文字領域303の色分布となる。
【0040】
図5に示す(B)は、図3に示すタイル画像306の色相環である。まず、色相環上のH1の区分色相値は、タイル画像306を順に走査し、最初に発見された彩度閾値S’以上の画素値504を中心に±45度で決定される。そして、更に90度間隔で区分色相値を設定することで、有彩色領域H1〜H4が分割される。色分布505、506は、タイル画像306をすべて走査した後の、画素値の分布を示し、色分布505は文字領域302の色分布、色分布506は背景領域301の色分布となる。
【0041】
図5に示す(C)は、図3に示すタイル画像311の色相環である。まず、色相環上のH1の区分色相値は、タイル画像311を順に走査し、最初に発見された彩度閾値S’以上の画素値507を中心に±45度で決定される。そして、更に90度間隔で区分色相値を設定することで、有彩色領域H1〜H4が分割される。色分布508、509、510は、タイル画像311をすべて走査した後の、画素値の分布を示し、色分布508は背景領域301、色分布509は画像領域304、色分布510は文字領域303の色分布となる。
【0042】
尚、以下の説明では、色相と彩度とにより表現される色相環401を分割したときの各領域(無彩色領域H0と、分割された有彩色領域H1〜H4)とをまとめて、色相範囲と呼ぶこととする。
【0043】
<頻度分布情報の生成>
頻度分布生成部206は、まず色空間分割部205で輝度方向に分割した輝度レベルY(Y0〜Y15)と、色相と彩度で表される色相環を分割して求めた色相範囲H(H0〜H4)とで構成される二次元配列を作る。この二次元配列それぞれの配列要素(BIN)に含まれるタイル画像内の画素の出現回数を計数(カウント)する。
【0044】
図6に示す(A)は、頻度分布の配列を示す図である。この(A)の頻度分布の各BINには、各BINに対応する輝度レベル及び色相範囲の色情報を持つタイル画像の画素出現数と、カウントされた画素に対応する色情報(色相、彩度、RGB)の平均値とを格納する。図中、左側に、配列宣言601の一例を示す。
【0045】
図6に示す(B)は、頻度分布のデータ構造を示す図である。頻度分布はBINの配列と色空間分割で定義した有彩色領域の区分の色相値を保持する。頻度分布作成では、画素の色情報がどのBINに当てはまるか否かを判定し、該当するBINの画素出現数を加算(インクリメント)する。これと同時にBINの色情報に、画素の色情報をそれぞれ加算する。
【0046】
すべてのタイル画像の画素を判定した後、各BINの色情報を画素出現数で除算する。すなわち、BINに加算された画素の色情報の平均値を算出し、この値を当該BINの色情報として確定する。
【0047】
図5に示す(D)〜(F)は、色相範囲及び輝度レベルによって定義された各BINの頻度分布の例を示す図である。第1の実施形態で作成される頻度分布は、1つのタイル画像につき、5つの色相範囲の輝度ヒストグラムを作るのと等しい。また、入力画像の色は網点で表現されているため、本来人の目で見えているのは1色であっても、網点構成点の影響で画素単位の色情報にばらつきがある。このため、ヒストグラムでは複数の輝度レベルのBINに画素が加算されるのが一般的である。
【0048】
<代表色の決定>
代表色選定部208は、頻度分布生成部206で生成された情報に基づき代表色を決定する。もし、一色多色判定部207で1色、すなわち前景が存在しないと判定された場合、タイル画像の代表色はそのタイル画像の画素の色情報の平均値とすればよい。ここでは、一色多色判定で、多色、すなわち前景が存在する場合の代表色決定について詳細を説明する。
【0049】
タイル画像中の出現頻度が多い色が、当該タイル画像の中で重要な色(代表色)であるとみなせる。しかし、実際には頻度が低くても重要な色も存在する。例えば、文字領域の色は代表色として抽出すべきだが、タイル分割によって文字領域が断片化され、タイル中に占める文字領域の画素数が極端に低くなるケースも多く発生する。
【0050】
しかし、印刷物は人の目に見やすいように前景と背景の輝度に差をつけてデザインする場合が殆どである。つまり、頻度の大きいBINと比べて輝度レベルに差があるBINは代表色とみなせる。これは、領域が細分化されたために、代表色となるべきBINの画素頻度が大きくなくても、出現する特徴である。
【0051】
また、隣接する領域同士の色相値に差があれば、人の目に見えやすいデザインとなる。この事例に基づき、重要な色は、タイル画像において互いに異なる色相範囲に出現すると考えられる。
【0052】
以上のことから、代表色の選定に用いるべきBINの特徴を以下にまとめる。
*頻度が高いBIN
*頻度が高いBINと比べて輝度レベルに差があるBIN
*色相範囲が異なるBIN
このため、まず色相範囲毎に代表色の特徴を有するBINを代表色の候補として選び、その候補から最終的なタイル画像の代表色を決定する。
【0053】
ここで、代表色選定部208が代表色を選定する処理を、図7に示すフローチャートを用いて説明する。S701では、代表色候補選定部209が色相範囲(H0〜H4)からそれぞれ候補色を選択する。このS701の詳細な処理を、図8に示すフローチャートを用いて説明する。
【0054】
まず、S801では、ある色相範囲での頻度最大のBINの色情報を候補色に採用し、S802へ遷移する。S802では、この色相範囲に含まれる色の輝度レベルに差があるか否かを判定する。具体的には、無彩色領域H0ではH0の範囲で画素加算されたBINの数の大小で判断すればよい。
【0055】
一方、有彩色領域H1〜H4における輝度差の有無の判定基準は無彩色領域と異なる。なぜなら、印刷物での有彩色の表現には網点が使われるため、表現したい色は1色であっても網点の構成の関係で画素単位の色情報は輝度差が発生しやすい。このため、画素加算されたBINの数だけでは、色相範囲中に代表色となるべきBINが複数存在するか否かを判断することができない。よって、確実に輝度の差があるかを確認するために、BINが連続して存在しているか否かを判定基準とする。すなわち、色相範囲中にBINが連続していれば、輝度レベルに差がないと判断し、逆にBINが飛び石に存在していれば、この色相範囲は輝度レベルに差があるとみなす。
【0056】
S802で輝度レベルに差がある(YES)と判定されると、S803へ遷移し、NOであれば、この色相範囲の候補色選定を終了し、他の色相範囲の候補色選定に移行する。このS803では、S801で選択した頻度最大のBINに対して同一色相範囲内で最も輝度レベルに差があるBINの色情報を候補色に採用する。具体的には、頻度最大BINから輝度方向に一番離れた位置にあるBINである。
【0057】
上述の候補色選定処理を色相範囲(H0〜H4)のそれぞれに実行し、候補色選定処理をすべて終了すると、図7に示すS702へ遷移する。図5に示す例では、ヒストグラムから選択した候補色のBINは以下のとおりとなる。
<図5に示す(D)タイル画像308のヒストグラム>
H[0]Y[11]
H[1]Y[10]
H[3]Y[11]
<図5に示す(E)タイル画像306のヒストグラム>
H[0]Y[11]
H[1]Y[12]
H[3]Y[9]
H[4]Y[10]
<図5に示す(F)タイル画像311のヒストグラム>
H[0]Y[10]
H[1]Y[10]
H[2]Y[9]
H[3]Y[11]
ここで図7に戻り、S702では、候補色が過分割されたBINかを判定する。図2に示す色空間分割部205が設定する色相範囲は基準となる画素の色情報に依存する。このため、状況によっては理想的な色相範囲にならない場合がある。
【0058】
図5に示す(A)は、背景領域301の色分布502がH1に分布し、文字領域302の色分布503がH3に分布し、理想的に分かれた色相範囲になっている。一方、図5に示す(B)では、背景領域301の色分布506がH0、H3、H4に分布した状態、すなわち、複数の異なる色相範囲に過分割されてしまっている。このように複数の異なる色相範囲に分布している場合、色相範囲毎に選んだ候補色をそのままタイルの代表色に採用してしまうと、本来1色で表現したい領域の色が複数の色になるため、量子化タイル215の画質に問題が発生する。
【0059】
このため、色相範囲(H0〜H4)のそれぞれで選定された候補色が色相範囲を過分割されたためにできたBINか否かをチェックし、最終的な代表色の候補を決定する。尚、過分割判定の詳細を説明する前に、図9を用いて色相範囲(H0〜H4)の間の位置関係を表す用語について定義する。
【0060】
色相環の中心から、径に沿って隣接する位置関係を径方向901と定義する。これは、無彩色領域H0と隣接する有彩色領域(H1〜H4それぞれ)との組み合わせである。
【0061】
また、色相環の円周に沿って隣接する位置関係を周方向902と定義する。これは、隣接する有彩色領域(H1〜H4)同士の組み合わせである。例えば、有彩色領域H1に周方向で隣接する有彩色領域は有彩色領域H2とH4の2つがある。
【0062】
本実施形態では、色相を用いた色空間を使用しており、径方向もしくは周方向で隣接する色相範囲に属するBINを比較対象とする。そのため、判定対象BINによって、過分割か判定する際の比較対象にするBINの位置や数が異なる。
【0063】
そこで、過分割か否かを判定するBINに対する、比較対象のBINの位置関係について、図10を用いて説明する。図10に示す(A)のように、過分割か否かを判定する対象となるBINが無彩色領域H0にある場合、このBINの比較対象は、径方向901に位置する4つの有彩色領域に属し且つ同じ輝度レベルを有するBINである。
【0064】
また、図10に示す(B)のように、対象となるBINが有彩色領域H1にある場合、このBINの径方向901に位置するBINは、無彩色領域H0に属し且つ同じ輝度レベルを有するBINだけである。更に、図10に示す(C)のように、有彩色領域H1にあるBINの周方向902に接する有彩色領域H2、H4に属し且つ同じ輝度レベルを有するBINも比較対象にする。
【0065】
このように、判定対象が無彩色領域H0に属するBINの場合、径方向901に接する有彩色領域のBINと過分割判定を行う。また、判定対象が有彩色領域(H1〜H4のいずれか)に属するBINの場合、径方向901に接する無彩色領域のBINと、周方向902に接する有彩色領域のBINに対して過分割判定を行う。
【0066】
ここで、候補色の過分割判定処理(S702)の詳細を、図11に示すフローチャートを用いて説明する。まずS1101では、判定する対象BINが無彩色領域H0にあるか、有彩色領域H1〜H4にあるかを判定する。判定の結果、対象BINが無彩色領域H0であれば、S1102へ、有彩色領域H1〜H4であれば、S1103へ遷移する。このS1102では、径方向判定部211が対象BINと径方向901に接するBINに対して過分割か否かを判定する。
【0067】
径方向過分割判定処理(S1102)の詳細を、図12に示すフローチャートを用いて説明する。S1201では、判定対象BINの色情報の彩度と、無彩色領域と有彩色領域の境界である彩度閾値S’が十分近いかを判定する。ここで、近ければ(YESであれば)、S1202へ、NOであれば、この対象BINは径方向に過分割ではないと判定し、この処理を終了する。S1202では、判定対象BINと径方向901に隣接する比較対象BINの色情報を取得し、S1203へ遷移する。
【0068】
尚、判定対象BINに対して、径方向901に隣接する比較対象BINとは、図10を用いて説明したとおりである。この場合、判定対象BINが無彩色領域H0であるので、有彩色領域H1〜H4にある4つのBINが比較対象になる(図10に示す(A)に相当する)。
【0069】
S1203では、S1202で取得した隣接するBINの彩度と、彩度閾値S’が十分近いかを判定する。判定の結果、YESであれば、S1204へ遷移し、NOであれば、この処理を終了する。
【0070】
S1204では、判定対象BINと隣接する比較対象BINとの色相を比較する。これは、図13に示すように、お互いのBINの彩度が領域の境界となる彩度閾値S’に近くても、色相の差がある場合がある。このような関係では、判定対象BINは過分割とはいえないため、色相を比較する処理を実行する。YESであれば、S1205へ遷移し、NOであれば、この処理を終了する。
【0071】
S1205では、判定対象BINと隣接する比較対象BINの加算画素数を比較する。判定対象BINの画素数が隣接する比較対象BINより小さければ(YESであれば)、S1206へ遷移し、判定対象BINは径方向過分割BINと判定する。後述するように、過分割と判定されたBINの候補色は代表色として選定されないようにする。一方、NOであれば、この終了を終了する。
【0072】
ここで図11に戻り、S1101で判定対象BINが有彩色領域と判定された場合、S1103へ遷移し、径方向過分割判定処理を行う。この場合、取得する隣接BINは色相範囲が無彩色領域H0にある1つのBINを比較対象として、上述した図12と同様の処理を行うことになる。尚、図12のS1202で取得する隣接BINの数が違うが、他の処理は同じであるため、説明は省く。
【0073】
S1103の径方向過分割判定処理が終了すると、S1104へ遷移し、周方向判定部212が判定対象BINと周方向902に隣接する比較対象BINに対して過分割か否かを判定する。この周方向過分割判定処理(S1104)の詳細を、図14に示すフローチャートを用いて説明する。
【0074】
周方向902に隣接するBINは、図10に示す(C)のように、注目する判定対象BINに対して時計回りと反時計回りの方向に隣接する2つの比較対象BINが存在する。このため、この処理では、まず時計回りに隣接するBINに対する過分割判定を行い、次に反時計回りに隣接するBINに対する過分割判定を実施する。
【0075】
S1401では、判定対象BINに対して周方向時計回りに隣接する比較対象BINの色情報を取得し、S1402へ遷移する。S1402では、判定対象BINと先に取得した隣接する比較対象BINとの色相を比較する。色相が十分近ければ(YESであれば)S1403へ遷移し、NOであればS1405へ遷移する。
【0076】
S1403では、判定対象BINと隣接する比較対象BINの加算画素数を比較する。判定対象BINの画素数が隣接するBINより小さければ(YESであれば)、S1404へ遷移し、この判定対象BINは周方向902に過分割と判定する。後述するように、過分割と判定されたBINの候補色は代表色として選定されないようにする。一方、NOであれば、S1405へ遷移する。
【0077】
S1405では、判定対象BINに対して周方向反時計回りに隣接する比較対象BINの色情報を取得し、S1406へ遷移する。S1406では、判定対象BINと先に取得した隣接する比較対象BINとの色相を比較する。色相が十分近ければ(YESであれば)S1407へ遷移し、NOであれば、この処理を終了する。
【0078】
S1407では、判定対象BINと隣接する比較対象BINの加算画素数を比較する。判定対象BINの画素数が隣接BINより小さければ(YESであれば)、S1408へ遷移し、この判定対象BINは周方向902に過分割と判定する。後述するように、過分割と判定されたBINの候補色は代表色として選定されないようにする。一方、NOであれば、この処理を終了する。以上の処理により、図7に示す候補色の過分割判定処理(S702)が終了する。
【0079】
ここで図7に戻り、S703では、各候補色について過分割と判定されたBINであるか否か判定し、過分割と判定された候補色であれば(YESであれば)、当該候補色を代表色に採択することなく、この処理を終了する。一方、候補色が過分割でなければ(NOであれば)、S704へ遷移し、その候補色をタイルの代表色に採択する。
【0080】
上述した候補色の過分割判定処理を行い、最終的な代表色を採択するまでを図5に示すヒストグラムの候補色を例に説明する。
*タイル画像308の場合
図5に示す(D)のタイル画像308から求めたヒストグラムの場合、当該ヒストグラムから選定される候補色は、上述したように、H[0]Y[11]、H[1]Y[10]、H[3]Y[11]の3つである。
【0081】
まず、H[0]Y[11]は無彩色のBINなので、径方向に隣接し且つ輝度レベルが同じであるH[1]Y[11]、H[3]Y[11]の2つのBINに対して径方向過分割判定を行う。ここで、H[0]Y[11]と彩度及び色相が近いのはH[1]Y[11]であり、H[0]Y[11]の画素数がH[1]Y[11]の画素数よりも少ない。よって、H[0]Y[11]を径方向に過分割と判定する。
【0082】
次に、H[1]Y[10]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[1]Y[10]に周方向に隣接し且つ輝度レベルが同じであるBINに属する画素がカウントされていないので、H[1]Y[10]は周方向に過分割ではない。また、H[1]Y[10]に径方向に隣接するBINはH[0]Y[10]であり、互いに彩度及び色相が近い。しかし、画素数を比べるとH[1]Y[10]の方が多いので、H[1]Y[10]は径方向に過分割と判定しない。よって、H[1]Y[10]の色情報を代表色に採択する。
【0083】
次に、H[3]Y[11]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[3]Y[11]に周方向に隣接し且つ輝度レベルが同じであるBINに画素が存在しないので、H[3]Y[11]は周方向に過分割ではない。また、H[3]Y[11]に径方向に隣接するH[0]Y[11]は彩度は近いが、色相は離れている。よって、H[3]Y[11]は径方向も過分割ではなく、H[3]Y[11]の色情報を代表色に採択する。
【0084】
従って、タイル画像308の場合、最終的な代表色は、H[1]Y[10]、H[3]Y[11]の2つの色情報となる。
*タイル画像306の場合
図5に示す(E)のタイル画像306の場合、ヒストグラムから選定される候補色は、H[0]Y[11]、H[1]Y[12]、H[3]Y[9]、H[4]Y[10]の4つである。
【0085】
まず、H[0]Y[11]は、無彩色のBINなので、径方向に隣接し且つ輝度レベルが同じであるH[1]Y[11]、H[3]Y[11]、H[4]Y[11]の3つのBINに対して径方向過分割判定を行う。ここで、H[0]Y[11]と彩度及び色相が近いのはH[3]Y[11]、H[4]Y[11]であり、H[0]Y[11]の画素数がH[3]Y[11]の画素数よりも少ないため、H[0]Y[11]を径方向に過分割と判定する。
【0086】
次に、H[1]Y[12]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[1]Y[12]に周方向に隣接し且つ輝度レベルが同じであるBINに画素がカウントされていないので、H[1]Y[12]は周方向に過分割ではない。また、H[1]Y[12]に径方向に隣接するBINにも画素がないので、径方向にも過分割ではない。よって、H[1]Y[12]の色情報を代表色に採択する。
【0087】
次に、H[3]Y[9]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[3]Y[9]に周方向に隣接し且つ輝度レベルが同じであるBINはH[4]Y[9]であり、色相は近いが、画素数はH[3]Y[9]の方が多いので、H[3]Y[9]は周方向に過分割ではないと判定する。よって、H[3]Y[9]の色情報を代表色に採択する。
【0088】
次に、H[4]Y[10]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[4]Y[10]に径方向に隣接し且つ輝度レベルが同じであるBINはH[0]Y[10]であり、互いに彩度及び色相が近い。しかし、画素数を比べるとH[4]Y[10]の方が多いので、H[4]Y[10]は径方向に過分割ではないと判定する。
【0089】
次に、H[4]Y[10]に周方向に隣接し且つ輝度レベルが同じであるBINにはH[3]Y[10]があり、色相は近いが、画素数はH[4]Y[10]の方が少ないため、H[4]Y[10]を周方向に過分割と判定する。
【0090】
従って、タイル画像306の場合、最終的な代表色は、H[1]Y[12]、H[3]Y[9]の2つの色情報となる。
*タイル画像311の場合
図5に示す(F)のタイル画像311の場合、ヒストグラムから選定される候補色は、H[0]Y[10]、H[1]Y[10]、H[2]Y[9]、H[3]Y[11]の4つである。
【0091】
まず、H[0]Y[10]は無彩色のBINなので、径方向に隣接し且つ輝度レベルが同じであるH[1]Y[10]、H[2]Y[10]、H[3]Y[10]の3つのBINに対して径方向過分割判定を行う。ここで、H[0]Y[10]と彩度及び色相が近いのはH[1]Y[10]であり、H[0]Y[10]の画素数がH[1]Y[10]よりも少ないため、H[0]Y[10]を径方向に過分割と判定する。
【0092】
次に、H[1]Y[10]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[1]Y[10]に周方向に隣接し且つ輝度レベルが同じであるBINにはH[2]Y[10]があるが、各BINの色相が離れているので、H[1]Y[10]は周方向に過分割ではないと判定する。H[1]Y[10]に径方向に隣接し且つ輝度レベルが同じであるBINはH[0]Y[10]であり、互いに彩度及び色相が近い。しかし、画素数を比べるとH[1]Y[10]の方が多いので、H[1]Y[10]は径方向に過分割ではないと判定する。よって、H[1]Y[10]を代表色に採択する。
【0093】
次に、H[2]Y[9]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[2]Y[9]に周方向に隣接し且つ輝度レベルが同じであるBINはH[1]Y[9]、H[3]Y[9]であるが、どちらのBINも色相が離れているので、H[2]Y[9]は周方向に過分割ではない。また、H[2]Y[9]に径方向に隣接し且つ輝度レベルが同じであるBINが存在しないので、径方向に過分割ではない。よって、H[2]Y[9]を代表色に採択する。
【0094】
次に、H[3]Y[11]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[3]Y[11]に周方向に隣接し且つ輝度レベルが同じであるBINに画素がカウントされていないので、H[3]Y[11]は周方向に過分割ではない。H[3]Y[11]に径方向に隣接するBINはH[0]Y[11]であるが、当該BINの彩度及び色相が離れているため、H[3]Y[11]は径方向に過分割ではないと判定する。よって、H[3]Y[11]を代表色に採択する。
【0095】
従って、タイル画像311の場合、最終的な代表色は、H[1]Y[10]、H[2]Y[9]、H[3]Y[11]の3つとなる。
【0096】
第1の実施形態によれば、頻度分布を作成する際の色空間分割で発生した過分割BINの判定に関し、BINの色相範囲によって比較するパラメータを最適化することで、計算コストを抑え、高画質な量子化画像を得ることが容易になる。
【0097】
[変形例]
上述した第1の実施形態では、対象BINが有彩色の場合の過分割判定において径方向過分割判定の後に、周方向過分割判定を行っているが、この順番を逆にしてもよい。
【0098】
また、第1の実施形態では、周方向の過分割判定において時計回りに隣接するBINの判定の後に、反時計回りに隣接するBINの判定を行っている。しかし、この2つの隣接するBINそれぞれに対して色相を比較できればよく、比較する順番はどちらでもよい。
【0099】
更に、第1の実施形態では、径方向の過分割判定において径方向に隣接するBINを彩度で比較する際に、彩度閾値の比較と、互いのBINの彩度値との比較をそれぞれ行っている。しかし、対象BINと隣接するBINの彩度が近いか否かが分かればよく、互いの彩度値の比較だけ実施してもよい。
【0100】
また、第1の実施形態では、代表色選定において候補色を決めた後に、過分割判定を行っているが、候補色選定前に過分割判定を実施し、予めヒストグラムから過分割となったBINを省いた後に、代表色を決定してもよい。
【0101】
[他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、入力画像の代表色を選定して減色処理を行う画像処理装置及び画像処理方法に関するものである。
【背景技術】
【0002】
近年、情報の電子化が進み、紙文書を保存するのではなく、紙文書をスキャナ等で読み込み、電子データとして保存し、その電子データを他装置に送信するシステムが普及している。また、紙文書そのものに使われる色も白黒の2値からカラー化(多値化)が進んでいる。
【0003】
電子データとして保存される電子文書には、可読性向上や高圧縮性を実現させるために文字部は鮮明な色が、背景は均一な色が求められている。しかし、実際に紙文書を電子化する際には、各種のノイズやにじみ、むらなどが発生する。特に、スクリーン等を使用したハーフトーンで構成されたカラー文書では、スクリーンの構成要素(網点と称す)そのものの色に起因したにじみ、むらなどが発生し、可読性や画質に影響を及ぼす。
【0004】
このため、文書の電子化処理において、画像中から代表色を選定し減色する減色処理を行うのが一般的である。
【0005】
スキャン画像の減色処理は、一般的にスキャナや複合機などの機器に組み込み、リアルタイムで稼働させることが想定される。よって、減色処理には高精度もさることながら、高速化と省メモリ化が求められる。
【0006】
特許文献1では、入力画像を規定のサイズのタイルに分割し、タイルの中で一番初めに発見された所定閾値以上の彩度を有する画素の色相値によって色相と彩度で構成される色空間を分割したヒストグラムを生成する。そして、このヒストグラムからタイルの代表色を選定し、タイルの中の画素の色情報を代表色に置換して減色処理する技術が開示されている。
【0007】
特許文献2では、入力画像を、RGB色空間上でRGBそれぞれ規定の階調に落としたインデックスカラー画像を生成する。そして、インデックスカラー画像の色情報(インデックスカラー画像に含まれる色の平均値)をインデックスカラー画像に加算した画素数順に順次比較し、一定の閾値より差が小さければ、インデックスカラー画像を統合して減色処理する技術が公開されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2010−268438号公報
【特許文献2】特開2003−309727号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、特許文献1では、色相の分割の基準はタイルの中で一番初めに発見された所定閾値以上の彩度を有する画素に依存する。このため、タイル分割の位置によっては図5に示す(B)のように、本来区分したい色相の範囲で分割されず、同一色にしたい色分布が過度に分割される場合があり、高画質なタイル画像が得られなかった。
【0010】
一方、特許文献2では、類似した色を統合する際に、RGBの3つの色成分を使って各色の色距離を計算している。特許文献2に開示される減色処理は計算コストが大きくなる問題があった。
【0011】
本発明は、特許文献1のように画像を色相と彩度で構成される色空間を分割して代表色を選定する装置において、同一色にすべき色が過度に分割されないようにする処理を簡易に行う装置及び方法を提供する。
【課題を解決するための手段】
【0012】
本発明の画像処理装置は、彩度と色相とによって構成される色相環を所定の基準に基づいて分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定める色空間分割手段と、
第1の画像データに含まれる画素を対象として、前記色空間分割手段で決定された各配列要素に属する画素数を計数することにより頻度分布を作成するとともに、各配列要素に属する画素の色情報の平均値を当該配列要素ごとの色情報として求める頻度分布作成手段と、
前記頻度分布作成手段で作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する候補色選定手段と、
前記候補色選定手段で選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する代表色選定手段と、
前記第1の画像データに含まれる画素の各画素値を、前記選定された代表色を用いて置換する置換手段と、
を有することを特徴とする。
【発明の効果】
【0013】
本発明によれば、代表色が過度に分割されているかどうか簡易に判定することで、減色処理の負荷を軽減できる。
【図面の簡単な説明】
【0014】
【図1】第1の実施形態による画像処理システムの全体構成を示すブロック図。
【図2】画像処理装置100の機能構成を示すブロック図。
【図3】(A)は入力画像の一例を示す図、(B)は複数のタイル画像を示す図。
【図4】HSV色空間を説明するための図。
【図5】(A)〜(C)は色相環を示す図、(D)〜(F)はヒストグラムを示す図。
【図6】(A)は頻度分布を示す図、(B)は頻度分布のデータ構造を示す図。
【図7】代表色を選定する処理を示すフローチャート。
【図8】候補色選定処理(S701)の詳細を示すフローチャート。
【図9】色相範囲の位置関係を表す用語を説明するための図。
【図10】過分割BINか否かを判定するBINの位置関係を示す図。
【図11】過分割判定の詳細な処理を示すフローチャート。
【図12】径方向過分割判定処理(S1102)の詳細を示すフローチャート。
【図13】色相に差がある場合の処理を説明するための図。
【図14】周方向過分割判定処理(S1104)の詳細を示すフローチャート。
【発明を実施するための形態】
【0015】
以下、図面を参照しながら発明を実施するための形態について詳細に説明する。尚、以下の実施形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【0016】
[第1の実施形態]
まず、第1の実施形態として、本発明に係る画像処理装置と、パーソナルコンピュータ(PC)とがネットワークを介して相互に接続される画像処理システムを例に挙げて説明する。
【0017】
<システム構成>
図1は、第1の実施形態による画像処理システムの全体構成を示すブロック図である。画像処理装置100は、原稿画像を読み取り、画像データを生成するスキャナ101及び外部装置とデータの入出力を行うためのネットワークI/F105を備えている。一方、PC120は、画像処理装置100とLAN110などのネットワークで接続され、画像処理装置100から送信されたデータを受信する。
【0018】
画像処理装置100は、スキャナ101により読み取った画像データ又はネットワークI/F105を介して外部装置から取得した画像データに画像処理を施すための処理プログラムを実行するCPU102を有する。更に、画像処理装置100は、処理プログラムを実行する際のワークメモリやデータの一時的な保存等に利用されるメモリ103、及びプログラムやデータを格納するハードディスク104を備えている。
【0019】
図2は、画像処理装置100の機能構成を示すブロック図である。尚、以下で説明する処理部は、CPU102が各種の処理プログラムを実行することによって実現されることを想定するが、その一部又は全部を電気回路(ASIC等)で構成するようにしてもよい。
【0020】
図2において、画像入力部201は、スキャナ101により読み取った画像データ又はネットワークI/F105を介して外部装置から取得した画像データを入力する。ここでは、入力される画像データは、RGBの色空間で表現され、解像度が600dpiとして生成されたカラー画像であるとして説明する。尚、画素値としては、24ビット(各色8ビット)で表現され、各色0〜255の値をとり得る。
【0021】
図3に示す(A)は、画像入力部201から入力された入力画像の一例を示す図である。入力画像300の色情報は、背景領域301、文字領域302、画像領域304でそれぞれ異なり、領域303は背景領域301と文字領域302との境界で発生したにじみとする。ここで、背景領域301は有彩色青系、文字領域302は有彩色黄色系、画像領域304は有彩色赤系で色は網点で表現している。尚、にじみは、原稿に元々存在するもの(印刷時に生じたもの)に由来するか、スキャナ101による原稿画像の読み取り時に生じるものである。
【0022】
ここで図2に戻り、タイル分割部202は、画像入力部201が入力した画像データを予め定められたサイズの複数のタイル画像(第1の画像データ)に分割する。タイル状に分割して順に処理していくことで、処理時に必要となるメモリ量を少なくすることができる。図3に示す(B)は、分割された複数のタイル画像305〜313を示す図であり、この例では、入力画像300を、32画素四方を1単位として9分割したものである。尚、以下の処理は、タイル単位に分割した分割タイル画像203に対して実行する。
【0023】
ここで図2に戻り、ヒストグラム生成部204は、色空間分割部205、頻度分布生成部206で構成される。色空間分割部205で用いられる色空間は、HSV色空間のため、色空間分割部205にはRGB色空間からHSV色空間への変換処理が含まれる。尚、ヒストグラム生成部204の詳細については更に後述する。
【0024】
一色多色判定部207は、タイル画像が背景のみ(1色)か、前景があるのか(多色)を判定する。ここではヒストグラムの分散(画素が加算されたBINの数、BINが存在する色相範囲の数及び輝度レベルの数)を参照し、分散が所定の値より大きい場合は多色、そうでない場合は1色とする。ここで、BINは、度数分布を表現するヒストグラムにおける配列要素である。
【0025】
代表色選定部208は、ヒストグラム生成部204が生成したヒストグラムからタイル画像内の代表色の色(代表色情報213)を決定する。この代表色選定部208は、代表色候補選定部209及び過分割BIN判定部210を有する。尚、代表色選定部208の詳細は更に後述する。
【0026】
色置換部214は、分割タイル画像203の画素単位の色と代表色選定部208で決定された代表色情報213との色間の距離を求め、入力画像に最も距離が近い代表色に色を置き換える量子化処理を行う。この結果、タイル単位に減色処理が行われた量子化タイル215が生成される。
【0027】
この例では、色置換部214は、注目画素と代表色のRGB空間のユークリッド距離を計算しているが、色空間、距離算出方法はこれに限られるものではない。
【0028】
次に、本発明に係る画像処理装置のヒストグラム生成部204、代表色選定部208について詳細に説明する。まず、ヒストグラム生成部204の色空間分割部205における色空間分割処理を説明する。
【0029】
<色空間分割>
色空間分割部205は、頻度分布生成部206の頻度分布情報を生成するために用いる複数のBINを決定する。
【0030】
まず、各画素に対応するRGB画素値から、HSV色空間の色相(H)と彩度(S)の値、及びYUV色空間の輝度(Y)の値を導出する。HSV色空間は、図4に示すような色相(Hue)、彩度(Saturation)、明度(Value)により構成される円錐として示される。ここで、半径方向が彩度であり、円錐の中心線からの距離に対応する0〜1の値により表される。円の中心(S=0)では無彩色であり、遠い方(1に近い値)がより鮮やかな有彩色になる。また、色相は円周方向(円の角度方向)に対応しており、0〜360度の値により色相を表現する。例えば、0度は赤系の色、50度は黄系の色、120度は緑系の色、200度は青系の色に対応する。明度Vは色の明るさを示し、0〜100(%)の値で示され、値が大きくなるにつれ明るくなる。尚、0%は黒色、100%は白色に対応している。
【0031】
RGB画素値(R,G,B)の値の最大値をMAXとし、最小値をMINとしたとき、HSV画素値(H,S,V)の各値は以下のように算出される。
【0032】
H=60×(G−B)/(MAX−MIN)+0 if MAX=R
H=60×(B−R)/(MAX−MIN)+120 if MAX=G
H=60×(R−G)/(MAX−MIN)+240 if MAX=B
S=(MAX−MIN)
V=MAX
ここで、RGBの各値は、0〜255の範囲で表されるものとする。尚、HSV色空間の明度Vよりも、YUV色空間の輝度Yの方がより人間の目で見た場合の明るさの感覚に近い。このため、第1の実施形態においては、明度Vの替わりにYUV色空間の輝度Yを用いる。
【0033】
すなわち、第1の実施形態では、HSV色空間の色相及び彩度と、YUV色空間の輝度とを用いるものとする。以下では、HSV色空間の色相及び彩度、YUV色空間の輝度により表される色空間をY/HS色空間と呼ぶ。尚、輝度Yの値は、RGB画素値(R,G,B)から以下のように算出される。
【0034】
Y=0.29891×R+0.58661×G+0.11448×B
上記の数式により、RGB画素値から、H,S,Yの値が算出できる。
【0035】
次に、色相及び彩度における閾値と、輝度における閾値とを設定することにより色空間を分割する。輝度方向については、一次元の線形であるため、輝度値を所定の輝度閾値に基づいて分割するとよい。以下では、輝度レベルを16段階に設定した場合を例に挙げて説明する。このとき、各輝度値間の15個(所定のP個)の輝度閾値に基づいて、16個(P+1個)の領域(Y0〜Y15)に分割される。
【0036】
図4に示す下段は、色相と彩度とにより表現される色相環401を複数の領域402〜406に分割する例を示す図である。まず、色相環401を無彩色領域(低彩度領域)と有彩色領域(高彩度領域)に分ける。上述のように、彩度は、色相環における半径方向の距離で表現でき、色相環の原点に近いほど白、灰色、黒などの無彩色に近づき、逆に原点から離れるほど鮮やかな有彩色となる。そこで、所定の彩度閾値S’(所定閾値)を設定し、彩度が当該彩度閾値S’より小さい範囲を、無彩色の領域402(H0)とする。
【0037】
次に、有彩色領域の分割について説明する。色相は、色相環における位相で表現されるため、色相環上を設定した角度で分割し、有彩色領域を区分する。第1の実施形態では、色空間を4等分、すなわち、90度間隔で区分色相値を設定し、有彩色領域403〜406をH1〜H4まで設定する。
【0038】
色相分割に際しての基準となるH1の区分色相値は、タイル画像に含まれる画素を順に走査し、最初に発見された彩度閾値S’以上の彩度を有する画素の色相値に±45度加算したものとする。以下、具体例を挙げて説明する。
【0039】
図5に示す(A)は、図3に示すタイル画像308の色相環である。まず、色相環上のH1の区分色相値は、タイル画像308を順に走査していき、彩度閾値S’以上を有する画素を発見すると、当該最初に発見した画素(基準画素)の画素値501を中心に±45度で色相環の分割位置を決定する。そして、90度間隔で区分色相値を設定することで、有彩色領域H1〜H4に分割する。色分布502、503は、タイル画像308をすべて走査した後の、画素値の分布を示し、色分布502は背景領域301の色分布、色分布503は文字領域303の色分布となる。
【0040】
図5に示す(B)は、図3に示すタイル画像306の色相環である。まず、色相環上のH1の区分色相値は、タイル画像306を順に走査し、最初に発見された彩度閾値S’以上の画素値504を中心に±45度で決定される。そして、更に90度間隔で区分色相値を設定することで、有彩色領域H1〜H4が分割される。色分布505、506は、タイル画像306をすべて走査した後の、画素値の分布を示し、色分布505は文字領域302の色分布、色分布506は背景領域301の色分布となる。
【0041】
図5に示す(C)は、図3に示すタイル画像311の色相環である。まず、色相環上のH1の区分色相値は、タイル画像311を順に走査し、最初に発見された彩度閾値S’以上の画素値507を中心に±45度で決定される。そして、更に90度間隔で区分色相値を設定することで、有彩色領域H1〜H4が分割される。色分布508、509、510は、タイル画像311をすべて走査した後の、画素値の分布を示し、色分布508は背景領域301、色分布509は画像領域304、色分布510は文字領域303の色分布となる。
【0042】
尚、以下の説明では、色相と彩度とにより表現される色相環401を分割したときの各領域(無彩色領域H0と、分割された有彩色領域H1〜H4)とをまとめて、色相範囲と呼ぶこととする。
【0043】
<頻度分布情報の生成>
頻度分布生成部206は、まず色空間分割部205で輝度方向に分割した輝度レベルY(Y0〜Y15)と、色相と彩度で表される色相環を分割して求めた色相範囲H(H0〜H4)とで構成される二次元配列を作る。この二次元配列それぞれの配列要素(BIN)に含まれるタイル画像内の画素の出現回数を計数(カウント)する。
【0044】
図6に示す(A)は、頻度分布の配列を示す図である。この(A)の頻度分布の各BINには、各BINに対応する輝度レベル及び色相範囲の色情報を持つタイル画像の画素出現数と、カウントされた画素に対応する色情報(色相、彩度、RGB)の平均値とを格納する。図中、左側に、配列宣言601の一例を示す。
【0045】
図6に示す(B)は、頻度分布のデータ構造を示す図である。頻度分布はBINの配列と色空間分割で定義した有彩色領域の区分の色相値を保持する。頻度分布作成では、画素の色情報がどのBINに当てはまるか否かを判定し、該当するBINの画素出現数を加算(インクリメント)する。これと同時にBINの色情報に、画素の色情報をそれぞれ加算する。
【0046】
すべてのタイル画像の画素を判定した後、各BINの色情報を画素出現数で除算する。すなわち、BINに加算された画素の色情報の平均値を算出し、この値を当該BINの色情報として確定する。
【0047】
図5に示す(D)〜(F)は、色相範囲及び輝度レベルによって定義された各BINの頻度分布の例を示す図である。第1の実施形態で作成される頻度分布は、1つのタイル画像につき、5つの色相範囲の輝度ヒストグラムを作るのと等しい。また、入力画像の色は網点で表現されているため、本来人の目で見えているのは1色であっても、網点構成点の影響で画素単位の色情報にばらつきがある。このため、ヒストグラムでは複数の輝度レベルのBINに画素が加算されるのが一般的である。
【0048】
<代表色の決定>
代表色選定部208は、頻度分布生成部206で生成された情報に基づき代表色を決定する。もし、一色多色判定部207で1色、すなわち前景が存在しないと判定された場合、タイル画像の代表色はそのタイル画像の画素の色情報の平均値とすればよい。ここでは、一色多色判定で、多色、すなわち前景が存在する場合の代表色決定について詳細を説明する。
【0049】
タイル画像中の出現頻度が多い色が、当該タイル画像の中で重要な色(代表色)であるとみなせる。しかし、実際には頻度が低くても重要な色も存在する。例えば、文字領域の色は代表色として抽出すべきだが、タイル分割によって文字領域が断片化され、タイル中に占める文字領域の画素数が極端に低くなるケースも多く発生する。
【0050】
しかし、印刷物は人の目に見やすいように前景と背景の輝度に差をつけてデザインする場合が殆どである。つまり、頻度の大きいBINと比べて輝度レベルに差があるBINは代表色とみなせる。これは、領域が細分化されたために、代表色となるべきBINの画素頻度が大きくなくても、出現する特徴である。
【0051】
また、隣接する領域同士の色相値に差があれば、人の目に見えやすいデザインとなる。この事例に基づき、重要な色は、タイル画像において互いに異なる色相範囲に出現すると考えられる。
【0052】
以上のことから、代表色の選定に用いるべきBINの特徴を以下にまとめる。
*頻度が高いBIN
*頻度が高いBINと比べて輝度レベルに差があるBIN
*色相範囲が異なるBIN
このため、まず色相範囲毎に代表色の特徴を有するBINを代表色の候補として選び、その候補から最終的なタイル画像の代表色を決定する。
【0053】
ここで、代表色選定部208が代表色を選定する処理を、図7に示すフローチャートを用いて説明する。S701では、代表色候補選定部209が色相範囲(H0〜H4)からそれぞれ候補色を選択する。このS701の詳細な処理を、図8に示すフローチャートを用いて説明する。
【0054】
まず、S801では、ある色相範囲での頻度最大のBINの色情報を候補色に採用し、S802へ遷移する。S802では、この色相範囲に含まれる色の輝度レベルに差があるか否かを判定する。具体的には、無彩色領域H0ではH0の範囲で画素加算されたBINの数の大小で判断すればよい。
【0055】
一方、有彩色領域H1〜H4における輝度差の有無の判定基準は無彩色領域と異なる。なぜなら、印刷物での有彩色の表現には網点が使われるため、表現したい色は1色であっても網点の構成の関係で画素単位の色情報は輝度差が発生しやすい。このため、画素加算されたBINの数だけでは、色相範囲中に代表色となるべきBINが複数存在するか否かを判断することができない。よって、確実に輝度の差があるかを確認するために、BINが連続して存在しているか否かを判定基準とする。すなわち、色相範囲中にBINが連続していれば、輝度レベルに差がないと判断し、逆にBINが飛び石に存在していれば、この色相範囲は輝度レベルに差があるとみなす。
【0056】
S802で輝度レベルに差がある(YES)と判定されると、S803へ遷移し、NOであれば、この色相範囲の候補色選定を終了し、他の色相範囲の候補色選定に移行する。このS803では、S801で選択した頻度最大のBINに対して同一色相範囲内で最も輝度レベルに差があるBINの色情報を候補色に採用する。具体的には、頻度最大BINから輝度方向に一番離れた位置にあるBINである。
【0057】
上述の候補色選定処理を色相範囲(H0〜H4)のそれぞれに実行し、候補色選定処理をすべて終了すると、図7に示すS702へ遷移する。図5に示す例では、ヒストグラムから選択した候補色のBINは以下のとおりとなる。
<図5に示す(D)タイル画像308のヒストグラム>
H[0]Y[11]
H[1]Y[10]
H[3]Y[11]
<図5に示す(E)タイル画像306のヒストグラム>
H[0]Y[11]
H[1]Y[12]
H[3]Y[9]
H[4]Y[10]
<図5に示す(F)タイル画像311のヒストグラム>
H[0]Y[10]
H[1]Y[10]
H[2]Y[9]
H[3]Y[11]
ここで図7に戻り、S702では、候補色が過分割されたBINかを判定する。図2に示す色空間分割部205が設定する色相範囲は基準となる画素の色情報に依存する。このため、状況によっては理想的な色相範囲にならない場合がある。
【0058】
図5に示す(A)は、背景領域301の色分布502がH1に分布し、文字領域302の色分布503がH3に分布し、理想的に分かれた色相範囲になっている。一方、図5に示す(B)では、背景領域301の色分布506がH0、H3、H4に分布した状態、すなわち、複数の異なる色相範囲に過分割されてしまっている。このように複数の異なる色相範囲に分布している場合、色相範囲毎に選んだ候補色をそのままタイルの代表色に採用してしまうと、本来1色で表現したい領域の色が複数の色になるため、量子化タイル215の画質に問題が発生する。
【0059】
このため、色相範囲(H0〜H4)のそれぞれで選定された候補色が色相範囲を過分割されたためにできたBINか否かをチェックし、最終的な代表色の候補を決定する。尚、過分割判定の詳細を説明する前に、図9を用いて色相範囲(H0〜H4)の間の位置関係を表す用語について定義する。
【0060】
色相環の中心から、径に沿って隣接する位置関係を径方向901と定義する。これは、無彩色領域H0と隣接する有彩色領域(H1〜H4それぞれ)との組み合わせである。
【0061】
また、色相環の円周に沿って隣接する位置関係を周方向902と定義する。これは、隣接する有彩色領域(H1〜H4)同士の組み合わせである。例えば、有彩色領域H1に周方向で隣接する有彩色領域は有彩色領域H2とH4の2つがある。
【0062】
本実施形態では、色相を用いた色空間を使用しており、径方向もしくは周方向で隣接する色相範囲に属するBINを比較対象とする。そのため、判定対象BINによって、過分割か判定する際の比較対象にするBINの位置や数が異なる。
【0063】
そこで、過分割か否かを判定するBINに対する、比較対象のBINの位置関係について、図10を用いて説明する。図10に示す(A)のように、過分割か否かを判定する対象となるBINが無彩色領域H0にある場合、このBINの比較対象は、径方向901に位置する4つの有彩色領域に属し且つ同じ輝度レベルを有するBINである。
【0064】
また、図10に示す(B)のように、対象となるBINが有彩色領域H1にある場合、このBINの径方向901に位置するBINは、無彩色領域H0に属し且つ同じ輝度レベルを有するBINだけである。更に、図10に示す(C)のように、有彩色領域H1にあるBINの周方向902に接する有彩色領域H2、H4に属し且つ同じ輝度レベルを有するBINも比較対象にする。
【0065】
このように、判定対象が無彩色領域H0に属するBINの場合、径方向901に接する有彩色領域のBINと過分割判定を行う。また、判定対象が有彩色領域(H1〜H4のいずれか)に属するBINの場合、径方向901に接する無彩色領域のBINと、周方向902に接する有彩色領域のBINに対して過分割判定を行う。
【0066】
ここで、候補色の過分割判定処理(S702)の詳細を、図11に示すフローチャートを用いて説明する。まずS1101では、判定する対象BINが無彩色領域H0にあるか、有彩色領域H1〜H4にあるかを判定する。判定の結果、対象BINが無彩色領域H0であれば、S1102へ、有彩色領域H1〜H4であれば、S1103へ遷移する。このS1102では、径方向判定部211が対象BINと径方向901に接するBINに対して過分割か否かを判定する。
【0067】
径方向過分割判定処理(S1102)の詳細を、図12に示すフローチャートを用いて説明する。S1201では、判定対象BINの色情報の彩度と、無彩色領域と有彩色領域の境界である彩度閾値S’が十分近いかを判定する。ここで、近ければ(YESであれば)、S1202へ、NOであれば、この対象BINは径方向に過分割ではないと判定し、この処理を終了する。S1202では、判定対象BINと径方向901に隣接する比較対象BINの色情報を取得し、S1203へ遷移する。
【0068】
尚、判定対象BINに対して、径方向901に隣接する比較対象BINとは、図10を用いて説明したとおりである。この場合、判定対象BINが無彩色領域H0であるので、有彩色領域H1〜H4にある4つのBINが比較対象になる(図10に示す(A)に相当する)。
【0069】
S1203では、S1202で取得した隣接するBINの彩度と、彩度閾値S’が十分近いかを判定する。判定の結果、YESであれば、S1204へ遷移し、NOであれば、この処理を終了する。
【0070】
S1204では、判定対象BINと隣接する比較対象BINとの色相を比較する。これは、図13に示すように、お互いのBINの彩度が領域の境界となる彩度閾値S’に近くても、色相の差がある場合がある。このような関係では、判定対象BINは過分割とはいえないため、色相を比較する処理を実行する。YESであれば、S1205へ遷移し、NOであれば、この処理を終了する。
【0071】
S1205では、判定対象BINと隣接する比較対象BINの加算画素数を比較する。判定対象BINの画素数が隣接する比較対象BINより小さければ(YESであれば)、S1206へ遷移し、判定対象BINは径方向過分割BINと判定する。後述するように、過分割と判定されたBINの候補色は代表色として選定されないようにする。一方、NOであれば、この終了を終了する。
【0072】
ここで図11に戻り、S1101で判定対象BINが有彩色領域と判定された場合、S1103へ遷移し、径方向過分割判定処理を行う。この場合、取得する隣接BINは色相範囲が無彩色領域H0にある1つのBINを比較対象として、上述した図12と同様の処理を行うことになる。尚、図12のS1202で取得する隣接BINの数が違うが、他の処理は同じであるため、説明は省く。
【0073】
S1103の径方向過分割判定処理が終了すると、S1104へ遷移し、周方向判定部212が判定対象BINと周方向902に隣接する比較対象BINに対して過分割か否かを判定する。この周方向過分割判定処理(S1104)の詳細を、図14に示すフローチャートを用いて説明する。
【0074】
周方向902に隣接するBINは、図10に示す(C)のように、注目する判定対象BINに対して時計回りと反時計回りの方向に隣接する2つの比較対象BINが存在する。このため、この処理では、まず時計回りに隣接するBINに対する過分割判定を行い、次に反時計回りに隣接するBINに対する過分割判定を実施する。
【0075】
S1401では、判定対象BINに対して周方向時計回りに隣接する比較対象BINの色情報を取得し、S1402へ遷移する。S1402では、判定対象BINと先に取得した隣接する比較対象BINとの色相を比較する。色相が十分近ければ(YESであれば)S1403へ遷移し、NOであればS1405へ遷移する。
【0076】
S1403では、判定対象BINと隣接する比較対象BINの加算画素数を比較する。判定対象BINの画素数が隣接するBINより小さければ(YESであれば)、S1404へ遷移し、この判定対象BINは周方向902に過分割と判定する。後述するように、過分割と判定されたBINの候補色は代表色として選定されないようにする。一方、NOであれば、S1405へ遷移する。
【0077】
S1405では、判定対象BINに対して周方向反時計回りに隣接する比較対象BINの色情報を取得し、S1406へ遷移する。S1406では、判定対象BINと先に取得した隣接する比較対象BINとの色相を比較する。色相が十分近ければ(YESであれば)S1407へ遷移し、NOであれば、この処理を終了する。
【0078】
S1407では、判定対象BINと隣接する比較対象BINの加算画素数を比較する。判定対象BINの画素数が隣接BINより小さければ(YESであれば)、S1408へ遷移し、この判定対象BINは周方向902に過分割と判定する。後述するように、過分割と判定されたBINの候補色は代表色として選定されないようにする。一方、NOであれば、この処理を終了する。以上の処理により、図7に示す候補色の過分割判定処理(S702)が終了する。
【0079】
ここで図7に戻り、S703では、各候補色について過分割と判定されたBINであるか否か判定し、過分割と判定された候補色であれば(YESであれば)、当該候補色を代表色に採択することなく、この処理を終了する。一方、候補色が過分割でなければ(NOであれば)、S704へ遷移し、その候補色をタイルの代表色に採択する。
【0080】
上述した候補色の過分割判定処理を行い、最終的な代表色を採択するまでを図5に示すヒストグラムの候補色を例に説明する。
*タイル画像308の場合
図5に示す(D)のタイル画像308から求めたヒストグラムの場合、当該ヒストグラムから選定される候補色は、上述したように、H[0]Y[11]、H[1]Y[10]、H[3]Y[11]の3つである。
【0081】
まず、H[0]Y[11]は無彩色のBINなので、径方向に隣接し且つ輝度レベルが同じであるH[1]Y[11]、H[3]Y[11]の2つのBINに対して径方向過分割判定を行う。ここで、H[0]Y[11]と彩度及び色相が近いのはH[1]Y[11]であり、H[0]Y[11]の画素数がH[1]Y[11]の画素数よりも少ない。よって、H[0]Y[11]を径方向に過分割と判定する。
【0082】
次に、H[1]Y[10]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[1]Y[10]に周方向に隣接し且つ輝度レベルが同じであるBINに属する画素がカウントされていないので、H[1]Y[10]は周方向に過分割ではない。また、H[1]Y[10]に径方向に隣接するBINはH[0]Y[10]であり、互いに彩度及び色相が近い。しかし、画素数を比べるとH[1]Y[10]の方が多いので、H[1]Y[10]は径方向に過分割と判定しない。よって、H[1]Y[10]の色情報を代表色に採択する。
【0083】
次に、H[3]Y[11]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[3]Y[11]に周方向に隣接し且つ輝度レベルが同じであるBINに画素が存在しないので、H[3]Y[11]は周方向に過分割ではない。また、H[3]Y[11]に径方向に隣接するH[0]Y[11]は彩度は近いが、色相は離れている。よって、H[3]Y[11]は径方向も過分割ではなく、H[3]Y[11]の色情報を代表色に採択する。
【0084】
従って、タイル画像308の場合、最終的な代表色は、H[1]Y[10]、H[3]Y[11]の2つの色情報となる。
*タイル画像306の場合
図5に示す(E)のタイル画像306の場合、ヒストグラムから選定される候補色は、H[0]Y[11]、H[1]Y[12]、H[3]Y[9]、H[4]Y[10]の4つである。
【0085】
まず、H[0]Y[11]は、無彩色のBINなので、径方向に隣接し且つ輝度レベルが同じであるH[1]Y[11]、H[3]Y[11]、H[4]Y[11]の3つのBINに対して径方向過分割判定を行う。ここで、H[0]Y[11]と彩度及び色相が近いのはH[3]Y[11]、H[4]Y[11]であり、H[0]Y[11]の画素数がH[3]Y[11]の画素数よりも少ないため、H[0]Y[11]を径方向に過分割と判定する。
【0086】
次に、H[1]Y[12]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[1]Y[12]に周方向に隣接し且つ輝度レベルが同じであるBINに画素がカウントされていないので、H[1]Y[12]は周方向に過分割ではない。また、H[1]Y[12]に径方向に隣接するBINにも画素がないので、径方向にも過分割ではない。よって、H[1]Y[12]の色情報を代表色に採択する。
【0087】
次に、H[3]Y[9]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[3]Y[9]に周方向に隣接し且つ輝度レベルが同じであるBINはH[4]Y[9]であり、色相は近いが、画素数はH[3]Y[9]の方が多いので、H[3]Y[9]は周方向に過分割ではないと判定する。よって、H[3]Y[9]の色情報を代表色に採択する。
【0088】
次に、H[4]Y[10]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[4]Y[10]に径方向に隣接し且つ輝度レベルが同じであるBINはH[0]Y[10]であり、互いに彩度及び色相が近い。しかし、画素数を比べるとH[4]Y[10]の方が多いので、H[4]Y[10]は径方向に過分割ではないと判定する。
【0089】
次に、H[4]Y[10]に周方向に隣接し且つ輝度レベルが同じであるBINにはH[3]Y[10]があり、色相は近いが、画素数はH[4]Y[10]の方が少ないため、H[4]Y[10]を周方向に過分割と判定する。
【0090】
従って、タイル画像306の場合、最終的な代表色は、H[1]Y[12]、H[3]Y[9]の2つの色情報となる。
*タイル画像311の場合
図5に示す(F)のタイル画像311の場合、ヒストグラムから選定される候補色は、H[0]Y[10]、H[1]Y[10]、H[2]Y[9]、H[3]Y[11]の4つである。
【0091】
まず、H[0]Y[10]は無彩色のBINなので、径方向に隣接し且つ輝度レベルが同じであるH[1]Y[10]、H[2]Y[10]、H[3]Y[10]の3つのBINに対して径方向過分割判定を行う。ここで、H[0]Y[10]と彩度及び色相が近いのはH[1]Y[10]であり、H[0]Y[10]の画素数がH[1]Y[10]よりも少ないため、H[0]Y[10]を径方向に過分割と判定する。
【0092】
次に、H[1]Y[10]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[1]Y[10]に周方向に隣接し且つ輝度レベルが同じであるBINにはH[2]Y[10]があるが、各BINの色相が離れているので、H[1]Y[10]は周方向に過分割ではないと判定する。H[1]Y[10]に径方向に隣接し且つ輝度レベルが同じであるBINはH[0]Y[10]であり、互いに彩度及び色相が近い。しかし、画素数を比べるとH[1]Y[10]の方が多いので、H[1]Y[10]は径方向に過分割ではないと判定する。よって、H[1]Y[10]を代表色に採択する。
【0093】
次に、H[2]Y[9]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[2]Y[9]に周方向に隣接し且つ輝度レベルが同じであるBINはH[1]Y[9]、H[3]Y[9]であるが、どちらのBINも色相が離れているので、H[2]Y[9]は周方向に過分割ではない。また、H[2]Y[9]に径方向に隣接し且つ輝度レベルが同じであるBINが存在しないので、径方向に過分割ではない。よって、H[2]Y[9]を代表色に採択する。
【0094】
次に、H[3]Y[11]は有彩色のBINなので、径方向もしくは周方向に過分割かを判定する。ここで、H[3]Y[11]に周方向に隣接し且つ輝度レベルが同じであるBINに画素がカウントされていないので、H[3]Y[11]は周方向に過分割ではない。H[3]Y[11]に径方向に隣接するBINはH[0]Y[11]であるが、当該BINの彩度及び色相が離れているため、H[3]Y[11]は径方向に過分割ではないと判定する。よって、H[3]Y[11]を代表色に採択する。
【0095】
従って、タイル画像311の場合、最終的な代表色は、H[1]Y[10]、H[2]Y[9]、H[3]Y[11]の3つとなる。
【0096】
第1の実施形態によれば、頻度分布を作成する際の色空間分割で発生した過分割BINの判定に関し、BINの色相範囲によって比較するパラメータを最適化することで、計算コストを抑え、高画質な量子化画像を得ることが容易になる。
【0097】
[変形例]
上述した第1の実施形態では、対象BINが有彩色の場合の過分割判定において径方向過分割判定の後に、周方向過分割判定を行っているが、この順番を逆にしてもよい。
【0098】
また、第1の実施形態では、周方向の過分割判定において時計回りに隣接するBINの判定の後に、反時計回りに隣接するBINの判定を行っている。しかし、この2つの隣接するBINそれぞれに対して色相を比較できればよく、比較する順番はどちらでもよい。
【0099】
更に、第1の実施形態では、径方向の過分割判定において径方向に隣接するBINを彩度で比較する際に、彩度閾値の比較と、互いのBINの彩度値との比較をそれぞれ行っている。しかし、対象BINと隣接するBINの彩度が近いか否かが分かればよく、互いの彩度値の比較だけ実施してもよい。
【0100】
また、第1の実施形態では、代表色選定において候補色を決めた後に、過分割判定を行っているが、候補色選定前に過分割判定を実施し、予めヒストグラムから過分割となったBINを省いた後に、代表色を決定してもよい。
【0101】
[他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
彩度と色相とによって構成される色相環を所定の基準に基づいて分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定める色空間分割手段と、
第1の画像データに含まれる画素を対象として、前記色空間分割手段で決定された各配列要素に属する画素数を計数することにより頻度分布を作成するとともに、各配列要素に属する画素の色情報の平均値を当該配列要素ごとの色情報として求める頻度分布作成手段と、
前記頻度分布作成手段で作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する候補色選定手段と、
前記候補色選定手段で選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する代表色選定手段と、
前記第1の画像データに含まれる画素の各画素値を、前記選定された代表色を用いて置換する置換手段と、
を有することを特徴とする画像処理装置。
【請求項2】
画像データを入力する入力手段と、
前記入力手段で入力された画像データを複数のタイル画像に分割する分割手段と、を更に有し、
前記第1の画像データは、前記分割手段で分割されたタイル画像であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記代表色選定手段は、前記候補色選定手段で選定された配列要素の色情報の彩度と色相が、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報の彩度と色相と近く、更に、前記候補色選定手段で選定された配列要素の頻度分布が、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の頻度分布より少ない場合、当該候補色選定手段で選定された配列要素の色情報を代表色として選定しないように処理することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記色空間分割手段は、前記第1の画像データに含まれる画素を順に走査し、最初に発見された所定閾値か所定閾値より大きい彩度を有する画素を基準画素として前記色相環を分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定めることを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。
【請求項5】
前記色相環に設定される複数の領域は、前記所定閾値より小さい彩度を有する無彩色領域と、前記所定閾値か所定閾値より大きい彩度を有し且つ前記基準画素に基づいて前記色相環を色相の方向で分割した複数の有彩色領域とで構成されることを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。
【請求項6】
画像処理装置の画像処理方法であって、
色空間分割手段が、彩度と色相とによって構成される色相環を所定の基準に基づいて分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定める色空間分割工程と、
頻度分布作成手段が、第1の画像データに含まれる画素を対象として、前記色空間分割工程で決定された各配列要素に属する画素数を計数することにより頻度分布を作成するとともに、各配列要素に属する画素の色情報の平均値を当該配列要素ごとの色情報として求める頻度分布作成工程と、
候補色選定手段が、前記頻度分布作成工程で作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する候補色選定工程と、
代表色選定手段が、前記候補色選定工程で選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する代表色選定工程と、
置換手段が、前記第1の画像データに含まれる画素の各画素値を、前記選定された代表色を用いて置換する置換工程と、
を有することを特徴とする画像処理方法。
【請求項7】
コンピュータを請求項1乃至5の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項1】
彩度と色相とによって構成される色相環を所定の基準に基づいて分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定める色空間分割手段と、
第1の画像データに含まれる画素を対象として、前記色空間分割手段で決定された各配列要素に属する画素数を計数することにより頻度分布を作成するとともに、各配列要素に属する画素の色情報の平均値を当該配列要素ごとの色情報として求める頻度分布作成手段と、
前記頻度分布作成手段で作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する候補色選定手段と、
前記候補色選定手段で選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する代表色選定手段と、
前記第1の画像データに含まれる画素の各画素値を、前記選定された代表色を用いて置換する置換手段と、
を有することを特徴とする画像処理装置。
【請求項2】
画像データを入力する入力手段と、
前記入力手段で入力された画像データを複数のタイル画像に分割する分割手段と、を更に有し、
前記第1の画像データは、前記分割手段で分割されたタイル画像であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記代表色選定手段は、前記候補色選定手段で選定された配列要素の色情報の彩度と色相が、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報の彩度と色相と近く、更に、前記候補色選定手段で選定された配列要素の頻度分布が、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の頻度分布より少ない場合、当該候補色選定手段で選定された配列要素の色情報を代表色として選定しないように処理することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記色空間分割手段は、前記第1の画像データに含まれる画素を順に走査し、最初に発見された所定閾値か所定閾値より大きい彩度を有する画素を基準画素として前記色相環を分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定めることを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。
【請求項5】
前記色相環に設定される複数の領域は、前記所定閾値より小さい彩度を有する無彩色領域と、前記所定閾値か所定閾値より大きい彩度を有し且つ前記基準画素に基づいて前記色相環を色相の方向で分割した複数の有彩色領域とで構成されることを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。
【請求項6】
画像処理装置の画像処理方法であって、
色空間分割手段が、彩度と色相とによって構成される色相環を所定の基準に基づいて分割することによって、前記色相環における複数の領域を設定し、更に、所定の色空間の輝度方向を分割することにより複数の輝度レベルを設定し、前記色相環において設定した複数の領域と前記輝度方向に設定した複数の輝度レベルとに基づいて構成される複数の配列要素を定める色空間分割工程と、
頻度分布作成手段が、第1の画像データに含まれる画素を対象として、前記色空間分割工程で決定された各配列要素に属する画素数を計数することにより頻度分布を作成するとともに、各配列要素に属する画素の色情報の平均値を当該配列要素ごとの色情報として求める頻度分布作成工程と、
候補色選定手段が、前記頻度分布作成工程で作成した頻度分布に基づいて、前記色相環に設定された各領域において、当該各領域に属する配列要素の中から候補色の配列要素を選定する候補色選定工程と、
代表色選定手段が、前記候補色選定工程で選定された配列要素の色情報及び頻度分布を、前記色相環で隣接する領域に属し且つ輝度レベルが同じ配列要素の色情報及び頻度分布と比較することにより、前記候補色の中から代表色を選定する代表色選定工程と、
置換手段が、前記第1の画像データに含まれる画素の各画素値を、前記選定された代表色を用いて置換する置換工程と、
を有することを特徴とする画像処理方法。
【請求項7】
コンピュータを請求項1乃至5の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
【図1】
【図2】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図3】
【図2】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図3】
【公開番号】特開2013−102299(P2013−102299A)
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願番号】特願2011−243972(P2011−243972)
【出願日】平成23年11月7日(2011.11.7)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願日】平成23年11月7日(2011.11.7)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]