(57)【要約】      （修正有）【課題】原稿の種類を精度よく判別することが可能な画像処理装置、画像処理方法及びそのような画像処理方法をコンピュータに実行させるコンピュータプログラムを提供する。【解決手段】画像処理装置は、原稿を読み取って生成された入力画像を取得する入力画像取得部１６１と、入力画像における文字列密度又は文字列分散を算出する文字列情報算出部１６８と、文字列密度又は文字列分散に基づいて、原稿の種類を判別する原稿種類判別部１６９とを有する。【選択図】図２
2015060448.tif 000002
【特許請求の範囲】
【請求項１】
原稿を読み取って生成された入力画像を取得する入力画像取得部と、
前記入力画像における文字列密度又は文字列分散を算出する文字列情報算出部と、
前記文字列密度又は文字列分散に基づいて、前記原稿の種類を判別する原稿種類判別部と、
を有することを特徴とする画像処理装置。
【請求項２】
前記入力画像を二値化した二値化画像を生成する二値化画像生成部と、
前記二値化画像における有効画素のヒストグラムを生成するヒストグラム生成部と、をさらに有し、
前記文字列情報算出部は、前記ヒストグラムに基づいて前記文字列密度又は文字列分散を算出する、請求項１に記載の画像処理装置。
【請求項３】
前記ヒストグラム生成部は、前記二値化画像の水平方向又は垂直方向のラインを階級とし、水平方向又は垂直方向のラインにおける有効画素数を度数とするヒストグラムを生成し、
前記文字列情報算出部は、前記ヒストグラムの全階級数に対する、度数が閾値以上である階級数の割合を前記文字列密度として算出する、請求項２に記載の画像処理装置。
【請求項４】
前記ヒストグラム生成部は、前記二値化画像の水平方向又は垂直方向のラインを階級とし、水平方向又は垂直方向のラインにおける有効画素数を度数とするヒストグラムを生成し、
前記文字列情報算出部は、前記ヒストグラムにおいて度数が閾値以上である階級が連続する連続領域を抽出し、前記ヒストグラムの階級の最小値と前記最小値に最も近い前記連続領域の中心との間の距離、前記ヒストグラムの階級の最大値と前記最大値に最も近い前記連続領域の中心との間の距離、並びに、相互に隣接する前記連続領域の中心間の距離の分散を、前記文字列分散として算出する、請求項２に記載の画像処理装置。
【請求項５】
前記原稿種類判別部は、前記原稿の種類として、少なくとも名刺、レシート及び写真を判別する、請求項１〜４の何れか一項に記載の画像処理装置。
【請求項６】
前記原稿のサイズを算出する原稿サイズ算出部をさらに有し、
前記原稿種類判別部は、更に、前記原稿のサイズに基づいて、前記原稿の種類を判別する、請求項１〜５の何れか一項に記載の画像処理装置。
【請求項７】
前記原稿が単色印刷面を有するか否かを判別する印刷色判別部をさらに有し、
前記原稿種類判別部は、更に、前記原稿が単色印刷面を有するか否かに基づいて、前記原稿の種類を判別する、請求項１〜６の何れか一項に記載の画像処理装置。
【請求項８】
前記原稿に印字された文字が並んでいる文字方向を判別する文字方向判別部をさらに有し、
前記原稿種類判別部は、更に、前記文字方向に基づいて、前記原稿の種類を判別する、請求項１〜７の何れか一項に記載の画像処理装置。
【請求項９】
原稿を読み取って生成された入力画像を取得するステップと、
前記入力画像における文字列密度又は文字列分散を算出するステップと、
前記文字列密度又は文字列分散に基づいて、前記原稿の種類を判別するステップと、
を含むことを特徴とする画像処理方法。
【請求項１０】
原稿を読み取って生成された入力画像を取得するステップと、
前記入力画像における文字列密度又は文字列分散を算出するステップと、
前記文字列密度又は文字列分散に基づいて、前記原稿の種類を判別するステップと、
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びコンピュータプログラムに関し、特に、原稿の種類を判別する画像処理装置、画像処理方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
一般に、スキャナ装置等の画像読取装置は、原稿を読み取って画像データとして記憶部に一旦記憶し、パーソナルコンピュータ等の情報処理装置へ送信する。一方、情報処理装置は、画像読取装置から受信した画像データに対してＯＣＲ（Optical Character Recognition）処理等を行って特定の情報を取得し、画像データを取得した情報と関連付けて管理する。このような情報処理装置では、画像データを、レシート、名刺、写真等の原稿の種類毎に管理することが望まれている。
【０００３】
原稿サイズに応じて起動されるべきアプリケーションを定義付けた設定情報を記憶し、設定情報に基づいて、読取られた画像の原稿サイズに対応するアプリケーションを判断して起動させる画像読取処理装置が開示されている（特許文献１を参照）。
【０００４】
また、読み取った画像データがカラー画像であるか白黒画像であるかを判定する画像処理装置が開示されている。この画像処理装置は、搬送される原稿の先端及び後端を検知したタイミングに基づいて原稿のサイズを特定するとともに、複数の定型用紙のサイズごとに、読み取った画像データがカラー画像であるか白黒画像であるかを判定する。そして、画像処理装置は、複数の判定結果の中から、特定した原稿のサイズと同様の定型用紙のサイズを用いて判定した判定結果を選択する（特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１３１２５４号公報
【特許文献２】特開２０１０−２７３０５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
原稿を読み取った画像データを使用する画像処理装置においては、原稿の種類を精度よく判定することが望まれている。
【０００７】
本発明の目的は、原稿の種類を精度よく判別することが可能な画像処理装置、画像処理方法及びそのような画像処理方法をコンピュータに実行させるコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明に係る画像処理装置は、原稿を読み取って生成された入力画像を取得する入力画像取得部と、入力画像における文字列密度又は文字列分散を算出する文字列情報算出部と、文字列密度又は文字列分散に基づいて、原稿の種類を判別する原稿種類判別部と、を有する。
【０００９】
また、本発明に係る画像処理方法は、原稿を読み取って生成された入力画像を取得するステップと、入力画像における文字列密度又は文字列分散を算出するステップと、文字列密度又は文字列分散に基づいて、原稿の種類を判別するステップと、を含む。
【００１０】
また、本発明に係るコンピュータプログラムは、原稿を読み取って生成された入力画像を取得するステップと、入力画像における文字列密度又は文字列分散を算出するステップと、文字列密度又は文字列分散に基づいて、原稿の種類を判別するステップと、をコンピュータに実行させる。
【発明の効果】
【００１１】
本発明によれば、入力画像における文字列密度又は文字列分散に基づいて、原稿の種類を判別する。これにより、原稿の種類を精度よく判別することが可能な画像処理装置、画像処理方法及びそのような画像処理方法をコンピュータに実行させるコンピュータプログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態に従った画像処理システム１のハードウェア構成図である。
【図２】画像処理回路１６の機能ブロック図である。
【図３】原稿種類判別処理の動作を示すフローチャートである。
【図４】原稿サイズについて説明するための模式図である。
【図５】原稿サイズ算出処理の動作の例を示すフローチャートである。
【図６】矩形の回転について説明するための模式図である。
【図７】文字方向判別処理の動作の例を示すフローチャートである。
【図８】文字方向判別処理について説明するための模式図である。
【図９】文字列情報算出処理の動作の例を示すフローチャートである。
【図１０】文字列情報算出処理の動作の他の例を示すフローチャートである。
【図１１】ラベリング処理について説明するための模式図である。
【図１２】文字列情報算出処理の動作のさらに他の例を示すフローチャートである。
【図１３】文字列分散の算出処理について説明するための模式図である。
【図１４】文字列情報算出処理の動作のさらに他の例を示すフローチャートである。
【図１５】他の画像処理システム２のハードウェア構成図である。
【発明を実施するための形態】
【００１３】
以下、本発明の一側面に係る画像処理装置、画像処理方法及びコンピュータプログラムについて図を参照しつつ説明する。但し、本発明の技術的範囲はそれらの実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
【００１４】
図１は、実施形態に従った画像処理システム１のハードウェア構成図である。図１に示すように、画像処理システム１は、画像読取装置１０と、情報処理装置２０とを有する。画像読取装置１０は、画像処理装置の一例であり、例えばイメージスキャナ、デジタルカメラ等であり、情報処理装置２０は、例えば画像読取装置１０に接続して用いられるパーソナルコンピュータ等である。
【００１５】
画像読取装置１０は、画像入力装置１１と、第１画像メモリ１２と、第１インターフェース装置１３と、第１記憶装置１４と、第１ＣＰＵ（Central Processing Unit）１５と、画像処理回路１６を有する。以下、画像読取装置１０の各部について詳細に説明する。
【００１６】
画像入力装置１１は、撮像対象物である原稿の表面及び裏面をそれぞれ撮像する二つの撮像センサを有する。各撮像センサは、１次元又は２次元に配列されたＣＣＤ（Charge Coupled Device）、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）等の撮像素子を備える。各撮像センサは、さらに、撮像素子に撮像対象物の像を結像する光学系を備え、各撮像素子は、ＲＧＢ各色に対応するアナログ値を出力する。そして、画像入力装置１１は、撮像センサが出力した各アナログ値をデジタル値に変換して画素データを生成し、生成した各画素データから構成される画像データ（以下、ＲＧＢ画像と称する）を生成する。このＲＧＢ画像は、各画素データが、例えばＲＧＢ各色毎に８ｂｉｔで表される計２４ｂｉｔのＲＧＢ値からなるカラー画像データとなる。
【００１７】
そして、画像入力装置１１は、ＲＧＢ画像の各画素のＲＧＢ値を輝度値及び色差値（ＹＵＶ値）に変換した画像（以下、入力画像と称する）を生成し、第１画像メモリ１２に保存する。なお、ＹＵＶ値は、例えば以下の式により算出することができる。
Ｙ値＝  ０．３０×Ｒ値＋０．５９×Ｇ値＋０．１１×Ｂ値    （１）
Ｕ値＝−０．１７×Ｒ値−０．３３×Ｇ値＋０．５０×Ｂ値    （２）
Ｖ値＝  ０．５０×Ｒ値−０．４２×Ｇ値−０．０８×Ｂ値    （３）
【００１８】
第１画像メモリ１２は、不揮発性半導体メモリ、揮発性半導体メモリ、磁気ディスク等の記憶装置を有する。第１画像メモリ１２は、画像入力装置１１と接続され、画像入力装置１１により生成された入力画像を保存するとともに、画像処理回路１６と接続され、画像処理回路１６により入力画像に対して画像処理がなされた各種の処理画像を保存する。
【００１９】
第１インターフェース装置１３は、例えばＵＳＢ（Universal Serial Bus）等のシリアルバスに準じるインターフェース回路を有し、情報処理装置２０と電気的に接続して画像データ及び各種の情報を送受信する。また、第１インターフェース装置１３にフラッシュメモリ等を接続して第１画像メモリ１２に保存されている画像データを保存するようにしてもよい。
【００２０】
第１記憶装置１４は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等のメモリ装置、ハードディスク等の固定ディスク装置、又はフレキシブルディスク、光ディスク等の可搬用の記憶装置等を有する。また、第１記憶装置１４には、画像読取装置１０の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。コンピュータプログラムは、コンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて第１記憶装置１４にインストールされてもよい。コンピュータ読み取り可能な可搬型記録媒体は、例えばＣＤ−ＲＯＭ（compact disk read only memory）、ＤＶＤ−ＲＯＭ（digital versatile disk read only memory）等である。
【００２１】
第１ＣＰＵ１５は、画像入力装置１１、第１画像メモリ１２、第１インターフェース装置１３、第１記憶装置１４、及び画像処理回路１６と接続され、これらの各部を制御する。第１ＣＰＵ１５は、画像入力装置１１の入力画像生成制御、第１画像メモリ１２の制御、第１インターフェース装置１３を介した情報処理装置２０とのデータ送受信制御、第１記憶装置１４の制御、画像処理回路１６による画像処理の制御等を行う。
【００２２】
画像処理回路１６は、第１画像メモリ１２に接続され、原稿の種類を判別する原稿種類判別処理等を行う。この画像処理回路１６は、第１ＣＰＵ１５に接続され、第１ＣＰＵ１５からの制御により予め第１記憶装置１４に記憶されているプログラムに基づいて動作する。あるいは、画像処理回路１６は、独立した集積回路、マイクロプロセッサ、ファームウェア等で構成されてもよい。
【００２３】
情報処理装置２０は、第２インターフェース装置２１と、第２画像メモリ２２と、表示装置２３と、第２記憶装置２４と、第２ＣＰＵ２５とを有する。以下、情報処理装置２０の各部について詳細に説明する。
【００２４】
第２インターフェース装置２１は、画像読取装置１０の第１インターフェース装置１３と同様のインターフェース回路を有し、情報処理装置２０と画像読取装置１０とを接続する。
【００２５】
第２画像メモリ２２は、画像読取装置１０の第１画像メモリ１２と同様の記憶装置を有する。第２画像メモリ２２には、第２インターフェース装置２１を介して画像読取装置１０から受信した画像データ及び各種の情報が保存される。
【００２６】
表示装置２３は、液晶、有機ＥＬ（Electro-Luminescence）等から構成されるディスプレイ及びディスプレイに画像データを出力するインターフェース回路を有する。表示装置２３は、第２画像メモリ２２と接続されて第２画像メモリ２２に保存されている画像データをディスプレイに表示する。
【００２７】
第２記憶装置２４は、画像読取装置１０の第１記憶装置１４と同様のメモリ装置、固定ディスク装置、可搬用の記憶装置等を有する。第２記憶装置２４には、情報処理装置２０の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。コンピュータプログラムは、例えばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて第２記憶装置２４にインストールされてもよい。
【００２８】
第２ＣＰＵ２５は、第２インターフェース装置２１、第２画像メモリ２２、表示装置２３及び第２記憶装置２４と接続され、これらの各部を制御する。第２ＣＰＵ２５は、第２インターフェース装置２１を介した画像読取装置１０とのデータ送受信制御、第２画像メモリ２２の制御、表示装置２３の表示制御、第２記憶装置２４の制御等を行う。
【００２９】
図２は、画像処理回路１６の機能ブロック図である。図２に示すように画像処理回路１６は、入力画像取得部１６１、原稿サイズ算出部１６２、印刷面判別部１６３、印刷色判別部１６４、二値化画像生成部１６５、ヒストグラム生成部１６６、文字方向判別部１６７及び文字列情報算出部１６８等を有する。さらに、画像処理回路１６は、原稿種類判別部１６９及びデータ処理部１７０等を有する。
【００３０】
図３は、画像読取装置１０による原稿種類判別処理の動作を示すフローチャートである。以下、図３に示したフローチャートを参照しつつ、原稿種類判別処理の動作を説明する。なお、以下に説明する動作のフローは、予め第１記憶装置１４に記憶されているプログラムに基づき主に第１ＣＰＵ１５により画像読取装置１０の各要素と協同して実行される。図３に示す例では、画像入力装置１１は、原稿の種類として、レシート、名刺、写真及びＰＰＣ（Plain Paper Copier）用紙を判別する。
【００３１】
最初に、画像入力装置１１は、撮像対象物（原稿）を読み取ってＲＧＢ画像及び入力画像を生成し、第１画像メモリ１２に保存する。入力画像取得部１６１は、第１画像メモリ１２からＲＧＢ画像及び入力画像を読み出して取得する（ステップＳ１０１）。
【００３２】
次に、原稿サイズ算出部１６２は、原稿サイズ算出処理を実施する（ステップＳ１０２）。原稿サイズ算出処理において、原稿サイズ算出部１６２は、入力画像に基づいて原稿のサイズを算出する。原稿サイズ算出処理の詳細については後述する。
【００３３】
次に、原稿種類判別部１６９は、原稿サイズがレシートのサイズ範囲と名刺のサイズ範囲に共通する範囲である第１サイズ範囲、又はレシートのサイズ範囲と写真のサイズ範囲に共通する範囲である第２サイズ範囲に含まれるか否かを判定する（ステップＳ１０３）。
【００３４】
図４は、原稿サイズについて説明するための模式図である。図４に示すグラフ４００は、様々なレシート、名刺及び写真を読み取って生成された入力画像から算出したサイズをプロットしたグラフである。グラフ４００の横軸は水平方向の長さ（ｍｍ）を示し、縦軸は垂直方向の長さ（ｍｍ）を示す。なお、レシートについての水平方向は幅方向（レシートが印字される時のレシートの搬送方向と直交する方向）とし、名刺及び写真についての水平方向は短手方向とする。
【００３５】
領域４０１〜４０３は、レシートを読み取って生成された入力画像から算出されたサイズのほとんどがプロットされている領域を示す。一般的なレシートは幅方向の長さが規定されている（例えば、４５ｍｍ、５８ｍｍ、８０ｍｍ等）ため、領域４０１〜４０３は、水平方向が４５ｍｍ、５８ｍｍ、８０ｍｍであるラインに沿った領域となっている。
【００３６】
領域４１１は、名刺を読み取って生成された入力画像から算出されたサイズのほとんどがプロットされている領域を示す。名刺による領域４１１は、長手方向の長さが７０ｍｍ〜１１０ｍｍの範囲にあり、短手方向の長さが４３ｍｍ〜６０ｍｍの範囲にある。
【００３７】
領域４２１〜４２３は、写真を読み取って生成された入力画像から算出されたサイズのほとんどがプロットされている領域を示す。一般的な写真のサイズはＥ判（８３ｍｍ×１１７ｍｍ）、Ｌ判（８９ｍｍ×１２７ｍｍ）、２Ｌ判（１２７ｍｍ×１７８ｍｍ）の何れかである。領域４２１はＥ判の写真に対応し、領域４２２はＬ判の写真に対応し、領域４２３は２Ｌ判の写真に対応している。
【００３８】
図４に示すように、レシートによる領域４０１及び４０２と名刺による領域４１１は領域４３１において重複し、レシートによる領域４０３と写真による領域４２１は領域４３２において重複している。したがって、入力画像に基づいて算出した原稿のサイズから、原稿がレシートであるか名刺であるか写真であるかを判別しようとすると、誤って判別する可能性がある。原稿サイズが、領域４３１のようにレシートのサイズ範囲と名刺のサイズ範囲に共通する範囲、又は領域４３２のようにレシートのサイズ範囲と写真のサイズ範囲に共通する範囲に含まれる場合、原稿サイズ以外の要素に基づいて原稿の種類を判別すべきである。
【００３９】
次に、原稿種類判別部１６９は、原稿サイズが第１サイズ範囲又は第２サイズ範囲に含まれない場合、原稿サイズにより、原稿の種類を判別し（ステップＳ１０４）、処理をステップＳ１１６に移行する。原稿種類判別部１６９は、原稿サイズが図４に示す各領域に対応する範囲に含まれる場合、その原稿はその領域に対応するレシート、名刺又は写真であると判別する。一方、原稿種類判別部１６９は、原稿サイズが各領域に対応する範囲の何れにも含まれない場合、その原稿はＰＰＣ用紙であると判別する。
【００４０】
一方、原稿サイズが第１サイズ範囲又は第２サイズ範囲に含まれる場合、印刷面判別部１６３は、原稿の表面及び裏面がそれぞれ印刷面であるかを判別する（ステップＳ１０５）。原稿種類判別部１６９は、原稿の表面及び裏面を撮像した入力画像の輝度値を所定の二値化閾値（例えば、１２８）で二値化する。原稿種類判別部１６９は、全画素数に対して、二値化した値が何れか一方の値を表す画素数の割合が所定割合（例えば、１％）以下である場合、その面は印刷面でないと判別する。
【００４１】
次に、印刷色判別部１６４は、印刷面判別部１６３が印刷面と判別した面が単色であるかカラーであるかを判別する（ステップＳ１０６）。印刷色判別部１６４は、ＲＧＢ画像について、各Ｒ値を階級とし、各Ｒ値を示す画素数を度数とするヒストグラムを生成する。同様に、印刷色判別部１６４は、各Ｇ値を階級とし、各Ｇ値を示す画素数を度数とするヒストグラムと、各Ｂ値を階級とし、各Ｂ値を示す画素数を度数とするヒストグラムを生成する。印刷色判別部１６４は、生成した各ヒストグラムにおいて、度数が閾値Ｔｈ１以上である階級が所定数以上あるか否かを判別する。印刷色判別部１６４は、度数が閾値Ｔｈ１以上である階級が所定数以上ある場合、その面はカラーであると判別し、所定数以上ない場合、その面は単色であると判別する。
【００４２】
次に、印刷色判別部１６４は、原稿が単色印刷面を有するか否かを判別する（ステップＳ１０７）。印刷色判別部１６４は、印刷面判別部１６３が印刷面と判別した面の内の何れかが単色である場合、原稿が単色印刷面を有すると判別し、印刷面判別部１６３が印刷面と判別した面の内の何れも単色でない場合、原稿が単色印刷面を有さないと判別する。
【００４３】
一般的なレシートでは、商品名、金額等が単色で印刷され、その裏面には何も印刷されないか、又はお店の広告等を表す文字、写真、画像等が単色もしくはカラーで印刷される。一方、一般的な名刺では、両面又は片面に氏名、会社名、住所、電話番号等が単色又はカラーで印刷される。また、一般的な写真では、撮影画像がカラーで印刷され、その裏面には何も印刷されないか、又は撮影日時等が単色で印刷される。したがって、原稿が単色印刷面を有さない場合、その原稿は少なくともレシートでないと判別することができる。
【００４４】
次に、原稿が単色印刷面を有さない場合、原稿種類判別部１６９は、原稿がレシートではなく、名刺又は写真であると判別し、処理をステップＳ１１３へ移行する。
【００４５】
一方、原稿が単色印刷面を有する場合、文字方向判別部１６７は、文字方向判別処理を実施する（ステップＳ１０８）。文字方向判別処理において、文字方向判別部１６７は、入力画像に基づいて、原稿に印刷された文字が並んでいる文字方向を判別する。文字方向判別処理の詳細については後述する。
【００４６】
次に、原稿種類判別部１６９は、文字方向判別部１６７が判別した文字方向が水平方向であるか否かを判別する（ステップＳ１０９）。原稿種類判別部１６９は、原稿の長手方向のサイズと短手方向のサイズのうちの何れか一方が、一般的なレシートについて規定されている幅方向の長さと略一致する場合、略一致する方向を水平方向とし、他方を垂直方向とする。一方、原稿種類判別部１６９は、原稿の長手方向のサイズと短手方向のサイズの何れも、一般的なレシートについて規定されている幅方向の長さと略一致しない場合、原稿の短手方向を水平方向とし、長手方向を垂直方向とする。つまり、原稿がレシートである場合は幅方向が水平方向となり、レシートでない場合は短手方向が水平方向となる。
【００４７】
一般的なレシートでは、商品名、金額等の文字列は幅方向（水平方向）に配置される。一方、一般的な名刺では、氏名、会社名、住所、電話番号等の文字列は長手方向（垂直方向）に配置されるが、文字列が短手方向（水平方向）に配置される名刺も存在する。また、写真では、文字列が長手方向（垂直方向）に配置される場合も、短手方向（水平方向）に配置される場合もある。したがって、文字方向が水平方向でない場合、その原稿は、少なくともレシートでないと判別することができる。
【００４８】
次に、文字方向が水平方向でない場合、原稿種類判別部１６９は、原稿がレシートではなく、名刺又は写真であると判別し、処理をステップＳ１１３へ移行する。
【００４９】
一方、文字方向が水平方向である場合、文字列情報算出部１６８は、文字列情報算出処理を実施する（ステップＳ１１０）。文字列情報算出処理において、文字列情報算出部１６８は、入力画像における水平方向及び垂直方向の文字列密度を文字列情報として算出する。文字列密度は、入力画像全体に対して、文字列が分布している割合である。文字列情報算出処理の詳細については後述する。
【００５０】
次に、原稿種類判別部１６９は、文字列情報算出部１６８が算出した文字列密度が所定値Ｖ１より大きいか否かを判別する（ステップＳ１１１）。所定値Ｖ１は、事前の実験により、様々な種類のレシートについて算出された文字列密度の平均値と、文字が短手方向に印刷された様々な種類の名刺について算出された文字列密度の平均値との中央値に定められる（例えば、３０％）。
【００５１】
文字列が短手方向に配置される名刺には空白部分が多い傾向にある。したがって、文字列が短手方向に配置される名刺では、名刺全体に対する文字が配置される領域の割合は、一般的なレシートについてのレシート全体に対する文字が配置される領域の割合より小さい可能性が高い。また、写真の裏面に撮影日時等の文字列が配置される場合、その文字列は写真の下端に配置され、裏面のほとんどは空白部分であることが一般的である。したがって、写真の裏面についての写真全体に対する文字が配置される領域の割合は、一般的なレシートについてのレシート全体に対する文字が配置される領域の割合より小さい可能性が高い。
【００５２】
なお、原稿種類判別部１６９は、水平方向の文字列密度及び垂直方向の文字列密度の少なくとも一方が所定値Ｖ１以下である場合、文字列密度が所定値Ｖ１以下であると判定する。一方、原稿種類判別部１６９は、水平方向の文字列密度及び垂直方向の文字列密度の両方が所定値Ｖ１より大きい場合、文字列密度が所定値Ｖ１より大きいと判定する。
【００５３】
次に、原稿種類判別部１６９は、文字列密度が所定値Ｖ１以下である場合、原稿の種類はレシートでないと判別し、処理をステップＳ１１３に移行する。
【００５４】
一方、原稿種類判別部１６９は、文字列密度が所定値Ｖ１より大きい場合、原稿はレシートであると判別し（ステップＳ１１２）、処理をステップＳ１１６に移行する。
【００５５】
ステップＳ１１３において、原稿種類判別部１６９は、原稿サイズ算出部１６２が算出した原稿サイズが第１サイズに含まれるか第２サイズに含まれるかを判定する。
【００５６】
次に、原稿種類判別部１６９は、原稿サイズが第１サイズに含まれる場合、原稿は名刺であると判別し（ステップＳ１１４）、原稿サイズが第２サイズに含まれる場合、原稿は写真であると判別し（ステップＳ１１５）、処理をステップＳ１１６に移行する。
【００５７】
ステップＳ１１６において、データ処理部１７０は、原稿種類判別部１６９が判別した原稿の種類に応じたデータ処理を実行し、一連のステップを終了する。
【００５８】
データ処理部１７０は、公知のＯＣＲ技術を利用して、画像データから特定の情報を取得する。原稿がレシートである場合、データ処理部１７０は、入力画像から「ＹＹＹＹ年ＭＭ月ＤＤ日」、「ＹＹＹＹ／ＭＭ／ＤＤ」等の書式で記載された文字列を抽出し、購入日時を示す情報を取得する。また、データ処理部１７０は、入力画像の上部に記載された文字列又はロゴタイプを抽出し、店名を示す情報を取得する。また、データ処理部１７０は、入力画像の下部に記載された「合計」、「Ｔｏｔａｌ」等の文字列の右側に位置する文字列を抽出し、金額を示す情報を取得する。また、データ処理部１７０は、入力画像の中央部分にリスト状に記載された文字列を抽出し、品目を示す情報を取得する。
【００５９】
一方、原稿が名刺である場合、データ処理部１７０は、入力画像の中央部分において他の文字列よりも大きい領域を有する文字列から氏名を示す情報を取得するとともに、入力画像からロゴタイプを抽出し、会社名を示す情報を取得する。また、データ処理部１７０は、入力画像に記載された「ＴＥＬ」等の文字列又は電話を示すマーク等の右側に位置する数字列を抽出し、電話番号を示す情報を取得する。また、データ処理部１７０は、入力画像に記載された「Ｍａｉｌ」等の文字列又は電子メールを示すマーク等の右側に位置する英数字列を抽出し、メールアドレスを示す情報を取得する。
【００６０】
一方、原稿が写真である場合、データ処理部１７０は、入力画像から「ＹＹＹＹ年ＭＭ月ＤＤ日」、「ＹＹＹＹ／ＭＭ／ＤＤ」等の書式の文字列を抽出し、撮影日時又は印刷日時を示す情報を取得する。
【００６１】
データ処理部１７０は、入力画像、原稿の種類及び取得した各情報を関連付けて第１画像メモリ１２に記憶するとともに、第１インターフェース装置１３を介して情報処理装置２０に送信する。
【００６２】
なお、データ処理部１７０は、第１画像メモリ１２において入力画像を記憶する領域を原稿の種類毎に変更してもよい。また、データ処理部１７０は、公知の画像処理技術を利用して、原稿の種類に応じた補正処理を実行してもよい。また、各原稿の種類（レシート、名刺又は写真）に対応する複数のアプリケーションプログラムをその原稿の種類と関連付けて第１記憶装置１４に記憶しておき、データ処理部１７０は、原稿の種類に関連付けられたアプリケーションプログラムを実行してもよい。
【００６３】
上記したように、原稿種類判別部１６９は、原稿のサイズ、原稿が単色印刷面を有するか否か、文字方向、及び文字列密度に基づいて、原稿の種類を判別する。なお、原稿種類判別部１６９は、原稿のサイズ、原稿が単色印刷面を有するか否か、及び／又は、文字方向を用いずに、原稿の種類を判別してもよい。
【００６４】
例えば、ステップＳ１０２〜Ｓ１０４及びステップＳ１１３〜Ｓ１１５の処理を省略し、原稿種類判別部１６９は、原稿がレシートであるか否かのみを判別してもよい。その場合、さらにステップＳ１０６〜Ｓ１０７及び／又はＳ１０８〜Ｓ１０９の処理を省略し、原稿種類判別部１６９は、原稿がレシートであるか否かを判別してもよい。また、ステップＳ１０２〜Ｓ１０４及びステップＳ１１３〜Ｓ１１５の処理を実施しつつ、ステップＳ１０６〜Ｓ１０７及び／又はＳ１０８〜Ｓ１０９の処理を省略し、原稿種類判別部１６９は、原稿の種類を判別してもよい。
【００６５】
また、一般に、ユーザは同じ種類の原稿をまとめて画像読取装置１０に読み取らせる可能性が高い。したがって、画像読取装置１０が複数の原稿を連続して読み取る場合、原稿種類判別部１６９は、処理中の原稿の前後に読み取られた原稿の種類の判別結果を用いて、処理中の原稿の種類を判別してもよい。例えば、原稿種類判別部１６９は、原稿の種類を、直前に搬送された原稿の種類と同じであると判別する。または、原稿種類判別部１６９は、連続して読み取られた複数の原稿についてそれぞれ原稿の種類を判別し、連続して読み取られた全ての原稿の種類を、最も多く判別された原稿の種類であると判別してもよい。
【００６６】
または、画像読取装置１０が複数の原稿を連続して読み取る場合、原稿種類判別部１６９は、処理中の原稿の前後に読み取られた原稿の種類の判別結果を用いて、処理中の原稿の種類の判別方法を変更してもよい。例えば、原稿種類判別部１６９は、直前に読み取られた原稿がレシートであると判別した場合、文字列密度と比較する所定値Ｖ１を低くして、処理中の原稿をレシートであると判別しやすくする。一方、原稿種類判別部１６９は、直前に搬送された原稿がレシートでないと判別した場合、文字列密度と比較する所定値Ｖ１を高くし、処理中の原稿をレシートでないと判別しやすくする。これらにより、原稿種類判別部１６９は、より高精度に原稿の種類を判別することができる。
【００６７】
図５は、原稿サイズ算出処理の動作の例を示すフローチャートである。図５に示す動作のフローは、図３に示すフローチャートのステップＳ１０２において実行される。
【００６８】
最初に、原稿サイズ算出部１６２は、入力画像の輝度値について水平方向及び垂直方向におけるエッジ画素を抽出する（ステップＳ２０１）。
【００６９】
原稿サイズ算出部１６２は、入力画像の各画素の水平方向の両隣の画素の輝度値の差の絶対値（以下、隣接差分値と称する）を算出し、隣接差分値が閾値Ｔｈ２を越える場合、その画像上の画素を垂直エッジ画素とする。閾値Ｔｈ２は、例えば、人が画像上の輝度の違いを目視により判別可能な輝度値の差（例えば１５）に設定することができる。原稿サイズ算出部１６２は、垂直方向にも同様の処理を行い、水平エッジ画素を抽出する。
【００７０】
次に、原稿サイズ算出部１６２は、水平エッジ画素から生成されたエッジ画像（以下、水平エッジ画像と称する）及び垂直エッジ画素から生成されたエッジ画像（以下、垂直エッジ画像と称する）からそれぞれ複数の直線を検出する（ステップＳ２０２）。なお、水平エッジ画像からは水平方向に伸びる直線が検出され、垂直エッジ画像からは垂直方向に伸びる直線が検出される。原稿サイズ算出部１６２は、ハフ変換を用いて直線を検出する。なお、原稿サイズ算出部１６２は、最小二乗法を用いて直線を検出してもよい。
【００７１】
次に、原稿サイズ算出部１６２は、検出した直線からなる矩形を検出する（ステップＳ２０３）。原稿サイズ算出部１６２は、検出した複数の直線のうち二本ずつが略直交する四本の直線から構成される複数の矩形候補を抽出する。原稿サイズ算出部１６２は、まず水平方向の直線（以下、第１の水平線と称する）を一つ選択し、選択した直線と略平行（例えば±３°以内）かつ閾値Ｔｈ３以上離れた水平方向の直線（以下、第２の水平線と称する）を抽出する。次に、原稿サイズ算出部１６２は、第１の水平線と略直交する（例えば９０°に対して±３°以内）垂直方向の直線（以下、第１の垂直線と称する）を抽出する。次に、原稿サイズ算出部１６２は、第１の水平線と略直交し、かつ第１の垂直線と閾値Ｔｈ４以上離れた垂直方向の直線（以下、第２の垂直線と称する）を抽出する。なお、閾値Ｔｈ３及び閾値Ｔｈ４は、画像読取装置１０の読取りの対象となる原稿のサイズに応じて予め定められ、同じ値としてもよい。
【００７２】
原稿サイズ算出部１６２は、検出した全ての直線について、上記の条件を満たす第１の水平線、第２の水平線、第１の垂直線及び第２の垂直線の全ての組合せを抽出し、抽出した各組合せから構成される矩形を矩形候補として抽出する。原稿サイズ算出部１６２は、抽出した矩形候補について面積を算出し、最も面積が大きい矩形候補を矩形として検出する。
【００７３】
次に、原稿サイズ算出部１６２は、検出した矩形の四辺がそれぞれ入力画像の四辺と略平行になるようにその矩形を回転させる（ステップＳ２０４）。
【００７４】
図６は、矩形の回転について説明するための模式図である。図６に示す入力画像６００において、第１の水平線６０１、第２の水平線６０２、第１の垂直線６０３及び第２の垂直線６０４からなる矩形６０５が検出されている。原稿サイズ算出部１６２は、二本の水平線のうち、入力画像６００の上端部に近い側に位置する第１の水平線６０１と、入力画像９００の上端部に平行な水平線６０６との間の角度６０７を算出する。同様に、原稿サイズ算出部１６２は、二本の垂直線のうち、入力画像６００の上端部に近い側に位置する第２の垂直線６０４と、水平線６０６との間の角度６０８を算出する。原稿サイズ算出部１６２は、角度６０７が角度６０８以下である場合、第１の水平線６０１が水平線６０６と平行になるように（角度６０７が０°になるように）、矩形６０５を回転させる。一方、原稿サイズ算出部１６２は、角度６０７が角度６０８より大きい場合、第２の垂直線６０４が水平線６０６と平行になるように（角度６０８が０°になるように）、矩形６０５を回転させる。
【００７５】
次に、原稿サイズ算出部１６２は、検出した矩形の長手方向のドット数及び短手方向のドット数と、原稿を読み込んだ時の解像度（dpi;dots per inch）から原稿の長手方向のサイズと短手方向のサイズを算出する（ステップＳ２０５）。原稿サイズ算出部１６２は、各サイズを算出すると、一連のステップを終了する。
【００７６】
図７は、文字方向判別処理の動作の例を示すフローチャートである。図７に示す動作のフローは、図３に示すフローチャートのステップＳ１０８において実行される。
【００７７】
最初に、二値化画像生成部１６５は、入力画像を二値化した二値化画像を生成する（ステップＳ３０１）。二値化画像生成部１６５は、入力画像の輝度値について、二値化閾値を用いて二値化処理を行い、二値化閾値以上の画素を有効画素（黒色画素）に、二値化閾値未満の画素を無効画素（白色画素）に変換した二値化画像を生成する。二値化閾値は、予め定められた値（例えば１２８）にしてもよいし、入力画像の全画素の輝度値の平均値等にしてもよい。
【００７８】
次に、ヒストグラム生成部１６６は、二値化画像における有効画素のヒストグラムを生成する（ステップＳ３０２）。ヒストグラム生成部１６６は、二値化画像の水平方向又は垂直方向のラインを階級とし、水平方向又は垂直方向のラインにおける有効画素数を度数とするヒストグラムを生成する。ヒストグラム生成部１６６は、連続する所定数の水平方向のラインを一つの階級とし、その所定数の水平方向のラインにおける有効画素数を度数とする水平ヒストグラムを生成する。同様に、ヒストグラム生成部１６６は、連続する所定数の垂直方向のラインを一つの階級とし、その所定数の垂直方向のラインにおける有効画素数を度数とする垂直ヒストグラムを生成する。所定数は、例えば１であり、処理負荷を低減するために２以上の値としてもよい。
【００７９】
次に、文字方向判別部１６７は、ヒストグラム生成部１６６が生成したヒストグラムにおいて度数が閾値以上である階級が連続する連続領域のうち、階級の幅が所定範囲である連続領域を抽出する（ステップＳ３０３）。文字方向判別部１６７は、水平ヒストグラム及び垂直ヒストグラムのそれぞれについて、度数が閾値Ｔｈ５以上である階級を抽出し、度数が閾値Ｔｈ５以上である階級が連続する領域を第１連続領域として抽出する。この閾値Ｔｈ５は、例えば１であり、一定のノイズを除去するために２以上の値としてもよい。文字方向判別部１６７は、抽出した第１連続領域から、階級の幅が文字の高さ又は幅として想定される範囲（例えば２ｍｍ〜６ｍｍ）に相当する範囲に含まれる領域を第２連続領域として抽出する。
【００８０】
次に、文字方向判別部１６７は、水平ヒストグラムについて抽出した第２連続領域の数と、垂直ヒストグラムについて抽出した第２連続領域の数とを算出する（ステップＳ３０４）。
【００８１】
次に、文字方向判別部１６７は、水平ヒストグラムについて抽出した第２連続領域の数と、垂直ヒストグラムについて抽出した第２連続領域の数から文字方向を判別する（ステップＳ３０５）。文字方向判別部１６７は、水平ヒストグラムについて抽出した第２連続領域の数が、垂直ヒストグラムについて抽出した第２連続領域の数以上である場合、文字方向が水平方向と判別する。一方、文字方向判別部１６７は、水平ヒストグラムについて抽出した第２連続領域の数が、垂直ヒストグラムについて抽出した第２連続領域の数未満である場合、文字方向が垂直方向と判別する。
【００８２】
図８は、文字方向判別処理について説明するための模式図である。図８の画像８０１はレシートについて生成された二値化画像の一例を示す。グラフ８０２は、画像８０１に示されるレシートの幅方向（水平方向）のラインにおける有効画素数を度数とする水平ヒストグラムを示す。グラフ８０３は、画像８０１に示されるレシートの幅方向と直交する方向（垂直方向）のラインにおける有効画素数を度数とする垂直ヒストグラムを示す。
【００８３】
また、領域８０４〜８１４は、水平ヒストグラムについて抽出された第１連続領域を示し、領域８１５〜８１８は、垂直ヒストグラムについて抽出された第１連続領域を示す。領域８０４〜８１４及び領域８１５〜８１６は、第２連続領域としても抽出されるが、領域８１７〜８１８は、所定範囲より長いため、第２連続領域として抽出されない。
【００８４】
図８に示すように、文字が水平方向に並んでいる場合、水平ヒストグラムについては「ＡＢＣ」「レストラン」等の各行の文字列に対応して連続領域が抽出されるため、水平ヒストグラムについて抽出される連続領域の数は、文字が印刷されている行数となる。一方、垂直方向の各ラインには各行の文字が重複して存在するため、垂直ヒストグラムについて抽出される連続領域は少ない。図８に示す例では、水平ヒストグラムについて抽出される連続領域の数は１１となり、垂直ヒストグラムについて抽出される連続領域の数は４となり、文字方向は水平方向であると判別される。
【００８５】
図９は、文字列情報算出処理の動作の例を示すフローチャートである。図９に示す動作のフローは、図３に示すフローチャートのステップＳ１１０において実行される。つまり、図９に示す動作のフローは、図７に示す動作のフローの後に実行され、文字列情報算出部１６８は、図７のステップＳ３０２で生成されたヒストグラムに基づいて文字列密度を算出する。
【００８６】
最初に、文字列情報算出部１６８は、ヒストグラム生成部１６６が生成したヒストグラムの全階級数と、度数が閾値Ｔｈ６以上である階級数とを算出する（ステップＳ４０１）。この閾値Ｔｈ６は、例えば１であり、一定のノイズを除去するために２以上の値としてもよい。文字列情報算出部１６８は、水平ヒストグラム及び垂直ヒストグラムのそれぞれについて、全階級数と、度数が閾値Ｔｈ６以上である階級数とを算出する。
【００８７】
次に、文字列情報算出部１６８は、ヒストグラムの全階級数に対する、度数が閾値Ｔｈ６以上である階級数の割合を文字列密度として算出し（ステップＳ４０２）、一連のステップを終了する。
【００８８】
以上詳述したように、図３、５、７及び９に示したフローチャートに従って動作することによって、画像読取装置１０は、原稿サイズ、原稿が単色印刷面を有するか否か、文字方向及び文字列密度に基づいて、原稿の種類を精度良く判別することが可能となった。
【００８９】
図１０は、文字列情報算出処理の動作の他の例を示すフローチャートである。
【００９０】
このフローチャートは、画像読取装置１０において、前述した図９に示すフローチャートの代りに実行することが可能である。図１０に示すフローチャートでは、文字列情報算出部１６８は、ラベリング処理を用いて文字列密度を算出する。
【００９１】
最初に、文字列情報算出部１６８は、二値化画像生成部１６５が生成した二値化画像について、各有効画素が他の有効画素と連結しているか否かを判定し、連結している有効画素を一つのグループとしてラベリングする（ステップＳ５０１）。文字列情報算出部１６８は、水平方向、垂直方向又は斜め方向（８近傍）に相互に隣接する有効画素を連結していると判定する。なお、文字列情報算出部１６８は、水平方向又は垂直方向のみ（４近傍）に相互に隣接する有効画素を連結していると判定してもよい。
【００９２】
次に、文字列情報算出部１６８は、各グループが他のグループに近接しているか否かを判定し、相互に近接しているグループを一つのブロックとして結合する（ステップＳ５０２）。文字列情報算出部１６８は、垂直方向において互いに重複し且つ水平方向において互いの端部が所定距離以内に位置するグループ、及び水平方向において互いに重複し且つ垂直方向において互いの端部が所定距離以内に位置するグループをブロックとして結合する。
【００９３】
次に、文字列情報算出部１６８は、各ブロックの面積を算出する（ステップＳ５０３）。文字列情報算出部１６８は、ブロックの外接矩形の面積（垂直方向の画素数×水平方向の画素数）をそのブロックの面積として算出する。
【００９４】
次に、文字列情報算出部１６８は、二値化画像内の全画素数に対する、全てのブロックの外接矩形の面積の総和の割合を文字列密度として算出し（ステップＳ５０４）、一連のステップを終了する。
【００９５】
図１１は、ラベリング処理について説明するための模式図である。図１１では、短手方向が水平方向であり、長手方向が垂直方向であるものとする。図１１の画像１１００は、二値化画像を示す。二値化画像１１００において、各文字Ａ〜Ｚがそれぞれ一つのグループとしてラベリングされる。文字Ａのグループと文字Ｂのグループは、垂直方向において重複し且つ水平方向において文字Ａのグループの右端と文字Ｂのグループの左端が所定距離以内に位置するため、結合される。同様に、文字Ｂのグループと文字Ｃのグループ、文字Ｃのグループと文字Ｄのグループ、文字Ｄのグループと文字Ｅのグループがそれぞれ結合され、文字Ａ〜Ｅのグループが一つのブロック１１０１として結合される。同様に、文字Ｆ〜Ｋのグループが一つのブロック１１０２として結合され、文字Ｌ〜Ｒのグループが一つのブロック１１０３として結合され、文字Ｓ〜Ｚのグループが一つのブロック１１０４として結合される。一方、ブロック１１０１〜１１０４は、相互に垂直方向に所定距離より離れているので結合されない。
【００９６】
なお、文字列情報算出部１６８は、二値化画像の全画素数に対する、全てのグループの面積の総和、全てのグループの外接矩形の面積の総和、又は全ての有効画素の総和の割合を文字列密度として算出してもよい。
【００９７】
図３に示すステップＳ１１１において、原稿種類判別部１６９は、文字列密度が所定値Ｖ２より大きいか否かを判別する。所定値Ｖ２は、所定値Ｖ１と同様にして定められる。
【００９８】
また、原稿種類判別部１６９は、図９に示すフローチャートで算出されたヒストグラムに基づく第１の文字列密度と、図１０に示すフローチャートで算出された第２の文字列密度の両方に基づいて、原稿の種類を判別してもよい。その場合、原稿種類判別部１６９は、第１の文字列密度が所定値Ｖ１以下である場合、又は、第２の文字列密度が所定値Ｖ２以下である場合、原稿はレシートでないと判別する。一方、原稿種類判別部１６９は、第１の文字列密度が所定値Ｖ１より大きく、且つ、第２の文字列密度が所定値Ｖ２より大きい場合、原稿はレシートであると判別する。これにより、文字列の水平方向の成分、垂直方向の成分、及び全体の分布に基づいて、原稿がレシートであるか否かをより精度よく判別することができる。
【００９９】
以上詳述したように、図３、５、７及び１０に示したフローチャートに従って動作することによって、画像読取装置１０は、原稿サイズ、原稿が単色印刷面を有するか否か、文字方向及び文字列密度に基づいて、原稿の種類を精度良く判別することが可能となった。
【０１００】
図１２は、文字列情報算出処理の動作のさらに他の例を示すフローチャートである。
【０１０１】
このフローチャートは、画像読取装置１０において、前述した図９に示すフローチャートの代りに実行することが可能である。図１２に示すフローチャートでは、文字列情報算出部１６８は、文字列情報として、入力画像における文字列分散を算出する。文字列分散は、入力画像において、文字列が散らばっている度合い（ばらつき度合い）である。
【０１０２】
最初に、文字列情報算出部１６８は、ヒストグラム生成部１６６が生成したヒストグラムにおいて度数が閾値以上である第１連続領域を抽出する（ステップＳ６０１）。文字列情報算出部１６８は、図７のフローチャートのステップＳ３０３と同様にして、第１連続領域を抽出する。文字列情報算出部１６８は、文字方向が水平方向である場合、水平ヒストグラムから第１連続領域を抽出し、文字方向が垂直方向である場合、垂直ヒストグラムから第１連続領域を抽出する。
【０１０３】
次に、文字列情報算出部１６８は、第１連続領域を抽出したヒストグラムにおいて、相互に隣接する第１連続領域の中心間の距離を算出する。また、文字列情報算出部１６８は、ヒストグラムの階級の最小値と最小値に最も近い第１連続領域の中心との間の距離を算出する。また、文字列情報算出部１６８は、ヒストグラムの階級の最大値と最大値に最も近い第１連続領域の中心との間の距離を算出する（ステップＳ６０２）。
【０１０４】
文字方向が水平方向である場合、文字列情報算出部１６８は、各第１連続領域の垂直方向の中心を算出し、相互に隣接する第１連続領域の垂直方向の中心間の距離を算出する。また、文字列情報算出部１６８は、水平ヒストグラムの階級の最小値と最小値に最も近い第１連続領域の垂直方向の中心との間の距離を算出する。また、文字列情報算出部１６８は、水平ヒストグラムの階級の最大値と最大値に最も近い第１連続領域の垂直方向の中心との間の距離を算出する。
【０１０５】
一方、文字方向が垂直方向である場合、文字列情報算出部１６８は、各第１連続領域の水平方向の中心を算出し、相互に隣接する第１連続領域の水平方向の中心間の距離を算出する。また、文字列情報算出部１６８は、垂直ヒストグラムの階級の最小値と最小値に最も近い第１連続領域の水平方向の中心との間の距離を算出する。また、文字列情報算出部１６８は、垂直ヒストグラムの階級の最大値と最大値に最も近い第１連続領域の水平方向の中心との間の距離を算出する。
【０１０６】
次に、文字列情報算出部１６８は、算出した全ての距離の分散を文字列分散として算出し（ステップＳ６０３）、一連のステップを終了する。
【０１０７】
図１３は、文字列分散の算出処理について説明するための模式図である。図１３の画像１３０１はレシートについて生成された二値化画像の一例を示す。グラフ１３０２は、画像１３０１についての水平ヒストグラムを示す。点線１３２１は水平ヒストグラムの階級の最小値を示し、点線１３２２は水平ヒストグラムの階級の最大値を示し、点線１３２１と点線１３２２の間の各点線は、各第１連続領域の垂直方向の中心を示す。距離１３０３は、水平ヒストグラムの階級の最小値と最小値に最も近い第１連続領域の垂直方向の中心との間の距離を示す。距離１３０４〜１３１３は、相互に隣接する第１連続領域の垂直方向の中心間の距離を示す。距離１３１４は、水平ヒストグラムの階級の最大値と最大値に最も近い第１連続領域の垂直方向の中心との間の距離を示す。
【０１０８】
図１３に示すように、一般的なレシートでは、文字列は紙全体にわたって配置される。一方、文字列が短手方向に配置される名刺では、文字列が下側に偏って配置される場合が多い。また、写真の裏面に撮影日時等の文字列が配置される場合、その文字列は写真の下端に配置されることが一般的である。したがって、文字列が短手方向に配置される名刺及び写真では、一般的なレシートと比較して、文字が配置される領域が何れかの側に偏っている可能性が高い。したがって、文字列分散に基づいて、原稿の種類を精度よく判別することができる。
【０１０９】
図３に示すステップＳ１１１において、原稿種類判別部１６９は、文字列分散が所定値Ｖ３より大きいか否かを判別する。所定値Ｖ３は、所定値Ｖ１と同様にして定められる。このように、原稿種類判別部１６９は、文字列分散に基づいて原稿の種類を判別する。
【０１１０】
また、原稿種類判別部１６９は、文字列密度と文字列分散の両方に基づいて、原稿の種類を判別してもよい。その場合、原稿種類判別部１６９は、文字列密度が所定値Ｖ１以下である場合、又は、文字列分散が所定値Ｖ３以下である場合、原稿はレシートでないと判別する。一方、原稿種類判別部１６９は、文字列密度が所定値Ｖ１より大きく、且つ、文字列分散が所定値Ｖ３より大きい場合、原稿はレシートであると判別する。これにより、原稿の種類をより精度よく判別することができる。
【０１１１】
以上詳述したように、図３、５、７及び１２に示したフローチャートに従って動作することによって、画像読取装置１０は、原稿サイズ、原稿が単色印刷面を有するか否か、文字方向及び文字列分散に基づいて、原稿の種類を精度良く判別することが可能となった。
【０１１２】
図１４は、文字列情報算出処理の動作のさらに他の例を示すフローチャートである。
【０１１３】
このフローチャートは、画像読取装置１０において、前述した図１２に示すフローチャートの代りに実行することが可能である。図１４に示すフローチャートでは、文字列情報算出部１６８は、ラベリング処理を用いて文字列分散を算出する。なお、ステップＳ７０１〜Ｓ７０２の処理は、図１０に示すステップＳ５０１〜Ｓ５０２の処理と同様であるため、説明を省略する。
【０１１４】
ステップＳ７０３において、文字列情報算出部１６８は、各ブロックの中心間の距離、二値化画像の一端とその一端に最も近いブロックの中心との間の距離、及び二値化画像の他端とその他端に最も近いブロックの中心との間の距離を算出する。
【０１１５】
文字方向が水平方向である場合、文字列情報算出部１６８は、各ブロックの垂直方向の中心を算出し、相互に隣接するブロックの垂直方向の中心間の距離を算出する。また、文字列情報算出部１６８は、二値化画像の上端と上端に最も近いブロックの垂直方向の中心との間の距離を算出する。また、文字列情報算出部１６８は、二値化画像の下端と下端に最も近いブロックの垂直方向の中心との間の距離を算出する。
【０１１６】
一方、文字方向が垂直方向である場合、文字列情報算出部１６８は、各ブロックの水平方向の中心を算出し、相互に隣接するブロックの水平方向の中心間の距離を算出する。また、文字列情報算出部１６８は、二値化画像の左端と左端に最も近いブロックの水平方向の中心との間の距離を算出する。また、文字列情報算出部１６８は、二値化画像の右端と右端に最も近いブロックの水平方向の中心との間の距離を算出する。
【０１１７】
次に、文字列情報算出部１６８は、算出した全ての距離の分散を文字列分散として算出し（ステップＳ７０４）、一連のステップを終了する。
【０１１８】
なお、文字列情報算出部１６８は、全てのグループの重心間の距離の分散、全てのグループの外接矩形の中心間の距離の分散、又は全ての有効画素間の距離の分散を文字列密度として算出してもよい。また、文字列情報算出部１６８は、全てのブロックの中心位置の分散、全てのグループの重心位置の分散、全てのグループの外接矩形の中心位置の分散、又は全ての有効画素の位置の分散を文字列密度として算出してもよい。
【０１１９】
以上詳述したように、図３、５、７及び１４に示したフローチャートに従って動作することによって、画像読取装置１０は、原稿サイズ、原稿が単色印刷面を有するか否か、文字方向及び文字列分散に基づいて、原稿の種類を精度良く判別することが可能となった。
【０１２０】
図１５は、他の画像処理システム２のハードウェア構成図である。図１５に示す画像処理システム２と、図１に示す画像処理システム１との差異は、画像処理回路を備える装置が異なる点である。すなわち、画像処理システム２では、情報処理装置４０が画像処理装置の一例であり、画像読取装置３０ではなく、情報処理装置４０が画像処理回路４６を有する。この画像処理回路４６は、図１に示した画像読取装置１０の画像処理回路１６と同様の機能を有する。
【０１２１】
図１５に示す画像処理システム２では、前述した図３のフローチャートに示す処理とほぼ同様の処理を実行することができる。以下、図３のフローチャートに示される処理についてどのように適応されるかを説明する。画像処理システム２では、図３のフローチャートに示される処理は、予め第２記憶装置４４に記憶されているプログラムに基づき主に第２ＣＰＵ４５により情報処理装置４０の各要素と協同して実行される。
【０１２２】
ただし、図３のステップＳ１０１において、画像読取装置３０の画像入力装置３１がＲＧＢ画像及び入力画像を生成して第１画像メモリ３２に保存し、第１ＣＰＵ３５が各画像を第１インターフェース装置３３を介して情報処理装置４０に送信する。一方、情報処理装置４０の第２ＣＰＵ４５は、第２インターフェース装置４１を介して画像読取装置３０から各画像を受信すると、受信した各画像を第２画像メモリ４２に保存する。情報処理装置４０の画像処理回路４６は、第２画像メモリ４２から各画像を読み出して取得する（ステップＳ１０１）。
【０１２３】
他の処理は、情報処理装置４０の画像処理回路４６によって実行される。これらの処理の動作は、画像処理システム１について説明した画像読取装置１０の画像処理回路１６によって実行される場合と同様である。
【０１２４】
このように、情報処理装置４０が画像処理回路４６を備えて原稿種類判別処理を実行する場合も、画像読取装置が画像処理回路を備えて原稿種類判別処理を実行する場合と同様の効果を得ることができる。
【０１２５】
以上、本発明の好適な実施形態について説明してきたが、本発明はこれらの実施形態に限定されるものではない。例えば、画像読取装置と情報処理装置の機能分担は、図１及び図１５に示す画像処理システムの例に限られず、画像処理回路内の各部を含めて画像読取装置及び情報処理装置の各部を画像読取装置と情報処理装置の何れに配置するかは適宜変更可能である。あるいは、画像読取装置と情報処理装置を一つの装置で構成してもよい。
【０１２６】
また、画像処理システム１又は２において、画像読取装置と情報処理装置を、例えばインターネット、電話回線網（携帯端末回線網、一般電話回線網を含む）、イントラネット等のネットワークを介して接続してもよい。または、画像読取装置と情報処理装置を、無線ＬＡＮ（Local Area Network）を介して接続してもよい。その場合、第１インターフェース装置及び第２インターフェース装置に、接続するネットワークの通信インターフェース回路を備える。また、クラウドコンピューティングの形態で画像処理のサービスを提供できるように、ネットワーク上に複数の情報処理装置を分散して配置し、各情報処理装置が協同して、原稿種類判別等の画像処理、画像データの保存等を分担するようにしてもよい。これにより、画像処理システムは、複数の画像読取装置が生成した入力画像について、効率よく原稿種類判別処理を実施できる。
【符号の説明】
【０１２７】
１０、３０    画像読取装置
２０、４０    情報処理装置
１６１    入力画像取得部
１６２    原稿サイズ算出部
１６４    印刷色判別部
１６５    二値化画像生成部
１６６    ヒストグラム生成部
１６７    文字方向判別部
１６８    文字列情報算出部
１６９    原稿種類判別部
【図１】
2015060448.tif 000003
【図２】
2015060448.tif 000004
【図３】
2015060448.tif 000005
【図４】
2015060448.tif 000006
【図５】
2015060448.tif 000007
【図６】
2015060448.tif 000008
【図７】
2015060448.tif 000009
【図８】
2015060448.tif 000010
【図９】
2015060448.tif 000011
【図１０】
2015060448.tif 000012
【図１１】
2015060448.tif 000013
【図１２】
2015060448.tif 000014
【図１３】
2015060448.tif 000015
【図１４】
2015060448.tif 000016
【図１５】
2015060448.tif 000017