(57)【特許請求の範囲】
【請求項１】
画像から線画を検出する線画検出手段と、
前記線画の色である線画色を算出する線画色算出手段と、
前記線画に隣接する領域の色である背景色を算出する背景色算出手段と、
前記線画を構成する画素のうち、前記背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を前記線画色とするように、前記線画色を補正する補正手段と、を備える画像処理装置。
【請求項２】
前記線画の線幅を算出する線幅算出手段をさらに備え、
前記補正手段は、前記線画の線幅が所定値以上であれば、前記線画を構成する画素のうち、前記背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を前記線画色とするように、前記線画色を補正し、前記線画の線幅が前記所定値未満であれば、前記線画色を前記背景色から視覚特性的に遠ざける色に補正する、請求項１に記載の画像処理装置。
【請求項３】
前記線画色算出手段は、前記線画が持つ前記線画色の数を表す色数をさらに算出し、
前記補正手段は、前記線画の色数が２以上の場合は、それぞれの前記線画色に対して個別に前記背景色に応じた補正を行う、請求項１または２に記載の画像処理装置。
【請求項４】
前記線画色算出手段は、前記背景色の影響を除去した前記線画の色数を算出する、請求項３に記載の画像処理装置。
【請求項５】
前記線画検出手段は、
前記画像から前記線画のエッジを検出する第１の検出手段と、
前記第１の検出手段の検出結果を用いて前記線画のエッジが強調された前記画像から前記線画の領域を検出する第２の検出手段と、
前記第１の検出手段の検出結果と、前記第２の検出手段の検出結果とを用いて、前記画像から前記線画を検出する第３の検出手段と、を含む、請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
補正された前記線画色に基づいて、前記画像に対応する圧縮画像ファイルを生成するファイル生成手段をさらに備える、請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
画像から線画を検出するステップと、
前記線画の色である線画色を算出するステップと、
前記線画に隣接する領域の色である背景色を算出するステップと、
前記線画を構成する画素のうち、前記背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を前記線画色とするように、前記線画色を補正する補正ステップと、を含む画像処理方法。
【請求項８】
コンピュータに、
画像から線画を検出する機能と、
前記線画の色である線画色を算出する機能と、
前記線画に隣接する領域の色である背景色を算出する機能と、
前記線画を構成する画素のうち、前記背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を前記線画色とするように、前記線画色を補正する機能と、を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法およびプログラムに関する。
【背景技術】
【０００２】
高圧縮と高画質とを両立させる画像圧縮技術として、高圧縮ＰＤＦ（Portable  Document  Format）と呼ばれる技術が知られている。高圧縮ＰＤＦは、画像を文字などの線画とそれ以外の領域とに分離し、それぞれに適した圧縮処理を施すことで高圧縮と高画質とを両立させる技術である。
【０００３】
高圧縮ＰＤＦでは、例えば、線画の色（以下、「線画色」と呼ぶ）を表現するレイヤを持たせたり、線画をその座標と線画色とで表現したりすることで、線画色を再現可能としている。代表的な線画である文字の色を算出する方法としては、例えば特許文献１に記載された方法が知られている。この特許文献１に記載された方法は、文字のサイズが小さくても最適な文字の代表色を算出できるようにすることを目的として、文字がかすれるような閾値を用いて入力画像を２値化し、２値化画像の黒部分に対応する入力画像内の領域の色情報を用いて文字の代表色を算出する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、線画色を算出する従来の方法は、線画のみに着目して線画色を算出しているため、線画色を適切に算出できない場合があった。
【課題を解決するための手段】
【０００５】
上述した課題を解決するために、本発明は、画像から線画を検出する線画検出手段と、前記線画の色である線画色を算出する線画色算出手段と、前記線画に隣接する領域の色である背景色を算出する背景色算出手段と、前記線画を構成する画素のうち、前記背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を前記線画色とするように、前記線画色を補正する補正手段と、を備える。
【発明の効果】
【０００６】
本発明によれば、線画が背景色の影響を受けている場合であっても線画色を適切に算出できるという効果を奏する。
【図面の簡単な説明】
【０００７】
【図１】図１は、高圧縮ＰＤＦの処理手順を説明する模式図である。
【図２】図２は、実施形態の画像処理装置のハードウェア構成例を示すブロック図である。
【図３】図３は、実施形態の画像処理装置の機能的な構成例を示すブロック図である。
【図４】図４は、線画検出部の具体例を示すブロック図である。
【図５】図５は、線画色処理部の具体例を示すブロック図である。
【図６】図６は、色統一処理部の具体例を示すブロック図である。
【図７】図７は、実施形態の画像処理装置による動作の流れを説明するフローチャートである。
【図８】図８は、第１の検出部による処理の一例を説明するフローチャートである。
【図９】図９は、第２の検出部による処理の一例を説明するフローチャートである。
【図１０】図１０は、線画色処理部による処理の一例を説明するフローチャートである。
【図１１】図１１は、背景色の影響によって線画のエッジ近傍が変色した様子を示す図である。
【図１２】図１２は、背景色に応じて線画色を補正する処理の具体例を説明する図である。
【図１３】図１３は、背景色に応じて線画色を補正する処理の具体例を説明する図である。
【図１４】図１４は、背景色に応じて線画色を補正する処理の具体例を説明する図である。
【図１５】図１５は、背景色に応じて線画色を補正する処理の具体例を説明する図である。
【図１６】図１６は、色統一処理部による処理の一例を説明するフローチャートである。
【図１７】図１７は、線画色を統一する単位となるグループを決定する方法の具体例を説明する図である。
【図１８】図１８は、グループの代表色を算出する処理の具体例を説明する図である。
【発明を実施するための形態】
【０００８】
以下に添付図面を参照しながら、本発明に係る画像処理装置、画像処理方法およびプログラムの具体的な実施形態について詳しく説明する。以下で示す実施形態は、高圧縮ＰＤＦファイル（「圧縮画像ファイル」の一態様）を生成する画像処理装置への適用例である。ただし、本発明はこの例に限らず、線画色を適切に算出することが求められる様々な画像処理装置に対して有効に適用可能である。
【０００９】
＜高圧縮ＰＤＦ＞
まず、本実施形態の具体的な説明に先立ち、高圧縮ＰＤＦの概要を説明する。高圧縮ＰＤＦは、文字などの線画を含む画像から高圧縮ＰＤＦファイルを生成する画像圧縮技術である。ここで線画とは、文字および文字と同様に扱うことが望ましい線で表現されるオブジェクトを指す。線で表現されるオブジェクトであっても、絵柄として扱うことが望ましいオブジェクトは、線画ではなく絵柄に含まれるものとする。絵柄は、線画以外のオブジェクト、つまり、写真などの網点で表現されるオブジェクトや、文字と同様に扱うことが望ましくない図形などのオブジェクトである。
【００１０】
図１は、高圧縮ＰＤＦの処理手順を説明する模式図である。高圧縮ＰＤＦファイルを生成するには、まず、処理対象となる画像（以下、「入力画像」と呼ぶ）Ｉｍ０から、線画のみからなる２値画像である第１の画像レイヤＩｍ１と、線画色を表現する多値画像である第２の画像レイヤＩｍ２と、線画以外の絵柄および背景を表現する多値画像である第３の画像レイヤＩｍ３とを生成する。そして、第１の画像レイヤＩｍ１および第２の画像レイヤＩｍ２に対しては、線画の圧縮に適した圧縮処理を施し、第３の画像レイヤＩｍ３に対しては、絵柄や背景の圧縮に適した圧縮処理を施す。その後、圧縮処理が施された第１の画像レイヤＩｍ１と、圧縮処理が施された第２の画像レイヤＩｍ２と、圧縮処理が施された第３の画像レイヤＩｍ３とを、例えばＰＤＦ形式の１つの画像ファイル上で統合することにより、入力画像Ｉｍ０に対応する高圧縮ＰＤＦファイルＦＩｍを生成する。
【００１１】
第１の画像レイヤＩｍ１に対して施される圧縮処理は、例えば、２値画像に対するＭＭＲなどの符号化方式による圧縮処理である。第２の画像レイヤＩｍ２に対して施される圧縮処理は、例えば、第３の画像レイヤＩｍ３に対する圧縮処理よりも解像度を落とした、多値画像に対するＪＰＥＧなどの符号化方式による圧縮処理である。第１の画像レイヤＩｍ１に対する圧縮処理と第２の画像レイヤＩｍ２に対する圧縮処理は、線画の圧縮に適した圧縮処理である点で共通するため、以下ではこれらの処理を総称して「第１の圧縮処理」と呼ぶ。一方、第３の画像レイヤＩｍ３に対して施される圧縮処理は、例えば、第２の画像レイヤＩｍ２に対する圧縮処理よりも解像度を高めた、多値画像に対するＪＰＥＧなどの符号化方式による圧縮処理である。第３の画像レイヤＩｍ３に対する圧縮処理は、絵柄や背景の圧縮に適した圧縮処理であるため、以下では、線画の圧縮に適した第１の圧縮処理と区別して、「第２の圧縮処理」と呼ぶ。なお、上述の符号化方式は一例であり、上述の例とは異なる符号化方式による圧縮処理を行ってもよい。
【００１２】
高圧縮ＰＤＦでは、以上のように、処理対象の入力画像Ｉｍ０を線画の領域とそれ以外の絵柄や背景の領域とに分離し、線画の領域に対しては第１の圧縮処理を施すとともに、線画以外の絵柄や背景の領域に対しては第２の圧縮処理を施すことで、圧縮の効率を高めている。ここで、圧縮の効率とは、画像を再現したときの画質（再現性）を損なわずに、どれだけ圧縮率を高めることができたかどうかを表し、再現性を維持しながら高い圧縮率が得られれば、効率のよい圧縮が行われたことになる。
【００１３】
上述の高圧縮ＰＤＦは様々な変形が可能である。例えば、上述の第１の画像レイヤＩｍ１を、黒の線画のみからなる画像レイヤと、有彩色または白の線画のみからなる画像レイヤとに分けてもよい。また、線画色を表現する第２の画像レイヤＩｍ２を持たずに、線画色を、線画の座標に対応させた別の情報として持たせる構成であってもよい。
【００１４】
＜実施形態の概要＞
高圧縮ＰＤＦにおいて、線画色を表現する第２の画像レイヤＩｍ２を適切に生成して高画質の線画を再現できるようにするには、入力画像Ｉｍ０に含まれる線画のそれぞれについて、適切に線画色を算出できるようにすることが重要である。しかし、例えばスキャナによる原稿の読み取りなどによって入力画像Ｉｍ０を取得する場合、この入力画像Ｉｍ０に含まれる線画に対して、この線画に隣接する領域の色（以下、「背景色」と呼ぶ）が写り込み、背景色の影響によって線画色が本来の色とは異なった色に変色する場合がある。そして、背景色の影響で変色した線画色を用いて第２の画像レイヤＩｍ２を生成すると、線画が本来の色とは異なった色味で再現され、画質の低下を招くことになる。
【００１５】
背景色の影響を除去して線画色を算出する方法としては、線画のエッジから離れた内部領域には背景色の影響がないものと仮定して、この内部領域の色を線画色とする方法がある。しかし、背景色が線画内のどの範囲まで影響を及ぼしているかを特定することは困難である。また、例えば細文字のように線画の線幅が細い場合は、背景色の影響が線画のすべての領域に及んでいる場合もある。したがって、このような方法は、線画色を適切に算出する方法としては不十分であり、改善が求められる。
【００１６】
そこで、本実施形態では、入力画像Ｉｍ０から検出された線画のそれぞれについて、線画色を算出するのに合わせてその背景色も算出し、算出した背景色に応じて線画色を補正する。具体的な補正方法としては、例えば、線画色を背景色から視覚特性的に遠ざける色に補正するといった方法がある。ここで、視覚特性的に遠ざけるとは、線画色を背景色から区別しやすくすることを意味し、例えば、線画色に含まれる背景色と同相の色成分を除去したり、線画色と背景色との色差（色相の差や明度の差）を大きくしたりすることで実現できる。また、線画を構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を線画色とするように、線画色を補正する方法もある。さらに、線画の線幅を算出して、線幅が所定値以上であれば後者の補正方法で補正し、線画の線幅が所定値未満であれば前者の補正方法で補正するといったように、線画の線幅に応じて補正の方法を切り替えてもよい。なお、線画が２以上の線画色を持つ場合、つまり、線画が持つ線画色の数を表す色数が２以上の場合は、それぞれの線画色に対して個別に背景色に応じた補正を行うことが望ましい。
【００１７】
本実施形態では、以上のように、線画色を算出するのに合わせてその背景色も算出し、算出した背景色に応じて線画色を補正するようにしているため、線画が背景色の影響を受けている場合であっても、その背景色の影響を排除した適切な線画色を算出することができる。そして、この線画色を用いて第２の画像レイヤＩｍ２を生成することにより、高画質の線画を再現可能な高圧縮ＰＤＦファイルＦＩｍを生成することができる。
【００１８】
＜画像処理装置の構成＞
次に、本実施形態の画像処理装置について具体的に説明する。図２は、本実施形態の画像処理装置１のハードウェア構成例を示すブロック図である。画像処理装置１は、ハードウェアとして、例えばＰＣ（パーソナルコンピュータ）などのコンピュータシステムを用いることができる。すなわち、画像処理装置１は、例えば図２に示すように、ＣＰＵ１０１などのプロセッサと、ＲＡＭ１０２、ＲＯＭ１０３、ＨＤＤ１０４などの記憶装置と、ＬＡＮなどのネットワークに接続する通信インタフェースであるネットワークＩ／Ｆ１０５とを備え、これらがバス１１０を介して接続された構成とされる。
【００１９】
本実施形態の画像処理装置１は、例えば、ネットワークに接続されたスキャナやホストコンピュータから処理対象の画像（入力画像Ｉｍ０）をネットワークＩ／Ｆ１０５を介して取得する。そして、画像処理装置１は、この入力画像Ｉｍ０を処理することで高圧縮ＰＤＦファイルＦＩｍを生成し、生成した高圧縮ＰＤＦファイルＦＩｍをＨＤＤ１０４に蓄積したり、ネットワークＩ／Ｆ１０５を介してネットワークに接続されたホストコンピュータに送信したりする。入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成する機能は、例えば、ＣＰＵ１０１が、ＲＡＭ１０２をワークエリアとして利用し、ＲＯＭ１０３やＨＤＤ１０４などに格納された所定のプログラムを実行することにより実現される。
【００２０】
なお、本実施形態の画像処理装置１は、例えばコピー機や複合機など、スキャナを備える画像形成装置の一機能として実現することもできる。この場合、図２に示すようなコンピュータシステムを画像形成装置が備える。そして、例えば、画像形成装置内部のＣＰＵ１０１が、ＲＡＭ１０２をワークエリアとして利用し、ＲＯＭ１０３やＨＤＤ１０４などに格納された所定のプログラムを実行することにより、スキャナあるいはネットワーク越しに取得した入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成する機能が実現される。なお、入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成するまでの一連の処理のうち、特にハードウェア実装に適する部分については、その機能を例えばＡＳＩＣ（Application  Specific  Integrated  Circuit）などの専用のハードウェアを用いて実現する構成であってもよい。
【００２１】
図３は、本実施形態の画像処理装置１の機能的な構成例を示すブロック図である。画像処理装置１は、入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成するための機能的な構成要素として、例えば図３に示すように、線画検出部１０（「線画検出手段」の一態様）と、線画色処理部２０と、色統一処理部３０と、ファイル生成部４０（「ファイル生成手段」の一態様）とを備える。本実施形態の画像処理装置１では、処理対象として取得された入力画像Ｉｍ０が線画検出部１０、線画色処理部２０およびファイル生成部４０に入力され、この入力画像Ｉｍ０に対応する高圧縮ＰＤＦファイルＦＩｍがファイル生成部４０から出力される。
【００２２】
線画検出部１０は、処理対象の入力画像Ｉｍ０から線画を検出する機能モジュールである。図４は、線画検出部１０の具体例を示すブロック図である。線画検出部１０は、例えば図４に示すように、第１の検出部１１（「第１の検出手段」の一態様）と、エッジ強調部１２と、第２の検出部１３（「第２の検出手段」の一態様）と、第３の検出部１４（「第３の検出手段」の一態様）とをサブモジュールとして含む。
【００２３】
第１の検出部１１は、処理対象の入力画像Ｉｍ０に対して線画のエッジを検出する処理を行い、その結果（以下、「エッジ検出結果」と呼ぶ）を出力する。この第１の検出部１１が行う処理は、例えば特許第３０８８０１０号公報に記載された方法と同様に、入力画像Ｉｍ０の３値化により得られる黒画素や白画素の連続性、パターンを利用して、文字などの線画と網点とを分離することで、線画を構成するエッジを検出する処理である。ここでエッジ検出結果とは、例えば、第１の検出部１１により線画のエッジとして検出された画素群の入力画像Ｉｍ０における座標位置を表す座標データである。このエッジ検出結果は、エッジ強調部１２および第３の検出部１４に入力される。
【００２４】
エッジ強調部１２は、第１の検出部１１から受け取ったエッジ検出結果を用いて、処理対象の入力画像Ｉｍ０に含まれる線画のエッジを強調する処理を行い、線画のエッジが強調されたエッジ強調画像を生成する。このエッジ強調部１２によるエッジ強調の処理は、第１の検出部１１のエッジ検出結果を用いて行われるため、入力画像Ｉｍ０に含まれる絵柄のエッジを強調してしまう可能性が少ない。このため、エッジ強調の度合いを大きくすることができ、線画のエッジが明確に強調されたエッジ強調画像を生成することができる。エッジ強調部１２により生成されたエッジ強調画像は、第２の検出部１３に入力される。
【００２５】
第２の検出部１３は、エッジ強調部１２から受け取ったエッジ強調画像に対して線画の領域を検出する処理を行い、その結果（以下、「領域検出結果」と呼ぶ）を出力する。この第２の検出部１３による処理は、例えば特許第４４７１２０２号公報に記載された方法と同様に、エッジ強調画像を２値化して得られる２値化画像から黒画素や白画素の連結成分を抽出し、連結成分の外接矩形の大きさや位置関係などに基づいて連結成分をグループ化して、グループに含まれる線画の領域を検出する処理である。特許第４４７１２０２号公報に記載の方法は、代表的な線画である文字が文字行を構成することが多い点に着目し、文字行を構成する連結成分をグループ化して文字行に含まれる文字の領域を検出している。ここで領域検出結果とは、例えば、第２の検出部１３により検出された領域に含まれる画素群の入力画像Ｉｍ０における座標位置を表す座標データである。この領域検出結果は、第３の検出部１４に入力される。
【００２６】
第３の検出部１４は、第１の検出部１１から受け取ったエッジ検出結果と、第２の検出部１３から受け取った領域検出結果とを用いて、入力画像Ｉｍ０から線画を検出する処理を行い、その結果（以下、「線画検出結果」と呼ぶ）を出力する。具体的には、第３の検出部１４は、第１の検出部１１によるエッジ検出結果と、第２の検出部１３による領域検出結果とのＯＲ演算により、第１の検出部１１により検出されたエッジで囲まれた領域と第２の検出部１３により検出された領域との双方を、入力画像Ｉｍ０からそれぞれ線画として検出する。ここで線画検出結果とは、例えば、第３の検出部１４により検出された線画を構成する画素群の入力画像Ｉｍ０における座標位置を表す座標データである。この線画検出結果は、線画色処理部２０に入力される。
【００２７】
線画色処理部２０は、背景色の影響を除去した線画色を算出する機能モジュールである。図５は、線画色処理部２０の具体例を示すブロック図である。線画色処理部２０は、例えば図５に示すように、線画色算出部２１（「線画色算出手段」の一態様）と、背景色算出部２２（「背景色算出手段」の一態様）と、線幅算出部２３（「線幅算出手段」の一態様）と、線画色補正部２４（「補正手段」の一態様）とをサブモジュールとして含む。
【００２８】
線画色算出部２１は、線画検出部１０の第３の検出部１４から受け取った線画検出結果を用いて、処理対象の入力画像Ｉｍ０に含まれるすべての線画の位置を特定する。そして、線画色算出部２１は、入力画像Ｉｍ０から抽出した各線画のそれぞれについて、色数および線画色を算出する。また、背景色算出部２２は、入力画像Ｉｍ０から抽出された各線画の背景色を算出する。
【００２９】
ここで、本実施形態における色の算出方法の具体例について説明する。画像における色の算出は様々な方法で実現できるが、本実施形態では、一例として、入力画像Ｉｍ０のＲＧＢデータから変換されるＨＳＶデータを用いるものとする。ＨＳＶは、色相（Ｈ）、彩度（Ｓ）および明度（Ｖ）により色を表現する色空間である。ここでは、入力画像Ｉｍ０のＲＧＢデータがＲＧＢ各色８ビット（値域：０〜２５５）で表現されるものとする。また、ＨＳＶデータのＳおよびＶの値域は、ＲＧＢデータと同じく０〜２５５であるものとする。ＨＳＶデータのＨは色相を表すため、２πの範囲の値（値域：０〜３５９）をとる。
【００３０】
ＲＧＢデータのＲ，Ｇ，Ｂの最大値をＭＡＸ、最小値をＭＩＮとすると、下記式（１）〜（５）を用いてＲＧＢデータをＨＳＶデータに変換することができる。
ＭＡＸ＝Ｒのとき：Ｈ＝６０×（（Ｇ−Ｂ）÷（ＭＡＸ−ＭＩＮ））  ・・・（１）
ＭＡＸ＝Ｇのとき：Ｈ＝６０×（（Ｂ−Ｒ）÷（ＭＡＸ−ＭＩＮ））＋１２０  ・・・（２）
ＭＡＸ＝Ｂのとき：Ｈ＝６０×（（Ｒ−Ｇ）÷（ＭＡＸ−ＭＩＮ））＋２４０  ・・・（３）
ただし、Ｈ＜０の場合は３６０を加算する。また、Ｒ＝Ｇ＝Ｂの場合はＨの値を不定とする。
Ｓ＝（（ＭＡＸ−ＭＩＮ）÷ＭＡＸ）×２５５  ・・・（４）
ただし、Ｒ＝Ｇ＝Ｂの場合はＳ＝０とする。
Ｖ＝ＭＡＸ  ・・・（５）
【００３１】
本実施形態では、例えば、有彩色については、色相（Ｈ）の値に応じた赤、黄、緑、シアン、青、マゼンタの６種類の分類と、明度（Ｖ）の値に応じた１１種類（等間隔）の分類とを組み合わせた６６種類に色を分類するものとする。また、無彩色については、明度（Ｖ）の値に応じた１１種類（黒、白とその間を等間隔）に色を分類するものとする。なお、この分類はあくまで一例であり、色の分類数などは任意に設定することができる。また、有彩色は明度（Ｖ）の値を用いずに色相（Ｈ）の値のみで分類してもよい。有彩色か無彩色かは、例えば彩度（Ｓ）の値を用いて判定できる。例えば、Ｓ≦５であれば無彩色、Ｓ＞５であれば有彩色と判定する。また、既存のＡＣＳ（Auto  Color  Selection）と呼ばれる技術を用いて入力画像Ｉｍ０がカラー画像かモノクロ画像かを判定し、入力画像Ｉｍ０がモノクロ画像の場合はすべての色を無彩色と判定するようにしてもよい。
【００３２】
線画色算出部２１は、例えば、以下のように線画の色数を算出することができる。まず、線画を構成する各画素（例えば２×２画素といった所定単位の画素ブロックでもよい）のＲＧＢデータをＨＳＶデータに変換し、ＨＳＶデータの平均値を算出する。そして、この平均値との差分（例えばＨＳＶ色空間におけるユークリッド距離）が所定値以上の画素（以下、「離散画素」と呼ぶ）が線画内に存在するか否かを確認し、離散画素が存在する場合は、線画全体の画素数に対する離散画素の画素数の割合をさらに算出する。そして、線画内に離散画素が存在しない場合、あるいは、線画全体の画素数に対する離散画素の画素数の割合が所定値未満の場合は、線画の色数を１とする。一方、線画内に離散画素があり、かつ、線画全体の画素数に対する離散画素の画素数の割合が所定値以上である場合は、線画の色数を２以上であると推定する。そして、線画の色数が２以上と推定した場合は、例えば、離散画素のＨＳＶ色空間における分布を表すヒストグラムを算出し、このヒストグラムに現れるピークの数に基づいて線画の色数を算出する。
【００３３】
また、線画色算出部２１は、例えば、以下のように線画色を算出することができる。すなわち、線画の色数が１であれば、その線画を構成する各画素のＨＳＶデータの平均値を、その線画の線画色として算出する。また、線画の色数が２以上であれば、各色のそれぞれについてＨＳＶデータの平均値を線画色として算出する。なお、平均値の代わりにヒストグラムのピークの色や最も明度が高い色を線画色とするといった方法でもよい。こうして算出された線画色は、有彩色であれば上述の６６種類のいずれか、無彩色であれば上述の１１種類のいずれかに分類することができる。例えば、線画色が有彩色の場合の色相（Ｈ）の値について、０≦Ｈ＜３０または３３０≦Ｈ＜３６０であれば赤、３０≦Ｈ＜９０であれば黄、９０≦Ｈ＜１５０であれば緑、１５０≦Ｈ＜２１０であればシアン、２１０≦Ｈ＜２７０であれば青、２７０≦Ｈ＜３３０であればマゼンタといったように、線画色を分類できる。
【００３４】
背景色算出部２２は、例えば、以下のように線画の背景色を算出することができる。すなわち、線画に隣接（１画素程度の隙間があってもよい）する所定の大きさおよび形状の領域を選択し、この領域内の各画素のＲＧＢデータをＨＳＶデータに変換して、その平均値を線画の背景色とする。この背景色についても、線画色と同様に、有彩色であれば上述の６６種類のいずれか、無彩色であれば上述の１１種類のいずれかに分類することができる。また、入力画像Ｉｍ０が原稿をスキャナで読み取った画像であり、画像処理装置１が原稿の地肌色（原稿の本来の色）を検出する機能を持つ場合、検出された原稿の地肌色を線画候補の背景色としてもよい。
【００３５】
背景色が有彩色もしくは灰色の場合、この背景色の映り込みによって線画色算出部２１により算出された色数が増えている場合がある。そこで、線画色算出部２１は、色数が２以上の線画に対して、背景色算出部２２により算出された背景色を用いて、色数を再計算する。例えば、線画色算出部２１は、線画を構成する画素のうち、背景色算出部２２により算出された背景色から所定のユークリッド距離内にある色を持つ画素を除いた上で、上述した方法により線画の色数を再計算する。また、線画色算出部２１は、算出した線画色と背景色算出部２２により算出された背景色との平均値から中間色を予測して、その中間色に近い色を持つ画素を除いた上で、上述した方法により線画の色数を再計算してもよい。線画色と背景色との中間色は、平均値以外にも、別の表色系に変換して求めた両者の中点などを使って予測してもよい。また、線画色算出部２１は、最初に算出した色数から１を減算するといった単純な方法により、色数の再計算を行ってもよい。このように、線画色算出部２１は、背景色の影響を除去した線画の色数を算出する。
【００３６】
なお、以上説明した例は、線画の色数や線画色、背景色などを算出する方法の一例であり、他の方法により線画の色数や線画色、背景色などを算出してもよい。例えば、入力画像Ｉｍ０のＲＧＢデータをテーブル変換などによりマンセル表色系にマッピングし、マンセル表色系での色相と明度を用いて線画の色数や線画色、背景色などを算出してもよい。
【００３７】
線幅算出部２３は、入力画像Ｉｍ０から検出された各線画の線幅を算出する。線画の線幅は、例えば、線画のエッジ間の距離（画素数）などから算出できる。また、線画の外接矩形の総画素数に対する線画の領域内の画素数の割合などから、線画の線幅（太文字かどうか）を算出してもよい。
【００３８】
線画色補正部２４は、線画色算出部２１により算出された各線画の線画色を、背景色算出部２２により算出された背景色に応じて補正する。例えば、線画色補正部２４は、線幅算出部２３により算出された線画の線幅が所定値以上（例えば太文字の場合）であれば、線画を構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を線画色とするように、線画色算出部２１により算出された線画色を補正する。一方、線幅算出部２３により算出された線画の線幅が所定値未満（例えば細文字の場合）であれば、線画色算出部２１により算出された線画色を背景色から視覚特性的に遠ざける色に補正する。なお、線幅算出部２３により算出された線画の線幅が所定値以上の場合は、線画のエッジ近傍のみを補正の対象としてもよい。
【００３９】
また、線画色補正部２４は、線画の線幅に関わらず、線画を構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を線画色とするように補正する方法と、線画色を背景色から視覚特性的に遠ざける色に補正する方法とのいずれか一方を実施する構成であってもよい。この場合、線幅算出部２３は不要となる。
【００４０】
また、線画色補正部２４は、例えば線画色算出部２１により算出された線画色と背景色算出部２２により算出された背景色とが同相の成分を含む場合に、線画色が黒に近い色であれば黒に補正し、白に近い色であれば白に補正するといった方法で線画色を補正してもよい。
【００４１】
また、線画色補正部２４は、線画色算出部２１により算出された色数が２以上の線画については、それぞれの線画色に対して個別に背景色に応じた補正を行う。例えば、線画色補正部２４は、色数が２以上の線画に対して線画色に応じたクラスタリングを行い、クラスタリングの結果ごとに、上述のいずれかの方法によって線画色の補正を行う。
【００４２】
線画色補正部２４は、以上のように、入力画像Ｉｍ０から検出された各線画の線画色を背景色に応じて補正した結果を、線画データ（１）として出力する。この線画データ（１）には、入力画像Ｉｍ０から検出された各線画のそれぞれについて、線画を構成する画素群の入力画像Ｉｍ０における座標位置を表す座標データと、線画色と色数とが含まれる。この線画データ（１）は、色統一処理部３０およびファイル生成部４０に入力される。
【００４３】
色統一処理部３０は、所定のグループ単位で線画色を統一する処理を行う機能モジュールである。図６は、色統一処理部３０の具体例を示すブロック図である。色統一処理部３０は、例えば図６に示すように、統一対象決定部３１と、代表色算出部３２と、線画色変更部３３とをサブモジュールとして含む。
【００４４】
統一対象決定部３１は、線画色を統一する対象となる線画のグループを決定する。線画色を統一する対象となる線画のグループの例としては、代表的な線画である文字により構成される文字行が挙げられる。つまり、入力画像Ｉｍ０に含まれる１つの文字行を１つのグループとする。ただし、線画色を統一するグループはこれに限らず、予め定めた任意の基準に従ってグループを決定すればよい。例えば、１つの文字行を１つのグループとするのではなく、文字が横方向に並ぶ横文字行のすべてを１つのグループとしてもよいし、文字が縦方向に並ぶ縦文字行のすべてを１つのグループとしてもよい。また、入力画像Ｉｍ０に含まれる文字行全体を１つのグループとしてもよい。さらに、文字行を構成する文字に限らず、入力画像Ｉｍ０における位置が近い所定数の線画の集合を１つのグループとしてもよいし、入力画像Ｉｍ０において密集している線画の集合を１つのグループとしてもよい。
【００４５】
統一対象決定部３１は、線画データ（１）に含まれる各線画の座標データを用いて、入力画像Ｉｍ０における線画のグループを決定することができる。また、統一対象決定部３１は、線画検出部１０の第２の検出部１３によるグループ化の結果を用いて、入力画像Ｉｍ０における線画のグループを決定してもよい。
【００４６】
代表色算出部３２は、線画色処理部２０の線画色補正部２４から受け取った線画データ（１）を用いて、統一対象決定部３１が決定したグループのそれぞれについて代表色を決定する。このとき、代表色算出部３２は、グループを構成する線画のうち、所定の条件に当てはまる線画を除外した残りの線画の線画色に基づいて、グループの代表色を算出する。ここで、所定の条件とは、例えば、線画色が予め定めた特定色であるといった条件や、線画の色数が２以上であるという条件である。
【００４７】
すなわち、代表色算出部３２は、グループを構成する線画のうち、線画色が予め定めた特定色（例えば赤色や青色など）の線画と、色数が２以上の線画を除外する。ここで、線画色が特定色であるか否かは、例えば、上述した方法で算出された線画色の色相（Ｈ）の値が特定色の色相（Ｈ）の値から±３０（度）の範囲にある場合に特定色とするといった方法で判定することができる。なお、この判定方法は一例であり、別の方法で線画色が特定色であるか否かを判定してもよい。線画の色数は、線画色処理部２０の線画色補正部２４から受け取った線画データ（１）から特定できる。
【００４８】
次に、代表色算出部３２は、グループを構成する線画のうち、除外されずに残った線画の線画色の平均値を算出する。そして、代表色算出部３２は、算出した平均値に対して色差が基準値を超える線画色の線画をさらに除外し、残った線画の線画色の平均値をさらに算出して、これをグループの代表色とする。なお、線画色の平均値を算出する際に、代表色算出部３２は、画素数が大きい線画の線画色ほど重みが大きくなるような重み付けを行って、線画色の平均値を算出することが望ましい。また、線画色の平均値が無彩色で明度が低い場合はグループの代表色を黒、線画色の平均値が無彩色で明度が低い場合はグループの代表色を白としてもよい。
【００４９】
線画色変更部３３は、グループを構成する線画の線画色を、代表色算出部３２により算出された代表色に変更する。このとき、線画色変更部３３は、線画色の平均値を算出する前に上述の条件に当てはまるとして除外された線画を含め、グループを構成するすべての線画の線画色をグループの代表色に変更してもよいし、グループを構成する線画のうち、上述の条件に当てはまるとして除外された線画を除いた残りの線画の線画色をグループの代表色に変更してもよい。また、線画色を単純に平均値に変更すると線画が見にくくなる可能性があるので、グループの代表色の濃度を背景色に応じて調整した上で、線画色をグループの代表色に変更するといった対策を行ってもよい。
【００５０】
また、上述の条件に当てはまるとして除外された線画の線画色をグループの代表色に変更しない場合、例えば、除外された線画同士で線画色の平均値を算出し、平均値との色差が所定値以上となる線画色を持つ線画を除外して平均値を算出するといった処理を繰り返して除外された線画の線画色を変更することにより、除外された線画同士で線画色の統一を図るようにしてもよい。
【００５１】
線画色変更部３３は、以上のように、グループを構成する線画の線画色をグループごとに変更した結果を、線画データ（２）として出力する。この線画データ（２）には、入力画像Ｉｍ０から検出された線画のうち、グループを構成する線画の変更後の線画色が含まれている。この線画データ（２）は、ファイル生成部４０に入力される。
【００５２】
ファイル生成部４０は、線画色処理部２０の線画色補正部２４から受け取った線画データ（１）と、色統一処理部３０の線画色変更部３３から受け取った線画データ（２）とを用いて、処理対象の入力画像Ｉｍ０から、線画のみからなる２値画像である第１の画像レイヤＩｍ１と、線画色を表現する多値画像である第２の画像レイヤＩｍ２と、線画以外の絵柄および背景を表現する多値画像である第３の画像レイヤＩｍ３とを生成する。このとき、特に線画色を表現する第２の画像レイヤＩｍ２は、グループを構成する線画については線画データ（２）に含まれる線画色を用い、それ以外の線画については線画データ（１）に含まれる線画色を用いて生成される。
【００５３】
そして、ファイル生成部４０は、第１の画像レイヤＩｍ１および第２の画像レイヤＩｍ２に対しては、線画の圧縮に適した第１の圧縮処理を施すとともに、第３の画像レイヤＩｍ３に対しては、絵柄や背景の圧縮に適した第２の圧縮処理を施す。そして、ファイル生成部４０は、圧縮した第１の画像レイヤＩｍ１、第２の画像レイヤＩｍ２および第３の画像レイヤＩｍ３をＰＤＦ形式の１つの画像ファイル上で統合し、入力画像Ｉｍ０に対応する高圧縮ＰＤＦファイルＦＩｍを生成する。
【００５４】
なお、圧縮の方式は特に限定されるものではなく、第１の画像レイヤＩｍ１と第２の画像レイヤＩｍ２に対しては線画の圧縮に適した方式、第３の画像レイヤＩｍ３に対しては絵柄や背景の圧縮に適した方式で圧縮処理が行われればよい。また、第１の画像レイヤＩｍ１、第２の画像レイヤＩｍ２および第３の画像レイヤＩｍ３を統合する画像ファイルの形式はＰＤＦ形式に限定されるものではなく、例えばＪＰＭ形式など、複数の画像レイヤを重ね合わせて１つの画像とする様々な形式を利用することができる。ファイル生成部４０により生成された高圧縮ＰＤＦファイルＦＩｍは、上述したように、例えば、ＨＤＤ１０４に蓄積される、あるいは、ネットワークＩ／Ｆ１０５を介してネットワークに接続されたホストコンピュータなどに送信される。
【００５５】
＜画像処理装置の動作＞
次に、以上のように構成される本実施形態の画像処理装置１の動作の概要を説明する。図７は、本実施形態の画像処理装置１による動作の流れを説明するフローチャートである。
【００５６】
本実施形態の画像処理装置１の動作が開始されると、まず、ステップＳ１において、処理対象となる入力画像Ｉｍ０が取得される。この入力画像Ｉｍ０は、線画検出部１０、線画色処理部２０およびファイル生成部４０に入力される。
【００５７】
次に、ステップＳ２において、ステップＳ１で取得した入力画像Ｉｍ０に対して、線画検出部１０の第１の検出部１１による処理が行われる。そして、第１の検出部１１が出力するエッジ検出結果が、エッジ強調部１２と第３の検出部１４とに入力される。
【００５８】
次に、ステップＳ３において、エッジ強調部１２により、ステップＳ２のエッジ検出結果を用いて、ステップＳ１で取得した入力画像Ｉｍ０に含まれる線画のエッジを強調する処理が行われ、エッジ強調画像が生成される。このエッジ強調画像は、第２の検出部１３に入力される。
【００５９】
次に、ステップＳ４において、ステップＳ３で生成されたエッジ強調画像に対して、第２の検出部１３による処理が行われる。そして、第２の検出部１３が出力する領域検出結果が、第３の検出部１４に入力される。
【００６０】
次に、ステップＳ５において、第３の検出部１４により、ステップＳ２のエッジ検出結果とステップＳ４の領域検出結果とを用いて、ステップＳ１で取得した入力画像Ｉｍ０から線画が検出される。そして、第３の検出部１４が出力する線画検出結果が、線画色処理部２０に入力される。
【００６１】
次に、ステップＳ６において、ステップＳ５の線画検出結果を用いて、ステップＳ１で取得した入力画像Ｉｍ０に含まれる各線画に対して、線画色処理部２０による処理が行われる。そして、線画色処理部２０が出力する線画データ（１）が、色統一処理部３０とファイル生成部４０とに入力される。
【００６２】
次に、ステップＳ７において、ステップＳ６の線画データ（１）を用いて、色統一処理部３０による処理が行われる。そして、色統一処理部３０が出力する線画データ（２）が、ファイル生成部４０に入力される。
【００６３】
次に、ステップＳ８において、ファイル生成部４０により、ステップＳ６の線画データ（１）とステップＳ７の線画データ（２）とを用いて、ステップＳ１で取得した入力画像Ｉｍ０から第１の画像レイヤＩｍ１、第２の画像レイヤＩｍ２および第３の画像レイヤＩｍ３が生成される。そして、各画像レイヤに対して個別の圧縮処理を施した後に１つの画像ファイルへ統合する処理が行われ、入力画像Ｉｍ０に対応する高圧縮ＰＤＦファイルＦＩｍが生成される。
【００６４】
そして最後に、ステップＳ９において、ステップＳ８で生成された高圧縮ＰＤＦファイルＦＩｍがファイル生成部４０から出力され、例えばＨＤＤ１０４に蓄積される、あるいは、ネットワークＩ／Ｆ１０５を介してネットワークに接続されたホストコンピュータなどに送信される。
【００６５】
＜第１の検出部による処理の具体例＞
次に、第１の検出部１１による処理の具体例について、図８を参照して説明する。第１の検出部１１による処理は、上述したように、入力画像Ｉｍ０の３値化により得られる黒画素や白画素の連続性、パターンを利用して、文字などの線画と網点とを分離することで、線画を構成するエッジを検出する処理である。図８は、第１の検出部１１による処理の一例を説明するフローチャートである。
【００６６】
第１の検出部１１は、まず、処理対象の入力画像Ｉｍ０に対して、フィルタリングによるＭＴＦ補正を行う（ステップＳ１０１）。ＭＴＦ補正は、次の３値化の精度を高めるために実施される前処理である。このＭＴＦ補正用のフィルタには、例えば特許第３０８８０１０号公報に記載のものを用いることができる。
【００６７】
次に、第１の検出部１１は、ＭＴＦ補正された入力画像Ｉｍ０に対し３値化を実施して（ステップＳ１０２）、入力画像Ｉｍ０を黒画素、白画素、灰色画素に分ける。
【００６８】
次に、第１の検出部１１は、例えば特許第３０８８０１０号公報に記載されているように、黒連結画素や白連結画素のパターンマッチングにより入力画像Ｉｍ０から黒線画や白線画を抽出することで、入力画像Ｉｍ０に含まれる線画のエッジを検出する（ステップＳ１０３）。
【００６９】
そして、第１の検出部１１は、ステップＳ１０３の処理結果をエッジ検出結果として出力し（ステップＳ１０４）、一連の処理を終了する。
【００７０】
＜第２の検出部による処理の具体例＞
次に、第２の検出部１３による処理の具体例について、図９を参照して説明する。第２の検出部１３による処理は、上述したように、エッジ強調部１２により生成されたエッジ強調画像を２値化して得られる２値化画像から黒画素や白画素の連結成分を抽出し、連結成分の外接矩形の大きさや位置関係などに基づいて連結成分をグループ化して、グループに含まれる線画の領域を検出する処理である。図９は、第２の検出部１３による処理の一例を説明するフローチャートである。
【００７１】
第２の検出部１３は、まず、エッジ強調部１２により生成されたエッジ強調画像に対して２値化を実施する（ステップＳ２０１）。ここでの２値化は背景よりも低輝度のオブジェクトを抽出するための処理であり、低輝度のオブジェクトを背景と区別できる適切な閾値が設定される。また、背景との分離精度を高めるために動的閾値２値化を用いてもよい。
【００７２】
次に、第２の検出部１３は、例えば特許第４４７１２０２号公報に記載されているように、ステップＳ２０１で得られた２値化画像から、水平方向に並ぶ黒画素のランと垂直方向に並ぶ黒画素のランを連結して連結成分を取得する（ステップＳ２０２）。
【００７３】
次に、第２の検出部１３は、ステップＳ２０２で取得した連結成分のうち、サイズが小さい連結成分を除去する（ステップＳ２０３）。この処理は、次のグループ化における計算量を削減するための処理である。
【００７４】
次に、第２の検出部１３は、ステップＳ２０２で取得され、ステップＳ２０３で除去されなかった連結成分を、連結成分の外接矩形の大きさや位置関係などに基づいて結合し、グループ化する（ステップＳ２０４）。ここでのグループ化は、代表的な線画である文字を行単位でグループ化するなど、予め定めた規則に従う。したがって、グループ化されない連結成分も存在する。
【００７５】
次に、第２の検出部１３は、エッジ強調部１２により生成されたエッジ強調画像に対して、再度、２値化を実施する（ステップＳ２０５）。ここでの２値化は背景よりも高輝度のオブジェクトを抽出するための処理であり、高輝度のオブジェクトを背景と区別できる適切な閾値が設定される。また、背景との分離精度を高めるために動的閾値２値化を用いてもよい。
【００７６】
次に、第２の検出部１３は、例えば特許第４４７１２０２号公報に記載されているように、ステップＳ２０５で得られた２値化画像から、水平方向に並ぶ白画素のランと垂直方向に並ぶ白画素のランを連結して連結成分を取得する（ステップＳ２０６）。
【００７７】
次に、第２の検出部１３は、ステップＳ２０６で取得された連結成分を、連結成分の外接矩形の大きさや位置関係などに基づいて結合し、グループ化する（ステップＳ２０７）。ここでのグループ化も、ステップＳ２０４と同様、代表的な線画である文字を行単位でグループ化するなど、予め定めた規則に従う。したがって、グループ化されない連結成分も存在する。
【００７８】
次に、第２の検出部１３は、ステップＳ２０４で結合した連結成分のグループと、ステップＳ２０７で結合した連結成分のグループとで、エッジ強調画像における位置が重なるグループがあるかどうかを判断する（ステップＳ２０８）。そして、重なるグループがあれば（ステップＳ２０８：Ｙｅｓ）、それらのグループの外接矩形のサイズを比較して、外接矩形のサイズが小さい方のグループを削除する（ステップＳ２０９）。
【００７９】
次に、第２の検出部１３は、以上の処理によりエッジ強調画像から抽出されたグループに含まれる連結成分の領域を、入力画像Ｉｍ０に含まれる線画の領域として検出する（ステップＳ２１０）。そして、第２の検出部１３は、ステップＳ２１０の処理結果を領域検出結果として出力し（ステップＳ２１１）、一連の処理を終了する。
【００８０】
＜線画色処理部による処理の具体例＞
次に、線画色処理部２０による処理の具体例について、図１０を参照して説明する。図１０は、線画色処理部２０による処理の一例を説明するフローチャートである。
【００８１】
線画検出部１０から線画色処理部２０に対して線画検出結果が入力されると、まず、線画色算出部２１が、線画検出部１０から受け取った線画検出結果に基づいて、処理対象の入力画像Ｉｍ０に含まれる線画のうちの１つを取り出す（ステップＳ３０１）。
【００８２】
次に、線画色算出部２１は、ステップＳ３０１で取り出した線画を構成する各画素のＲＧＢデータをＨＳＶデータに変換し、例えば上述した方法により、この線画の線画色と色数を算出する（ステップＳ３０２）。
【００８３】
次に、背景色算出部２２が、ステップＳ３０１で取り出された線画に隣接（１画素程度の隙間があってもよい）する所定の大きさおよび形状の領域を選択し、この領域内の各画素のＲＧＢデータをＨＳＶデータに変換して、例えば上述した方法により背景色を算出する（ステップＳ３０３）。
【００８４】
次に、線画色算出部２１が、ステップＳ３０２で算出した線画の色数が１かどうかを確認し（ステップＳ３０４）、線画の色数が２以上の場合は（ステップＳ３０４：Ｎｏ）、ステップＳ３０３で算出された背景色に基づいて、例えば上述した方法により、ステップＳ３０１で取り出された線画の色数を再計算する（ステップＳ３０５）。
【００８５】
一方、ステップＳ３０２で算出された線画の色数が１の場合（ステップＳ３０４：Ｙｅｓ）、あるいは、ステップＳ３０５で再計算された線画の色数が１の場合は（ステップＳ３０６：Ｙｅｓ）、線画色補正部２４が、例えば上述した方法により、ステップＳ３０２で算出された線画色を、ステップＳ３０３で算出された背景色に応じて補正する（ステップＳ３０７）。
【００８６】
一方、ステップＳ３０５で再計算された線画の色数が２以上の場合には（ステップＳ３０６：Ｎｏ）、線画色補正部２４は、それぞれの線画色に応じて線画を構成する各画素のクラスタリングを行う（ステップＳ３０８）。そして、線画色補正部２４は、ステップＳ３０８のクラスタリングの結果ごとに、線画色を背景色に応じて補正する（ステップＳ３０９）。
【００８７】
次に、線画色補正部２４は、未処理の線画があるか否かを判定する（ステップＳ３１０）。そして、未処理の線画があれば（ステップＳ３１０：Ｙｅｓ）、ステップＳ３０１に戻って以降の処理が繰り返される。一方、すべての線画に対して処理が終了すると（ステップＳ３１０：Ｎｏ）、線画色補正部２４は、入力画像Ｉｍ０に含まれる各線画の座標データ、線画色および色数を含む線画データ（１）を出力し（ステップＳ３１１）、一連の処理を終了する。
【００８８】
本実施形態の画像処理装置１では、以上のように、線画色処理部２０による処理によって、入力画像Ｉｍ０に含まれる各線画の線画色が背景色に応じて補正されるので、線画が背景色の影響を受けている場合であっても、その背景色の影響を排除した適切な線画色を算出することができる。そして、この線画色を用いて第２の画像レイヤＩｍ２を生成することにより、高画質の線画を再現可能な高圧縮ＰＤＦファイルＦＩｍを生成することができる。
【００８９】
図１１は、背景色の影響によって線画のエッジ近傍が変色した様子を示す図である。例えばスキャナによる原稿の読み取りなどによって取得された入力画像Ｉｍ０に含まれる線画は、図１１に示すように、背景色の影響によってエッジ近傍が変色する場合がある。図１１の例では、黒色の線画である「黒」という文字のエッジ近傍に背景色の青色が写り込んで変色した様子を示している。
【００９０】
図１２は、背景色に応じて線画色を補正する処理の具体例を説明する図であり、（ａ）は元の原稿に含まれる線画を表し、（ｂ）は背景色の影響によりエッジ近傍が変色した線画を表し、（ｃ）は線画色が補正された線画を表している。この図１２の例では、青色を背景色とする黒色の「黒」という太文字を補正対象の線画の例として示している。
【００９１】
図１２（ａ）に示すような黒色の太文字は、背景色である青色の影響によって、図１２（ｂ）に示すように、エッジ近傍が青色に近い色に変色する場合がある。この場合、例えば、この太文字を構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素、つまり、背景色である青色に近いエッジ近傍の画素を除いた残りの画素の色の平均値を線画色とするように補正することによって、図１２（ｃ）のように、背景色の影響を排除して図１２（ａ）に示す黒色の太文字を再現できる。
【００９２】
図１３は、背景色に応じて線画色を補正する処理の具体例を説明する図であり、図１２の例と同様に、（ａ）は元の原稿に含まれる線画を表し、（ｂ）は背景色の影響によりエッジ近傍が変色した線画を表し、（ｃ）は線画色が補正された線画を表している。この図１３の例では、青色を背景色とする黒色の水平ラインを補正対象の線画の例として示している。図１３に例示する水平ラインのような線で表現されるオブジェクトは文字の範疇からは外れるが、圧縮の際に文字と同様に扱うことが望ましいオブジェクトであるため、本実施形態では、文字と同様に扱われる線画として入力画像Ｉｍ０から検出される。
【００９３】
図１３（ａ）に示すような黒色の水平ラインは、背景色である青色の影響によって、図１３（ｂ）に示すように、エッジ近傍が青色に近い色に変色する場合がある。この場合、例えば、この水平ラインを構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素、つまり、背景色である青色に近いエッジ近傍の画素を除いた残りの画素の色の平均値を線画色とするように補正することで、図１３（ｃ）のように、背景色の影響を排除して図１３（ａ）に示す黒色の水平ラインを再現できる。
【００９４】
図１４は、背景色に応じて線画色を補正する処理の具体例を説明する図であり、（ａ）は元の原稿に含まれる線画を表し、（ｂ）は背景色の影響により全体が変色した線画を表し、（ｃ）は線画色が補正された線画を表している。この図１４の例では、青色を背景色とする黒色の「黒文字」という細文字の文字列を補正対象の線画の例として示している。
【００９５】
図１４（ａ）に示すような黒色の細文字は、背景色である青色の影響によって、図１４（ｂ）に示すように、文字全体が青色に近い色に変色する場合がある。この場合、例えば、青色に近い変色した細文字の色を、背景色である青色から視覚特性的に遠ざける色に補正することで、図１４（ｃ）に示すように、背景色の影響を排除して図１４（ａ）に示す黒色の細文字を再現できる。
【００９６】
なお、以上の図１２乃至図１４の例のように、背景色の影響により変色した線画色が黒色に近いと判断できる場合、つまり、線画色が背景色と同相の成分を含み、かつ、明度が所定値よりも低い場合には、この線画色を単純に黒色に補正するようにしても同様の効果を得ることができる。また、背景色の影響により変色した線画色が白色に近いと判断できる場合、つまり、線画色が背景色と同相の成分を含み、かつ、明度が所定値よりも高い場合には、この線画色を単純に白色に補正するようにしても同様の効果を得ることができる。
【００９７】
図１５は、背景色に応じて線画色を補正する処理の具体例を説明する図であり、（ａ）は元の原稿に含まれる線画を表し、（ｂ）は背景色の影響によりエッジ近傍が変色した線画を表し、（ｃ）は線画色に応じたクラスタリングを行わずに線画色が補正された線画を表し、（ｄ）は線画色に応じたクラスタリングの結果ごとに線画色が補正された線画を表している。この図１５の例は、黒色の「印」という文字の上に赤色の印鑑が押印された部分が１つの線画として検出された場合に、この部分の線画色を補正する例であり、線画の背景色は白色であるものとする。この例は、色数が２以上の線画に対して線画色を補正する処理の具体例である。
【００９８】
図１５（ａ）に示すような線画は、背景色である白色の影響によって、図１５（ｂ）に示すように、黒色の「印」の文字が灰色、赤色の印鑑の部分が薄い赤色に変色する場合がある。この場合、線画の色数は２であるが、線画色に応じたクラスタリングをせずに線画全体に対して一律に線画色の補正を行うと、図１５（ｃ）に示すように、黒色の「印」の文字と赤色の印鑑の部分の双方が共通の濃い赤色で表現されることになり、図１５（ａ）に示す正しい線画を再現できない。これに対して、線画色に応じたクラスタリングを行い、クラスタリングの結果ごとに、それぞれの線画色を背景色である白から視覚的に遠ざける色に補正することによって、図１５（ｄ）に示すように、背景色の影響を排除して、図１５（ａ）に示す正しい線画を再現できる。
【００９９】
＜色統一処理部による処理の具体例＞
次に、色統一処理部３０による処理の具体例について、図１６を参照して説明する。図１６は、色統一処理部３０による処理の一例を説明するフローチャートである。
【０１００】
線画色処理部２０から色統一処理部３０に対して線画データ（１）が入力されると、まず、統一対象決定部３１が、この線画データ（１）に含まれる各線画の座標データを用いて、色統一の対象となる線画のグループを決定する（ステップＳ４０１）。
【０１０１】
次に、代表色算出部３２が、ステップＳ４０１で決定されたグループのうちの１つを取り出す（ステップＳ４０２）。そして、代表色算出部３２は、ステップＳ４０２で取り出したグループを構成する線画のうち、線画色が予め定めた特定色（例えば赤色や青色など）の線画を除外する（ステップＳ４０３）。さらに、代表色算出部３２は、ステップＳ４０２で取り出したグループを構成する線画のうち、色数が２以上の線画を除外する（ステップＳ４０４）。そして、代表色算出部３２は、ステップＳ４０３およびステップＳ４０４で除外されずに残った線画の線画色の平均値を算出する（ステップＳ４０５）。
【０１０２】
次に、代表色算出部３２は、ステップＳ４０２で取り出したグループを構成する線画のうち、ステップＳ４０５で算出した平均値に対して色差が基準値を超える線画色の線画をさらに除外する（ステップＳ４０６）。そして、代表色算出部３２は、ステップＳ４０６でも除外されずに残った線画の線画色の平均値を、ステップＳ４０２で取り出したグループの代表色として算出する（ステップＳ４０７）。
【０１０３】
次に、線画色変更部３３が、ステップＳ４０３、ステップＳ４０４およびステップＳ４０６で除外されずに残った線画の線画色を、ステップＳ４０７で算出された代表色に変更する（ステップＳ４０８）。そして、線画色変更部３３は、未処理のグループがあるか否かを判定する（ステップＳ４０９）。そして、未処理のグループがあれば（ステップＳ４０９：Ｙｅｓ）、ステップＳ４０２に戻って以降の処理が繰り返される。一方、すべてのグループに対して処理が終了すると（ステップＳ４０９：Ｎｏ）、線画色変更部３３は、入力画像Ｉｍ０から検出された線画のうち、グループを構成する線画の変更後の線画色を含む線画データ（２）を出力し（ステップＳ４１０）、一連の処理を終了する。
【０１０４】
本実施形態の画像処理装置１では、以上のように、色統一処理部３０による処理によって、色を統一する単位となるグループを構成する線画のうち、所定の条件に当てはまる線画を除外した残りの線画の線画色に基づいてグループの代表色が算出され、グループを構成する線画の線画色がグループの代表色に変更される。したがって、この線画色を用いて第２の画像レイヤＩｍ２を生成することにより、線画の色の再現性を損なうことなく圧縮率を高めることができる。
【０１０５】
図１７は、線画色を統一する単位となるグループを決定する方法の具体例を説明する図であり、代表的な線画である文字により構成される文字行を１つのグループとする場合の例を示している。入力画像Ｉｍ０において、縦方向と横方向とに文字が並んでいる場合、これらの文字をグループ化したときに、１つの文字が縦行と横行の両方に所属することがある。この場合には、例えば図１７（ａ）に示すように、縦方向と横方向の文字間隔を比べたり、図１７（ｂ）に示すように、縦方向と横方向の行間隔を比べたりすることにより、入力画像Ｉｍ０に含まれる各文字を適切に文字行としてグループ化することができる。図１７（ａ）および（ｂ）の例では、それぞれの文字が横行を構成する文字としてグループ化される。
【０１０６】
図１８は、グループの代表色を算出する処理の具体例を説明する図である。この例では、図１８（ａ）に示すように、「あいうえおかきくけこ」という文字列がグループを構成しており、このうち、文字「う」は赤色、文字「け」は青色であり、ほかの文字は黒色であるとする。また、文字「お」には緑色の「裏」という文字が重なっており、さらに、文字「お」と「か」の間に緑色の「※１」という記号および数字が挿入されているものとする。
【０１０７】
まず、図１８（ａ）に示す文字列から、特定色である赤色の文字「う」と、特定色である青色の文字「け」が除外される。その結果、残った文字列は、図１８（ｂ）のようになる。
【０１０８】
次に、図１８（ｂ）に示す文字列から、色数が２となる部分、つまり緑色の「裏」という文字が重なった黒色の文字「お」が除外される。その結果、残った文字列は、図１８（ｃ）のようになる。
【０１０９】
次に、図１８（ｃ）に示す文字列の色の平均値が算出され、この平均値に対して色差が基準値を超える緑色の「※１」という記号および数字が、図１８（ｃ）に示す文字列から除外される。その結果、残った文字列は、図１８（ｄ）のようになる。
【０１１０】
最後に、図１８（ｄ）に示す文字列の色の平均値が、このグループの代表色として算出される。そして、図１８（ｄ）に示す文字列に含まれる各文字の色が、グループの代表色に変更される。なお、グループの代表色による色の変更は、図１８（ａ）に示す文字列の全体を対象として行ってもよい。
【０１１１】
＜実施形態の効果＞
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の画像処理装置１は、処理対象の入力画像Ｉｍ０から検出した線画のそれぞれに対して線画色および背景色を算出し、背景色に応じて線画色を補正するようにしている。したがって、入力画像Ｉｍ０に含まれる線画が背景色の影響を受けている場合であっても、その背景色の影響を排除した適切な線画色を算出することができる。そして、この線画色を用いて線画色を表現する第２の画像レイヤＩｍ２を生成することにより、高画質の線画を再現可能な高圧縮ＰＤＦファイルＦＩｍを生成することができる。
【０１１２】
また、背景色に応じて線画色を補正する方法として、線画色を背景色から視覚特性的に遠ざける色に補正する方法をとることで、既存の方法では補正が困難であった細文字など、線幅が小さい線画の線画色も適切に補正することができる。
【０１１３】
また、背景色に応じて線画色を補正する方法として、線画を構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を線画色とするように線画色を補正する方法をとることで、線画色を高精度に補正することができる。
【０１１４】
また、線画の線幅を算出し、線画の線幅が所定値以上であれば、線画を構成する画素のうち、背景色から所定のユークリッド距離内にある色を持つ画素を除いた残りの画素の色の平均値を線画色とするように線画色を補正し、線画の線幅が所定値未満であれば、線画色を背景色から視覚特性的に遠ざける色に補正することにより、線幅が大きい線画に対しては線画色を高精度に補正しつつ、線幅が小さい線画に対しても有効な線画色の補正を行うことができる。
【０１１５】
また、線画の色数を算出し、線画の色数が２以上の場合はそれぞれの線画色に対して個別に背景色に応じた補正を行うことにより、線画色の補正によって再現性が却って低下する不都合を有効に抑制することができる。また、このとき、背景色の影響を除去した線画の色数を算出することで、線画の色数を正しく算出することができる。
【０１１６】
＜第１変形例＞
なお、以上説明した実施形態においては、線画を構成する各画素のＨＳＶデータなどの色データの平均値を線画色として算出した後に、背景色に応じて線画色を補正する構成であるが、画素ごとの色データを線画色として扱い、線画を構成する各画素の色データを背景色に応じて補正する構成としてもよい。つまり、背景色に応じた補正を画素ごとに行ってもよい。また、この場合、背景色に応じて色データを補正する対象となる画素を、線画のエッジ近傍の画素に限定してもよい。
【０１１７】
＜第２変形例＞
また、以上説明した実施形態では、処理対象の入力画像Ｉｍ０から線画を検出する方法の具体的な一例を説明したが、入力画像Ｉｍ０から線画を検出する方法はこの例に限らない。例えば、第３の検出部１４が、第１の検出部１１のエッジ検出結果から色地上の線画のエッジや白色の線画のエッジを除去した後に、第１の検出部１１のエッジ検出結果と第２の検出部１３の領域検出結果とのＯＲ演算を行って、入力画像Ｉｍ０から線画を検出する構成としてもよい。また、第１の検出部１１のエッジ検出結果は、エッジ強調部１２によるエッジ強調画像の生成のみに利用してもよい。また、これとは逆に、第１の検出部１１のエッジ検出結果を第３の検出部１４による線画の検出のみに利用し、第２の検出部１３がエッジ強調画像から線画の領域を検出する代わりに入力画像Ｉｍ０から線画の領域を検出する構成としてもよい。また、第２の検出部１３は、サイズの小さい連結成分を除去する処理を行わずに、抽出したすべての連結成分を対象として連結成分のグループ化を行う構成としてもよい。そのほか、処理対象の入力画像Ｉｍ０から線画を検出する方法としては、上述の例に限らず、画像から文字などの線画を検出する既存の方法をいずれも利用することができる。
【０１１８】
＜補足説明＞
上述した実施形態および変形例において説明した画像処理装置１の機能的な構成要素（線画検出部１０（第１の検出部１１、エッジ強調部１２、第２の検出部１３および第３の検出部１４）、線画色処理部２０（線画色算出部２１、背景色算出部２２、線幅算出部２３および線画色補正部２４）、色統一処理部３０（統一対象決定部３１、代表色算出部３２および線画色変更部３３）およびファイル生成部４０）は、上述したように、例えば図１に示したハードウェアとソフトウェア（プログラム）との協働により実現することができる。この場合、上記プログラムは、画像処理装置１にインストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録して提供される。また、上記プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由で画像処理装置１にダウンロードさせることにより提供するように構成してもよい。さらに、上記プログラムを、インターネットなどのネットワーク経由で提供または配布するように構成してもよい。また、上記プログラムを、例えば画像処理装置１内のＲＯＭ１０３やＨＤＤ１０４などに予め組み込んで提供するようにしてもよい。
【０１１９】
また、上述した実施形態および変形例において説明した画像処理装置１の機能的な構成要素は、その一部または全部を、例えばＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field-Programmable  Gate  Array）などの専用のハードウェアを用いて実現することもできる。
【０１２０】
また、上述した実施形態および変形例では、画像処理装置１を単体の装置として実現する例を想定したが、画像処理装置１の機能的な構成要素を物理的に分離した複数の装置に分散して設け、これら複数の装置の連携により、画像処理装置１としての動作が実現されるように構成してもよい。
【０１２１】
以上、本発明の具体的な実施形態および変形例について説明したが、上述した実施形態は本発明の一適用例を示したものである。本発明は、上述した実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で様々な変形や変更を加えて具体化することができる。
【符号の説明】
【０１２２】
１  画像処理装置
１０  線画検出部
１１  第１の検出部
１３  第２の検出部
１４  第３の検出部
２０  線画色処理部
２１  線画色算出部
２２  背景色算出部
２３  線幅算出部
２４  線画色補正部
４０  ファイル生成部
Ｉｍ０  入力画像
ＦＩｍ  高圧縮ＰＤＦファイル
【先行技術文献】
【特許文献】
【０１２３】
【特許文献１】特開２００２−２４８２４号公報
【図１】
0006740612.tif 000002
【図２】
0006740612.tif 000003
【図３】
0006740612.tif 000004
【図４】
0006740612.tif 000005
【図５】
0006740612.tif 000006
【図６】
0006740612.tif 000007
【図７】
0006740612.tif 000008
【図８】
0006740612.tif 000009
【図９】
0006740612.tif 000010
【図１０】
0006740612.tif 000011
【図１１】
0006740612.tif 000012
【図１２】
0006740612.tif 000013
【図１３】
0006740612.tif 000014
【図１４】
0006740612.tif 000015
【図１５】
0006740612.tif 000016
【図１６】
0006740612.tif 000017
【図１７】
0006740612.tif 000018
【図１８】
0006740612.tif 000019