(57)【要約】【課題】  複数の原稿を読み取って複数の異なるファイルに分けて保存するためには、ユーザは、これら複数の原稿を複数の束に分け、各束の原稿を読み取らせて、それぞれ異なるファイルに記憶するしかなかった。【解決手段】  読記撮影手段により撮影された読取領域を示す背景画像データと、読取領域に置かれた第１の原稿を撮影した静止画データとの差分画像データに基づいて、第１の原稿の画像データを抽出して、その抽出した第１の原稿の画像データを第１のファイルに保存し、読取領域上で第１の原稿の領域から離れた場所に置かれた第２の原稿の画像データを、第１のファイルとは異なる第２のファイルに保存する。【選択図】  図１１
2014220774.tif 000002
【特許請求の範囲】
【請求項１】
読取領域を撮影する撮影手段と、
前記撮影手段により撮影された前記読取領域を示す背景画像データと、前記読取領域に置かれた第１の原稿を前記撮影手段で撮影した静止画データとの差分画像データに基づいて、前記第１の原稿の画像データを抽出する第１の抽出手段と、
前記第１の抽出手段により抽出した前記第１の原稿の画像データを第１のファイルに保存し、前記第１の抽出手段により抽出された、前記読取領域上で前記第１の原稿の領域から離れた場所に置かれた第２の原稿の画像データを、前記第１のファイルとは異なる第２のファイルに保存するように制御する制御手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記読取領域に置かれている前記第１の原稿を前記撮影手段で撮影した静止画データと、前記第１の原稿の上に少なくとも原稿の一部が重複するように他の原稿が置かれた状態を前記撮影手段で撮影した静止画データと、前記背景画像データとに基づいて、前記他の原稿の画像データを抽出する第２の抽出手段を更に有し、
前記制御手段は、前記第２の抽出手段により抽出された前記他の原稿の画像データを、前記第１のファイルに保存するように制御することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の抽出手段は、更に、
前記第２の原稿を前記撮影手段で撮影した静止画データと、前記第２の原稿の上に少なくとも原稿の一部が重複するように他の原稿が置かれた状態を前記撮影手段で撮影した静止画データと、前記背景画像データとに基づいて、前記第２の原稿の上に置かれた前記他の原稿の画像データを抽出し、
前記制御手段は、前記第２の抽出手段により抽出された、前記第２の原稿の上に置かれた前記他の原稿の画像データを、前記第２のファイルに保存するように制御することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記読取領域上で、互いに離れた複数の原稿領域が検出されている状態で、前記複数の原稿領域に跨って新たな原稿が載置されると、ユーザに警告する警告手段を更に有することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記読取領域上で、互いに離れた複数の原稿領域が検出されている状態で、前記複数の原稿領域に跨って新たな原稿が載置されると、前記制御手段は、前記複数の原稿領域のそれぞれに対応するファイルを１つのファイルにまとめることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項６】
前記読取領域上で、互いに離れた複数の原稿領域に跨って原稿が載置された状態から、当該跨って載置された原稿が取り除かれると、前記制御手段は、前記１つのファイルを前記複数の原稿領域のそれぞれに対応するファイルに分割することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
画像処理装置を制御する制御方法であって、
撮影手段が、読取領域を撮影する撮影工程と、
第１の抽出手段が、前記撮影工程で撮影された前記読取領域を示す背景画像データと、前記読取領域に置かれた第１の原稿を前記撮影工程で撮影した静止画データとの差分画像データに基づいて、前記第１の原稿の画像データを抽出する第１の抽出工程と、
制御手段が、前記第１の抽出工程で抽出した前記第１の原稿の画像データを第１のファイルに保存し、前記第１の抽出工程で抽出された、前記読取領域上で前記第１の原稿の領域から離れた場所に置かれた第２の原稿の画像データを、前記第１のファイルとは異なる第２のファイルに保存するように制御する制御工程と、
を有することを特徴とする画像処理装置の制御方法。
【請求項８】
コンピュータを、請求項１乃至６のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、図２に示すような書画台に原稿を載せることによって、その原稿の画像をカメラ部で撮影して読み取っていく撮影装置がある。例えば特許文献１には、原稿台上の原稿の画像データに射影補正、拡大縮小等の画像処理を施して記憶装置に原稿画像データとして蓄積し、プロジェクタに投影する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１１５３３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来、図２に示すような画像入力装置で、書画台に置かれた原稿は１つのファイルにファイル化されるため、複数の原稿を異なるファイルに分けて保存することができなかった。例えば、複数の原稿を読み取って複数の異なるファイルに分けて保存するためには、ユーザは、これら複数の原稿を複数の束に分け、各束の原稿を読み取らせて、それぞれ異なるファイルに記憶するしかないため、手間がかかっていた。
【０００５】
本発明の目的は、複数の原稿を読み取って記憶する際に、容易に複数のファイルに分けて記憶することができる技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために本発明の一態様に係る画像処理装置は以下のような構成を備える。即ち、
読取領域を撮影する撮影手段と、
前記撮影手段により撮影された前記読取領域を示す背景画像データと、前記読取領域に置かれた第１の原稿を前記撮影手段で撮影した静止画データとの差分画像データに基づいて、前記第１の原稿の画像データを抽出する第１の抽出手段と、
前記第１の抽出手段により抽出した前記第１の原稿の画像データを第１のファイルに保存し、前記第１の抽出手段により抽出された、前記読取領域上で前記第１の原稿の領域から離れた場所に置かれた第２の原稿の画像データを、前記第１のファイルとは異なる第２のファイルに保存するように制御する制御手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、複数の原稿を読み取って記憶する際に、容易に複数のファイルに分けて記憶することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態１に係る画像読取システムの構成を説明する図。
【図２】実施形態１に係るカメラスキャナを説明する外観図。
【図３】実施形態１に係るカメラスキャナのコントローラ部のハードウェア構成を説明するブロック図。
【図４】実施形態１に係るカメラスキャナのコントローラ部のＣＰＵが実行する制御用プログラムの機能構成図。
【図５】実施形態１に係る撮影処理部の処理を説明するフローチャート。
【図６】実施形態１に係る撮影処理部が撮影する読取領域の画像データと、射影変換した画像とを説明する図。
【図７】実施形態１に係る原稿領域検出部が実行する処理の全体を示したフローチャート。
【図８】実施形態１に係る原稿領域検出部が実行する処理を説明するフローチャートで、（Ａ）は、図７のＳ７０５の新たに載置された原稿を検出する処理を説明するフローチャート、（Ｂ）は、図７のＳ７０６の原稿の更新を検出する処理を説明するフローチャート、（Ｃ）は図７のＳ７０７の原稿の除去を検出する処理を説明するフローチャート。
【図９】実施形態１に係る背景画像データの格納処理、及び原稿の画像データの格納処理を説明する図。
【図１０】実施形態１において、読取領域に最初の原稿が置かれたとき、及び最初の原稿に重ねて別の原稿が置かれたときの原稿領域検出部の処理に具体例を説明する図。
【図１１】実施形態１において、図１０の状態から、更に別の領域に原稿が置かれたときの原稿領域検出部の処理に具体例を説明する図。
【図１２】実施形態１において、静止画像データ１２０１で置かれている原稿のうち、右下の原稿１２３２がひっくり返されたときの処理を説明する図。
【図１３】実施形態１において、図１２の静止画像データ１２０１で示された２枚の原稿が領域１２１１からユーザによって読取領域から除去されたときの処理を説明する図。
【図１４】実施形態１に係る画像認識部が実行する処理の全体を説明するフローチャート。
【図１５】図１４のＳ１４０８の１ページ目の画像抽出処理を説明するフローチャート（Ａ）と、図１４のＳ１４１１の２ページ目以降の画像抽出処理を説明するフローチャート（Ｂ）。
【図１６】図１５のＳ１５１１のページ目の静止画像データと２ページ目の静止画像データとの差分画像データの生成処理を説明するフローチャート（Ａ）と、図１５のＳ１５１２の画像抽出処理を説明するフローチャート（Ｂ）。
【図１７】１ページ目の画像抽出処理を説明する図。
【図１８】２ページ目以降の画像抽出処理を説明する図。
【図１９】実施形態１で作成される文書属性、ページ属性、画像属性を説明する図。
【図２０】実施形態１に係る画像変換部が実行する処理全体の流れを示すフローチャート。
【図２１】図２０のＳ２００２の新規文書の作成処理を説明するフローチャート（Ａ）と、図２０のＳ２００３、Ｓ２００５の画像補正・保存処理を説明するフローチャート（Ｂ）。
【図２２】画像変換部が保存する画像と属性を説明する模式図。
【図２３】図２０のＳ２００７で、マルチページドキュメントを出力する処理手順を説明するフローチャート。
【図２４】本発明の実施形態２において、２つ以上の原稿領域にまたがって原稿が置かれた場合を説明する図。
【図２５】実施形態２に係る原稿領域検出部が実行する載置原稿の更新検出処理を説明するフローチャート。
【図２６】実施形態３に係る原稿領域検出部の処理を説明するフローチャート。
【図２７】図２６のＳ７０６，Ｓ２６０１、Ｓ２６０２の処理を説明するフローチャート。
【図２８】実施形態３において、２つの領域に跨って原稿が置かれたときの原稿領域検出部の処理を説明する図。
【図２９】実施形態３において、２つの領域に跨って置かれた原稿が取り除かれたときの原稿領域検出部の処理を説明する図。
【図３０】実施形態３に係る画像変換部の処理を説明するフローチャート。
【図３１】実施形態３に係る画像認識部が生成する画像属性を説明する図。
【図３２】実施形態３に係る画像変換部の処理を説明するフローチャート。
【図３３】実施形態３に係る画像変換部の処理を説明するフローチャート。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１０】
［実施形態１］
図１は、本発明の実施形態１に係る画像読取システムの構成を説明する図である。
【００１１】
カメラスキャナ１０１は、イーサネット（登録商標）等のＬＡＮ１０４を介してホストコンピュータ１０２及びプリンタ１０３と接続されている。このシステムでは、ホストコンピュータ１０２からの指示によりカメラスキャナ１０１が画像を読み取って生成した画像データをホストコンピュータコンピュータ１０２に送信するスキャン機能を実行できる。また、この画像データをプリンタ１０３により印刷するプリント機能を実行できる。また、ホストコンピュータ１０２を介さずに、ユーザがカメラスキャナ１０１へ直接指示することにより、スキャン機能及びプリント機能を実行できる。
【００１２】
図２は、実施形態１に係るカメラスキャナ１０１を説明する外観図である。
【００１３】
カメラスキャナ１０１は、大きく分けて、コントローラ部２０１、カメラ部２０２、腕部２０３、短焦点プロジェクタ２０７を備えている。カメラスキャナ１０１の本体であるコントローラ部２０１と、カメラスキャナ１０１の入力装置であるカメラ部２０２とは、腕部２０３により連結されている。腕部２０３は関節を用いて自由に曲げ伸ばしが可能である。短焦点プロジェクタ２０７は、書画台２０４等に、操作を補助する画像を投影して表示する。
【００１４】
図２では、カメラスキャナ１０１が書画台２０４上に設置されている様子を表している。カメラ部２０２のレンズは、書画台２０４方向に向けられており、破線で囲まれた読取領域２０５内の画像を読み取ることができる。図２の例では、読取領域２０５内に原稿２０６が置かれている。
【００１５】
図３は、実施形態１に係るカメラスキャナ１０１のコントローラ部２０１のハードウェア構成を説明するブロック図である。図３において、前述の図１及び図２と共通する部分は同じ記号で示している。
【００１６】
コントローラ部２０１は、主にシステムバス３０１に接続されたＣＰＵ３０２と各種Ｉ／Ｆコントローラ回路とを有している。ＣＰＵ３０２は、コントローラ部２０１全体の動作を制御する中央演算装置である。ＲＡＭ３０３は揮発性メモリである。ＲＯＭ３０４は不揮発性メモリで、ＣＰＵ３０２の起動用プログラムコード等を格納している。ＨＤＤ３０５はＲＡＭ３０３と比較して大容量なハードディスクドライブ（ＨＤＤ）である。ＨＤＤ３０５には、ＣＰＵ３０２が実行する、カメラスキャナ１０１の制御用プログラムコードが格納されている。ＣＰＵ３０２は、カメラスキャナ１０１の電源オン等の起動時、ＲＯＭ３０４に格納されている起動用プログラムコードを実行する。この起動用プログラムコードは、ＣＰＵ３０２に、ＨＤＤ３０５に格納されている制御用プログラムコードを読み出してＲＡＭ３０３に展開させる。ＣＰＵ３０２は起動用プログラムコードを実行した後、ＲＡＭ３０３に展開した制御用プログラムコードを実行して、コントローラ部２０１全体の動作を制御する。またＣＰＵ３０２は、制御用プログラムの動作に用いるデータもＲＡＭ３０３に格納して読み書きを行う。ＨＤＤ３０５にはさらに、制御用プログラムの動作に必要な各種設定や、また、カメラ部２０２で撮影して得られた画像データを格納することができ、ＣＰＵ３０２によって読み書きされる。またＣＰＵ３０２はネットワークＩ／Ｆ３０６を介してネットワーク１０４上の他の機器との通信を行う。
【００１７】
画像処理プロセッサ３０７は、ＲＡＭ３０３或いはＨＤＤ３０５に格納された画像データを読み出して処理し、またＲＡＭ３０３或いはＨＤＤ３０５へ書き戻す。この画像処理プロセッサ３０７が実行する画像処理は、回転、変倍、色変換等を含む。カメラＩ／Ｆ３０８はカメラ部２０２と接続され、ＣＰＵ３０２からの指示に応じてカメラ部２０２から画像データを取得してＲＡＭ３０３へ書き込む。またＣＰＵ３０２からの制御コマンドをカメラ部２０２へ送信し、カメラ部２０２の設定を行う。表示制御部３０９は、ＣＰＵ３０２の指示に応じて表示部への画像データの表示を行う。ここでは、短焦点プロジェクタ２０７とタッチパネル３３０が表示制御部３０９に接続されている。シリアルＩ／Ｆ３１０は、シリアル信号の入出力を行う。ここで、シリアルＩ／Ｆ３１０はタッチパネル３３０に接続され、ＣＰＵ３０２はタッチパネル３３０で押下が検知されたときに、シリアルＩ／Ｆ３１０を介して、その押下された位置の座標を取得する。オーディオコントローラ３１１はスピーカ３４０と接続され、ＣＰＵ３０２の指示に応じて音声データをアナログ音声信号に変換してスピーカ３４０を通じて音を出力する。ＵＳＢコントローラ３１２は、ＣＰＵ３０２の指示に応じて外付けのＵＳＢデバイスを制御する。ここではＵＳＢメモリやＳＤカードなどの外部メモリ３５０がＵＳＢコントローラ３１２に接続され、外部メモリ３５０へのデータの読み書きを行う。
【００１８】
図４は、実施形態１に係るカメラスキャナ１０１のコントローラ部２０１のＣＰＵ３０２が実行する制御用プログラムの機能構成図である。図４の４０１が制御用プログラム全体を示し、この制御用プログラム４０１は前述のようにＨＤＤ３０５に格納され、ＣＰＵ３０２が起動時にＲＡＭ３０３に展開して実行することにより、これら機能が達成される。
【００１９】
メイン制御部４０２はプログラムの本体であり、この制御用プログラム４０１の各モジュールを制御して、カメラスキャナ１０１の制御用プログラムを実行する。操作表示部４０３は、メイン制御部４０２からの描画要求を受け、表示制御部３０９を介して、短焦点プロジェクタ２０７或いはタッチパネル３３０への描画処理を実行する。また操作表示部４０３は、タッチパネル３３０が押下されたときにシリアルＩ／Ｆ３１０を介して、その押下位置の座標を受信し、描画中の操作画面の内容と、その座標を対応させて、その操作内容（押下されたボタン等）を判定する。そして、この操作内容をメイン制御部４０２へ通知することにより、タッチパネル３３０からの操作者の操作を受け付ける。
【００２０】
ネットワーク通信部４０４は、ネットワークＩ／Ｆ３０６を介して、ネットワーク１０４の他の機器とＴＣＰ／ＩＰによる通信を行う。データファイル管理部４０５は、制御用プログラム４０１の実行において必要な設定データ等をＨＤＤ３０５上の所定の領域へ保存して管理する。画像ファイル管理部４０６は、カメラＩ／Ｆ３０８を介して入力した画像データや、画像処理プロセッサ３０７で処理した画像データを、ＨＤＤ３０５の所定の領域へ保存して管理する。撮影処理部４０７は、カメラＩ／Ｆ３０８を介してカメラ部２０２を制御し、所定のタイミングでカメラ部２０２で撮影されて得た画像データをＲＡＭ３０３へ取り込む。また、その取り込んだ画像データを解析して、有効な画像データが取得されたときには、その画像データを原稿領域検出部４１０へ送信する。画像認識部４０８は、撮影処理部４０７が取得した画像データの内容を認識して、原稿の画像のデータを抽出する。画像変換部４０９は、画像認識部４０８が抽出した原稿の画像データを変換し、適切な画像データに整えた上で、画像ファイル管理部４０６を介してＨＤＤ３０５へ格納する。原稿領域検出部４１０は、撮影処理部４０７が取得した画像データから、読取領域２０５に置かれた原稿の領域を検出する。尚、これら撮影処理部４０７、画像認識部４０８、画像変換部４０９、原稿領域検出部４１０の処理については、後で詳細に説明する。
【００２１】
図５は、実施形態１に係る撮影処理部４０７の処理を説明するフローチャートである。尚、この処理は、ＨＤＤ３０５に格納された制御プログラムを、ＣＰＵ３０２がＲＡＭ３０３に展開して実行することにより達成されるため、ここではＣＰＵ３０２による処理として説明する。
【００２２】
この処理は、撮影処理部４０７による処理が起動されることにより開始され、先ずＳ５０１で、ＣＰＵ３２０は、初期状態の書画台２０４上の読取領域２０５の画像を撮影する。この読取領域２０５は矩形であるが、カメラ部２０２は厳密には読取領域２０５の真上にあるわけではないため、撮影された形状は図６（Ａ）に示すように歪んでいる。そこでＳ５０２で、ＣＰＵ３０２は、その撮影した形状を矩形に変換する射影変換のパラメータを算出する。そしてＳ５０３に進み、ＣＰＵ３０２は、Ｓ３０２で算出した射影変換パラメータを使用して、Ｓ５０１で撮影した読取領域２０５の画像データを、図６（Ｂ）に示したように矩形に補正する。次にＳ５０４に進み、ＣＰＵ３０２は、Ｓ５０３で補正した読取領域２０５の画像データを、読取領域の背景画像として画像認識部４０８へ送信する。この読取領域の背景画像データを受信した画像認識部４０８の処理については後述する。
【００２３】
Ｓ５０５以降では、撮影処理部４０７が、読取領域内に新たに入ってきた物体が所定時間静止したときに撮影する処理を実行する。Ｓ５０５ではまず、ＣＰＵ３０２は、カメラ部２０２から１フレームの画像データを取り込む。次にＳ５０６でＣＰＵ３０２は、その取り込んだ画像データを解析し、その中に未撮影の物体があるかどうかを判定する。Ｓ５０６で未撮影の物体がないと判定するとＳ５０５へ戻って、カメラ部２０２からの画像データの取り込みを行う。
【００２４】
Ｓ５０６で未撮影の物体があると判定したときはＳ５０７へ進み、ＣＰＵ３０２は、Ｓ５０６で検知した物体が所定時間静止したかどうかを判定する。Ｓ５０７で所定時間静止していないと判定するとＳ５０５へ戻ってＳ５０５〜Ｓ５０７の処理を繰り返す。Ｓ５０７で所定時間静止したと判定するとＳ５０８へ進み、ＣＰＵ３０２は、カメラ部２０２からの静止画の画像データを取り込む。そしてＳ５０９に進み、ＣＰＵ３０２は、今回Ｓ５０８で取り込んだ静止画像データと、前回Ｓ５０８で取り込んだ静止画像データの各画素値の差分を計算し、全ての画素値の差分の絶対値を加算して、２つの静止画像データの差分量を算出する。尚、今回、撮影処理部４０７が起動された後、初めてＳ５０８を実行した場合は、Ｓ５０９において、Ｓ５０１で取り込んだ読取領域２０５の画像データとの差分量を算出する。
【００２５】
次にＳ５１０に進み、ＣＰＵ３０２は、Ｓ５０９で算出した差分量が所定の値（ここでの所定の値は「０」に近い）より大きいかどうかを判定することによって、今回取り込んだ静止画像データが、１つ前の静止画像データと相違しているかどうかを判定する。Ｓ５１０で差がないと判定するとＳ５０５へ戻って、静止した物体の検知処理を実行する。一方、Ｓ５１０で差があると判定するとＳ５１１へ進み、ＣＰＵ３０２は、Ｓ５０８で取り込んだ静止画像データを、Ｓ５０２で算出した射影変換パラメータに基づいて射影変換を行う。そしてＳ５１２に進み、ＣＰＵ３０２は、その変換した静止画像データを画像認識部４０８へ送信する。この静止画像データを受信したときの画像認識部４０８の処理も後述する。
【００２６】
以上説明した処理を行うことにより、撮影処理部４０７は、新しく読取領域２０５に入った物体（原稿）が静止したときに、その物体の静止画像データを取り込み、画像認識部４０８へ送信することができる。この時、読み取った画像データの射影変換を行うので、カメラ部２０２が撮影する画角による画像の歪みを補正した画像データを取得できる。
【００２７】
次に図７、図８のフローチャートを参照して、実施形態１に係る原稿領域検出部４１０の処理について説明する。
【００２８】
図７は、実施形態１に係る原稿領域検出部４１０が実行する処理の全体を示したフローチャートである。この処理は、ＨＤＤ３０５に格納された制御プログラムを、ＣＰＵ３０２がＲＡＭ３０３に展開して実行することにより達成されるため、ここではＣＰＵ３０２による処理として説明する。
【００２９】
この原稿領域検出部４１０の処理がスタートするとまずＳ７０１で、ＣＰＵ３０２は、読取領域２０５の背景画像データ（例えば図６（Ｂ））の受信及び保存を行う。ここで受信するのは、撮影処理部４０７が図５のＳ５０４で送信した背景画像データである。そして、この受信した読取領域の背景画像データを、画像ファイル管理部４０６を介してＨＤＤ３０５へ保存する。
【００３０】
図９（Ａ）は、背景画像データを保存したときの状態を示す模式図である。画像ファイル管理部４０６は、ＨＤＤ３０５上に空のディレクトリ（図９（Ａ）では「/IMGDIR」という名称）を作成し、読取領域の背景画像データとして背景画像データ９０１を保存する。
【００３１】
次にＳ７０２に進み、ＣＰＵ３０２は、静止画データの受信及び保存を行う。ここで受信する静止画データは、撮影処理部４０７が図５のＳ５１２で送信した静止画データである。そして、受信した静止画データを、画像ファイル管理部４０６を介してＨＤＤ３０５へ保存する。
【００３２】
図９（Ｂ）は、受信した静止画データを保存したときの模式図を示す。画像ファイル管理部４０６は、背景画像データ９０１を保存したのと同じディレクトリに最新の受信画像データとして静止画データ９０２を保存する。
【００３３】
次にＳ７０３に進み、ＣＰＵ３０２は、受信した背景画像データと、静止画データとの各画素の差を計算して差分画像データを生成する。更に、その差分画像データを所定の閾値で二値化し、差分が無い部分を黒、差分がある部分を白とした、二値差分画像データを生成する。そしてＳ７０４に進み、ＣＰＵ３０２は、その二値差分画像データから、差分がある領域が連続した領域（以下、差分連続領域）を検出する。ここで検出する差分連続領域は、差分が無ければ０個であるが、原稿を載置した状況によっては１個であったり、複数個であったりする場合もある。
【００３４】
次にＳ７０５に進みＣＰＵ３０２は、Ｓ７０４で検出した差分連続領域を基に、新しい原稿が読取領域２０５に載置されたかどうかを検出する新規原稿の検出処理を行う。ここで新規に載置された原稿を検出した場合には、その検出した原稿領域に対応する領域データを生成する。次にＳ７０６に進み、読取領域２０５に載置されている原稿に重ねて、新たに原稿が置かれる等の動作が行われたかどうかを検出する原稿更新検出処理を行う。原稿が更新されたことを検出した場合は、その検出した原稿領域に対応する領域データを生成する。
【００３５】
次にＳ７０７に進み、ＣＰＵ３０２は、読取領域２０５に載置されている原稿が、読取領域２０５から取り除かれたかどうかを検出する原稿除去検出処理を行う。ここで原稿が除去されたこと検出した場合は、その検出した原稿領域に対応する領域データを生成する。尚、Ｓ７０５からＳ７０７の各検出処理の詳細について、及び、文書領域管理テーブルの具体例については後述する。
【００３６】
次にＳ７０８に進み、ＣＰＵ３０２は、Ｓ７０５からＳ７０７の検出処理によって原稿領域の新規生成／更新／除去を検出したかを判断する。Ｓ７０８の判定がＹＥＳであればＳ７０９へ進み、Ｓ７０５〜Ｓ７０７で作成した、検出領域に対応する領域データを用いて文書領域管理テーブルを更新する。次にＳ７１０に進み、ＣＰＵ３０２は、画像認識部４０８へ文書領域管理テーブルを送信し、文書領域管理テーブルが更新されたことを通知する。そしてＳ７１１に進み、ＣＰＵ３０２は、Ｓ７０７の原稿除去検出処理で検出した原稿領域については、文書領域管理テーブル上で「除去」という状態になっているため、この「除去」状態の領域データを削除する。こうしてＳ７１１の処理完了後、或いは、Ｓ７０５からＳ７０７の検出処理で変化が検出されずＳ７０８の判定結果がＮＯの場合は、Ｓ７０２へ戻り、次の静止画データの受信を待つ。
【００３７】
図８（Ａ）は、図７のＳ７０５の新規原稿の検出処理を説明するフローチャートである。
【００３８】
まずＳ８０１でＣＰＵ３０２は、Ｓ７０４で検出した差分連続領域のうち、今回の新規原稿の検出処理で未選択の差分連続領域を１つ選択し、その差分連続領域だけの画像データを作成する。次にＳ８０２に進み、ＣＰＵ３０２は、文書領域管理テーブルに登録してある各領域データの中で、選択した差分連続領域と重複する領域がある領域データを検索する。そしてＳ８０３に進み、ＣＰＵ３０２は、重複する領域データが見つかったかどうかを判断する。ここで見つかったと判定すると、今回選択した差分連続領域は、既に読取領域２０５に置かれていた原稿の領域に含まれるので、Ｓ８０４〜Ｓ８０６の処理を実行せずにＳ８０７へ進む。Ｓ８０３の判定がＮＯ、つまり、選択した差分連続領域と重複する領域がない原稿領域が発見されなければ、今回選択した差分連続領域は、新しい原稿を読取領域２０５に置いたものである。そこでＳ８０４へ進みＣＰＵ３０２は、新規原稿ＩＤを割り当て、その原稿の領域データを文書領域管理テーブルに作成する。次にＳ８０５に進み、ＣＰＵ３０２は、その割り当てた新規原稿ＩＤの領域データを作成し、この領域データの原稿状態を「新規」に設定する。そしてＳ８０６に進み、ＣＰＵ３０２は、選択している差分連続領域を原稿領域マスク画像として、Ｓ８０４で作成した領域データに設定する。そしてＳ８０７に進み、ＣＰＵ３０２は、今回の新規原稿の検出処理で未選択の差分連続領域があるかどうかを判断する。Ｓ８０７の判定がＹＥＳであればＳ８０１へ戻り、次の差分連続領域を選択して同じ処理を行う。一方、Ｓ８０７の判定がＮＯであれば、新規原稿の検出処理を終了する。
【００３９】
この処理により、読取領域２０５に最初に置かれた原稿、或いは最初に置かれた原稿に重ねて置かれた原稿群からなる原稿の山と別の場所に置かれた原稿を検出し、その原稿を新規原稿として処理することができる。
【００４０】
図８（Ｂ）は、図７のＳ７０６の原稿が更新されたことを検出する処理を説明するフローチャートである。
【００４１】
まずＳ８１１でＣＰＵ３０２は、Ｓ７０４で検出した差分連続領域のうち、今回の原稿更新検出処理で未選択の差分連続領域を１つ選択する。次にＳ８１２に進みＣＰＵ３０２は、文書領域管理テーブルに登録してある各領域データの中で、選択した差分連続領域と重複する領域がある原稿領域データを検索する。次にＳ８１３に進みＣＰＵ３０２は、領域が重複する原稿領域データが見つかったかどうかを判定する。Ｓ８１３で重複する原稿領域データが見つからないときは、今回選択した差分連続領域は、新しく読取領域２０５に置かれた原稿によるものであるため、Ｓ８１４〜Ｓ８１６の処理を実行しないでＳ８１７へ進む。これは新しく読取領域２０５に置かれた原稿による差分連続領域は、前述した図８（Ａ）の新規原稿の検出処理で検出されているためである。
【００４２】
Ｓ８１３で、選択した差分連続領域と重複する領域がある原稿領域が発見されたときは、今回選択した差分連続領域におかれた原稿は、発見した領域に対応した原稿である。そこでＳ８１４へ進みＣＰＵ３０２は、その原稿の領域データを作成して、その発見した原稿領域データをそこへ複製し、また、その原稿状態を「更新」に設定する。
【００４３】
尚、この原稿更新の検出処理では、領域の重複のみを見て更新かどうか判断している。そのため、実際に原稿が置かれていなくても、撮影部４０７が静止を検知して静止画像を送信するたびに「更新」と判断される。実際に原稿が置かれたかどうかは、後述する画像認識部４０８で判定する。
【００４４】
次にＳ８１５に進みＣＰＵ３０２は、発見した原稿領域データの領域マスク画像と、選択中の差分連続領域の和をとり、両方の領域を含むマスク画像データを生成する。次にＳ８１６に進み、ＣＰＵ３０２は、Ｓ８１５で生成したマスク画像データを、作成した領域データの領域マスク画像データとして設定する。このように、原稿領域を設定し直すことにより、画像認識部４０８は、原稿がある程度動いた場合等でも、原稿の画像データの抽出を行うことができる。そしてＳ８１７に進みＣＰＵ３０２は、今回の原稿更新の検出処理で未選択の差分連続領域があるかどうかを判断する。Ｓ８１７の判定がＹＥＳであればＳ８１１へ戻り、次の差分連続領域を選択して同じ処理を行う。またＳ８１７の判定がＮＯであれば、この原稿更新の検出処理を終了する。
【００４５】
図８（Ｃ）は、図７のＳ７０７の原稿が除去されたことを検出する原稿除去検出処理のフローチャートである。
【００４６】
先ずＳ８２１でＣＰＵ３０２は、文書領域管理テーブルから、今回の原稿除去検出処理で未選択の領域データを１つ選択する。次にＳ８２２に進みＣＰＵ３０２は、Ｓ７０４で検出した差分連続領域の中で、選択した領域データの領域マスク画像と重複する領域がある差分連続領域を検索する。そしてＳ８２３に進みＣＰＵ３０２は、領域が重複する差分連続領域が見つかったかどうかを判定する。ここで領域が重複する差分連続領域が見つかったときは、今回選択した領域データは読取領域２０５に残っている原稿の領域であるため、Ｓ８２４の処理を実行しないでＳ８２５に進む。Ｓ８２３の判定結果がＮＯ、つまり、選択した領域データと重複する領域がある差分連続領域が発見されなければ、今回選択した領域データに相当する原稿は読取領域２０５から全て除去されている。そこでＳ８２４へ進みＣＰＵ３０２は、新しく生成して選択した領域データをそこにコピーする。そして、その作成した領域データの原稿状態を「除去」に設定してＳ８２５に進む。Ｓ８２５でＣＰＵ３０２は、今回の原稿除去の検出処理で、未選択の領域データがあるかどうかを判定し、未選択の領域データがあればＳ８２１へ戻り、次の領域データを選択して同じ処理を行う。またＳ８２５で、未選択の領域データがなければ、この処理を終了する。
【００４７】
次に図１０〜図１３を参照して、上述した原稿領域検出部４１０の処理が、原稿の置き方に対してどのような動作を行い、その結果、画像認識部４０８へ渡す文書領域管理テーブルがどのようになるかを説明する。
【００４８】
図１０は、実施形態１において、読取領域２０５に最初の原稿が置かれたとき、及び最初の原稿と少なくとも一部が重なるように別の原稿が置かれたときの原稿領域検出部４１０の処理に具体例を説明する図である。
【００４９】
まず、読取領域２０５に最初の原稿が置かれたときについて説明する。このとき、原稿領域検出部４１０は、図７のＳ７０２で、図１０の静止画像データ１００１を受信する。またこのとき、文書領域管理テーブルは図１０のテーブル１００３で示され、領域データ領域に１つもデータが無い状態である。図７のＳ７０３では、読取領域の背景画像データ（図６（Ｂ））と静止画データ１００１の差分をとって二値化し、差分が無い画素を黒、差分が有る画素を白とした、図１０の二値画像データ１００２を生成する。次に図７のＳ７０４で、この二値画像データ１００２から、差分が連続した領域を検出する。このとき検出できる領域は二値画像データ１００２内の領域１０１１の１つである。
【００５０】
次に図７のＳ７０５の新規に載置された原稿の検出処理を実行する。図８のＳ８０１では、図１０の差分連続領域１０１１を選択する。次にＳ８０２で、文書領域管理テーブル１００３から、領域が重複する領域データを検索するが、ここでは領域データが１つも無いので発見できない。従って、Ｓ８０３の判定はＮＯとなる。そこでＳ８０４へ進んで新規原稿ＩＤを割り当て、Ｓ８０５では、その原稿状態を「新規」に設定して、新規原稿の領域データを生成する。更にＳ８０６で、二値画像データ１００２を領域マスク画像データとして、生成した領域データに設定する。このようにして、文書領域管理テーブルは、テーブル１００４に示すように、生成した１つの原稿領域が、領域データに登録されている状態になる。尚、Ｓ７０６の載置原稿の更新検出処理及びＳ７０７の載置原稿除去検出処理では、更新／除去された原稿領域は検出されないため、文書領域管理テーブルの更新は行わない。
【００５１】
次に図１０を参照して、静止画像データ１００１が示す原稿の上に、更に１枚の原稿が重ねて置かれたときの処理について説明する。このとき撮影部４０７が撮影する静止画像の例は静止画データ１００５のようになる。原稿領域検出部４１０は、図７のＳ７０２で、この静止画データ１００５を受信する。そしてＳ７０３で、背景画像データと静止画データ１００５の差分をとって二値化し、二値画像データ１００６を生成する。次にＳ７０４で、その二値画像データ１００６から差分が連続した領域を検出する。このとき検出できる領域は、二値画像データ１００６内の領域１０１２の１つである。次にＳ７０５の新規原稿の検出処理へ進む。このとき、この検出処理では、この領域１０１２が文書領域管理テーブル１００４の領域データ１０２１と重複する領域があるため、図８（Ａ）のＳ８０３の判定がＹＥＳとなり、新規文書は検出されずに終了する。続いて図７のＳ７０６の原稿の更新検出処理に進む。この更新検出処理では、図８（Ｂ）のＳ８１２で、重複する領域データ１０２１を発見するためＳ８１４へ進み、領域データ１０２１の状態を「更新」に設定する。そしてＳ８１５に進み、二値画像データ１００６と、領域データ１０２１に設定されている領域マスク画像データ１００２との各画素の和を求め、新しく二値画像データ１００７を生成する。そしてＳ８１６に進み、その生成した二値画像データ１００７を領域データ１０２１の領域マスク画像として設定する。以上のようにして、原稿が重ねて置かれた場合には、領域状態と原稿領域マスク画像を更新した領域データ１０２１を含む文書領域管理テーブル１００８を作成する。
【００５２】
図１１は、実施形態１において、図１０の状態から、更に、読取領域上の第１の原稿の領域とは別の領域に第２の原稿が置かれたときの原稿領域検出部４１０の処理の具体例を説明する図である。
【００５３】
このとき撮影部４０７が撮影する静止画像の例は静止画像データ１１０１のようになる。原稿領域検出部４１０は、Ｓ７０２で、この静止画像データ１１０１を受信する。そしてＳ７０３で、読取領域の背景画像データと静止画像データ１１０１との差分をとって二値化し、二値画像データ１１０２生成する。そしてＳ７０４で、この二値画像データ１１０２から差分が連続した領域を検出する。このとき検出できる領域は、二値画像データ１１０２の領域１１１１と領域１１１２の２つである。次にＳ７０５の、新規原稿の検出処理へ進む。ここではＳ８０１で、最初に領域１１１１を選択し、その選択した領域１１１１だけの二値画像データ１１０３を生成する。この二値画像データ１１０３を用いて、Ｓ８０２の処理を行い、領域が重複する領域を検索するが、領域１１１１は領域データ１０２１と重なる領域のため、Ｓ８０３の判定がＹＥＳとなる。
【００５４】
次にＳ８０１へ戻り、今度は領域１１１２を選択して二値画像データ１１０４を生成する。この二値画像データ１１０４を用いてＳ８０２の検索を行うが、この領域１１１２が重複する領域データは無いためＳ８０３の判定がＮＯとなる。そこで、Ｓ８０４〜Ｓ８０６で領域データ１１２１を生成して原稿ＩＤの割り当て、領域状態を「新規」に設定し、領域マスク画像データを二値画像１１０４に設定する。これで差分連続領域は、領域１１１１と領域１１１２の２つとなる。こうして新規原稿の検出処理を終了する。
【００５５】
更に、Ｓ７０６では、原稿の更新検出処理を行う。ここで、Ｓ８１１では、まず領域１１１１を選択して二値画像データ１１０３を生成する。次にＳ８１２では二値画像データ１１０３を用いて、文書領域管理テーブル１００８から領域が重複する原稿領域の検索を行う。ここでは、領域マスク画像として二値画像データ１００７を持つ領域データ１０２１が発見される。そこでＳ８１４では、領域データ１０２１の状態を「更新」に設定する。そしてＳ８１５では二値画像データ１１０３と領域マスク画像データ１００７の和をとって二値画像データ１１０５を生成する。そしてＳ８１６で、二値画像データ１１０５を領域マスク画像データとして領域データ１０２１に設定する。そしてＳ８１１に戻って、今度は領域１１１２を選択するが、領域１１１２と重複する領域は、図１０の文書管理テーブル１００８に無いためＳ８１３の判定がＮＯとなり、その後の処理は行わない。こうして載置された原稿の更新検出処理を終了する。
【００５６】
続いて、Ｓ７０７では載置されている原稿の除去検出処理を行う。Ｓ８２１では、図１０の文書領域管理テーブル１００８から領域データ１０２１を選択するが、文書領域マスク画像データ１００７の領域１０１３は、二値画像データ１１０５の領域１１１１と重なるため、Ｓ８２３の判定がＹＥＳとなり処理を終了する。
【００５７】
以上のようにして、図１０の状態から静止画像データ１１０１を受信したときに原稿領域検出部４１０が生成する文書領域管理テーブルは、図１１の１１０７で示すようになる。即ち、原稿領域１１１１は「更新」に、新たに原稿１１３１が置かれた原稿領域１１１２は「新規」に更新される。
【００５８】
尚、ここで説明したように、載置されている原稿の更新検出処理では、領域データ１０２１の領域に原稿が置かれる等の変化が無い場合でも、他の領域の変化（ここでは領域１１１２の生成）があると、領域データが更新される場合がある。実際に原稿が置かれたかどうかの判別は、後述する画像認識部４０８の処理において、領域データの更新前後の画像差分を用いることによってなされる。
【００５９】
図１２は、実施形態１において、静止画像１２０１で置かれている原稿のうち、右下の原稿１２３２がひっくり返されたときの処理を説明する図である。尚、ここでは、ユーザが原稿１２３２をひっくり返すとき、その原稿を「その場で」ひっくり返す、つまり、ひっくり返す前後で原稿の占める領域に重複があるようにした場合について説明する。
【００６０】
ここでは、原稿の除去と載置が１つの動作で行われるため、カメラ部２０２が撮影する静止画データは、例えば静止画データ１２０１のようになる。原稿領域検出部４１０は、図７のＳ７０２で、この静止画データ１２０１を受信する。次にＳ７０３で、読取領域の背景画像データと静止画データ１２０１との差分をとって二値化し、二値画像データ１２０２を生成する。次にＳ７０４で、その二値画像データ１２０２から差分が連続した領域を検出する。このとき検出できる領域は二値画像データ１２０２内の領域１２１１と領域１２１２の２つである。次にＳ７０５の新規原稿の検出処理へ進む。ここで、領域１２１１は、領域データ１０２１に設定したマスク画像１１０５の領域１１１１（図１１）と重なるため、新規原稿の載置とは検出されない。同様に、領域１２１２についても、領域データ１１２１に設定したマスク画像１１０４の領域１１１２（図１１）と重なるため、新規原稿の載置とは検出されない。これで新規原稿の検出処理は終了する。
【００６１】
続いて図７のＳ７０６で、載置原稿の更新検出処理を行う。ここで図８（Ｂ）のＳ８１１で、まず最初に領域１２１１を選択して二値画像データ１２０３を生成し、Ｓ８１２で領域マスク画像データと重複する領域データ１０２１を発見する。Ｓ８１４〜Ｓ８１６では、発見した領域データ１０２１の状態を「更新」に設定し、二値画像データ１２０５を領域マスク画像データとして設定する。そしてＳ８１１に戻って、次に領域１２１２を選択し、二値画像データ１２０４を生成する。Ｓ８１２では、図１１の領域データ１１２１の領域マスク画像１１０４は二値画像データ１２０４と重複する領域があるため、領域データ１１２１を発見する。次にＳ８１２で、領域データ１１２１の状態を「更新」に設定する。そしてＳ８１５に進み、二値画像データ１２０４と領域マスク画像データ１１０４（図１１）との和をとって二値画像データ１２０６を生成し、Ｓ８１６で二値画像データ１２０６を領域データ１１２１の領域マスク画像データとして設定し直す。これで検出した差分連続領域の全ての処理が終わったので、載置原稿の更新検出処理を終了する。
【００６２】
以上のようにして、静止画像データ１２０１を受信したときに原稿領域検出部４１０が生成する文書領域管理テーブルは、図１２の１２０７のようになる。尚、図７のＳ７０７の載置文書の除去検出処理では、除去された原稿を検出することは無いため、ここでは説明を省略する。
【００６３】
尚、ユーザが原稿をひっくり返す前後で、原稿の占める領域に重複が「ない」ようにした場合、即ち、重複しない別の場所に置いた場合には、後で説明する原稿の除去処理と、前に説明した原稿の新規載置検出処理とが同時に行われた場合と同じ処理になる。
【００６４】
図１３は、実施形態１において、図１２の静止画像データ１２０１で示された領域１２１１の２枚の原稿がユーザによって読取領域２０５から除去されたときの処理を説明する図である。
【００６５】
図１３の静止画像データ１３０１は、図１２の静止画像データ１２０１から原稿束１２３１が除去されたときにカメラ部２０２が撮影する静止画像データの例を示す。原稿領域検出部４１０は、図７のＳ７０２で、この静止画データ１３０１を受信する。次にＳ７０３で、読取領域の背景画像データと静止画像データ１３０１との差分をとって二値化し、二値画像データ１３０２を生成する。次にＳ７０４で、この二値画像データ１３０２から差分が連続した領域を検出する。このとき検出できる領域は二値画像データ１３０２内の領域１３２１の１つである。次にＳ７０５の新規原稿の検出処理では、領域１３２１は、図１２の文書領域管理テーブル１２０７の領域データ１１２１と重複する領域があるため、新規原稿とは検出されずにこの処理を終了する。続いてＳ７０６の載置原稿の更新検出処理では、領域１３２１は領域データ１１２１と重複するため、Ｓ８１２で領域データ１１２１を発見する。Ｓ８１４では、領域データ１１２１の状態を「更新」に設定し、Ｓ８１５では二値画像データ１３０３を生成し、Ｓ８１６では二値画像データ１３０３を文書領域マスク画像データとして領域データ１１２１に設定する。こうして載置原稿の更新検出処理はこれで終了する。
【００６６】
次にＳ７０７の載置原稿の除去検出処理では、文書領域管理テーブル１２０７から領域データを選択する。ここでは、Ｓ８２１で、まず領域データ１０２１を選択する。次にＳ８２２では、領域データ１０２１に設定されている文書領域マスク画像データ１２０５（図１２）と、今回Ｓ７０３で生成した二値画像データ１３０２とから、領域が重複する差分連続領域を検索する。Ｓ８２３では、Ｓ８２２で領域が重複する差分連続領域を発見したかを判断する。今回はＳ８２３の判定はＮＯであるためＳ８２４へ進み、領域データ１０２１の原稿状態を「除去」に設定する。これで領域データ１０２１の除去判定処理は終了するので、Ｓ８２１へ戻って今度は領域データ１１２１を選択する。領域データ１１２１は、二値画像データ１３０２の領域１３２１と重複する領域があるため、Ｓ８２３の判定がＮＯとなり、領域データ１１２１の設定は変更しないで処理を終わる。こうして載置原稿の除去検出処理を終了する。
【００６７】
以上のようにして、静止画像データ１３０１を受信したときに原稿領域検出部４１０が生成する文書領域管理テーブルは、図１３の１３０４のようになる。
【００６８】
この載置原稿の除去検出処理で、領域状態を「除去」と設定した原稿については、後述する画像認識部４０８及び画像変換部４０９で終了処理を行う。また、原稿領域検出部４１０では、Ｓ７１０で原稿状態が「除去」の原稿領域を文書領域管理テーブルから削除することにより、除去された原稿に対する処理を終了する。
【００６９】
また、図１３の静止画像データ１３０６を受信したときは、読取領域２０５上の全ての原稿が取り除かれた状態であるため、読取領域の背景画像データと静止画像データ１３０５との差分の二値化データは１３０６で示すようになる。この場合、Ｓ８２３では、Ｓ８２２で領域が重複する差分連続領域を発見しないためＳ８２４へ進み、領域データ１１２１の原稿状態を「除去」に設定する。これにより文書領域管理テーブルは１３０７で示すようになる。
【００７０】
以上、フローチャートと画像例で説明したように、原稿領域検出部４１０によって、読取領域２０５に置いた原稿束について下記の検出を行うことができる。
・重なった領域に置かれた原稿を、１つの文書として検出する。
・分かれた領域に置かれた原稿を、別の文書として検出する。
【００７１】
これにより読取領域２０５に、分類された原稿を、その分類に応じてそれぞれを別の領域に重ねて載置することにより、各原稿束をそれぞれ独立した文書として、後述する画像認識部４０７や画像変換部４０８で処理することができる。
【００７２】
また、原稿が読取領域２０５から除去されたことを検出することにより、後述する画像認識部４０７、画像変換部４０８により、その除去された原稿に対して適切な処理を行うことができる。
【００７３】
図１４〜図１５のフローチャートを用いて、実施形態１に係る画像認識部４０８の処理について説明する。
【００７４】
図１４は、実施形態１に係る画像認識部４０８が実行する処理の全体を説明するフローチャートである。この処理は、ＨＤＤ３０５に格納された制御プログラムを、ＣＰＵ３０２がＲＡＭ３０３に展開して実行することにより達成されるため、ここではＣＰＵ３０２による処理として説明する。
【００７５】
画像認識部４０８の処理がスタートするとまずＳ１４０１で、ＣＰＵ３０２は、原稿領域検出部４１０からの文書領域管理テーブルの更新通知を受信する。次にＳ１４０２に進みＣＰＵ３０２は、その受信した文書領域管理テーブルから、処理を行う領域データを１つ選択する。次にＳ１４０３に進みＣＰＵ３０２は、その選択した文書領域管理テーブルの領域状態が「除去」かどうかを判定する。そうであればＳ１４０４へ進み、ＣＰＵ３０２は、画像変換部４０９へ原稿の除去を通知する。ここでは、選択している領域管理テーブルから、文書ＩＤとその状態（ここでは「除去」）、そして領域マスク画像データを取得し、図１９（Ｃ）に示すデータを構成して通知を行う。
【００７６】
一方、Ｓ１４０３の判定がＮＯであればＳ１４０６へ進み、その選択した文書領域管理テーブルの状態が「新規」どうかを判定する。そうであればＳ１４０７に進み、ＣＰＵ３０２は、その受信した文書領域管理テーブルから最新の静止画データと背景画像データとを取得し、選択中の領域データの領域マスク画像データで２つの画像をマスクする。そして、マスク後の２つの画像データを使用してＳ１４０８で１ページ目の画像抽出処理を行う。このＳ１４０８の処理については後述する。
【００７７】
一方、Ｓ１４０６の判定がＮＯであればＳ１４０９へ進み、選択した文書領域管理テーブルの状態が「更新」かどうかを判定する。その判定がＹＥＳであればＳ１４１０へ進む。Ｓ１４１０では、受信した文書領域管理テーブルから最新の静止画データと１つ前の静止画データとを取得し、選択中の領域データの領域マスク画像データで２つの画像データをマスクする。そして、マスク後の２つの画像データを使用してＳ１４１１で２ページ目以降の画像データの抽出処理を行う。このＳ１４１１の処理については後述する。
【００７８】
またＳ１４０９の判定がＮＯであるか、或いはＳ１４０４，Ｓ１４０８，Ｓ１４１１のいずれかの処理が終了するとＳ１４０５に進み、ＣＰＵ３０２は、今回の文書領域管理テーブルの更新通知の受信後、未処理の領域データがあるかどうかを判定する。未処理の領域データがあればＳ１４０２に進み、未処理の領域データを選択して処理を続行する。こうして未処理の領域データがなくなるとＳ１４０１へ戻り、次の文書領域管理テーブルの更新通知の受信を待つ。
【００７９】
図１５（Ａ）は、図１４のＳ１４０８の１ページ目の画像の抽出処理（第１の抽出処理）を説明するフローチャートであり、図１７の画像例も用いて説明する。
【００８０】
図１７は、１ページ目の画像抽出処理を説明する図である。
【００８１】
図１７（Ａ）の静止画像データは、１ページ目の静止画像データ１７０１の一例を示す。前に説明した図７のＳ７０５では、背景画像データ６０２と静止画像データ１７０１との差分から、図１７（Ｂ）に示す多値差分画像データ１７０２を生成している。Ｓ１５０１では、多値差分画像データ１７０２を二値化し、図１７（Ｃ）の二値差分画像データ１７０３を生成する。更に、Ｓ１５０１では、この二値差分画像データ１７０３からエッジ抽出及び直線検出を行い、図１７（Ｄ）の検出直線画像データ１７０４を得る。Ｓ１５０２では、Ｓ１５０１で検出された直線を組み合わせて、矩形を成す直線の組を１又は複数検出する。そしてＳ１５０３に進み、ＣＰＵ３０２は、Ｓ１５０２で検出した矩形について、多値差分画像データ１７０２と重ね合わせ、重なった矩形内の画素値の絶対値を加算することにより、矩形内の差分量を算出する。Ｓ１５０２で複数の矩形が検出された場合には、この差分量の算出を全ての矩形について実行する。そしてＳ１５０４に進み、ＣＰＵ３０２は、Ｓ１５０３で算出した差分量が最大である矩形を選択する。尚、図１７の例では、検出した直線画像データ１７０４から検出される矩形は１つなので、検出した直線画像１７０４の矩形が選択矩形となる。
【００８２】
そしてＳ１５０５に進み、ＣＰＵ３０２は、その選択した矩形の内部を有効画素、矩形の外部を無効画素としたマスク画像データ１７０５（図１７（Ｅ））を生成する（マスク画像１７０５では、白い部分が有効画素、黒い部分が無効画素を示す）。次にＳ１５０６に進み、ＣＰＵ３０２は、静止画データ１７０１からマスク画像データ１７０５に基づいて有効画素を抽出し、抽出画像データ１７０６（図１７（Ｆ））を生成する。そしてＳ１５０７に進み、画像ファイル管理部４０６を介して抽出画像データ１７０６をＨＤＤ３０５へ保存する。更に、その画像属性をＲＡＭ３０３に保存する。
【００８３】
ここで保存する画像属性は、図１９（Ａ）に示すように、文書属性、ページ属性、画像属性から成る。文書属性には領域ＩＤと領域状態（ここでは「新規」）、及び領域データから取得した原稿領域マスク画像が含まれる。ページ属性にはページ番号が含まれる。画像属性には画像データの画素数や抽出した矩形の画素数、抽出した矩形の傾き、抽出した画像データファイル、及びその領域を示す原稿領域マスク画像データが含まれる。Ｓ１５０８では画像変換部４０９へ、図１９（Ａ）の画像属性を送信することにより、新規文書の生成と１ページ目の画像抽出を通知する。
【００８４】
図１５（Ｂ）は、図１４のＳ１４１１の２ページ目以降の画像抽出処理（第２の抽出処理）の詳細フローチャートであり、図１８の画像例も参照して説明する。
【００８５】
図１８（Ａ）〜（Ｍ）は、２ページ目以降の画像抽出処理を説明する図である。
【００８６】
図１８（Ａ）の静止画像データは２ページ目の静止画像データの一例を示し、図１７（Ａ）の１ページ目の静止画像データ１１０１の上に２ページ目（２枚目）の原稿が置かれた様子を撮影した画像を示している。
【００８７】
図１５（Ｂ）のＳ１５１１では、前回と今回の静止画データ、即ち、１ページ目（１枚目）の静止画データと２ページ目の静止画データ（図１２（Ａ））との差分画像データの生成を行う。ここでは、差分画像データにノイズや照明の影響を受けることをできるだけ避けるため、差分をとるのは原稿が置かれた領域のみに行い、背景領域はできる限りマスクする。Ｓ１５１１の処理の詳細は図１６（Ａ）のフローチャートで説明する。
【００８８】
図１６（Ａ）は、図１５（Ｂ）のＳ１５１１のページ目の静止画データと２ページ目の静止画データとの差分画像データの生成処理を説明するフローチャートである。
【００８９】
先ずＳ１６０１でＣＰＵ３０２は、１つ前に読み取った原稿のマスクデータを読み出す。例えば２ページ目の原稿の場合は、図１５（Ａ）のＳ１５０５で生成してＲＡＭ３０３に格納された１ページ目の原稿のマスク画像データ１を読み出す。また３ページ目以降の場合は、後述するＳ１６２０で格納されたマスク画像データを読み出す。次にＳ１６０２でＣＰＵ３０２は、１ページ目の原稿の上に２ページ目の原稿が載った静止画像データと、背景画像データとの差分をとって差分画像データ（図１８（Ｂ））を生成する。そして、その差分画像データを二値化してマスク画像データ２（図１８（Ｃ））を生成する。次にＳ１６０３に進みＣＰＵ３０２は、マスク画像データ１（図１７（Ｅ））とマスク画像データ２（図１８（Ｃ））との和を取ったマスク画像データ３を生成する。そしてＳ１６０４に進みＣＰＵ３０２は、Ｓ１６０３で生成したマスク画像データ３で、１ページ目の原稿の静止画データのマスク処理を行ってマスク後画像データ（図１８（Ｄ））を生成する。次にＳ１６０５に進みＣＰＵ３０２は、Ｓ１６０３で生成したマスク画像データ３で、今回受け取った静止画像データ（図１８（Ａ））のマスク処理を行ってマスク後画像データ（図１８（Ｅ））を生成する。そしてＳ１６０６に進みＣＰＵ３０２は、マスク後画像データ（図１８（Ｄ））とマスク後画像データ（図１８（Ｅ））との差分を取って差分画像データ（図１８（Ｆ））を生成し、その差分量を算出してＲＡＭ３０３に保存する。以上でＳ１５１１の処理が完了する。
【００９０】
次に図１５（Ｂ）に戻り、Ｓ１５１５では、Ｓ１５１１で算出した差分量が０に近い所定の値よりも小さいかどうかを判断することによって、１つ前の静止画データと最新の静止画データとの間に差分があるかどうかを判定する。Ｓ１５１５の判定がＮＯであれば、該当する領域データの状態は「更新」であったが原稿の追加等の操作は行われていないことになるため、今回の２ページ目以降の画像抽出処理を終了する。一方、Ｓ１５１５の判定がＹＥＳであればＳ１５１２に進み、処理を続行する。Ｓ１５１２では、図１８（Ｆ）の差分画像データからの画像抽出処理を行う。Ｓ１５１２の処理の詳細は図１６（Ｂ）のフローチャートを参照して説明する。
【００９１】
図１６（Ｂ）は、図１５のＳ１５１２の画像抽出処理を説明するフローチャートである。
【００９２】
まずＳ１６１１で、図１８（Ｆ）の差分画像データを二値化して二値差分画像データ（図１８（Ｇ））を生成する。そして、この二値差分画像データからエッジ抽出及び直線の検出を行う。ここで検出された直線を示したものが図１８（Ｈ）の直線画像データである。Ｓ１６１２では、Ｓ１６１１で検出した直線の中から、矩形を成す直線の組を検出する。図１８では、図１８（Ｉ）の画像データと図１８（Ｊ）の画像データの２つの組が矩形として検出されている。Ｓ１６１３では、各直線の組について、図１８（Ｆ）の差分画像データの該当矩形内の領域の画素値の絶対値を加算し、矩形内の差分量を算出する。Ｓ１６１４では、算出した差分量が最大である矩形を選択する。次にＳ１６１５に進み、選択した矩形内の面積と、図１５（Ａ）のＳ１５０６で抽出した１ページ目の抽出画像データ１７０６（図１７（Ｆ））の面積との比を算出する。次にＳ１６１６に進み、その面積比が予め決定しておいた所定の範囲内かどうかを判定する。Ｓ１６１６の判定がＹＥＳであればＳ１６２０に進み、その選択した矩形から、矩形内を有効画素、矩形外を無効画素としたマスク画像データを生成する。図１８（Ｋ）に示す画像データがマスク画像データとなる。そしてＳ１６２１に進み、図１８（Ａ）の静止画像データから図１８（Ｋ）のマスク画像データに基づいて有効画素を抽出し、２ページ目の抽出画像データ（図１８（Ｌ）を生成する。
【００９３】
一方、Ｓ１６１６の判定がＮＯの場合、つまり、大きすぎる／或いは小さすぎる領域が矩形として検出された場合はＳ１６１７に進み、その矩形領域を無効として、その直線の組を破棄する。そしてＳ１６１８に進み、その破棄した矩形の他に有効な矩形があるかどうかを判定する。Ｓ１６１８の判定がＹＥＳであればＳ１６１４へ戻り、矩形内の差分量が次に大きい矩形を選択して有効かどうかの判断を継続する。またＳ１６１８の判定がＮＯであればＳ１６１９へ進む。Ｓ１６１９では、有効な矩形が見つからなかった場合であるため、Ｓ１６１１で生成した、図１８（Ｃ）のマスク画像データに基づいて、２ページ目の静止画データ（図１８（Ａ））から有効画素を抽出する。そして図１８（Ｍ）に示す２ページ目の抽出画像データを生成する。以上でＳ１５１２の画像抽出処理を終了する。
【００９４】
図１６（Ｂ）のフローチャートにおいて、Ｓ１６１４で差分量が最大の矩形を選択することにより、後から重ねられた原稿の領域を検出することができる。またＳ１６１４，Ｓ１６１５で、１ページ目の抽出画像の面積とかけ離れた面積を持つ矩形を選択対象から外すことにより、ノイズや照明の変化で画像差分を誤検出した場合でも、検出精度を高めることができる。特に、Ｓ１６１６で用いる所定の範囲を「１」に近い値にすれば、１つの文書内で原稿サイズが変わらない場合の検知精度を高くすることができる。また、選択できる矩形が無かった場合に、Ｓ１６１９で、背景領域との差分に基づいたマスク画像データ（図１８（Ｃ））を用いて画像を抽出することにより、精度の高い検出は行えなくても確実に原稿領域が含まれた画像を抽出することが可能となる。
【００９５】
こうしてＳ１５１２の画像抽出処理が完了するとＳ１５１３に進み、Ｓ１５０７で説明したのと同じく、抽出画像データをＨＤＤ３０５へ保存し、画像属性をＲＡＭ３０３へ保存する。ここで保存する画像属性は図１９（Ｂ）のようになり、原稿状態は「更新」と設定する。Ｓ１５１４では図１９（Ｂ）の画像属性を画像変換部４０９へ送信することにより、２ページ目以降の画像抽出を通知する。
【００９６】
以上説明した処理により、読取領域２０５に最初に置かれた原稿と、その原稿に重ねて置かれた２枚目の以降の原稿のそれぞれの画像を読み取ることができる。
【００９７】
次に実施形態１に係る画像変換部４０９が実行する処理を図２０、図２１及び図２３のフローチャートを用いて説明する。
【００９８】
図２０は、実施形態１に係る画像変換部４０９が実行する処理全体の流れを示すフローチャートである。この処理は、ＨＤＤ３０５に格納された制御プログラムを、ＣＰＵ３０２がＲＡＭ３０３に展開して実行することにより達成されるため、ここではＣＰＵ３０２による処理として説明する。
【００９９】
まずＳ２０００で、ＣＰＵ３０２は、画像認識部４０８から図１９で示した属性を受信するのを待つ。次にＳ２００１に進み、ＣＰＵ３０２は、その受信した属性中の文書属性が「新規」かどうかを判定する。文書属性が「新規」でなければＳ２００４に進み、受信した属性中の文書属性が「更新」かどうかを判定する。文書属性が「更新」でなければＳ２００６に進み、受信した属性中の文書属性が「除去」かどうかを判定する。Ｓ２００６の判定がＮＯであればＳ２０００へ戻り、属性の通知の受信待ちを続ける。
【０１００】
Ｓ２００１で文書属性が「新規」で、１ページ目の画像抽出通知を画像認識部４０８から受信するとＳ２００２に進み、新規文書の作成処理を開始する。
【０１０１】
図２１（Ａ）は、図２０のＳ２００２の新規文書の作成処理を説明するフローチャートである。
【０１０２】
先ずＳ２１０１では、画像ファイル管理部４０６を介して、図２２（Ａ）に示すようにＨＤＤ３０５上に文書画像保存用の新規ディレクトリを作成する。次にＳ２１０２に進み、ＣＰＵ３０２は、画像ファイル管理部４０６を介して、図２２（Ｂ）に示すようにＲＡＭ３０３に文書属性とページ属性の領域を確保する。ここでは、文書属性のページ数は「０」であり、ページ属性の領域はまだ空である。尚、ここで確保した領域は画像ファイル管理部４０６が管理しており、この領域へのデータの保存／読み出しは以降も画像ファイル管理部４０６を介して行う。
【０１０３】
次にＳ２１０３に進み、ＣＰＵ３０２は、Ｓ２１０１で生成した保存ディレクトリ名をＳ２１０３で確保した文書属性領域に保存し、Ｓ２００２の処理は完了する。
【０１０４】
続いてＳ２００３では、画像補正および画像データ保存処理を行う。
【０１０５】
図２１（Ｂ）は、図２０のＳ２００３，Ｓ２００５の処理の詳細を示すフローチャートである。
【０１０６】
ここで受信した画像データは、傾いている場合があり、その傾きは図１９で示した、画像認識部４０８が生成した画像属性の中に記録されている。そこで、Ｓ２１１１では、その傾きに基づいて、画像処理プロセッサ３０７で逆方向に回転処理を行い、画像が正立するように補正処理を行う。次にＳ２１１２に進み、画像処理プロセッサ３０７で下地とばし、エッジ強調等の補正処理を行って画像を鮮鋭化させる。次にＳ２１１３に進み、ＣＰＵ３０２は、画像ファイル管理部４０６を介して、図２２（Ｃ）に示すように、Ｓ２１０１で作成した文書画像保存用ディレクトリの下に、補正した画像データを保存する。そしてＳ２１１４に進み、図２２（Ｄ）に示すように、ページ属性に１ページ目の画像の情報を格納し、ページ数を「１」とする。以上でＳ２００３の画像補正・保存処理を完了してＳ２０００へ戻る。
【０１０７】
次にＳ２００４の判定がＹＥＳ、即ち、２ページ目以降の画像抽出通知を受信した場合はＳ２００５に進み、受信した抽出画像の補正・保存処理を行う。Ｓ２００５の処理もＳ２００３と同じく図２２（Ｂ）のフローチャートに従って処理される。ここでＳ２１１３では、図２２（Ｅ）に示すように、１ページ目と同じ保存ディレクトリ（第１のファイル）に、２ページ目の補正後の画像データを保存する。そして、図２２（Ｆ）に示すように、ページ属性を追加して保存し、文書属性のページ数をインクリメントする。こうしてＳ２００５の処理が完了するとＳ２０００へ戻る。
【０１０８】
また図２２（Ｅ）のように、１つの保存ディレクトリに、複数のページの画像データが保存されている状態で、Ｓ２００１で新たな文書の生成を受信すると、Ｓ２００２では図２２（Ｇ）に示すように、対応する新たな保存ディレクトリを作成する。そして、その新たな保存ディレクトリ（第２のファイル）の下に補正後の画像データを保存していく。そして、図２２（Ｈ）に示すように、その文書属性も新たに生成して保存する。このようにして、原稿領域検知部４１０で検知した原稿領域のそれぞれに対応して、文書保存ディレクトリ及び文書属性を管理することにより、複数の領域に載置された原稿の画像を並行して、それぞれ別々のファイルに蓄積することが可能になる。
【０１０９】
またＳ２００６の判定がＹＥＳ、即ち、原稿の除去通知を受信するとＳ２００７に進み、出力ファイルの生成処理を行う。このＳ２００７の処理は後に説明する。そしてＳ２００８に進み、Ｓ２００７で生成した出力ファイルを、予め決められた宛先に送信又は保存する。
【０１１０】
このとき、宛先がネットワーク上のＰＣやサーバであれば、ネットワーク通信部４０４を介して所定のプロトコルで送信を行う。また、宛先が外部メモリ３５０であればデータファイル管理部４０５を介して保存処理を行う。これらの宛先は、データファイル管理部４０５によってＨＤＤ３０５上に記憶されており、ネットワーク通信部４０４を介して、或いはタッチパネル３３０を使用したユーザの操作によって、ユーザが設定することが可能である。
【０１１１】
尚、Ｓ２００７で生成する出力ファイルのフォーマットの一例としてＸＭＬ形式のテキストファイルで記述しても良い。この場合は、マルチページドキュメントは、出力ファイルの先頭に挿入されるヘッダ記述、撮影された原稿をページ単位で記述するための電子文書ページ記述、そしてファイルの記述終了を示すフッタ記述で構成される。
【０１１２】
図２３は、図２０のＳ２００７で、マルチページドキュメントを出力する処理手順を説明するフローチャートである。
【０１１３】
まずＳ２３０１において、画像変換部４０９は、画像ファイル管理部４０６を介して、図２２（Ｈ）に示す管理テーブルより画像情報を含むページデータを取得する。次にＳ２３０２に進み、画像変換部４０９は、取得したページデータが１ページ目か否かを判定する。１ページ目であればＳ２３０３へ進み、１ページ目で無ければＳ２３０４へ進む。Ｓ２３０３で画像変換部４０９は、新規のマルチページドキュメントを生成するためのヘッダ記述を出力してＳ２３０４へ進む。Ｓ２３０４で画像変換部４０９は、画像ファイル管理部４０６を介して画像データをＨＤＤ３０５から読み出し、電子文書ページ記述として記述する。次にＳ２３０５に進み、画像ファイル管理部４０６は、出力ファイルへの書き込みが終了した画像データをＨＤＤ３０５から削除する。次にＳ２３０６で、画像変換部４０９は、Ｓ２３０１で取得したページデータが、最終ページかどうかを判断する。最終ページであればＳ２３０７へ、最終ページでなければＳ２３０１へ戻る。Ｓ２３０７で画像変換部４０９は、ファイルの終端を示すフッタ記述を出力して出力ファイルを生成する。最後にＳ２３０８に進み、画像変換部４０９は、管理テーブルで分類された全てのページデータを出力するまでＳ２３０１〜Ｓ２３０８の処理を繰り返し、出力ファイル生成処理を終了する。
【０１１４】
以上説明したように本実施形態１によれば、読取領域に重ねて載置された原稿を順次読み取り、その原稿の画像データを文書データとして記憶することができる。
【０１１５】
また、重ねて載置されている原稿束と異なる場所に原稿を重ねて載置するだけで、それら原稿の画像データを、既に重ねて載置されている原稿束の原稿の文書データとは異なるファイルとして記憶することができる。
【０１１６】
［実施形態２］
前述の実施形態１では、分かれた領域に置かれた原稿を撮影し、それぞれ別の文書として蓄積した。これに対して実施形態２では、２つ以上の原稿領域にまたがって原稿が置かれた場合に対応した処理を行う。尚、実施形態２に係る装置やシステム構成は前述の実施形態１の場合と同じであるため、その説明を省略する。
【０１１７】
図２４は、本発明の実施形態２において、２つ以上の原稿領域にまたがって原稿２４１０が置かれた場合を説明する図である。
【０１１８】
ここでは実施形態１の図１２の静止画データ１２０１の状態から、図２４（Ａ）の静止画像データ２４０１のように、２つの原稿領域にまたがって原稿２４１０が置かれた場合の処理を、図２５のフローチャートを用いて説明する。
【０１１９】
図２５は、実施形態２に係る原稿領域検出部４１０が実行する載置原稿の更新検出処理を説明するフローチャートである。
【０１２０】
この処理は、前述の実施形態１の図８（Ｂ）のフローチャートに、Ｓ２５０１とＳ２５０２の処理を追加したものになる。尚、前述の図８（Ｂ）のステップと同じステップには同じ符号を付して、その説明を省略する。
【０１２１】
まず、原稿領域検出部４１０が、図２４（Ａ）に示す静止画データ２４０１を受信する前は、文書領域管理テーブルは、図１２の１２０７で示すように２つの領域を登録している。ここでは、２つの領域データを含み、領域１２１１を含む領域マスク画像データ１２０５と、領域１２１２を含む領域マスク画像データ１２０６（図１２）が設定されている。
【０１２２】
原稿領域検出部４１０は、図７のＳ７０２で静止画データ２４０１を受信すると、Ｓ７０３で二値画像データ２４０２を生成し、Ｓ７０４では差分連続領域として領域２４１１の１つを検出する。つまり、静止画データ２４０１に追加で置かれた原稿により、領域１２１１と領域１２１２がつながって１つの領域として検出したことになる。そのため図２５の載置原稿の更新検出処理では、Ｓ８１１〜Ｓ８１３で、領域２４１１と領域が重複する文書領域を検索すると、文書領域管理テーブル１２０７から、領域データ１０２１と１１２１の２つを発見する。
【０１２３】
続いて、Ｓ２５０１に進み、その発見した重複する領域データが１つかどうかを判定する。Ｓ２５０１で１つと判定すると、前述の実施形態１と同じく、Ｓ８１４〜Ｓ８１７の領域データの設定処理を行う。図２４の場合は、Ｓ２５０１の判定がＮＯとなるのでＳ２５０２へ進み、操作表示部４０３を介してタッチパネル３３０に、原稿が重なったことを表示し、ユーザへ通知する。そして、Ｓ８１４〜Ｓ８１６の処理を実行せずに、載置原稿の更新検出処理を終了する。
【０１２４】
このように、２つの領域にまたがる原稿が置かれたことを検出すると、メッセージにより、ユーザに誤った場所に原稿が置かれたことを通知することで、ユーザは、その原稿を読取領域２０５に正しく置き直すことができる。また、このとき領域データの更新処理を行わないことにより、適切でない画像が蓄積されないようにすることができる。
【０１２５】
［実施形態３］
上述の実施形態２では、２つ以上の原稿領域に跨って原稿が置かれた場合には原稿領域検出処理を中止してユーザにエラーであることを警告した。
【０１２６】
これに対して実施形態３では、同様に２つ以上の原稿領域に跨って新たな原稿が置かれた場合に、それぞれの原稿領域の蓄積済みの画像を１つの文書に合体する処理を行う。更に、その原稿が取り除かれて再び元の複数の原稿領域に分かれた場合に、文書を分割する処理を行う例を説明する。尚、実施形態３に係る装置やシステム構成は前述の実施形態１の場合と同じであるため、その説明を省略する。
【０１２７】
この実施形態３に係る原稿領域検出部４１０の処理を、図２６及び図２７のフローチャートを参照して説明する。
【０１２８】
図２６は、実施形態３に係る原稿領域検出部４１０の処理を説明するフローチャートである。
【０１２９】
図２６のフローチャートでは、図７の実施形態１の原稿領域検出部４１０の処理に対して、Ｓ７０６の載置原稿の更新検出処理の処理内容が変更されている。また、Ｓ２６０１の文書領域合体検出処理とＳ２６０２の文書領域分割検出処理が追加されている。
【０１３０】
図２８は、実施形態３において、２つの領域に跨って原稿が置かれた状態を示す図である。
【０１３１】
図１２の静止画データ１２０１の状態に対して、領域１２１１と領域１２１２にまたがって原稿２８３１が置かれた状態が、図２８の静止画データ２８０１である。原稿領域検出部４１０は、Ｓ７０２で静止画データ２８０１を受信すると、Ｓ７０３で、背景画像データとの差分から二値画像データ２８０２を生成する。Ｓ７０４では、差分連続領域として領域２８１１の１つを検出する。そしてＳ７０５では、図８（Ａ）の新規載置原稿の検出処理であり、領域２８１１は領域１２１１と領域１２１２の２つと重複する領域があるため、Ｓ７０５では検出されない。
【０１３２】
図２７（Ａ）は、図２６のＳ７０６の載置原稿更新検出処理を説明するフローチャートである。
【０１３３】
図２７（Ａ）は、図８（Ｂ）の実施形態１の原稿領域更新処理に対して、Ｓ２７０１〜Ｓ２７０３が追加され、差分連続領域と重複する領域データが１対１であるかどうかを判断する。ここで、１対１であれば図８（Ｂ）の処理と同様に、Ｓ８１４〜Ｓ８１６の領域データの更新処理を行う。もし１つの差分連続領域に対して複数の領域データが重複すれば、複数の領域が合体したと判定して、載置原稿更新検出処理は終了する。また、もし１つの領域データに対して複数の領域データが重複すれば、その領域データは複数の領域に分割されたと判断し、ここでも載置原稿の更新検出処理を終了する。
【０１３４】
ここで、図２８の領域２８１１が検出された場合、図２７（Ａ）のＳ８１２で、文書領域管理テーブル１２０７から領域データ１０２１と領域データ１１２１（図１２）の２つを発見する。Ｓ２７０１では、重複する領域が１つかどうかを判断する。ここでは２つ発見したので、Ｓ２７０１の判定結果はＮＯとなり、Ｓ８１７へ進んで、載置原稿の更新検出処理を終了する。
【０１３５】
次に図２６のＳ２６０１に進む。この処理は、文書領域合体検出処理であり、この処理を図２７（Ｂ）のフローチャートで説明する。
【０１３６】
図２７（Ｂ）は、図２６のＳ２６０１の原稿領域の合体検出処理を説明するフローチャートである。
【０１３７】
原稿領域の合体検出処理がスタートするとまずＳ２７２１で、ＣＰＵ３０２は、未選択の差分連続領域を１つ選択する。ここでは、図２８の領域２８１１を選択する。次にＳ２７２２に進み、ＣＰＵ３０２は、文書領域管理テーブル１２０７から、重複する領域データを検索し、ここでは先に説明したＳ８１２（図８（Ｂ））と同様に、領域データ１０２１と１１２１の２つを発見する。次にＳ２７２３に進みＣＰＵ３０２は、重複する文書領域が２つ以上あるかどうかを判定し、ここでは２つの領域データを発見しているのでＳ２７２４に進む。Ｓ２７２４では、合体後の文書として新規領域ＩＤを割り当てる。次にＳ２７２５に進みＣＰＵ３０２は、新規領域ＩＤを割り当てた領域データの文書状態を「合体」に設定する。次にＳ２７２６に進み、ＣＰＵ３０２は、領域が重複する全ての領域データと、選択中の差分連続領域との和を取ったマスク画像を生成する。ここでは、領域データから二値画像１２０５と二値画像１２０６、差分連続領域として二値画像２８０２（図２８）の３つの画像データの和をとって二値画像データ２８０３を生成する。そしてＳ２７２７に進み、ＣＰＵ３０２は、その生成したマスク画像データを領域マスク画像データとして設定する。次にＳ２７２８に進みＣＰＵ３０２は、文書領域管理テーブル１２０７から、発見した領域データ、ここでは１０２１と１１２１とを削除する。このようにして、文書領域管理テーブルには、図２８の２８０４で示すように、２つの原稿領域が１つの原稿領域として登録される。二値画像データ２８０２では、差分連続領域は２８１１の１つだけであるため、これで原稿領域の合体検出処理を終了する。
【０１３８】
次に図２６のＳ２６０２に進む。この処理は原稿領域の分割検出処理であり、図２７（Ｃ）のフローチャートで説明する。
【０１３９】
図２７（Ｃ）は、図２６のＳ２６０２の原稿領域の分割検出処理を説明するフローチャートである。
【０１４０】
Ｓ２７４１では、文書領域管理テーブル１２０７から領域データ１０２１を選択する。次にＳ２７４２に進み、ＣＰＵ３０２は、領域データ１０２１の原稿領域１２１１と重複する差分連続領域を検索し、ここでは領域２８１１を発見する。次にＳ２７４３に進みＣＰＵ３０２は、領域が重複する差分連続領域が２つ以上かを判定し、ここでは１つなのでＳ２７４８へ進む。Ｓ２７４８からはＳ２７４１へ戻り、次の領域データ１１２１についても同様の判定を行う。ここでも、重複する差分連続領域は、領域２８１１の１つだけであるため、Ｓ２７４３の判定がＮＯとなり、原稿領域の分割検出処理を終了し、文書領域の分割は検出されない。
【０１４１】
以上のようにして、原稿領域検出部４１０は、静止画像データ２８０１を受信して原稿領域の合体を検出し、その結果、図２８に示す文書領域管理テーブル２８０４を生成する。
【０１４２】
次に、図２８の静止画データ２８０１の状態から、２つの領域に跨った原稿２８３１が取り除かれた場合の処理について説明する。このとき、原稿領域検出部４１０が受信する静止画データは、図２９の静止画データ２９０１のようになる。図７のＳ７０３では二値画像データ２９０２を生成し、Ｓ７０４では差分連続領域として領域２９１１と領域２９１２の２つを発見する。
【０１４３】
図７のＳ７０５の新規原稿の載置検出処理では、領域２９１１、領域２９１２ともに領域データ２８２１との重複を検出するため、新規原稿が載置されたとは検出されない。
【０１４４】
またＳ７０６の載置原稿の更新検出処理では、Ｓ８１１で、まず領域２９１１を選択して二値画像データ２９０３を生成する。そしてＳ８１２では、文書領域管理テーブル２８０４から、領域データ２８２１の１つを重複する文書領域として発見する。Ｓ２７０２では、領域データ２８２１に対して領域が重複する差分連続領域を検索する。領域２９１１と領域２９１２はともに領域２８１１に含まれる領域のため、ここでは領域２９１１と領域２９１２の２つの領域を発見する。そしてＳ２７０３に進み、Ｓ２７０２で発見した差分連続領域が１つかどうか判定する。ここでは２つであるためＮＯと判定してＳ８１７からＳ８１１へ戻り、領域２９１２を選択する。この領域２９１２も同様に、Ｓ８１２で領域データ２８２１の１つを発見し、Ｓ２７０２では領域２９１１と領域２９１２の２つを発見する。そのためＳ２７０３の判定はＮＯとなり、載置原稿の更新検出処理は、検出されないまま終了する。
【０１４５】
このように、図２７（Ａ）の載置原稿の更新検出処理は、重複する差分連続領域と原稿領域とが１対１である場合に検出を行う一方、領域が分割された場合はこの例のように１つの領域に対して重複する差分領域が複数となるため、更新とは検出しない。
【０１４６】
次にＳ２６０１の原稿領域の合体検出処理では、領域２９１１と領域２９１２のいずれも重複する領域データは、領域データ２８２１の１つであるため、Ｓ２７２３の判定がＮＯとなり、原稿領域の合体は検出しない。
【０１４７】
次に、Ｓ２６０２の原稿領域分割検出処理が開始されると、Ｓ２７４１で文書領域管理テーブル２８０４から領域データ２８２１を選択する。次にＳ２７４２に進みＣＰＵ３０２は、領域データ２８２１の文書領域マスク画像データ２８０３と二値画像データ２９０２とを用いて、領域が重複する差分連続領域を検索する。ここでは、領域２９１１と領域２９１２の２つを発見する。次にＳ２７４３に進みＣＰＵ３０２は、発見した差分連続領域が２つ以上あるかを判定する。ここでは２つ発見したため判定結果がＹＥＳとなってＳ２７４４へ進む。Ｓ２７４４でＣＰＵ３０２は、その発見した差分連続領域と同じ個数の新規領域ＩＤを割り当てる。次にＳ２７４５に進みＣＰＵ３０２は、新規原稿の状態を「分割」に設定する。そしてＳ２７４６に進みＣＰＵ３０２は、割り当てた新規領域それぞれに領域マスク画像データとして差分連続領域を割り当てる。ここでは、領域２９１１を含む二値画像データ２９０３と、領域２９１２を含む二値画像データ２９０４を割り当てることになる。そしてＳ２７４７に進みＣＰＵ３０２は、選択中の領域データ２８２１は分割されたことになるため文書領域管理テーブルから削除する。このようにして、分割された領域データ２９２１，２９２２を含む文書領域管理テーブル２９０５を生成し、領域分割の検出処理を終了する。
【０１４８】
以上説明したように実施形態３に係る原稿領域検出部４１０は、原稿の載置時に原稿領域の合体を検知したり、原稿の除去時に原稿領域の分割を検知できる。また生成した文書領域管理テーブル２８０４や文書領域管理テーブル２９０５を、Ｓ７１０で画像認識部４０８へ通知することにより、画像認識部４０８はそれぞれに対応した処理を行うことができる。
【０１４９】
実施形態３の画像認識部４０８の処理を、図３０のフローチャートを用いて説明する。図３０のフローチャートの処理は、図１４のフローチャートに、文書領域状態が「合体」と「分割」の場合の処理を付加したものである。そこで、その場合についてのみ説明を行う。
【０１５０】
図３０は、実施形態３に係る画像認識部４０８の処理を説明するフローチャートである。尚、前述の図１４のフローチャートと共通するステップには同じ番号を付して、その説明を省略する。
【０１５１】
図２８の文書領域管理テーブル２８０４のように、領域状態が「合体」の領域データを受信すると、Ｓ３００１の判定がＹＥＳとなる。Ｓ３００２では、文書領域状態が「更新」であった場合のＳ７１０と同じように、最新の静止画データと１つ前の静止画データを、領域マスク画像でマスクする。そして、それらの画像データを基に、Ｓ３００３の合体画像抽出処理を行う。ここで、Ｓ３００３は図１５（Ｂ）で説明した２ページ目以降の画像抽出処理と同じ処理であり、載置された原稿画像の抽出を行う。図２８の静止画データ２８０１の処理の場合は、原稿２８３１の画像の抽出を行う。但し、図１５（Ｂ）のＳ１５１３で保存する画像属性は、図３１の画像属性３１０１のようになる。画像属性３１０１に含まれる文書属性は「合体」とし、領域マスク画像は、領域２８１１を含む二値画像２８０３とする。
【０１５２】
図２９の文書領域管理テーブル２９０５のように、領域状態が「分割」の領域データを受信した場合は、Ｓ３００４からＳ３００５へ進み、画像変換部４０９へ分割を通知する。ここで通知する画像属性は、図３１の３１０２のように文書属性のみが含まれるものとなり、原稿状態は「分割」とする。
【０１５３】
図３２は、実施形態３に係る画像変換部４０９の処理を説明するフローチャートである。この図３２のフローチャートの処理は、図２０のフローチャートに、文書領域状態が「合体」と「分割」の場合の処理を付加したものである。そこで、その場合についてのみ説明を行う。
【０１５４】
図３１の画像属性３１０１のように、原稿状態が「合体」の画像属性を受信すると、Ｓ３２０１からＳ３２０２へ進み、図２１（Ａ）で説明した新規文書の作成開始処理を行う。Ｓ３２０３では、受信した画像データに対して、図２１（Ｂ）で説明した画像補正・保存処理を行う。そしてＳ３２０４に進み、蓄積した画像データを、領域が合体した文書に合わせて合体するため、ページごとの所属文書検索・移動処理を行う。
【０１５５】
図３３は、図３２のＳ３２０４の処理を説明するフローチャートである。
【０１５６】
ページごとの所属文書検索・移動処理が開始すると、図２２（Ｇ）のように保存されている画像データを１つ選択する。Ｓ３３０２では、選択した画像データを画像認識部４０７で抽出したときのマスク画像データを読み出す。Ｓ３３０３では、抽出時のマスク画像データと、画像認識部４０７から受信した文書属性の領域マスク画像データとを比較し、重複した領域があるかどうかを調べる。Ｓ３３０４では重複領域があったかどうかを判定し、重複領域があればＳ３３０５へ進み、新規作成した文書に対応する保存ディレクトリへ、画像データと属性を移動する。一方、Ｓ３３０４の判定がＮＯであればＳ３３０５の処理は行わない。Ｓ３３０６では未処理のページがあるかどうかを判定し、あればＳ３３０１へ戻って次のページの処理を続行する。Ｓ３３０６がＮＯとなり、全てのページの処理が終わればページごとの所属文書検索・移動処理を終了する。
【０１５７】
図２８の例では、領域２８１１を含む文書領域マスク画像データ２８０３を受信するため、領域２８１１に含まれる領域１２１１と領域１２１２にあった画像に対応するページデータを全て合体後の文書に移動することになる。
【０１５８】
以上で、画像変換部４０９は、原稿状態が「合体」の画像属性を受信したときの処理を終了する。
【０１５９】
画像変換部４０９が図３１の画像属性３１０２のように状態が「分割」の画像属性を受信すると、Ｓ３２０５の判定がＹＥＳとなってＳ３２０６へ進む。Ｓ３２０６は図２１（Ａ）で説明した新規文書の作成開始処理である。Ｓ３２０７では、Ｓ３２０４では蓄積した画像データを、領域が分割した文書に振り分けるため、ページごとの所属文書検索・移動処理を行う。
【０１６０】
図２９の例では、二値画像データ２９０３を領域マスク画像データとする分割通知と、二値画像データ２９０４を領域マスク画像データとする分割通知の２つを、画像変換部４０９は受信する。そこで、ページごとの所属文書検索・移動処理により、領域２８１１に含まれていた画像データに対応するページを、領域２９１１と領域２９１２を含む２つの新規文書に振り分けることになる。
【０１６１】
このようにして、原稿領域検出部４１０で文書領域の合体／分割を検出した場合に、画像変換部４０９は合体／分割後の保存ディレクトリにページデータを移動することにより、合体／分割に対応した文書データ管理を行うことができる。
【０１６２】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014220774.tif 000003
【図２】
2014220774.tif 000004
【図３】
2014220774.tif 000005
【図４】
2014220774.tif 000006
【図５】
2014220774.tif 000007
【図６】
2014220774.tif 000008
【図７】
2014220774.tif 000009
【図８】
2014220774.tif 000010
【図９】
2014220774.tif 000011
【図１０】
2014220774.tif 000012
【図１１】
2014220774.tif 000013
【図１２】
2014220774.tif 000014
【図１３】
2014220774.tif 000015
【図１４】
2014220774.tif 000016
【図１５】
2014220774.tif 000017
【図１６】
2014220774.tif 000018
【図１７】
2014220774.tif 000019
【図１８】
2014220774.tif 000020
【図１９】
2014220774.tif 000021
【図２０】
2014220774.tif 000022
【図２１】
2014220774.tif 000023
【図２２】
2014220774.tif 000024
【図２３】
2014220774.tif 000025
【図２４】
2014220774.tif 000026
【図２５】
2014220774.tif 000027
【図２６】
2014220774.tif 000028
【図２７】
2014220774.tif 000029
【図２８】
2014220774.tif 000030
【図２９】
2014220774.tif 000031
【図３０】
2014220774.tif 000032
【図３１】
2014220774.tif 000033
【図３２】
2014220774.tif 000034
【図３３】
2014220774.tif 000035