画像処理装置、方法及びプログラム
【課題】カラー画像を、当該カラー画像上での色の相違を識別可能なモノクロ画像へ変換する。
【解決手段】自然画像抽出部14は処理対象のカラー画像を自然画像の領域とそれ以外の領域とに分離し、自然画像モノクロ化部22は自然画像領域をモノクロ化する。一方、色群分割部16は自然画像領域以外の画像領域の画素毎の色の分布を複数の群に分割し、代表色算出部18は個々の群毎に代表色を算出し、変換部20は、個々の群に割り当てる濃度を決定し、自然画像領域以外の画像領域の各画素の色情報を、各画素が含まれる群に割り当てた濃度情報に変換することでモノクロ化する。自然画像モノクロ化部22及び変換部20から出力されたモノクロの画像データは画像合成部24で単一のモノクロ画像として合成され、画像出力部26で印刷装置等へ出力される。
【解決手段】自然画像抽出部14は処理対象のカラー画像を自然画像の領域とそれ以外の領域とに分離し、自然画像モノクロ化部22は自然画像領域をモノクロ化する。一方、色群分割部16は自然画像領域以外の画像領域の画素毎の色の分布を複数の群に分割し、代表色算出部18は個々の群毎に代表色を算出し、変換部20は、個々の群に割り当てる濃度を決定し、自然画像領域以外の画像領域の各画素の色情報を、各画素が含まれる群に割り当てた濃度情報に変換することでモノクロ化する。自然画像モノクロ化部22及び変換部20から出力されたモノクロの画像データは画像合成部24で単一のモノクロ画像として合成され、画像出力部26で印刷装置等へ出力される。
【発明の詳細な説明】
【技術分野】
【0001】
開示の技術は画像処理装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【0002】
カラー画像をモノクロ画像へ変換するにあたっては、一般にカラー画像の画素毎の輝度に基づいてモノクロ画像の画素毎の輝度が決定される。例えば、RGB色空間のRGB信号をLHC色空間のLHC信号へ変換し、変換後のLHC信号に対して色調整を行ってRGB信号へ再変換した後に、変換式Y=0.3R+0.6G+0.1Bを用いてモノクロ信号Yへ変換して出力する技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−16459号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
カラー画像の画素毎の輝度に基づいてモノクロ画像の画素毎の輝度を決定する場合、カラー画像上で輝度が同一の画素は、色が相違していても同一の輝度へ変換される場合がある。例えばモノクロ画像の各画素の輝度Lとして、RGB色空間のカラー画像における画素毎のRGB3色の平均輝度(L=(R+B+G)/3)を用いる場合、以下のように、カラー画像上で色の異なる画素のモノクロ画像上での輝度Lが等しくなる。
赤色画素:R=255,G=0,B=0:輝度L=(255+0+0)/3=85
緑色画素:R=0,G=255,B=0:輝度L=(0+255+0)/3=85
青色画素:R=0,G=0,B=255:輝度L=(0+0+255)/3=85
また、前記した変換式Y=0.3R+0.6G+0.1Bやその他の変換式を用いた場合にも、変換式で規定される輝度が同一の画素は、カラー画像上での色が相違していても、モノクロ画像上での輝度が等しくなる。これにより、変換前のカラー画像上での色の相違が変換後のモノクロ画像上で識別できなくなることで、モノクロ画像の視認性が低下する、という課題があった。
【0005】
開示の技術は、カラー画像を、当該カラー画像上での色の相違を識別可能なモノクロ画像へ変換することが目的である。
【課題を解決するための手段】
【0006】
開示の技術は、入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の前記群に分割する。そして開示の技術は、前記カラー画像を、前記分割によって得られた個々の前記群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する。
【発明の効果】
【0007】
開示の技術は、カラー画像を、当該カラー画像上での色の相違を識別可能なモノクロ画像へ変換することができる、という効果を有する。
【図面の簡単な説明】
【0008】
【図1】実施形態で説明した画像処理装置の機能ブロック図である。
【図2】画像処理装置として機能するコンピュータの概略ブロック図である。
【図3】色群分割・代表色算出処理の内容を示すフローチャートである。
【図4】色群分割結果の一例を示す概略図である。
【図5】第1実施形態に係る変換処理の内容を示すフローチャートである。
【図6】第1実施形態に係る変換処理の流れを一例を挙げて示す概略図である。
【図7】各色群へ割り当てる濃度の一例を示す線図である。
【図8】第2実施形態に係る変換処理の内容を示すフローチャートである。
【図9】スクリーンパターンのバリエーションの一例を示すイメージ図である。
【図10】スクリーンパターンのバリエーションの一例を示すイメージ図である。
【図11】画素リストに格納されるデータの一例を示す図である。
【発明を実施するための形態】
【0009】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。なお、以下で説明する実施形態では、自然画像領域を含むカラー画像に対して画像処理を行う態様を主に説明する。但し、処理対象とするカラー画像に自然画像領域が含まれていなくても構わない。また、以下で説明する実施形態では、明度もしくは濃度を輝度と表現する場合がある。また、各実施例は矛盾の無い範囲で組み合わせて実施しても構わない。
【0010】
〔第1実施形態〕
図1には、本実施形態に係る画像処理装置10の機能ブロック図が示されている。画像処理装置10はカラー画像をモノクロ画像へ変換する処理を行う。なお、モノクロ画像とは、1つの色を用い、該色の輝度の違いにより階調の違いを表現した画像を言う。画像処理装置10は画像取得部12、自然画像抽出部14、色群分割部16、代表色算出部18、変換部20、自然画像モノクロ化部22、画像合成部24及び画像出力部26を有する。
【0011】
画像処理装置10は、例えば図2に示すコンピュータ30で実現することができる。コンピュータ30はCPU32、メモリ34、不揮発性の記憶部36を有し、これらはバス38を介して互いに接続されている。なお、メモリ34はRAM(Random Access Memory)、ROM(Read Only Memory)等である。記憶部36はHDD(Hard Disk Drive)やフラッシュメモリ等によって実現できる。
【0012】
また、コンピュータ30のバス38を介して、不図示の入力装置、すなわちコンピュータの使用者により操作されると、その操作内容に応じて取得した情報をCPUへ送信する、例えばキーボードやマウスなどの装置が接続されている。また、バス38を介して、出力装置、即ち、コンピュータ30による処理結果を出力する、例えば表示装置や印刷装置が接続されている。また、コンピュータ30のバス38を介して、不図示のネットワークインタフェース、すなわち有線又は無線により他のコンピュータとの間で行われるデータの送受信の管理を行うインタフェース装置が接続されている。また、コンピュータ30のバス38を介して、不図示の媒体駆動装置、すなわち可搬記録媒体に書き込み及び読み出しを行うための装置が接続されていてもよい。
【0013】
記録媒体としての記憶部36には、コンピュータ30を画像処理装置10として機能させるための画像処理プログラム40が記憶されており、画像処理装置10で処理対象とするカラー画像の画像データを格納するための画像データ格納領域58が設けられている。CPU32は、画像処理プログラム40を記憶部36から読み出してメモリ34に展開し、画像処理プログラム40が有するプロセスを順次実行する。
【0014】
画像処理プログラム40は、画像取得プロセス42、自然画像抽出プロセス44、色群分割プロセス46、代表色算出プロセス48、変換プロセス50、自然画像モノクロ化プロセス52、画像合成プロセス54及び画像出力プロセス56を有する。CPU32は、画像取得プロセス42を実行することで、図1に示す画像取得部12として動作する。またCPU32は、自然画像抽出プロセス44を実行することで、図1に示す自然画像抽出部14として動作する。またCPU32は、色群分割プロセス46を実行することで、図1に示す色群分割部16として動作する。更にCPU32は、代表色算出プロセス48を実行することで、図1に示す代表色算出部18として動作する。またCPU32は、変換プロセス50を実行することで、図1に示す変換部20として動作する。またCPU32は、自然画像モノクロ化プロセス52を実行することで、図1に示す自然画像モノクロ化部22として動作する。更にCPU32は、画像合成プロセス54を実行することで、図1に示す画像合成部24として動作する。またCPU32は、画像出力プロセス56を実行することで、図1に示す画像出力部26として動作する。
【0015】
画像処理装置10がコンピュータ30で実現される場合、画像処理プログラム40を実行したコンピュータ30が、画像処理装置10として機能することになる。なお、ここでは画像処理プログラム40を記憶部36から読み出す場合を例示したが、画像処理プログラム40は、例えばCD−ROMやDVD−ROM等の任意の記録媒体から読み出して実行することが可能である。また、画像処理装置10は、例えば半導体集積回路、より詳しくはASIC(Application Specific Integrated Circuit)等で実現することも可能であり、画像処理装置10の各機能部は例えば電子回路等で実現することも可能である。
【0016】
画像取得部12は、画像処理装置10で処理対象とするカラー画像の画像データを取得する。画像取得部12としては、例えば記憶部36に設けられた画像データ格納領域58から処理対象のカラー画像の画像データを読み出すことで取得する構成を採用することができる。また画像取得部12は、外部に設けたスキャナ等の原稿読取装置、或いは、画像データを記憶する記憶部を備えた外部の情報処理装置から通信によって画像データを取得する通信ユニットであってもよい。また、画像取得部12は、画像を生成するアプリケーションから、該アプリケーションが生成したデータを受信するアプリケーションインタフェースであってもよい。なお、画像取得部12が通信ユニットである場合としては、例えば画像処理装置10として機能するコンピュータ30が、LAN(Local Area Network)やインターネット等の通信回線を介して前記外部の原稿読取装置や情報処理装置と接続された態様が挙げられる。
【0017】
なお、開示の技術によるモノクロ化の対象とするカラー画像としては、例えばコンピュータ30又は他のコンピュータ上で動作するアプリケーション・プログラムを用いて作成されたイラストやグラフ図等のカラー画像や、文字の色として複数色を用いた文字画像等が挙げられる。このため、本実施形態に係る画像処理装置10は、人工的に作成されたカラー画像、或いは、人工的に作成されたカラー画像が一部領域に配置された画像を処理対象としている。なお、処理対象の画像は、人工的に作成されたカラー画像の領域外に、自然画像(例えば写真の画像)の領域等が設けられた画像であってもよい。この種の画像の典型例としては、文字と画像とを組み合わせて作成された文書を読み取ることで得られた画像等が挙げられる。画像取得部12は上記のような画像の画像データを処理対象として取得する。
【0018】
また、画像取得部12によって取得されるカラー画像の画像データの色空間は、例えばRGB色空間やCMYK色空間、L*a*b*色空間、XYZ色空間等の公知の色空間の何れであってもよい。以下では、一例としてRGB色空間の画像データが画像取得部12によって取得されるものとして説明する。
【0019】
自然画像抽出部14は、画像取得部12によって取得された画像データが表す処理対象のカラー画像を自然画像の領域とそれ以外の領域とに分離する。具体的には、まず処理対象のカラー画像を複数の単位領域に分割し、単位領域内の画素単位の色の分布を個々の単位領域毎に求め、求めた色の分布の偏り度合いを評価する評価値を個々の単位領域毎に演算する。なお、上記の評価値としては、例えば単位領域内の各画素の色を色座標上にプロットしたときの分布範囲の大きさを用いることができる。即ち、例えば、色座標が2次元であれば面積、3次元であれば体積等を用いることができる。他の評価値を用いてもよい。
【0020】
次に、演算した評価値を個々の単位領域毎に基準値と比較し、比較結果に応じて個々の単位領域が自然画像の領域かそれ以外の領域かを判断する。自然画像は一般に様々な色の画素を含む、すなわち色の分布の偏りが小さい。なので、評価値が色の分布の偏りが小さいことを示す値、例えば前記分布範囲の大きさを表す評価値が基準値以上の場合、対応する単位領域は自然画像に対応する領域と判断できる。また、評価値が色の分布の偏りが大きいことを示す値、例えば前記分布範囲の大きさを表す評価値が基準値未満の場合、対応する単位領域は自然画像以外の領域、すなわち人工的に作成された画像領域と判断できる。そして、自然画像に対応すると判断した互いに隣接する単位領域を1つの領域に統合すると共に、自然画像以外と判断した互いに隣接する単位領域を1つの領域に統合する。これにより、処理対象のカラー画像は自然画像領域とそれ以外の画像領域とに分離される。もし、処理対象のカラー画像を構成する単位領域毎に、属性情報として、写真、すなわち自然画像であるのか、人工的に作成された画像なのかの別を示す情報が付されていれば、その属性情報を参照することで自然画像領域とそれ以外の画像領域とに分離しても構わない。なお、自然画像抽出部14は開示の技術における抽出部の一例として機能する。
【0021】
自然画像抽出部14は、処理対象のカラー画像のうち自然画像領域のカラー画像データを自然画像モノクロ化部22へ出力する。自然画像モノクロ化部22は、自然画像抽出部14から入力された自然画像領域のカラー画像データのうち各画素毎の色を表すデータを各画素の濃度を表すデータへ置き換えることで、自然画像領域のカラー画像データをモノクロ画像データへ変換する処理を行う。カラー画像データからモノクロ画像データへの変換には、例えば変換前のカラー画像データが表す各画素の色の明度成分を演算し、演算した明度成分からモノクロ画像における各画素の濃度を決定する、公知の各種処理の何れかを適用できる。
【0022】
具体的には、例えば、カラー画像データの色空間をRGB色空間からL*a*b*色空間へ変換し、変換後の各画素の明度L*の値からモノクロ画像データにおける各画素の濃度値を演算する処理を適用することができる。また、例えば各画素毎にR,G,B各色の値の平均値(=(R+G+B)/3)を演算し、演算した値をモノクロ画像データにおける各画素の濃度値として用いる処理を適用することもできる。また、例えばR,G,B各色の値に互いに異なる係数を乗じて加算した値(=r・R+g・G+b・B:但し、r,g,bは係数)を各画素毎に演算し、演算した値をモノクロ画像データにおける各画素の濃度値として用いる処理を適用することもできる。また、上記に代えてR,G,B各色の値の重み付き平均値を用いてもよい。自然画像モノクロ化部22は、上記処理で得られた自然画像領域のモノクロ画像データを画像合成部24へ出力する。
【0023】
また、自然画像抽出部14は、処理対象のカラー画像のうち自然画像領域以外の画像領域のカラー画像データを色群分割部16へ出力する。詳細は後述するが、色群分割部16は、自然画像抽出部14から入力された自然画像領域以外の画像領域のカラー画像データの画素毎の色の分布を複数の色群に分割する。代表色算出部18は、分割された個々の色群毎に代表色を算出する。また、変換部20は、個々の色群毎に算出された代表色に基づいて、個々の色群に割り当てる濃度を決定し、自然画像領域以外の画像領域の各画素の濃度を、各画素が含まれる色群に割り当てた濃度に一致させる処理を行う。これは、後述の変換処理に相当する処理である。そして変換部20は、上記処理で得られた自然画像領域以外の画像領域のモノクロ画像データを画像合成部24へ出力する。
【0024】
なお、色群分割部16は開示の技術における分割部の一例として機能し、代表色算出部18は開示の技術における代表色算出部の一例として機能し、変換部20は開示の技術における変換部の一例として機能する。
【0025】
画像合成部24は、自然画像モノクロ化部22から入力された自然画像領域のモノクロ画像データと、変換部20から入力された自然画像領域以外の画像領域のモノクロ画像データとを単一のモノクロ画像の画像データとして合成し、画像出力部26へ出力する。
【0026】
画像出力部26は、画像合成部24から入力された画像データが表すモノクロ画像を、利用者が視認可能な形態で出力する処理を行う。この処理としては、例えば画像を用紙に印刷する印刷装置へ画像データを出力し、入力された画像データが表すモノクロ画像を印刷装置によって用紙に印刷させる処理が挙げられる。また、画像処理装置10が印刷装置の一部として実装される場合には、画像出力部26は、印刷装置内の印刷ユニットへ印刷させる処理が上げられる。印刷装置の印刷方式は、電子写真方式やインクジェット方式、刷版印刷方式等の公知の印刷方式の何れでもよい。また、上記処理に代えて、画像を画面に表示する表示装置へ画像データを出力し、入力された画像データが表すモノクロ画像を表示装置の画面に表示させる処理を行ってもよい。
【0027】
次に第1実施形態の作用を説明する。カラー画像のモノクロ化には、前述した自然画像モノクロ化部22による処理と同様に、変換前のカラー画像における各画素の色から各画素の明度成分を演算し、演算した明度成分からモノクロ画像の各画素の濃度を決定する処理が適用されることが一般的である。自然画像では、隣り合う画素の色が同一であることは少なく、画素単位で色が相違している。このため、自然画像に対する一般的なモノクロ化処理において、元のカラー画像上で色が異なる一部の画素が変換後のモノクロ画像上で同一濃度で再現されたとしても、モノクロ画像の画質への影響は小さく、全体としては元のカラー画像の再現性は高い。
【0028】
一方、例えばイラストやグラフ図等のカラー画像や、文字の色として複数色を用いた文字画像のように、人工的に作成されたカラー画像は、一定色に塗り潰された領域、すなわち同一色の画素が連続している領域が画像中に散在している。すなわち、色分布に偏りがある画像だといえる。このような画像に対して従来技術のような一般的なモノクロ化処理を適用すると、元のカラー画像上で色が異なる部分が変換後のモノクロ画像上で同一濃度で再現されることが、元のカラー画像上で一定色に塗り潰されていた領域を単位として生じ得る。そして、元のカラー画像上で色が異なり変換後のモノクロ画像上で同一濃度で再現される領域が画像上で隣接していたとすると、変換後のモノクロ画像上において、各領域を元々の色が異なる領域として識別することが困難となる。
【0029】
具体例として、文章中の通常の文字が第1の色に着色され、文章中の特定部分に相当する文字が前記第1の色と異なる第2の色に着色された文章を含む文字画像をモノクロ化することを考える。ここで、第1の色と第2の色の輝度(明度)が大きく相違していれば、上記の文字画像に対して従来技術によるモノクロ化処理を適用したとしても、元の文字画像上で第1の色の文字と第2の色の文字とは変換後のモノクロ画像上で大きく異なる輝度で再現される。しかし、第1の色と第2の色との輝度が同一、或いは近似していたとすると、上記の文字画像に対して従来技術によるモノクロ化処理を適用した場合、元の文字画像上で第1の色の文字と第2の色の文字とが変換後のモノクロ画像上で同一又は近似した輝度で再現される。これにより、元の文字画像上で第1の色の文字と元の文字画像上で第2の色の文字とを、変換後のモノクロ画像上で識別することが不可能、或いは困難となる。
【0030】
また別の具体例として、グラフ図の中の第一の領域に第一の色が着色され、第一の領域とは異なる第二の領域に、第一の色とは異なる第二の色が着色されたグラフ図を含む画像をモノクロ化することを考える。上述の文字色の場合と同様に、従来技術によるモノクロ化処理を適用すると、第一の色と第二の色とが、モノクロ画像上で、同一または近似した輝度で表現される。例えば棒グラフや円グラフで隣り合う第一の領域と第二の領域が、モノクロ画像上では識別することが困難な状態になる。もちろん、グラフの種類は、これに限るものではなく、折れ線グラフのような、線状の領域を色で区別したグラフであっても同様の問題が発生する。
【0031】
このため、本実施形態ではモノクロ化を行うカラー画像のうち色分布に偏りが有る画像領域に対し、次に説明するように色群分割部16、代表色算出部18及び変換部20によってモノクロ化を行う。
【0032】
以下、まず色群分割部16及び代表色算出部18による色群分割・代表色算出処理の詳細について、図3を参照して説明する。図3に示す色群分割・代表色算出処理では、まず色群分割部16により、メモリ34の記憶領域のうち後述する画素リストの記憶領域をクリアし、メモリ34上の画素リストのレコードの総数mの記憶領域に0を設定する初期化処理が行われる(ステップ70)。続いて、色群分割部16により、自然画像抽出部14より入力された画像データ、すなわち自然画像領域以外の画像領域のカラー画像データから、処理対象の単一の画素のデータの読み込みが試行される(ステップ72)。次に、色群分割部16により、画像データの全ての画素に対して処理を完了したか否かが判定される(ステップ74)。この判定は、既に画像データの全画素のデータの読み込みが完了していたことで、ステップ72で新たな画素のデータを読み込めなかった場合に肯定される。そして、ステップ74の判定が肯定された場合は色群分割・代表色算出処理が終了する。
【0033】
一方、ステップ72で処理対象として新たな画素のデータを読み込めた場合は、ステップ74の判定が否定される。この場合、色群分割部16により、既に作成されている画素リストのレコードを対象として、処理対象の画素と同一とみなせる色差の範囲の画素の情報が登録されているか否かが探索される(ステップ76)。同一とみなせる色差は、予め、もしくは処理を実行する時点のパラメータとしてユーザにより設定されているものとする。例えば色空間上での画素間の距離や、画素値の成分の差の絶対値の総和が閾値として設定され、色差が閾値以下の距離または値である場合に二つの画素の値を同一と見なすことができる。
【0034】
続いて、色群分割部16により、ステップ76の探索で処理対象の画素と同一とみなせる色差の範囲の画素の情報が抽出されたか否かが判定される(ステップ78)。1個目の画素のデータを処理対象として読み込んだ段階では画素リスト内にレコードが未作成の状態であり、ステップ78の判定は否定される。ステップ78の判定が否定された場合、色群分割部16により、メモリ34に記憶されている画素リストのレコードの総数mが、予め設定された上限値に達したか否かが判定される(ステップ80)。
【0035】
1個目の画素のデータを処理対象として読み込んだ段階では画素リストの総数mも0であり、ステップ80の判定も否定される。ステップ80の判定が否定された場合、色群分割部16により、処理対象の画素が登録されたレコードを新規に作成する処理が行われる(ステップ84)。
【0036】
画素リストに格納されるデータの例を図11に示す。画素リスト200には、「リスト番号」「代表色情報」「登録された画素の総数」「登録された各画素の色と代表色との色差」「登録された各画素の色情報」の各項目について、対応する情報の登録領域が各々設けられて1つのレコード201となっている。「リスト番号」は、画素リストを構成するレコードの通番を示す情報である。「代表色情報」は、レコードに登録された全画素の平均色等の画素の値を示す情報である。「登録された画素の総数」は、レコードに登録された画素の総数を示す情報である。例えば、レコード201であれば、画素1と画素2の2個が登録されているので「2」が格納されている。
【0037】
「登録された各画素の色と代表色との色差」は、各レコードに登録されているそれぞれの画素の画素値と、代表色情報に示される画素値との色差を示す情報である。例えば、レコード201であれば、画素1と代表色との色差「■C1」、画素2と代表色との色差「■C2」が登録されている。「登
録された各画素の色情報」は、各レコードに登録されているそれぞれの画素の画素値を示す情報である。例えば、レコード201であれば、画素1の画素値「R1,G1,B1」、画素2の画素値「R2,G2,B2」が登録されている。
【0038】
色群分割部16によって画素リストのレコードが新規に作成される際には、「登録された画素の総数」が1に設定され、「代表色情報」及び「各画素の色情報」として処理対象の画素の色情報のみが登録されたレコードが作成される。続いて、色群分割部16により、メモリ34に記憶されているレコードの総数mが1だけインクリメントされる(ステップ86)。ステップ86の処理が終了するとステップ72に戻り、色群分割部16により、新たな画素のデータが処理対象の画素のデータとして読み込まれた後に、上述した処理が繰り返される。
【0039】
また、処理対象としてデータを読み込んだ画素が、色群分割処理で以前に処理対象とした画素と同一色であった場合は、ステップ76の探索で処理対象の画素と同一色の画素の情報が抽出されることで、ステップ78の判定が肯定されてステップ82へ移行する。この場合、色群分割部16及び代表色算出部18により、ステップ76の探索で抽出された同一色の画素の情報が登録されている画素リストのレコードに、処理対象の画素の情報を追加登録する処理が行われる(ステップ82)。
【0040】
具体的には、色群分割部16により、レコードの「リストに登録された画素の総数」が1だけインクリメントされると共に、「登録された各画素の色情報」に処理対象の画素の色情報が追加登録される。また、レコードの「登録された各画素の色情報」に登録されている複数の画素の色情報に基づき、代表色算出部18によって新たな代表色が算出され、レコードの「代表色情報」が算出された新たな代表色の情報へ更新される。更に、代表色算出部18によって、「登録された各画素の色情報」に登録されている各画素毎に新たな代表色との色差が演算され、レコードの「各画素の色と代表色との色差」も演算された色差へ更新される。
【0041】
なお、代表色としては、例えば1つのレコードに情報が登録されているそれぞれの全画素の各色成分(R,G,B)毎の平均色を用いることができる。これに代えて、例えばレコード内の全画素の色座標上での分布領域の重心位置に相当する色等、他の演算方法で演算される色を用いてもよい。また、各画素の色と代表色との色差としては、例えば次の(1)式で求まる色差ΔC(色座標上での各画素の色と代表色との距離)を用いることができるが、これに代えて他の演算方法で演算される色差を用いてもよい。
ΔC=√((Ri−R0)2+(Gi−G0)2+(Bi−B0)2) …(1)
但し、(1)式において、Ri,Gi,Biは各画素の各色成分毎の値を表し、R0,G0,B0は代表色の各色成分毎の値を表す。上述したステップ82の処理が終了するとステップ72に戻り、色群分割部16により、新たな画素のデータが処理対象の画素のデータとして読み込まれた後に、上述した処理が繰り返される。
【0042】
上述した処理により、画素リストのレコードの総数mが上限値に達する迄の間は、順次データが読み出される処理対象の画素のうち、同一色の他の画素が存在する画素は同一のレコードに情報が登録され、それ以外の画素は互いに異なるレコードに情報が登録される。また、レコードの総数mが上限値に達すると、ステップ80の判定が肯定されてステップ88へ移行する。
【0043】
この場合、色群分割部16により、現時点迄に処理対象とした画素すなわちステップ72で読み込んだ現在の処理対象の画素と、画素リストに情報が登録されている画素との中で、情報が登録されているレコードが異なり、かつ色差が最小の画素対を探索する処理が行われる(ステップ88)。該当する画素対が抽出されると、色群分割部16及び代表色算出部18により、探索で抽出された画素対のうちの一方の画素の情報が登録されている画素リストのレコードに、他方の画素の情報を登録する処理が行われる(ステップ90)。
【0044】
なお、ステップ88で抽出された画素対の一方がステップ72で読み込んだ現在の処理対象の画素である場合、ステップ90では、画素対の他方の画素の情報が登録されている画素リストのレコードに処理対象の画素、すなわち72で読み込んだ処理対象の画素の情報を追加登録する処理が、先のステップ82と同様にして行われる。また、ステップ88の探索で抽出された画素対が何れも画素リストに登録済みの画素である場合、ステップ90では、一方の画素の情報を他方の画素の情報が登録されている画素リストのレコードへ移動させる処理が行われる。この場合、情報の登録先レコードを移動させる画素は、画素対のうちの何れの画素でもよいが、「登録された画素の総数」の項目に格納されている値がより少ないレコードに情報が登録されている画素を移動対象とすることが好ましい。これは、後述するステップ88〜ステップ94のループの繰り返し回数が削減されることで、処理時間が短縮される可能性が高くなるためである。
【0045】
画素リストに登録済みの画素の登録先レコードを移動させる場合には、先のステップ82で説明した追加登録処理に加え、色群分割部16により、移動元の画素リストのレコードの「登録された各画素の色情報」から移動対象の画素の情報を削除し、「登録された画素の総数」を更新する処理が行われる。また、代表色算出部18により、移動元の画素リストのレコードの「代表色情報」を更新し、「各画素の色と代表色との色差」から移動対象の画素の情報を削除する処理が行われる。
【0046】
次に、色群分割部16により、ステップ72で読み込んだ現在の処理対象の画素の情報が何れかの画素リストのレコードに登録されたか否かが判定される(ステップ92)。この判定が否定された場合は、色群分割部16により、「登録された画素の総数」が0となった画素リストのレコード、すなわち空のレコードが出現したか否かが判定される(ステップ94)。この判定も否定された場合はステップ88に戻る。そして、処理対象の画素の情報が何れかの画素リストのレコードに登録されるか、処理対象の画素の情報を登録するための画素リストのレコードを新規作成することが可能な状態となる迄、ステップ88〜ステップ94が繰り返される。
【0047】
そして、処理対象の画素の情報が何れかの画素リストのレコードに登録された場合には、ステップ92の判定が肯定されてステップ72に戻る。また、空状態のレコードが出現した場合はステップ94の判定が肯定され、色群分割部16により、処理対象の画素が登録された画素リストのレコードを新規に作成する処理が行われ(ステップ96)、ステップ72に戻る。
【0048】
ステップ74の判定が肯定される迄、上述した処理が繰り返されることで、例えば画素リストのレコードの総数mの上限値=2の場合は2個以下のレコードが生成され、各画素の情報は2個以下のレコードの何れかに各々登録される。これにより、自然画像抽出部14より入力された画像データが表す画像領域の画素毎の色の分布は、例として画素のR値を横軸、B値を縦軸にとったイメージである図4(A)に示すように、異なる画素リストのレコードに情報が登録された2個の色群に分割される。また、例えば画素リストのレコード総数mの上限値=4の場合は4個以下のレコードが生成され、各画素の情報は4個以下のレコードの何れかに各々登録される。これにより、自然画像抽出部14より入力された画像データが表す画像領域の画素毎の色の分布は、例として画素のR値を横軸、B値を縦軸にとったイメージである図4(B)に示すように、異なるレコードに情報が登録された4個の色群に分割される。
【0049】
なお、1つの色群には、1以上の画素が含まれる。この1以上の画素を1の色群に対応する画素群とすると、1つの色群に含まれる画素群は、画面データ上では点在する場合もあれば、複数の箇所にまとまって位置する場合もあれば、1箇所にまとまって位置する場合も有る。1の色群に含まれる画素群の画面データ上での位置は、例えばXY座標で示される画面データ上のどの座標位置に各画素が存在するかによって決まる。
【0050】
続いて、変換部20による変換処理の詳細について、図5を参照して説明する。図5に示す変換処理では、まず変換部20により、各色群毎の代表色情報を複数の画素リストのレコードから各々読み込む処理が行われる(ステップ100)。次に、変換部20により、ステップ100で読み込んだ代表色情報に基づき、各色群毎の代表色の濃度を各々演算する処理が行われる(ステップ102)。
【0051】
本実施形態では、ここで演算する代表色の濃度を各色群毎の濃淡の順位付けに用いているので、代表色の濃度を正確に演算することは必須ではない。図6は第1実施形態に関る変換処理の流れを一例を挙げて示す概略図である。図6に示すように、代表色のR,G,B値のうちの一部、例えばR,Bの2つの値を加算した値を用いてもよい。図6に示す例では、色群1については、代表色がR0=2、B0=70で、両者を加算した値(=72)を代表色の濃度として用い、色群2については、代表色がR0=50、B0=52で、両者を加算した値(=102)を代表色の濃度として用いている。また、色群3については、代表色がR0=245、B0=294で、両者を加算した値(=494)を代表色の濃度として用い、色群4については、代表色がR0=202、B0=3で、両者を加算した値(=205)を代表色の濃度として用いている。勿論、代表色のR,G,B3色の値を加算した値を用いてもよいし、R,G,B3色のいずれかまたは全てを用いて、各値に予め設定された係数を乗じて加算した値を用いてもよい。
【0052】
次に、変換部20により、ステップ102で演算した各色群毎の代表色の濃度を、当該濃度の大小関係に応じた順序として、昇順又は降順に並べ替え、各色群毎の代表色の濃淡を順位付けする処理が行われる(ステップ104)。例えば図6に示す例では、各色群毎の代表色の濃度の昇順に各色群毎の代表色の濃淡を順位付けしており、代表色の濃度が最小(=72)の色群1が「1位」に、代表色の濃度が2番目に小さい(=102)色群2が「2位」に順位付けされている。また、代表色の濃度が2番目に大きい(=205)色群4が「3位」に、代表色の濃度が最大(=494)の色群3が「4位」に順位付けされている。
【0053】
次に、変換部20により、ステップ104の処理で得られた各色群毎の代表色の濃淡の順位に基づき、モノクロ画像上で各色群に割り当てる濃度を決定する処理が行われる(ステップ106)。第1実施形態では、変換前のカラー画像よりも変換後のモノクロ画像の方が濃度のダイナミックレンジ、すなわち濃度の最大値と最小値との差が大きくなるように、各色群に割り当てる濃度が決定される。
【0054】
具体的には、まず変換部20により、濃度値を表すデータのビット数nに応じて定まる理論上の濃度値の最小値(=0)〜最大値(=2n−1)の数値範囲を、画素リストの総数m、すなわち色群の総数に応じた複数の数値範囲に分割する処理が行われる。なお、個々の数値範囲は、それぞれの数値範囲の幅の差がなるべく小さくなるように決定される。本第1実施形態では、用紙に印刷するためのモノクロ画像を得ることを前提に、濃度値の最小値(=0)が用紙の下地色(紙白)に割り当てされるので、変換部20により、理論上の濃度値の最小値〜最大値の数値範囲が色群の総数mと同数の数値範囲に分割される。そして、変換部20により、分割した個々の数値範囲の境界に相当するm個の濃度値を抽出し、抽出したm個の濃度値を、各色群の代表色の濃淡の順位に応じて何れかの色群に割り当てる処理が行われる。図7に、分割した個々の数値範囲の境界に相当するm個の濃度値を示す。図7では、縦軸を濃度値とし、各色群の代表色濃度が、図右側の「○」で示す値のように、決定された状態を示している。図7に示すように、図左側の各色群の代表色濃度における各色群同士の差分よりも、図右側の○印で示されるステップS106で決定される濃度どうしの差分の方が大きくなる。これにより、変換前のカラー画像よりも変換後のモノクロ画像の方が濃度のダイナミックレンジが大きくなるように、各色群に割り当てる濃度が決定される。
【0055】
各色群に割り当てる濃度の決定について、具体例を挙げて更に説明すると、例えば濃度値を表すデータのビット数n=8とすると、理論上の濃度値の最大値は28−1=255となる。例えば色群の数=4で、濃度値の最小値(=0)を用紙の下地色(紙白)に割り当てるとすると、濃度値の最小値〜最大値の範囲が4個の数値範囲に分割され(図7も参照)、図6に示すように各色群に割り当てる濃度値の一例として「66」「129」「192」「255」が得られる。なお、この例では分割後の個々の数値範囲の幅(個々の色群に割り当てる濃度の差)がおよそ等しくなるように、濃度値の最小値〜最大値の範囲を4個の数値範囲に分割している。このように各数値範囲どうしの差分を凡そ等しくなるように分割することにより、モノクロ化処理の結果として出力された画像上で、異なる色群どうしの相違を視認しやすい状態にすることができる。
【0056】
そして図6の例では、各色群毎の代表色の濃淡の順位(昇順)が「1位」の色群1には最小の濃度値「66」が割り当てされ、各色群毎の代表色の濃淡の順位(昇順)が「2位」の色群2には2番目に小さい濃度値「129」が割り当てされる。また、各色群毎の代表色の濃淡の順位(昇順)が「3位」の色群4には3番目に小さい濃度値「192」が割り当てされ、各色群毎の代表色の濃淡の順位(昇順)が「4位」の色群3には最大の濃度値「255」が割り当てされる。
【0057】
続いて、変換部20により、自然画像抽出部14から出力された自然画像領域以外の画像領域のカラー画像データをモノクロ画像データへ変換する処理が行われる。すなわち、まず変換部20によって変数iに1が設定される(ステップ108)。次に、変換部20により、変換対象のカラー画像データのうち、色群iに含まれる各画素の色情報を、先のステップ106で色群iに割り当てた濃度を表す濃度情報へ各々変換する処理が行われる(ステップ110)。次に、変換部20により、変数iが画素リストの総数m(=色群の総数)に達したか否かが判定される(ステップ112)。この判定が否定された場合は、変換部20により、変数iを1だけインクリメントする処理が行われる(ステップ114)。
【0058】
ステップ114の処理が行われるとステップ110に戻り、ステップ112の判定が肯定される迄ステップ110〜ステップ114が繰り返される。そして、ステップ112の判定が肯定されると、変換処理が終了される。これにより、自然画像領域以外の画像領域のカラー画像は、個々の色群を単位として画素の濃度が異なり、かつ濃度のダイナミックレンジが拡大されたモノクロ画像へ変換される。
【0059】
なお、各色群毎に代表色の輝度を算出することなく、代表色の輝度の大小関係を考慮せずに、各色群に割り当てる輝度を決定してもよい。例えば、色群の輝度の順には関らずに、色群の総数に応じて各色群に割り当てる輝度を決定しても良い。その場合にはステップS102およびS104を省略する。ステップS102およびS104の処理を省略する場合には、ステップS100からステップS106へ処理を移行することができる。この場合には、ステップS106において、画素リストのリスト番号の順に基づいて各色群に対応する輝度を決定すればよい。
【0060】
このように、第1実施形態では、自然画像領域以外の画像領域、すなわち色分布に偏りがある画像領域のカラー画像データに対し、当該画像領域の色の分布を複数の色群に分割し、個々の色群毎に異なる階調表現として、異なる濃度を割り当てている。これにより、元のカラー画像上で色が相違する領域が、変換後のモノクロ画像上において、互いに濃度の異なる領域として再現されることで、元々は色の異なる領域として容易に視認可能にされる。
【0061】
例えば、文字が第1の色と第2の色とに色分けされた文章を表す文字画像をモノクロ化した場合、第1の色と第2の色の明度が近似していたとしても、元の文字画像上で第1の色の文字と第2の色の文字はモノクロ画像上で異なる濃度で再現される。従って、変換後のモノクロ画像における元のカラー画像上で色の異なる領域の識別性が向上する。
【0062】
また、第1実施形態では、カラー画像上での色群の輝度に応じて、モノクロ化する際に各色群に割り当てる輝度を決定する。これにより、カラー画像の見た目の濃淡の状態と、モノクロ化した画像の見た目の濃淡の状態を近づけることができ、カラー画像をモノクロ化したときの視認上の違和感を軽減できる。また、第1実施形態では、各色群に割り当てるそれぞれ輝度を、各輝度値どうしの差分を凡そ等しくなるように分割する決定する。これにより、モノクロ化処理の結果として出力された画像上で、異なる色群どうしの相違を視認しやすい状態にすることができる。
【0063】
〔第2実施形態〕
次に開示の技術の第2実施形態を説明する。なお、本第2実施形態は変換処理以外は先に説明した第1実施形態と同一であるので、各部分に同一の符号を付して構成の説明を省略し、以下、本第2実施形態に係る変換処理について、図8を参照して説明する。
【0064】
本第2実施形態に係る変換処理では、ステップ100〜ステップ104において、変換部20により、第1実施形態で説明した変換処理(図5)と同一の処理が行われる。次に、変換部20により、各色群毎の代表色の濃淡の順位に基づき、記憶部36に予め記憶された複数種のスクリーンパターンの中から、モノクロ画像上で各色群に割り当てるスクリーンパターンを決定する処理が行われる(ステップ120)。
【0065】
各色群へ割り当てるスクリーンパターンは、各色群に割り当てたスクリーンパターンの相違をモノクロ画像上で識別できるように選択される。例えば本実施形態に係るスクリーンパターンに適用可能な網点は、単位面積当りの面積率を変化させることで二値画像上で階調を表現する技術であり、網点の面積率や線数、パターンの形状、パターンの配列の角度は通常、出力解像度や濃淡等に応じて選択される。本実施形態では、網点のスクリーンパターンにおいて、網点の面積率、線数、パターンの形状、パターンの配列の角度の少なくとも1つを相違させることで、スクリーンパターンの相違をモノクロ画像上で識別できることを利用している。
【0066】
図9に、網点のスクリーンパターンのバリエーションの例を示す。網点のスクリーンパターンにおける網点の面積率を相違させた場合、図9(A)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。また、網点のスクリーンパターンにおける線数を相違させた場合も、図9(B)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。また、網点のスクリーンパターンにおけるパターンの形状を相違させた場合も、図9(C)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。更に、網点のスクリーンパターンにおけるパターンの配列の角度を相違させた場合も、図9(D)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。
【0067】
このため、記憶部36に記憶された複数種のスクリーンパターンが網点のスクリーンパターンである場合、変換部20による、モノクロ画像上で各色群に割り当てるスクリーンパターンの決定は、以下のように行われる。すなわち、変換部20は、まず網点の面積率、線数、パターンの形状、パターンの配列の角度の少なくとも1つが互いに異なり、かつモノクロ画像上で階調表現の異なるパターンとして認識されるスクリーンパターンを色群の数と同数選択する。そして変換部20は、選択したスクリーンパターンを、個々のスクリーンパターンが表す濃淡に応じて順位付けし、個々のスクリーンパターンを、代表色の濃淡の順位が同一の色群に割り当てる。これにより、個々の色群には、個々の色群の代表色の濃淡の順位に応じたスクリーンパターンが割り当てられる。
【0068】
また、本第2実施形態において、変換部20は、色群iに含まれる各画素の色情報を濃度情報へ変換する処理(図5のステップ110)に代えて、色群iの画素に対応する領域を、色群iに割り当てたスクリーンパターンの領域へ変換する処理を行う(ステップ122)。上記処理が個々の色群について各々行われることで、元のカラー画像上で色が相違する領域が、変換後のモノクロ画像上において、互いにスクリーンパターン、すなわち階調表現の種類が異なる領域として再現される。従って、変換後のモノクロ画像上でスクリーンパターンが異なる領域が元々は色の異なる領域として識別されることになる。
【0069】
なお、各色群毎に代表色の濃度を算出することなく、代表色の濃度の大小関係を考慮せずに、各色群に割り当てるスクリーンパターンを決定してもよい。例えば、色群の総数に応じて各色群に割り当てるスクリーンパターンを決定しても良い。その場合にはステップS102およびS104を省略する。ステップS102およびS104の処理を省略する場合には、ステップS100からステップS120へ処理を移行することができる。この場合には、ステップS120において、画素リストのリスト番号の順に基づいて各色群に対応するスクリーンパターンを決定すればよい。
【0070】
このように、第2実施形態では、自然画像領域以外の画像領域(色分布に偏りがある画像領域)のカラー画像データに対し、当該画像領域の色の分布を複数の色群に分割し、個々の色群毎に異なる階調表現として、異なるスクリーンパターンを割り当てている。これにより、元のカラー画像上で色が相違する領域が、変換後のモノクロ画像上において、互いにスクリーンパターンの異なる領域として再現されることで、元々は色の異なる領域として容易に視認可能にされる。
【0071】
また、第2実施形態では、カラー画像上での色群の濃度に応じて、モノクロ化する際に各色群に割り当てるスクリーンパターンを決定する。これにより、カラー画像の見た目の濃淡の状態と、モノクロ化した画像の見た目の濃淡の状態を近づけることができ、カラー画像をモノクロ化したときの視認上の違和感を軽減できる。
【0072】
なお、第1実施形態では、濃度値のビット数nに応じて定まる理論上の濃度値の最小値〜最大値の数値範囲を、色群の総数mに応じた数の数値範囲に分割し、各色群に割り当てる濃度値を決定していたが、これに限定されるものではない。例えば、各色群毎の代表色の濃度が予め設定された値以上相違している等の場合には、各色群毎の代表色の濃度をそのまま各色群に割り当てるようにしてもよい。
【0073】
また、第2実施形態では、網点の面積率、線数、パターンの形状、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを各色群に割り当てる態様を説明したが、これに限定されるものではない。例えば線数、パターンの形状、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを各色群に割り当てると共に、各色群に割り当てたスクリーンパターンにおける網点面積率を、各色群毎の代表色の濃度に応じて変化させてもよい。
【0074】
また例えば、複数の色群が、例えば、濃い赤と薄い赤のように、元のカラー画像上においては同じ色味で輝度が異なる関係にある場合に、同じ色味をもつ複数の色群には、同一の線数またはパターン形状またはパターン配列のスクリーンパターンを割り当てると共に、網点面積率を、各色群毎の代表色の濃度に応じて変化させてもよい。このように色群にスクリーンパターンを割り当てることで、変換後のモノクロ画像の見た目を、変換前のカラー画像の見た目により近づけることができる。これらの態様も開示の技術の権利範囲に含まれる。
【0075】
また、第2実施形態で用いるスクリーンパターンは、網点のスクリーンパターンに限られるものではなく、モノクロ画像上で異なるパターンとして認識されるものであればよいので、例として図10に示すようなスクリーンパターンを用いてもよい。例えば図10(A)に示すスクリーンパターン130は右下がりの斜線が一定間隔で配列されたパターンであり、図10(B)に示すスクリーンパターン132は右上がりの斜線が一定間隔で配列されたパターンである。また、図10(C)に示すスクリーンパターン134は上下方向に沿った直線が一定間隔で配列されたパターンであり、図10(D)に示すスクリーンパターン136は右上がりでスクリーンパターン132よりも太い斜線が一定間隔で配列されたパターンである。また、図10(E)に示すスクリーンパターン138は水平方向に沿った波線が一定間隔で配列されたパターンであり、図10(F)に示すスクリーンパターン140は各々矩形状の白領域と黒領域が交互に配列されたパターンである。
【0076】
図10に示したスクリーンパターン130〜140もモノクロ画像上で互いに異なるパターンとして認識されるので、これらのスクリーンパターンを記憶部36に記憶しておき、色群の数と同数のパターンを選択的に用いるようにしてもよい。また、第2実施形態で用いるスクリーンパターンは、上記に限られるものではなく、実線、点線、一点鎖線、波状線、太線などのように、線種の別であっても構わない。
【0077】
また、上記では各色群毎に代表色の濃度を算出し、算出した濃度の大小関係に基づいて、各色群に割り当てる濃度又はスクリーンパターンを決定する態様を説明したが、これに限定されるものではない。一例として、各色群毎に代表色の輝度を算出し、算出した輝度の大小関係に基づいて、各色群に割り当てる輝度又はスクリーンパターンを決定する態様も開示の技術の権利範囲に含まれる。
【0078】
更に、上記では自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を設けた態様を説明したが、これに限定されるものではない。例えば、画像取得部12によって自然画像領域を含まないカラー画像が取得される場合は、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24は省略することも可能である。
【0079】
また、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させるか否かをユーザが選択入力をすることも可能である。例えば草稿確認用の下版を出力する場合のように、図については絵柄の全体の雰囲気さえ視認できればよい場合に、ユーザは、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させない指示を入力することができる。入力の仕方の一例として、ユーザが高精細モードの出力形態を選択した場合には、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させ、低精細モード(もしくは高速モード)の出力形態を選択した場合には自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させないようにすることが考えられる。
【0080】
自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24の動作が省略される場合には、画像取得部12で取得されたカラー画像は、色群分割部16に入力される。色群分割部16、代表色算出部18の動作は、実施形態1と同様である。そして、変換部20は、出力結果を画像合成部24に出力する代わりに、画像出力部26へ出力することになる。
【0081】
また、上記では、互いに異なる色群に含まれる各画素群毎にモノクロ画像の濃度を相違させる態様と、互いに異なる色群に含まれる各画素群毎にモノクロ画像の階調表現の種類(スクリーンパターン)を相違させる態様を説明したが、これに限定されるものではない。例えば、互いに異なる色群に含まれる各画素群毎に、濃度及び階調表現の種類を各々相違させるようにしてもよい。
【0082】
また、上記では色群分割部16が、画素同士の色差が小さい順に、画素同士の色を同一の色群に組み入れることを繰り返すことで、画像の画素毎の色の分布を複数の色群に分割する処理方式を説明したが、これに限定されるものではない。色群分割部16では、処理対象とするカラー画像の中で使われている色の数を何色とみなせるかを決定できればよい。すなわち、色群分割部16の動作は、画素値の類似度合いに基づいて、画素値が類似しているとみなせる画素同士を同一の色群としてグルーピングできればよい。例えば、画像データの画素ごとの値に基づいて、色座標上に各画素をプロットし、該プロットした画素が、互いに所定の範囲内に存在する画素を一つの色群とみなす、即ち、色座標上での色の分布に基づいて、色群に分割することも可能である。この場合、所定の範囲を示す値は、第一実施形態に記載したように、予め設定された値を用いることができる。また例えば、画像の画素毎の値に基づいて、該値が示す色の分布を示すヒストグラムを作成し、作成したヒストグラムにおける谷の位置(頻度が極小となっている位置)で色の分布を分割することで、画像の画素毎の色の分布を複数の色群に分割する方式等の他の方式を適用することも可能である。
【0083】
また例えば、ステップ88の処理を変更し、ステップ72で読み込んだ現在の処理対象の画素と画素リストに登録済みの画素との中から、一時的な処理対象画素を一つ選択し、画素リストに登録されている代表色のうち、一時的な処理対象画素とで、同一とみなせる色差の範囲で色差が最小の代表色を探索しても良い。同一と見なせる色差の範囲は、ステップ76と同じ条件が適用できる。その場合には、ステップ90において、ステップ88で抽出された代表色が登録されている画素リストのレコードに、一時的な処理対象画素の情報を追加して登録する。
【0084】
ステップ88において一時的に処理対象とした画素がステップ72で読み込んだ現在の処理対象の画素である場合、ステップ90では、ステップ88において抽出された代表色が登録されているレコードに、一時的な処理対象の画素の情報を追加登録する処理が、上述のステップ82と同様に行われる。また、ステップ88において一時的に処理対象とした画素がステップ72で読み込んだ現在の処理対象の画素ではない、すなわち画素リストに登録済みの画素である場合、ステップ90では、一時的な処理対象の画素の情報をステップ88において抽出された代表色が登録されているレコードに移動させる処理が行われる。
【0085】
また例えば、中央値分割法(median cut algorithm)を用いて、画像の画素毎の色の分布を複数の色群に分割しても構わない。中央値分割法では、まず原画像のRGB空間における色分布に外接する直方体を考え、RGB3軸のうち、直方体の最も長い辺に平行な軸で、原画像の総画素数を等分するように直方体を2分する。この処理を繰り返すことで直方体を細分化し、最後に同数の画素からなるN個の直方体を生成し、各直方体内の色データの平均値を代表色とする。中央値分割法において2分する軸は最も長い軸ではなく、最も分散の大きい軸としても良い。
【0086】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【0087】
以上の実施形態に関し、さらに以下の付記を開示する。
【0088】
(付記1)入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割部と、前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換部と、を含む画像処理装置。
【0089】
(付記2)前記分割部に入力される前記カラー画像は、自然画像領域を含まないカラー画像である付記1記載の画像処理装置。
【0090】
(付記3)前記分割部は、入力された前記カラー画像に対し、画素同士の色差が小さい順に、前記画素同士の色を同一の色群に組み入れることを繰り返すことで、前記カラー画像の画素毎の色を前記複数の色群に分割する付記1又は付記2に記載の画像処理装置。
【0091】
(付記4)前記分割部による分割によって得られた個々の前記色群毎に代表色を各々求める代表色算出部を更に備え、前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる階調表現を各々決定する付記1乃至付記3の何れか1項に記載の画像処理装置。
【0092】
(付記5)前記階調表現は濃度であって、前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度の大小関係に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる濃度の大小関係を決定する付記4記載の画像処理装置。
【0093】
(付記6)前記階調表現は濃度であって、前記変換部は、個々の前記色群の何れかに対応する個々の画素群に割り当てる濃度を、前記カラー画像よりも前記モノクロ画像の方が画像中の濃度の最大値と最小値の差が大きくなるように決定する付記1乃至付記5の何れか1項に記載の画像処理装置。
【0094】
(付記7)前記階調表現は濃度であって、前記変換部は、濃度の最大値を前記色群の数で割った値に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる濃度を決定する付記1乃至付記6の何れか1項に記載の画像処理装置。
【0095】
(付記8)前記階調表現はスクリーンパターンの別であって、前記変換部は、面積率、線数、パターン、及び、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを個々の前記色群の何れかに含まれる個々の画素群を単位として各々割り当て、前記カラー画像を、個々の画素の階調が個々の画素が属する前記画素群に割り当てたスクリーンパターンで表現されたモノクロ画像へ変換する付記1乃至付記4の何れか1項に記載の画像処理装置。
【0096】
(付記9)前記分割部は、入力された前記カラー画像の画素毎の色を、該色の数よりも少ない複数の色群に分割する付記1乃至付記8の何れか1項に記載の画像処理装置。
【0097】
(付記10)前記分割部は、入力された前記カラー画像の画素毎の色を、予め設定された前記色群の数と同数の前記色群に分割する付記1乃至付記9の何れか1項に記載の画像処理装置。
【0098】
(付記11)入力されたカラー画像に含まれる自然画像領域を抽出し、入力された前記カラー画像のうち抽出した前記自然画像領域以外の画像領域を前記分割部にカラー画像として入力する抽出部を更に備えた付記1乃至付記10の何れか1項に記載の画像処理装置。
【0099】
(付記12)前記抽出部は、入力された前記カラー画像を複数の単位領域に分割し、分割後の個々の単位領域毎に色分布の偏り度合いを演算し、演算した色分布の偏り度合いに基づいて個々の前記単位領域毎に前記自然画像領域か否かを判定する付記11記載の画像処理装置。
【0100】
(付記13)入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割ステップと、前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、を含む画像処理方法。
【0101】
(付記14)コンピュータに、入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の前記色群に分割する分割ステップと、前記カラー画像を、前記分割部による分割によって得られた個々の前記群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、を含む処理を実行させるための画像処理プログラム。
【符号の説明】
【0102】
10 画像処理装置
14 自然画像抽出部
16 色群分割部
18 代表色算出部
20 変換部
30 コンピュータ
32 CPU
34 メモリ
36 記憶部
40 画像処理プログラム
【技術分野】
【0001】
開示の技術は画像処理装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【0002】
カラー画像をモノクロ画像へ変換するにあたっては、一般にカラー画像の画素毎の輝度に基づいてモノクロ画像の画素毎の輝度が決定される。例えば、RGB色空間のRGB信号をLHC色空間のLHC信号へ変換し、変換後のLHC信号に対して色調整を行ってRGB信号へ再変換した後に、変換式Y=0.3R+0.6G+0.1Bを用いてモノクロ信号Yへ変換して出力する技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−16459号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
カラー画像の画素毎の輝度に基づいてモノクロ画像の画素毎の輝度を決定する場合、カラー画像上で輝度が同一の画素は、色が相違していても同一の輝度へ変換される場合がある。例えばモノクロ画像の各画素の輝度Lとして、RGB色空間のカラー画像における画素毎のRGB3色の平均輝度(L=(R+B+G)/3)を用いる場合、以下のように、カラー画像上で色の異なる画素のモノクロ画像上での輝度Lが等しくなる。
赤色画素:R=255,G=0,B=0:輝度L=(255+0+0)/3=85
緑色画素:R=0,G=255,B=0:輝度L=(0+255+0)/3=85
青色画素:R=0,G=0,B=255:輝度L=(0+0+255)/3=85
また、前記した変換式Y=0.3R+0.6G+0.1Bやその他の変換式を用いた場合にも、変換式で規定される輝度が同一の画素は、カラー画像上での色が相違していても、モノクロ画像上での輝度が等しくなる。これにより、変換前のカラー画像上での色の相違が変換後のモノクロ画像上で識別できなくなることで、モノクロ画像の視認性が低下する、という課題があった。
【0005】
開示の技術は、カラー画像を、当該カラー画像上での色の相違を識別可能なモノクロ画像へ変換することが目的である。
【課題を解決するための手段】
【0006】
開示の技術は、入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の前記群に分割する。そして開示の技術は、前記カラー画像を、前記分割によって得られた個々の前記群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する。
【発明の効果】
【0007】
開示の技術は、カラー画像を、当該カラー画像上での色の相違を識別可能なモノクロ画像へ変換することができる、という効果を有する。
【図面の簡単な説明】
【0008】
【図1】実施形態で説明した画像処理装置の機能ブロック図である。
【図2】画像処理装置として機能するコンピュータの概略ブロック図である。
【図3】色群分割・代表色算出処理の内容を示すフローチャートである。
【図4】色群分割結果の一例を示す概略図である。
【図5】第1実施形態に係る変換処理の内容を示すフローチャートである。
【図6】第1実施形態に係る変換処理の流れを一例を挙げて示す概略図である。
【図7】各色群へ割り当てる濃度の一例を示す線図である。
【図8】第2実施形態に係る変換処理の内容を示すフローチャートである。
【図9】スクリーンパターンのバリエーションの一例を示すイメージ図である。
【図10】スクリーンパターンのバリエーションの一例を示すイメージ図である。
【図11】画素リストに格納されるデータの一例を示す図である。
【発明を実施するための形態】
【0009】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。なお、以下で説明する実施形態では、自然画像領域を含むカラー画像に対して画像処理を行う態様を主に説明する。但し、処理対象とするカラー画像に自然画像領域が含まれていなくても構わない。また、以下で説明する実施形態では、明度もしくは濃度を輝度と表現する場合がある。また、各実施例は矛盾の無い範囲で組み合わせて実施しても構わない。
【0010】
〔第1実施形態〕
図1には、本実施形態に係る画像処理装置10の機能ブロック図が示されている。画像処理装置10はカラー画像をモノクロ画像へ変換する処理を行う。なお、モノクロ画像とは、1つの色を用い、該色の輝度の違いにより階調の違いを表現した画像を言う。画像処理装置10は画像取得部12、自然画像抽出部14、色群分割部16、代表色算出部18、変換部20、自然画像モノクロ化部22、画像合成部24及び画像出力部26を有する。
【0011】
画像処理装置10は、例えば図2に示すコンピュータ30で実現することができる。コンピュータ30はCPU32、メモリ34、不揮発性の記憶部36を有し、これらはバス38を介して互いに接続されている。なお、メモリ34はRAM(Random Access Memory)、ROM(Read Only Memory)等である。記憶部36はHDD(Hard Disk Drive)やフラッシュメモリ等によって実現できる。
【0012】
また、コンピュータ30のバス38を介して、不図示の入力装置、すなわちコンピュータの使用者により操作されると、その操作内容に応じて取得した情報をCPUへ送信する、例えばキーボードやマウスなどの装置が接続されている。また、バス38を介して、出力装置、即ち、コンピュータ30による処理結果を出力する、例えば表示装置や印刷装置が接続されている。また、コンピュータ30のバス38を介して、不図示のネットワークインタフェース、すなわち有線又は無線により他のコンピュータとの間で行われるデータの送受信の管理を行うインタフェース装置が接続されている。また、コンピュータ30のバス38を介して、不図示の媒体駆動装置、すなわち可搬記録媒体に書き込み及び読み出しを行うための装置が接続されていてもよい。
【0013】
記録媒体としての記憶部36には、コンピュータ30を画像処理装置10として機能させるための画像処理プログラム40が記憶されており、画像処理装置10で処理対象とするカラー画像の画像データを格納するための画像データ格納領域58が設けられている。CPU32は、画像処理プログラム40を記憶部36から読み出してメモリ34に展開し、画像処理プログラム40が有するプロセスを順次実行する。
【0014】
画像処理プログラム40は、画像取得プロセス42、自然画像抽出プロセス44、色群分割プロセス46、代表色算出プロセス48、変換プロセス50、自然画像モノクロ化プロセス52、画像合成プロセス54及び画像出力プロセス56を有する。CPU32は、画像取得プロセス42を実行することで、図1に示す画像取得部12として動作する。またCPU32は、自然画像抽出プロセス44を実行することで、図1に示す自然画像抽出部14として動作する。またCPU32は、色群分割プロセス46を実行することで、図1に示す色群分割部16として動作する。更にCPU32は、代表色算出プロセス48を実行することで、図1に示す代表色算出部18として動作する。またCPU32は、変換プロセス50を実行することで、図1に示す変換部20として動作する。またCPU32は、自然画像モノクロ化プロセス52を実行することで、図1に示す自然画像モノクロ化部22として動作する。更にCPU32は、画像合成プロセス54を実行することで、図1に示す画像合成部24として動作する。またCPU32は、画像出力プロセス56を実行することで、図1に示す画像出力部26として動作する。
【0015】
画像処理装置10がコンピュータ30で実現される場合、画像処理プログラム40を実行したコンピュータ30が、画像処理装置10として機能することになる。なお、ここでは画像処理プログラム40を記憶部36から読み出す場合を例示したが、画像処理プログラム40は、例えばCD−ROMやDVD−ROM等の任意の記録媒体から読み出して実行することが可能である。また、画像処理装置10は、例えば半導体集積回路、より詳しくはASIC(Application Specific Integrated Circuit)等で実現することも可能であり、画像処理装置10の各機能部は例えば電子回路等で実現することも可能である。
【0016】
画像取得部12は、画像処理装置10で処理対象とするカラー画像の画像データを取得する。画像取得部12としては、例えば記憶部36に設けられた画像データ格納領域58から処理対象のカラー画像の画像データを読み出すことで取得する構成を採用することができる。また画像取得部12は、外部に設けたスキャナ等の原稿読取装置、或いは、画像データを記憶する記憶部を備えた外部の情報処理装置から通信によって画像データを取得する通信ユニットであってもよい。また、画像取得部12は、画像を生成するアプリケーションから、該アプリケーションが生成したデータを受信するアプリケーションインタフェースであってもよい。なお、画像取得部12が通信ユニットである場合としては、例えば画像処理装置10として機能するコンピュータ30が、LAN(Local Area Network)やインターネット等の通信回線を介して前記外部の原稿読取装置や情報処理装置と接続された態様が挙げられる。
【0017】
なお、開示の技術によるモノクロ化の対象とするカラー画像としては、例えばコンピュータ30又は他のコンピュータ上で動作するアプリケーション・プログラムを用いて作成されたイラストやグラフ図等のカラー画像や、文字の色として複数色を用いた文字画像等が挙げられる。このため、本実施形態に係る画像処理装置10は、人工的に作成されたカラー画像、或いは、人工的に作成されたカラー画像が一部領域に配置された画像を処理対象としている。なお、処理対象の画像は、人工的に作成されたカラー画像の領域外に、自然画像(例えば写真の画像)の領域等が設けられた画像であってもよい。この種の画像の典型例としては、文字と画像とを組み合わせて作成された文書を読み取ることで得られた画像等が挙げられる。画像取得部12は上記のような画像の画像データを処理対象として取得する。
【0018】
また、画像取得部12によって取得されるカラー画像の画像データの色空間は、例えばRGB色空間やCMYK色空間、L*a*b*色空間、XYZ色空間等の公知の色空間の何れであってもよい。以下では、一例としてRGB色空間の画像データが画像取得部12によって取得されるものとして説明する。
【0019】
自然画像抽出部14は、画像取得部12によって取得された画像データが表す処理対象のカラー画像を自然画像の領域とそれ以外の領域とに分離する。具体的には、まず処理対象のカラー画像を複数の単位領域に分割し、単位領域内の画素単位の色の分布を個々の単位領域毎に求め、求めた色の分布の偏り度合いを評価する評価値を個々の単位領域毎に演算する。なお、上記の評価値としては、例えば単位領域内の各画素の色を色座標上にプロットしたときの分布範囲の大きさを用いることができる。即ち、例えば、色座標が2次元であれば面積、3次元であれば体積等を用いることができる。他の評価値を用いてもよい。
【0020】
次に、演算した評価値を個々の単位領域毎に基準値と比較し、比較結果に応じて個々の単位領域が自然画像の領域かそれ以外の領域かを判断する。自然画像は一般に様々な色の画素を含む、すなわち色の分布の偏りが小さい。なので、評価値が色の分布の偏りが小さいことを示す値、例えば前記分布範囲の大きさを表す評価値が基準値以上の場合、対応する単位領域は自然画像に対応する領域と判断できる。また、評価値が色の分布の偏りが大きいことを示す値、例えば前記分布範囲の大きさを表す評価値が基準値未満の場合、対応する単位領域は自然画像以外の領域、すなわち人工的に作成された画像領域と判断できる。そして、自然画像に対応すると判断した互いに隣接する単位領域を1つの領域に統合すると共に、自然画像以外と判断した互いに隣接する単位領域を1つの領域に統合する。これにより、処理対象のカラー画像は自然画像領域とそれ以外の画像領域とに分離される。もし、処理対象のカラー画像を構成する単位領域毎に、属性情報として、写真、すなわち自然画像であるのか、人工的に作成された画像なのかの別を示す情報が付されていれば、その属性情報を参照することで自然画像領域とそれ以外の画像領域とに分離しても構わない。なお、自然画像抽出部14は開示の技術における抽出部の一例として機能する。
【0021】
自然画像抽出部14は、処理対象のカラー画像のうち自然画像領域のカラー画像データを自然画像モノクロ化部22へ出力する。自然画像モノクロ化部22は、自然画像抽出部14から入力された自然画像領域のカラー画像データのうち各画素毎の色を表すデータを各画素の濃度を表すデータへ置き換えることで、自然画像領域のカラー画像データをモノクロ画像データへ変換する処理を行う。カラー画像データからモノクロ画像データへの変換には、例えば変換前のカラー画像データが表す各画素の色の明度成分を演算し、演算した明度成分からモノクロ画像における各画素の濃度を決定する、公知の各種処理の何れかを適用できる。
【0022】
具体的には、例えば、カラー画像データの色空間をRGB色空間からL*a*b*色空間へ変換し、変換後の各画素の明度L*の値からモノクロ画像データにおける各画素の濃度値を演算する処理を適用することができる。また、例えば各画素毎にR,G,B各色の値の平均値(=(R+G+B)/3)を演算し、演算した値をモノクロ画像データにおける各画素の濃度値として用いる処理を適用することもできる。また、例えばR,G,B各色の値に互いに異なる係数を乗じて加算した値(=r・R+g・G+b・B:但し、r,g,bは係数)を各画素毎に演算し、演算した値をモノクロ画像データにおける各画素の濃度値として用いる処理を適用することもできる。また、上記に代えてR,G,B各色の値の重み付き平均値を用いてもよい。自然画像モノクロ化部22は、上記処理で得られた自然画像領域のモノクロ画像データを画像合成部24へ出力する。
【0023】
また、自然画像抽出部14は、処理対象のカラー画像のうち自然画像領域以外の画像領域のカラー画像データを色群分割部16へ出力する。詳細は後述するが、色群分割部16は、自然画像抽出部14から入力された自然画像領域以外の画像領域のカラー画像データの画素毎の色の分布を複数の色群に分割する。代表色算出部18は、分割された個々の色群毎に代表色を算出する。また、変換部20は、個々の色群毎に算出された代表色に基づいて、個々の色群に割り当てる濃度を決定し、自然画像領域以外の画像領域の各画素の濃度を、各画素が含まれる色群に割り当てた濃度に一致させる処理を行う。これは、後述の変換処理に相当する処理である。そして変換部20は、上記処理で得られた自然画像領域以外の画像領域のモノクロ画像データを画像合成部24へ出力する。
【0024】
なお、色群分割部16は開示の技術における分割部の一例として機能し、代表色算出部18は開示の技術における代表色算出部の一例として機能し、変換部20は開示の技術における変換部の一例として機能する。
【0025】
画像合成部24は、自然画像モノクロ化部22から入力された自然画像領域のモノクロ画像データと、変換部20から入力された自然画像領域以外の画像領域のモノクロ画像データとを単一のモノクロ画像の画像データとして合成し、画像出力部26へ出力する。
【0026】
画像出力部26は、画像合成部24から入力された画像データが表すモノクロ画像を、利用者が視認可能な形態で出力する処理を行う。この処理としては、例えば画像を用紙に印刷する印刷装置へ画像データを出力し、入力された画像データが表すモノクロ画像を印刷装置によって用紙に印刷させる処理が挙げられる。また、画像処理装置10が印刷装置の一部として実装される場合には、画像出力部26は、印刷装置内の印刷ユニットへ印刷させる処理が上げられる。印刷装置の印刷方式は、電子写真方式やインクジェット方式、刷版印刷方式等の公知の印刷方式の何れでもよい。また、上記処理に代えて、画像を画面に表示する表示装置へ画像データを出力し、入力された画像データが表すモノクロ画像を表示装置の画面に表示させる処理を行ってもよい。
【0027】
次に第1実施形態の作用を説明する。カラー画像のモノクロ化には、前述した自然画像モノクロ化部22による処理と同様に、変換前のカラー画像における各画素の色から各画素の明度成分を演算し、演算した明度成分からモノクロ画像の各画素の濃度を決定する処理が適用されることが一般的である。自然画像では、隣り合う画素の色が同一であることは少なく、画素単位で色が相違している。このため、自然画像に対する一般的なモノクロ化処理において、元のカラー画像上で色が異なる一部の画素が変換後のモノクロ画像上で同一濃度で再現されたとしても、モノクロ画像の画質への影響は小さく、全体としては元のカラー画像の再現性は高い。
【0028】
一方、例えばイラストやグラフ図等のカラー画像や、文字の色として複数色を用いた文字画像のように、人工的に作成されたカラー画像は、一定色に塗り潰された領域、すなわち同一色の画素が連続している領域が画像中に散在している。すなわち、色分布に偏りがある画像だといえる。このような画像に対して従来技術のような一般的なモノクロ化処理を適用すると、元のカラー画像上で色が異なる部分が変換後のモノクロ画像上で同一濃度で再現されることが、元のカラー画像上で一定色に塗り潰されていた領域を単位として生じ得る。そして、元のカラー画像上で色が異なり変換後のモノクロ画像上で同一濃度で再現される領域が画像上で隣接していたとすると、変換後のモノクロ画像上において、各領域を元々の色が異なる領域として識別することが困難となる。
【0029】
具体例として、文章中の通常の文字が第1の色に着色され、文章中の特定部分に相当する文字が前記第1の色と異なる第2の色に着色された文章を含む文字画像をモノクロ化することを考える。ここで、第1の色と第2の色の輝度(明度)が大きく相違していれば、上記の文字画像に対して従来技術によるモノクロ化処理を適用したとしても、元の文字画像上で第1の色の文字と第2の色の文字とは変換後のモノクロ画像上で大きく異なる輝度で再現される。しかし、第1の色と第2の色との輝度が同一、或いは近似していたとすると、上記の文字画像に対して従来技術によるモノクロ化処理を適用した場合、元の文字画像上で第1の色の文字と第2の色の文字とが変換後のモノクロ画像上で同一又は近似した輝度で再現される。これにより、元の文字画像上で第1の色の文字と元の文字画像上で第2の色の文字とを、変換後のモノクロ画像上で識別することが不可能、或いは困難となる。
【0030】
また別の具体例として、グラフ図の中の第一の領域に第一の色が着色され、第一の領域とは異なる第二の領域に、第一の色とは異なる第二の色が着色されたグラフ図を含む画像をモノクロ化することを考える。上述の文字色の場合と同様に、従来技術によるモノクロ化処理を適用すると、第一の色と第二の色とが、モノクロ画像上で、同一または近似した輝度で表現される。例えば棒グラフや円グラフで隣り合う第一の領域と第二の領域が、モノクロ画像上では識別することが困難な状態になる。もちろん、グラフの種類は、これに限るものではなく、折れ線グラフのような、線状の領域を色で区別したグラフであっても同様の問題が発生する。
【0031】
このため、本実施形態ではモノクロ化を行うカラー画像のうち色分布に偏りが有る画像領域に対し、次に説明するように色群分割部16、代表色算出部18及び変換部20によってモノクロ化を行う。
【0032】
以下、まず色群分割部16及び代表色算出部18による色群分割・代表色算出処理の詳細について、図3を参照して説明する。図3に示す色群分割・代表色算出処理では、まず色群分割部16により、メモリ34の記憶領域のうち後述する画素リストの記憶領域をクリアし、メモリ34上の画素リストのレコードの総数mの記憶領域に0を設定する初期化処理が行われる(ステップ70)。続いて、色群分割部16により、自然画像抽出部14より入力された画像データ、すなわち自然画像領域以外の画像領域のカラー画像データから、処理対象の単一の画素のデータの読み込みが試行される(ステップ72)。次に、色群分割部16により、画像データの全ての画素に対して処理を完了したか否かが判定される(ステップ74)。この判定は、既に画像データの全画素のデータの読み込みが完了していたことで、ステップ72で新たな画素のデータを読み込めなかった場合に肯定される。そして、ステップ74の判定が肯定された場合は色群分割・代表色算出処理が終了する。
【0033】
一方、ステップ72で処理対象として新たな画素のデータを読み込めた場合は、ステップ74の判定が否定される。この場合、色群分割部16により、既に作成されている画素リストのレコードを対象として、処理対象の画素と同一とみなせる色差の範囲の画素の情報が登録されているか否かが探索される(ステップ76)。同一とみなせる色差は、予め、もしくは処理を実行する時点のパラメータとしてユーザにより設定されているものとする。例えば色空間上での画素間の距離や、画素値の成分の差の絶対値の総和が閾値として設定され、色差が閾値以下の距離または値である場合に二つの画素の値を同一と見なすことができる。
【0034】
続いて、色群分割部16により、ステップ76の探索で処理対象の画素と同一とみなせる色差の範囲の画素の情報が抽出されたか否かが判定される(ステップ78)。1個目の画素のデータを処理対象として読み込んだ段階では画素リスト内にレコードが未作成の状態であり、ステップ78の判定は否定される。ステップ78の判定が否定された場合、色群分割部16により、メモリ34に記憶されている画素リストのレコードの総数mが、予め設定された上限値に達したか否かが判定される(ステップ80)。
【0035】
1個目の画素のデータを処理対象として読み込んだ段階では画素リストの総数mも0であり、ステップ80の判定も否定される。ステップ80の判定が否定された場合、色群分割部16により、処理対象の画素が登録されたレコードを新規に作成する処理が行われる(ステップ84)。
【0036】
画素リストに格納されるデータの例を図11に示す。画素リスト200には、「リスト番号」「代表色情報」「登録された画素の総数」「登録された各画素の色と代表色との色差」「登録された各画素の色情報」の各項目について、対応する情報の登録領域が各々設けられて1つのレコード201となっている。「リスト番号」は、画素リストを構成するレコードの通番を示す情報である。「代表色情報」は、レコードに登録された全画素の平均色等の画素の値を示す情報である。「登録された画素の総数」は、レコードに登録された画素の総数を示す情報である。例えば、レコード201であれば、画素1と画素2の2個が登録されているので「2」が格納されている。
【0037】
「登録された各画素の色と代表色との色差」は、各レコードに登録されているそれぞれの画素の画素値と、代表色情報に示される画素値との色差を示す情報である。例えば、レコード201であれば、画素1と代表色との色差「■C1」、画素2と代表色との色差「■C2」が登録されている。「登
録された各画素の色情報」は、各レコードに登録されているそれぞれの画素の画素値を示す情報である。例えば、レコード201であれば、画素1の画素値「R1,G1,B1」、画素2の画素値「R2,G2,B2」が登録されている。
【0038】
色群分割部16によって画素リストのレコードが新規に作成される際には、「登録された画素の総数」が1に設定され、「代表色情報」及び「各画素の色情報」として処理対象の画素の色情報のみが登録されたレコードが作成される。続いて、色群分割部16により、メモリ34に記憶されているレコードの総数mが1だけインクリメントされる(ステップ86)。ステップ86の処理が終了するとステップ72に戻り、色群分割部16により、新たな画素のデータが処理対象の画素のデータとして読み込まれた後に、上述した処理が繰り返される。
【0039】
また、処理対象としてデータを読み込んだ画素が、色群分割処理で以前に処理対象とした画素と同一色であった場合は、ステップ76の探索で処理対象の画素と同一色の画素の情報が抽出されることで、ステップ78の判定が肯定されてステップ82へ移行する。この場合、色群分割部16及び代表色算出部18により、ステップ76の探索で抽出された同一色の画素の情報が登録されている画素リストのレコードに、処理対象の画素の情報を追加登録する処理が行われる(ステップ82)。
【0040】
具体的には、色群分割部16により、レコードの「リストに登録された画素の総数」が1だけインクリメントされると共に、「登録された各画素の色情報」に処理対象の画素の色情報が追加登録される。また、レコードの「登録された各画素の色情報」に登録されている複数の画素の色情報に基づき、代表色算出部18によって新たな代表色が算出され、レコードの「代表色情報」が算出された新たな代表色の情報へ更新される。更に、代表色算出部18によって、「登録された各画素の色情報」に登録されている各画素毎に新たな代表色との色差が演算され、レコードの「各画素の色と代表色との色差」も演算された色差へ更新される。
【0041】
なお、代表色としては、例えば1つのレコードに情報が登録されているそれぞれの全画素の各色成分(R,G,B)毎の平均色を用いることができる。これに代えて、例えばレコード内の全画素の色座標上での分布領域の重心位置に相当する色等、他の演算方法で演算される色を用いてもよい。また、各画素の色と代表色との色差としては、例えば次の(1)式で求まる色差ΔC(色座標上での各画素の色と代表色との距離)を用いることができるが、これに代えて他の演算方法で演算される色差を用いてもよい。
ΔC=√((Ri−R0)2+(Gi−G0)2+(Bi−B0)2) …(1)
但し、(1)式において、Ri,Gi,Biは各画素の各色成分毎の値を表し、R0,G0,B0は代表色の各色成分毎の値を表す。上述したステップ82の処理が終了するとステップ72に戻り、色群分割部16により、新たな画素のデータが処理対象の画素のデータとして読み込まれた後に、上述した処理が繰り返される。
【0042】
上述した処理により、画素リストのレコードの総数mが上限値に達する迄の間は、順次データが読み出される処理対象の画素のうち、同一色の他の画素が存在する画素は同一のレコードに情報が登録され、それ以外の画素は互いに異なるレコードに情報が登録される。また、レコードの総数mが上限値に達すると、ステップ80の判定が肯定されてステップ88へ移行する。
【0043】
この場合、色群分割部16により、現時点迄に処理対象とした画素すなわちステップ72で読み込んだ現在の処理対象の画素と、画素リストに情報が登録されている画素との中で、情報が登録されているレコードが異なり、かつ色差が最小の画素対を探索する処理が行われる(ステップ88)。該当する画素対が抽出されると、色群分割部16及び代表色算出部18により、探索で抽出された画素対のうちの一方の画素の情報が登録されている画素リストのレコードに、他方の画素の情報を登録する処理が行われる(ステップ90)。
【0044】
なお、ステップ88で抽出された画素対の一方がステップ72で読み込んだ現在の処理対象の画素である場合、ステップ90では、画素対の他方の画素の情報が登録されている画素リストのレコードに処理対象の画素、すなわち72で読み込んだ処理対象の画素の情報を追加登録する処理が、先のステップ82と同様にして行われる。また、ステップ88の探索で抽出された画素対が何れも画素リストに登録済みの画素である場合、ステップ90では、一方の画素の情報を他方の画素の情報が登録されている画素リストのレコードへ移動させる処理が行われる。この場合、情報の登録先レコードを移動させる画素は、画素対のうちの何れの画素でもよいが、「登録された画素の総数」の項目に格納されている値がより少ないレコードに情報が登録されている画素を移動対象とすることが好ましい。これは、後述するステップ88〜ステップ94のループの繰り返し回数が削減されることで、処理時間が短縮される可能性が高くなるためである。
【0045】
画素リストに登録済みの画素の登録先レコードを移動させる場合には、先のステップ82で説明した追加登録処理に加え、色群分割部16により、移動元の画素リストのレコードの「登録された各画素の色情報」から移動対象の画素の情報を削除し、「登録された画素の総数」を更新する処理が行われる。また、代表色算出部18により、移動元の画素リストのレコードの「代表色情報」を更新し、「各画素の色と代表色との色差」から移動対象の画素の情報を削除する処理が行われる。
【0046】
次に、色群分割部16により、ステップ72で読み込んだ現在の処理対象の画素の情報が何れかの画素リストのレコードに登録されたか否かが判定される(ステップ92)。この判定が否定された場合は、色群分割部16により、「登録された画素の総数」が0となった画素リストのレコード、すなわち空のレコードが出現したか否かが判定される(ステップ94)。この判定も否定された場合はステップ88に戻る。そして、処理対象の画素の情報が何れかの画素リストのレコードに登録されるか、処理対象の画素の情報を登録するための画素リストのレコードを新規作成することが可能な状態となる迄、ステップ88〜ステップ94が繰り返される。
【0047】
そして、処理対象の画素の情報が何れかの画素リストのレコードに登録された場合には、ステップ92の判定が肯定されてステップ72に戻る。また、空状態のレコードが出現した場合はステップ94の判定が肯定され、色群分割部16により、処理対象の画素が登録された画素リストのレコードを新規に作成する処理が行われ(ステップ96)、ステップ72に戻る。
【0048】
ステップ74の判定が肯定される迄、上述した処理が繰り返されることで、例えば画素リストのレコードの総数mの上限値=2の場合は2個以下のレコードが生成され、各画素の情報は2個以下のレコードの何れかに各々登録される。これにより、自然画像抽出部14より入力された画像データが表す画像領域の画素毎の色の分布は、例として画素のR値を横軸、B値を縦軸にとったイメージである図4(A)に示すように、異なる画素リストのレコードに情報が登録された2個の色群に分割される。また、例えば画素リストのレコード総数mの上限値=4の場合は4個以下のレコードが生成され、各画素の情報は4個以下のレコードの何れかに各々登録される。これにより、自然画像抽出部14より入力された画像データが表す画像領域の画素毎の色の分布は、例として画素のR値を横軸、B値を縦軸にとったイメージである図4(B)に示すように、異なるレコードに情報が登録された4個の色群に分割される。
【0049】
なお、1つの色群には、1以上の画素が含まれる。この1以上の画素を1の色群に対応する画素群とすると、1つの色群に含まれる画素群は、画面データ上では点在する場合もあれば、複数の箇所にまとまって位置する場合もあれば、1箇所にまとまって位置する場合も有る。1の色群に含まれる画素群の画面データ上での位置は、例えばXY座標で示される画面データ上のどの座標位置に各画素が存在するかによって決まる。
【0050】
続いて、変換部20による変換処理の詳細について、図5を参照して説明する。図5に示す変換処理では、まず変換部20により、各色群毎の代表色情報を複数の画素リストのレコードから各々読み込む処理が行われる(ステップ100)。次に、変換部20により、ステップ100で読み込んだ代表色情報に基づき、各色群毎の代表色の濃度を各々演算する処理が行われる(ステップ102)。
【0051】
本実施形態では、ここで演算する代表色の濃度を各色群毎の濃淡の順位付けに用いているので、代表色の濃度を正確に演算することは必須ではない。図6は第1実施形態に関る変換処理の流れを一例を挙げて示す概略図である。図6に示すように、代表色のR,G,B値のうちの一部、例えばR,Bの2つの値を加算した値を用いてもよい。図6に示す例では、色群1については、代表色がR0=2、B0=70で、両者を加算した値(=72)を代表色の濃度として用い、色群2については、代表色がR0=50、B0=52で、両者を加算した値(=102)を代表色の濃度として用いている。また、色群3については、代表色がR0=245、B0=294で、両者を加算した値(=494)を代表色の濃度として用い、色群4については、代表色がR0=202、B0=3で、両者を加算した値(=205)を代表色の濃度として用いている。勿論、代表色のR,G,B3色の値を加算した値を用いてもよいし、R,G,B3色のいずれかまたは全てを用いて、各値に予め設定された係数を乗じて加算した値を用いてもよい。
【0052】
次に、変換部20により、ステップ102で演算した各色群毎の代表色の濃度を、当該濃度の大小関係に応じた順序として、昇順又は降順に並べ替え、各色群毎の代表色の濃淡を順位付けする処理が行われる(ステップ104)。例えば図6に示す例では、各色群毎の代表色の濃度の昇順に各色群毎の代表色の濃淡を順位付けしており、代表色の濃度が最小(=72)の色群1が「1位」に、代表色の濃度が2番目に小さい(=102)色群2が「2位」に順位付けされている。また、代表色の濃度が2番目に大きい(=205)色群4が「3位」に、代表色の濃度が最大(=494)の色群3が「4位」に順位付けされている。
【0053】
次に、変換部20により、ステップ104の処理で得られた各色群毎の代表色の濃淡の順位に基づき、モノクロ画像上で各色群に割り当てる濃度を決定する処理が行われる(ステップ106)。第1実施形態では、変換前のカラー画像よりも変換後のモノクロ画像の方が濃度のダイナミックレンジ、すなわち濃度の最大値と最小値との差が大きくなるように、各色群に割り当てる濃度が決定される。
【0054】
具体的には、まず変換部20により、濃度値を表すデータのビット数nに応じて定まる理論上の濃度値の最小値(=0)〜最大値(=2n−1)の数値範囲を、画素リストの総数m、すなわち色群の総数に応じた複数の数値範囲に分割する処理が行われる。なお、個々の数値範囲は、それぞれの数値範囲の幅の差がなるべく小さくなるように決定される。本第1実施形態では、用紙に印刷するためのモノクロ画像を得ることを前提に、濃度値の最小値(=0)が用紙の下地色(紙白)に割り当てされるので、変換部20により、理論上の濃度値の最小値〜最大値の数値範囲が色群の総数mと同数の数値範囲に分割される。そして、変換部20により、分割した個々の数値範囲の境界に相当するm個の濃度値を抽出し、抽出したm個の濃度値を、各色群の代表色の濃淡の順位に応じて何れかの色群に割り当てる処理が行われる。図7に、分割した個々の数値範囲の境界に相当するm個の濃度値を示す。図7では、縦軸を濃度値とし、各色群の代表色濃度が、図右側の「○」で示す値のように、決定された状態を示している。図7に示すように、図左側の各色群の代表色濃度における各色群同士の差分よりも、図右側の○印で示されるステップS106で決定される濃度どうしの差分の方が大きくなる。これにより、変換前のカラー画像よりも変換後のモノクロ画像の方が濃度のダイナミックレンジが大きくなるように、各色群に割り当てる濃度が決定される。
【0055】
各色群に割り当てる濃度の決定について、具体例を挙げて更に説明すると、例えば濃度値を表すデータのビット数n=8とすると、理論上の濃度値の最大値は28−1=255となる。例えば色群の数=4で、濃度値の最小値(=0)を用紙の下地色(紙白)に割り当てるとすると、濃度値の最小値〜最大値の範囲が4個の数値範囲に分割され(図7も参照)、図6に示すように各色群に割り当てる濃度値の一例として「66」「129」「192」「255」が得られる。なお、この例では分割後の個々の数値範囲の幅(個々の色群に割り当てる濃度の差)がおよそ等しくなるように、濃度値の最小値〜最大値の範囲を4個の数値範囲に分割している。このように各数値範囲どうしの差分を凡そ等しくなるように分割することにより、モノクロ化処理の結果として出力された画像上で、異なる色群どうしの相違を視認しやすい状態にすることができる。
【0056】
そして図6の例では、各色群毎の代表色の濃淡の順位(昇順)が「1位」の色群1には最小の濃度値「66」が割り当てされ、各色群毎の代表色の濃淡の順位(昇順)が「2位」の色群2には2番目に小さい濃度値「129」が割り当てされる。また、各色群毎の代表色の濃淡の順位(昇順)が「3位」の色群4には3番目に小さい濃度値「192」が割り当てされ、各色群毎の代表色の濃淡の順位(昇順)が「4位」の色群3には最大の濃度値「255」が割り当てされる。
【0057】
続いて、変換部20により、自然画像抽出部14から出力された自然画像領域以外の画像領域のカラー画像データをモノクロ画像データへ変換する処理が行われる。すなわち、まず変換部20によって変数iに1が設定される(ステップ108)。次に、変換部20により、変換対象のカラー画像データのうち、色群iに含まれる各画素の色情報を、先のステップ106で色群iに割り当てた濃度を表す濃度情報へ各々変換する処理が行われる(ステップ110)。次に、変換部20により、変数iが画素リストの総数m(=色群の総数)に達したか否かが判定される(ステップ112)。この判定が否定された場合は、変換部20により、変数iを1だけインクリメントする処理が行われる(ステップ114)。
【0058】
ステップ114の処理が行われるとステップ110に戻り、ステップ112の判定が肯定される迄ステップ110〜ステップ114が繰り返される。そして、ステップ112の判定が肯定されると、変換処理が終了される。これにより、自然画像領域以外の画像領域のカラー画像は、個々の色群を単位として画素の濃度が異なり、かつ濃度のダイナミックレンジが拡大されたモノクロ画像へ変換される。
【0059】
なお、各色群毎に代表色の輝度を算出することなく、代表色の輝度の大小関係を考慮せずに、各色群に割り当てる輝度を決定してもよい。例えば、色群の輝度の順には関らずに、色群の総数に応じて各色群に割り当てる輝度を決定しても良い。その場合にはステップS102およびS104を省略する。ステップS102およびS104の処理を省略する場合には、ステップS100からステップS106へ処理を移行することができる。この場合には、ステップS106において、画素リストのリスト番号の順に基づいて各色群に対応する輝度を決定すればよい。
【0060】
このように、第1実施形態では、自然画像領域以外の画像領域、すなわち色分布に偏りがある画像領域のカラー画像データに対し、当該画像領域の色の分布を複数の色群に分割し、個々の色群毎に異なる階調表現として、異なる濃度を割り当てている。これにより、元のカラー画像上で色が相違する領域が、変換後のモノクロ画像上において、互いに濃度の異なる領域として再現されることで、元々は色の異なる領域として容易に視認可能にされる。
【0061】
例えば、文字が第1の色と第2の色とに色分けされた文章を表す文字画像をモノクロ化した場合、第1の色と第2の色の明度が近似していたとしても、元の文字画像上で第1の色の文字と第2の色の文字はモノクロ画像上で異なる濃度で再現される。従って、変換後のモノクロ画像における元のカラー画像上で色の異なる領域の識別性が向上する。
【0062】
また、第1実施形態では、カラー画像上での色群の輝度に応じて、モノクロ化する際に各色群に割り当てる輝度を決定する。これにより、カラー画像の見た目の濃淡の状態と、モノクロ化した画像の見た目の濃淡の状態を近づけることができ、カラー画像をモノクロ化したときの視認上の違和感を軽減できる。また、第1実施形態では、各色群に割り当てるそれぞれ輝度を、各輝度値どうしの差分を凡そ等しくなるように分割する決定する。これにより、モノクロ化処理の結果として出力された画像上で、異なる色群どうしの相違を視認しやすい状態にすることができる。
【0063】
〔第2実施形態〕
次に開示の技術の第2実施形態を説明する。なお、本第2実施形態は変換処理以外は先に説明した第1実施形態と同一であるので、各部分に同一の符号を付して構成の説明を省略し、以下、本第2実施形態に係る変換処理について、図8を参照して説明する。
【0064】
本第2実施形態に係る変換処理では、ステップ100〜ステップ104において、変換部20により、第1実施形態で説明した変換処理(図5)と同一の処理が行われる。次に、変換部20により、各色群毎の代表色の濃淡の順位に基づき、記憶部36に予め記憶された複数種のスクリーンパターンの中から、モノクロ画像上で各色群に割り当てるスクリーンパターンを決定する処理が行われる(ステップ120)。
【0065】
各色群へ割り当てるスクリーンパターンは、各色群に割り当てたスクリーンパターンの相違をモノクロ画像上で識別できるように選択される。例えば本実施形態に係るスクリーンパターンに適用可能な網点は、単位面積当りの面積率を変化させることで二値画像上で階調を表現する技術であり、網点の面積率や線数、パターンの形状、パターンの配列の角度は通常、出力解像度や濃淡等に応じて選択される。本実施形態では、網点のスクリーンパターンにおいて、網点の面積率、線数、パターンの形状、パターンの配列の角度の少なくとも1つを相違させることで、スクリーンパターンの相違をモノクロ画像上で識別できることを利用している。
【0066】
図9に、網点のスクリーンパターンのバリエーションの例を示す。網点のスクリーンパターンにおける網点の面積率を相違させた場合、図9(A)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。また、網点のスクリーンパターンにおける線数を相違させた場合も、図9(B)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。また、網点のスクリーンパターンにおけるパターンの形状を相違させた場合も、図9(C)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。更に、網点のスクリーンパターンにおけるパターンの配列の角度を相違させた場合も、図9(D)に示すように、モノクロ画像上の各々のスクリーンパターンの領域は階調表現の異なる領域として認識される。
【0067】
このため、記憶部36に記憶された複数種のスクリーンパターンが網点のスクリーンパターンである場合、変換部20による、モノクロ画像上で各色群に割り当てるスクリーンパターンの決定は、以下のように行われる。すなわち、変換部20は、まず網点の面積率、線数、パターンの形状、パターンの配列の角度の少なくとも1つが互いに異なり、かつモノクロ画像上で階調表現の異なるパターンとして認識されるスクリーンパターンを色群の数と同数選択する。そして変換部20は、選択したスクリーンパターンを、個々のスクリーンパターンが表す濃淡に応じて順位付けし、個々のスクリーンパターンを、代表色の濃淡の順位が同一の色群に割り当てる。これにより、個々の色群には、個々の色群の代表色の濃淡の順位に応じたスクリーンパターンが割り当てられる。
【0068】
また、本第2実施形態において、変換部20は、色群iに含まれる各画素の色情報を濃度情報へ変換する処理(図5のステップ110)に代えて、色群iの画素に対応する領域を、色群iに割り当てたスクリーンパターンの領域へ変換する処理を行う(ステップ122)。上記処理が個々の色群について各々行われることで、元のカラー画像上で色が相違する領域が、変換後のモノクロ画像上において、互いにスクリーンパターン、すなわち階調表現の種類が異なる領域として再現される。従って、変換後のモノクロ画像上でスクリーンパターンが異なる領域が元々は色の異なる領域として識別されることになる。
【0069】
なお、各色群毎に代表色の濃度を算出することなく、代表色の濃度の大小関係を考慮せずに、各色群に割り当てるスクリーンパターンを決定してもよい。例えば、色群の総数に応じて各色群に割り当てるスクリーンパターンを決定しても良い。その場合にはステップS102およびS104を省略する。ステップS102およびS104の処理を省略する場合には、ステップS100からステップS120へ処理を移行することができる。この場合には、ステップS120において、画素リストのリスト番号の順に基づいて各色群に対応するスクリーンパターンを決定すればよい。
【0070】
このように、第2実施形態では、自然画像領域以外の画像領域(色分布に偏りがある画像領域)のカラー画像データに対し、当該画像領域の色の分布を複数の色群に分割し、個々の色群毎に異なる階調表現として、異なるスクリーンパターンを割り当てている。これにより、元のカラー画像上で色が相違する領域が、変換後のモノクロ画像上において、互いにスクリーンパターンの異なる領域として再現されることで、元々は色の異なる領域として容易に視認可能にされる。
【0071】
また、第2実施形態では、カラー画像上での色群の濃度に応じて、モノクロ化する際に各色群に割り当てるスクリーンパターンを決定する。これにより、カラー画像の見た目の濃淡の状態と、モノクロ化した画像の見た目の濃淡の状態を近づけることができ、カラー画像をモノクロ化したときの視認上の違和感を軽減できる。
【0072】
なお、第1実施形態では、濃度値のビット数nに応じて定まる理論上の濃度値の最小値〜最大値の数値範囲を、色群の総数mに応じた数の数値範囲に分割し、各色群に割り当てる濃度値を決定していたが、これに限定されるものではない。例えば、各色群毎の代表色の濃度が予め設定された値以上相違している等の場合には、各色群毎の代表色の濃度をそのまま各色群に割り当てるようにしてもよい。
【0073】
また、第2実施形態では、網点の面積率、線数、パターンの形状、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを各色群に割り当てる態様を説明したが、これに限定されるものではない。例えば線数、パターンの形状、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを各色群に割り当てると共に、各色群に割り当てたスクリーンパターンにおける網点面積率を、各色群毎の代表色の濃度に応じて変化させてもよい。
【0074】
また例えば、複数の色群が、例えば、濃い赤と薄い赤のように、元のカラー画像上においては同じ色味で輝度が異なる関係にある場合に、同じ色味をもつ複数の色群には、同一の線数またはパターン形状またはパターン配列のスクリーンパターンを割り当てると共に、網点面積率を、各色群毎の代表色の濃度に応じて変化させてもよい。このように色群にスクリーンパターンを割り当てることで、変換後のモノクロ画像の見た目を、変換前のカラー画像の見た目により近づけることができる。これらの態様も開示の技術の権利範囲に含まれる。
【0075】
また、第2実施形態で用いるスクリーンパターンは、網点のスクリーンパターンに限られるものではなく、モノクロ画像上で異なるパターンとして認識されるものであればよいので、例として図10に示すようなスクリーンパターンを用いてもよい。例えば図10(A)に示すスクリーンパターン130は右下がりの斜線が一定間隔で配列されたパターンであり、図10(B)に示すスクリーンパターン132は右上がりの斜線が一定間隔で配列されたパターンである。また、図10(C)に示すスクリーンパターン134は上下方向に沿った直線が一定間隔で配列されたパターンであり、図10(D)に示すスクリーンパターン136は右上がりでスクリーンパターン132よりも太い斜線が一定間隔で配列されたパターンである。また、図10(E)に示すスクリーンパターン138は水平方向に沿った波線が一定間隔で配列されたパターンであり、図10(F)に示すスクリーンパターン140は各々矩形状の白領域と黒領域が交互に配列されたパターンである。
【0076】
図10に示したスクリーンパターン130〜140もモノクロ画像上で互いに異なるパターンとして認識されるので、これらのスクリーンパターンを記憶部36に記憶しておき、色群の数と同数のパターンを選択的に用いるようにしてもよい。また、第2実施形態で用いるスクリーンパターンは、上記に限られるものではなく、実線、点線、一点鎖線、波状線、太線などのように、線種の別であっても構わない。
【0077】
また、上記では各色群毎に代表色の濃度を算出し、算出した濃度の大小関係に基づいて、各色群に割り当てる濃度又はスクリーンパターンを決定する態様を説明したが、これに限定されるものではない。一例として、各色群毎に代表色の輝度を算出し、算出した輝度の大小関係に基づいて、各色群に割り当てる輝度又はスクリーンパターンを決定する態様も開示の技術の権利範囲に含まれる。
【0078】
更に、上記では自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を設けた態様を説明したが、これに限定されるものではない。例えば、画像取得部12によって自然画像領域を含まないカラー画像が取得される場合は、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24は省略することも可能である。
【0079】
また、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させるか否かをユーザが選択入力をすることも可能である。例えば草稿確認用の下版を出力する場合のように、図については絵柄の全体の雰囲気さえ視認できればよい場合に、ユーザは、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させない指示を入力することができる。入力の仕方の一例として、ユーザが高精細モードの出力形態を選択した場合には、自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させ、低精細モード(もしくは高速モード)の出力形態を選択した場合には自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24を動作させないようにすることが考えられる。
【0080】
自然画像抽出部14、自然画像モノクロ化部22及び画像合成部24の動作が省略される場合には、画像取得部12で取得されたカラー画像は、色群分割部16に入力される。色群分割部16、代表色算出部18の動作は、実施形態1と同様である。そして、変換部20は、出力結果を画像合成部24に出力する代わりに、画像出力部26へ出力することになる。
【0081】
また、上記では、互いに異なる色群に含まれる各画素群毎にモノクロ画像の濃度を相違させる態様と、互いに異なる色群に含まれる各画素群毎にモノクロ画像の階調表現の種類(スクリーンパターン)を相違させる態様を説明したが、これに限定されるものではない。例えば、互いに異なる色群に含まれる各画素群毎に、濃度及び階調表現の種類を各々相違させるようにしてもよい。
【0082】
また、上記では色群分割部16が、画素同士の色差が小さい順に、画素同士の色を同一の色群に組み入れることを繰り返すことで、画像の画素毎の色の分布を複数の色群に分割する処理方式を説明したが、これに限定されるものではない。色群分割部16では、処理対象とするカラー画像の中で使われている色の数を何色とみなせるかを決定できればよい。すなわち、色群分割部16の動作は、画素値の類似度合いに基づいて、画素値が類似しているとみなせる画素同士を同一の色群としてグルーピングできればよい。例えば、画像データの画素ごとの値に基づいて、色座標上に各画素をプロットし、該プロットした画素が、互いに所定の範囲内に存在する画素を一つの色群とみなす、即ち、色座標上での色の分布に基づいて、色群に分割することも可能である。この場合、所定の範囲を示す値は、第一実施形態に記載したように、予め設定された値を用いることができる。また例えば、画像の画素毎の値に基づいて、該値が示す色の分布を示すヒストグラムを作成し、作成したヒストグラムにおける谷の位置(頻度が極小となっている位置)で色の分布を分割することで、画像の画素毎の色の分布を複数の色群に分割する方式等の他の方式を適用することも可能である。
【0083】
また例えば、ステップ88の処理を変更し、ステップ72で読み込んだ現在の処理対象の画素と画素リストに登録済みの画素との中から、一時的な処理対象画素を一つ選択し、画素リストに登録されている代表色のうち、一時的な処理対象画素とで、同一とみなせる色差の範囲で色差が最小の代表色を探索しても良い。同一と見なせる色差の範囲は、ステップ76と同じ条件が適用できる。その場合には、ステップ90において、ステップ88で抽出された代表色が登録されている画素リストのレコードに、一時的な処理対象画素の情報を追加して登録する。
【0084】
ステップ88において一時的に処理対象とした画素がステップ72で読み込んだ現在の処理対象の画素である場合、ステップ90では、ステップ88において抽出された代表色が登録されているレコードに、一時的な処理対象の画素の情報を追加登録する処理が、上述のステップ82と同様に行われる。また、ステップ88において一時的に処理対象とした画素がステップ72で読み込んだ現在の処理対象の画素ではない、すなわち画素リストに登録済みの画素である場合、ステップ90では、一時的な処理対象の画素の情報をステップ88において抽出された代表色が登録されているレコードに移動させる処理が行われる。
【0085】
また例えば、中央値分割法(median cut algorithm)を用いて、画像の画素毎の色の分布を複数の色群に分割しても構わない。中央値分割法では、まず原画像のRGB空間における色分布に外接する直方体を考え、RGB3軸のうち、直方体の最も長い辺に平行な軸で、原画像の総画素数を等分するように直方体を2分する。この処理を繰り返すことで直方体を細分化し、最後に同数の画素からなるN個の直方体を生成し、各直方体内の色データの平均値を代表色とする。中央値分割法において2分する軸は最も長い軸ではなく、最も分散の大きい軸としても良い。
【0086】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【0087】
以上の実施形態に関し、さらに以下の付記を開示する。
【0088】
(付記1)入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割部と、前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換部と、を含む画像処理装置。
【0089】
(付記2)前記分割部に入力される前記カラー画像は、自然画像領域を含まないカラー画像である付記1記載の画像処理装置。
【0090】
(付記3)前記分割部は、入力された前記カラー画像に対し、画素同士の色差が小さい順に、前記画素同士の色を同一の色群に組み入れることを繰り返すことで、前記カラー画像の画素毎の色を前記複数の色群に分割する付記1又は付記2に記載の画像処理装置。
【0091】
(付記4)前記分割部による分割によって得られた個々の前記色群毎に代表色を各々求める代表色算出部を更に備え、前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる階調表現を各々決定する付記1乃至付記3の何れか1項に記載の画像処理装置。
【0092】
(付記5)前記階調表現は濃度であって、前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度の大小関係に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる濃度の大小関係を決定する付記4記載の画像処理装置。
【0093】
(付記6)前記階調表現は濃度であって、前記変換部は、個々の前記色群の何れかに対応する個々の画素群に割り当てる濃度を、前記カラー画像よりも前記モノクロ画像の方が画像中の濃度の最大値と最小値の差が大きくなるように決定する付記1乃至付記5の何れか1項に記載の画像処理装置。
【0094】
(付記7)前記階調表現は濃度であって、前記変換部は、濃度の最大値を前記色群の数で割った値に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる濃度を決定する付記1乃至付記6の何れか1項に記載の画像処理装置。
【0095】
(付記8)前記階調表現はスクリーンパターンの別であって、前記変換部は、面積率、線数、パターン、及び、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを個々の前記色群の何れかに含まれる個々の画素群を単位として各々割り当て、前記カラー画像を、個々の画素の階調が個々の画素が属する前記画素群に割り当てたスクリーンパターンで表現されたモノクロ画像へ変換する付記1乃至付記4の何れか1項に記載の画像処理装置。
【0096】
(付記9)前記分割部は、入力された前記カラー画像の画素毎の色を、該色の数よりも少ない複数の色群に分割する付記1乃至付記8の何れか1項に記載の画像処理装置。
【0097】
(付記10)前記分割部は、入力された前記カラー画像の画素毎の色を、予め設定された前記色群の数と同数の前記色群に分割する付記1乃至付記9の何れか1項に記載の画像処理装置。
【0098】
(付記11)入力されたカラー画像に含まれる自然画像領域を抽出し、入力された前記カラー画像のうち抽出した前記自然画像領域以外の画像領域を前記分割部にカラー画像として入力する抽出部を更に備えた付記1乃至付記10の何れか1項に記載の画像処理装置。
【0099】
(付記12)前記抽出部は、入力された前記カラー画像を複数の単位領域に分割し、分割後の個々の単位領域毎に色分布の偏り度合いを演算し、演算した色分布の偏り度合いに基づいて個々の前記単位領域毎に前記自然画像領域か否かを判定する付記11記載の画像処理装置。
【0100】
(付記13)入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割ステップと、前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、を含む画像処理方法。
【0101】
(付記14)コンピュータに、入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の前記色群に分割する分割ステップと、前記カラー画像を、前記分割部による分割によって得られた個々の前記群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、を含む処理を実行させるための画像処理プログラム。
【符号の説明】
【0102】
10 画像処理装置
14 自然画像抽出部
16 色群分割部
18 代表色算出部
20 変換部
30 コンピュータ
32 CPU
34 メモリ
36 記憶部
40 画像処理プログラム
【特許請求の範囲】
【請求項1】
入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割部と、
前記カラー画像を、前記分割部による分割によって得られた個々の前記群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換部と、
を含む画像処理装置。
【請求項2】
前記分割部による分割によって得られた個々の前記色群毎に代表色を各々求める代表色算出部を更に備え、
前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる階調表現を各々決定する請求項1記載の画像処理装置。
【請求項3】
前記階調表現は濃度であって、前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度の大小関係に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる濃度の大小関係を決定する請求項2記載の画像処理装置。
【請求項4】
前記階調表現は濃度であって、前記変換部は、個々の前記色群の何れかに対応する個々の画素群に割り当てる濃度を、前記カラー画像よりも前記モノクロ画像の方が画像中の濃度の最大値と最小値の差が大きくなるように決定する請求項1乃至請求項3の何れか1項に記載の画像処理装置。
【請求項5】
前記階調表現はスクリーンパターンの別であって、前記変換部は、面積率、線数、パターン、及び、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを個々の前記色群の何れかに含まれる個々の画素群を単位として各々割り当て、前記カラー画像を、個々の画素の階調が個々の画素が属する前記画素群に割り当てたスクリーンパターンで表現されたモノクロ画像へ変換する請求項1または請求項2に記載の画像処理装置。
【請求項6】
前記分割部は、入力された前記カラー画像の画素毎の色を、該色の数よりも少ない複数の色群に分割する請求項1乃至請求項5の何れか1項に記載の画像処理装置。
【請求項7】
入力されたカラー画像に含まれる自然画像領域を抽出し、入力された前記カラー画像のうち抽出した前記自然画像領域以外の画像領域を前記分割部にカラー画像として入力する抽出部を更に備えた請求項1乃至請求項6の何れか1項に記載の画像処理装置。
【請求項8】
前記抽出部は、入力された前記カラー画像を複数の単位領域に分割し、分割後の個々の単位領域毎に色分布の偏り度合いを演算し、演算した色分布の偏り度合いに基づいて個々の前記単位領域毎に前記自然画像領域か否かを判定する請求項7記載の画像処理装置。
【請求項9】
入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割ステップと、
前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、
を含む画像処理方法。
【請求項10】
コンピュータに、
入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割ステップと、
前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、
を含む処理を実行させるための画像処理プログラム。
【請求項1】
入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割部と、
前記カラー画像を、前記分割部による分割によって得られた個々の前記群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換部と、
を含む画像処理装置。
【請求項2】
前記分割部による分割によって得られた個々の前記色群毎に代表色を各々求める代表色算出部を更に備え、
前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる階調表現を各々決定する請求項1記載の画像処理装置。
【請求項3】
前記階調表現は濃度であって、前記変換部は、前記代表色算出部によって算出された個々の前記色群毎の代表色の濃度の大小関係に基づいて、個々の前記色群の何れかに含まれる個々の画素群に割り当てる濃度の大小関係を決定する請求項2記載の画像処理装置。
【請求項4】
前記階調表現は濃度であって、前記変換部は、個々の前記色群の何れかに対応する個々の画素群に割り当てる濃度を、前記カラー画像よりも前記モノクロ画像の方が画像中の濃度の最大値と最小値の差が大きくなるように決定する請求項1乃至請求項3の何れか1項に記載の画像処理装置。
【請求項5】
前記階調表現はスクリーンパターンの別であって、前記変換部は、面積率、線数、パターン、及び、パターンの配列の角度の少なくとも1つが互いに異なるスクリーンパターンを個々の前記色群の何れかに含まれる個々の画素群を単位として各々割り当て、前記カラー画像を、個々の画素の階調が個々の画素が属する前記画素群に割り当てたスクリーンパターンで表現されたモノクロ画像へ変換する請求項1または請求項2に記載の画像処理装置。
【請求項6】
前記分割部は、入力された前記カラー画像の画素毎の色を、該色の数よりも少ない複数の色群に分割する請求項1乃至請求項5の何れか1項に記載の画像処理装置。
【請求項7】
入力されたカラー画像に含まれる自然画像領域を抽出し、入力された前記カラー画像のうち抽出した前記自然画像領域以外の画像領域を前記分割部にカラー画像として入力する抽出部を更に備えた請求項1乃至請求項6の何れか1項に記載の画像処理装置。
【請求項8】
前記抽出部は、入力された前記カラー画像を複数の単位領域に分割し、分割後の個々の単位領域毎に色分布の偏り度合いを演算し、演算した色分布の偏り度合いに基づいて個々の前記単位領域毎に前記自然画像領域か否かを判定する請求項7記載の画像処理装置。
【請求項9】
入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割ステップと、
前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、
を含む画像処理方法。
【請求項10】
コンピュータに、
入力されたカラー画像の画素毎の色を、各該画素の類似度合いに基づいて、複数の色群に分割する分割ステップと、
前記カラー画像を、前記分割部による分割によって得られた個々の前記色群の何れかに含まれる個々の画素群を単位として、階調表現を互いに相違させたモノクロ画像へ変換する変換ステップと、
を含む処理を実行させるための画像処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−199652(P2012−199652A)
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願番号】特願2011−61010(P2011−61010)
【出願日】平成23年3月18日(2011.3.18)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願日】平成23年3月18日(2011.3.18)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]