(57)【要約】【課題】原稿のスキャン画像から、ユーザの負担を低減した上で、高精度に原稿に対応する領域を切り出す。【解決手段】本発明の画像処理装置は、原稿を読み取り、スキャン画像を生成する読取手段と、スキャン画像の構成画素の分布を解析し、文書構成要素に基づいてスキャン画像を分割する分割手段と、分割手段により分割された領域のうち、所定の領域の傾きを導出する導出手段と、導出された所定の領域の傾きに基づいて、所定の領域を所定の領域グループに分類する分類手段と、所定の領域グループに含まれる所定の領域を包含する外接矩形を設定する設定手段と、外接矩形から外側に向かって、スキャン画像において特徴量が変化する領域を、原稿領域として特定する特定手段と、特定された原稿領域を原稿画像として切り出す切り出し手段とを備える。【選択図】図６
2020184207.tif 000002
【特許請求の範囲】
【請求項１】
原稿を読み取り、スキャン画像を生成する読取手段と、
前記スキャン画像の構成画素の分布を解析し、文書構成要素に基づいて前記スキャン画像を分割する分割手段と、
前記分割手段により分割された領域のうち、所定の領域の傾きを導出する導出手段と、
前記導出された所定の領域の傾きに基づいて、前記所定の領域を所定の領域グループに分類する分類手段と、
前記所定の領域グループに含まれる前記所定の領域を包含する外接矩形を設定する設定手段と、
前記外接矩形から外側に向かって、前記スキャン画像において特徴量が変化する領域を、原稿領域として特定する特定手段と、
前記特定された原稿領域を原稿画像として切り出す切り出し手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記読取手段は、当該読取手段の原稿台に載置された複数の原稿を読み取ることができ、
前記特定手段は、前記読取手段により生成されたスキャン画像から複数の原稿領域を特定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記特定手段は、
前記スキャン画像から検出可能な直線を検出し、当該検出された直線のうち、前記外接矩形と交差しない直線を直線候補として設定し、
前記直線候補のうち、前記外接矩形を構成する辺と平行であって、かつ、前記外接矩形からより近い直線候補を、前記外接矩形を構成する辺の各々に対応するように４本の直線として検出し、
さらに、当該４本の直線により囲まれる領域を前記原稿領域として特定することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記特定手段は、前記４本の直線の一部又は全てを検出することができなかった場合、当該検出することのできなかった直線を、当該検出することのできなかった直線に対応する前記外接矩形を構成する辺で代替することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記所定の領域は、文字列領域であり、
前記導出手段は、前記所定の領域の傾きとして、前記文字列領域の進行方向を導出することを特徴とする請求項１から４のいずれか１項に記載の画像処理装置。
【請求項６】
前記所定の領域グループは、同じ傾きと見做される文字列領域のグループであり、
前記分類手段は、１つの文字列領域のグループに含まれる文字列領域が、所定の距離以内で互いに隣接し合っていることを条件に、同じ文字列領域のグループとして分類することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記切り出し手段により切り出された原稿画像を記憶する記憶手段をさらに備えることを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
前記記憶された原稿画像の傾き及び方向を補正する補正手段をさらに備え、
前記補正手段は、前記原稿画像において、文字が正立し、前記文字の進行方向が水平になるように、前記原稿画像を補正することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記補正された原稿画像に対して、文字認識を行い、当該文字認識の結果に基づいて検索された前記原稿の項目名と所定の値を、メタデータとして抽出する抽出手段をさらに備え、
前記抽出手段は、前記記憶手段に前記メタデータを前記原稿画像に対応付けて記憶することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記原稿画像に対応付けられた前記メタデータが所定の判定条件を充足するか否かを判定する判定手段をさらに備え、
前記判定手段により所定の判定条件を充足しないことを条件に、前記特定手段による前記原稿領域の特定を再度、実行することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記判定手段は、前記メタデータに含まれる項目名の数が所定の上限数を超えているか否かを前記所定の判定条件として判定することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
原稿を読み取り、スキャン画像を生成する読取ステップと、
前記スキャン画像の構成画素の分布を解析し、文書構成要素に基づいて前記スキャン画像を分割する分割ステップと、
前記分割ステップにおいて分割された領域のうち、所定の領域の傾きを導出する導出ステップと、
前記導出された所定の領域の傾きに基づいて、前記所定の領域を所定の領域グループに分類する分類ステップと、
前記所定の領域グループに含まれる前記所定の領域を包含する外接矩形を設定する設定ステップと、
前記外接矩形から外側に向かって、前記スキャン画像において特徴量が変化する領域を、原稿領域として特定する特定ステップと、
前記特定された原稿領域を原稿画像として切り出す切り出しステップと
を含むことを特徴とする画像処理方法。
【請求項１３】
請求項１２に記載の画像処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿のスキャン画像から、当該原稿に対応する領域を切り出す技術に関する。
【背景技術】
【０００２】
従来、非定型サイズの領収書、レシート、名刺、カード等の原稿をスキャナの原稿台上に複数枚、並べて載置し、それらを纏めて読み取り、それにより生成されたスキャン画像から各原稿の画像を切り出すマルチクロップ処理が知られている。
【０００３】
但し、現行のマルチクロップ処理では、処理対象とする画像の背景色が黒色であることが前提とされる。そのため、スキャナの原稿台カバーを閉じた状態で、レシート、名刺等、白い用紙に文字や画像が印刷された原稿を読み取り、それにより生成されたスキャン画像に対してマルチクロップ処理を実行しても、その原稿の縁を検出できないことがある。そこで、このような不具合を解消するための方法、即ち、その原稿の縁を検出しやすくする方法が開示されている。
【０００４】
特許文献１では、原稿を原稿台に載置した後に、黒いシートで覆った状態で、スキャナの原稿台カバーを閉じて、原稿の読み取りを実行することで、原稿以外の領域を黒くなるようにして、原稿の縁を検出しやすくする方法が開示されている。また、特許文献２では、原稿台カバーを開けた状態で、原稿の読み取りを実行することで、原稿が載置されていない箇所が黒く出力されるようにすることで、原稿の縁を検出しやすくする方法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−３３８９２０号公報
【特許文献２】特開２０１７−１０３５９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された方法では、ユーザが原稿を黒いシートで覆わなければならず、ユーザに手間（負担）がかかることになる。また、特許文献２に開示された方法では、原稿台カバーを開けた状態で原稿の読み取りを実行するため、環境光(室内の照明等)の影響を受けることになり、スキャン画像の画質が劣化するという問題がある。加えて、特許文献２に開示された方法では、原稿台カバーの重みにより原稿を抑えることができないため、原稿が原稿台から若干、浮いてしまうことになり、それによりスキャン画像に歪みが発生することになる。
【０００７】
本発明は、前記従来の問題に鑑みてなされたものであって、原稿のスキャン画像から、ユーザの負担を低減した上で、高精度に原稿に対応する領域を切り出すことを目的とする。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、原稿を読み取り、スキャン画像を生成する読取手段と、前記スキャン画像の構成画素の分布を解析し、文書構成要素に基づいて前記スキャン画像を分割する分割手段と、前記分割手段により分割された領域のうち、所定の領域の傾きを導出する導出手段と、前記導出された所定の領域の傾きに基づいて、前記所定の領域を所定の領域グループに分類する分類手段と、前記所定の領域グループに含まれる前記所定の領域を包含する外接矩形を設定する設定手段と、前記外接矩形から外側に向かって、前記スキャン画像において特徴量が変化する領域を、原稿領域として特定する特定手段と、前記特定された原稿領域を原稿画像として切り出す切り出し手段とを備える。
【発明の効果】
【０００９】
本発明によれば、原稿のスキャン画像から、ユーザの負担を低減した上で、高精度に原稿に対応する領域を切り出すことができる。
【図面の簡単な説明】
【００１０】
【図１】システムの全体構成を示す図である。
【図２】画像処理装置のハードウェア構成を示す図である。
【図３】画像処理装置の処理シーケンスを示す図である。
【図４】表示・操作部に表示されるＵＩを示す図である。
【図５】原稿が原稿台に載置された状態を示す図である。
【図６】マルチクロップ・メタデータ抽出処理の詳細を示したフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１２】
（システム構成）
図１は、本実施形態に係るシステムの全体構成を示す図である。図１に示されるように、画像処理装置１００は、ＰＣ又はサーバ等の外部装置（情報処理装置）１０１及びモバイル端末１０３と相互に通信可能なように、インターネット１０５に接続される。外部装置１０１は、イーサネット（登録商標）や無線ＬＡＮ（Local Area Network）等のＬＡＮ１０４に接続され、さらにインターネット１０５に接続される。モバイル端末１０３は、公衆無線通信網１０２等からインターネット１０５に接続される。なお、上述の構成において、外部装置１０１とモバイル端末１０３に関して、いずれか一方で構成してもよく、また、画像処理装置１００に外部装置１０１やモバイル端末１０３の機能を包含させて、画像処理装置１００のみで構成してもよい。
【００１３】
画像処理装置１００は、操作部、スキャナ部、及びプリンタ部を有する複写複合機である。本実施形態において、画像処理装置１００は、複数枚の名刺、免許証、ハガキ、領収書、レシート等の原稿を読み取るスキャン端末として利用される。また、画像処理装置１００は、原稿を読み取ることで取得されたスキャン画像から原稿毎に原稿画像を抽出するマルチクロップ処理を実行する。さらに、画像処理装置１００は、抽出した原稿画像に対してＯＣＲ（Optical Character Recognition）処理等を実行し、再利用可能なメタデータを生成する。
【００１４】
なお、本実施形態では、スキャン対象画像を、複数枚のレシートを同時にスキャンした画像として、また、メタデータを、各原稿画像（レシート画像）内の合計金額、発行日付、及び発行店舗の電話番号として説明する。さらに、画像処理装置１００は、エラー通知や指示通知等を表示するための表示部と、スキャン操作や設定操作等の操作を行うための操作部を有する。操作部は、タッチパネルやハードボタン等である。
【００１５】
外部装置１０１は、画像処理装置１００において生成された原稿画像及びメタデータ等を表示、保存する。なお、画像処理装置１００において実行されるマルチクロップ処理やメタデータの生成処理を外部装置１０１で実行してもよい。また、外部装置１０１は、クラウドやサーバ等の外部ストレージとの通信も可能で、保存した原稿画像やメタデータを外部ストレージに送信することができる。
【００１６】
（画像処理装置１００のハードウェア構成）
図２は、画像処理装置１００のハードウェア構成を示す図である。画像処理装置１００は、図２に示されるように、制御部１１０、スキャナ部１２０、及び表示・操作部１２１を備える。
【００１７】
制御部１１０は、画像処理装置１００全体の動作を制御する。制御部１１０は、ＣＰＵ１１１、記憶装置１１２、ネットワークインタフェース（Ｉ／Ｆ）部１１３、スキャナＩ／Ｆ部１１４、表示・操作部Ｉ／Ｆ部１１５を有し、また、これらは、システムバス１１６を介して、互いに通信可能に接続される。
【００１８】
ＣＰＵ（Central Processing Unit）１１１は、記憶装置１１２に記憶された制御プログラムを読み出して、読取制御や送信制御等の各種制御を実行する。記憶装置１１２は、上述の制御プログラム、画像、メタデータ、設定データ、及び処理結果データ等を記憶する。記憶装置１１２は、不揮発性メモリであるＲＯＭ１１７、揮発性メモリであるＲＡＭ１１８、及び大容量記憶領域であるＨＤＤ１１９を有する。
【００１９】
ＲＯＭ（Read Only Memory）１１７は、制御プログラム等を記憶する記憶領域として用いられる。ＣＰＵ１１１は、ＲＯＭ１１７に記憶された制御プログラムを読み出し、その制御プログラムを実行することで、画像処理装置１００を制御する。ＲＡＭ（Random Access Memory）１１８は、ＣＰＵ１１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ（Hard Disk Drive）１１９は、画像、メタデータ等を記憶する大容量記憶領域として用いられる。
【００２０】
ネットワークＩ／Ｆ部１１３は、制御部１１０（つまりは、画像処理装置１００）をＬＡＮ（Local Area Network）１０４に接続するインタフェースである。ネットワークＩ／Ｆ部１１３は、外部装置１０１やモバイル端末１０３等のＬＡＮ１０４に接続された外部装置に画像を送信したり、ＬＡＮ１０４に接続された外部装置から各種情報を受信したりする。
【００２１】
スキャナＩ／Ｆ部１１４は、スキャナ部１２０と制御部１１０を接続するインタフェースである。スキャナ部１２０は、原稿台に載置された画像を読み取ることでスキャン画像を生成し、その生成したスキャン画像をスキャナＩ／Ｆ部１１４を介して制御部１１０に入力する。
【００２２】
表示・操作部Ｉ／Ｆ部１１５は、表示・操作部１２１と制御部１１０を接続するインタフェースである。表示・操作部１２１には、テンキー、スタートボタン、キャンセルボタン等のハードキーやタッチパネル機能を有する液晶表示部が備えられている。ここで、スタートボタンは、コピーやスキャンの処理を開始させるためのボタンであり、また、キャンセルボタンは、画像処理装置１００が実行中の処理を一時停止、又は中止するためのボタンである。
【００２３】
その他、画像処理装置１００には、プリンタ部等も備えるものがあるが、本実施形態ではプリンタ部等を用いないため、ここでは省略する。以上のように、本実施形態に係る画像処理装置１００では、上述のハードウェア構成によって、画像処理機能を提供することができる。
【００２４】
（「スキャンして送信」機能の処理の手順）
次に、図３を用いて、マルチクロップ処理を実行するためのシーケンスについて説明する。なお、ここでのマルチクロップ処理は、画像処理装置１００のＣＰＵ１１１が記憶装置１１２に記憶された制御プログラムを読み出して、その読み出した制御プログラムを実行することにより実現される。また、シーケンス図の説明における記号「Ｓ」は、ステップを表すものとする。この点、以下のフローチャートの説明においても同様とする。
【００２５】
機能使用指示Ｓ３００において、ユーザは、表示・操作部１２１に表示されるメインメニューＵＩ（User Interface）において「スキャンして送信」機能を選択する。画像処理装置１００は、表示・操作部１２１を介して、「スキャンして送信」機能の選択を受け付ける。
【００２６】
ここで、「スキャンして送信」機能とは、ＬＡＮ等のネットワークに接続された画像処理装置で原稿をスキャンし、取得されたスキャン画像を外部装置に送信する機能である。より具体的には、スキャナで読み取ることで生成されたスキャン画像に対して、画像処理、フォーマット変換処理、メタデータ抽出処理等を実行し、ユーザの指定したサーバのフォルダ、電子メールで所定のアドレスに送信する機能である。
【００２７】
また、ここで、図４を用いて、表示・操作部１２１に表示されるＵＩについて説明する。図４（ａ）は、表示・操作部１２１に表示されるメインメニューＵＩ４０である。メインメニューＵＩ４０は、画像処理装置１００で実行することが可能な機能をボタンとして表示する画面である。メインメニューＵＩ４０には、例えば、「コピー」機能ボタン４０１、「スキャンして送信」機能ボタン４０２、「スキャンして保存」機能ボタン４０３、「保存ファイルの利用」機能ボタン４０４、「プリント」機能ボタン４０５等が表示される。
【００２８】
画像処理装置１００は、メインメニューＵＩ４０を介して、ユーザの実行したい機能（処理）を受け付ける。ここでは、機能使用指示Ｓ３００において、ユーザが「スキャンして送信」機能ボタン４０２をタップ操作して「スキャンして送信」機能を選択していることから、「スキャンして送信」機能を受け付ける。
【００２９】
画像処理装置１００の表示・操作部１２１は「スキャンして送信」機能を受け付けると、設定ＵＩ表示Ｓ３０１において、「スキャンして送信」機能の設定画面を表示する。図４（ｂ）は、表示・操作部１２１に表示される「スキャンして送信」設定ＵＩ４１である。「スキャンして送信」設定ＵＩ４１は、図４（ｂ）に示されるように「スキャンして送信」機能の各種設定の状態を示している。
【００３０】
「スキャンして送信」設定ＵＩ４１において、例えば、「送信先」４１１は、スキャンして生成したスキャン画像を送信する送信先のアドレスを設定するためのボタンである。ユーザが「送信先」４１１をタップ操作すると、不図示の送信先設定画面が表示され、ユーザはスキャン画像の送信先を入力（設定）することができる。本実施形態では、スキャン画像の送信先を外部装置１０１に設定するため、ユーザは、「送信先」４１１に、外部装置１０１のＵＲＬ（Uniform Resource Locator）やＩＰアドレス等を入力する。このように設定することで、マルチクロップ処理を施した原稿画像及びその原稿画像から抽出したメタ―データが外部装置１０１に送信される。
【００３１】
「スキャン／送信設定」４１２は、生成されるスキャン画像のカラー設定、生成される画像ファイルのフォーマット、原稿の種類の状態を設定するためのボタンである。また、「その他の機能」４１３は、「スキャンして送信」設定ＵＩ４１に表示されていない応用機能を設定するためのボタンである。
【００３２】
基本設定指示Ｓ３０２において、ユーザは、画像処理装置１００に「スキャンして送信」設定ＵＩ４１で設定可能な項目の設定を指示する。画像処理装置１００は、表示・操作部１２１を介して、「スキャンして送信」機能における設定指示を受け付ける。基本設定指示Ｓ３０２において受け付けられる設定指示とは、上述のように、例えば、生成するスキャン画像のカラー設定や生成する画像ファイルのフォーマット選択等である。画像処理装置１００は、「送信先」４１１、「スキャン／送信設定」４１２においてタップ操作がなされると、各々に対応する設定項目の入力を受け付ける。
【００３３】
基本設定Ｓ３０３において、画像処理装置１００は、Ｓ３０２においてユーザにより指示された「スキャンして送信」機能の基本設定の設定値を、画像処理装置１００のＲＡＭ１１８に記憶する。
【００３４】
次に、応用設定指示Ｓ３０４において、ユーザは「その他の機能」４１３をタップ操作して選択する。詳細設定ＵＩ表示Ｓ３０５において、画像処理装置１００は、ユーザによる「その他の機能」４１３の選択を受け付けて、応用機能の設定を行うための画面を表示・操作部１２１に表示する。
【００３５】
図４（ｃ）は、応用機能を設定するための「その他の機能」設定ＵＩ４２である。画像処理装置１００は、図４（ｃ）に示されるように、「その他の機能」設定ＵＩ４２において、画像処理装置１００が実行可能な「スキャンして送信」機能の各種応用機能を設定するためのボタンを表示する。「その他の機能」設定ＵＩ４２には、例えば、「ページ集約」ボタン４２１、「カラータイプ」ボタン４２２、「原稿の種類」ボタン４２３、「カラーの調整」ボタン４２４、「ファイル名設定」ボタン４２５、「マルチクロップ」ボタン４２６等が表示される。
【００３６】
これらのボタンのうち、「マルチクロップ」ボタン４２６は、原稿を読み取ることで生成されたスキャン画像から、各原稿に対応する原稿画像の切り出し、原稿画像内のメタデータを抽出する処理の実行を指示するためのボタンである。なお、上述のように、本実施形態において、原稿画像（スキャン対象画像）はレシート画像であり、メタデータは各原稿画像（レシート画像）内に含まれる合計金額等である。また、「その他の機能」設定ＵＩ４２では「スキャンして送信」設定ＵＩ４１において設定可能な設定項目と重複する設定項目を表示しているが、「その他の機能」設定ＵＩ４２において重複する設定項目を除いた設定項目を表示するようにしてもよい。
【００３７】
マルチクロップ設定指示Ｓ３０６において、ユーザは「その他の機能」設定ＵＩ４２の「マルチクロップ」ボタン４２６をタップ操作して選択する。画像処理装置１００は、表示・操作部１２１を介して、「その他の機能」における設定指示を受け付ける。ユーザにより「マルチクロップ」ボタン４２６が選択されたことに従って、マルチクロップ処理のオン設定Ｓ３０７において、画像処理装置１００は、マルチクロップ処理を実行することを示すマルチクロップ処理フラグをＯＮに設定する。なお、マルチクロップ処理フラグは、ＲＡＭ１１８に記憶される。
【００３８】
マルチクロップ処理のオン設定Ｓ３０７において、画像処理装置１００は、表示・操作部１２１に、図４（ｄ）に示されるマルチクロップの選択がなされたことを示す画面４２０を表示させる。このように、ユーザにより「マルチクロップ」ボタン４２６が選択されると、画像処理装置１００は、「その他の機能」設定ＵＩ４２の「マルチクロップ」ボタン４２６の色を反転させ、マルチクロップ処理がオンに設定されていることを示す画面を表示させる。
【００３９】
この「マルチクロップ」ボタン４２６が選択されたことを示す画面４２０が表示されている状態で、ユーザにより「マルチクロップ」ボタン４２６がタップされると、図４（ｅ）に示されるように、ユーザに原稿の種類を設定させる画面４３０を表示させる。ここでは、原稿台に、レシートが置かれている場合に設定する「レシート」ボタン４３１、名刺が置かれている場合に設定する「名刺」ボタン４３２、レシートと名刺が混在して置かれている場合に設定する「混在」ボタン４３３が配置されている。
【００４０】
原稿の文字列向き設定指示Ｓ３０８において、上述のように、本実施形態では、原稿画像をレシート画像とするため、ユーザにより「レシート」ボタン４３１がタップ操作により選択される。この操作に従って、原稿の文字列向き設定Ｓ３０９において、画像処理装置１００は、原稿の種類を「レシート」に設定する。なお、設定された原稿の種類（即ち、「レシート」）は、ＲＡＭ１１８に記憶される。
【００４１】
また、原稿の文字列向き設定Ｓ３０９において、画像処理装置１００は、図４（ｅ）に示されるように、表示・操作部１２１に、「レシート」ボタン４３１の色を反転させ、原稿種類がレシートに設定されていることを示す画面を表示させる。この「レシート」ボタン４３１が選択されたことを示す画面４３０が表示されている状態で、ユーザが「閉じる」ボタン４３４をタップ操作して選択すると、表示・操作部１２１は「その他の機能」設定ＵＩ４２を表示する。さらに、「その他の機能」設定ＵＩ４２が表示されている状態で、ユーザが「閉じる」ボタン４２７をタップ操作して選択すると、表示・操作部１２１は「スキャンして送信」設定ＵＩ４１を表示する。
【００４２】
スキャン指示Ｓ３１０において、ユーザは、スタートキー４０６を押下する。スタートキー４０６が押下されることで、画像処理装置１００に原稿の読み取り開始が指示され、画像処理装置１００は、その指示に従って、原稿をスキャンするための各種設定をＲＡＭ１１８に設定し、原稿の読み取り処理の準備を開始する。
【００４３】
スキャン処理Ｓ３１１において、画像処理装置１００は、スキャナ部１２０を駆動させ、原稿台に置かれた原稿を読み取る。画像形成処理Ｓ３１２において、画像処理装置１００は、スキャナ部１２０により原稿を読み取ることで取得される信号値を、画像処理で取り扱い可能なビットマップ形式の画像（スキャン画像）に変換する。例えば、画像形成処理Ｓ３１２において、画像処理装置１００は、スキャナ部１２０から入力された輝度信号値を、８ビットのデジタル信号に変換し、ＨＤＤ１１９にスキャン画像データとして格納する。
【００４４】
ここで、図５を用いて、原稿（レシート）が原稿台に載置される状態について触れておく。図５では、複数枚のレシートが原稿台に載置された状態を示している。ここでは、Ａ３サイズの領域を読み取ることが可能なスキャナ部１２０に、３枚のレシートが配置されているものとする。図５では、比較的、サイズの小さなレシートであり、様々な種類（即ち、様々なサイズ、縦横比、デザイン）のレシートが載置されている。また、ユーザはレシートを裏返しにして原稿台に載置するため、図５に示されるように、通常、レシートは乱雑に置かれる状態になる。なお、原稿台に載置されるレシートの枚数、配置はこれに限られることはない。
【００４５】
マルチクロップ・メタデータ抽出処理Ｓ３１３において、画像処理装置１００は、ＨＤＤ１１９に格納されたスキャン画像を取得し、その取得したスキャン画像から各レシート画像（各原稿画像）を切り出し、さらに各レシートからメタデータを抽出する。そして、画像処理装置１００は、切り出し後の各原稿画像を圧縮し、その圧縮した後の各原稿画像及びメタデータをＨＤＤ１１９に格納する。なお、本実施形態では、各レシートに記載されている、「合計金額」、「発行日付」、「発行店舗の電話番号」の３つを、メタデータとして抽出するものとする。また、このマルチクロップ・メタデータ抽出処理Ｓ３１３の詳細については後述する。
【００４６】
マルチクロップ処理結果及び抽出したメタデータのＵＩ表示Ｓ３１４において、画像処理装置１００は、表示・操作部１２１に、マルチクロップ処理後の各レシート画像と抽出したメタデータを表示する。図４（ｆ）は、表示・操作部１２１に表示されるマルチクロップ処理及び原稿方向補正処理の結果を示す「原稿検出結果表示」ＵＩ４４である。即ち、「原稿検出結果表示」ＵＩ４４は、マルチクロップ処理及び原稿方向補正処理で得られた各原稿画像を並べて表示した画面である。
【００４７】
送信指示Ｓ３１５において、ユーザは、表示・操作部１２１に表示されたレシート画像の切り出し結果を確認し、その切り出し結果（即ち、切り出されたレシート画像）の送信、保存を指示する。具体的には、ユーザは、スタートキー４０６を押下することで、画像処理装置１００に切り出された各レシート画像の送信、保存を指示する。また、送信指示Ｓ３１５において、画像処理装置１００は、レシート画像を外部装置１０１に送信するための送信指示をユーザから受け付ける。
【００４８】
画像送信Ｓ３１６において、画像処理装置１００は、外部装置１０１にマルチクロップ処理後のレシート画像及びメタデータを送信する。なお、画像送信Ｓ３１６において、外部装置１０１に送信されるレシート画像は、「スキャンして送信」設定ＵＩ４１や「その他の機能」設定ＵＩ４２において設定された設定値が反映された画像である。
【００４９】
保存Ｓ３１７において、外部装置１０１は、画像処理装置１００から送信された各レシート画像及び各レシート画像に対応するメタデータを保存する。なお、ここで、外部装置１０１は、レシート画像を保存するだけでもよいが、例えば、会計システム等の外部システムに保存するようにしてもよい。
【００５０】
（マルチクロップ・メタデータ抽出処理Ｓ３１３の手順）
図６は、上述のマルチクロップ・メタデータ抽出処理Ｓ３１３（図３）の詳細を示したフローチャートである。なお、ここでのマルチクロップ・メタデータ抽出処理は、画像処理装置１００のＣＰＵ１１１が記憶装置１１２に記憶された制御プログラムを読み出して、その読み出した制御プログラムを実行することにより実現される。
【００５１】
Ｓ６０１において、ＣＰＵ１１１は、原稿全体に対して領域分割処理を実行する。この領域分割処理とは、原稿内の構成画素の全てに対して、画素の分布を解析し、原稿画像のどの部位がどのような文書構成要素に該当するかを分類する処理のことである。なお、領域分割処理は文字認識（ＯＣＲ）処理の前処理として実行され、領域分割処理には従来の技術を用いることができる。また、文書構成要素の種類には、一般的に「文字」「写真」「図形」「罫線」「表セル」等が含まれる。
【００５２】
加えて、ＣＰＵ１１１は、Ｓ６０１において、領域分割処理の結果から、後続のステップで必要とされる「文字列」に該当する領域を全て（複数個）抜き出し、その抜き出した「文字列」に該当する領域の座標を文字列領域座標としてＲＡＭ１１８に記憶する。ここで、「文字列」に該当する領域（以下、文字列領域と称する）は、文書構成要素が１つ１つの「文字」と判定された画素の子要素を含むものである。
【００５３】
Ｓ６０２において、ＣＰＵ１１１は、Ｓ６０１でＲＡＭ１１８に記憶した文字列領域座標を読み出し、個々の文字列領域の傾きを計算する。ここでは、文字列領域の傾きを、文字列の進行方向として算出（導出）する。なお、文字列の進行方向は、従来の技術を用いて算出することができる。例えば、簡単には、子要素である「文字」の画素の中心座標を連結した直線を形成し、平均化する等の手法を用いることができる。ＣＰＵ１１１は、算出した文字列の進行方向を、文字列領域の傾きと見做し、その文字列領域の傾きを対応する文字列領域に付加情報として付加して、ＲＡＭ１１８に記憶する。
【００５４】
Ｓ６０３において、ＣＰＵ１１１は、Ｓ６０２でＲＡＭ１１８に記憶した文字列領域の傾きを読み出し、文字列領域の傾き（角度）に応じて、所定の文字列領域グループに分類する。即ち、同じ角度（傾き）と見做される文字列領域を同じ文字列領域グループに分類する。なお、同じ角度と見做すか否かは、所定の誤差閾値を設けることで判定される。また、同じ文字列領域グループに分類する上で、１つの文字列領域グループに含まれる文字列領域が隣接し合っていることを条件とし、隣接し合っているか否かは、所定の閾値以内（距離以内）であるか否かで判定される。文字列領域グループに分類すると、ＣＰＵ１１１は、文字列領域グループ毎に、文字列領域グループに含まれる文字列領域を包含できる最小の外接矩形を求めて、ＲＡＭ１１８に記憶する。
【００５５】
Ｓ６０４において、ＣＰＵ１１１は、Ｓ６０３で求めた各文字列領域グループの外接矩形をＲＡＭ１１８から取得し、その外接矩形から外側に向かって、原稿画像上の特徴量が変化する直線（即ち、原稿を形成する上での直線）を探索する処理を実行する。以下、この処理について、説明を補足する。
【００５６】
先ず、ＣＰＵ１１１は、一般的な画像の直線検出手法であるハフ変換（Ｈｏｕｇｈ変換）等の従来技術を用いて、画像から検出可能な直線の候補を全て検出しておく。この一般的な画像の直線検出手法を用いると、不必要な直線の候補が多数、検出されるため、そのままでは有用な直線を判別することができない。そこで、ＣＰＵ１１１は、検出された直線の候補と、文字列領域グループの外接矩形の交点が存在するか否かを判定する（即ち、直線の候補と文字列領域グループの外接矩形が交差するか否かを判定する）。そして、上述の直線検出手法を用いて検出された直線のうち、交点の存在しない直線だけを最終的な直線候補として残す。その上で、さらに、文字列領域グループ毎に、文字列領域グループの外接矩形から外側に、その外接矩形と平行であって、かつ、その外形矩形に最も近い直線候補を、原稿画像上の特徴量が変化する直線として検出する。この原稿画像上の特徴量が変化する直線を特定する上で、外接矩形の辺の傾きと、直線候補の傾きが一致すればよい。なお、この傾きが一致するか否かの判定には、一定の誤差閾値を設けて判定してもよい。
【００５７】
各文字列領域グループにおいて、直線候補として４本の直線を検出することができたら、ＣＰＵ１１１は、それら４本の直線により囲まれる領域をレシートの原稿領域として特定する。なお、ＣＰＵ１１１は、４本の直線候補の一部又は全てを検出することができない場合、文字列領域グループの外接矩形を、その検出することができていない直線候補の代替として用いる。ＣＰＵ１１１は、文字列領域グループ毎に４本の直線候補を検出すると（即ち、原稿枠を特定すると）、原稿枠の４つの頂点の座標を組として、ＲＡＭ１１８に記憶する。
【００５８】
Ｓ６０５において、文字列領域グループ毎に、ＲＡＭ１１８からＳ６０４で記憶した原稿枠の４つの頂点の座標を読み出し、その４つの座標の組を用いて、原稿画像からレシート画像を切り出し、各々を個別のレシート画像としてＨＤＤ１１９に記憶する。このため、レシート画像は、Ｓ６０４で特定された原稿枠の数だけ生成されることになる。
【００５９】
Ｓ６０６において、ＣＰＵ１１１は、Ｓ６０５でＨＤＤ１１９に記憶した切り出したレシート画像を読み出し、従来の技術を用いて、その切り出したレシート画像の傾き及び方向を補正する。ここで、レシート画像の傾き及び方向に関して、個々のレシート画像において、そのレシート画像における文字が正立し、文字進行方向が水平０度となるように、補正する。ＣＰＵ１１１は、この補正した結果であるレシート画像を、再び、ＨＤＤ１１９に記憶する。
【００６０】
Ｓ６０７において、ＣＰＵ１１１は、Ｓ６０６で記憶したレシート画像を読み出し、１枚ずつ一般的なＯＣＲ処理を実行して、レシート画像に記載されている文字を認識する。ＯＣＲ処理が実行されると、そのＯＣＲを実行した結果に、どのような文字がレシート画像中のどの座標位置に検出されたかを示す情報が対応付けられ、ＲＡＭ１１８に記憶される。
【００６１】
Ｓ６０８において、ＣＰＵ１１１は、Ｓ６０７でＯＣＲ処理した結果を分析し、項目名（即ち、Ｋｅｙ）を検索する。項目名とは、例えば、レシートにおいて「合計」等がよく用いられる。項目名がＯＣＲ結果から検索できたら、その項目名に対応する値（Ｖａｌｕｅ）として、例えば、金額数値を、ＯＣＲの位置情報に基づいて検索する。具体的には、一般的に「合計」の右隣、或いは下隣に金額数値が印字される、というようなルールに従って検索する、また、ここで検索する項目名の数と種類は、利用目的によってシステムで定義されているものとする。検索された項目名と金額数値の対応付けられた情報を、メタデータとして各レシート画像に対応付けてＲＡＭ１１８に記憶する。
【００６２】
Ｓ６０９において、ＣＰＵ１１１は、Ｓ６０８でＲＡＭ１１８に記憶した各レシート画像に対応付けられたメタデータ（項目名と対応する金額数値に関する情報）を読み出し、その上で、所定の判定条件を充足するか否かを判定する。具体的には、ＣＰＵ１１１は、各レシート画像に対して、項目名が１枚のレシートに出現すべきと定義されている数と一致しているか否か（即ち、上限数を超えていないか否か）を判定する。そして、読み出された項目名が上限数を超えていると判定すると（Ｓ６０９ Ｙｅｓ）、ＣＰＵ１１１は、処理をＳ６１０に移行させる。なお、それ以外の場合（Ｓ６０９ Ｎｏ）、図６に示される処理を終了する。
【００６３】
Ｓ６１０に移行した場合、レシートに含まれる項目名が上限数を超えていることから、レシート画像の切り出し結果が不正であったものとして、ＣＰＵ１１１は、レシート画像の切り出しを再び実行する。なお、このようにレシートに含まれる項目名が上限数を超えている場合として、例えば、レシートが複数枚、含まれる大きな領域を、１枚分のレシート画像として切り出してしまっている場合が想定される。また、この再度、実行する切り出しとして、処理をＳ６０４に返し、文字列領域の外接矩形から外に向かって直線を探索するときの、傾きと距離の一致判定の閾値を緩和する、等の方法を検討することができる。
【００６４】
以上、説明したように、本実施形態によれば、原稿のスキャン画像から、ユーザの負担を低減した上で、高精度に原稿に対応する領域を切り出すことができる。なお、上述では、マルチクロップ処理とし、複数のレシート（原稿）を読み取り、それらの原稿を個々に切り出す例について説明したが、切り出す原稿は必ずしも複数である必要はなく、本実施形態は、１枚の原稿に適用することもできる。
【００６５】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2020184207.tif 000003
【図２】
2020184207.tif 000004
【図３】
2020184207.tif 000005
【図４】
2020184207.tif 000006
【図５】
2020184207.tif 000007
【図６】
2020184207.tif 000008