画像処理装置及び画像処理方法並びにプログラム
【課題】 従来から複写機には下地除去機能が備わっており、精度が高い下地除去処理設定を行うためには試行錯誤を要する。
【解決手段】 画像データの頻度分布に基づき第一の下地レベルを検出し、前記画像データを表示部に表示して除去すべき下地領域をユーザに選択させ、選択された下地領域の信号レベルを第二の下地レベルとして設定し、前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザの指示によって第三の下地レベルを設定し、設定された第三の下地レベルを用いて、画像データに対して下地除去処理を行う
【解決手段】 画像データの頻度分布に基づき第一の下地レベルを検出し、前記画像データを表示部に表示して除去すべき下地領域をユーザに選択させ、選択された下地領域の信号レベルを第二の下地レベルとして設定し、前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザの指示によって第三の下地レベルを設定し、設定された第三の下地レベルを用いて、画像データに対して下地除去処理を行う
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データに対して下地除去処理を実行する画像処理装置及び画像処理方法ならびにプログラムに関する。
【背景技術】
【0002】
一般に、デジタルカラー複写機のコピー処理では、スキャナで読み取った原稿を忠実に再現させるために様々な画像処理が行われている。通常、原稿の紙の色すなわち下地部は純粋な白ではなく、わずかに色がついている場合がほとんどである。よって、そのままコピー処理を実行すると下地部まで色材を用いて忠実に再現してしまう。これによって色材浪費が進むなど、様々な弊害の原因となる。
【0003】
そのため、複写機では原稿の下地部の色を除去する下地除去処理という処理を行っている。下地除去処理は、スキャナで読み取った原稿の輝度ヒストグラムを作成し、頻度がピークの輝度値から原稿画像の下地信号レベル(下地レベル)を検出する。次に画像信号から下地レベルを減算し、画像から下地を除去する処理である。
【0004】
しかしながら、スキャナで原稿画像を読み取る際に、原稿の中で下地レベルの異なる様々な領域が混在していた場合、必ずしもユーザが除去したい下地色が除去されない場合がある。このような結果を回避し、ユーザが意図する下地除去結果を得るために、下地レベルを調整するためのユーザインターフェース(UI)が用いられ、下地除去前後の画像を表示する(特許文献1)。このようにUIを用いて下地レベルを調整することで、ユーザの所望の結果を得ることが可能である。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−270650号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1では、下地レベルの設定例として、設定の煩雑性を減少させるために下地除去量を設定する単一のスライダを用いて下地レベルの設定を行っている。また、この他にもRGB(レッド、グリーン、ブルー)のような各コンポーネントに対応する複数のスライダを設定し、より詳細な下地除去設定を行う方法も考えられる。
【0007】
下地レベルのみを設定するスライダを用いた操作は、簡単に下地除去処理の設定を行える一方、ユーザが詳細な設定を行うことができず、必ずしもユーザの意図する下地除去処理結果を得られるとは限らない。また、RGBの各成分に対応した複数のスライダを用いた操作は、下地レベルのみの設定と比べユーザが詳細な設定を行うことができる。その一方、3次元のRGB空間の1点を指定しなければならず、ユーザがUI上で視覚的に感じる色と実際の下地色のRGB値のズレにより、直感的に操作することが困難である。そのため、ユーザがUI上の下地レベル設定のスライダを操作する際、下地除去処理に効果的な下地レベルの設定範囲が分からず、意図した設定範囲を超えて下地レベルを設定してしまう可能性がある。そのため、所望の結果を得るために試行錯誤する必要があり、多くの操作を必要とする。
【0008】
本発明は上記に鑑みてなされたものであり、下地レベルの設定範囲をユーザが意図する範囲に限定し、かつ簡単な操作で下地除去処理を行うことを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するため、本発明の画像処理装置は、画像読取手段によって読み取られた原稿に対応する画像データを入力する入力手段と、前記入力手段によって入力された画像データの頻度分布に基づき、第一の下地レベルを検出する検出手段と、前記入力手段によって入力された画像データを表示部に表示し、除去すべき下地領域をユーザに選択させる選択手段と、前記選択手段によって選択された下地領域の信号レベルを第二の下地レベルとして設定する第一の設定手段と、前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザに第三の下地レベルを設定させるための操作部を表示する表示手段と、前記表示手段によって表示された操作部を介して、前記第三の下地レベルを設定する第二の設定手段と、前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行う処理手段とを有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、ユーザが除去したい下地レベルの設定範囲を、ユーザが意図する範囲に限定し、簡単な操作で下地レベルを設定し下地除去処理を行うことができる。
【図面の簡単な説明】
【0011】
【図1】本実施形態における画像処理装置の構成を示すブロック図
【図2】本実施形態における下地除去処理のフローチャート
【図3】下地除去処理におけるプレビュー表示画面の一例を示す図
【図4】下地領域設定画面を示す図
【図5】下地除去レベル設定画面を示す図
【図6】図5におけるスライダ操作による下地除去処理後の画像データの一例を示す図
【図7】スライダによる下地除去処理の設定値の設定範囲を示す図
【図8】下地レベル判定処理を示す図
【図9】通常のコピー処理を示す図
【図10】下地除去処理を示す図
【図11】下地除去演算を示す図
【図12】画像データの信号値の出現頻度を示す図
【発明を実施するための形態】
【0012】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【0013】
図1に本実施形態における画像処理装置1の図を示す。画像処理装置1は、スキャナ101、スキャナ制御部102、プリンタ103、プリンタ制御部104、操作部105、CPU106、RAM107、ROM108、表示部109、記憶部110、記憶部制御部111、LAN I/F112、スキャン画像処理部113、プリント画像処理部114から構成される。
【0014】
スキャナ101は、原稿から光学的に画像を読み取り画像データに変換し、スキャナ制御部102を介しスキャン画像処理部113へ画像データを入力する。プリンタ103は、スキャン画像処理部113やプリント画像処理部114で処理された画像データを、プリンタ制御部104を介して紙に出力する。操作部105は、ユーザが画像処理装置1を操作するために用いる。表示部109はユーザが操作部105によって操作する各種情報や、スキャン画像処理部113やプリント画像処理部114で処理された画像データのプレビューを表示する。ここで、表示部109は、操作部105を用いずに指やペンで直接触れることで操作可能なタッチパネルとして実装されても良い。CPU106は、RAM107やROM108に格納されているプログラムやデータを用いて本画像処理装置1の全体の制御を行うとともに、画像処理装置1が行う各処理を実行する。RAM107は、CPU106が各種処理を実行する際のワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM108は、画像処理装置1が行う各処理のプログラムやデータが格納されている。スキャン画像処理部113、プリント画像処理部114は、スキャナ101やLAN I/F112から入力された画像データに対して画像処理を行う。LAN I/F112は、画像処理装置1をネットワーク(不図示)と接続することで、ネットワークから画像データやデバイス情報の入出力を行うことを可能とする。記憶部制御部111は、画像処理装置1が扱う画像データを記憶部110に記録するための制御を行う。記憶部110は、ハードディスクからなる大容量記憶媒体であり、画像処理装置1がLAN I/F112を介してネットワーク上から受信した画像データや、処理時に生成する中間画像データを記憶する。
【0015】
上述した各部は、画像処理装置の内部バス115によって互いに接続される。各部間のデータ転送は、各部と内部バス115との間に設けられたDMAC(Direct Memorry Access Controller)からなる不図示のデータ転送部を用いて行う。
【0016】
通常のコピー処理は、スキャナ101によって画像を読み取り、生成された信号をスキャン画像処理部113およびプリント画像処理部114で記録信号へ変換し、記憶部110に順次出力して紙上に画像を形成する。本実施例ではコピー処理を対象として説明する。本実施例ではプリント処理や送信処理について説明しないが、コピー処理と同様に本実施例を適用することが可能である。
【0017】
カラー複写機への指示は操作部105から行われ、これら一連の動作はCPU106で制御される。本発明における実施例を説明する前に、カラー複写機における下地除去手法について説明する。
【0018】
図9はカラー複写機における画像処理の構成例を説明するブロック図である。図9の色変換部902、下地除去処理部903、色変換部904、ガンマ補正部905、スクリーン処理部906は、スキャン画像処理部113およびプリント画像処理部114に格納され、CPU106によって制御されている。まず、スキャナ101(画像読取部)にて原稿をスキャンしデータの読み込みを行い、デバイス依存RGBデータを得る。次に、色変換部902において、デバイス依存RGBデータを共通RGBデータへ色変換する。ここで、共通RGBとはL*a*b*などのデバイス非依存色空間に変換可能な規格化されたRGBのことである。色変換部902で行う色変換は、マトリックス演算を使うなど、どのような手段を用いてもよい。次に下地除去処理部903にて下地除去処理を行う。
【0019】
下地除去処理部903における下地除去処理の流れを図10に示す。まず、ステップS1001において、CPU106は、読み取った共通RGB画像データの注目画素を選択する。次にステップS1002にて、CPU106は、記憶部110から下地レベル1003を読み込み、下地除去を行う。ここで下地レベルとは、画像の下地(背景)に相当する輝度(または濃度)レベルのことであり、下地レベルは操作部105からの指定が可能であり、また画像の輝度ヒストグラムを作成し、それを基に原稿の下地レベルを算出することも可能である。下地除去演算処理によって、下地レベル以上の輝度をもつ画素は、白レベルまたは白レベル付近に置き換えられる。
【0020】
図8にヒストグラムから、下地レベルを判定する場合のフローチャートを示す。まず、ヒストグラムを作成するために、CPU106は、読みとった共通RGB画像データの注目画素を選択する(S801)。次に、CPU106は、記憶部110からサンプリングピッチを読み込み、現在の注目画素がサンプリング対象画素か判断する(S802)。ここで、注目画素がサンプリング対象画素でなかった場合は(S802でNo)、S801の注目画素の選択処理に戻る。また注目画素がサンプリング対象画素であった場合(S802でYes)、入力画素の信号値を判断する(S803)。次に、CPU804は、RGB毎に入力信号値毎に出現回数をカウントし、カウント値を記憶部110に格納する(S804)。ここで、入力画像のすべての画素を処理したか判断する(S805)。すべての画素を処理していない場合は(S805でNo)、S801の処理に戻る。また、すべての入力画素の処理が終了した場合(S805でYes)、次に下地レベル判定処理の決定を行う。下地レベルの決定は、S804でカウントされた出現頻度が最も高い信号値をRGB毎に選択することで行う。図12にカウントされた信号値の出現頻度を表すヒストグラム(頻度分布)を示す。図12は入力信号を16bit(信号値の範囲が0〜255)とした場合の信号値の出現頻度を集計したヒストグラムの例である。この場合、CPU106が、出現頻度が最大である1201を選択する。この処理をRGB毎に繰り返し、RGBの出現頻度が最大である各信号値の中から最も信号値が低かったものを下地レベルとして検出する(S807)。
【0021】
ステップS1002で行われる下地除去演算の例を図11に示す。ステップS1101において、CPU106は入力信号値に対して下地レベル1003を用いて(1)の演算式を実行する。
【0022】
S=入力信号値×(最大信号値)/(下地レベル1003) (1)
次に、ステップS1102において、CPU106は演算により算出されたS値が、最大信号値を超えているか否かを判定する。ステップS1102において、S値が最大信号値を超えていればステップS1103にすすむ。例えば8bitの信号値である場合、その最大信号値は255となる。最大信号値を超えている場合、ステップS1103にて、CPU106はS値を最大信号値へ置き換え、最大信号値を出力信号値とする。ステップS1102において、最大信号値を超えていない場合、ステップS1101において演算したS値が出力信号値となる。なお、下地除去演算方法は図10の例に限らず、例えば精度を高めるため非線形変換処理を用いてもよい。
【0023】
次に図10に戻り、ステップS1004の説明を行う。ステップS1002において下地除去演算を行った後、ステップS1004にて、CPU106は下地除去演算後の画素毎の出力信号値を、RAM107に格納する。そしてステップS1005にて、CPU108は全ての画素を処理したか確認し、処理を行っていない画素がある場合はステップS1001に戻り未処理画素を選択して処理を繰り返す。全ての画素に対して処理を行った場合は処理が終了する。
【0024】
次に、図9に戻り、色変換部904以降の説明を行う。下地除去部903において共通RGBデータの画素毎に下地除去処理を行った後、色変換部904において色変換を行う。色変換部904は、共通RGBデータからプリンタのデバイス依存色空間であるCMYK多値データに変換する処理を行う。色変換によって生成されたCMYKデータに対してガンマ補正部905でガンマ補正を行い、その後スクリーン処理部906でスクリーン処理を行い、プリンタ103が出力できるCMYKの二値データに変換する。最後にプリンタ103にデータを送りコピー動作を終了する。
【0025】
図2は、本実施形態における下地除去処理のフローチャートである。スキャナ101で読み込まれた画像データは、スキャナ制御部102を介して一時RAM107へ格納される。次に、画像データは記憶部制御部111を介して記憶部110へ格納される。CPU106は、RAM107へ格納された画像データに対して、図8に示した下地レベルの判定処理を行う(S201)。次に、CPU106は、判定された下地レベルをRAM107に格納する。CPU106は、RAM107へ格納された下地レベルを下地除去処理の設定値1(第一の下地レベル)としてプリント画像処理部114内の下地除去処理部903に設定する(S202)。下地除去処理部903は画像データの下地除去処理を行い、CPU106が下地除去処理後の画像をRAM107へ格納する。CPU106は、RAM107へ格納された下地除去処理後の画像データを、表示部109にプレビュー画像として表示する(S203)。ここで、表示部109は、ユーザに対して所望の下地除去処理結果が得られたか確認するための選択画面を表示する(S204)。S204において、ユーザによって操作部105が操作され、Yesが選択された場合、ここで下地除去処理を終了する。また、S204において、ユーザによって操作部105が操作され、Noが選択された場合、表示部109に下地除去を行いたい下地領域を設定する画面を表示する。ここで、操作部105によってユーザに下地領域を指定させることで、下地領域の信号レベルを設定値2(第二の下地レベル)として設定させ(S205)、RAM107に格納する。
【0026】
図3に本実施形態における下地除去処理の下地除去結果画像を表示するプレビュー画面の例を示す。下地除去処理前画像データ表示領域301には、スキャナ101で読み取られた下地除去処理前の画像データが表示される。また、下地除去処理後画像データ表示領域302には、903において下地除去処理が施された画像データが表示される。OKボタン303は、下地レベル1003の設定を確定するボタンであり、設定取り消しボタン304は選択した下地レベル1003の設定を取り消すボタンである。ここで、OKボタン303は、S204におけるYesに対応し、設定取り消しボタン304は、S204におけるNoに対応する。
【0027】
図4に除去したい下地領域をユーザに選択させる下地領域設定画面の例を示す。図4の画面は表示部109に表示される。下地除去処理前画像データ表示領域401には、下地除去処理前画像データ表示領域301と同様に、スキャナ101で読み取られた下地除去処理前の画像データが表示される。カーソル402は、操作部105を用いてユーザによって操作され、ユーザが除去したい下地領域を指定するカーソルである。ここでカーソル402は、ユーザによって操作部105が操作され、下地除去処理前画像データ表示領域401に表示されている画像データの座標で指定されても良い。また、図4に示す下地除去設定画面がタッチパネルで実装されている場合は、下地除去処理前画像401を直接ユーザが指またはタッチペンで操作することで指定されても良い。下地濃度表示領域403は、S205でユーザによって選択された下地領域の下地レベル(設定値2)が表示される領域である。OKボタン404は、ユーザに選択された下地領域を確定するボタンである。ここで、操作部105によってOKボタン404が操作されることでS206へと処理が進む。
【0028】
図2に戻り、CPU106は、S202で設定された下地除去処理設定値(設定値1)を左端、S206でユーザに設定された設定値(設定値2)を右端とするような設定を持つスライダを表示部109に表示する(S206)。表示部109に表示されたスライダは、操作部109を用いてユーザに操作される(S207)。表示部109に表示されるスライダが指し示す設定値は、新たに下地レベル(設定値3)としてRAM107に格納される。
【0029】
図5に下地除去レベル(設定値3)を調整するための表示例を示す。設定値1表示領域501は、S201において習得された下地レベル(設定値1)を表示する領域である。設定値2表示領域502は、S205においてユーザによって指定された下地レベル(設定値2)を表示する領域である。スライダ503は、設定値1と設定値2のレベルの範囲で下地レベル(設定値3)を設定するスライダである。図5では、スライダの設定レベルは9レベル(0〜8)の例を示している。OKボタン504は、ユーザに選択された下地領域を確定するボタンである。ここで、操作部105によってOKボタン504が操作されることでS208へと処理が進む。
【0030】
図6に、図5に示したスライダ503を操作した際に出力される下地処理後の画像データの例を示す。ここで図6における画像データの各部の信号値を示す。下地領域601は、(R,G,B)=(255,103,255)、下地領域602は、(R,G,B)=(255,255,151)、円603は(R,G,B)=(64,64,64)とする。また、文字「あいう」604は、(R,G,B)=(0,0,0)、文字「かきく」605は、(R,G,B)=(104,104,104)とする。また、設定値1の下地レベルは、下地領域2が下地とみなされた場合の設定値であるため、設定値1は151になる。設定値2の下地レベルは、図4においてユーザによって指定された領域402の下地レベル(=103)になる。
【0031】
図6(A)はスライダの設定を0に設定した場合のプレビュー表示画面の例である。下地領域1スライダの設定値(設定値3)が、設定値1(下地レベル)を指しているため、下地領域2の下地が下地除去処理によって飛んで白になっている。なお、下地領域1については、下地除去処理後の画像は下地除去処理前の画像よりも少し濃度が薄くなっている。また、図6(B)はスライダの設定を8に設定した場合のプレビュー表示画面の例である。下地レベルは下地領域1のG値である103に設定され、下地領域1の下地色は除去されているが、下地領域2に含まれる文字「かきく」605までもが消えてしまう。図6(C)はスライダの設定を122に設定した場合のプレビュー表示画面の例である。ユーザの所望する設定値1と設定値2の間の範囲にスライダ503が設定されることで、下地領域2に含まれる薄い文字を消すことなく、下地領域2の下地色を除去でき、また下地領域1の下地色を薄くすることが可能である。このようにユーザの所望する下地除去処理結果が得られるように設定することが可能である。
【0032】
図7にスライダ503の各レベルに対応付けられる設定値の例を示す。設定値3の設定範囲701はスライダによる下地濃度設定値3(第三の下地レベル)が、設定値1と設定値2の範囲で設定されることを示す図である。ここでは、スライダの設定レベルが8段階、設定値1が(R,G,B)=(255,255,151)、設定値2が(R,G,B)=(255,103,255)である例を示している。CPU106は、設定値1と設定値2の差分と、スライダ503の設定レベルに割り当てられる設定値を算出し、スライダ503の各スライダレベルに対応付ける。CPU106によって算出された設定値3を702に示す。ここでは、設定値3はRGB空間を用いて算出されたが、YUV空間などの色空間を用いても良いし、またこれに限るものではない。
【0033】
図2に戻り、CPU106は、S207で下地レベルとして設定されRAM107に格納されている設定値3を、下地除去処理部903に設定する(S208)。下地レベルが設定された下地除去処理部903は、記憶部110に格納されている下地除去処理前の画像データに対して下地除去処理を行う(S209)。表示部109は、S209で下地除去処理を行った画像データを図3のようにプレビュー表示し、再度ユーザの所望の下地除去処理結果が得られたか確認するための選択画面を表示する。ここで、ユーザがYesを選択した場合、下地除去処理を終了し、Noが選択された場合はS205に進み、前述した処理を繰り返す。
【0034】
下地除去処理が行われた画像データはCPU106によって記憶部制御部111を介し、記憶部110に格納される。記憶部110に格納された下地除去処理が行われた画像データは、プリンタ制御部104を介してプリンタ103で印刷されたり、LAN I/F112を介してネットワークに接続されたPC等の機器(不図示)に転送されたりすることを想定しているが、この限りではない。
【0035】
また、本実施例では、下地除去前後の画像のプレビュー(図3、図6(A)、(B)、(C))と下地除去レベル(設定値3)を調整するためのUI(図4、図5)を画像処理装置1の表示部109に表示した。しかしながら、スキャナ101で読み取った画像をLAN I/F112を介してネットワークに接続されたPC等の機器(不図示)に転送し、PC等の機器に下地除去レベルを調整するためのUIを表示して下地除去レベルを調整してもよい。この場合、図2のフローチャートはPC等の機器で実行される。
【0036】
このように下地濃度判定部で判定された下地濃度(または下地輝度)(設定値1)と、ユーザが指定した下地領域の下地濃度(または下地輝度)(設定値2)を上限、下限とする範囲で下地除去処理の下地濃度(または下地輝度)(設定値3)を設定する。これにより、下地レベルの設定範囲をユーザが意図する範囲に限定し、かつ簡単な操作で下地除去処理を行うことができる。
【0037】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、画像データに対して下地除去処理を実行する画像処理装置及び画像処理方法ならびにプログラムに関する。
【背景技術】
【0002】
一般に、デジタルカラー複写機のコピー処理では、スキャナで読み取った原稿を忠実に再現させるために様々な画像処理が行われている。通常、原稿の紙の色すなわち下地部は純粋な白ではなく、わずかに色がついている場合がほとんどである。よって、そのままコピー処理を実行すると下地部まで色材を用いて忠実に再現してしまう。これによって色材浪費が進むなど、様々な弊害の原因となる。
【0003】
そのため、複写機では原稿の下地部の色を除去する下地除去処理という処理を行っている。下地除去処理は、スキャナで読み取った原稿の輝度ヒストグラムを作成し、頻度がピークの輝度値から原稿画像の下地信号レベル(下地レベル)を検出する。次に画像信号から下地レベルを減算し、画像から下地を除去する処理である。
【0004】
しかしながら、スキャナで原稿画像を読み取る際に、原稿の中で下地レベルの異なる様々な領域が混在していた場合、必ずしもユーザが除去したい下地色が除去されない場合がある。このような結果を回避し、ユーザが意図する下地除去結果を得るために、下地レベルを調整するためのユーザインターフェース(UI)が用いられ、下地除去前後の画像を表示する(特許文献1)。このようにUIを用いて下地レベルを調整することで、ユーザの所望の結果を得ることが可能である。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−270650号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1では、下地レベルの設定例として、設定の煩雑性を減少させるために下地除去量を設定する単一のスライダを用いて下地レベルの設定を行っている。また、この他にもRGB(レッド、グリーン、ブルー)のような各コンポーネントに対応する複数のスライダを設定し、より詳細な下地除去設定を行う方法も考えられる。
【0007】
下地レベルのみを設定するスライダを用いた操作は、簡単に下地除去処理の設定を行える一方、ユーザが詳細な設定を行うことができず、必ずしもユーザの意図する下地除去処理結果を得られるとは限らない。また、RGBの各成分に対応した複数のスライダを用いた操作は、下地レベルのみの設定と比べユーザが詳細な設定を行うことができる。その一方、3次元のRGB空間の1点を指定しなければならず、ユーザがUI上で視覚的に感じる色と実際の下地色のRGB値のズレにより、直感的に操作することが困難である。そのため、ユーザがUI上の下地レベル設定のスライダを操作する際、下地除去処理に効果的な下地レベルの設定範囲が分からず、意図した設定範囲を超えて下地レベルを設定してしまう可能性がある。そのため、所望の結果を得るために試行錯誤する必要があり、多くの操作を必要とする。
【0008】
本発明は上記に鑑みてなされたものであり、下地レベルの設定範囲をユーザが意図する範囲に限定し、かつ簡単な操作で下地除去処理を行うことを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するため、本発明の画像処理装置は、画像読取手段によって読み取られた原稿に対応する画像データを入力する入力手段と、前記入力手段によって入力された画像データの頻度分布に基づき、第一の下地レベルを検出する検出手段と、前記入力手段によって入力された画像データを表示部に表示し、除去すべき下地領域をユーザに選択させる選択手段と、前記選択手段によって選択された下地領域の信号レベルを第二の下地レベルとして設定する第一の設定手段と、前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザに第三の下地レベルを設定させるための操作部を表示する表示手段と、前記表示手段によって表示された操作部を介して、前記第三の下地レベルを設定する第二の設定手段と、前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行う処理手段とを有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、ユーザが除去したい下地レベルの設定範囲を、ユーザが意図する範囲に限定し、簡単な操作で下地レベルを設定し下地除去処理を行うことができる。
【図面の簡単な説明】
【0011】
【図1】本実施形態における画像処理装置の構成を示すブロック図
【図2】本実施形態における下地除去処理のフローチャート
【図3】下地除去処理におけるプレビュー表示画面の一例を示す図
【図4】下地領域設定画面を示す図
【図5】下地除去レベル設定画面を示す図
【図6】図5におけるスライダ操作による下地除去処理後の画像データの一例を示す図
【図7】スライダによる下地除去処理の設定値の設定範囲を示す図
【図8】下地レベル判定処理を示す図
【図9】通常のコピー処理を示す図
【図10】下地除去処理を示す図
【図11】下地除去演算を示す図
【図12】画像データの信号値の出現頻度を示す図
【発明を実施するための形態】
【0012】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【0013】
図1に本実施形態における画像処理装置1の図を示す。画像処理装置1は、スキャナ101、スキャナ制御部102、プリンタ103、プリンタ制御部104、操作部105、CPU106、RAM107、ROM108、表示部109、記憶部110、記憶部制御部111、LAN I/F112、スキャン画像処理部113、プリント画像処理部114から構成される。
【0014】
スキャナ101は、原稿から光学的に画像を読み取り画像データに変換し、スキャナ制御部102を介しスキャン画像処理部113へ画像データを入力する。プリンタ103は、スキャン画像処理部113やプリント画像処理部114で処理された画像データを、プリンタ制御部104を介して紙に出力する。操作部105は、ユーザが画像処理装置1を操作するために用いる。表示部109はユーザが操作部105によって操作する各種情報や、スキャン画像処理部113やプリント画像処理部114で処理された画像データのプレビューを表示する。ここで、表示部109は、操作部105を用いずに指やペンで直接触れることで操作可能なタッチパネルとして実装されても良い。CPU106は、RAM107やROM108に格納されているプログラムやデータを用いて本画像処理装置1の全体の制御を行うとともに、画像処理装置1が行う各処理を実行する。RAM107は、CPU106が各種処理を実行する際のワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM108は、画像処理装置1が行う各処理のプログラムやデータが格納されている。スキャン画像処理部113、プリント画像処理部114は、スキャナ101やLAN I/F112から入力された画像データに対して画像処理を行う。LAN I/F112は、画像処理装置1をネットワーク(不図示)と接続することで、ネットワークから画像データやデバイス情報の入出力を行うことを可能とする。記憶部制御部111は、画像処理装置1が扱う画像データを記憶部110に記録するための制御を行う。記憶部110は、ハードディスクからなる大容量記憶媒体であり、画像処理装置1がLAN I/F112を介してネットワーク上から受信した画像データや、処理時に生成する中間画像データを記憶する。
【0015】
上述した各部は、画像処理装置の内部バス115によって互いに接続される。各部間のデータ転送は、各部と内部バス115との間に設けられたDMAC(Direct Memorry Access Controller)からなる不図示のデータ転送部を用いて行う。
【0016】
通常のコピー処理は、スキャナ101によって画像を読み取り、生成された信号をスキャン画像処理部113およびプリント画像処理部114で記録信号へ変換し、記憶部110に順次出力して紙上に画像を形成する。本実施例ではコピー処理を対象として説明する。本実施例ではプリント処理や送信処理について説明しないが、コピー処理と同様に本実施例を適用することが可能である。
【0017】
カラー複写機への指示は操作部105から行われ、これら一連の動作はCPU106で制御される。本発明における実施例を説明する前に、カラー複写機における下地除去手法について説明する。
【0018】
図9はカラー複写機における画像処理の構成例を説明するブロック図である。図9の色変換部902、下地除去処理部903、色変換部904、ガンマ補正部905、スクリーン処理部906は、スキャン画像処理部113およびプリント画像処理部114に格納され、CPU106によって制御されている。まず、スキャナ101(画像読取部)にて原稿をスキャンしデータの読み込みを行い、デバイス依存RGBデータを得る。次に、色変換部902において、デバイス依存RGBデータを共通RGBデータへ色変換する。ここで、共通RGBとはL*a*b*などのデバイス非依存色空間に変換可能な規格化されたRGBのことである。色変換部902で行う色変換は、マトリックス演算を使うなど、どのような手段を用いてもよい。次に下地除去処理部903にて下地除去処理を行う。
【0019】
下地除去処理部903における下地除去処理の流れを図10に示す。まず、ステップS1001において、CPU106は、読み取った共通RGB画像データの注目画素を選択する。次にステップS1002にて、CPU106は、記憶部110から下地レベル1003を読み込み、下地除去を行う。ここで下地レベルとは、画像の下地(背景)に相当する輝度(または濃度)レベルのことであり、下地レベルは操作部105からの指定が可能であり、また画像の輝度ヒストグラムを作成し、それを基に原稿の下地レベルを算出することも可能である。下地除去演算処理によって、下地レベル以上の輝度をもつ画素は、白レベルまたは白レベル付近に置き換えられる。
【0020】
図8にヒストグラムから、下地レベルを判定する場合のフローチャートを示す。まず、ヒストグラムを作成するために、CPU106は、読みとった共通RGB画像データの注目画素を選択する(S801)。次に、CPU106は、記憶部110からサンプリングピッチを読み込み、現在の注目画素がサンプリング対象画素か判断する(S802)。ここで、注目画素がサンプリング対象画素でなかった場合は(S802でNo)、S801の注目画素の選択処理に戻る。また注目画素がサンプリング対象画素であった場合(S802でYes)、入力画素の信号値を判断する(S803)。次に、CPU804は、RGB毎に入力信号値毎に出現回数をカウントし、カウント値を記憶部110に格納する(S804)。ここで、入力画像のすべての画素を処理したか判断する(S805)。すべての画素を処理していない場合は(S805でNo)、S801の処理に戻る。また、すべての入力画素の処理が終了した場合(S805でYes)、次に下地レベル判定処理の決定を行う。下地レベルの決定は、S804でカウントされた出現頻度が最も高い信号値をRGB毎に選択することで行う。図12にカウントされた信号値の出現頻度を表すヒストグラム(頻度分布)を示す。図12は入力信号を16bit(信号値の範囲が0〜255)とした場合の信号値の出現頻度を集計したヒストグラムの例である。この場合、CPU106が、出現頻度が最大である1201を選択する。この処理をRGB毎に繰り返し、RGBの出現頻度が最大である各信号値の中から最も信号値が低かったものを下地レベルとして検出する(S807)。
【0021】
ステップS1002で行われる下地除去演算の例を図11に示す。ステップS1101において、CPU106は入力信号値に対して下地レベル1003を用いて(1)の演算式を実行する。
【0022】
S=入力信号値×(最大信号値)/(下地レベル1003) (1)
次に、ステップS1102において、CPU106は演算により算出されたS値が、最大信号値を超えているか否かを判定する。ステップS1102において、S値が最大信号値を超えていればステップS1103にすすむ。例えば8bitの信号値である場合、その最大信号値は255となる。最大信号値を超えている場合、ステップS1103にて、CPU106はS値を最大信号値へ置き換え、最大信号値を出力信号値とする。ステップS1102において、最大信号値を超えていない場合、ステップS1101において演算したS値が出力信号値となる。なお、下地除去演算方法は図10の例に限らず、例えば精度を高めるため非線形変換処理を用いてもよい。
【0023】
次に図10に戻り、ステップS1004の説明を行う。ステップS1002において下地除去演算を行った後、ステップS1004にて、CPU106は下地除去演算後の画素毎の出力信号値を、RAM107に格納する。そしてステップS1005にて、CPU108は全ての画素を処理したか確認し、処理を行っていない画素がある場合はステップS1001に戻り未処理画素を選択して処理を繰り返す。全ての画素に対して処理を行った場合は処理が終了する。
【0024】
次に、図9に戻り、色変換部904以降の説明を行う。下地除去部903において共通RGBデータの画素毎に下地除去処理を行った後、色変換部904において色変換を行う。色変換部904は、共通RGBデータからプリンタのデバイス依存色空間であるCMYK多値データに変換する処理を行う。色変換によって生成されたCMYKデータに対してガンマ補正部905でガンマ補正を行い、その後スクリーン処理部906でスクリーン処理を行い、プリンタ103が出力できるCMYKの二値データに変換する。最後にプリンタ103にデータを送りコピー動作を終了する。
【0025】
図2は、本実施形態における下地除去処理のフローチャートである。スキャナ101で読み込まれた画像データは、スキャナ制御部102を介して一時RAM107へ格納される。次に、画像データは記憶部制御部111を介して記憶部110へ格納される。CPU106は、RAM107へ格納された画像データに対して、図8に示した下地レベルの判定処理を行う(S201)。次に、CPU106は、判定された下地レベルをRAM107に格納する。CPU106は、RAM107へ格納された下地レベルを下地除去処理の設定値1(第一の下地レベル)としてプリント画像処理部114内の下地除去処理部903に設定する(S202)。下地除去処理部903は画像データの下地除去処理を行い、CPU106が下地除去処理後の画像をRAM107へ格納する。CPU106は、RAM107へ格納された下地除去処理後の画像データを、表示部109にプレビュー画像として表示する(S203)。ここで、表示部109は、ユーザに対して所望の下地除去処理結果が得られたか確認するための選択画面を表示する(S204)。S204において、ユーザによって操作部105が操作され、Yesが選択された場合、ここで下地除去処理を終了する。また、S204において、ユーザによって操作部105が操作され、Noが選択された場合、表示部109に下地除去を行いたい下地領域を設定する画面を表示する。ここで、操作部105によってユーザに下地領域を指定させることで、下地領域の信号レベルを設定値2(第二の下地レベル)として設定させ(S205)、RAM107に格納する。
【0026】
図3に本実施形態における下地除去処理の下地除去結果画像を表示するプレビュー画面の例を示す。下地除去処理前画像データ表示領域301には、スキャナ101で読み取られた下地除去処理前の画像データが表示される。また、下地除去処理後画像データ表示領域302には、903において下地除去処理が施された画像データが表示される。OKボタン303は、下地レベル1003の設定を確定するボタンであり、設定取り消しボタン304は選択した下地レベル1003の設定を取り消すボタンである。ここで、OKボタン303は、S204におけるYesに対応し、設定取り消しボタン304は、S204におけるNoに対応する。
【0027】
図4に除去したい下地領域をユーザに選択させる下地領域設定画面の例を示す。図4の画面は表示部109に表示される。下地除去処理前画像データ表示領域401には、下地除去処理前画像データ表示領域301と同様に、スキャナ101で読み取られた下地除去処理前の画像データが表示される。カーソル402は、操作部105を用いてユーザによって操作され、ユーザが除去したい下地領域を指定するカーソルである。ここでカーソル402は、ユーザによって操作部105が操作され、下地除去処理前画像データ表示領域401に表示されている画像データの座標で指定されても良い。また、図4に示す下地除去設定画面がタッチパネルで実装されている場合は、下地除去処理前画像401を直接ユーザが指またはタッチペンで操作することで指定されても良い。下地濃度表示領域403は、S205でユーザによって選択された下地領域の下地レベル(設定値2)が表示される領域である。OKボタン404は、ユーザに選択された下地領域を確定するボタンである。ここで、操作部105によってOKボタン404が操作されることでS206へと処理が進む。
【0028】
図2に戻り、CPU106は、S202で設定された下地除去処理設定値(設定値1)を左端、S206でユーザに設定された設定値(設定値2)を右端とするような設定を持つスライダを表示部109に表示する(S206)。表示部109に表示されたスライダは、操作部109を用いてユーザに操作される(S207)。表示部109に表示されるスライダが指し示す設定値は、新たに下地レベル(設定値3)としてRAM107に格納される。
【0029】
図5に下地除去レベル(設定値3)を調整するための表示例を示す。設定値1表示領域501は、S201において習得された下地レベル(設定値1)を表示する領域である。設定値2表示領域502は、S205においてユーザによって指定された下地レベル(設定値2)を表示する領域である。スライダ503は、設定値1と設定値2のレベルの範囲で下地レベル(設定値3)を設定するスライダである。図5では、スライダの設定レベルは9レベル(0〜8)の例を示している。OKボタン504は、ユーザに選択された下地領域を確定するボタンである。ここで、操作部105によってOKボタン504が操作されることでS208へと処理が進む。
【0030】
図6に、図5に示したスライダ503を操作した際に出力される下地処理後の画像データの例を示す。ここで図6における画像データの各部の信号値を示す。下地領域601は、(R,G,B)=(255,103,255)、下地領域602は、(R,G,B)=(255,255,151)、円603は(R,G,B)=(64,64,64)とする。また、文字「あいう」604は、(R,G,B)=(0,0,0)、文字「かきく」605は、(R,G,B)=(104,104,104)とする。また、設定値1の下地レベルは、下地領域2が下地とみなされた場合の設定値であるため、設定値1は151になる。設定値2の下地レベルは、図4においてユーザによって指定された領域402の下地レベル(=103)になる。
【0031】
図6(A)はスライダの設定を0に設定した場合のプレビュー表示画面の例である。下地領域1スライダの設定値(設定値3)が、設定値1(下地レベル)を指しているため、下地領域2の下地が下地除去処理によって飛んで白になっている。なお、下地領域1については、下地除去処理後の画像は下地除去処理前の画像よりも少し濃度が薄くなっている。また、図6(B)はスライダの設定を8に設定した場合のプレビュー表示画面の例である。下地レベルは下地領域1のG値である103に設定され、下地領域1の下地色は除去されているが、下地領域2に含まれる文字「かきく」605までもが消えてしまう。図6(C)はスライダの設定を122に設定した場合のプレビュー表示画面の例である。ユーザの所望する設定値1と設定値2の間の範囲にスライダ503が設定されることで、下地領域2に含まれる薄い文字を消すことなく、下地領域2の下地色を除去でき、また下地領域1の下地色を薄くすることが可能である。このようにユーザの所望する下地除去処理結果が得られるように設定することが可能である。
【0032】
図7にスライダ503の各レベルに対応付けられる設定値の例を示す。設定値3の設定範囲701はスライダによる下地濃度設定値3(第三の下地レベル)が、設定値1と設定値2の範囲で設定されることを示す図である。ここでは、スライダの設定レベルが8段階、設定値1が(R,G,B)=(255,255,151)、設定値2が(R,G,B)=(255,103,255)である例を示している。CPU106は、設定値1と設定値2の差分と、スライダ503の設定レベルに割り当てられる設定値を算出し、スライダ503の各スライダレベルに対応付ける。CPU106によって算出された設定値3を702に示す。ここでは、設定値3はRGB空間を用いて算出されたが、YUV空間などの色空間を用いても良いし、またこれに限るものではない。
【0033】
図2に戻り、CPU106は、S207で下地レベルとして設定されRAM107に格納されている設定値3を、下地除去処理部903に設定する(S208)。下地レベルが設定された下地除去処理部903は、記憶部110に格納されている下地除去処理前の画像データに対して下地除去処理を行う(S209)。表示部109は、S209で下地除去処理を行った画像データを図3のようにプレビュー表示し、再度ユーザの所望の下地除去処理結果が得られたか確認するための選択画面を表示する。ここで、ユーザがYesを選択した場合、下地除去処理を終了し、Noが選択された場合はS205に進み、前述した処理を繰り返す。
【0034】
下地除去処理が行われた画像データはCPU106によって記憶部制御部111を介し、記憶部110に格納される。記憶部110に格納された下地除去処理が行われた画像データは、プリンタ制御部104を介してプリンタ103で印刷されたり、LAN I/F112を介してネットワークに接続されたPC等の機器(不図示)に転送されたりすることを想定しているが、この限りではない。
【0035】
また、本実施例では、下地除去前後の画像のプレビュー(図3、図6(A)、(B)、(C))と下地除去レベル(設定値3)を調整するためのUI(図4、図5)を画像処理装置1の表示部109に表示した。しかしながら、スキャナ101で読み取った画像をLAN I/F112を介してネットワークに接続されたPC等の機器(不図示)に転送し、PC等の機器に下地除去レベルを調整するためのUIを表示して下地除去レベルを調整してもよい。この場合、図2のフローチャートはPC等の機器で実行される。
【0036】
このように下地濃度判定部で判定された下地濃度(または下地輝度)(設定値1)と、ユーザが指定した下地領域の下地濃度(または下地輝度)(設定値2)を上限、下限とする範囲で下地除去処理の下地濃度(または下地輝度)(設定値3)を設定する。これにより、下地レベルの設定範囲をユーザが意図する範囲に限定し、かつ簡単な操作で下地除去処理を行うことができる。
【0037】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
画像読取手段によって読み取られた原稿に対応する画像データを入力する入力手段と、
前記入力手段によって入力された画像データの頻度分布に基づき、第一の下地レベルを検出する検出手段と、
前記入力手段によって入力された画像データを表示部に表示し、除去すべき下地領域をユーザに選択させる選択手段と、
前記選択手段によって選択された下地領域の信号レベルを第二の下地レベルとして設定する第一の設定手段と、
前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザに第三の下地レベルを設定させるための操作部を表示する表示手段と、
前記表示手段によって表示された操作部を介して、前記第三の下地レベルを設定する第二の設定手段と、
前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行う処理手段とを有することを特徴とする画像処理装置。
【請求項2】
さらに、前記第一の下地レベルを用いて、前記画像データに対して下地除去処理を行った後の画像と、前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行った後の画像とを表示する手段とを有することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
さらに、前記画像データと、前記第三の下地レベルを用いて前記画像データに対して下地除去処理を行った後の画像とを表示する手段とを有することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記検出手段は、前記画像データの出現頻度が最大である信号値に基づき、前記第一の下地レベルを検出することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
【請求項5】
画像読取手段によって読み取られた原稿に対応する画像データを入力する入力ステップと、
前記入力ステップによって入力された画像データの頻度分布に基づき、第一の下地レベルを検出する検出ステップと、
前記入力ステップによって入力された画像データを表示部に表示し、除去すべき下地領域をユーザに選択させる選択ステップと、
前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザに第三の下地レベルを設定させるための操作部を表示する表示ステップと、
前記表示ステップによって表示された操作部を介して、前記第三の下地レベルを設定する第二の設定ステップと、
前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行う処理ステップとを有することを特徴とする画像処理方法。
【請求項6】
コンピュータを請求項1乃至4のいずれか一項に記載された画像処理装置として機能させるためのプログラム。
【請求項1】
画像読取手段によって読み取られた原稿に対応する画像データを入力する入力手段と、
前記入力手段によって入力された画像データの頻度分布に基づき、第一の下地レベルを検出する検出手段と、
前記入力手段によって入力された画像データを表示部に表示し、除去すべき下地領域をユーザに選択させる選択手段と、
前記選択手段によって選択された下地領域の信号レベルを第二の下地レベルとして設定する第一の設定手段と、
前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザに第三の下地レベルを設定させるための操作部を表示する表示手段と、
前記表示手段によって表示された操作部を介して、前記第三の下地レベルを設定する第二の設定手段と、
前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行う処理手段とを有することを特徴とする画像処理装置。
【請求項2】
さらに、前記第一の下地レベルを用いて、前記画像データに対して下地除去処理を行った後の画像と、前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行った後の画像とを表示する手段とを有することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
さらに、前記画像データと、前記第三の下地レベルを用いて前記画像データに対して下地除去処理を行った後の画像とを表示する手段とを有することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記検出手段は、前記画像データの出現頻度が最大である信号値に基づき、前記第一の下地レベルを検出することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
【請求項5】
画像読取手段によって読み取られた原稿に対応する画像データを入力する入力ステップと、
前記入力ステップによって入力された画像データの頻度分布に基づき、第一の下地レベルを検出する検出ステップと、
前記入力ステップによって入力された画像データを表示部に表示し、除去すべき下地領域をユーザに選択させる選択ステップと、
前記第一の下地レベルと前記第二の下地レベルとの間で、ユーザに第三の下地レベルを設定させるための操作部を表示する表示ステップと、
前記表示ステップによって表示された操作部を介して、前記第三の下地レベルを設定する第二の設定ステップと、
前記第三の下地レベルを用いて、前記画像データに対して下地除去処理を行う処理ステップとを有することを特徴とする画像処理方法。
【請求項6】
コンピュータを請求項1乃至4のいずれか一項に記載された画像処理装置として機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2013−9109(P2013−9109A)
【公開日】平成25年1月10日(2013.1.10)
【国際特許分類】
【出願番号】特願2011−139734(P2011−139734)
【出願日】平成23年6月23日(2011.6.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年1月10日(2013.1.10)
【国際特許分類】
【出願日】平成23年6月23日(2011.6.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]