(57)【要約】 【課題】多値画像に含まれる表内の構成要素の画質や圧縮率を向上させることが可能な画像処理装置、画像処理方法およびプログラムを提供する。【解決手段】本発明の画像処理装置は、検出部と統一部とを備える。検出部は、多値画像から、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表を検出する。統一部は、表の構成要素の情報に基づいて、表の構成要素の色を統一する方法を切り替える。【選択図】図８
2018121226.tif 000002
【特許請求の範囲】
【請求項１】
多値画像から、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表を検出する検出部と、
前記表の構成要素の情報に基づいて、前記表の構成要素の色を統一する方法を切り替える統一部と、を備える、
画像処理装置。
【請求項２】
前記統一部は、前記表の構成要素の色数に応じて、前記構成要素の色の統一を行うか否かを切り替える、
請求項１に記載の画像処理装置。
【請求項３】
前記統一部は、前記表に含まれる罫線の色数に応じて、罫線の色を統一するか否かを切り替える、
請求項２に記載の画像処理装置。
【請求項４】
前記統一部は、
着目した罫線の色数が１つの場合は、その色で該罫線を塗りつぶし、
着目した罫線の色数が２つで、それぞれ罫線に対応する色、セルに対応する色だった場合は、罫線に対応する色に統一し、
着目した罫線の色数が２以上で、罫線に対応する色、セルに対応する色以外の色が存在する場合、該罫線の色は変更しない、
請求項３に記載の画像処理装置。
【請求項５】
前記統一部は、前記表に含まれる文字の色数に応じて、文字の色を統一するか否かを切り替える、
請求項２乃至４のうちの何れか１項に記載の画像処理装置。
【請求項６】
前記統一部は、
前記表に含まれるセルの色数に応じて、セルの色を統一するか否かを切り替える、
請求項２乃至５のうちの何れか１項に記載の画像処理装置。
【請求項７】
前記統一部は、原稿種に応じて、前記表の構成要素の色を統一するか否かを切り替える、
請求項１乃至６のうちの何れか１項に記載の画像処理装置。
【請求項８】
前記多値画像に対して、背景よりも低輝度のオブジェクトを抽出するための２値化を行って第１の画像を生成する第１の生成部と、
前多値画像に対して、背景よりも高輝度のオブジェクトを検出するための２値化を行って第２の画像を生成する第２の生成部と、をさらに備える、
請求項１乃至７のうちの何れか１項に記載の画像処理装置。
【請求項９】
前記検出部は、
前記第１の画像に基づいて前記表を検出し、
前記表の構成要素が所定の条件を満たす場合は、前記第２の画像に含まれる線画のうち前記表の領域に重なる部分を除外する、
請求項８に記載の画像処理装置。
【請求項１０】
前記検出部は、
前記第２の画像に基づいて前記表を検出し、
前記表の構成要素が所定の条件を満たす場合は、前記第１の画像に含まれる線画のうち前記表の領域に重なる部分を除外する、
請求項８に記載の画像処理装置。
【請求項１１】
多値画像から、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表を検出する検出ステップと、
前記表の構成要素の情報に基づいて、前記表の構成要素の色を統一する方法を切り替える統一ステップと、を含む、
画像処理方法。
【請求項１２】
コンピュータに、
多値画像から、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表を検出する検出ステップと、
前記表の構成要素の情報に基づいて、前記表の構成要素の色を統一する方法を切り替える統一ステップと、を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法およびプログラムに関する。
【背景技術】
【０００２】
ＰＤＦ（Portable  Document  Format）の圧縮率を高め、さらに高画質化を行う技術として高圧縮ＰＤＦがある。高圧縮ＰＤＦは、多値画像を、文字の領域と、文字以外の領域とに分離し、それぞれに適した圧縮（ＭＭＲやＪＰＥＧ等）を行うことで、高圧縮を実現する技術である（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来技術においては、多値画像の中に、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表が含まれる場合、表内の構成要素（文字、罫線、セルの少なくとも１つ）の画質や圧縮率を向上させることが困難であるという問題がある。
【０００４】
本発明は、上記に鑑みてなされたものであって、多値画像に含まれる表内の構成要素の画質や圧縮率を向上させることが可能な画像処理装置、画像処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
上述した課題を解決し、目的を達成するために、本発明は、多値画像から、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表を検出する検出部と、前記表の情報に基づいて、前記表の構成要素の色を統一する方法を切り替える統一部と、を備える画像処理装置である。
【発明の効果】
【０００６】
本発明によれば、多値画像に含まれる表内の構成要素の画質や圧縮率を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】図１は、高圧縮ＰＤＦの処理手順を説明する模式図である。
【図２】図２は、画像処理装置のハードウェア構成例を示すブロック図である。
【図３】図３は、画像処理装置の機能的な構成例を示すブロック図である。
【図４】図４は、検出部の具体例を示すブロック図である。
【図５】図５は、原稿種判定部による処理の一例を示すフローチャートである。
【図６】図６は、ヒストグラム作成に使用しない領域の一例を示す図である。
【図７】図７は、ヒストグラムの作成方法を説明するための図である。
【図８】図８は、第２の検出部が有する機能の一例を示す図である。
【図９】図９は、第２の検出部による処理の一例を示すフローチャートである。
【図１０】図１０は、図９のステップＳ２１５の詳細な処理内容を示すフローチャートである。
【図１１】図１１は、斜めの罫線かどうかの判定方法を説明するための図である。
【図１２】図１２は、本来ベタ部だったものが二値化の失敗により表として誤判定されてしまう場合の一例を示す図である。
【図１３】図１３は、従来例と本実施形態との比較の結果を示す図である。
【図１４】図１４は、算出部による処理の一例を示すフローチャートである。
【図１５】図１５は、決定部による処理の一例を示すフローチャートである。
【図１６】図１６は、圧縮処理部による処理の一例を示すフローチャートである。
【図１７】図１７は、補正テーブルの一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照しながら、本発明に係る画像処理装置、画像処理方法およびプログラムの実施形態を詳細に説明する。
【０００９】
まず、本実施形態の具体的な説明に先立ち、高圧縮ＰＤＦの概要を説明する。高圧縮ＰＤＦは、文字などの線画を含む画像から高圧縮ＰＤＦファイルを生成する画像圧縮技術である。ここで線画とは、文字および文字と同様に扱うことが望ましい線で表現されるオブジェクトを指す。線で表現されるオブジェクトであっても、絵柄として扱うことが望ましいオブジェクトは、線画ではなく絵柄に含まれるものとする。絵柄は、線画以外のオブジェクト、つまり、写真などの網点で表現されるオブジェクトや、文字と同様に扱うことが望ましくない図形などのオブジェクトである。
【００１０】
図１は、高圧縮ＰＤＦの処理手順を説明する模式図である。高圧縮ＰＤＦファイルを生成するには、まず、処理対象となる多値画像（以下、「入力画像」と呼ぶ）Ｉｍ０から、線画のみからなる２値画像である第１の画像レイヤＩｍ１と、線画色を表現する多値画像である第２の画像レイヤＩｍ２と、線画以外の絵柄および背景を表現する多値画像である第３の画像レイヤＩｍ３とを生成する。そして、第１の画像レイヤＩｍ１および第２の画像レイヤＩｍ２に対しては、線画の圧縮に適した圧縮処理を施し、第３の画像レイヤＩｍ３に対しては、絵柄や背景の圧縮に適した圧縮処理を施す。その後、圧縮処理が施された第１の画像レイヤＩｍ１と、圧縮処理が施された第２の画像レイヤＩｍ２と、圧縮処理が施された第３の画像レイヤＩｍ３とを、例えばＰＤＦ形式の１つの画像ファイル上で統合することにより、入力画像Ｉｍ０に対応する高圧縮ＰＤＦファイルＦＩｍを生成する。
【００１１】
第１の画像レイヤＩｍ１に対して施される圧縮処理は、例えば、２値画像に対するＭＭＲなどの符号化方式による圧縮処理である。第２の画像レイヤＩｍ２に対して施される圧縮処理は、例えば、第３の画像レイヤＩｍ３に対する圧縮処理よりも解像度を落とした、多値画像に対するＪＰＥＧなどの符号化方式による圧縮処理である。第１の画像レイヤＩｍ１に対する圧縮処理と第２の画像レイヤＩｍ２に対する圧縮処理は、線画の圧縮に適した圧縮処理である点で共通するため、以下ではこれらの処理を総称して「第１の圧縮処理」と呼ぶ。一方、第３の画像レイヤＩｍ３に対して施される圧縮処理は、例えば、第２の画像レイヤＩｍ２に対する圧縮処理よりも解像度を高めた、多値画像に対するＪＰＥＧなどの符号化方式による圧縮処理である。第３の画像レイヤＩｍ３に対する圧縮処理は、絵柄や背景の圧縮に適した圧縮処理であるため、以下では、線画の圧縮に適した第１の圧縮処理と区別して、「第２の圧縮処理」と呼ぶ。なお、上述の符号化方式は一例であり、上述の例とは異なる符号化方式による圧縮処理を行ってもよい。
【００１２】
高圧縮ＰＤＦでは、以上のように、処理対象の入力画像Ｉｍ０を線画の領域とそれ以外の絵柄や背景の領域とに分離し、線画の領域に対しては第１の圧縮処理を施すとともに、線画以外の絵柄や背景の領域に対しては第２の圧縮処理を施すことで、圧縮の効率を高めている。ここで、圧縮の効率とは、画像を再現したときの画質（再現性）を損なわずに、どれだけ圧縮率を高めることができたかどうかを表し、再現性を維持しながら高い圧縮率が得られれば、効率のよい圧縮が行われたことになる。
【００１３】
上述の高圧縮ＰＤＦは様々な変形が可能である。例えば、上述の第１の画像レイヤＩｍ１を、黒の線画のみからなる画像レイヤと、有彩色または白の線画のみからなる画像レイヤとに分けてもよい。また、線画色を表現する第２の画像レイヤＩｍ２を持たずに、線画色を、線画の座標に対応させた別の情報として持たせる構成であってもよい。
【００１４】
次に、本実施形態の画像処理装置について具体的に説明する。図２は、本実施形態の画像処理装置１のハードウェア構成例を示すブロック図である。画像処理装置１は、ハードウェアとして、例えばＰＣ（パーソナルコンピュータ）などのコンピュータシステムを用いることができる。すなわち、画像処理装置１は、例えば図２に示すように、ＣＰＵ１０１などのプロセッサと、ＲＡＭ１０２、ＲＯＭ１０３、ＨＤＤ１０４などの記憶装置と、ＬＡＮなどのネットワークに接続する通信インタフェースであるネットワークＩ／Ｆ１０５とを備え、これらがバス１１０を介して接続された構成とされる。
【００１５】
本実施形態の画像処理装置１は、例えば、ネットワークに接続されたスキャナやホストコンピュータから処理対象の画像（入力画像Ｉｍ０）をネットワークＩ／Ｆ１０５を介して取得する。そして、画像処理装置１は、この入力画像Ｉｍ０を処理することで高圧縮ＰＤＦファイルＦＩｍを生成し、生成した高圧縮ＰＤＦファイルＦＩｍをＨＤＤ１０４に蓄積したり、ネットワークＩ／Ｆ１０５を介してネットワークに接続されたホストコンピュータに送信したりする。入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成する機能は、例えば、ＣＰＵ１０１が、ＲＡＭ１０２をワークエリアとして利用し、ＲＯＭ１０３やＨＤＤ１０４などに格納された所定のプログラムを実行することにより実現される。
【００１６】
なお、本実施形態の画像処理装置１は、例えばコピー機や複合機など、スキャナを備える画像形成装置の一機能として実現することもできる。この場合、図２に示すようなコンピュータシステムを画像形成装置２が備える。そして、例えば、画像形成装置内部のＣＰＵ１０１が、ＲＡＭ１０２をワークエリアとして利用し、ＲＯＭ１０３やＨＤＤ１０４などに格納された所定のプログラムを実行することにより、スキャナあるいはネットワーク越しに取得した入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成する機能が実現される。なお、入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成するまでの一連の処理のうち、特にハードウェア実装に適する部分については、その機能を例えばＡＳＩＣ（Application  Specific  Integrated  Circuit）などの専用のハードウェアを用いて実現する構成であってもよい。
【００１７】
図３は、本実施形態の画像処理装置１の機能的な構成例を示すブロック図である。画像処理装置１は、入力画像Ｉｍ０から高圧縮ＰＤＦファイルＦＩｍを生成するための機能的な構成要素として、例えば図３に示すように、検出部１０と、算出部１４と、決定部１５と、圧縮処理部１６と、ファイル生成部１７とを備える。本実施形態の画像処理装置１では、処理対象として取得された入力画像Ｉｍ０が検出部１０、算出部１４および圧縮処理部１６に入力され、この入力画像Ｉｍ０に対応する高圧縮ＰＤＦファイルＦＩｍがファイル生成部１７から出力される。
【００１８】
検出部１０は、処理対象の入力画像Ｉｍ０から線画候補を検出する機能モジュールである。図４は、検出部１０の具体例を示すブロック図である。検出部１０は、例えば図４に示すように、第１の検出部１１と、エッジ強調部１２と、第２の検出部１３とをサブモジュールとして含む。
【００１９】
第１の検出部１１は、処理対象の入力画像（多値画像）Ｉｍ０に対して線画候補のエッジを検出する処理を行い、その結果（以下、「エッジ検出結果」と呼ぶ）を出力する。この第１の検出部１１が行う処理は、例えば入力画像Ｉｍ０の３値化により得られる黒画素や白画素の連続性、パターンを利用して、文字などの線画と網点とを分離することで、線画候補を構成するエッジを検出する処理である。ここでエッジ検出結果とは、例えば、第１の検出部１１により線画候補のエッジとして検出された画素群の入力画像Ｉｍ０における座標位置を表す座標データである。このエッジ検出結果は、エッジ強調部１２に入力される。
【００２０】
エッジ強調部１２は、第１の検出部１１から受け取ったエッジ検出結果を用いて、処理対象の入力画像Ｉｍ０に含まれる線画候補のエッジを強調する処理を行い、線画候補のエッジが強調されたエッジ強調画像を生成する。このエッジ強調部１２によるエッジ強調の処理は、第１の検出部１１のエッジ検出結果を用いて行われるため、入力画像Ｉｍ０に含まれる絵柄のエッジを強調してしまう可能性が少ない。このため、エッジ強調の度合いを大きくすることができ、線画候補のエッジが明確に強調されたエッジ強調画像を生成することができる。エッジ強調部１２により生成されたエッジ強調画像は、第２の検出部１３に入力される。また、線画候補のエッジが明確に強調されることで、線画の端部鈍りの影響を減らすことで、原稿種認識の判定精度を高めている。
【００２１】
原稿種判定部１８は、エッジ強調画像に対して、原稿種を判定する処理を行い、その結果を出力する。図５は、原稿種判定部１８による処理の一例を示すフローチャートである。原稿種判定部１８は、画像圧縮に先立ち、エッジ強調画像の画素値のヒストグラムを利用して、原稿種が（１）文字のみ原稿、（２）新聞原稿、（３）薄い原稿、（４）その他の原稿の何れであるかを判定する。以下、図５の具体的な内容を説明する。
【００２２】
まず原稿種判定部１８は、一画面のヒストグラムを作成する際の対象領域（判定領域）を特定する（ステップＳ１）。ヒストグラム作成に使用しない領域はふたつあり、ひとつは、図６に示すような上下左右の１０％の領域である。もうひとつは、画像のエッジ部の領域である。前者は、原稿の影などの入り込み、後者は、文字と背景部の中間画素の入り込みを嫌っており、それらは絵柄でないにも係わらず、絵柄と誤判定される種となりうるので、ヒストグラム作成には使わない領域とする。
【００２３】
次に、原稿種判定部１８は、ヒストグラムを作成する（ステップＳ２）。ここでは、図７に示すように、実験などにより決定する４つの閾値で５値化し、それぞれ画素をカウントする。ここでは、ヒストグラムを、（１）真の黒色、（２）黒色、（３）中間色、（４）灰色、（５）白色の５つに分類して画素数を計測する。以下、閾値を決める方法を記載する。
【００２４】
真の黒色と黒色の閾値ｔｈ１の決め方としては、真の黒色は新聞の文字色の輝度値よりも低くなるように設定する。
【００２５】
また、黒色と中間色の閾値ｔｈ２の決め方としては、新聞の文字色が、黒色側に入るように設定する。また、文字のみ原稿の文字色（特に黒文字）が、黒色側に入るように設定し、薄い原稿の黒文字が中間色に入るように設定する。
【００２６】
また、中間色と灰色の閾値ｔｈ３の決め方としては、新聞地色が、灰色側に入るように設定する。
【００２７】
また、灰色と白色の閾値ｔｈ４の決め方としては、新聞地色が、灰色側に入るように設定し、白地が白色側に入るように設定する。また、白抜き文字が、白色側に入るように設定する。
【００２８】
図５に戻って説明を続ける。次に、原稿種判定部１８は、白抜き文字の判定を行う（ステップＳ３）。白抜き文字は、黒文字よりも太く、画像のエッジ部を除いても、白色にカウントされる。この性質を利用して、白色に対して閾値判定することで、白抜き文字の生有無を判定する。白抜き文字（または白地）が無かった場合（ステップＳ３：Ｎｏ）、原稿種判定部１８は、白抜き文字が無いという情報をＨＤＤ１０４等の記憶装置に記憶する（ステップＳ４）、白抜き文字が無いという情報は、新聞原稿、薄い原稿、その他の原稿から白抜き文字を検出する際に利用する。
【００２９】
抜き文字（または白地）が存在した場合（ステップＳ３：Ｙｅｓ）、原稿種判定部１８は、原稿種が「薄い原稿」であるか否かを判定する（ステップＳ５）。薄い原稿は、中間色〜白色が多くを占め、真の黒色と黒色が少ない。この性質を利用して、各カウント値に対して閾値判定することで、薄い原稿であるか否かを判定する。ステップＳ５の結果が肯定の場合（ステップＳ５：Ｙｅｓ）、原稿種を「薄い原稿」と決定し（ステップＳ６）、処理は終了する。
【００３０】
ステップＳ５の結果が否定の場合（ステップＳ５：Ｎｏ）、原稿種判定部１８は、原稿種が「新聞原稿」であるか否かを判定する（ステップＳ７）。新聞原稿は、新聞地色（灰色）が多くを占め、真の黒色と中間色が少ない。この性質を利用して、各カウント値に対して閾値判定することで、新聞原稿であるか否かを判定する。ステップＳ７の結果が肯定の場合（ステップＳ７：Ｙｅｓ）、原稿種を「新聞原稿」と決定し（ステップＳ８）、処理は終了する。
【００３１】
ステップＳ７の結果が否定の場合（ステップＳ７：Ｎｏ）、原稿種判定部１８は、原稿種が「文字のみ原稿」であるか否かを判定する（ステップＳ９）。文字のみ原稿は、真の黒色、黒色、白色が多くを占め、中間色、新聞地色（灰色）が少ない。この性質を利用して、各カウント値に対して閾値判定することで、文字のみ原稿であるか否かを判定する。ステップＳ９の結果が肯定の場合（ステップＳ９：Ｙｅｓ）、原稿種を「文字のみ原稿」と決定し（ステップＳ１０）、処理は終了する。
【００３２】
ステップＳ９の結果が否定の場合（ステップＳ９：Ｎｏ）、原稿種を「その他の原稿」と決定し（ステップＳ１１）、処理は終了する。
【００３３】
以上に説明した原稿種判定部１８による判定結果と、エッジ強調画像は、図４に示す第２の検出部１３へ入力される。
【００３４】
第２の検出部１３は、原稿種判定部１８から入力される情報に基づき、エッジ強調画像に対して線画候補を検出する処理を行い、その結果（以下、「線画候補検出結果」と呼ぶ）を出力する。この第２の検出部１３による処理は、例えば、エッジ強調画像を２値化して得られる２値化画像から黒画素や白画素の連結成分を抽出し、連結成分の外接矩形の大きさなどに基づいて、線画候補を検出する処理である。つまり、文字行の抽出を行う前までの処理が、この第２の検出部１３による処理の一例に相当する。ここで候補検出結果とは、例えば、第２の検出部１３により線画候補として検出された画素群の入力画像Ｉｍ０における座標位置を表す座標データである。この候補検出結果は、検出部１０の検出結果として、算出部１４および決定部１５に入力される。
【００３５】
図８は、第２の検出部１３が有する機能の一例を示す図である。図８に示すように、第２の検出部１３は、第１の生成部１３１、第１の線画候補検出部１３２、第２の生成部１３３、第２の線画候補検出部１３４、検出処理部１３５、統一部１３６、出力部１３７を有する。
【００３６】
第１の生成部１３１は、多値画像に対して、背景よりも低輝度のオブジェクトを抽出するための２値化を行って第１の画像を生成する。この例では、第１の生成部１３１は、エッジ強調画像に対して２値化を行って第１の画像を生成する。第１の線画候補検出部１３２は、第１の画像から線画候補（「第１の線画候補」と称する）を検出する。
【００３７】
第２の生成部１３３は、多値画像に対して、背景よりも高輝度のオブジェクトを抽出するための２値化を行って第２の画像を生成する。この例では、第２の生成部１３３は、エッジ強調画像に対して２値化を行って第２の画像を生成する。第２の線画候補検出部１３４は、第２の画像から線画候補（「第２の線画候補」と称する）を検出する。
【００３８】
検出処理部１３５は、「検出部」の一態様であり、多値画像から、複数の罫線で区切られる複数のセルの各々に文字を表示可能な表を検出する。この例では、検出処理部１３５は、第１の画像に基づいて表を検出する。より具体的な内容については後述する。
【００３９】
統一部１３６は、検出処理部１３５により検出された表の構成要素の情報に基づいて、表の構成要素の色を統一する方法を切り替える。より具体的には、統一部１３６は、表の構成要素の色数に応じて、構成要素の色の統一を行うか否かを切り替える。
【００４０】
詳しくは後述するが、本実施形態では、統一部１３６は、表に含まれる罫線の色数に応じて、罫線の色を統一するか否かを切り替える。さらに言えば、統一部１３６は、着目した罫線の色数が１つの場合は、その色で該罫線を塗りつぶし、着目した罫線の色数が２つで、それぞれ罫線に対応する色、セルに対応する色だった場合は、罫線に対応する色に統一し、着目した罫線の色数が２以上で、罫線に対応する色、セルに対応する色以外の色が存在する場合、該罫線の色は変更しない。
【００４１】
また、本実施形態では、統一部１３６は、表に含まれる文字の色数に応じて、文字の色を統一するか否かを切り替える。さらに言えば、統一部１３６は、着目した文字の色数が１つの場合は、その色で該文字を塗りつぶし、着目した文字の色数が２つで、それぞれ文字に対応する色、セルに対応する色だった場合は、文字に対応する色に統一し、着目した文字の色数が２以上で、文字に対応する色、セルに対応する色以外の色が存在する場合、該文字の色は変更しない。
【００４２】
また、本実施形態では、統一部１３６は、表に含まれるセルの色数に応じて、セルの色を統一するか否かを切り替える。さらに言えば、統一部１３６は、セルの色数が１つの場合は、その色でセルの色を統一し、セルの色数が、白と、白以外の色の２つであり、かつ、色相差が閾値以内の場合は、何れかの色でセルの色を統一する。
【００４３】
また、統一部１３６は、原稿種に応じて、表の構成要素の色を統一するか否かを切り替える。この例では、統一部１３６は、文字のみ原稿またはグレー新聞原稿の場合は、表の構成要素の色を統一する処理を実施しない。統一部１３６のより詳細な機能については後述する。出力部１３７は、最終的な線画候補を出力する。
【００４４】
図９は、第２の検出部１３による処理の一例を示すフローチャートである。第２の検出部１３は、原稿種判定部１８から渡されたエッジ強調画像と、原稿種の判定結果とを用いて、以下の処理を実施する。図９に示すように、まず第１の生成部１３１は、エッジ強調部１２により生成されたエッジ強調画像に対して２値化を実施する（ステップＳ２０１）。上述したように、ここでの２値化は、背景よりも低輝度のオブジェクトを抽出するための処理であり、低輝度のオブジェクトを背景と区別できる適切な閾値が設定される。また、背景との分離精度を高めるために動的に閾値を変更して２値化を実施してもよい。また、例えば原稿種に応じて、２値化の方式、閾値を切り替えても良い。その他の原稿は動的に閾値を変更して２値化する方式、薄い原稿は、閾値を高めに設定して動的に閾値を変更して２値化する方式、文字のみ原稿、新聞原稿は、閾値を固定して２値化する方式などに切り替えることで、原稿種に特化した２値化が可能になる。
【００４５】
次に、第１の線画候補検出部１３２は、ステップＳ２０１の２値化で得られた第１の画像から、水平方向に並ぶ黒画素のランと垂直方向に並ぶ黒画素のランを連結して連結成分１を取得する（ステップＳ２０２）。文字のみ原稿は、原稿内に線画がほとんどを占めているため、連結成分を計算せずに、２値化の結果をそのまま線画として決定しても良い。ただし、文字のみ原稿と判定された場合でも、２色以上の文字が混在した場合もしくは局所的な色帯上の文字が存在する場合は連結成分１を取得し、連結成分１が２色以上存在する場合は、低輝度の連結成分１のみを残して線画検出結果として出力してもよい。
【００４６】
次に、第１の線画候補検出部１３２は、ステップＳ２０２で取得した連結成分１のうち、連結成分１の外接矩形の大きさや連結成分１の位置関係などに基づいて、絵柄と区別できる連結成分１を第１の線画候補として検出する（ステップＳ２０３）。なお、グレー新聞原稿は、ほぼ文字で構成されることが分かっているため、線画候補の検出をしない（ステップＳ２０３の処理を実行しない）。これにより、高速化、高画質化が実現できる。しかし、新聞の場合、大きい網点で絵を表現することがあり、適用フィルタでは潰せないことがある。そのため網点を除去する処理を実施することが望ましい。網点の除去方法は、外接矩形の大きさが小さい連結成分１を除去するといった方法でもよいし、付近に同じような外接矩形の大きさを持つ連結成分がある場合にのみ除去するといった方法でもよい。前者は高速であり、後者は小さい句読点が消える可能性を防ぐ方法である。また、少量の網点であれば文字判定してもファイルサイズに大きな影響を与えないので、外接矩形の大きさが小さい連結成分が閾値以下の個数であれば、網点除去をしないようにし、句読点の画質劣化を防いでも良い。また、カラーの新聞原稿は、写真や色地の表などが入る可能性があるので、ステップＳ２０３の処理を実施する。さらに、カラー新聞原稿に含まれる表は、黒色の罫線および黒色の文字で構成されることが分かっている。ただし、表の中に、写真が混在しているケースもあるので、後述のステップＳ２１５で説明する方法で色を推測する必要がある。
【００４７】
次に、第２の生成部１３３は、エッジ強調部１２により生成されたエッジ強調画像に対して２値化を実施する（ステップＳ２０４）。上述したように、ここでの２値化は、背景よりも高輝度のオブジェクトを抽出するための処理であり、高輝度のオブジェクトを背景と区別できる適切な閾値が設定される。また、背景との分離精度を高めるために動的に閾値を変更して２値化を実施してもよい。
【００４８】
次に、第２の線画候補検出部１３４は、ステップＳ２０４の２値化で得られた第２の画像から、水平方向に並ぶ白画素のランと垂直方向に並ぶ白画素のランを連結して連結成分２を取得する（ステップＳ２０５）。そして、第２の線画候補検出部１３４は、ステップＳ２０５で取得した連結成分２のうち、連結成分２の外接矩形の大きさなどに基づいて、絵柄と区別できる連結成分２を第２の線画候補として検出する（ステップＳ２０６）。
【００４９】
次に、第２の検出部１３は、第１の画像に基づいて表を検出し、その検出した表の構成要素（罫線、文字、セルの少なくとも１つ）の色を決定する（ステップＳ２１５）。このステップＳ２１５の具体的な内容については後述する。なお、グレー新聞原稿は、全て黒文字化されているため、本ステップは実施しない。さらに、文字のみ原稿も全て文字判定されており、文字色を決めることも容易なので、本ステップは実施しない。なお、例えば原稿種判定部１８が設けられない形態とすることも可能である。この場合、第２の検出部１３に対しては、エッジ強調画像が入力され（原稿種の判定結果は入力されない）、第２の検出部１３は、図９および後述の図１０の処理を無条件に実行することになる。
【００５０】
次に、出力部１３７は、ステップＳ２０３で検出した第１の線画候補と、ステップＳ２０６で検出した第２の線画候補とで、外接矩形が重なる線画候補があるかどうかを判断する（ステップＳ２０７）。そして、外接矩形が重なる線画候補があれば（ステップＳ２０７：Ｙｅｓ）、それらの線画候補の外接矩形のサイズを比較して、外接矩形のサイズが小さい方の線画候補を削除する（ステップＳ２０８）。また、グレー新聞原稿の場合は、地の色よりも高輝度な白抜き領域が存在した場合、白抜き文字である可能性が高い。白抜き文字候補の大きさなどに基づいて、白抜き文字を決定し、重なっている連結成分を削除する。そして、出力部１３７は、第１の線画候補および第２の線画候補のうちステップＳ２０８で削除されずに残った線画候補、または、ステップＳ２１５で色が決定された第１の線画候補および第２の線画候補を、最終的な線画候補検出結果として出力し（ステップＳ２０９）、一連の処理を終了する。
【００５１】
図１０は、図９のステップＳ２１５の詳細な処理内容を示すフローチャートである。図１０に示すように、まず第１の線画候補検出部１３２は、図９のステップＳ２０１で生成された第１の画像から、水平な罫線を構成しうる画素の集合を示す罫線候補を抽出する。罫線候補の抽出方法はいくつか考えられる。例えば、ある一定以上の長さをもつ黒ラン（黒画素の水平または垂直方向の連続）を構成要素とする連結成分を抽出し、その縦横比で細長いもの（横長のもの）を罫線候補とする方法がある。本実施形態では、ある一定値以下の長さを持つ黒ランを構成要素とする連結成分を抽出し、その縦横比で細長いものを罫線候補とする抽出方法を採用している。なお、白黒反転している表を抽出する場合は、第２の線画候補検出部１３４が、図９のステップＳ２０４で生成された第２の画像から罫線候補を抽出する。その場合、白と黒を入れ替えれば、同様の処理が可能である。例えば白ランを構成要素とする連結成分を抽出し、その縦横比で細長いものを罫線候補とすることができる。なお、罫線は線画に含まれる概念である。
【００５２】
次に、第１の線画候補検出部１３２は、図９のステップＳ２０１で生成された第１の画像から、垂直な罫線を構成しうる画素の集合を示す罫線候補を抽出する。ステップＳ３０１の水平が垂直に変わっただけであるが、例えば、ある一定値以下の長さを持つ黒ランを構成要素とする連結成分を抽出し、その縦横比で細長いもの（縦長のもの）を罫線候補とすることができる。
【００５３】
次に、第１の線画候補検出部１３２は、誤検出した罫線候補を削除する処理を行う（ステップＳ３０３）。以下、具体的な内容を説明する。罫線を矩形抽出した結果、矩形の縦、横のサイズから太い罫線候補を抽出できる。この太い罫線候補について、斜めの罫線なのか、線幅の太い罫線なのかを判定し、線幅の太い罫線は罫線候補から除去する。本ステップで斜めの罫線を残す理由は、入力画像にスキューがあった場合に、表が抽出できなくなるのを防ぐためである。また、太い罫線を削除する理由は、ベタ部などの罫線以外の領域を誤検出している可能性が高いためである。
【００５４】
図１１を用いて、斜めの罫線かどうかの判定方法について説明する。図１１では、ステップＳ３０２で生成した垂直な罫線で、かつ図１１の（ａ）（ｂ）のような入力画像である場合を例に挙げて説明する。なお、ステップＳ３０１で生成した水平な罫線についても同様の処理を実施する。
【００５５】
図１１の（ｃ）（ｄ）に示すように、まず罫線の両端に相当するランの中心位置Ｘｃを算出する。ランの中心位置は、以下の計算式で計算できる。もし、同一水平線上にランが複数有り、どちらも罫線の一部だった場合は、複数のランのうち左端の画素をｘｓ、右端の画素をｘｅとする。
ラン１の中心座標Ｘｃ１＝（ｘｓ１＋ｘｅ１）／２
ラン２の中心座標Ｘｃ２＝（ｘｓ２＋ｘｅ２）／２
【００５６】
また、罫線の傾きＡは下記の式で算出することができる。
罫線の傾きＡ＝ラン２の中心座標Ｘｃ２−ラン１の中心座標Ｘｃ１
【００５７】
罫線の傾きＡが０よりも大きい場合は右上がりの罫線となり、Ａが０よりも小さい場合は右下がりの罫線となり、Ａ＝０の場合は垂直な罫線となる。図１１の例では、（ｃ）および（ｄ）のいずれも、右上がりの罫線と一時判定される。
【００５８】
次に、各ラン単位で、罫線の傾きを確認する。隣り合うラン同士ごとに上述の傾きＡを求めることで、隣り合うラン同士の傾きＡを計算できる。図１１の（ｅ）の場合は、傾きＡが負の値になるため、右下がりの罫線と判定される。図１１の（ｆ）の場合は、傾きＡが正の値になるため、右上がりの罫線と判定され、（ｃ）と（ｅ）で判定結果が異なるので、（ａ)の罫線は、誤検出した罫線であることが分かる。このように誤検出した罫線だった場合、該罫線を罫線候補から削除する。ここで、傾きＡが０の場合は、次のラン同士の判定（比較）に移る。この判定を全ランで実施し、判定結果が異なる傾きＡが存在しなければ、図１１の（ｆ）のように斜めの罫線として確定し、罫線候補に残す。もちろん、傾きが元々垂直に近い場合などは、反対の傾きが存在する斜めの罫線も存在する。そのため、罫線全体の傾きＡと、各ランの傾き（隣り合うラン同士の傾き）Ａ’との差の絶対値を閾値としてもよい。また、線幅も計測できるので、線幅が細い罫線は斜めの罫線の確度αが高いとしても良い。
【００５９】
図１０に戻って説明を続ける。上述のステップＳ３０３の後、検出処理部１３５は、図９のステップＳ２０１で生成された第１の画像に対して矩形抽出を実施して、表の候補を示す表矩形候補を抽出する（ステップＳ３０４）。次に、検出処理部１３５は、ステップＳ３０３で抽出した表矩形候補内に存在する水平な罫線および垂直な罫線の数（ステップＳ３０３で残った罫線の数）をそれぞれカウントする。そして、罫線の数をカウントした結果、下記の条件Ａおよび条件Ｂを満たせば、表矩形候補とする。
【００６０】
条件Ａは、以下の２つの条件（Ａ−１およびＡ−２）のうちの何れかを満たすことである。
（Ａ−１）表候補矩形内に垂直罫線と水平罫線がそれぞれ３本以上存在すること。
（Ａ−２）表候補矩形内に垂直罫線と水平罫線のどちらかが２本以上存在し、もう一方が４本以上存在すること。
【００６１】
また、条件Ｂは、以下の３つの条件（Ｂ−１〜Ｂ−３）の全てを満たすことである。
（Ｂ−１）表候補矩形が大きすぎないこと（例えば画像サイズの９５％以上ではないこと）。入力画像のほとんどを囲うような矩形は原稿の縁の可能性があるので除外するという意図である。
（Ｂ−２）表候補矩形の縦幅もしくは横幅が大きい（例えば８００画素以上）とき、表候補矩形内に縦罫線と横罫線がどちらも３本以上あること。これを満たさない場合は、囲い枠であって表ではないと判断して除外するという意図である。
（Ｂ−３）表候補矩形の縦幅もしくは横幅が大きい（例えば８００画素以上）とき、表候補矩形内の密集度（幅／罫線の数で表すことができる）が密（例えば３００画素／本以上）であること。密集していない場合、表の中に絵柄が含まれやすいので除外するという意図である。
【００６２】
また、例えば白黒反転した表矩形候補を抽出する場合、検出処理部１３５は、図９のステップＳ２０４で生成された第２の画像を使って上記と同様の処理を行い、表矩形候補を抽出することができる。
【００６３】
次に、検出処理部１３５は、ステップＳ３０４で抽出した表矩形候補から、表矩形（以下、単に「表」と称する場合もある）を決定する（ステップＳ３０５）。ステップＳ３０４の結果だけでは、例えば図１２の（ａ）（ｂ）のように、本来ベタ部だったものが二値化の失敗により表として誤判定されてしまう場合がある。その場合、図１２（ｃ）に示すように、表と同じ処理をすると著しく画質が劣化するので、ベタ部は非文字化することで対策する。ここでは、ベタ部を判定する方法として、下記の条件を満たす場合にベタ部と判定することができる。
（条件）表矩形の面積に対して罫線の面積が所定の割合以上（例えば４０％以上）であること。
【００６４】
上記ベタ部は、表矩形の情報を利用して、非文字化して表矩形から除外することができる。本ステップで、表矩形を決定する。また、薄い原稿は二値化が難しく、ベタ部が混入し易いので、上記の面積割合の閾値をより小さく（厳しく）してもよい（例えば３０％以上）。また、白黒反転した表について、白色のベタ部が表として混入しても、白を白化しても上記のような問題は生じない。したがって、上記の条件に対して、「白以外の画素が存在する」といった上限を付加してもよい。
【００６５】
ステップＳ３０５の後、検出処理部１３５は、ステップＳ３０３で残った罫線候補と、ステップＳ３０５で決定した表矩形を利用して、該表矩形外の誤検出した罫線候補（以下の説明では「誤罫線」と称する場合がある）を削除する（ステップＳ３０６）。より具体的には、検出処理部１３５は、ステップＳ３０５で決定した表矩形に含まれる罫線候補（表内罫線）と、表矩形外の太い罫線候補を抽出する。そして、その太い罫線候補が誤検出した罫線でないか再評価する。本ステップで、表矩形外の太い罫線候補を検出して削除する理由は、ベタ部を罫線として誤判定している可能性が残っているためである。表矩形内に存在する誤罫線は、後のステップで除外するので、本ステップでは、表矩形の情報を使って、表矩形外の誤罫線を削除する。本ステップにおいて、誤罫線を削除する条件は以下の３つの条件である。
（条件１）表矩形外に存在すること。
（条件２）太い罫線候補であること（例えば８画素以上の太さを持つ罫線候補）。
（条件３）斜めの罫線の確度αが低いこと（例えば５画素以上の線幅を持つ場合など）。
【００６６】
次に、検出処理部１３５は、表矩形ごとに、表の構成要素の情報を抽出する（ステップＳ３０７）。より具体的には、検出処理部１３５は、表矩形ごとに、表を構成する罫線色、セル色、文字色の色数をそれぞれ算出する。この例では、色数の計算には、表矩形内に存在する罫線と、ステップＳ２０３で得られた線画候補（第１の線画候補）と表の領域（表領域）とから計算した表矩形内の文字とを使う。色数を使うと計算量が多い場合は、（１）有彩１色、（２）黒１色、（３）白１色、（４）白黒以外の無彩１色、（５）２色以上のような分類にしても良い。ただし、ステップＳ２０１で得られた第１の画像（低輝度用の二値化画像）から罫線候補を抽出している場合は、罫線候補は白になることはなく、文字も白になることはない。また、文字は、ステップＳ２０３で得られた線画候補（第１の線画候補）を使用して文字色を算出することができる。また、白黒反転した表を検出する場合は、ステップＳ２０４で得られた第２の画像（高輝度用の二値化画像）と、ステップＳ２０６で得られた線画候補（第２の線画候補）を使用して、表内の構成要素の情報を算出することができる。色数を計算する際は、エッジ部ではなく、文字や線画の内側の画素の階調地を使う。エッジ部しかない細い罫線や文字の場合は、３×３画素で最も低輝度な画素の階調値を使う。
【００６７】
次に、検出処理部１３５は、第２の画像（高輝度用の二値化画像）を加工する（ステップＳ３０８）。より具体的には、検出処理部１３５は、表矩形内の構成要素の情報が下記の３つの条件の何れかに該当する場合、ステップＳ２０４で生成された第２の画像（高輝度用の二値化画像）に含まれる線画（第２の線画候補）のうち、表矩形領域と重なる部分を除去する。
（条件１）罫線色、セル色、文字色の色数がそれぞれ１つであること。
（条件２）罫線色、文字色の色数が１つでかつ黒であること。
（条件３）セル色の色数が１つでかつ白であること。
【００６８】
つまり、検出処理部１３５は、第１の画像に基づいて表を検出する場合、表の構成要素が所定の条件を満たす場合は、第２の画像に含まれる線画のうち表の領域に重なる部分を除外する。この所定の条件は、表に含まれる罫線、セルおよび文字の色数がそれぞれ１つであること、罫線および文字の色数が１つでかつ黒であること、セルの色数が１つでかつ白であることのうちの何れかである。
【００６９】
なお、本ステップは、高圧縮ＰＤＦの文字抽出があくまで圧縮を目的にしているために実現できる。例えば上記の条件だと、セルが低輝度で文字が高輝度な場合に文字を削除してしまう。この場合、文字抽出結果をＯＣＲに使う場合には、セルを文字としているため文字が予測できない。しかし、上記の条件であれば、高圧縮ＰＤＦは、表領域内で全て、セルを文字、文字をセルと誤判定しても、文字の形状は維持され、ファイルサイズへの影響もほとんど無い。ただ、表領域内で、セルを文字もしくはセルと判定結果が混在する場合、高圧縮ＰＤＦは異常画像に見え、画質が大きく劣化する（逆にＯＣＲは問題ない）。
【００７０】
また、白黒反転した表を使う場合は、以下の条件に該当する場合、ステップＳ２０１で生成された第１の画像（低輝度用の二値化画像）に含まれる線画（第１の線画候補）のうち表矩形領域と重なる部分を除外する。
（条件１）罫線色、文字色の色数が１つでかつ白であること。
【００７１】
つまり、検出処理部１３５は、第２の画像に基づいて表を検出する場合、表の構成要素が所定の条件を満たす場合は、第１の画像に含まれる線画のうち表の領域に重なる部分を除外する。この所定の条件は、罫線色、文字色の色数が１つでかつ白であることである。
【００７２】
ステップＳ３０８の後、統一部１３６は、表の構成要素の色を統一する処理を行う（ステップＳ３０９）。表単位で罫線色および文字色を統一することで、行単位で色を統一する場合よりも高画質になる。しかし、単純に統一すると変色の問題が生じるため、下記の条件に応じて、罫線色および文字色の統一を行う。図１３は、統一を行った結果の比較（従来例と本実施形態との比較）の一例を示す図である。
（条件１）表矩形内の罫線色、セル色、文字色の色数がそれぞれ１つであること。
（条件２）表矩形内の罫線色、セル色、文字色の色数の合計が２つであること（セル色が罫線色、文字色に入り込んでいる場合を想定）。
（条件３）表矩形内の罫線色が黒、文字色が黒であること。
（条件４）表矩形内の罫線色が白、文字色が白であること。
【００７３】
罫線色の統一は、以下の（Ａ）〜（Ｅ）に記載した方法で実施する。（Ａ）統一部１３６は、ステップＳ３０６の後の表内に存在する罫線（水平罫線または垂直罫線）のうちの１つの罫線に注目し（注目罫線と称する）、注目罫線に対して、再度色数を測定する。（Ｂ）統一部１３６は、色数を測定した結果が１色だった場合は、注目罫線をその１色に塗りつぶす。（Ｃ）色数を測定した結果が２色だった場合で、それぞれ罫線色、セル色だった場合は、統一部１３６は、注目罫線を罫線色１色で塗りつぶす。（Ｄ）色数を測定した結果が２色以上で、罫線色、セル色以外の色が存在する場合、統一部１３６は、注目罫線の色を変更しない。（Ｅ）統一部１３６は、表内の全ての罫線に対して、（Ａ）〜（Ｄ）を実施する。
【００７４】
また、文字色の統一は、以下の（Ｆ）〜（Ｊ）に記載した方法で実施する。（Ｆ）統一部１３６は、ステップＳ３０７で抽出した表内に存在する文字のうちの１つの文字に注目し（注目文字と称する）、注目文字に対して、再度色数を測定する。（Ｇ）色数を測定した結果が１色だった場合は、統一部１３６は、注目文字を１色に塗りつぶす。（Ｈ）色数を測定した結果が２色だった場合で、それぞれ文字色、セル色だった場合は、統一部１３６は、注目文字を文字色１色で塗りつぶす。（Ｉ）色数を測定した結果が２色以上で、文字色、セル色以外の色が存在する場合は、統一部１３６は、注目文字の色を変更しない。（Ｊ）統一部１３６は、表内の全ての文字に対して、（Ｆ）〜（Ｉ）を実施する。
【００７５】
また、{（Ｂ），（Ｃ）}でかつ{（Ｇ），（Ｈ）}の場合、文字色と罫線色に同色の色が使われている可能性が高い（同色を使った方が表として読みやすいため）。そこで、統一部１３６は、文字色と罫線色の「色相の差の絶対値」及び「輝度の差の絶対値」が閾値以下であれば、罫線色を文字色と同色として判定して、色の統一を行う。同色と判定された場合は、罫線色もしくは文字色のどちらを使うか判定する。例えば以下の手順で判定する方法であってもよい。
（α）スキャナの特性上、エッジ部は鈍るために正しい色にならないので、同色の罫線と文字のエッジ部を除外する。
（β）残った罫線画素と文字画素の画素数と平均色をそれぞれ計測し、画素数の多い方の平均色を罫線色および文字色とて採用する。
これにより、表矩形領域内で罫線色と文字色の一部が統一されるので、高画質化が実現できる。また、文字や罫線が細い場合でも、エッジ部ではなく罫線もしくは文字の内部の安定した色を使用できるため、文字や罫線の色を別々で統一するよりも変色を少なくできる。
【００７６】
また、カラー新聞原稿は、色地上の文字になるため、文字色の色数が複雑になり易い。そこで、カラー新聞は、罫線や文字に黒色が使われやすいことを利用して、文字や罫線のエッジ部以外の色差と輝度値を計測して、どちらも閾値以下（例えば色差が３０以下、輝度値が６０以下）であれば黒化し、残った文字や罫線に対して、表内での色の統一を実施する形態であってもよい。
【００７７】
セル色の統一は以下のようにして行う。なお、セル色を統一する処理は行わない形態であってもよい。表単位でセル色を統一することで、セル単位で色を決めるよりも高画質になる。しかし、単純に統一すると変色の問題が生じるため、下記の条件に応じて、セル色の統一を行う。
（条件１）セル色が１色であること。
（条件２）セル色が白色と、白以外の色であること。
（条件３）セル色が白を含まない２色以上であること。
【００７８】
（条件１）の場合、統一部１３６は、閾値上の色相差が無い限り１色でセル色を統一する。（条件２）の場合、統一部１３６は、白色か、それ以外の色かを色相差で判断し、閾値以内であれば、セル色を統一する。（条件３）の場合は計算量が多いため統一しなくても良いが、例えば統一部１３６は、色ごとに平均値を計算しておき、色数分のセル色を推測する。その後、セルごとにどの色が良いか比較して、セル内の画素が全て閾値以内である色が存在すれば、セル色を該色に統一する。
【００７９】
本ステップでセル色を決めた場合に、セルが白ではなく低輝度な場合は、ステップＳ２０１の二値化によって正しく文字形状が抽出できていない可能性がある。そこで、次のステップＳ３１０において、統一部１３６は、セルの色が閾値以下でかつセルが１色のときに、再度二値化を実施させる（第１の生成部１３１に実施させる）ことで、正しい文字形状を抽出することができる。なお、白黒反転した表の場合は、低輝度と高輝度が入れ替わるので、統一部１３６は、第２の生成部１３３に対して、再度二値化を実施させる。
【００８０】
また、ステップＳ３０９において表単位で色を統一しなかった表が存在する場合（ステップＳ３１１：Ｙｅｓ）、統一部１３６は、セル単位で色を統一する処理を実施する（ステップＳ３１２）。
【００８１】
セル単位での色の統一は、例えば下記の方法で実現できる。まず、統一部１３６は、表矩形の領域に対して、水平罫線と垂直罫線で領域を分割する。次に、統一部１３６は、分割した領域に対して矩形抽出を実施し、閾値以上の縦幅および横幅（例えば何れも３０画素以上等）でかつ閾値以下の縦幅および横幅（例えば何れも３００画素以下）を有する矩形を、セル候補矩形として抽出する。次に、統一部１３６は、セル候補矩形と、ステップＳ２０３で検出した線画候補とに基づいて、表内の文字（表内文字）を抽出する。次に、統一部１３６は、注目セル内に、表内文字の近傍（表内文字の横幅サイズ、縦幅サイズ以内の距離）に別の文字がある場合、行として登録する。次に、統一部１３６は、登録した行から文字色を統一するか判定（上記と同様の判定方法）し、文字色の統一を実施する。なお、ステップＳ３０９で、表矩形領域内で罫線色は統一したものの文字色を統一できなかった場合は、罫線色の情報を使うことができる。例えば罫線色が１色の場合、文字色にも同色が使われている可能性が高い。そこで、文字色を算出する際に、罫線色と、算出した「文字色の色相の差の絶対値」及び「輝度の差の絶対値」が閾値以下であれば、罫線色を文字色として使うことができる。これにより、表矩形領域内で罫線色と文字色の一部が統一され、高画質化が実現できる。また、例えば罫線色が２色の場合は、その２色と、算出した「文字色の色相の差の絶対値」及び「輝度の差の絶対値」とを比較することで同様の効果が得られる。
【００８２】
以上が図９のステップＳ２１５の具体的な処理内容となる。
【００８３】
図１４は、算出部１４による処理の一例を示すフローチャートである。この例では、原稿種が「文字のみ原稿」または「新聞原稿」の場合、算出部１４は、第２の検出部１３の検出結果に対する処理を行わない。また、算出部１４は、第２の検出部１３により表の構成要素の情報を使って構成要素の色（罫線色や文字色等）を決定した領域に対しても、処理を実施しない。ここでは、算出部１４は、原稿種が「その他の原稿」または「薄い原稿」であって、かつ、第２の検出部１３により表の構成要素の情報を使って構成要素の色を決定していない領域を対象として、図１４の処理を実施する。
【００８４】
図１４に示すように、まず算出部１４は、検出部１０から受け取った候補検出結果に基づいて、処理対象の入力画像Ｉｍ０に含まれる線画候補のうちの１つを取り出す（ステップＳ４０１）。
【００８５】
次に、算出部１４は、ステップＳ４０１で取り出した線画候補に隣接（１画素程度の隙間があってもよい）する所定の大きさおよび形状の領域を選択し、この領域内の各画素のＲＧＢデータをＨＳＶデータに変換して、ＲＧＢデータから変換した各画素のＨＳＶデータの平均値を、線画候補の背景色として算出する（ステップＳ４０２）。
【００８６】
次に、算出部１４は、ステップＳ４０１で取り出した線画候補を構成する各画素のＲＧＢデータをＨＳＶデータに変換し、ＲＧＢデータから変換した各画素のＨＳＶデータを用いて、例えば上述した手法により線画候補の色数を算出する（ステップＳ４０３）。さらに、算出部１４は、線画候補を構成する各画素のＨＳＶデータを用いて、例えば上述した手法により線画候補の色を算出する（ステップＳ４０４）。このとき算出部１４は、線画候補を構成する各画素のうち、ステップＳ４０２で算出した線画候補の背景色に近い（例えばＨＳＶ色空間におけるユークリッド距離が所定値以内）画素を除いて、線画候補の色数や線画候補の色を算出してもよい。
【００８７】
次に、算出部１４は、ステップＳ４０１で取り出した線画候補の外接矩形を求め、この外接矩形の縦方向に並ぶ画素数と横方向に並ぶ画素数をカウントして、線画候補の外接矩形の縦横比を算出する（ステップＳ４０５）。さらに、算出部１４は、ステップＳ４０１で取り出した線画候補のエッジ間の距離（画素数）などから、線画候補の線幅を算出する（ステップＳ４０６）。
【００８８】
次に、算出部１４は、未処理の線画候補があるか否かを判定し（ステップＳ４０７）、未処理の線画候補があれば（ステップＳ４０７：Ｙｅｓ）、ステップＳ４０１に戻って以降の処理を繰り返す。一方、すべての線画候補に対して処理が終了すると（ステップＳ４０７：Ｎｏ）、算出部１４は、各線画候補に対するステップＳ４０２〜ステップＳ４０６の算出結果を出力し（ステップＳ４０８）、一連の処理を終了する。
【００８９】
図１５は、決定部１５による処理の一例を示すフローチャートである。決定部１５による処理は、エッジ強調部１２により生成されたエッジ強調画像を２値化して得られる２値化画像から黒画素や白画素の連結成分を抽出し、連結成分の外接矩形の大きさや位置関係などに基づいて連結成分をグループ化して、グループに含まれる線画の領域を検出する処理である。この例では、原稿種が「文字のみ原稿」または「新聞原稿」の場合、決定部１５は、第２の検出部１３の検出結果に対する処理を行わない。また、決定部１５は、第２の検出部１３により表の構成要素の情報を使って構成要素の色を決定した領域に対しても、処理を実施しない。つまり、第２の検出部１３により表の構成要素の情報を使って構成要素の色が決定された線画候補の領域は、そのまま線画領域（線画データ）として決定される。ここでは、決定部１５は、原稿種が「その他の原稿」または「薄い原稿」であって、かつ、第２の検出部１３により表の構成要素の情報を使って構成要素の色を決定していない領域を対象として、図１５の処理を実施する。
【００９０】
図１５に示すように、決定部１５は、前述の連結成分１を、連結成分１の外接矩形の大きさや位置関係などに基づいて結合し、グループ化する（ステップＳ５０１）。ここでのグループ化は、代表的な線画である文字を行単位でグループ化するなど、予め定めた規則に従う。したがって、グループ化されない連結成分も存在する。また、決定部１５は、前述の連結成分２を、連結成分２の外接矩形の大きさや位置関係などに基づいて結合し、グループ化する（ステップＳ５０２）。ここでのグループ化は、代表的な線画である文字を行単位でグループ化するなど、予め定めた規則に従う。したがって、グループ化されない連結成分も存在する。
【００９１】
次に、決定部１５は、ステップＳ５０１で得られたグループと、ステップＳ５０２で得られたグループとで、エッジ強調画像における位置が重なるグループが存在するか否かを確認する（ステップＳ５０３）。ステップＳ５０３の結果が肯定の場合（ステップＳ５０３：Ｙｅｓ）、それらのグループの外接矩形のサイズを比較して、サイズが小さい方のグループを削除する（ステップＳ５０４）。決定部１５は、以上のようにして得られたグループに含まれる連結成分の領域を、入力画像Ｉｍ０に含まれる線画領域（線画データ）として決定する（ステップＳ５０５）。決定部１５により決定された線画データは、後段の圧縮処理部１６に入力される。
【００９２】
図１６は、圧縮処理部１６による処理の一例を示すフローチャートである。図１６に示すように、圧縮処理部１６は、原稿種に応じたγ補正パラメータでγ補正を実施する（ステップＳ６０１）。この例では、予め原稿種ごとにγ補正パラメータが用意されている。図１７は、γ補正パラメータを表すテーブル情報（γ補正テーブル）の一例を示す図である。
【００９３】
次に、圧縮処理部１６は、線画データを用いて、入力画像Ｉｍ０から上述の第１の線画レイヤ、上述の第２の線画レイヤおよび上述の第３の線画レイヤを生成する（ステップＳ６０２）。次に、圧縮処理部１６は、第１の画像レイヤを圧縮して出力する（ステップＳ６０３）。次に、圧縮処理部１６は、第２の画像レイヤを圧縮して出力する（ステップＳ６０４）。次に、圧縮処理部１６は、第３の画像レイヤを圧縮して出力する（ステップＳ６０５）。
【００９４】
以下、原稿種のパターンとγ補正との関係を説明する。原稿種として、（１）文字のみ原稿、（２）新聞原稿、（３）薄い原稿、（４）その他の原稿の４つが存在する場合、γ補正によって濃くなる順は、薄い原稿＞その他の原稿＞白抜き文字有り新聞原稿＞白抜き文字無し新聞原稿＞文字のみ原稿となる。
【００９５】
文字のみ原稿については、背景を薄くし、文字を濃くすることで、可読性向上を狙う。また、白抜き文字無し新聞原稿については、背景を薄くし、文字を濃くすることで、可読性向上を狙う。また、地肌除去をユーザーが指定した場合は、新聞の背景を白化し、文字のみを残しても良い（次にプリントする際のトナーを削減し、環境に配慮するため）。また、白抜き文字有り新聞原稿については、白抜き文字が有るため、白抜き文字無しに比べて、背景を濃くして、白抜き文字の可読性向上を狙う（白抜き文字の有無による、γ補正の切り替え）。また、地肌除去をユーザーが指定した場合は、新聞の背景を白化し、文字のみを残しても良い（次にプリントする際のトナーを削減し、環境に配慮するため）。薄い原稿については、背景と文字の両方を濃くして、見栄えを良くすることを狙う。このとき、その他の原稿よりも濃くすることを特徴とする。ここで、原稿内に表矩形が５割以上占める場合において、表の罫線色が黒、セル色が白の場合に、γ補正をより濃くしてもよい。その他の原稿については、背景と文字の両方を濃くして、見栄えを良くすることを狙う。
【００９６】
以上に説明したように、本実施形態では、多値画像から検出した表の構成要素の情報に基づいて、表の構成要素の色を統一する方法を切り替える。これにより、多値画像に含まれる表内の構成要素の画質や圧縮率を向上させることができる。
【００９７】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【００９８】
また、上述した実施形態の画像処理装置１で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【符号の説明】
【００９９】
１      画像処理装置
１０    検出部
１１    第１の検出部
１２    エッジ強調部
１３    第２の検出部
１４    算出部
１５    決定部
１６    圧縮処理部
１７    ファイル生成部
１８    原稿種判定部
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＲＯＭ
１０４  ＨＤＤ
１０５  ネットワークＩ／Ｆ
１３１  第１の生成部
１３２  第１の線画候補検出部
１３３  第２の生成部
１３４  第２の線画候補検出部
１３５  検出処理部
１３６  統一部
１３７  出力部
【先行技術文献】
【特許文献】
【０１００】
【特許文献１】特許第４３６４８０９号公報
【図１】
2018121226.tif 000003
【図２】
2018121226.tif 000004
【図３】
2018121226.tif 000005
【図４】
2018121226.tif 000006
【図５】
2018121226.tif 000007
【図６】
2018121226.tif 000008
【図７】
2018121226.tif 000009
【図８】
2018121226.tif 000010
【図９】
2018121226.tif 000011
【図１０】
2018121226.tif 000012
【図１１】
2018121226.tif 000013
【図１２】
2018121226.tif 000014
【図１３】
2018121226.tif 000015
【図１４】
2018121226.tif 000016
【図１５】
2018121226.tif 000017
【図１６】
2018121226.tif 000018
【図１７】
2018121226.tif 000019