(57)【要約】【課題】片面及び／または両面原稿をスキャンする場合に、事前の設定を行うことなく片面原稿または両面原稿のどちらかを自動で判定できる画像処理装置を提供する。【解決手段】本発明の画像処理装置は、原稿を撮像することによって画像データを取得する取得手段と、撮像装置によって読み取られる領域に対する原稿の位置情報を検出する検出手段と、前記検出手段で検出した位置情報に基づき、前記取得手段で取得した画像データが前記原稿の裏面であるかを判定する判定手段とを備える。【選択図】図１１
2014121048.tif 000002
【特許請求の範囲】
【請求項１】
原稿を撮像することによって画像データを取得する取得手段と、
撮像装置によって読み取られる領域に対する原稿の位置情報を検出する検出手段と、
前記検出手段で検出した位置情報に基づき、前記取得手段で取得した画像データが前記原稿の裏面であるかを判定する判定手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記位置情報は、前記読み取られる領域内における原稿の静止及び前記読み取られる領域からの原稿のフレームアウトを含み、
前記取得手段は、原稿の静止を検出したタイミングに基づき前記原稿を撮像して前記画像データを取得し、
前記判定手段は、原稿のフレームアウトを検出した後に原稿の静止を検出した場合に、新たな原稿の表面として判定し、原稿のフレームアウトを検出せずに原稿の静止を検出した場合に、前記原稿の裏面と判定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記位置情報は、前記読み取られる領域内における原稿の静止及び前記読み取られる領域への原稿のフレームインを含み、
前記取得手段は、原稿の静止を検出したタイミングに基づき前記原稿を撮像して前記画像データを取得し、
前記判定手段は、原稿のフレームインを検出した後に原稿の静止を検出した場合に、新たな原稿の表面として判定し、原稿のフレームインを検出せずに原稿の静止を検出した場合に、前記原稿の裏面と判定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記位置情報は、前記読み取られる領域内における原稿の静止及び前記読み取られる領域からの原稿の除去を含み、
前記取得手段は、原稿の静止を検出したタイミングに基づき前記原稿を撮像して前記画像データを取得し、
前記判定手段は、原稿の除去を検出した後に原稿の静止を検出した場合に、新たな原稿の表面として判定し、原稿の除去を検出せずに原稿の静止を検出した場合に、前記原稿の裏面と判定することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記判定手段は、判定の結果に基づき、前記取得手段で取得した原稿の画像データに対して両面対応付け処理を行うことを特徴とする請求項２から４のいずれかに記載の画像処理装置。
【請求項６】
前記両面対応付けされた原稿の画像データから所定のデータ出力形式で出力ファイルを作成する作成手段をさらに備えることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記作成手段における前記所定のデータ出力形式は、両面対応付けされた原稿を連結して出力する形式、及び原稿ごとの個別ファイルで出力する形式のうち少なくとも一つを含むことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記作成手段は、前記取得手段で取得した原稿の画像データが白紙であるかを判定し、白紙でない場合に前記原稿の画像データを出力ファイルとして作成し、白紙である場合に前記原稿の画像データを削除することを特徴とする請求項６に記載の画像処理装置。
【請求項９】
前記判定手段は、前記取得手段で取得した原稿の画像データが直前に検出された原稿の画像データと同一原稿であるかを判定し、前記作成手段は、同一原稿でない場合に前記原稿の画像データを出力ファイルとして作成し、同一原稿である場合に前記原稿の画像データを削除することを特徴とする請求項６に記載の画像処理装置。
【請求項１０】
原稿を撮像することによって画像データを取得する取得ステップと、
撮像装置によって読み取られる領域に対する原稿の位置情報を検出する検出ステップと、
前記検出ステップで検出した位置情報に基づき、前記取得ステップで取得した画像データが両面原稿の裏面であるかを判定する判定ステップと
を備えることを特徴とする画像処理方法。
【請求項１１】
コンピュータを請求項１から９のいずれかに記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像データを処理する画像処理装置、方法およびプログラムに関する。
【背景技術】
【０００２】
従来のフラットベッドスキャナ付き複合機で複数枚原稿のスキャンを行う際に、原稿を１枚ずつ読み込みスタートさせる必要がある。すなわち、原稿を１枚ずつ原稿ガラス台（フラットベッド）にセットし、また、セット前後に原稿台カバーを開けたり、閉じたり、読み込みスタートボタンを押下する必要がある。
【０００３】
ＡＤＦ（オートドキュメントフィーダ）付き複合機で複数枚原稿をスキャンする場合には、ＡＤＦにまとめて原稿をセットし、読み取り開始ボタンを押下するだけで済む。よって、上記のような煩雑な手順を省くことができる。しかしながら、両面原稿をスキャンする際には、事前に両面原稿であることと原稿綴じ方向を指定する必要がある。片面原稿と両面原稿が混載されている場合には、原稿ごとに設定を変更するか、どちらの原稿に対しても常に両面で原稿の読み取りを行い、白紙であれば処理をスキップ（片面原稿として処理）することが必要となる。
【０００４】
一方、近年、原稿の画像データを読み取る装置として、原稿台に載置した原稿をカメラで撮像して、カメラで撮像した原稿の画像データを処理して記憶するカメラスキャナも知られている（例えば、特許文献１参照）。特許文献１のカメラスキャナでは、新たに撮像した画像が前回撮像した時の画像と比較してどれぐらい変化したかを示す画像変化量に基づいて画像の動き検出処理を行う。動き検出処理によって、原稿台上の原稿が載置されて静止したタイミングを検出する。検出されたタイミングで撮像した画像データ中から原稿部分を認識・抽出し、射影補正、拡大縮小等の画像処理を施して記憶装置に原稿の画像データとして蓄積し、プロジェクタに投影する。
【０００５】
特許文献１のカメラスキャナは、従来のＡＤＦ付き複合機と同様、フラットベッドスキャナ付き複合機のようなカバー開閉といった手順が省ける。また、動き検出処理により原稿の撮像タイミングを検出することによって、読み込みスタートボタンを押下する手順が省ける。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１１５３３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来の複合機を利用して上述のように両面原稿を読み取る際には、事前に両面読み取り設定と綴じ方向の指定を行う必要があり、設定操作に手間が必要であった。また、片面原稿と両面原稿が混載された時は、常に両面読み取りを行い、裏面が白紙であるかどうかを判定することで片面原稿と判定する必要があった。
【０００８】
特許文献１のカメラスキャナにおいては、原稿台に置かれた原稿を抽出するだけであるため、片面原稿と両面原稿を区別なく保存されていた。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の画像処理装置は、原稿を撮像することによって画像データを取得する取得手段と、撮像装置によって読み取られる領域に対する原稿の位置情報を検出する検出手段と、前記検出手段で検出した位置情報に基づき、前記取得手段で取得した画像データが両面原稿の裏面であるかを判定する判定手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ユーザは読み取りスタートボタンの押下、両面読み取り設定、読み取り方向設定といった操作を行う必要がなくなり、大幅な手間の削減というメリットを享受可能となる。
【図面の簡単な説明】
【００１１】
【図１】カメラスキャナ１０１が含まれるネットワーク構成の一例を示す図である。
【図２】カメラスキャナ１０１の構成の一例を示す図である。
【図３】コントローラ部２０１のハードウェア構成の一例を示す図である。
【図４】カメラスキャナ１０１の制御用プログラムの機能構成の一例を示す図である。
【図５】原稿をスキャンする際の操作手順の一例を示す図である。
【図６】第１の実施形態におけるカメラスキャナ１０１の処理フローの一例を示す図である。
【図７】撮像処理部４０６が撮像する読み取り領域２０５の画像の一例を示す図である。
【図８】フレームインまたはフレームアウト検出方法について説明する図面である。
【図９】第１の実施形態における原稿画像データ抽出処理フローの一例を示す図である。
【図１０】データ管理部４０５が保存する静止画像の模式図である。
【図１１】第１の実施形態における両面原稿判定処理フローの一例を示す図である。
【図１２】データ管理部４０５が保存する原稿画像データの模式図である。
【図１３】出力ファイル作成部４０９が生成する出力ファイルの一例を示す図である。
【図１４】出力ファイル生成処理フローの一例を示す図である。
【図１５】第２の実施形態における操作手順の一例を示す図である。
【図１６】第２の実施形態における両面原稿判定処理フローの一例を示す図である。
【図１７】第３の実施形態における操作手順の一例を示す図である。
【図１８】第３の実施形態における両面原稿判定処理フローの一例を示す図である。
【図１９】第４の実施形態における操作手順の一例を示す図である。
【図２０】第４の実施形態における両面原稿判定処理フローの一例を示す図である。
【図２１】第６の実施形態におけるカメラスキャナ１０１の処理フローの一例である。
【図２２】第６の実施形態における原稿画像データ抽出処理フローの一例を示す図である。
【図２３】第６の実施形態における両面原稿判定処理フローの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための最良の形態について図面を参照して説明する。
【００１３】
［第１の実施形態］
＜ネットワーク構成＞
図１は、一実施形態に係るカメラスキャナ１０１が含まれるネットワーク構成を示す図である。
【００１４】
図１に示すように、カメラスキャナ１０１はイーサネット（登録商標）等のネットワーク１０４にてホストコンピュータ１０２およびプリンタ１０３に接続されている。図１のネットワーク構成において、ホストコンピュータ１０２からの指示により、カメラスキャナ１０１から画像を読み取るスキャン機能や、スキャンデータをプリンタ１０３により出力するプリント機能の実行が可能である。また、ホストコンピュータ１０２を介さず、カメラスキャナ１０１への直接の指示により、スキャン機能、プリント機能の実行も可能である。
【００１５】
＜外観図＞
図２は、一実施形態に係るカメラスキャナ１０１の構成例を示す図である。
【００１６】
図２に示すように、カメラスキャナ１０１は、コントローラ部２０１、カメラ部２０２、腕部２０３を含む。カメラスキャナの本体であるコントローラ部２０１と、撮像を行うためのカメラ部２０２は、腕部２０３により連結されている。腕部２０３は関節を用いて自由に曲げ伸ばしが可能である。
【００１７】
図２には、カメラスキャナ１０１が設置されている書画台２０４も示している。カメラ部２０２のレンズは書画台２０４方向に向けられており、破線で囲まれた読み取り領域２０５内の画像を読み取り可能である。図２の例では、原稿２０６は読み取り領域２０５内に置かれているので、カメラスキャナ１０１で読み取り可能となっている。
【００１８】
なお、カメラスキャナ１０１は、書画台等に、操作を補助する画像の投影を行う短焦点プロジェクタ２０７をさらに含むことができる。また、図２に示されていないが、カメラスキャナ１０１は、ＬＣＤタッチパネル３３０およびスピーカ３４０をさらに含むこともできる。
【００１９】
＜カメラスキャナのコントローラのハードウェア構成＞
図３は、カメラスキャナ１０１の本体であるコントローラ部２０１のハードウェア構成例を示す図である。
【００２０】
図３に示すように、コントローラ部２０１は、システムバス３０１に接続されたＣＰＵ３０２、ＲＡＭ３０３、ＲＯＭ３０４、ＨＤＤ３０５、ネットワークＩ／Ｆ３０６、画像処理プロセッサ３０７およびカメラＩ／Ｆ３０８を含む。
【００２１】
ＣＰＵ３０２はコントローラ部２０１全体の動作を制御する中央演算装置である。ＲＡＭ３０３は揮発性メモリである。ＲＯＭ３０４は不揮発性メモリであり、ＣＰＵ３０２の起動用プログラムが格納されている。ＨＤＤ３０５はＲＡＭ３０３と比較して大容量なハードディスクドライブ（ＨＤＤ）である。ＨＤＤ３０５にはコントローラ部２０１が実行する、カメラスキャナ１０１の制御用プログラムが格納されている。
【００２２】
ＣＰＵ３０２は電源ＯＮ等の起動時、ＲＯＭ３０４に格納されている起動用プログラムを実行する。この起動用プログラムは、ＨＤＤ３０５に格納されている本実施形態のカメラスキャナ１０１の制御用プログラムを読み出し、ＲＡＭ３０３上に展開するためのものである。ＣＰＵ３０２は起動用プログラムを実行すると、続けてＲＡＭ３０３上に展開した制御用プログラムを実行し、制御を行う。また、ＣＰＵ３０２は制御用プログラムによる動作に用いるデータもＲＡＭ３０３上に格納して読み書きを行う。ＨＤＤ３０５上にはさらに、制御用プログラムによる動作に必要な各種設定や、また、カメラ入力によって生成した画像データを格納することができ、ＣＰＵ３０２によって読み書きされる。ＣＰＵ３０２はネットワークＩ／Ｆ３０６を介してネットワーク１０４上の他の機器との通信を行う。
【００２３】
画像処理プロセッサ３０７はＲＡＭ３０３やＨＤＤ３０５に格納された画像データを読み出して処理し、またＲＡＭ３０３やＨＤＤ３０５へ書き戻す。なお、画像処理プロセッサ３０７が実行する画像処理は、回転、変倍、色変換等である。
【００２４】
カメラＩ／Ｆ３０８はカメラ部２０２と接続され、ＣＰＵ３０２からの指示に応じてカメラ部２０２から画像データを取得してＲＡＭ３０３へ書き込む。また、ＣＰＵ３０２からの制御コマンドをカメラ部２０２へ送信し、カメラ部２０２の設定を行う。
【００２５】
また、コントローラ部２０１は、ディスプレイコントローラ３０９、シリアルＩ／Ｆ３１０、オーディオコントローラ３１１およびＵＳＢコントローラ３１２のうち少なくとも１つをさらに含むことができる。
【００２６】
ディスプレイコントローラ３０９はＣＰＵ３０２の指示に応じてディスプレイへの画像データの表示を制御する。ここでは、ディスプレイコントローラ３０９は短焦点プロジェクタ２０７およびＬＣＤタッチパネル３３０に接続されている。
【００２７】
シリアルＩ／Ｆ３１０はシリアル信号の入出力を行う。ここでは、シリアルＩ／Ｆ３１０はＬＣＤタッチパネル３３０に接続され、ＣＰＵ３０２はＬＣＤタッチパネル３３０が押下されたときに、シリアルＩ／Ｆ３１０を介して押下された座標を取得する。
【００２８】
オーディオコントローラ３１１はスピーカ３４０に接続され、ＣＰＵ３０２の指示に応じて音声データをアナログ音声信号に変換し、スピーカ３４０を通じて音声を出力する。
【００２９】
ＵＳＢコントローラ３１２はＣＰＵ３０２の指示に応じて外付けのＵＳＢデバイスの制御を行う。ここでは、ＵＳＢコントローラ３１２はＵＳＢメモリやＳＤカードなどの外部メモリ３５０に接続され、外部メモリへのデータの読み書きを行う。
【００３０】
＜カメラスキャナの制御用プログラムの機能構成＞
図４は、ＣＰＵ３０２が実行するカメラスキャナ１０１の制御用プログラムの機能構成４０１を示す図である。
【００３１】
カメラスキャナ１０１の制御用プログラムは前述のようにＨＤＤ３０５に格納され、ＣＰＵ３０２が起動時にＲＡＭ３０３上に展開して実行する。カメラスキャナ１０１の制御用プログラムの機能構成４０１は、メイン制御部４０２、操作表示部４０３、ネットワーク通信部４０４、データ管理部４０５、撮像処理部４０６、画像認識部４０７、両面原稿判定部４０８および出力ファイル作成部４０９を備える。また、撮像処理部４０６はタイミング検出部４１０を、画像認識部４０７は原稿画像データ抽出部４１１をそれぞれ含む。
【００３２】
メイン制御部４０２は制御の中心であり、機能構成４０１内の他の各部を制御する。
【００３３】
操作表示部４０３は、メイン制御部４０２からの描画要求を受け、ディスプレイコントローラ３０９を介して、短焦点プロジェクタ２０７もしくはＬＣＤタッチパネル３３０へ描画を実行する。また、操作表示部４０３は、ＬＣＤタッチパネル３３０が押下されたときにシリアルＩ／Ｆ３１０を介して押下座標を受信し、描画中の操作画面の内容と押下座標を対応させて操作内容（押下されたボタン等）を判定する。この押下内容をメイン制御部４０２へ通知することにより、操作者の操作を受け付ける。
【００３４】
ネットワーク通信部４０４は、ネットワークＩ／Ｆ３０６を介して、ネットワーク１０４上の他の機器とＴＣＰ／ＩＰによる通信を行う。
【００３５】
データ管理部４０５は、制御用プログラムの実行において生成した作業データ、例えば後述の原稿画像データ抽出部４１１で抽出した原稿画像データ、文書属性・画像属性情報をＨＤＤ３０５上やＲＡＭ３０３上の所定の領域へ保存し、管理する。
【００３６】
撮像処理部４０６は、カメラＩ／Ｆ３０８を介してカメラ部２０２を制御し、撮像処理部４０６のタイミング検出部４１０で検出されたタイミングで撮像したカメラ画像を画像認識部４０７へ送信する。
【００３７】
撮像処理部４０６のタイミング検出部４１０は、原稿がフレームインしたタイミング、静止したタイミング、およびフレームアウトするタイミングを検出する。これらのタイミングは、カメラ部２０２から受信したカメラ画像に基づいて検出することができる。ここで、フレームアウトタイミングは、原稿が読み取り領域からフレームアウトする直前のタイミングもしくはフレームアウトし始めるタイミング、またはその間の任意のタイミングとしてもよい。
【００３８】
画像認識部４０７は、撮像処理部４０６からカメラ画像を受信し、受信したカメラ画像の内容を認識する。図４に示すように、画像認識部４０７は、原稿画像データ抽出部４１１を含む。
【００３９】
画像認識部４０７の原稿画像データ抽出部４１１は、タイミング検出部４１０が検出した静止タイミングで撮像され送信されてきたカメラ画像から、原稿画像データを抽出する。抽出した原稿画像データは、データ管理部４０５によってＨＤＤ３０５上の所定の領域へ保存され、管理される。
【００４０】
両面原稿判定部４０８は、タイミング検出部４１０で検出されたタイミング情報と、原稿画像データ抽出部４１１によって抽出された原稿画像データを基に、カメラ画像が新たな原稿の表面なのか、両面原稿の裏面なのかを判定する。また、両面原稿の場合に、両面原稿判定部４０８は、受信した原稿画像データに対して両面対応付け処理を行う。
【００４１】
出力ファイル作成部４０９は、データ管理部４０５が保存した原稿画像データを変換し適切な画像に整えたうえで、所定のデータ出力形式で出力ファイルを作成する。
【００４２】
図５は本実施形態における原稿操作の一例を示す図である。原稿の表面のみをスキャンする際の操作手順を図５（ａ）から（ｅ）に示す。原稿の表面に続いて裏面をスキャンする際の操作手順を図５（ｆ）から（ｊ）に示す。
【００４３】
図６は本実施形態におけるカメラスキャナ１０１の処理フローの一例を示す図である。
【００４４】
図６（ａ）は、初期化設定フローを示している。撮像処理部４０６がスタートすると、図６（ａ）で示すように読み取り領域の位置情報を取得する初期化設定を行う。
【００４５】
図６（ａ）のステップＳ６０１において、撮像処理部４０６は、背景画像として、図５（ａ）に示すような原稿５０１が投入されていない状態の読み取り領域２０５の画像をカメラ部２０２に撮像させる。
【００４６】
読み取り領域２０５は矩形であるが、カメラ部２０２は厳密には読み取り領域２０５の真上にあるわけではないため、ステップＳ６０１で撮像された読み取り領域の画像は図７（ａ）に示した画像７０１のように形状が歪んでいる。
【００４７】
ステップＳ６０２において、撮像処理部４０６は、撮像された読み取り領域の画像７０１を矩形に変換する射影変換のパラメータを算出する。
【００４８】
ステップＳ６０３において、撮像処理部４０６は、ステップＳ６０２で算出した射影変換パラメータを使用してステップＳ６０１で撮像した読み取り領域の画像７０１を、図７（ｂ）に示した読み取り領域背景画像７０２のように矩形に補正する。
【００４９】
ステップＳ６０４において、撮像処理部４０６は、補正された読み取り領域背景画像７０２を、データ管理部４０５を介してＨＤＤ３０５へ保存する。図１０（ａ）に、読み取り領域背景画像７０２を保存した時の模式図を示す。データ管理部４０５は、ＨＤＤ３０５上に空のディレクトリ（図１０（ａ）中の「／ＩＭＧＤＩＲ」）を作成し、読み取り領域背景画像としてデータ１００１を保存する。
【００５０】
ステップＳ６０５において、撮像処理部４０６は、状態管理フラグを初期化する。状態管理フラグは、フレームインを検出したかを示すフレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）と、フレームアウトを検出したかを示すフレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）を含む。こられの状態管理フラグは、カメラ画像が新たな原稿の表面または両面原稿の裏面のどちらであるかを判定するために用いられる。ここでは状態管理フラグの初期化として、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）をｆａｌｓｅに、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）をｔｒｕｅにそれぞれ設定する。
【００５１】
例として、図５の原稿操作手順に応じて、図６（ａ）及び後述の図６（ｂ）のフローで設定された状態管理フラグの値を表１に示す。
【００５２】
【表１】
2014121048.tif 000003
【００５３】
表１における手順番号（ａ）の行は、図５（ａ）のタイミングにおける状態管理フラグ、すなわち、スキャン開始前の初期化処理で設定された状態管理フラグを示す。表１における手順番号（ｂ）〜（ｊ）の行は、それぞれ図５（ｂ）〜５（ｊ）のタイミングで撮影されたカメラ画像が取り込まれた場合に図６（ｂ）の処理フローによって設定された状態管理フラグを示す。
【００５４】
次に、図６（ｂ）の処理フローを説明する。初期化処理が終了すると、撮像処理部４０６が図６（ｂ）に示す処理フローを実行する。すなわち、撮像処理部４０６はカメラ部２０２から受信したカメラ画像に基づき、読み取り領域に対する原稿の位置情報を検出する。ここで、原稿の位置情報は、読み取り領域からの原稿のフレームアウト、読み取り領域への原稿のフレームイン、及び読み取り領域内における原稿の静止を含む。そして、撮像処理部４０６は検出したそれぞれの位置情報に応じてそれぞれの処理を行う。
【００５５】
図６（ｂ）のステップＳ６１０において、撮像処理部４０６は、カメラ部２０２から読み取り領域２０５を撮像したカメラ画像を受信する。ここで、カメラ部２０２は、所定のフレームレートで読み取り領域２０５を撮像し、撮像したカメラ画像を１フレームずつ撮像処理部４０６へ送信することができる。
【００５６】
ステップＳ６１１において、撮像処理部４０６のタイミング検出部４１０は、カメラ部２０２から受信したカメラ画像に基づいて、原稿のフレームインまたはフレームアウトのタイミングを検出する。フレームインあるいはフレームアウトのタイミングが検出された場合はステップＳ６１２へ進み、検出されなかった場合にはステップＳ６１３へ進む。
【００５７】
図８にフレームインまたはフレームアウト検出の検出方法の一例を示す。図８（ａ）は原稿の置かれる前の書画台２０４の様子であり、図８（ｃ）は読み取り領域２０５を撮像して得られた背景画像である。また、図８（ｂ）は原稿２０６が読み取り領域２０５からフレームインまたはフレームアウトする直前の書画台２０４の様子であり、矢印はフレームアウトの場合の移動方向を示している。図８（ｄ）はフレームインまたはフレームアウト直前のタイミングで撮像された読み取り領域２０５のカメラ画像である。画像認識部４０７のタイミング検出部４１０は、この２枚の撮像画像より図８（ｅ）に示す差分画像を作成する。差分画像の黒画素領域８０１は変化のなかった部分、白画素領域８０２はフレームインまたはフレームアウトしていく原稿２０６の端部を表している。このカメラ画像と背景画像との差分量である白画素領域８０２の画素数を基に、フレームインまたはフレームアウトのタイミングを検出する。
【００５８】
なお、フレームインまたはフレームアウトのどちらの状態であるかは、今回の差分量と直前に算出された差分量とを比較することで判定できる。すなわち、今回の差分量が直前の差分量よりも増加している場合にはフレームインの過程、減少している場合にはフレームアウトの過程であると判定することができる。そして、フレームインの過程において、差分量が所定の割合以上となったタイミングをフレームインとして検出する。同様にフレームアウトの過程において、差分量が所定の割合以下となったタイミングをフレームアウトとして検出すればよい。なお、原稿を素早く抜き取ったことで、カメラ画像に原稿端部が映らなかった場合（例えば図５（ｃ）の次に図５（ｅ）が撮像された場合）に関しても、差分量が減少し、差分量（ここでは０）が所定値以下となることから、フレームアウトを検出できる。以上のように、背景画像とカメラ画像との差分量及び差分量の変化を算出することで、フレームインまたはフレームアウトのタイミングを検出できる。
【００５９】
ステップＳ６１２において、タイミング検出部４１０は、ステップＳ６１１でフレームインまたはフレームアウトが検出されたことを受け、状態管理フラグを更新する。具体的には、ステップＳ６１１でフレームインが検出された場合に、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）をｔｒｕｅに設定し、フレームアウトが検出された場合に、フレームアウト状態（ｉｓＦｒａｍｅＯｕｔ）をｔｒｕｅに設定する。
【００６０】
ここでは、ステップＳ６１０において図５（ｂ）のタイミングで撮像したカメラ画像が取り込まれた場合、タイミング検出部４１０は、ステップＳ６１１においてフレームインを検出する。そして、ステップＳ６１２においてフレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）をｔｒｕｅに設定する。なお、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）はｔｒｕｅのままにされる。これは、表１における手順番号（ｂ）の行に示される。
【００６１】
ステップＳ６１９において、メイン制御部４０２は、全原稿のスキャンが終了したかを判定する。スキャン終了判定は、ネットワークＩ／Ｆ３０６を介してホストコンピュータ１０２から送信されるスキャン終了命令や、ＬＣＤタッチパネル３３０から入力される終了命令、あるいはタイマー設定（図示せず）などにより行われるものとする。スキャンを終了する場合にステップＳ６２０へ進み、出力ファイル生成処理を行った後、スキャン処理を終了する。スキャンを継続する場合にステップＳ６１０へ戻り、次の原稿の検出および撮像を行う。
【００６２】
ここでは、図５（ｂ）のカメラ画像からフレームインを検出して状態管理フラグを更新した後、スキャンを継続するため、ステップＳ６１０へ戻る。撮像処理部４０６は、図５（ｂ）から図５（ｃ）に至るまでのカメラ画像を取得する。この間では、フレームインまたはフレームアウトを検出しないため、ステップＳ６１３へ進む。
【００６３】
ステップＳ６１３において、タイミング検出部４１０は、所定時間内で変化がないことを検出する。具体的には、新たに撮像したカメラ画像が、前回撮像した時のカメラ画像と比較して、どれくらい変化したかを示す画像変化量が、所定の割合以下となる場合、変化がないと判定する。また、連続して変化がない時間が所定時間以上になるか否かを判定する。この判定は、連続して変換がないと判定したカメラ画像のフレーム数をカウントし、所定のフレーム数と比較することにより行うことができる。所定時間内で連続して変化がない場合、原稿が静止あるいは原稿が除去されたと判定することができ、ステップＳ６１４へ進む。一方、所定時間内で変化がある場合には、読み取り領域２０５上で原稿を移動しているなどの状況であると判定することができ、ステップＳ６１９へ進む。
【００６４】
ここでは、図５（ｂ）〜図５（ｃ）の間では原稿を動かしている状態が続いているため、ステップＳ６１９へ進み、静止状態を検出するまでステップＳ６１０からステップＳ６１３までの処理を繰り返す。そして図５（ｃ）の状態が続いた際には、変化がなくなったと判定され、ステップＳ６１４へ進む。
【００６５】
ステップＳ６１４において、撮像処理部４０６は、今回ステップＳ６１０で取り込んだカメラ画像を、ステップＳ６０２で算出した射影変換パラメータに基づいて射影変換を行う。
【００６６】
ステップＳ６１５において、タイミング検出部４１０は、ステップＳ６１４で射影変換したカメラ画像と、データ管理部４０５によって保存されている最新静止画像との差分量を算出する。なお、今回撮像処理部４０６の開始後初めてステップＳ６１４を実行した場合は、ステップＳ６０４で保存した読み取り領域背景画像との差分量を算出する。
【００６７】
ステップＳ６１６において、タイミング検出部４１０は、ステップＳ６１５で算出した差分量が所定の値（ここでの所定の値は０に近い）より大きいかどうかを判定する。これにより、今回射影変換したカメラ画像が保存されている最新静止画像と差分があるかどうかを判定する。差分がない場合は、前回の状態から変化がないため、ステップＳ６１９へ進み、処理を繰り返す。一方、保存されている最新静止画像との差分がある場合にはステップＳ６１７へ進む。
【００６８】
ステップＳ６１７において、タイミング検出部４１０は、ステップＳ６１４で射影変換したカメラ画像を静止画像とし、データ管理部４０５を介してＨＤＤ３０５へ保存する。図１０（ｂ）に、静止画像を保存した時の模式図を示す。データ管理部４０５は、読み取り領域背景画像１００１を保存したのと同じディレクトリに最新受信画像として静止画像１００２を保存する。なお、２ページ目以降の処理においては、図１０（ｃ）に示すように、前回取り込んだ静止画像１００２を直前静止画像として保存し直し、今回取り込んだ静止画像を最新静止画像１００３として保存する。なお、この段階においては、原稿の静止と除去については区別することなく画像の取り込みが行われる。
【００６９】
ステップＳ６１８において、ステップＳ６１７で保存した最新静止画像を画像認識部４０７へ送信する。そして、画像認識部４０７の原稿画像データ抽出部４１１は、この静止画像を受信すると原稿画像データ抽出処理を行う。原稿画像データ抽出処理の詳細は図９を参照して後述する。
【００７０】
そして、ステップＳ６１２において、撮像処理部４０６は、状態管理フラグを更新する。ここでは、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）をｆａｌｓｅに設定する。また、フレームアウト状態フラグについては、ステップＳ６１８の原稿画像データ抽出処理結果によって状態の更新を決定する。すなわち、原稿画像抽出が成功した場合にはフレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）をｆａｌｓｅに変更し、静止画像と読み取り領域背景画像と差分がないなどの原因で原稿画像抽出が失敗した場合には更新を行わない。図５（ｃ）の場合には、原稿画像データの抽出に成功することから、フレームイン状態フラグとフレームアウト状態フラグをともにｆａｌｓｅに設定し、ステップＳ６１９へ進み、処理を繰り返す。なお、図５（ｃ）の場合の状態管理フラグ設定は、表１における手順番号（ｃ）の行に示される。
【００７１】
さらに処理が進み、ステップＳ６１０で図５（ｄ）がカメラ画像として取得されると、ステップＳ６１１において、タイミング検出部４１０は、原稿のフレームアウトを検出し、ステップＳ６１２へ進む。
【００７２】
ステップＳ６１２において、タイミング検出部４１０は、状態管理フラグのフレームアウト状態を更新する。ここでは、フレームアウトが検出されているため、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）をｔｒｕｅに設定し、ステップＳ６１９へ進む。なお、ここでの状態管理設定は表１における手順番号（ｄ）の行に示される。
【００７３】
以後の操作に関しての詳細な説明は省略するが、一連の操作に応じてステップＳ６１２における状態管理フラグの更新を説明する。
【００７４】
図５（ｅ）の場合、原稿の静止または除去状態と判定されて、静止画像が取り込まれる。この場合、静止画像と読み取り領域背景画像と差分がないため、原稿画像抽出が失敗した。そのため、図５（ｃ）の場合と異なり、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）がｔｒｕｅに設定されるが、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）は更新せず、ｔｒｕｅのままにされる。
【００７５】
図５（ｆ）の場合、フレームインが検出され、図５（ｂ）の場合と同じ処理を受け、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）がｔｒｕｅに設定される。
【００７６】
図５（ｇ）の場合、静止画像が取り込まれ、図５（ｃ）の場合と同じ処理を受け、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）及びフレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）がｆａｌｓｅに設定される。
【００７７】
図５（ｈ）の場合、フレームインまたはフレームアウトが検出されていなかった。また、原稿の静止または除去状態も検出されていなかった。この場合、状態管理フラグを更新するステップＳ６１２の処理を受けない。すなわち、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）及びフレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）は、図５（ｇ）で設定されたｆａｌｓｅと変わらない。
【００７８】
図５（ｉ）の場合、フレーム間での変化を検出し、静止画像として再度取り込みが行われる。この場合、原稿画像抽出が成功したため、フレームイン状態フラグ（ｉｓＦｒａｍｅＩｎ）及びフレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）がｆａｌｓｅに設定される。
【００７９】
そして図５（ｊ）において、フレームアウトが検出され、図５（ｄ）の場合と同じ処理を受け、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）がｔｒｕｅに設定される。
【００８０】
図６（ｂ）の処理フローを繰り返し行うことにより、撮像処理部４０６は、前回保存した静止画像と差分がある新しい静止画像を、画像認識部４０７の原稿画像データ抽出部４１１へ送信することができる。なお、図５に示した一連の操作において、撮像処理部４０６のタイミング検出部４１０は、図５（ｃ）、（ｅ）、（ｇ）、（ｉ）のタイミングで原稿の静止または除去を検出し、それぞれの静止画像が原稿画像データ抽出部４１１へ送信することになる。
【００８１】
続いて、図９〜図１０を参照して、図６のステップＳ６１８における原稿画像データ抽出処理について詳細に説明する。図９は、画像認識部４０７の原稿画像データ抽出部４１１の処理フローを示す図である。
【００８２】
図６のステップＳ６１８において送信された射影変換された静止画像を原稿画像データ抽出部４１１が受信すると、図９に示すステップＳ９０１が実行開始される。
【００８３】
ステップＳ９０１において、原稿画像データ抽出部４１１は、読み取り領域背景画像１００１と静止画像１００２の差分画像と差分量を算出する。
【００８４】
ステップＳ９０２において、原稿画像データ抽出部４１１は、ステップＳ９０１で算出した差分量が所定値よりも大きいかどうかを判定する。ここで使用する所定値は０に近い値であり、つまり、読み取り領域背景画像１００１と静止画像１００２に差分があるかどうかを判定する。読み取り領域背景画像１００１と静止画像１００２に差分がなかった場合、原稿は置かれていないと判定して、ステップＳ９０５へ進む。一方、差分があれば、新たな原稿が置かれたと判定してステップＳ９０３へ進む。すなわち、図５（ｅ）のタイミングで撮像された静止画像は、読み取り用領域背景画像１００１と差分が得られないことから、読み取り領域２０５内に原稿が置かれていない（原稿が除去された）状態であると判定され、ステップＳ９０５へ進む。一方、図５（ｃ）（ｇ）（ｉ）のタイミングで撮像された静止画像に関しては、読み取り領域背景画像と差分があることから、ステップＳ９０３へ進む。
【００８５】
ステップＳ９０３において、原稿画像データ抽出部４１１は、静止画像１００２から原稿画像データを抽出する。原稿画像データは、ステップＳ９０１で生成した差分画像よりエッジを検出し、それを矩形近似するなど既存の方法を用いて抽出すればよい。
【００８６】
ステップＳ９０４において、原稿画像データ抽出部４１１は、ステップＳ９０３で抽出された原稿画像データを両面原稿判定部４０８に送信する。両面原稿判定部４０８は、受信した原稿画像データに対して両面対応付け処理を行う。両面対応付け処理の方法については図１１を参照して後述する。
【００８７】
ステップＳ９０５において、原稿画像データ抽出部４１１は、ステップＳ９０２での判定結果を撮像処理部４０６へ返して原稿抽出処理を終了し、図６のステップＳ６１２へ進む。すなわち、読み取り領域背景画像との差分がなく原稿画像データ抽出を行わなかった場合には（原稿画像抽出が失敗したことを示す）ｆａｌｓｅを、原稿画像データ抽出が行われた場合にはｔｒｕｅ（原稿画像抽出が成功したことを示す）を返して処理を終了する。
【００８８】
両面原稿判定部４０８は、図９のステップＳ９０４より原稿画像データを受信すると、図１１に示す両面対応付け処理を開始する。
【００８９】
両面原稿判定部４０８では、フレームアウトを検出した後に撮像されたカメラ画像は、新しい原稿に交換されたタイミングで撮像されたものであると判定する。一方、フレームアウトを検出しないで再び撮像されたカメラ画像は、裏返し操作によって読み取り領域に再び置かれたタイミングで撮像されたものであると判定する。これにより、新規原稿の読み取りなのか、両面原稿裏面の読み取りなのかを判別することができる。
【００９０】
以下、図１１を参照して、両面原稿判定部４０８で実行する両面対応付け処理について説明する。
【００９１】
ステップＳ１１０１において、両面原稿判定部４０８は、前回図６のステップＳ６１２で設定されたフレームアウト状態フラグより、原稿画像データ抽出前に、原稿がフレームアウトしていたかどうかを確認する。新しい原稿をスキャンする際には、原稿を取り除いた後に新しい原稿をセットすることから、原稿が読み取り領域２０５から一度フレームアウトすることになる。一方、裏面原稿をスキャンする際には、読み取り領域２０５に置かれた原稿を裏返す操作を行うことになり、原稿が読み取り領域からフレームアウトすることはない。
【００９２】
直前に原稿がフレームアウトしていた場合、すなわち、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）がｔｒｕｅである場合にはステップＳ１１０２へ進む。一方、直前に原稿のフレームアウトが検出されていなかった場合、すなわち、フレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）がｆａｌｓｅである場合にはステップＳ１１０３へ進む。図５（ｃ）で撮像された静止画像については、前回ステップＳ６１２で設定されたフレームアウト状態フラグ（直前のフレームアウト状態フラグ）、すなわち図５（ｂ）のフレームアウト状態フラグ（ｉｓＦｒａｍｅＯｕｔ）がｔｒｕｅである。よって、直前にフレームアウトが検出されていると判定し、ステップＳ１１０２へ進む。
【００９３】
ステップＳ１１０２において、両面原稿判定部４０８は、データ管理部４０５を介してＨＤＤ３０５上に表面原稿として、図９のステップＳ９０３で抽出された原稿画像データを保存して終了する。データ管理部４０５は、ＨＤＤ３０５上に空のディレクトリ（図１２（ａ）中の「／ＤＯＣＤＩＲ」）を作成し、抽出した原稿画像データとしてデータを保存する。さらに、データ管理部４０５は、図１２（ｂ）に示すような文書属性と画像属性情報１２１１を作成し、ＲＡＭ３０３上に保存する。
【００９４】
図５（ｇ）で撮像された静止画像については、直前にフレームアウトが検出されているため、ステップＳ１１０２へ進む。そして、データ管理部４０５により、図１２（ｃ）に示すように２枚目の原稿画像データ１２０２としてＨＤＤ３０５上に保存する。また、図１２（ｄ）に示すように文書属性及び画像属性情報１２１２を更新してＲＡＭ３０３上に保存する。
【００９５】
最後に、図５（ｉ）で撮像された静止画像が入力された場合には、直前のフレームアウト状態フラグにより、直前にフレームアウトが検出されたかを判定する。ここで、直前のフレームアウト状態フラグは図５（ｈ）のフレームアウト状態フラグでｆａｌｓｅとなっている。そのため、両面原稿判定部４０８は、ステップＳ１１０１において直前にフレームアウトが検出されていないことを判定し、ステップＳ１１０３へ進む。
【００９６】
ステップＳ１１０３において、両面原稿判定部４０８は、ステップＳ１１０２と同様に、データ管理部４０５を介して図９のステップＳ９０５で抽出された原稿画像データを裏面原稿として保存して終了する。データ管理部４０５は、図１２（ｅ）に示すようにＨＤＤ３０５上に抽出した原稿画像データ１２０３を保存する。さらに、データ管理部４０５は、図１２（ｆ）に示すような文書属性と画像属性情報１２１３を作成し、ＲＡＭ３０３上に保存する。
【００９７】
以上のように、原稿がフレームアウト状況を用いることで、新規原稿（表面原稿）なのか、両面原稿（裏面原稿）なのかを自動で判別することができる。そのため、表面のみを交換しながら読み込ませることで片面原稿をスキャンしていることになり、原稿を裏返す操作を行うことで両面原稿をスキャンしていると判別することができる。
【００９８】
図１３〜図１４を参照して、図６のステップＳ６２０における出力ファイル生成処理について詳細に説明する。図１３は出力ファイル形式の一例を示す図であり、図１４は出力ファイル作成部４０９の処理フローを説明する図である。
【００９９】
図１２に示すようにＨＤＤ３０５上に一時保存された原稿画像データは、図１３に示す各種フォーマットで出力することができる。例えば、図１３（ａ）では、両面原稿の場合には、表面画像と裏面画像を左右あるいは上下に並べて配置して１枚の画像ファイルに結合し、片面原稿の場合はそのままで１枚の画像ファイルに変換して指定されたフォルダに保存する。あるいは、図１３（ｂ）に示すように、片面または両面の原稿ごとの個別ファイルで、原稿枚数を表す連番（＃＃＃＃）と、表面または裏面を表す枝番（＊）とで構成されたファイル名（ＩＭＧ＿＃＃＃＃＿＊．ｊｐｇ）により指定されたフォルダに保存する。さらには、図１３（ｃ）に示すように、片面または両面の原稿ごとにマルチページのドキュメント（例えばマルチページＰＤＦなど）に変換して出力することもできる。なお、出力の形態はこれに限ったことではない。
【０１００】
図１４を参照して、図１３（ａ）に示すような出力画像を生成する処理フローを説明する。
【０１０１】
ステップＳ１４０１において、出力ファイル作成部４０９は、ＲＡＭ３０３上より１枚目の画像属性情報１２１１を取得する。
【０１０２】
ステップＳ１４０２において、出力ファイル作成部４０９は、ＨＤＤ３０５上より１枚目の原稿画像データ１２０１を取得する。
【０１０３】
ステップＳ１４０３において、出力ファイル作成部４０９は、ステップＳ１４０１で取得した画像属性情報１２１１より面情報を確認し、表面原稿であればステップＳ１４０４へ、裏面原稿であればステップＳ１４０９へ進む。
【０１０４】
ステップＳ１４０４において、出力ファイル作成部４０９は、出力ファイル用のヘッダ記述を作成する。画像属性のＮｏより原稿番号を取得し、出力ファイル名を作成する。また、出力原稿サイズには、画像属性の幅・高さ情報を用いる。
【０１０５】
ステップＳ１４０５において、出力ファイル作成部４０９は、出力ファイルの画像データとして、ステップＳ１４０２でＨＤＤ３０５から読み出した原稿画像データ１２０１を書き込む。この際、画像処理プロセッサ３０７上で、傾き補正・回転などの補正処理や、下地飛ばし・エッジ強調などの補正処理を行って画像を鮮鋭化しても構わない。
【０１０６】
ステップＳ１４０６において、出力ファイル作成部４０９は、フッタ記述を生成する。
【０１０７】
ステップＳ１４０７において、データ管理部４０５は、ＨＤＤ３０５に保存されたオリジナルの原稿画像データ１２０１を破棄（削除）する。
【０１０８】
ステップＳ１４０８において、全画像の処理が終了したかを判定する。未処理の原稿画像データが残っている場合にはステップＳ１４０１に戻り、出力ファイル生成処理を続ける。全画像で処理が終了した場合には出力ファイル生成処理を終了する。
【０１０９】
ステップＳ１４０１に戻り、出力ファイル作成部４０９は、ＲＡＭ３０３より２枚の画像属性情報１２１２を取得する。そしてステップＳ１４０２において、出力ファイル作成部４０９は、ＨＤＤ３０５より２枚目の原稿画像データ１２０２を取得し、上記と同様の処理を繰り返す。
【０１１０】
続いて、ステップＳ１４０１およびステップＳ１４０２において、３枚目の画像属性情報１２１３および原稿画像データ１２０３をそれぞれ取得する。
【０１１１】
ステップＳ１４０３において、出力ファイル作成部４０９は、原稿画像データ１２０３は裏面であると判定し、ステップＳ１４０９へ進む。
【０１１２】
ステップＳ１４０９において、出力ファイル作成部４０９は、ヘッダ記述を更新する。ここでは、表面と裏面の原稿を左右あるいは上下配置で連結して出力するため、ステップＳ１４０４で生成されたヘッダ記述の出力原稿サイズに、ステップＳ１４０１で取得した裏面画像の画像幅あるいは高さを足し合わせる。
【０１１３】
ステップＳ１４１０において、出力ファイル作成部４０９は、ステップＳ１４０５で書き出した出力画像データに連結させるように、ステップＳ１４０２で取得した原稿画像データ１２０２を書き出す。この際、ステップＳ１４０５での処理と同様、画像処理プロセッサ３０７上で画像の補正処理や先鋭化などの処理をさらに行ってもよい。
【０１１４】
ステップＳ１４１１において、出力ファイル作成部４０９は、フッタ記述を更新する。
【０１１５】
以上の処理により、両面原稿の場合に左右または上下に連結された画像を生成できる。
【０１１６】
以上の処理によって、原稿のフレームアウト情報を用いることで、自動で片面原稿または両面原稿を判定して保存することができるようになった。そのため、ユーザの原稿を裏返すという単純操作により両面スキャンが可能となることから操作性の向上し、片面または両面原稿を自動判定することから処理パフォーマンスの向上にもつながる。
【０１１７】
［第２の実施形態］
第１の実施形態では、撮像されたカメラ画像から抽出されたすべての原稿画像データを片面または両面原稿として保存する仕組みを提供した。本実施形態では、静止画像中から抽出した原稿画像データが白紙であるかどうかを判別することで、有効な画像データのみを保存する仕組みを提供する。
【０１１８】
図１５〜図１６を参照して、図６のステップＳ６１８において、本実施形態における両面原稿判定部４０８が実行する両面対応付け処理について説明する。図１５は裏面が白紙である原稿操作の一例を示している。図１６は本実施形態における両面原稿判定部４０８の処理フローを示している。なお、第１の実施形態と同じ処理については説明を省略する。
【０１１９】
図１６のステップＳ１６０１において、両面原稿判定部４０８は、図９ステップＳ９０３で抽出された原稿画像データが白紙であるかを確認する。図１５（ａ）では、原稿画像データは白紙でないためステップＳ１１０１、ステップＳ１１０２と進み表面原稿としてＨＤＤ３０５上に原稿画像データを保存する。一方、図１５（ｂ）では、原稿画像データが白紙であると判定され、ステップＳ１６０２へ進む。
【０１２０】
ステップＳ１６０２において、両面原稿判定部４０８は、白紙と判定された原稿画像データを破棄して両面対応付け処理を終了する。なお、ここでの処理結果については、図６のステップＳ６１２へ通知されて状態管理フラグが更新される。
【０１２１】
以上の処理により、原稿に白紙画像が含まれていた場合にも、その画像データを読み飛ばして出力できることになり、不要な原稿の出力保存を避けることができる。
【０１２２】
［第３の実施形態］
第１〜２の実施形態では、フレームアウトを検出しないで次の静止画像が取得された場合、常に両面原稿の裏面であるとして自動対応付けを行っていた。本実施形態では、静止画像中から抽出した原稿同士を比較することで、原稿位置をずらしてしまって画像抽出がなされた場合に誤対応付けされることを防止する。
【０１２３】
図１７〜図１８を参照して、図６のステップＳ６１８において、本実施形態における両面原稿判定部４０８が実行する両面対応付け処理について説明する。図１７は同一原稿を読み取り領域２０５上で移動させた状態を示している。図１８は本実施形態における両面原稿判定部４０８の処理フローを示している。なお、第１〜２の実施形態と同じ処理については説明を省略する。
【０１２４】
図１７（ａ）に示す１枚目の原稿１７０１が入力されると、両面原稿判定部４０８は、ステップＳ１６０１で白紙でないと判定し、ステップＳ１１０１へ進む。そして、以後の処理において、両面原稿判定部４０８は直前のフレームアウト状態を確認し、入力された原稿画像データを表面原稿としてＨＤＤ３０５に保存する。
【０１２５】
続いて、図１７（ｂ）に示す２枚目の原稿１７０２が入力されると、両面原稿判定部４０８は、ステップＳ１６０１で白紙でないと判定し、ステップＳ１１０１へ進む。ステップＳ１１０１において、両面原稿判定部４０８は、直前のフレームアウトがないことからステップＳ１８０１へ進む。
【０１２６】
ステップＳ１８０１において、両面原稿判定部４０８は、直前のステップＳ１１０２で表面原稿として保存された原稿画像データと、本ステップＳ１１０２で裏面原稿として判定された原稿画像データとの差分量を検出する。
【０１２７】
ステップＳ１８０２において、両面原稿判定部４０８は、ステップＳ１８０１で算出された差分量を基に、同一原稿か否かを判定する。差分がある場合には異なる原稿であると判定し、ステップＳ１１０３へ進み、裏面原稿としてデータ管理部４０５を介してＨＤＤ３０５に保存する。一方、差分がない場合には同一原稿であるとみなし、ステップＳ１６０２へ進む。
【０１２８】
ステップＳ１６０２において、両面原稿判定部４０８は、ステップＳ１８０２で表面原稿と差分がない、すなわち同一原稿と判定されたことを受け、原稿画像データを破棄して、両面対応付け処理を終了する。なお、ここでの処理結果については、図６のステップＳ６１２へ通知されて状態管理フラグが更新される。
【０１２９】
以上の処理により、静止画像中から抽出した原稿同士を比較することで、原稿が裏返されたのか、位置がずれてしまっただけなのかを判別することができ、同一原稿が表面と裏面に対応付けされてしまうことを防止することができる。
【０１３０】
なお、ここではステップＳ１６０２の処理で、原稿画像データを破棄してしまっていたが、直前に保存された表面原稿に置き換えて保存し直すなどの処理をしても構わない。
【０１３１】
［第４の実施形態］
第１〜３の実施形態では、１枚の原稿では表または裏の最大２枚の画像を取得する場合の操作について説明してきた。本実施形態では、ユーザが同一原稿を３回以上連続して取り込もうとした場合について誤対応付けを防止する仕組みを提供する。
【０１３２】
図１９〜図２０を参照して図６のステップＳ６１８において、本実施形態における両面原稿判定部４０８が実行する両面対応付け処理について説明する。図１９は同一原稿を複数回読み取る操作の一例として、両面原稿を読み取り領域２０５上で表面→裏面→表面と読み取り領域２０５上に置いた場合を示している。図２０は本実施形態における両面原稿判定部４０８の処理フローを示している。なお、第１〜第３の実施形態と同じ処理については説明を省略する。
【０１３３】
詳細な説明は省略するが、図１９（ａ）に示す１枚目の原稿１９０１が入力されると、ステップＳ１１０２で表面原稿として保存される。
【０１３４】
図１９（ｂ）に示す２枚目の原稿１９０２が入力された場合は、両面原稿判定部４０８は、ステップ１６０１において白紙でないと判定する。続くステップＳ１１０１においてフレームアウトなしと判定し、ステップＳ２００１へ進む。
【０１３５】
ステップＳ２００１において、両面原稿判定部４０８は、裏面原稿が保存済みであるかを確認する。ここでは、裏面原稿はまだ保存されていないためステップ１８０１へ進み、最終的にステップＳ１１０３において、裏面原稿として保存される。
【０１３６】
図１９（ｃ）に示す３枚目の原稿１９０３が入力されると、両面原稿判定部４０８は、ステップ１６０１において白紙でないと判定する。続くステップＳ１１０１においてフレームアウトなしと判定し、ステップＳ２００１へ進む。
【０１３７】
ステップＳ２００１において、両面原稿判定部４０８は、裏面原稿が保存済みであるかを確認する。ここでは、裏面原稿がすでに保存されていることからステップ１６０２へ進み、原稿画像データを破棄して、両面対応付け処理を終了する。
【０１３８】
以上の処理により、ユーザの誤操作により、同一原稿を複数回読み取ってしまうような状況を回避することができる。
【０１３９】
［第５の実施形態］
第１〜４の実施形態では、原稿を交換するタイミングを検出するために、ステップＳ１１０１においてフレームアウト状態を利用してきたが、フレームイン状態を利用して同等の処理を行うこともできる。
【０１４０】
すなわち、ステップＳ１１０１において、原稿のフレームイン情報を確認し、新たな原稿がフレームインしてきた場合には表面原稿として保存処理を行う。一方、新たな原稿のフレームインを検出せずに次の原稿画像データを取得した場合には、裏面原稿として保存処理を行えばよい。
【０１４１】
［第６の実施形態］
第１〜５の実施形態では、原稿を交換するタイミングを検出するために、フレームアウトまたはフレームイン状態を利用してきたが、本実施形態では、フレームアウトした後、フレームインする前の原稿除去状態を利用して同等の処理を行うこともできる。
【０１４２】
以下、図２１から図２３を参照して、本実施形態の処理について説明する。なお、第１〜５の実施形態と同じ処理については説明を省略する。
【０１４３】
図２１は本実施形態におけるカメラスキャナ１０１の処理フローの一例を示す図である。
【０１４４】
図２１のステップＳ２１０１において、撮像処理部４０６は状態管理フラグの初期化を行う。本実施形態において、状態管理フラグは、原稿が読み取り領域から除去されたかを示す原稿除去状態フラグを含む。状態管理フラグの初期化として、原稿除去状態フラグをｔｒｕｅに設定する。
【０１４５】
図２１のステップＳ２１０２において、撮像処理部４０６のタイミング検出部４１０は、カメラ部２０２から受信したカメラ画像に基づいて、原稿が読み取り領域から除去されたか否かを検出する。具体的には、ステップＳ６０１で撮像した背景画像と、ステップＳ６１０で取り込んだカメラ画像との差分量を計算し、差分がない（０に近い）場合に、原稿が読み取り領域から除去されたと判定する。原稿の除去が検出された場合はステップＳ２１０３へ進み、検出されなかった場合にはステップＳ６１３へ進む。
【０１４６】
図２１のステップＳ２１０３において、タイミング検出部４１０は、ステップＳ２１０１で原稿の除去が検出されたことを受け、状態管理フラグを更新する。すなわち、原稿の除去が検出された場合に、原稿除去状態フラグをｔｒｕｅに設定する。
【０１４７】
図２２は本実施形態における原稿画像データ抽出処理を説明するための図である。
【０１４８】
図２２に示すフローは、第１の実施形態において差分があるかを判定するステップＳ９０４をスキップする。これは、ステップＳ２１０２で原稿の除去についての検出によって背景画像と差分がない場合に原稿データ抽出処理が行われないからである。
【０１４９】
また、図２２のステップＳ２２０１において、原稿画像データ抽出処理終了後に、図２１のステップＳ２１０３へ進む。そして、ステップＳ２１０３において、原稿除去状態フラグをｆａｌｓｅに設定する。
【０１５０】
図２３は本実施形態における両面対応付け処理を説明するための図である。
【０１５１】
図２３のステップＳ２３０１において、両面原稿判定部４０８は、図２１のステップＳ２１０３で設定された原稿除去状態フラグより、原稿画像データ抽出前に、原稿が読み取り領域から除去されたかどうかを確認する。新しい原稿をスキャンする際には、原稿を取り除いた後に新しい原稿をセットすることから、原稿が読み取り領域から一度除去されることになる。一方、裏面原稿をスキャンする際には、読み取り領域２０５に置かれた原稿を裏返す操作を行うことになり、原稿が読み取り領域から除去されることはない。原稿の除去が検出された場合にはステップＳ１１０２へ進む。一方、直前に原稿の除去が検出されていなかった場合にはステップＳ１１０３へ進む。
【０１５２】
上述の実施形態の処理によって、両面原稿と片面原稿が混在している場合において、ＡＤＦでの処理のような片面原稿でも両面を読み取って白紙であるかを判定する処理が不要となるため、パフォーマンス向上にもつながる。また、実世界において人が物理的な両面原稿を裏返すことで閲覧するといった自然な操作方法により、特別なボタン操作を行うことなく原稿の両面対応付けを行ってファイルに保存することが可能となる。
【０１５３】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014121048.tif 000004
【図２】
2014121048.tif 000005
【図３】
2014121048.tif 000006
【図４】
2014121048.tif 000007
【図５】
2014121048.tif 000008
【図６】
2014121048.tif 000009
【図７】
2014121048.tif 000010
【図８】
2014121048.tif 000011
【図９】
2014121048.tif 000012
【図１０】
2014121048.tif 000013
【図１１】
2014121048.tif 000014
【図１２】
2014121048.tif 000015
【図１３】
2014121048.tif 000016
【図１４】
2014121048.tif 000017
【図１５】
2014121048.tif 000018
【図１６】
2014121048.tif 000019
【図１７】
2014121048.tif 000020
【図１８】
2014121048.tif 000021
【図１９】
2014121048.tif 000022
【図２０】
2014121048.tif 000023
【図２１】
2014121048.tif 000024
【図２２】
2014121048.tif 000025
【図２３】
2014121048.tif 000026