JP2014216953A - 画像処理装置および画像処理方法、コンピュータプログラム - Google Patents
画像処理装置および画像処理方法、コンピュータプログラム Download PDFInfo
- Publication number
- JP2014216953A JP2014216953A JP2013094635A JP2013094635A JP2014216953A JP 2014216953 A JP2014216953 A JP 2014216953A JP 2013094635 A JP2013094635 A JP 2013094635A JP 2013094635 A JP2013094635 A JP 2013094635A JP 2014216953 A JP2014216953 A JP 2014216953A
- Authority
- JP
- Japan
- Prior art keywords
- document
- image data
- image
- detected
- reading area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/04—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa
- H04N1/10—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa using flat picture-bearing surfaces
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
- Facsimile Scanning Arrangements (AREA)
- Studio Devices (AREA)
Abstract
【課題】複数の原稿をまとめてスキャンする場合に、原稿の順序を自動で判別して保存することを可能にすること。【解決手段】本発明によれば、読み取り領域上に置かれて静止した原稿の順番を自動で認識することで、ページ順番を自動で決定することが可能になる。これにより、ユーザがページ順で原稿を並べてくといった直感的な操作によって、自動で原稿のページ順を認識して出力することができる。【選択図】図11
Description
本発明は、例えばカメラスキャナを利用して、原稿台に載置された複数枚の原稿の画像データを読み取る画像処理装置方法およびプログラムに関する。
原稿に描かれた画像の画像データを読み取る装置として、原稿台に載置した原稿をカメラで撮像して、カメラで撮像した原稿の画像データを処理して記憶するカメラスキャナが知られている(例えば、特許文献1参照)。特許文献1のカメラスキャナでは、新たに撮像した画像が前回撮像した時の画像と比較してどれぐらい変化したかを示す画像変化量に基づいて画像の動き検出処理を行う。動き検出処理によって、原稿台上の原稿が載置されて静止したタイミングを検出する。静止したタイミングで撮像した画像データ中から原稿部分を認識・抽出し、射影補正、拡大縮小等の画像処理を施して記憶装置に原稿の画像データとして蓄積し、それをプロジェクタに投影する。
特許文献1のカメラスキャナは、フラットベッドスキャナ付き複合機のようなカバー開閉といった手順が省け、また、原稿の撮像タイミングを自動で検出することによって読み込みスタートボタンを押下する手順が省ける。
上述のカメラスキャナにおいては、原稿台に置かれた複数の原稿を抽出する際には、同時に撮影された複数の原稿間の順番を特定できないため、ユーザの意図した順番通りに原稿が保存されない。
本発明は上記従来例に鑑みてなされたもので、同時に撮影された複数の原稿間の順序を特定し、さらに、特定した順序で原稿画像データを整理、保存、出力等を行う。
上記目的を達成するために、本発明の画像処理装置は、原稿が載置された読み取り領域を撮像することによって画像データを取得する取得手段と、前記読み取り領域に対する原稿の位置イベントを検出する検出手段と、前記検出手段で検出した位置イベントに基づき、前記原稿の順序を判定する判定手段とを備えることを特徴とする。
本発明によれば、複数の原稿を同時に読み取る場合において、撮影された複数の原稿の順序を決定できる。このため、読み取り後に手動で原稿を並び替えるといった作業が不要となり、大幅な生産性の向上にもつながる。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
[実施形態1]
<ネットワーク構成>
図1は、一実施形態に係るカメラスキャナ101が含まれるネットワーク構成を示す図である。図1に示すように、カメラスキャナ101はイーサネット(登録商標)等のネットワーク104にてホストコンピュータ102およびプリンタ103に接続されている。図1のネットワーク構成において、ホストコンピュータ102からの指示により、カメラスキャナ101から画像を読み取るスキャン機能や、スキャンデータをプリンタ103により出力するプリント機能の実行が可能である。また、ホストコンピュータ102を介さず、カメラスキャナ101への直接の指示により、スキャン機能、プリント機能の実行も可能である。
<ネットワーク構成>
図1は、一実施形態に係るカメラスキャナ101が含まれるネットワーク構成を示す図である。図1に示すように、カメラスキャナ101はイーサネット(登録商標)等のネットワーク104にてホストコンピュータ102およびプリンタ103に接続されている。図1のネットワーク構成において、ホストコンピュータ102からの指示により、カメラスキャナ101から画像を読み取るスキャン機能や、スキャンデータをプリンタ103により出力するプリント機能の実行が可能である。また、ホストコンピュータ102を介さず、カメラスキャナ101への直接の指示により、スキャン機能、プリント機能の実行も可能である。
<外観図>
図2は、一実施形態に係るカメラスキャナ101の構成例を示す図である。図2に示すように、カメラスキャナ101は、コントローラ部201、カメラ部202、腕部203を含む。カメラスキャナの本体であるコントローラ部201と、撮像を行うためのカメラ部202は、腕部203により連結されている。腕部203は関節を用いて自由に曲げ伸ばしが可能である。
図2は、一実施形態に係るカメラスキャナ101の構成例を示す図である。図2に示すように、カメラスキャナ101は、コントローラ部201、カメラ部202、腕部203を含む。カメラスキャナの本体であるコントローラ部201と、撮像を行うためのカメラ部202は、腕部203により連結されている。腕部203は関節を用いて自由に曲げ伸ばしが可能である。
図2には、カメラスキャナ101が設置されている書画台204も示している。カメラ部202のレンズは書画台204方向に向けられており、破線で囲まれた読み取り領域205内の画像を読み取り可能である。図2の例では、原稿206は読み取り領域205内に置かれているので、カメラスキャナ101で読み取り可能となっている。
カメラ部202は単一解像度で画像を撮像するものとしてもよいが、高解像度画像撮像と低解像度画像撮像とが切り換え可能なものとすることが好ましい。一実施形態において、コントローラ部201は、カメラ部202の低解像度で撮像した撮影画像を用いて、原稿が載置されて読み取り領域内で静止したタイミングなどを検出する。そして、静止を検知するとカメラ部202が高解像度で静止した原稿を撮像するように制御する。また、コントローラ部201は、カメラ部202の低解像度で撮像した撮影画像を用いて、原稿が読み取り領域205にフレームインしたタイミングおよび読み取り領域205からフレームアウトするタイミング、静止したタイミング、またはそれらのうち少なくともいずれかのタイミングを検出する。例えば同一の画像が所定の期間にわたり(あるいは所定数のフレームにわたり)撮像され続けた場合などに被写体が静止していると判定できる。
なお、カメラスキャナ101は、書画台等に、操作を補助する画像の投影を行う短焦点プロジェクタ207をさらに含むことができる。また、図2に示されていないが、カメラスキャナ101は、LCDタッチパネル330およびスピーカ340をさらに含むこともできる。
<カメラスキャナのコントローラのハードウェア構成>
図3は、カメラスキャナ101の本体であるコントローラ部201のハードウェア構成例を示す図である。図3に示すように、コントローラ部201は、システムバス301に接続されたCPU302、RAM303、ROM304、HDD305、ネットワークI/F306、画像処理プロセッサ307およびカメラI/F308を含む。
図3は、カメラスキャナ101の本体であるコントローラ部201のハードウェア構成例を示す図である。図3に示すように、コントローラ部201は、システムバス301に接続されたCPU302、RAM303、ROM304、HDD305、ネットワークI/F306、画像処理プロセッサ307およびカメラI/F308を含む。
CPU302はコントローラ部201全体の動作を制御する中央演算装置である。RAM303は揮発性メモリである。ROM304は不揮発性メモリであり、CPU302の起動用プログラムが格納されている。HDD305はRAM303と比較して大容量なハードディスクドライブ(HDD)である。HDD305にはコントローラ部201が実行する、カメラスキャナ101の制御用プログラムが格納されている。
CPU302は電源ON等の起動時、ROM304に格納されている起動用プログラムを実行する。この起動用プログラムは、ROM304あるいはHDD305に格納されているカメラスキャナ101の制御用プログラムを読み出し、RAM303上に展開するためのものである。CPU302は起動用プログラムを実行すると、続けてRAM303上に展開した制御用プログラムを実行し、制御を行う。また、CPU302は制御用プログラムによる動作に用いるデータもRAM303上に格納して読み書きを行う。HDD305上にはさらに、制御用プログラムによる動作に必要な各種設定や、また、カメラ入力によって生成した画像データを格納することができ、CPU302によって読み書きされる。CPU302はネットワークI/F306を介してネットワーク104上の他の機器との通信を行う。
画像処理プロセッサ307はRAM303やHDD305に格納された画像データを読み出して処理し、またRAM303やHDD305へ書き戻す。なお、画像処理プロセッサ307が実行する画像処理は、回転、変倍、色変換等である。
カメラI/F308はカメラ部202と接続され、CPU302からの指示に応じてカメラ部202から画像データを取得してRAM303へ書き込む。また、CPU302からの制御コマンドをカメラ部202へ送信し、カメラ部202の設定を行う。
また、コントローラ部201は、ディスプレイコントローラ309、シリアルI/F310、オーディオコントローラ311およびUSBコントローラ312のうち少なくとも1つをさらに含むことができる。
ディスプレイコントローラ309はCPU302の指示に応じてディスプレイへの画像データの表示を制御する。ここでは、ディスプレイコントローラ309は短焦点プロジェクタ207およびLCDタッチパネル330に接続されている。
シリアルI/F310はシリアル信号の入出力を行う。ここでは、シリアルI/F310はLCDタッチパネル330に接続され、CPU302はLCDタッチパネル330が押下されたときに、シリアルI/F310を介して押下された座標を取得する。
オーディオコントローラ311はスピーカ340に接続され、CPU302の指示に応じて音声データをアナログ音声信号に変換し、スピーカ340を通じて音声を出力する。
USBコントローラ312はCPU302の指示に応じて外付けのUSBデバイスの制御を行う。ここでは、USBコントローラ312はUSBメモリやSDカードなどの外部メモリ350に接続され、外部メモリへのデータの読み書きを行う。
<カメラスキャナの制御用プログラムの機能構成>
図4は、CPU302が実行するカメラスキャナ101の制御用プログラムの機能構成401を示す図である。カメラスキャナ101の制御用プログラムは前述のようにHDD305に格納され、CPU302が起動時にRAM303上に展開して実行する。カメラスキャナ101の制御用プログラムの機能構成401は、メイン制御部402、操作表示部403、ネットワーク通信部404、データ管理部405、撮像処理部406、画像認識部407、原稿認識部408、および出力ファイル生成部409を備える。また、撮像処理部406はタイミング検出部410を、画像認識部407は原稿画像データ抽出部411を、原稿認識部408は除去原稿特定部412と両面原稿認識部412をそれぞれ含む。
図4は、CPU302が実行するカメラスキャナ101の制御用プログラムの機能構成401を示す図である。カメラスキャナ101の制御用プログラムは前述のようにHDD305に格納され、CPU302が起動時にRAM303上に展開して実行する。カメラスキャナ101の制御用プログラムの機能構成401は、メイン制御部402、操作表示部403、ネットワーク通信部404、データ管理部405、撮像処理部406、画像認識部407、原稿認識部408、および出力ファイル生成部409を備える。また、撮像処理部406はタイミング検出部410を、画像認識部407は原稿画像データ抽出部411を、原稿認識部408は除去原稿特定部412と両面原稿認識部412をそれぞれ含む。
メイン制御部402は制御の中心であり、制御用プログラムの機能構成401内の他の各部を制御する。操作表示部403は、メイン制御部402からの描画要求を受け、ディスプレイコントローラ309を介して、短焦点プロジェクタ207もしくはLCDタッチパネル330へ描画を実行する。また、操作表示部403は、LCDタッチパネル330が押下されたときにシリアルI/F310を介して押下座標を受信し、描画中の操作画面の内容と押下座標を対応させて操作内容(押下されたボタン等)を判定する。この押下内容をメイン制御部402へ通知することにより、操作者の操作を受け付ける。
ネットワーク通信部404は、ネットワークI/F306を介して、ネットワーク104上の他の機器とTCP/IPによる通信を行う。データ管理部405は、制御用プログラム401の実行において生成した作業データ、例えば後述の原稿画像データ抽出部411で抽出した原稿画像データ、文書属性・画像属性情報をHDD305上やRAM303上の所定の領域へ保存し、管理する。
撮像処理部406は、カメラI/F308を介してカメラ部202を制御し、撮像処理部406のタイミング検出部410で検出されたタイミングで撮像した撮影画像を画像認識部407へ送信する。あるいは、撮像処理部406はカメラ202を制御して、高解像度で原稿を撮像させてもよい。
タイミング検出部410は、読み取り領域205上にオブジェクトがフレームイン/フレームアウトしたタイミングおよび、オブジェクトが静止/移動開始したタイミングなどを、読み取り領域205上の複数のオブジェクトに対してそれぞれ個別に検出する。そして、読み取り領域205上のすべてのオブジェクトが静止したタイミングを撮像タイミングとして検出する。これらのタイミングは、カメラ部202から受信した撮影画像に基づいて検出することができる。ここで、フレームアウトタイミングは、原稿が読み取り領域205からフレームアウトする直前のタイミングもしくはフレームアウトし始めるタイミング、またはその間の任意のタイミングとしてもよい。なお、個々のオブジェクトに関するタイミング情報は、データ管理部405によってRAM303上に保存され、管理される。
画像認識部407は、カメラ部202から撮影画像を受信し、受信した撮影画像の内容を認識する。図4に示すように、画像認識部407は、原稿画像データ抽出部411を含む。
原稿画像データ抽出部411は、タイミング検出部410が検出した撮像タイミングで撮像され送信されてきた撮影画像から、原稿画像データを抽出する。その際、RAM303上に保存された個々のオブジェクトが静止した順番で、各オブジェクト中から原稿画像データの抽出処理を行う。そして、データ管理部405によってHDD305上の所定の領域へ保存され、管理される。
原稿認識部408は、原稿画像データ抽出部411で抽出された原稿画像データの内容を認識する。出力ファイル生成部409は、データ管理部405が保存した原稿画像データを変換し適切な画像に整えた上で、所定のデータ出力形式で出力ファイルを生成する。
<原稿操作の例>
図5は本実施形態における原稿操作の一例を示す図である。図5において、2枚の原稿501および502を読み取り領域205に連続して載置する際の操作手順を図5(a)〜(e)に、その後、3枚目の原稿503をさらに追加して載置する際の手順を図5(f)〜(h)にそれぞれ示している。そしてすべての原稿が載置された後スキャンが開始される様子を示している。また図5は、操作の手順であるとともに、カメラ部202により撮影される画像の例でもある。
図5は本実施形態における原稿操作の一例を示す図である。図5において、2枚の原稿501および502を読み取り領域205に連続して載置する際の操作手順を図5(a)〜(e)に、その後、3枚目の原稿503をさらに追加して載置する際の手順を図5(f)〜(h)にそれぞれ示している。そしてすべての原稿が載置された後スキャンが開始される様子を示している。また図5は、操作の手順であるとともに、カメラ部202により撮影される画像の例でもある。
まず図5(a)は何もない原稿台を示す。操作者が原稿501,502を持ち、原稿台に向けて移動させる(図5(b))。操作者は原稿501を手離し(図5(c))、原稿502を読み取り領域205内のやや離れた位置に移動させる(図5(d))。そして原稿502を原稿台に置く(図5(e))。引き続き操作者は原稿503を持ち、原稿台に向けて移動させる(図5(f))。そして読み取り領域205内の所望の位置に原稿503を置き(図5(g))、3枚の原稿がそれぞれの位置で静止する(図5(h))。
図6は本実施形態におけるカメラスキャナ101の処理フローの一例を示す図である。この手順は、RAM303等にロードしたプログラムをCPU302が実行することで実現される。
<初期化処理>
図6(a)は、初期化設定フローを示している。撮像処理部406がスタートすると、図6(a)で示すように読み取り領域205の位置情報を取得する初期化設定を行う。
図6(a)は、初期化設定フローを示している。撮像処理部406がスタートすると、図6(a)で示すように読み取り領域205の位置情報を取得する初期化設定を行う。
図6(a)のステップS601において、撮像処理部406は、背景画像として、図5(a)に示すような原稿が投入されていない状態の読み取り領域205の画像をカメラ部202に撮像させる。
読み取り領域205は矩形であるが、本実施形態ではカメラ部202は厳密には読み取り領域205の真上、すなわち中央の上部にあるわけではないため、ステップS601で撮像された背景画像は図7(a)に示した画像701のように形状が歪んでいる。
ステップS602において、撮像処理部406は、撮像された背景画像701を矩形に変換する射影変換のパラメータを算出する。
ステップS603において、撮像処理部406は、ステップS602で算出した射影変換パラメータを使用してステップS601で撮像した背景画像701を、図7(b)に示した読み取り領域背景画像702のように矩形に補正する。なおカメラ部202が読み取り領域205の真上にあればS602,603で行う台形歪み補正は不要である。
ステップS604において、撮像処理部406は、補正された読み取り領域背景画像702を、データ管理部405を介してHDD305へ保存する。図13(a)に、読み取り領域背景画像を保存したときの模式図を示す。データ管理部405は、HDD305上に空のディレクトリ(図13(a)中の「/IMGDIR」)を作成し、読み取り領域背景画像として背景データ1301を保存する。
ステップS605において、撮像処理部406は、状態管理テーブルを初期化し、データ管理部405を介してRAM303へ保存する。データ管理部405がRAM303上に保存する状態管理テーブルの模式図を図10に示す。状態管理テーブルは、読み取り領域205上から検知されたオブジェクト数を保存する変数(objNums)と、個々のオブジェクトの情報を管理するオブジェクト管理テーブルを含む。また、オブジェクト管理テーブルには、オブジェクトの状態(移動中/静止/原稿検出済など)や、オブジェクトの位置・大きさを含む。これ以外にも状態管理テーブルには、オブジェクトに関連する情報を保持することは可能であることは言うまでもない。図10(a)は初期化処理後の状態管理テーブルを示しており、オブジェクト数(objNums)に0が設定され、オブジェクト管理テーブル内は空欄となっている。
<原稿読み取り処理>
次に、図5の操作を行った際に実行されるスキャン処理フローについて、図6(b)を用いて説明する。初期化処理が終了すると、撮像処理部406が図6(b)に示すスキャン処理フローを実行する。すなわち、撮像処理部406はカメラ部202から受信した撮影画像に基づき、読み取り領域205に対するオブジェクトの位置イベントを検出する。ここで、オブジェクトの位置イベントは、読み取り領域205へのフレームイン、及び読み取り領域205内における移動/静止を含む。そして、撮像処理部406は検出したそれぞれの位置イベントに応じてそれぞれの処理を行う。また、すべてのオブジェクトが所定時間静止したときに、原稿画像データ抽出処理を実行する。
次に、図5の操作を行った際に実行されるスキャン処理フローについて、図6(b)を用いて説明する。初期化処理が終了すると、撮像処理部406が図6(b)に示すスキャン処理フローを実行する。すなわち、撮像処理部406はカメラ部202から受信した撮影画像に基づき、読み取り領域205に対するオブジェクトの位置イベントを検出する。ここで、オブジェクトの位置イベントは、読み取り領域205へのフレームイン、及び読み取り領域205内における移動/静止を含む。そして、撮像処理部406は検出したそれぞれの位置イベントに応じてそれぞれの処理を行う。また、すべてのオブジェクトが所定時間静止したときに、原稿画像データ抽出処理を実行する。
図6(b)のステップS611において、撮像処理部406は、カメラ部202から読み取り領域205を撮像した撮影画像を受信する。ここで、カメラ部202は、所定のフレームレートで読み取り領域205を撮像し、撮像した撮影画像を1フレームずつ撮像処理部406へ送信することができる。
ステップS612において、撮像処理部406は、ステップS610で取り込んだフレームを対象として、ステップS602で算出した射影変換パラメータに基づいて射影変換を行い、読み取り領域205を撮影した読み取り領域撮影画像を生成する。
ステップS613において、タイミング検出部410は、ステップS604で生成した読み取り領域背景画像と、ステップS611で生成した読み取り領域撮影画像より、背景差分2値画像を生成する。図5(a)〜(h)に示す読み取り領域撮影画像が入力された場合の背景差分2値画像の例を図8(a)〜(h)にそれぞれ示す。背景差分2値画像中の黒画素部分は画像変化量がない、すなわちオブジェクトが存在していない部分を表している。また、白画素部分は画像変化量がある、すなわちオブジェクトが存在している部分であることを示している。なお、原稿内にはたまたま背景画像の対応箇所と一致する色の画素が含まれている可能性があるが、たとえば原稿の縁部などオブジェクトが存在する部分に囲い込まれた領域もまたオブジェクトの領域とみなすことで、図8のような差分画像を生成できる。また、背景画像と撮影画像との位置ずれに対しては、たとえば背景画像と撮影画像との対応箇所(たとえば角部など)の適当な範囲を選択し、その相関を判定してずれ量及び方向を決定して、決定したずれ量及び方向に従っていずれかの画像をシフトして差分をとればよい。より簡単には、読み取り領域を単色にしておくことでも対処可能であろう。
ステップS614において、タイミング検出部410は、ステップS613で生成された背景差分2値画像に基づいて、読み取り領域205上のオブジェクトを検知する。オブジェクトが1つも検知されなかった場合にはステップS622へ進む。一方、オブジェクトが1つ以上検知された場合にはステップS615へ進む。例えば、図8(a)では白画素部分が存在しないことから、読み取り領域205上にオブジェクトが存在しない(オブジェクト数=0)であると判定されるため、ステップS622へ進む。図8(b)では、背景差分2値画像中にオブジェクト領域であることを示す白画素領域801が1つ存在することから、状態管理テーブル(図10)のオブジェクト数=1としてステップS615へ進む。あるいはステップS615へ進んでオブジェクト数=1とする。また、図8(f)では、3つの白画素領域801〜803が存在することから、オブジェクト数=3としてステップS615へ進むことになる。
ステップS615において、タイミング検出部410は、今回ステップS613で生成した背景差分2値画像と、前回ステップS613で生成した背景差分2値画像より、フレーム差分2値画像を生成する。これは、連続するフレーム間でどれくらい変化したかを示す画像変化量を表しており、フレーム差分2値画像中の白画素領域として表現される。図5(a)〜(h)に示す読み取り領域撮影画像が入力された場合のフレーム差分2値画像を図9(a)〜(h)にそれぞれ示す。
ステップS616において、タイミング検出部410は、ステップS615で生成したフレーム差分2値画像に基づいて、画像変化量が所定の値(ここでの所定の値は0に近い)より大きいかどうかを判定する。差分がある場合には、読み取り領域205上のオブジェクトに変化があると判定され、ステップS617へ進む。
一方、ステップS616において差分がない場合には、読み取り領域上のすべてのオブジェクトが静止していると判定できるため、ステップS618へ進む。例えば、ステップS616において、フレーム差分2値画像が図9(b)であったとすれば、このフレーム差分2値画像中に、所定値以上の画像変化量を表す白画素領域901が検出されることから、読み取り領域205上のいずれかのオブジェクトが移動状態であると判定され、ステップS617へ進む。一方、ステップS616において、フレーム差分2値画像が図9(e)であったとすれば、フレーム差分2値画像中に画像変化量を示す白画素領域が存在しないことから、全オブジェクトが静止した静止状態を検知し、ステップS618へ進む。
ステップS617において、タイミング検出部410は、ステップS614で検知されたすべてのオブジェクトに対しての静止検知処理を行う。処理の詳細は図11を用いて後述する。ステップS617における静止オブジェクトの検知では、静止が検知された順序を示す情報が静止オブジェクトの属性として付与される。本実施形態では静止の検知順序はオブジェクトIDにより示されることとしているが、順序情報を別途属性の一部として用意し、静止検知の順序を順序情報として保存してもよい。
一方、ステップS616において差分が検出されなかった場合、ステップS618において、タイミング検出部410は、所定時間内で画像変化量がない状態が継続していることを検知する。具体的には、連続して変化がないと判定したカメラ画像のフレーム数をカウントし、所定の基準フレーム数と比較して、基準フレーム数を超えていれば所定時間変化がないと判定することができる。所定時間内で連続して変化がない場合、すべての原稿が完全に静止したと判定することができ、ステップS619へ進む。一方、所定時間内で変化が生じた場合には、ステップS622へ進み、所定時間での静止判定処理を繰り返す。なお、所定の基準フレーム数を増減させることにより、原稿を載置してから静止判定されるまでの時間を制御することが出来る。本実施形態では所定の基準フレーム数を大きめに設定した場合について説明する。上述のように、タイミング検出部410は、例えば図5(e)の状態において、図9(e)のフレーム差分2値画像を得ると、すべてのオブジェクトの静止を検知する。ここでは、所定のフレーム数を大きく設定しているため、ステップS618において所定時間内の静止を検知する前に、撮像処理部406は、図5(f)に示すように次の原稿が読み取り領域205に置かれ始める状態を撮像する。すると、タイミング検出部410は、ステップS616においてフレーム差分量を検出するため、再びステップS617へ進み、オブジェクトの静止判定処理を行う。そして、最終的に、全ての原稿を原稿台に載置し終えた図5(h)の状態が所定時間続いたタイミングをフレーム間の差分から検知し、続くステップS619の処理へ進むことになる。
ステップS619において、タイミング検出部410は、ステップS612で射影変換した読み取り領域カメラ画像と、データ管理部405によって保存されている図13(c)に示す最新静止画像1303との差分量を算出する。なお、今回撮像処理部406の開始後初めてステップS619を実行した場合は、ステップS604で保存した図13(b)に示すように読み取り領域背景画像との差分量を算出する。
ステップS620において、タイミング検出部410は、ステップS619で算出した差分量が所定の値(ここでの所定の値は0に近い)より大きいかどうかを判定する。これにより、読み取り領域撮影画像と保存されている最新静止画像1303との差分があるか否かを判定する。差分がない場合は、前回の状態から変化がないため、ステップS622へ進み、処理を繰り返す。一方、保存されている最新静止画像との差分がある場合にはステップS621へ進む。ステップS620において差分がある場合とは、現在の処理対象となるフレームが、一定期間静止している静止画像であり、かつ、それ以前の静止画像と対比すると変化が生じている画像である場合である。
ステップS621において、ステップS612で生成した読み取り領域撮影画像を画像認識部407へ送信する。そして、画像認識部407の原稿画像データ抽出部411は、この読み取り領域撮影画像を受信すると原稿画像データ抽出処理を行う。原稿画像データ抽出処理の詳細は図12を参照して後述する。抽出された原稿画像データは一定期間静止した静止画像の画像データである。
ステップS622において、タイミング検出部410は、データ管理部405を介して、状態管理テーブルを更新する。
図5(b)〜(h)の状態が撮像された場合の状態管理テーブルの状態を、それぞれ図10(b)〜(h)に示す。例えば、図5(b)では、図9(b)のようにフレーム差分2値画像による画像変化量が検知されていることから、図10(b)に示すようにオブジェクト801(=objID)のオブジェクト状態を移動中として記録することができる。さらには、背景差分2値画像による画像変化量が初めて所定値以上となったフレームであることから、フレームインという状態を記録することもできる。図5(d)では、後述する静止オブジェクト検知処理により、オブジェクト801の静止とオブジェクト802の移動状態をそれぞれ検知することから、図10(d)に示すようにそれらの状態がobjID801と802にそれぞれ記録される。また、静止したオブジェクトについては、オブジェクトの位置とサイズおよび、所定時間の静止をカウントするための静止フレーム数も併せて記録される。なお、ここでは、オブジェクト静止時に保存する位置およびサイズは、オブジェクトに外接する矩形の中心座標および幅/高さとした。なお、オブジェクトの位置およびサイズは、後述の原稿画像データ抽出時に特定できるような情報であればこれに限らず、外接円の中心座標と半径であったり、輪郭情報であったりしても構わない。もちろん、移動中のオブジェクトに対しても位置およびサイズ情報を保存しても構わない。図5(h)の状態では、図9(h)のフレーム差分2値画像及び図8(h)の背景差分2値画像ステップS616およびステップS618ですべてのオブジェクトの静止を検知することから、オブジェクト(objID)803の状態を静止状態に変更する(図示なし)。そして、所定時間の静止を検知すると原稿画像データの抽出処理を行い、図10(h)のように状態管理テーブル中のすべてのオブジェクト状態を原稿検出済みに変更する。
ステップS623において、メイン制御部402は、全原稿のスキャンが終了したかを判定する。スキャン終了判定は、ネットワークI/F306を介してホストコンピュータ102から送信されるスキャン終了命令や、LCDタッチパネル330から入力される終了命令、あるいはタイマー設定(図示せず)などにより行われるものとする。たとえばタイマーを用いる場合、タイマーはS622で静止画像を新たに保存した場合にスタートさせ、S623ではそれが満了していれば終了と判定する。スキャンを終了する場合にステップS624へ進み、出力ファイル生成処理を行った後、スキャン処理を終了する。スキャンを継続する場合にステップS611へ戻り、次のオブジェクトの検出および撮像を行う。
最後に、ステップS624において、出力ファイル作成部409は、ステップS621で抽出された複数の原稿画像データを、所定のファイル形式に変換して出力する。処理の詳細は図16を用いて後述する。
<静止オブジェクト検知処理(S617)>
続いて、図11を用いて、図6のステップS617における静止オブジェクト検知処理について詳細に説明する。図11のステップS1101からステップS1105にループ処理において、タイミング検出部410は、ステップS614で検出したN個のオブジェクトに対してそれぞれ静止判定処理を行う。ステップS1101、S1105は、ループの始端と終端とをそれぞれ示しており、ステップS1101は、そのループがオブジェクトi=0〜N−1について実行されることを示す。
続いて、図11を用いて、図6のステップS617における静止オブジェクト検知処理について詳細に説明する。図11のステップS1101からステップS1105にループ処理において、タイミング検出部410は、ステップS614で検出したN個のオブジェクトに対してそれぞれ静止判定処理を行う。ステップS1101、S1105は、ループの始端と終端とをそれぞれ示しており、ステップS1101は、そのループがオブジェクトi=0〜N−1について実行されることを示す。
ステップS1102において、タイミング検出部410は、ステップS615で生成したフレーム差分2値画像より、ステップS614で検出したi番目のオブジェクトにおけるフレーム差分量を算出する。静止したオブジェクトに関してはその位置や範囲が属性として記録されるので、移動中のオブジェクトは、処理対象の撮影画像内のオブジェクトのうちから、位置及び範囲が特定できる静止オブジェクトを除いたオブジェクトである。すなわち、移動中のオブジェクトは、当該オブジェクトのオブジェクトIDと関連では、それが撮影画像に含まれているという事実のみが状態管理テーブル(図10等参照)に記録されており、撮影画像中のオブジェクトとの紐付けはされていない。そして撮影画像中のオブジェクトは、それが静止して初めて、その位置や範囲を示す情報によってオブジェクトIDと関連付けられる。このため、本実施形態では、オブジェクトIDは、オブジェクトが静止した順序で付与される。
例えば、図5(d)の状態が撮影された場合、図8(d)に示す背景差分2値画像が得られ、その中より2つのオブジェクト801および802が検出される。また、図9(d)に示すフレーム差分2値画像が得られる。そして、この2枚を比較することで、オブジェクトごとのフレーム間の差分量を算出する。ここでは、オブジェクト801の領域においてフレーム差分量は検出されないことが分かる。一方、オブジェクト802の近傍領域において図9(d)に示す白画素領域904および905が検出される。これはオブジェクト802の移動前後における移動量を表している。ここでは、本ステップでのオブジェクト802に対するフレーム差分量なので、白画素領域904が検出されることになる。
ステップS1103において、タイミング検出部410は、ステップS1102で算出したi番目のオブジェクトに対するフレーム差分量があるか否かを判定する。図8(d)中のオブジェクト802のように、差分量が検出された場合には、そのオブジェクトは移動中のオブジェクトとして判定され、ステップS1105へ進む。移動中のオブジェクトの暫定位置を保存している場合には、その位置を最新のフレームにおける位置に更新する。一方、図8(d)中のオブジェクト801のように、差分量が検出されなかった場合には、ステップS1104へ進む。
ステップS1104において、タイミング検出部410は、ステップS1103において差分が検出されなかったオブジェクトを静止オブジェクトとして判定する。さらに、図6のステップS618と同様に、所定時間変化がないかを判定するために、静止フレーム数をカウントする。なお、本ステップで用いる静止判定のための所定値は、ステップS618で使用したものと異なるフレーム数を使用してもよい。
ステップS1105において、タイミング検出部410は、N個のオブジェクトに対しての静止判定処理が終了すると、図6のステップS622へ進み、データ管理部405を介して各オブジェクトの状態を更新する。
以上の通り、図6の手順によれば、最初に撮影画像内において静止した順序でオブジェクトに対してオブジェクトIDが付与される。なおIDとは別に、順序を示す情報を属性に持たせてもよい。
<原稿画像データ抽出処理(S621)>
続いて、図12〜図14を用いて、図6のステップS621における原稿画像データ抽出処理について詳細に説明する。図12は、画像認識部407の原稿画像データ抽出部411の処理フローを示す図である。図13は、データ管理部405が管理する静止画像および抽出原稿画像データの保存方法を示す模式図である。図14は、データ管理部405が管理する属性管理テーブルを示している。
続いて、図12〜図14を用いて、図6のステップS621における原稿画像データ抽出処理について詳細に説明する。図12は、画像認識部407の原稿画像データ抽出部411の処理フローを示す図である。図13は、データ管理部405が管理する静止画像および抽出原稿画像データの保存方法を示す模式図である。図14は、データ管理部405が管理する属性管理テーブルを示している。
図6のステップS621において送信された射影変換された読み取り領域カメラ画像を原稿画像データ抽出部411が静止画像として受信すると、図12に示すステップS1201が実行開始される。
ステップS1201からステップS1203のループ処理において、原稿画像データ抽出部411は、図6のステップS614で検出されたN個のオブジェクトより原稿画像データを抽出する処理を実行する。状態管理テーブルのオブジェクトi(i=0〜N−1)に順次着目して、S1202の処理を繰り返す。前述のようにオブジェクトIDはオブジェクトが静止した順序を示すものでもあるため、図12の手順では、原稿画像は静止した順序で抽出される。なお、画像内のオブジェクトの認識のために低解像度画像を用いた場合には、S1201に先立って、原稿画像の抽出のために利用する高解像度画像を改めて撮影するのが望ましい。その場合には、改めて撮影した高解像度画像がS1202における原稿画像データ抽出処理の対象の静止画像となる。また、属性管理テーブルに保存されたオブジェクトの位置や範囲については、低解像度画像と高解像度画像との解像度の比に応じて変換される。
ステップS1202において、原稿画像データ抽出部411は、静止画像1002からi番目のオブジェクト領域801より原稿画像データを抽出する。原稿画像データは、図6のステップS613で生成した背景差分2値画像よりエッジを検出し、それを矩形近似するなど既存の方法を用いて原稿枠を特定し、特定した原稿枠内から抽出すればよい。データ管理部405は、HDD305上に空のディレクトリ(図13(d)中の「/DOCDIR」)を作成し、抽出した原稿画像データを、通番管理されたファイル名とともに原稿画像データ1311として保存する。さらに、データ管理部405は、図14(a)に示すような文書属性と画像属性1401とを管理する属性管理テーブルを作成し、RAM303上に保存する。文書属性には原稿総数および原稿画像データの保存ディレクトリ名が保存される。また、画像属性には、原稿番号(Doc)、面情報、原稿幅/高さ、静止画像中の原稿位置、原稿画像データのファイル名などの情報が保存される。原稿位置は、原稿の左上頂点座標と回転角度の形式で保存しているが、4頂点座標を格納するなどでもよい。なお作成した属性管理テーブルには、本例では、原稿画像を抽出した順に原稿番号が付与されるものとする。したがって、原稿番号は当該原稿が静止した順、すなわち原稿台に載置された順序を示している。
ステップS1203において、原稿画像データ抽出部411はN個のオブジェクトに対する原稿画像抽出が終了するまで処理を繰り返す。ここでは、オブジェクト801〜803に対して原稿抽出処理を行い、図13(e)に示す原稿画像データ1311〜1313として保存される。また、RAM303上には図14(b)に示す、オブジェクト1〜3それぞれに対して画像属性1401〜1403が関連付けられた属性管理テーブルが作成され、保存される。
最後に、ステップS1204において、原稿画像データ抽出部411は、受信した静止画像を、データ管理部405を介してHDD305へ保存する。図13(b)に受信した静止画像を保存した時の模式図を示す。データ管理部405は、ステップS604で読み取り領域背景画像1301を保存したのと同じディレクトに、最新静止画像として静止画像1302を保存する。なお、2ページ目以降の処理においては、図13(c)に示すように、前回受信した静止画像1302を直前静止画像として保存し直し、今回受信した静止画像を最新静止画像1303として保存する。
<出力ファイル生成処理(S624)>
最後に図15〜図16を用いて、図6のステップS624における出力ファイル生成処理について詳細に説明する。ここでは、抽出された原稿画像データの順番に従って、マルチページドキュメント(たとえばマルチページPDFなどのマルチページファイル)に変換して出力する方法について説明する。なお保存形式はこれに限らず、ファイル名に連番を付与した個別ファイルとして出力するなどでも構わない。
最後に図15〜図16を用いて、図6のステップS624における出力ファイル生成処理について詳細に説明する。ここでは、抽出された原稿画像データの順番に従って、マルチページドキュメント(たとえばマルチページPDFなどのマルチページファイル)に変換して出力する方法について説明する。なお保存形式はこれに限らず、ファイル名に連番を付与した個別ファイルとして出力するなどでも構わない。
図15はマルチページドキュメントのフォーマットの一例としてXML形式のテキストファイルで記述した場合の例を示す。マルチページドキュメントは、出力ファイルの先頭に挿入されるヘッダ記述1501、抽出された原稿画像データをページ単位で記述するための電子文書ページ記述1502〜1504、そしてファイルの記述終了を示すフッタ記述1505で構成される。
図16に、マルチページドキュメントを出力する処理手順を示す。図16のステップS1601において、出力ファイル作成部409は、新規のマルチページドキュメントを生成するためのヘッダ記述1501を出力する。
ステップS1602において、出力ファイル作成部409は、図14(b)に示すRAM303上の属性管理テーブルより1枚目の画像属性情報1401を取得する。なお、本例では、属性管理テーブルには原稿が載置された順序で各原稿の属性のレコードが登録されるため、最初のレコードから順次処理することで、原稿が載置された順序で処理が進行することになる。ここで原稿番号を参照し、その順序で原稿画像を処理すれば、属性管理テーブルにおけるレコードの順序とは独立して、原稿が載置された順序で処理を行うことができる。
ステップS1603において、出力ファイル作成部409は、図13(e)に示すHDD305上より1枚目の原稿画像データ1311を取得する。
ステップS1604において、出力ファイル作成部409は、ステップS1603で読み出した原稿画像データ1311を電子文書ページ記述1202として記述する。この際、画像処理プロセッサ307上で、傾き補正・回転などの補正処理や、下地飛ばし・エッジ強調などの補正処理を行って原稿画像データを鮮鋭化しても構わない。
ステップS1605において、データ管理部405は、出力ファイルへの書き込みが終了したオリジナルの原稿画像データ1311をHDD305から削除する。
ステップS1606において、出力ファイル作成部409は、全原稿画像データの処理が終了したかを判定する。未処理の原稿画像データが残っている場合にはステップS1602に戻り、出力ファイル生成処理を続ける。すべての原稿画像データの処理が終了した場合にはステップS1607へ進む。
ステップS1607において、出力ファイル作成部409は、ファイルの終端を示すフッタ記述1205を出力し、出力ファイルを生成する。
以上の処理により、読み取り領域上に原稿が置かれた順番を検知することにより、自動的に原稿画像データの抽出順番を決定し、抽出した順番に従って原稿画像データを所定のフォーマットで保存することができるようになった。そのため、ユーザが原稿をページ順で順番に置いていくという単純操作により連続ページのスキャンをできることから操作性が向上し、処理パフォーマンスの向上にもつながる。
[第2の実施形態]
第1の実施形態では、撮像された画像から、読み取り領域上のオブジェクトの静止を個別に検出し、すべてのオブジェクトの静止が検出されると、静止した順番で原稿画像データを抽出して所定フォーマットで保存する仕組みを提供した。本実施形態では、原稿データ抽出後に、新たに原稿が置かれた場合に、新規原稿のみを検出するための仕組みを提供する。
第1の実施形態では、撮像された画像から、読み取り領域上のオブジェクトの静止を個別に検出し、すべてのオブジェクトの静止が検出されると、静止した順番で原稿画像データを抽出して所定フォーマットで保存する仕組みを提供した。本実施形態では、原稿データ抽出後に、新たに原稿が置かれた場合に、新規原稿のみを検出するための仕組みを提供する。
ここでは、図6のステップS618での所定時間の静止を判定する際の所定の基準フレーム数が少なかった場合について説明する。ここでは、詳細な説明は省略するが、図5に示す操作を行った際、図5(b)〜(e)の操作において、タイミング検出部410は、読み取り領域205上に2つのオブジェクトが挿入され、静止したことを検知する。そして、図5(f)に示す3枚目の原稿を挿入するまでの間に、図6のステップS618において、全オブジェクトの所定時間の静止が検知され、原稿画像データ抽出部411により原稿画像データ抽出処理が実行される。そして、ステップS622において、図10(e)に示す状態管理テーブル中のオブジェクト801と802の状態が、図17(a)に示すように静止から原稿抽出済みに更新されて保存される。
続いて、図5(f)に示す3枚目の原稿が挿入され、そのフレームが入力されると、フレーム差分2値画像及び背景差分2値画像から、ステップS617においてオブジェクト803領域のみの移動が検知され、図17(b)に示すように状態管理テーブルが更新される。そして、図5(h)ですべてのオブジェクトの静止が検知されると、原稿画像データ抽出処理を実行する。
図18に本実施形態における原稿画像データ抽出処理(ステップS621)の処理フローを示す。なお、第1の実施形態の図12と同じ処理については説明を省略する。
ステップS1201からステップS1203のループ処理において、原稿画像データ抽出部411は、図6のステップS614で検出されたN個のオブジェクトより、原稿画像データを抽出する処理を行う。
ステップS1801において、原稿画像データ抽出部411は、図17(c)に示すRAM303に保存された状態管理テーブルをもとにi番目のオブジェクトが原稿抽出済みか否かを判定する。ここでは3つのオブジェクト801〜803が検出されているが、オブジェクト801および802の状態は原稿抽出済みとなっていることから、ステップS1203へ進み、次のオブジェクトの抽出処理を行う。一方、オブジェクト803の状態は静止となっていることからステップS1202へ進み、原稿画像データの抽出を行う。
以上の処理により、原稿画像データ抽出後に、新しく原稿を置いた場合にも、追加された原稿画像データのみを抽出することが出来る。
[第3の実施形態]
本実施形態では、第2の実施形態で提供した原稿データ抽出後に、新たに原稿が置かれた場合に、新規原稿のみを検出するための仕組みの別形態を提供する。上述のように、図5に示す操作を行った際、図5(b)〜(e)の操作において、タイミング検出部410は、読み取り領域205上に2つのオブジェクトが挿入され、静止したことを検知する。そして、図5(f)に示す3枚目の原稿を挿入するまでの間に、図6のステップS618において、全オブジェクトの所定時間の静止が検知され、原稿画像データ抽出部411により図19に示す原稿画像データ抽出処理(ステップS621)が実行される。
本実施形態では、第2の実施形態で提供した原稿データ抽出後に、新たに原稿が置かれた場合に、新規原稿のみを検出するための仕組みの別形態を提供する。上述のように、図5に示す操作を行った際、図5(b)〜(e)の操作において、タイミング検出部410は、読み取り領域205上に2つのオブジェクトが挿入され、静止したことを検知する。そして、図5(f)に示す3枚目の原稿を挿入するまでの間に、図6のステップS618において、全オブジェクトの所定時間の静止が検知され、原稿画像データ抽出部411により図19に示す原稿画像データ抽出処理(ステップS621)が実行される。
本実施形態における原稿画像データ抽出処理を図19に示す。なお、第1〜3の実施形態と同じ処理については説明を省略する。図19のステップ1901において、すべての原稿画像データを抽出した後、データ管理部405を介して原稿画像データ抽出部411が受信した静止画像を、図13に示す読み取り背景画像1301として更新する。これにより、図5(f)に示す撮影画像が入力された場合、図6のステップS613では、図8(f)中の白画素領域803のみが検出されることになる。よって、ステップS614以降の処理では、新たに検出された1つのオブジェクト803のみに注目して処理を行うことができる。
以上の処理により、原稿画像データ抽出後に、新しく原稿を置いた場合にも、追加された原稿画像データのみを抽出することが出来る。
[第4の実施形態]
本実施形態では、新たに読み取り領域205上にフレームインしたオブジェクトが、すでに静止検知されたオブジェクト上を通過する際に、オブジェクト検出数を誤検出してしまうことを防止するための仕組みを提供する。
本実施形態では、新たに読み取り領域205上にフレームインしたオブジェクトが、すでに静止検知されたオブジェクト上を通過する際に、オブジェクト検出数を誤検出してしまうことを防止するための仕組みを提供する。
図20を用いて、本実施形態の処理について説明する。図20は新たに読み取り領域205上にフレームインしたオブジェクトが、すでに静止検知されたオブジェクト上を通過するような操作手順および処理結果を表している。
図20(a)〜(c)に示す操作は、図5(f)〜(g)での操作中に起こりうる状態を図示したものである。すなわち、図20(a)に示すように新たな原稿503を挿入し、図20(c)に示すように原稿を配置するような操作を行う際に、図20(b)に示すように他の原稿501上を通過するような操作方法を示している。また、図20(d)〜(g)は、図6のステップS613で生成される背景差分2値画像を示している。
第1〜3の実施形態における図6のステップ613で生成される背景差分2値画像は図20(e)となる。この時ステップS614では、すでに静止が検知されたオブジェクト801と、新たに追加されたオブジェクト803が1つのオブジェクトとして認識されてしまう。これにより、フレーム差分量は1つのオブジェクトと認識された領域から検出されることになり、オブジェクト全体が移動中として認識されてしまうことになる。
そこで、本実施形態では、図6のステップS613において、タイミング検出410は、背景差分2値画像を生成する際に、すでに静止を検知しているオブジェクトと新たに検出されたオブジェクトを分離した背景差分2値画像を生成する。すなわち、静止検知されたオブジェクト801の位置は図10(f)に示すようにRAM303中の状態管理テーブルに記録されているため、生成された背景差分2値画像をオブジェクト801の輪郭情報を用いて分割する。これにより図20(f)に示すように、2つのオブジェクトが交差した場合においても、継続して2つのオブジェクトとして検知することが可能となる。
以上の処理により、新たに読み取り領域205上にフレームインしたオブジェクトが、すでに静止検知されたオブジェクト上を通過する際に、オブジェクト検出数を誤検出してしまい、静止判定が正しく機能しなくなってしまうことを防止することができる。
[第5の実施形態]
本実施形態では、読み取り領域205上に置かれている原稿上に、別の原稿を重ねて置かれた場合に、正しく原稿が抽出できなくなることを回避するための仕組みを提供する。
本実施形態では、読み取り領域205上に置かれている原稿上に、別の原稿を重ねて置かれた場合に、正しく原稿が抽出できなくなることを回避するための仕組みを提供する。
図21に本実施形態における静止オブジェクト検知処理(ステップS617)の一例を示す。なお、第1〜4の実施形態と同じ処理については説明を省略する。図21のステップS1103において、タイミング検出部410は、前フレームとの差分量を用いてオブジェクトごとの静止状態を検知する。
ステップS2101において、タイミング検出部410は、差分量がないと判定されたオブジェクトに対して、他のオブジェクトとの重なりがあるか否かを判定する。他のオブジェクトとの重なりがないと判定された場合においては、ステップS1104において静止状態を保存する。一方、他のオブジェクトとの重なりが検出された場合には、ステップS2102へ進む。
ステップS2102において、タイミング検出部410は、データ管理部405を介して、i番目のオブジェクトに対するRAM303上の状態管理テーブルのオブジェクト状態を「原稿重なりあり」として保存する。このとき、メイン制御部402は、操作表示部403に対して、原稿重なりがあるというエラー表示を出力して、ユーザに原稿の移動を促すことができる。
以上の処理により、静止が検知されたオブジェクトの上に、新しく挿入されたオブジェクトが重なった場合においても、オブジェクトの重なり状態を検知してユーザに警告することで、原稿の抽出に失敗する状況を回避することが出来る。
[第6の実施形態]
本実施形態では、撮像後の原稿を移動させたり、原稿を取り除いたりする操作や、両面原稿の場合に原稿を裏返す操作を可能にするための仕組みを提供する。
本実施形態では、撮像後の原稿を移動させたり、原稿を取り除いたりする操作や、両面原稿の場合に原稿を裏返す操作を可能にするための仕組みを提供する。
図22と図23を用いて、本実施形態の処理について説明する。図22(a)〜(d)は、原稿抽出処理が行われた後の2枚の原稿2201と2202に対して原稿裏返し操作と原稿除去操作を行った時に、読み取り領域205上の様子をカメラで撮像した時の様子を示している。なお、図22(a)は、第2の実施形態における図5(e)の状態の直後のカメラ画像を表しており、RAM303上の状態管理テーブルは図17(a)となっているものとする。図22(e)〜(h)および図22(i)〜(l)は、それぞれ図22(a)〜(d)の操作を行った際の背景差分2値画像とフレーム差分2値画像を表している。
図23は、本実施形態における静止オブジェクト検出処理(ステップS617)の処理フローである。なお、第1〜5の実施形態と同じ処理については説明を省略する。図23のステップS1102において、タイミング検出部410は、背景差分2値画像より検出された個々のオブジェクトに対して、フレーム差分量を算出する。ステップS1103において、タイミング検出部410は、ステップS1102で算出したフレーム差分量が所定値以下であるか否かを判定する。フレーム差分量がない(所定値以下である)と判定された場合にはステップS2301へ進む。一方、フレーム差分があると判定された場合には、ステップS1105へ進み、次のオブジェクトの静止検知処理を行う。
ステップS2301において、タイミング検出部410は、オブジェクトがフレームアウトしたか否かを検知する。オブジェクトのフレームアウトは、フレーム差分量が直前のフレームより減少し、かつ、背景差分2値画像中のi番目のオブジェクトに対する差分量が所定値以下であるかどうかで判定することができる。オブジェクトがフレームアウトしていないと判定された場合はステップS2101へ進む。フレームアウトしたと判定された場合にはステップS2304へ進む。
ステップS2101において、タイミング検出部410は、他のオブジェクトとの重なりがあるかを判定する。
ステップS2302において、タイミング検出部410は、RAM303に保存された状態管理テーブルより、i番目のオブジェクトの状態を取得する。そして、オブジェクト状態が原稿抽出済みである場合にはステップS2303へ進む。一方、オブジェクト状態が原稿抽出済みでない(移動中や静止など)場合はステップS1104へ進む。
ステップS2303において、タイミング検出部410は、原稿抽出されたオブジェクトが移動し、再び静止したことから、このオブジェクト中に含まれている原稿が裏返されたものと判定し、裏面静止状態として検知する。
ステップS1104において、タイミング検出部410は、原稿が未抽出のオブジェクトが静止した場合には、表面静止状態して検知する。
ステップS2301においてオブジェクトがフレームアウトしたと判定されたことを受け、ステップS2304において、タイミング検出部410は、オブジェクトの除去を検知する。そして、RAM303上の状態管理テーブルにi番目のオブジェクトに該当するデータが存在していた場合には、データ管理部305を経由して該当データを削除する。
例えば、図22(a)および(b)では、オブジェクト2201と2202が検知され、それぞれのオブジェクトからフレーム差分量が検出されるため、オブジェクトの状態を移動中&原稿抽出済みであると判定される。そして、図22(c)では、ステップS2301においてオブジェクト2202に対する背景差分量が所定値以下であると判定され、フレームアウトしている状態であると判定される。そして、ステップS2304において、オブジェクトが除去されたと判定され、RAM303上の状態管理テーブル上から該当するデータが削除される。最後に、図22(d)では、ステップS1103において、オブジェクトの移動がなくなったことを検知する。そしてステップS2302において、原稿抽出済みのオブジェクトであると検知することから、ステップS2303へ進み、裏面静止状態して判定されることになる。
その後、図6のステップS621において、原稿画像データが表面と裏面と区別されて抽出される。なお、原稿抽出時に、裏面静止状態として記録されていたオブジェクトについては、RAM303上に保存された画像属性の原稿番号(Doc)と面情報に、対応する原稿番号と裏面という情報をそれぞれ保存する。
最後にステップS624において対応する原稿の表面と裏面が順番に並ぶようにして出力ファイルが生成される。すなわち、1ページ目表面、1ページ目裏面、2ページ目表面の順番でページが生成される。
以上の処理により、原稿を取り除くことで1枚の原稿のスキャンを終了し、両面原稿を裏返すといった操作により、原稿の裏面をスキャンするといったことが自動で行えることから操作性が向上する。また、複数の原稿を同時にスキャンした場合に対しても、表面原稿と裏面原稿が順番に並ぶようにファイルが生成できることから、利便性も向上することになる。
[第7の実施形態]
第6の実施形態では、原稿抽出されたオブジェクトが移動した後に静止した場合に、原稿の裏返し操作として両面原稿と判定を行っていた。本実施形態では、原稿抽出後のオブジェクトの場所を単純に移動した操作を行った場合に、誤って両面原稿として認識されることを防止する仕組みを提供する。
第6の実施形態では、原稿抽出されたオブジェクトが移動した後に静止した場合に、原稿の裏返し操作として両面原稿と判定を行っていた。本実施形態では、原稿抽出後のオブジェクトの場所を単純に移動した操作を行った場合に、誤って両面原稿として認識されることを防止する仕組みを提供する。
本実施形態では、ステップS2302において、原稿抽出済みであると判定されたオブジェクトに対して、原稿チェックを行う。原稿のチェックとは、直前に抽出された原稿との画像のマッチングをとり、同一原稿であるか否かを判定する。もし、同一原稿であると判定された場合には、単純に移動しただけと判断することが出来るので、ステップS521の原稿画像データ抽出処理において、ふたたび原稿画像データを抽出することがなくなる。あるいは、ここで抽出した原稿で上書きすることができる。
さらには、原稿チェックにおいて、白紙チェックをおこなうことで、白紙原稿が抽出されて出力されることを防止することも可能になる。
以上の処理により、原稿抽出が行われたオブジェクトに対して操作した際、単純に場所が移動しただけなのか、裏返し操作が行われたのかを自動で判別することができる。また、画像のチェックを行うことにより、同一原稿の抽出のみならず、白紙原稿の抽出を防止することも可能になる。
[第8の実施形態]
第1〜7の実施形態では、読み取り領域205上に原稿を置いた順番を検知してページ順番を検知していた。本実施形態では、読み取り領域205上から原稿を取り除いたことを検知して、ページ順番を決定する仕組みを提供する。
第1〜7の実施形態では、読み取り領域205上に原稿を置いた順番を検知してページ順番を検知していた。本実施形態では、読み取り領域205上から原稿を取り除いたことを検知して、ページ順番を決定する仕組みを提供する。
本実施系のタイミング検出部410は、図23のステップS2301において、i番目のオブジェクトの除去を検知する。そして、ステップS2304において、タイミング検出部410は、オブジェクトの除去された順番をページ順番として認識する。そして、データ管理部405を介して、RAM303上に保存された図14に示す属性管理テーブル中の原稿番号(Doc)にページ順番を記録する。
その後、図6のステップS624において、出力ファイルを生成する際には、ステップS2304において、原稿フレームアウト時に記録された属性管理テーブル中の原稿番号順にページを並び替えて出力する。
なお、第6の実施形態のように、両面原稿を取り扱う場合には、オブジェクトの静止検知処理の際に、両面対応するオブジェクトを関連付けしておき、フレームアウト検出時にまとめてオブジェクト番号を付与する。これにより、表面と裏面原稿が連続して指定のページ位置に挿入することが出来るようになる。
以上の処理により、読み取り領域205上からオブジェクトがフレームアウトしたことを検知することで、原稿を除去した順番でページ順番を自動で決定することが出来る。これにより、ユーザは複数の原稿をスキャンする際に、読み取り領域205上に原稿を乱雑に並べ、置かれた原稿を見ながら順番に原稿を回収すればよくなる。したがって、スキャン前に原稿を並び替える操作が不要になることからも、操作性を大きく向上させることが出来るようになる。
[第9の実施形態]
第1〜7の実施形態では原稿を置いた順番でページ順番を決定し、第8の実施形態では原稿を除去した順番でページ順番を決定していた。本実施形態では、ページ順番を決める際に、原稿を置いた順番あるいは原稿を除去した順番で決定するかを切り替えて選択できる仕組み提供する。さらには、ページの並び順を昇順あるいは降順に切り替えることも可能な仕組みを提供する。
第1〜7の実施形態では原稿を置いた順番でページ順番を決定し、第8の実施形態では原稿を除去した順番でページ順番を決定していた。本実施形態では、ページ順番を決める際に、原稿を置いた順番あるいは原稿を除去した順番で決定するかを切り替えて選択できる仕組み提供する。さらには、ページの並び順を昇順あるいは降順に切り替えることも可能な仕組みを提供する。
図24に本実施形態におけるページ順番決定方法を指定するユーザインタフェース(以下、ページ順設定UIとよぶ)の一例を示す。ユーザは、本システムを使用する際に、図24に示すようなページ順設定UI2401を操作することにより、ページ順決定のタイミングおよび、ページ並び順を決定する。ここでは一例として、ページ順決定のタイミングは「載置時」と「除去時」とし、ページ並び順は「ページ順」と「ページ逆順」であるため、ボタン2402〜2405の中からユーザが任意の組み合わせの設定を選択する。例えば、ボタン2403「載置時 ページ逆順」の設定を選択すると、最初に読み取り領域205上に置いた原稿が最終ページになり、最後に読み取り領域205上に置いた原稿が先頭ページとなるように検知され、出力される。そして、ボタン2406を押下することで設定内容の決定をし、ボタン2407を押下することで設定をキャンセルする。
以上のように、ページ順番の決定方法を事前に選択するようなページ順設定UIを提供することにより、ページ順決定のタイミングや並び順を切り替えて使用することが出来るようになるため、ユーザによる原稿操作が柔軟になり、利便性が向上する。
[その他の実施形態]
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (11)
- 原稿が載置された読み取り領域を撮像することによって画像データを取得する取得手段と、
前記読み取り領域に対する原稿の位置イベントを検出する検出手段と、
前記検出手段で検出した位置イベントに基づき、前記原稿の順序を判定する判定手段と
を備えることを特徴とする画像処理装置。 - 前記位置イベントは、前記読み取り領域内における各原稿の静止、および、前記読み取られる領域内のすべての原稿の静止を含み、
前記取得手段は、すべての原稿の静止を検出したタイミングに基づき前記原稿を撮像して前記画像データを取得し、
前記判定手段は、各原稿の静止を検出した順序に応じて、各原稿の順序を判定することを特徴とする請求項1に記載の画像処理装置。 - 前記位置イベントは、前記読み取り領域からの原稿のフレームアウト、および、前記読み取り領域内のすべての原稿の静止を含み、
前記取得手段は、すべての原稿の静止を検出したタイミングに基づき前記原稿を撮像して前記画像データを取得し、
前記判定手段は、各原稿のフレームアウトを検出した場合に原稿の順序を判定することを特徴とする請求項1に記載の画像処理装置。 - 前記位置イベントは、前記読み取り領域内における各原稿の静止、前記読み取り領域からの原稿のフレームアウト、および、前記読み取り領域内におけるすべての原稿の静止を含み、
前記取得手段は、すべての原稿の静止を検出したタイミングに基づき前記原稿を撮像して前記画像データを取得し、
前記判定手段は、原稿のフレームアウトを検出した後に原稿の静止を検出した場合に、原稿の順序を判定するとともに、静止が検出された原稿を新たな原稿の表面として判定し、原稿のフレームアウトを検出せずに原稿の静止を検出した場合に、静止が検出された原稿を両面原稿の裏面と判定することを特徴とする請求項1に記載の画像処理装置。 - 前記判定手段は、原稿の静止を検出した後に、静止が検出された前記原稿上に異なる原稿の静止を検出した際に、原稿の重なりを検出し、警告を発することを特徴とする請求項1に記載の画像処理装置
- 前記順序が判定された原稿の画像データから所定のデータ出力形式で出力ファイルを作成する作成手段をさらに備えることを特徴とする請求項2から5のいずれか一項に記載の画像処理装置。
- 前記作成手段における前記所定のデータ出力形式は、順序が判定された原稿を、出力の順番に並び替えて1つのマルチページファイルとして出力する形式、及び原稿ごとの個別ファイルで出力する形式のうち少なくとも一つを含むことを特徴とする請求項6に記載の画像処理装置。
- 前記作成手段は、前記取得手段で取得した原稿の画像データが白紙であるかを判定し、白紙でない場合に前記原稿の画像データを出力ファイルとして作成し、白紙である場合に前記原稿の画像データを削除することを特徴とする請求項6に記載の画像処理装置。
- 前記判定手段は、前記取得手段で取得した原稿の画像データが直前に検出された原稿の画像データと同一原稿であるかを判定し、前記作成手段は、同一原稿でない場合に前記原稿の画像データを出力ファイルとして作成し、同一原稿である場合に前記原稿の画像データを削除することを特徴とする請求項6に記載の画像処理装置。
- コンピュータを請求項1から9のいずれか一項に記載の画像処理装置として機能させるためのプログラム。
- 原稿が載置された読み取り領域を撮像することによって画像データを取得する取得工程と、
前記読み取り領域に対する原稿の位置イベントを検出する検出工程と、
前記検出工程で検出した位置イベントに基づき、前記原稿の順序を判定する判定工程と
を有することを特徴とする画像処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013094635A JP2014216953A (ja) | 2013-04-26 | 2013-04-26 | 画像処理装置および画像処理方法、コンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013094635A JP2014216953A (ja) | 2013-04-26 | 2013-04-26 | 画像処理装置および画像処理方法、コンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014216953A true JP2014216953A (ja) | 2014-11-17 |
Family
ID=51942261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013094635A Pending JP2014216953A (ja) | 2013-04-26 | 2013-04-26 | 画像処理装置および画像処理方法、コンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014216953A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017199103A (ja) * | 2016-04-26 | 2017-11-02 | 京セラドキュメントソリューションズ株式会社 | 画像処理システム、画像処理装置、画像処理方法 |
CN107979709A (zh) * | 2016-10-24 | 2018-05-01 | 佳能株式会社 | 图像处理装置、系统、控制方法和计算机可读介质 |
-
2013
- 2013-04-26 JP JP2013094635A patent/JP2014216953A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017199103A (ja) * | 2016-04-26 | 2017-11-02 | 京セラドキュメントソリューションズ株式会社 | 画像処理システム、画像処理装置、画像処理方法 |
CN107317947A (zh) * | 2016-04-26 | 2017-11-03 | 京瓷办公信息系统株式会社 | 图像处理系统、图像处理装置以及图像处理方法 |
CN107979709A (zh) * | 2016-10-24 | 2018-05-01 | 佳能株式会社 | 图像处理装置、系统、控制方法和计算机可读介质 |
JP2018074180A (ja) * | 2016-10-24 | 2018-05-10 | キヤノン株式会社 | 画像処理装置、画像処理システム、画像処理装置の制御方法、及びプログラム |
CN107979709B (zh) * | 2016-10-24 | 2021-07-27 | 佳能株式会社 | 图像处理装置、系统、控制方法和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4341629B2 (ja) | 撮像装置、画像処理方法及びプログラム | |
JP4918171B1 (ja) | 画像処理装置およびこれを備えた原稿読取システム | |
JP4548144B2 (ja) | デジタルカメラ装置、及びスルー画像表示方法 | |
JP2011211696A (ja) | 画像データ処理システム、画像データ処理プログラム、及び画像データ処理装置 | |
CN103019537A (zh) | 一种图像预览方法及装置 | |
US9781291B2 (en) | Image processing apparatus, controlling method thereof, and program | |
JP2017120503A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP6448183B2 (ja) | 情報処理装置及びその制御方法、並びにプログラム | |
JP2015170907A (ja) | スキャナシステム、スキャナシステムのデータ処理方法、及びプログラム | |
CN1336616A (zh) | 图像扫描仪的缩放比例控制 | |
JP2014216953A (ja) | 画像処理装置および画像処理方法、コンピュータプログラム | |
JP6049345B2 (ja) | 画像処理装置、方法およびプログラム | |
JP6277752B2 (ja) | 画像形成装置、画像処理方法及びプログラム | |
JP2006072506A (ja) | 写真処理装置 | |
JP2014220772A (ja) | 画像処理装置及びその制御方法とプログラム | |
JP2014121048A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2014171023A (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP2014222855A (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP4989590B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP6624861B2 (ja) | 画像処理装置、制御方法およびプログラム | |
JPH09322059A (ja) | 画像合成装置及び撮像装置 | |
JP5257124B2 (ja) | デジタルカメラおよび画像処理プログラム | |
TW515195B (en) | Document reading apparatus and method | |
JP2007148612A (ja) | 撮影装置、画像処理方法および画像処理プログラム | |
JP2021125769A (ja) | 画像処理装置、画像処理方法、およびプログラム |