説明

画像処理装置、画像処理システム、画像処理方法、及びプログラム

【課題】文字認識の対象とされる文書の状態を劣化させることなく文字認識の領域を指定させること。
【解決手段】第一の用紙より読み取られた第一の画像データに基づいて、前記第一の用紙に対する記入位置を検出する記入位置検出手段と、第二の用紙より読み取られた第二の画像データについて、前記記入位置に基づいて特定される領域に対して文字認識を実行する第一の文字認識手段とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理システム、画像処理方法、及びプログラムに関し、特に、画像データに対して文字認識を実行する画像処理装置、画像処理システム、画像処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年では法改正により、財務又は税務関係の帳票類や取締役会議事録等、商法や税法で保管が義務づけられている文書について、紙文書だけでなく電子化された文書ファイルでの保存が認められるようになった。そのため、これまでに比べて紙文書をスキャンして電子化する動きが活発となっている。
【0003】
ここで問題となるのが、スキャンした文書画像の検索性である。例えば、スキャンした文書画像にはファイル名の重複を避けるために、スキャンした時刻等に基づいて名前が付けられることが多い。例えば、20090630141527.jpg等といった名前が付けられる。このように人間からは記号にしか見えない情報がファイル名として付加されている場合、ユーザがかつてスキャンした文書画像を探そうとすると、一枚一枚画像を開いて所望の文書を探さなくてはならない。サムネイルと呼ばれる縮小画像を用いて大まかな形から所望の文書画像を探すことも考えられるが、同じフォーマットの帳票が多数含まれたデータベース内では、縮小画像から所望の文書画像を見分けることは難しい。
【0004】
そこで、OCR(Optical Character Recognition)と呼ばれる技術を用いて、スキャンした画像に含まれる文字列を認識し、認識した文字列を利用してユニークなファイル名を付けるといった技術が提案されている。一般にスキャンした文書画像に付加したいファイル名はその文書画像内に含まれる場合が多い。例えば、文書の表題等が付加したいファイル名に該当する。
【0005】
特許文献1には、画像から文字の存在する領域を複数検出し、検出した領域の特徴に基づいてそれぞれタイトルらしさを算出して、最もタイトルらしい領域に対してOCRを施すことにより、画像から好適なファイル名を取得するという技術が開示されている。これにより、スキャンした文書のファイル名を文書のタイトルとすることができる。その結果、ユーザはファイル名を見るだけで所望の文書画像ファイルを探すことが可能となり、文書画像ファイルを一つ一つ開く検索時間を大幅に短縮することが可能になる。
【0006】
一方で、特許文献1に記載の発明を利用しても、同じフォーマットの帳票が複数入力されると、全く同じファイル名が複数存在することになり、検索性は劣化する。そのため、特許文献2では画像データから複数の文字列を抽出し,それらをつないでファイル名にするといった技術が開示されている。また、特許文献3ではタイトルを抽出及び認識し、認識結果が所定のタイトル(例えば、頻出する「帳票」という単語など)に合致する場合には周辺の文字列を探すことで、単純に「帳票」というファイル名を付加するのではなく、「帳票NO:12457824N」等といったファイル名を付加できるような技術が開示されている。
【0007】
しかし、ここまで述べた技術はいずれもタイトルを高い精度(100%に近い精度)で検出できるわけではない。更に言えば、文字認識の精度も100%ではない。その結果、正体不明の文字化けなどといった、異常な振る舞いをしてしまう可能性が少なからず存在する。異常な振る舞いが発生した際に、ここまでに述べた技術は複雑すぎて、動作の仕組みを理解していない殆どのユーザにとっては意味不明な機能、即ち、使えない機能と認識されてしまうことになる。以上のようなファイル名付加機能(以下、「全自動のファイル命名機能」という。)には以上のような問題がある。
【0008】
一方で、異なるアプローチでタイトルを抽出及び認識してファイル名として付加するような技術も提案されている。例えば、特許文献4にはタイトル領域に所定のマーキングを施してスキャンすると、その領域に対してOCRが施され、文書画像ファイルには、その領域の文字認識結果が付加される。特許文献5にも同様の技術が開示されている。以降、これらのファイル命名機能を半自動の命名機能と呼ぶこととする。
【0009】
これらの半自動の命名機能にはタイトルの検出精度を向上させる(100%に近づける)ことができるという利点はあるも。しかし、マーキングを付けることにより画像が汚れる、マーキングにより認識したい文字の一部が隠れ、文字認識の精度が落ちるといった問題がある。
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明は、上記の点に鑑みてなされたものであって、文字認識の対象とされる文書の状態を劣化させることなく文字認識の領域を指定させることのできる画像処理装置、画像処理システム、画像処理方法、及びプログラムの提供を目的とする。
【課題を解決するための手段】
【0011】
そこで上記課題を解決するため、本発明は、第一の用紙より読み取られた第一の画像データに基づいて、前記第一の用紙に対する記入位置を検出する記入位置検出手段と、第二の用紙より読み取られた第二の画像データについて、前記記入位置に基づいて特定される領域に対して文字認識を実行する第一の文字認識手段とを有する。
【0012】
このような画像処理装置では、文字認識の対象とされる文書の状態を劣化させることなく文字認識の領域を指定させることができる。
【発明の効果】
【0013】
本発明によれば、文字認識の対象とされる文書の状態を劣化させることなく文字認識の領域を指定させることができる。
【図面の簡単な説明】
【0014】
【図1】本発明の第一の実施形態の画像形成装置の外観を示す斜視図である。
【図2】本発明の第一の実施形態の画像形成装置を用いて帳票をスキャンし、文書ファイルを作成する手順を示す図である。
【図3】本発明の第一の実施形態において使用される帳票及びマーキング用紙を示す図である。
【図4】図1における操作部の拡大図である。
【図5】本発明の第一の実施形態の画像形成装置における画像処理のフローを示す図である。
【図6】マーキング領域が広過ぎる場合の一例を示す図である。
【図7】複数枚の帳票又は複数種類の帳票を処理する例を示す図である。
【図8】図5におけるマーキング領域検出手段の構成を示す図である。
【図9】図8におけるラベリング手段の処理を示す図である。
【図10】図5における行間検出手段の処理を示す図である。
【図11】図5における文字間検出手段の処理を示す図である。
【図12】本発明の第二の実施形態において使用される帳票及びマーキング用紙を示す図である。
【図13】本発明の第二の実施形態における画像処理のフローを示す図である。
【図14】本発明の第三の実施形態において使用される帳票及びマーキング用紙を示す図である。
【図15】本発明の第三の実施形態における画像処理のフローを示す図である。
【図16】本発明の第四の実施形態において使用される帳票及びマーキング用紙を示す図である。
【図17】本発明の第五の実施形態において使用される帳票及びマーキング用紙を示す図である。
【図18】本発明の第五の実施形態における画像処理のフローを示す図である。
【図19】本発明の第七の実施形態において使用される帳票及びマーキング用紙を示す図である。
【図20】本発明の第七の実施形態における画像処理のフローを示す図である。
【図21】第八の実施形態における情報処理システムの構成例を示す図である。
【図22】第八の実施形態における画像形成装置のハードウェア構成例を示す図である。
【図23】第八の実施形態におけるユーザ端末のハードウェア構成例を示す図である。
【図24】ウィジェット、ウィジェットマネージャ、及びプロバイダアプリの機能構成例を示す図である。
【図25】ウィジェットマネージャの起動時の処理手順を説明するためのシーケンス図である。
【図26】ユーザ管理テーブルの構成例を示す図である。
【図27】マーキング用紙印刷ウィジェットへのジョブ投入時の処理手順を説明するためのシーケンス図である。
【図28】マーキング用紙印刷ウィジェットのウィジェット情報の例を示す図である。
【図29】実行可能なウィジェットの一覧の表示処理の処理手順を説明するためのシーケンス図である。
【図30】ユーザ選択画面の表示例を示す図である。
【図31】ウィジェットマネージャからプロバイダアプリに送信されるマーキング用紙印刷ウィジェットのウィジェット情報の構成例を示す図である。
【図32】ウィジェット選択画面の表示例を示す図である。
【図33】マーキング用紙印刷ウィジェットの実行時の処理手順を説明するためのシーケンス図である。
【図34】帳票スキャンウィジェットの起動時の処理手順を説明するためのシーケンス図である。
【図35】帳票スキャンウィジェットのウィジェット情報の例を示す図である。
【図36】帳票スキャンウィジェット実行時の処理手順を説明するためのシーケンス図である。
【発明を実施するための形態】
【0015】
以下に本発明の実施形態を添付した図面を参照して説明する。
[第一の実施形態]
〈画像形成装置の構成〉
図1は、本発明の第一の実施形態の画像形成装置であるデジタル複合機(MFP(Multifunction Peripheral))の外観を示す斜視図である。このデジタル複合機100(以下、単に、「複合機100」という。)は、本体110、大量用紙供給装置(LCT)111及びソート、孔あけ、ステイプル等の後処理を行うフィニッシャー112等を有する。本体110は、上部に、トレイに載置した原稿を読み取り位置に搬送する自動原稿供給装置(ADF)113及びオペレータとのインタフェースとして、読み取りモード、複写倍率の設定、給紙段の設定、後処理の設定を受け付け、オペレータに対する表示等を行う操作部114を備え、また、下部に、給紙部115を有する。フィニッシャー112は、排紙部117を備えている。
【0016】
複合機100は、後に詳述する電源供給系を除き、基本的に電子写真プロセスで画像を形成する公知の複合機が有する走査露光系、給紙搬送系、現像系、定着系、排紙系等を構成する機構及び制御装置を内蔵する。また、複合機100は、コピー動作を次のように行う。即ち、原稿がADF113のトレイに載置され、操作部114上の実行ボタン1142(図4参照)が押下されると、ADF113の送りを経て、原稿は読み取り位置である図示しないコンタクトガラス上に供給される。この後、原稿面の画像は、図示しない照明系、結像光学系によりCCDラインセンサの受光面に伝達され、光電的に二次元走査方式で読み取られる。読み取られた画像データは、各種の補正・処理を経て、印刷(画像形成)用の画像データとして生成され、生成された画像データに基づき、走査露光系のレーザーダイオード(LD)を駆動する。駆動されたLDからのビームは、感光体ドラム面を二次元で走査露光し、静電潜像を形成する。その後、静電潜像は、いわゆる電子写真に特有のトナー現像、転写、定着のプロセスを経て、操作部114により指示された転写紙に可視化像として定着され、コピー画像が形成される。また、後処理の指示があれば、フィニッシャー112にてソート、孔あけ、ステイプルなどが施された後、排紙部117から排出される。
【0017】
〈帳票の文字認識〉
次にユーザが複合機100を用いて帳票をスキャンし、文書ファイルを作成する手順について、図2用いて説明する。
【0018】
まず、ユーザはスキャンしたい画像を準備する(ステップS1)。ここでは、図3Aに示す帳票1を準備したのとする。続いて、ユーザはマーキング用紙をスキャンしたい画像に重ね、スキャンしたい画像中で画像の識別名としたい領域をボールペン等で囲むことでマーキングする(ステップS1)。ここでは、マーキング用紙として白紙のプリンタ用紙を用いた。この作業により、図3Bに示すように、マーキング用紙2には、帳票1の「帳票」という文字11、及び帳票番号である「NO.B1112745N」という文字12に対応する領域にマーキング21及び22が付与される。尚、以降はマーキング用紙2に付与された画像をマーキング画像、保存対象としてスキャンしたい画像(ここでは帳票)を帳票画像と呼ぶことにする。なお、画像の識別名とは、画像を永続化する際に、当該画像に関連付けられる又は付与される識別名である。本実施形態では、画像の識別名としてファイル名を用いる。これは、画像の記憶手段として、公知のファイルシステムが用いられるのが一般的であるからである。但し、識別名の具体的な形態は、実際に画像の保存先として用いる記憶手段に適したものとすればよい。
【0019】
続いて、ユーザはマーキング用紙2と帳票1を重ねたまま原稿をADF113にセットする(ステップS3)。次いでマーキングした領域をファイル名に設定するモードを設定する(ステップS4)。図4は図1の操作部114を拡大したものであるが、モード選択ボタン1141の中から「アプリ1」と記載されたボタンを押すことでステップS4は達成される。
【0020】
続いて、ユーザが、操作部114の実行ボタン1142を押すと(ステップS5)、複合機10は、マーキング用紙2よりマーキング画像を読み取り、帳票1より帳票画像を読み取る。複合機10は、更に、帳票画像におけるマーキング画像に対応する領域を文字認識する。複合機10は、文字認識した結果の文字列をディスプレイ1143に確認のために表示する(ステップS6)。その後、例えば、ユーザによって保存指示が入力されると、帳票画像は、文字認識された文字列をファイル名として保存される。
【0021】
〈複合機内部の画像処理〉
続いて図5を用いて、複合機100内部の処理フローについて説明する。複合機100はCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)などを内蔵しており、この処理フローは、CPUがROMやHDDに格納されているプログラムを実行することにより行われるものであり、各手段は処理フローの機能に対応するブロックである。
【0022】
まず画像1001(マーキング画像及び帳票画像)は画像読み取り手段121により順次光電変換され、画像データに変換される。続いてマーキング領域検出手段122は、マーキング画像データから、ユーザのマーキングした部分(すなわち、記入内容)を検出する。複数のマーキングが存在した場合には存在したマーキング全てを検出する。その後、マーキング領域検出手段122は、ユーザのマーキングした部分の外接矩形の座標情報、即ち水平位置x、垂直位置y、幅w、高さhをマーキング領域として出力する。複数のマーキング領域が存在した場合、垂直位置が若いもの、水平位置が若いものの順に矩形の座標情報が出力されるものとする。マーキング領域検出手段122の動作の詳細については後述する。
【0023】
帳票画像において、そのマーキング領域をそのまま文字認識しても良いが、図6に示されるように、ユーザがマーキングした部分21'が他の行にかかっている場合などには、ユーザが指定した文字列(図6では「帳票」という文字11)以外の領域(図6では「NO.01112745N」という文字12の一部)がノイズになってしまい、ノイズを文字として認識してしまう等の不具合が発生する可能性がある。
【0024】
そこで、本実施形態では、ユーザがマーキングした部分をそのまま文字認識に利用するのではなく、帳票画像の特徴情報が検出(抽出)され、当該特徴情報に基づいてマーキング領域が補正される。具体的には、行間検出手段123が、特徴情報の一例である行間情報を検出する。また、文字間検出手段124が、特徴情報の一例である文字間情報を検出する。抽出領域算出手段125は、検出された行間情報、文字間情報を頼りにマーキング領域を補正する。補正により得られるのは、マーキング領域として得られる情報と同様に外接矩形の座標情報、即ち水平位置x、垂直位置y、幅w、高さhである。この処理は検出されたマーキング領域全てに対して行われる。尚、行間検出手段123、文字間検出手段124、及び抽出領域算出手段125の詳細な動作については後述する。
【0025】
続いて、文字認識手段126では、補正されたマーキング領域に関して帳票画像に対して文字認識を施し、画像データを所定の文字コード(例えば、アスキーコード)に変換する。この文字認識処理も検出したマーキング領域全てに対して行われる。
【0026】
続いて、文字連結手段127では、文字認識手段126により出力された文字コード(文字列)を、処理が終わった順番に連結し、ページ番号及び、画像フォーマットを示す拡張子(例えば.jpg)等を付与して連結文字列を出力する。例えば、図3のようなマーキング画像、及び帳票画像を用意した場合には、出力される連結文字列(出力文字列)は「帳票NO.B1112745N_01.jpg」となる。尚、この文字認識処理は、いわゆるパーターンマッチング等の周知の技術を用いて容易に行うことができるので、詳細な説明は省略する。
【0027】
画像保持手段128は、出力文字列をファイル名として、読み取られた帳票画像データを保存する。ここで、マーキング画像データはマーキング領域21、22が読み取られた後には不要である。マーキング画像データを帳票画像データと一緒に保存してしまうと、マーキング画像データがノイズとなりファイル名の検索性が悪くなる。そこで、本実施形態では、マーキング画像データは帳票画像データとは別のフォルダに保存するか、破棄してしまうことにより、帳票画像データの検索性を高め、ユーザの利便性を向上させている。
【0028】
以上のように、帳票画像に含まれる文字列を用いてファイル名を作成することで、ユーザによって適切な領域が選択されれば、帳票画像データには適切、かつユニークな名前を付与することができる、その結果、ファイル名だけで画像を特定することが可能となり、検索の利便性が格段に向上する。
【0029】
また、本実施形態のように、ユーザにマーキングを促す構成とすることにより、全自動のファイル命名の際に問題となった、ユーザの意図と異なる領域をタイトルとしてファイルに付与するといった問題は発生し得ない。
【0030】
更に、マーキング用紙2を別途用意することにより、従来の半自動の命名機能のように原稿(ここでは帳票1)を汚すことがない。また、マーキングによって読み取りたい領域の文字が隠れることもない。
【0031】
更に、同じフォーマットの帳票に対して、マーキング画像を使い回せば、マーキングを付ける手間も最小限に抑えることができる。また、同じフォーマットの帳票がたくさんあることを考えると、ユーザはフォーマットの異なる帳票ごとにマーキング専用の紙を用意しておけば、何度もマーキングを行う必要がなくなり、また紙も無駄に消費しなくて良い。また、今回の説明ではマーキング専用の紙と述べたが、OHPシートなどを利用すれば、透過率が高く、重ねた時により分かりやすくなるし、また紙に比べると耐久性が高いので、何度も使いまわせることになりユーザの利便性は高くなる。
【0032】
更に、スキャン時には必ず二枚の画像を重ねることになり、また、マーキング用紙が透けることから、その後の複合機100の動作が直感的に予測しやすくなるだけでなく、ユーザが間違えて異なるフォーマットの帳票用のマーキング用紙を利用しようとした際にも、ユーザが間違いに気づきやすくなると言う効果がある。
【0033】
なお、同一のマーキング用紙2が適用される複数枚の帳票1を一度に処理してもよい。また、適用されるべきマーキング用紙2が異なる複数種類の帳票1を一度に処理してもよい。
【0034】
図7は、複数枚の帳票又は複数種類の帳票を処理する例を示す図である。同図には、2種類の帳票1a及び1bが示されている。帳票1a及び2aは、それぞれ複数枚有る。この場合、同図に示されるように、各帳票の先頭ページの前に当該帳票に対応したマーキング用紙2を配置して(重ねて)、複合機100のADFにセットすればよい。同図の例では、帳票1aの先頭ページの前にマーキング用紙2aが配置され、帳票2aの先頭ページの前にマーキング用紙2bが配置されている。したがって、マーキング用紙2bは、帳票1aの最終ページと帳票1bの先頭ページとの間に挟まれた状態となる。
【0035】
図7に示されるようにマーキング用紙2及び帳票1がADFにセットされた場合、画像読取手段121は、セットされた状態において先頭のページから順に、マーキング画像データ又は帳票画像データへの変換を行う。その結果、同図の例では、マーキング用紙2aより読み取られた1つのマーキング画像データ、帳票1aの各ページより読み取られた複数の帳票画像データ、マーキング用紙2bより読み取られた1つのマーキング画像データ、及び帳票1aの各ページより読み取られた複数の帳票画像データが生成される。また、読み取られた順に、各画像データの配列順が記録される。
【0036】
マーキング領域検出手段122、行間検出手段123、文字間検出手段124、及び抽出領域算出手段125は、マーキング画像データに対して上述したそれぞれの処理を実行する。したがって、図7の例では、マーキング用紙2a又はマーキング用紙2bより読み取られた二つのマーキング画像データに対して当該処理が実行される。なお、マーキング用紙2の所定の位置に所定の記号又は図形等をマーキング用紙2の識別情報として付加しておくとよい。図7では、マーキング用紙2の右上にバーコードが付加されている例が示されている。マーキング領域検出手段122は、当該識別情報の有無に基づいて、マーキング画像データと帳票画像データとを区別する。
【0037】
続いて、文字認識手段126は、画像データの配列順において、処理対象の帳票画像データより前であって、かつ、最後のマーキング画像データより検出されたマーキング領域について、当該帳票画像データに対する文字認識を実行する。
【0038】
上記より、各帳票画像データは、当該帳票1に対応したマーキング用紙2において指定されたマーキング領域に基づくファイル名によって保存される。
【0039】
〈マーキング領域検出手段122〉
図8を用いてマーキング領域検出手段122の動作を説明する。同図に示されるように、マーキング領域検出手段122は、二値化手段201及びラベリング手段202等を含む。
【0040】
二値化手段201は、画像データ(マーキング画像データ)1002に対して閾値処理を行うことで、画像に含まれる各画素が白画素か黒画素かを判定する。ここで画像データは1画素当たり8ビット(0〜255)であり、値が大きいほど明るい画素とする。閾値は128を用いる。
【0041】
ラベリング手段202は、繋がりを持つ画素を一つのラベルとして分類する。例えば図9Aのように二値化された画像の場合、背景のラベルを0とすれば、図9Bのように、左上の黒い塊のラベルが1、右下の黒い塊のラベルが2といった具合にラベリングされる。
【0042】
具体的なラベリング手法は、以下の通りである。画像の各画素を左上端から走査しながら、黒画素を探索する。白画素の場合、注目画素のラベルは0である。一方、黒画素が現れた場合、隣接する左か上に黒画素が無いかを調べ、黒画素がある場合には、隣接する画素のラベルを注目画素のラベルとする。黒画素が無い場合には、新しいラベルを注目画素に付与する。以上の処理を画像の右下端の画素まで繰り返す。全ての画素にラベルが付与されたら、ラベル毎に外接矩形を算出する。図9Bの例で言うと、1のラベルは左端から3〜4つ目、上端から2〜3つ目に存在するので、左=3、上=2、幅=2、高さ=2の矩形が外接矩形と言うことになる。
【0043】
尚、ラベリング後、予め決めた大きさよりも小さな領域は無視すると、ノイズに対して頑健なシステムになる。また、ノイズ除去後のラベリングされた要素の数が0の際には、読み取りが正常に行えない旨を操作部114のディスプレイ1143を通じてユーザに通知する。
【0044】
〈行間検出手段123〉
行間検出手段123は、前述の通り、マーキング領域を補正することを目的として行間を検出する。行間検出手段123は、まず画像全体に対して、二値化手段201と同様にして、各画素が黒(0)か白(255)かを判定する。その後、行間検出手段123は、縦方向の座標毎に、横方向に走査して画素値を積算する。例えば、図10Bのような画像の画像データに対してこの処理を行うと、図10Aのようなヒストグラムが得られる。この画像において、行間は真っ白なので、横方向の積算値は非常に高くなる。一方で、文字が存在する場合、横方向の積算値は若干低くなる。その結果、行間はそのヒストグラムにおいてピークを示すようになる。行間検出手段123は、全てのピークを検出し、行間座標として出力する。
【0045】
〈文字間検出手段124〉
文字間検出手段124は、行間検出手段123と同様にマーキング領域を補正することを目的とし、文字間を検出する。文字間検出手段124は、行毎に文字間を検出する。尚、ここで言う行とは行間検出手段123によって検出された行間と行間に挟まれた領域を示す。
【0046】
文字間検出手段124は、まず行間検出手段123と同様に画像を二値化し、今度は、縦方向の座標毎に、縦方向に走査して画素値を積算してヒストグラムを作成する。行間を検出した時と同様、文字間の位置でもヒストグラムが非常に高くなり、そのヒストグラムにおいてピークを示すようになる。文字間検出手段124は、全てのピークを検出し、文字間座標として出力する。それぞれの行において文字間座標が算出されるので、行間、文字間を図で示すと以下の図11におけるグレーの領域になる。
【0047】
〈抽出領域検出手段125〉
抽出領域検出手段125は、前述の通り、ユーザが実際にマーキングした領域を行間情報と、文字間情報とを用いて修正する。まずは行間情報を用いての修正であるが、抽出領域検出手段125は、マーキング領域に、行間が二つ、つまり、行が一つだけ含まれる場合には、その行の上端と下端とを修正後のマーキング領域の上端と下端とする。抽出領域検出手段125は、行が複数含まれる場合には、認識できない旨を操作部114のディスプレイ1143を通じてユーザに通知する。また、マーキング領域に、行間が一つしか含まれない、つまり一つの行が不完全な形でしか選択領域に含まれない場合は、抽出領域検出手段125は、マーキング領域の上端と下端付近を調べ、最も近い行間を探し、近いほうの行間とマーキング領域に含まれる行間とを、修正後のマーキング領域の上端と下端とする。
【0048】
続いて、抽出領域検出手段125は、文字間情報を用いて、マーキング領域の左側と右側を調べ、最も近い文字間位置をもって修正後のマーキング領域の左側と右側に設定する。続いて、抽出領域検出手段125は、マーキング領域に含まれる文字数を調べ、文字数が0の場合には、検出すべき文字が存在しないとして、ディスプレイ1143を通じてユーザに通知する。
【0049】
以上のように補正を行うことにより、図6に示すようなユーザによるマーキングが不適切な場合であっても、認識すべき文字列画像が欠けたり、不必要な画像を誤って文字認識したりする可能性が低減される。その結果、ユーザの期待通りの認識結果が得られる可能性が高まる。また、読み取りたい領域以外を若干含んでいても良いので、ユーザは気軽にマーキングすることが可能になる。
【0050】
なお、以上の説明では、マーキング領域を矩形や楕円形の枠状のものとしたが、マーキング領域を「 」、<>などの括弧、或いは下線などによって指定させても良い。これらの記号であっても、当該記号と帳票画像の文字認識領域との対応関係を予め定めておけば、枠状の場合と同様にマーキング領域を検出し、文字認識をすることが可能である。
[第二の実施形態]
図12に、本発明の第二の実施形態の画像形成装置である複合機で使用する帳票及びマーキング用紙を示す。また、図13に、本実施形態の複合機内部の画像処理を示す。本実施形態は第一の実施形態とほぼ内容を同じくするものであり、帳票画像だけでなく、マーキング画像に対しても文字認識を施す点が第一の実施形態と異なる。
【0051】
図12Aに示すように、本実施形態における帳票画像は第一の実施形態(図3A)と同じである。一方、マーキング画像については、図12Bに示すように、マーキング領域21、22の内部に、それぞれ数字「1」、「2」が記載されている点が図3Bとは異なる。この数字はユーザが手書きで書き込むものである。
【0052】
複数のマーキング領域21、22が存在する場合に、ファイル名となる文字列を連結する必要がある。第一の実施形態では、検出されたマーキング領域の位置に応じて文字列を連結する順番を決めていたが、その順番は必ずしも簡単な規則に従うものではない。適切な順番を知るにはユーザに指定してもらうことが手っ取り早いので、本実施形態では、マーキング領域21、22内に文字列を連結する順番をユーザに記入してもらうようにした。
【0053】
また、複合機100の内部では、図13に示すように、第1の実施形態(図5)における文字認識手段126と同じ動作を行う第一の文字認識手段126−1に加えて、マーキング領域21、22の内部の文字認識を行う第二の文字認識手段126−2を設け、その出力を文字連結手段127に供給するようにした。
【0054】
尚、マーキング画像データに対する文字認識処理は、帳票画像に施す文字認識処理に比べて識別できる文字種の数を大幅に小さくしておくことが望ましい。例えば、本実施形態では数字に限定している。一般に活字に比べて手書きの文字は形状の自由度が高く、認識が難しくなる。そこで、本実施形態のように認識できる文字種を数字に限定することで、識別率の劣化を抑制している。
【0055】
また、ここまでマーキング画像に対して「文字認識」を行うと述べてきたが、必ずしも文字を認識する必要はない。ユーザにとって直感的に書き込みやすいのは数字であるが,認識しやすい記号(○、△、□等)と、どの記号がどの数字に対応するかを予め決めておけば、同様の効果が得られるし、識別率も数字を用いた場合よりも向上することが予想される。従って、第二の文字認識手段126−2は厳密な意味でのOCRである必要はない。
[第三の実施形態]
図14に、本発明の第三の実施形態の画像形成装置である複合機で使用する帳票及びマーキング用紙を示す。また、図15に、本実施形態の複合機内部の画像処理を示す。本実施形態は第二の実施形態と同じく、帳票画像だけでなく、マーキング画像に対しても文字認識を施すが、文字認識結果に応じて行う処理が異なる。
【0056】
図14Aに示すように、本実施形態における帳票画像は第1の実施形態(図3A)及び第2の実施形態(図12A)と同じである。一方、マーキング画像については、図14Bに示すように、第2の実施形態(図12B)と同様、内部に文字が記入されているが、数字の「1」、「2」ではなくアルファベットの「J」、「E」である点が異なる。
【0057】
また、複合機100の内部では、図15に示すように、第1の実施形態(図5)における文字認識手段126と同様な動作を行う第一の文字認識手段126−1に加えて、マーキング領域21、22の内部の文字認識を行う第二の文字認識手段126−2を設け、その出力を第一の文字認識手段126−1に供給するようにした。
【0058】
第一の文字認識手段126−1では、第二の文字認識手段126−2の認識結果に応じて、動作が変化する。即ち「E」が検出されたマーキング領域22に対しては英語限定の文字認識を施し、「J」が検出されたマーキング領域21に対しては日本語限定の文字認識を施す。
【0059】
一般に文字認識処理は特定の言語に対して、最適な領域抽出のアルゴリズムを備えたり、最適な辞書を用意したりすることにより識別率の向上を図っている。一方、複数の言語が入力されることを想定する場合には、どの言語が利用されているかを推定し、推定した言語の文字認識を利用するといった処理が行われる。この推定の精度は100%ではなく、言語の推定を間違えると、識別精度は劣化する。つまり、事前にどの言語の文字認識を利用すれば良いかが明らかならば、識別の精度は向上すると言うことである。
【0060】
本実施形態によれば、ユーザは手書きで一文字を書き込むだけで、その領域にどの言語の文字認識をかけて欲しいかを指定することができるので、容易に識別精度を向上させることができる。尚、今回は英語と日本語を指定できるようにしたが、数字をN、半角カナをKなどに割り振り、更にENと記入すると、文字認識結果を英語と数字だけに限定できるといった使い方も想定できる。
[第四の実施形態]
図16に、本発明の第四の実施形態の画像形成装置である複合機で使用する帳票及びマーキング用紙を示す。図16Aに示されるように、本実施形態における帳票1は上記実施形態と同じである。一方、マーキング用紙2については、図16Bに示されるように、未記入の帳票画像(すなわち、帳票のテンプレートの画像)の各文字列を囲む矩形や罫線等の図形が描画された画像(以下、「枠画像」という。)が予め記録されている。すなわち、本実施形態では、帳票のテンプレート画像(帳票テンプレート画像)を予め解析することにより、枠画像が記録された電子データ(以下、「枠画像データ」という。)を生成しておき、当該枠画像データをプリンタに印刷させることにより、マーキング用紙2が作成される。なお、枠画像データの生成は、人手によって行われてもよいし、所定のプログラムによって自動的に行われてもよい。帳票テンプレート画像に基づいてマーキング画像を自動生成する場合、帳票画像からの罫線の抽出や、各文字列を囲む矩形の抽出等は、公知の画像処理技術を用いればよい。
【0061】
本実施形態では、枠画像が記録されたマーキング用紙2において、ユーザは、マーキング領域とする矩形(罫線内の矩形が含まれてもよい)に蛍光ペン又は色鉛筆等、(黒以外の色)の色の筆記具によって記入を行う。図16Bでは、マーキングm1及びm2が記入された例が示されている。なお、図16Bに示されるように、マーキング領域とされる矩形内に、文字認識の対象とされる文字が記入される場合は、蛍光ペンが好適である。
【0062】
第四の実施形態の複合機100の処理内容は、第一〜第三の実施形態のいずれかと同様でよい。但し、マーキング画像の内容及びマーキング領域検出手段122の動作が第二の実施形態とは異なる。
【0063】
すなわち、第四の実施形態において、画像読み取り手段121によって生成されるマーキング画像には、ユーザによってマーキングされた画像(例えば、マーキングm1及びm2等を示す画像)だけでなく、枠画像も含まれる。また、マーキング領域検出手段122は、マーキング画像について二値化を行わずに、黒以外の色を有する描画部分(画素)を検出し、当該描画部分を含む矩形をマーキング領域として検出する。その結果、図7の例では、マーキングm1を含むマーキング領域21と、マーキングm2を含むマーキング領域22とが検出される。なお、各矩形の検出は、公知の画像処理技術を用いればよい。
【0064】
図16において、マーキング領域21及び22に含まれる「1」又は「2」の意味は、第二の実施形態と同様である。数字の代わりに、第三の実施形態と同様の文字が記入されてもよい。
【0065】
なお、マーキングm1及びm2は、必ずしもカラーでなくてもよい。マーキングm1及びm2等がカラーに限定されない場合、マーキング領域検出手段122は、上記実施形態と同様に、マーキング画像を二値化する。続いて、マーキング領域検出手段122は、二値化されたマーキング画像と、予め保存されている枠画像データによって示される枠画像との差分を抽出することにより、マーキングm1及びm2等を検出する。その他の処理は上記より自明であるため省略する。なお、複数種類の帳票1を処理する場合、帳票1の種類ごとに枠画像が異なりうる。したがって、このような場合には、帳票1の種類の識別子が埋め込まれたバーコード等を、当該種類に対応した枠画像と共にマーキング用紙2に記録しておけばよい。マーキング領域検出手段122は、当該バーコードより読み取られた識別子に対応する枠画像データによって示される枠画像と、マーキング用紙2より読み取られたマーキング画像との差分を抽出する。
【0066】
本実施形態によれば、マーキング領域は、予め解析された矩形領域単位で検出されるため、より高い精度でマーキング領域を特定することができる。また、行間検出手段123及び文字間検出手段124等の必要性を低減させることができ、処理内容をより単純化することができる。
[第五の実施形態]
図17に、本発明の第五の実施形態の画像形成装置である複合機で使用する帳票及びマーキング用紙を示す。また、図18に、本実施形態の複合機内部の画像処理を示す。本実施形態は第一の実施形態と構成をほぼ同じくするものであり、マーキング用紙に予めバーコードを出力しておく点で異なる。
【0067】
図17Aに示すように、本実施形態における帳票画像は第1の実施形態(図3A)と同じである。一方、マーキング画像については、図17Bに示すように、第1の実施形態(図3B)と同様、帳票番号である「NO.B1112745N」という文字12に対応するマーキング領域22はあるものの、「帳票」という文字11に対応するマーキング領域は無く、代わりにバーコード23が有る。バーコード23には、ユーザが指定した単語が埋め込まれており、ここでは埋め込まれている単語は「帳票」である。
【0068】
また、複合機100の内部では、図18に示すように、第1の実施形態(図5)における画像処理のフローに加えて、バーコード認識手段129を設け、その出力を文字連結手段127に供給するようにした。
【0069】
これにより、第一の実施例と同様にマーキング領域22を検出し、帳票画像データにおける該領域に対して文字認識を施すことにより、「NO.B1112745N」という文字列を得る。また、バーコード23を読み取ることにより、「帳票」という単語を認識する。後は第一の実施形態と全く同様で、文字連結手段127で連結することにより、「帳票NO.B1112745N_01.jpg」がファイル名となる。
【0070】
同じフォーマットの帳票を何度も読み取る場合、一部の単語は文字認識しないでも予め分かっている場合がある。例えば、本実施形態で例示している「帳票」と言う言葉は、このフォーマットの帳票では必ず記載されている単語である。これらを毎回文字認識しても構わないが、文字認識の識別精度に比べてバーコードの識別精度は格段に高い。
【0071】
そこで、本実施形態のように、キーワードを予め埋め込んだバーコードが出力された紙をマーキング用紙として利用すれば、毎回精度良くファイル名に利用する単語を検出できる。これにより、ユーザがファイル名を修正する確率が低くなることから、認識結果が間違いであった場合の修正工数を削減でき、より利便性が向上する。尚、本実施形態ではバーコードを利用したが、二次元コードであっても構わないし、他のコードであっても構わない。
[第六の実施形態]
第六の実施形態の帳票及びマーキング用紙は、第五の実施形態と同様でよい。また、第六の実施形態における複合機100の内部の画像処理も第五の実施形態と同様でよい。但し、第六の実施形態では、バーコード23に埋め込まれている情報が異なる。第六の実施形態では、帳票画像データの保存位置を示す文字列(フォルダ名)が記録されている。
【0072】
したがって、第六の実施形態において、バーコード認識手段129は、バーコード23より文字列を抽出する。文字列連結手段127は、連結された文字列(ファイル名)に対して、バーコード認識手段129によって抽出された文字列をフォルダ名として付加することにより、ファイルパス名を生成する。その結果、帳票画像データは、画像保持手段128において、バーコード23によって指定されたフォルダ名に係るフォルダの下に保存される。
【0073】
本実施形態によれば、帳票画像データの保存場所を適切に分類することができる。例えば、帳票の種類に応じたフォルダ名が埋め込まれたバーコード23を有するマーキング用紙2を帳票の種類ごとに作成しておく。保存する帳票1の種類に応じたマーキング用紙2を利用すれば、帳票1の種類毎に異なるフォルダに帳票画像データを保存させることができる。
【0074】
なお、フォルダ名は情報量が多いため、フォルダ名を埋め込むためのバーコード23として、QRコード等の2次元コードを利用してもよい。また、保存位置を示す文字列は、フォルダ名に限定されない。例えば、URL(Uniform Resource Locator)等が、保存位置を示す文字列として用いられてもよい。
[第七の実施形態]
ここまでの実施形態では、ファイルの命名についてのみ説明を行ってきた。しかし、本発明を用いて実現できるのはファイルの命名に限らない。例えば、マーキング画像から読み取った文字(記号)と帳票画像から読み取ったテキストを関連付けて、XMLデータとして出力することが可能である。これにより、どんなフォーマットの帳票に対しても、適切なマーキング画像を用意するだけで対応可能なアプリケーションが構築できることになる。
【0075】
図19に、本発明の第七の実施形態の画像形成装置である複合機で使用する帳票及びマーキング用紙を示す。また、図20に、本実施形態の複合機内部の画像処理を示す。
【0076】
図19Aに示すように、帳票1には、帳票番号を表す数字13と請求金額を表す数字14が記載されている。一方、マーキング用紙2には、マーキング領域24及び25が配列されており、それぞれの内部に数字「1」、「2」が記入されている。
【0077】
また、複合機100の内部の画像処理のフローとして、図20に示すように、第1の実施形態(図5)における文字認識手段126と同じ動作を行う第一の文字認識手段126−1に加えて、マーキング領域24、25の内部の文字認識を行う第二の文字認識手段126−2と、それらの文字認識手段の出力を関連付けてXML形式のデータとして出力するXML出力手段130を設けた。
【0078】
つまり、予め、帳票NOは「1」、請求金額は「2」といった番号に対する領域の種別を決めておく。ユーザは新しい帳票を入手した際には、マーキング用紙にマーキング領域を書き込み、各領域の種別に対応した数字を書き込む。その後、重ねてスキャンするだけで、どんなフォーマットの帳票も所定のデータベースに導入可能になる。
【0079】
これまでに同様の操作を実現するには、帳票のフォーマット毎に、読み取りルールを構築し、アプリケーションに対して設定してやる必要があった。この作業はPC(パーソナルコンピュータ)の操作に不慣れなユーザにとっては敷居の高い作業であり、ユーザによっては、システムエンジニアに依頼する必要があった。本実施形態のように、直感的な操作で様々なフォーマットに対する読み取りルールを構築することで、ユーザの利便性は格段に向上する。
【0080】
以上デジタル複合機を用いて様々な実施形態について述べたが、本発明はデジタル複合機の範囲にとどまるものではない。スキャナと演算装置が存在すれば本発明は実施可能である。例えば、スキャナは個人向けのフラットベッドスキャナを使っても良いし、マーキング領域検出などの処理はスキャナとネットワークで繋がれたPCなどを利用しても一向に構わない。
[第八の実施形態]
次に、第八の実施の形態において説明した技術を要素技術として利用した情報処理システムについて説明する。図21は、第八の実施形態における情報処理システムの構成例を示す図である。同図の情報処理システム5において、一台以上の画像形成装置30と、一台以上のユーザ端末40とは、LAN(Local Area Network)又はインターネット等のネットワーク(有線又は無線の別は問わない。)を介して接続されている。
【0081】
画像形成装置30は、スキャン、印刷、コピー、及びFAX送受信等の機能を一台の筐体によって実現する複合機である。本実施の形態において、画像形成装置30は、スキャン機能及び印刷機能の双方を備えているのが好適である。但し、スキャン機能又は印刷機能のいずれか一方を備える機器が画像形成装置30として用いられてもよい。この場合、情報処理システム5は、スキャン機能を備える機器を少なくとも一台含み、印刷機能を備える機器を少なくとも一台含めばよい。
【0082】
ユーザ端末40は、ユーザが利用する個人端末であり、ソフトウェアプログラムのインストール及び実行が可能であり、通信機能を有するものであれば、特定の装置に限定されない。ユーザ端末40の具体例として、デスクトップ型のPC(Personal Computer)、ノートPC、PDA(Personal Digital Assistance)、又は携帯電話等が挙げられる。
【0083】
ユーザ端末40のソフトウェア構成について説明する。図21において、ユーザ端末40は、マーキング用紙印刷ウィジェット41a、帳票スキャンウィジェット41b、ウィジェットマネージャ42、バーコードエンコーダ43、バーコードデコーダ44、帳票テンプレート解析部45、ファイル名生成部46、及びOS47等を有する。
【0084】
マーキング用紙印刷ウィジェット41a及び帳票スキャンウィジェット41bは、本実施の形態において、「ウィジェット41」として総称されるアプリケーションプログラムである。近年では、ウィジェット(Widget)又はガジェット(Gadget)とよばれる手軽なアプリケーションが流通している。本実施の形態では、手軽にインストールして利用可能なアプリケーションという程度の意味においてこれらのアプリケーションをウィジェット41と呼ぶ(すなわち、技術的な意義において限定する趣旨ではない)。但し、本実施の形態において、各ウィジェット41は、画像形成装置30の機能を利用して所定の処理フロー(例えば、ワークフロー等の一連の処理フロー)を実現するという点において共通する。
【0085】
マーキング用紙印刷ウィジェット41aは、第六の実施形態のように予めバーコード等が記録されたマーキング用紙を印刷するための印刷ジョブを画像形成装置30に実行させる。
【0086】
帳票スキャンウィジェット41bは、マーキング用紙及び帳票に関して画像形成装置30にスキャンジョブを実行させる。帳票スキャンウィジェット41bは、スキャンされたマーキング画像データ及び帳票画像データに基づいて生成されるファイル名によって、当該帳票画像データをユーザ端末40の記憶装置に保存する。
【0087】
ウィジェットマネージャ42は、ウィジェット41と画像形成装置30との間の通信の仲介等を行う。各ウィジェット41は、ウィジェットマネージャ42によって規定されるインタフェース及び処理手順を備える必要がある。換言すれば、ウィジェットマネージャ42と協調して動作するアプリケーションが、本実施の形態におけるウィジェット41である。
【0088】
バーコードエンコーダ43は、文字列を入力情報とし、当該文字列を示すバーコード画像データを生成する。バーコードデコーダ44は、バーコード画像データを入力情報とし、当該バーコード画像に埋め込まれている文字列を抽出する。
【0089】
帳票テンプレート解析部45は、帳票のテンプレートデータ(帳票テンプレートデータ)を解析して、未記入の帳票の文字列を囲む矩形や罫線等が記録された枠画像データを生成する。帳票テンプレートデータとは、未記入の帳票のフォーマットが記録された電子データをいう。帳票テンプレートデータは、画像データでもよいし、所定のアプリケーション(ワープロソフト又は表計算ソフト等)によって生成された文書データでもよい。テンプレートデータから枠画像データの生成は、公知の画像処理技術を用いればよい。なお、帳票テンプレートデータをユーザが有している状況として、当該帳票テンプレートデータに係る帳票が、発注伝票等、当該ユーザが記入して使用する帳票である状況を想定するとよい。
【0090】
ファイル名生成部46は、マーキング画像データに基づいて帳票画像データより文字列を抽出し、当該文字列に基づいて帳票画像データに対するファイル名を抽出する。
【0091】
OS47は、いわゆるOS(Operating System)である。ユーザ端末40上の各ソフトウェアは、OS47上においてプロセス又はスレッドとして動作する。
【0092】
画像形成装置30のソフトウェア構成について説明する。図21において、画像形成装置30は、標準アプリ321、SDKアプリ322、SDKプラットフォーム323、コントロールサービス324、及びOS325等を有する。
【0093】
標準アプリ321は、画像形成装置30に標準的に(出荷時に予め)実装されているアプリケーションの集合である。同図では、スキャンアプリ3211、印刷アプリ3212、コピーアプリ3213、及びFAXアプリ3214が例示されている。スキャンアプリ3211は、スキャンジョブを実行する。印刷アプリ3212は印刷ジョブを実行する。コピーアプリ3213は、コピージョブを実行する。FAXアプリ3214は、FAXの送信ジョブ又は受信ジョブを実行する。
【0094】
コントロールサービス324は、各種のハードウェアリソース等を制御するための機能を上位アプリケーション等に対して提供するソフトウェアモジュール群であり、例えば、ネットワーク通信に関する機能、スキャナの制御機能、プリンタの制御機能、メモリの管理機能等を有する。
【0095】
SDKアプリ322は、画像形成装置30の出荷後において、画像形成装置30の機能拡張を図るためのプラグインとして追加的にインストールされるアプリケーションである。同図では、SDKアプリ322として、プロバイダアプリ3221が例示されている。プロバイダアプリ3221は、ウィジェット41を画像形成装置30より操作可能とするための処理を実行する。
【0096】
SDKプラットフォーム323は、SDKアプリ322の実行環境を提供する。各SDKアプリ322は、SDKプラットフォーム323が提供するAPI(Application Program Interface)を利用して開発される。例えば、SDKプラットフォーム323は、スキャン機能を利用させるためのインタフェース、印刷機能を利用させるためのインタフェース、コピー機能を利用させるためのインタフェース等をSDKアプリ322に提供する。なお、SDKプラットフォーム323のAPIは公開されており、サードベンダ等によってもSDKアプリ322は開発されうる。
【0097】
OS325は、いわゆるOS(Operating System)である。画像形成装置30上の各ソフトウェアは、OS325上においてプロセス又はスレッドとして動作する。
【0098】
続いて、各装置のハードウェア構成について説明する。図22は、第八の実施形態における画像形成装置のハードウェア構成例を示す図である。図22において、画像形成装置30は、コントローラ31、スキャナ32、プリンタ33、モデム34、操作パネル35、ネットワークインタフェース36、及びSDカードスロット37等のハードウェアを有する。
【0099】
コントローラ31は、CPU311、RAM312、ROM313、及びHDD314等を有する。ROM313には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。RAM312は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU311は、RAM312にロードされたプログラムを処理することにより、各種の機能を実現する。HDD314には、プログラムやプログラムが利用する各種のデータ等が記録される。
【0100】
スキャナ32は、原稿より画像データを読み取るためのハードウェアである。プリンタは13、印刷データを印刷用紙に印刷するためのハードウェアである。モデム34は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。操作パネル35は、ユーザからの入力の受け付けを行うめのボタン等の入力手段や、液晶表示部等の表示手段を備えたハードウェアである。ネットワークインタフェース36は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット37は、SDカード80に記録されたプログラムを読み取るために利用される。すなわち、画像形成装置30では、ROM313に記録されたプログラムだけでなく、SDカード80に記録されたプログラムもRAM312にロードされ、実行されうる。なお、他の記録媒体(例えば、CD−ROM又はUSB(Universal Serial Bus)メモリ等)によってSDカード80が代替されてもよい。すなわち、SDカード80の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、SDカードスロット37は、記録媒体の種類に応じたハードウェアによって代替されればよい。
【0101】
図23は、第八の実施形態におけるユーザ端末のハードウェア構成例を示す図である。図23のユーザ端末40は、それぞれバスBで相互に接続されているドライブ装置400と、補助記憶装置402と、メモリ装置403と、CPU404と、インタフェース装置405と、表示装置406と、入力装置407とを有する。
【0102】
ユーザ端末40での処理を実現するプログラムは、CD−ROM又はメモリカード等の記録媒体401によって提供される。プログラムを記録した記録媒体401がドライブ装置400にセットされると、プログラムが記録媒体401からドライブ装置400を介して補助記憶装置402にインストールされる。但し、プログラムのインストールは必ずしも記録媒体401より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置402は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0103】
メモリ装置403は、プログラムの起動指示があった場合に、補助記憶装置402からプログラムを読み出して格納する。CPU404は、メモリ装置403に格納されたプログラムに従ってユーザ端末40に係る機能を実現する。インタフェース装置405は、ネットワーク接続用のインタフェース、USB(Universal Serial Bus)接続用のインタフェース、Bluetooth等の無線通信用のインタフェース等、各種通信用のインタフェースである。表示装置406はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置407はキーボード、マウス等のポインティングデバイス、又はボタン等で構成され、様々な操作指示を入力させるために用いられる。
【0104】
続いて、ウィジェット41、ウィジェットマネージャ42、及びプロバイダアプリ3221について更に詳しく説明する。図24は、ウィジェット、ウィジェットマネージャ、及びプロバイダアプリの機能構成例を示す図である。
【0105】
同図に示されるように、各ウィジェット41は、ウィジェットUI部411、ウィジェット情報送信部412、連携部413、ロジック部414、及び属性情報管理ファイル415等を有する。
【0106】
ウィジェットUI部411は、ウィジェット41に関する各種の表示制御及び入力制御等を行う。ウィジェット情報送信部412は、ウィジェット41が起動されたとき等に、ウィジェット情報(ウィジェット41の属性情報)の登録要求をウィジェットマネージャ42に送信する。連携部413は、プロバイダアプリ3221との連携のための通信(情報のやりとり等)を制御する。属性情報管理ファイル415は、ウィジェット41対する属性情報を格納するファイルである。属性情報には、ウィジェット41に対する設定情報も含まれる。設定情報は、ウィジェット41の振る舞い又はウィジェット41によって実行されるジョブの内容を規定するパラメータの集合である。ロジック部414は、各ウィジェット41に固有の機能が実装される部分である。例えば、マーキング用紙印刷ウィジェット41aのロジック部414は、マーキング用紙を印刷するための印刷ジョブを画像形成装置30に実行させる。帳票スキャンウィジェット41bのロジック部414は、マーキング用紙及び帳票に関して画像形成装置30にスキャンジョブを実行させる。帳票スキャンウィジェット41bのロジック部414は、スキャンされたマーキング画像データ及び帳票画像データに基づいて生成されるファイル名によって、当該帳票画像データをユーザ端末40の記憶装置に保存する。
【0107】
なお、ウィジェット41に含まれる各部について、マーキング用紙印刷ウィジェット41aに属するものと帳票スキャンウィジェット41bに属するものとを区別する場合、前者については「a」を、後者については「b」を参照番号の末尾に付加する。例えば、マーキング用紙印刷ウィジェット41aのロジック部414は、「ロジック部414a」と表記される。
【0108】
ウィジェットマネージャ42は、ウィジェット情報登録部421、広告部422、ウィジェット情報提供部423、仲介部424、及びウィジェット情報管理テーブル427等を有する。
【0109】
ウィジェット情報登録部421は、ウィジェット41より送信されるウィジェット情報の登録要求を受信し、当該ウィジェット情報をウィジェット情報管理テーブル427に保存する。ウィジェット情報管理テーブル427には、ユーザ端末40において起動されている各ウィジェット41のウィジェット情報が登録されるテーブルであり、ユーザ端末40の補助記憶装置402に記録される。
【0110】
広告部422は、ウィジェット情報登録部421によって受信されたウィジェット情報に含まれるユーザID等をネットワーク上に広告(ブロードキャスト又はマルチキャスト等)する。広告は、ユーザ単位(ユーザID単位)で発行される。したがって、広告部422による広告は、何らかのウィジェット41を利用可能になったユーザが新たに発生したことを画像形成装置30に通知するための情報であるといえる。
【0111】
ウィジェット情報提供部423は、画像形成装置30からの要求に応じ、ウィジェット情報管理テーブル427に登録されているウィジェット情報を画像形成装置30に提供(送信)する。仲介部424は、ウィジェット41とプロバイダアプリ3221との通信を仲介又は中継する。
【0112】
プロバイダアプリ3221は、ユーザ検知部331、UI制御部332、ウィジェット情報取得部333、ウィジェット連携部334、機能制御部335、及びユーザ管理テーブル336等を有する。
【0113】
ユーザ検知部331は、ウィジェットマネージャ42より発行される広告に基づいて、ウィジェット41を利用可能なユーザの存在を検知し、広告に含まれているユーザID等をユーザ管理テーブル336に登録する。ユーザ管理テーブル336は、利用可能なウィジェット41がネットワーク上に存在するユーザの一覧を管理するテーブルである。
【0114】
UI制御部332は、ユーザよりウィジェット41の操作指示等の入力を受け付ける。すなわち、ウィジェット41は、ユーザ端末40に配置されているが、画像形成装置30の操作パネル35からも操作されうる。ウィジェット情報取得部333は、ユーザ管理テーブル336に登録されているユーザの中から選択されたユーザに属するウィジェット41のウィジェット情報をウィジェットマネージャ42より取得する。ウィジェット連携部334は、ウィジェットマネージャ42との通信を制御する。機能制御部335は、ウィジェット41から要求された機能の実行を制御する。機能を実現するための処理は、標準アプリ321や他のSDKアプリ322に委譲される。
【0115】
以下、情報処理システム5の処理手順について説明する。ウィジェット41を利用する前に、ユーザは、ユーザ端末40においてウィジェットマネージャ42を起動しておく必要がある。そこで、まず、ウィジェットマネージャ42の起動時の処理手順について説明する。
【0116】
図25は、ウィジェットマネージャの起動時の処理手順を説明するためのシーケンス図である。
【0117】
ユーザの指示に応じ、又は自動的にウィジェットマネージャ42が起動されると、ウィジェットマネージャ42の広告部422は、ログインユーザのユーザIDとウィジェット情報取得用URLとを含むユーザ情報の広告をネットワーク上に送信する(S101)。
【0118】
続いて、プロバイダアプリ3221のユーザ検知部331は、広告を受信すると、当該広告に含まれているユーザID及びウィジェット情報取得用URLをユーザ管理テーブル336に登録する(S102)。
【0119】
図26は、ユーザ管理テーブルの構成例を示す図である。同図に示されるように、ユーザ管理テーブル336は、ユーザIDとウィジェット情報取得用URLとの組(ペア)を管理する。ウィジェット情報取得用URLは、ウィジェットマネージャ42ごとに一意なURLである。ウィジェットマネージャ42は、一台のユーザ端末40において一つ起動されればよい。すなわち、ウィジェットマネージャ42は、複数のウィジェット41から共用される。同図では、ユーザA及びユーザBについてレコードが登録されている例が示されている。ユーザ管理テーブル336は、例えば、HDD314に記憶されている。
【0120】
ウィジェットマネージャ42の起動後、ユーザは、マーキング用紙印刷ウィジェット41a又は帳票スキャンウィジェット41bを利用することが可能となる。
【0121】
続いて、マーキング用紙印刷ウィジェットへのジョブ投入時の処理手順について説明する。図27は、マーキング用紙印刷ウィジェットへのジョブ投入時の処理手順を説明するためのシーケンス図である。
【0122】
マーキング用紙印刷ウィジェット41aの起動に応じ、マーキング用紙印刷ウィジェット41aのウィジェットUI部411aは、マーキング用紙印刷ウィジェット41aのアイコンを表示装置406に表示させる。ユーザによる入力装置407(マウス)の操作により、帳票テンプレートデータファイルがマーキング用紙印刷ウィジェット41aのアイコンにドラッグ&ドロップされると(S201)、マーキング用紙印刷ウィジェット41aのウィジェットUI部411には、ドロップされた帳票テンプレートデータファイルのファイルパス名がOS47より通知される。なお、帳票テンプレートデータファイルとは、帳票テンプレートデータが格納されているファイルである。
【0123】
続いて、マーキング用紙印刷ウィジェット41aのロジック部414aは、当該ファイルパス名より帳票テンプレートデータファイルが保存されているフォルダ名(フォルダのパス名)を抽出する(S202)。続いて、ロジック部414aは、抽出されたフォルダ名をバーコードエンコーダ43に入力する(S203)。バーコードエンコーダ43は、入力されたフォルダ名が埋め込まれたバーコード画像を示すデータ(バーコード画像データ)を生成する(S204)。バーコード画像のサイズ(幅及び高さ)は、所定の値とされる。続いて、バーコードエンコーダ43は、生成されたバーコード画像データをロジック部414aに出力する(S205)。
【0124】
続いて、ロジック部414aは、ドロップされた帳票テンプレートデータファイルのファイルパス名を帳票テンプレート解析部45に入力する(S206)。帳票テンプレート解析部45は、入力されたファイルパス名に係る帳票テンプレートデータファイルより帳票テンプレートデータを取得し、当該帳票テンプレートデータに所定の画像処理を実行することにより、帳票のテンプレートの枠画像データを生成する(S207)。続いて、帳票テンプレート解析部45は、枠画像データをロジック部414aに出力する(S208)。
【0125】
続いて、ロジック部414aは、枠画像データが示す枠画像の所定の位置(例えば、右上)に、バーコード画像データが示すバーコード画像を合成して(重畳させて)、マーキング用紙データを生成する(S209)。マーキング用紙データは、マーキング用紙の元となる画像データをいう。すなわち、マーキング用紙データが印刷されることにより、マーキング用紙が作成される。続いて、ロジック部414aは、マーキング用紙データ及び帳票テンプレートデータのそれぞれについて印刷データを生成する(S210)。印刷データは、画像形成装置30が解釈可能なデータをいい、例えば、非図示のプリンタドライバを利用して生成される。但し、TIFF(Tagged Image File Format)等の所定の画像データを直接解釈可能なプリンタも存在する。したがって、マーキング用紙データ及び帳票テンプレートデータが、画像形成装置30に解釈可能なデータ形式であれば、ステップS210は、必ずしも実行されなくてもよい。
【0126】
続いて、マーキング用紙印刷ウィジェット41aのウィジェット情報送信部412aは、マーキング用紙データの印刷データ及び帳票テンプレートデータの印刷データ等を含むウィジェット情報の登録要求をウィジェットマネージャ42に送信する(S211)。なお、マーキング用紙印刷ウィジェット41aのウィジェット情報は、投入されたジョブに関する属性情報に相当する。また、各ウィジェット41には、ウィジェットマネージャ42と通信するための識別情報(例えば、ウィジェットマネージャ42のURL(Uniform Resource Locator)等)が予め設定されている。
【0127】
図28は、マーキング用紙印刷ウィジェットのウィジェット情報の例を示す図である。同図において、マーキング用紙印刷ウィジェット41aのウィジェット情報は、ウィジェットID、ユーザID、連携機能識別子、ウィジェットアドレス、表示名、設定情報、及び印刷データ等を含む。
【0128】
ウィジェットIDは、各ウィジェット41を一意に識別する識別情報である。ユーザIDは、マーキング用紙印刷ウィジェット41aの所有者であるユーザの識別情報である。連携機能識別子は、マーキング用紙印刷ウィジェット41aと連携する画像形成装置30が有している必要のある機能(換言すれば、マーキング用紙印刷ウィジェット41aが利用する機能)を識別するための情報である。連携機能識別子の一例として「print」、「scan」等が挙げられる。「print」は、印刷機能を示す。「scan」は、スキャン機能を示す。マーキング用紙印刷ウィジェット41aは、画像形成装置30の印刷機能を利用する。したがって、図28の例では、「print」が連携機能識別子とされている。ウィジェットアドレスは、ネットワーク通信において各ウィジェットを一意に識別するための識別情報(例えば、URL等)である。表示名は、マーキング用紙印刷ウィジェット41aの名前の表示用の文字列である。
【0129】
マーキング用紙印刷ウィジェット41aの属性情報管理ファイル415に格納されている、マーキング用紙の印刷ジョブに関する設定情報である。設定情報を構成するパラメータとして、例えば、用紙サイズ等が挙げられる。印刷データとしては、マーキング用紙データの印刷データと、帳票テンプレートデータの印刷データとが含まれている。
【0130】
ステップS211においてマーキング用紙印刷ウィジェット41aのウィジェット情報送信部412aより送信されたウィジェット情報は、ウィジェットマネージャ42のウィジェット情報登録部421によって受信される。ウィジェット情報登録部421は、受信されたウィジェット情報に含まれているユーザIDに対応するウィジェット情報管理テーブル427に当該ウィジェット情報を登録する(S212)。これによって、ウィジェットマネージャ42には、マーキング用紙印刷ウィジェット41aのジョブが登録されたことになる。
【0131】
ユーザ端末40においてマーキング用紙印刷ウィジェット41aにジョブを投入後、ユーザは、当該ジョブを実行させるために画像形成装置30の設置場所へ移動する。なお、複数の画像形成装置30がネットワークに接続されている場合、同一の広告が各画像形成装置30のユーザ検知部331によって受信され、それぞれの画像形成装置30のユーザ管理テーブル336にユーザID及びウィジェット情報取得用URLが登録される。したがって、ユーザは、印刷機能を備えた画像形成装置30であれば、複数の画像形成装置30のいずれからも当該ジョブを実行させることができる。
【0132】
続いて、画像形成装置30におけるユーザによる操作に応じて実行される処理について説明する。図29は、実行可能なウィジェットの一覧の表示処理の処理手順を説明するためのシーケンス図である。
【0133】
ユーザによって操作パネル35を介してプロバイダアプリ3221の利用指示が入力されると(S301)、プロバイダアプリ3221のUI制御部332は、ユーザ管理テーブル336に登録されている情報に基づいてユーザ選択画面を操作パネル35に表示させる(S302)。
【0134】
図30は、ユーザ選択画面の表示例を示す図である。同図に示されるユーザ選択画面610には、ユーザIDごとにボタンが表示されている。同図では、ユーザAに対応するボタン611とユーザBに対応するボタン612とが表示されている。
【0135】
続いて、ユーザは、ユーザ選択画面610において自らのユーザIDに対応するボタンを押下する(S303)。ボタンの押下に応じ、ウィジェット情報取得部333は、選択されたボタンに対応するユーザIDに関連付けられているウィジェット情報取得用URLをユーザ管理テーブル336より取得する。なお、ユーザIDに対応するボタンの押下に応じ、ユーザの認証を行い、ユーザが認証された場合にのみ以降の処理が実行されるようにしてもよい。
【0136】
続いて、ウィジェット情報取得部333は、選択されたユーザIDに対応するウィジェット情報取得用URL宛に、ウィジェット情報の取得要求を送信する(S304)。ウィジェット情報の取得要求は、ウィジェットマネージャ42のウィジェット情報提供部423によって受信される。ウィジェット情報提供部423は、ウィジェット情報取得用URLに対応するウィジェット情報管理テーブル427(すなわち、画像形成装置30を操作中のユーザに対応するウィジェット情報管理テーブル427)に登録されているウィジェット情報の一覧を取得し、当該一覧をプロバイダアプリ3221に返信する(S305)。ウィジェット情報の一覧の送信に際し、ウィジェット情報提供部423は、プロバイダアプリ3221と各ウィジェット41との通信を中継するためのURL(以下、「ウィジェット中継用URL」という。)をウィジェットごと(ウィジェット情報ごと)に一意に生成する。ウィジェット情報提供部423は、ウィジェットごとに生成されたウィジェット中継用URLを、各ウィジェットに対応するウィジェット情報に付加し、ウィジェット中継用URLが付加されたウィジェット情報の一覧をプロバイダアプリ3221に送信する。したがって、ステップS305において送信されるウィジェット情報は、例えば、図31に示されるような構成を有する。
【0137】
図31は、ウィジェットマネージャからプロバイダアプリに送信されるマーキング用紙印刷ウィジェットのウィジェット情報の構成例を示す図である。
【0138】
図31に示されるウィジェット情報は、図28のウィジェット情報に対してウィジェット中継用URLが付加されたものである。また、同図のウィジェット情報には、ジョブの実体は含まれていない。すなわち、設定情報及び印刷データは含まれていない。この時点では、実行されるジョブが決定されておらず、ジョブの実体を転送する必要は無いからである。ステップS305では、同図に示されるようなウィジェット情報の一覧が送信される。ここでは、ウィジェット情報が一つしか含まれないものもウィジェット情報の一覧という。なお、後述されるように、帳票スキャンウィジェット41bがユーザ端末40において起動されている場合、当該一覧には、帳票スキャンウィジェット41bのウィジェット情報も含まれる。
【0139】
続いて、プロバイダアプリ3221のUI制御部332は、受信されたウィジェット情報の一覧をRAM312に記録しておき、当該ウィジェット情報の一覧に基づいて、ユーザに利用可能なウィジェット41の一覧を含む画面(ウィジェット選択画面)を表示させる(S306)。
【0140】
図32は、ウィジェット選択画面の表示例を示す図である。同図においてウィジェット選択画面620には、マーキング用紙印刷ウィジェット41aに対応するボタン621と帳票スキャンウィジェット41bに対応するボタン622とが表示されている。すなわち、同図は、マーキング用紙印刷ウィジェット41aのウィジェット情報と、帳票スキャンウィジェット41bのウィジェット情報とがステップS305において受信された場合のウィジェット選択画面620の表示例である。
【0141】
ウィジェット選択画面620においてボタン621が押下され、操作パネル35のスタートキーが押下されると、図33に示される処理が開始される。
【0142】
図33は、マーキング用紙印刷ウィジェットの実行時の処理手順を説明するためのシーケンス図である。
【0143】
ウィジェット連携部334は、押下されたボタン621に対応するウィジェット情報(以下、「カレントウィジェット情報」という。)に含まれている連携機能識別子(「print」)に基づいて、印刷を実行すべきことを認識する。印刷を実行するためにジョブの実体(印刷データ及び設定情報)を入手する必要がある。そこで、ウィジェット連携部334は、印刷データ及び設定情報の送信要求をカレントウィジェット情報に含まれているウィジェット中継用URL宛に送信する(S401)。
【0144】
ウィジェット中継用URL宛の印刷データ及び設定情報の送信要求は、ウィジェットマネージャ42の仲介部424によって受信される。仲介部424は、ウィジェット情報管理テーブル427に登録されているウィジェット情報の中で、当該ウィジェット中継用URLが対応するウィジェット情報より印刷データ及び設定情報を取得する。印刷データとしては、マーキング用紙データ及び帳票テンプレートデータのそれぞれの印刷データが取得される。仲介部424は、取得された印刷データ及び設定情報をプロバイダアプリ3221のウィジェット連携部334に返信する(S402)。
【0145】
ウィジェット連携部334は、受信された印刷データ及び設定情報を機能制御部335に入力する。続いて、機能制御部335は、入力された印刷データ及び設定情報に基づく印刷ジョブを印刷アプリ3212に実行させる(S403)。その結果、当該設定情報及び印刷データに基づく印刷画像が印刷された印刷用紙がプリンタ33より出力される。具体的には、マーキング用紙データの印刷データに基づいてマーキング用紙が印刷される。当該マーキング用紙には、バーコードと枠画像とが記録されている。また、帳票テンプレートデータに基づいて未記入の帳票も印刷される。
【0146】
上記のように印刷された帳票に対して、ユーザは必要事項を記入する。ユーザは、記入済みの帳票を電子データ(ファイル)として保存するため、マーキング用紙に対してマーキングを行う。ここでは、第四の実施の形態と同様、マーキング領域とする矩形に記入(マーキング)が行われる。その後、帳票スキャンウィジェット41b及び画像形成装置30等を利用して、帳票の電子化及び保存が行われる。
【0147】
そこで、次に、帳票スキャンウィジェット41bの動作について説明する。図34は、帳票スキャンウィジェットの起動時の処理手順を説明するためのシーケンス図である。
【0148】
ユーザ端末40においてユーザによって入力される帳票スキャンウィジェット41bの起動指示に応じ、帳票スキャンウィジェット41bの表示制御部2111bは、帳票スキャンウィジェット41bのアイコンを表示装置406に表示させる(S501)。続いて、帳票スキャンウィジェット41bのウィジェット情報送信部412は、属性情報管理ファイル415bよりウィジェット情報を取得し、当該ウィジェット情報の登録要求をウィジェットマネージャ42に送信する(S502)。
【0149】
図35は、帳票スキャンウィジェットのウィジェット情報の例を示す図である。同図に示されるウィジェット情報の構成は、図28において説明したマーキング用紙印刷ウィジェット41aのウィジェット情報の構成とほぼ同様である。但し、帳票スキャンウィジェット41bのウィジェット情報には印刷データは含まれていない。また、帳票スキャンウィジェット41bに対する設定情報の構成は、マーキング用紙印刷ウィジェット41aに対する設定情報の構成と異なる。また、帳票スキャンウィジェット41bは、画像形成装置30のスキャン機能を利用する。したがって、連携識別子の値は「scan」とされている。
【0150】
ステップS502において、帳票スキャンウィジェット41bのウィジェット情報送信部412bより送信されたウィジェット情報は、ウィジェットマネージャ42のウィジェット情報登録部421によって受信される。ウィジェット情報登録部421は、受信されたウィジェット情報に含まれているユーザIDに対応するウィジェット情報管理テーブル427に当該ウィジェット情報を登録する(S503)。
【0151】
以上で帳票スキャンウィジェット41bのウィジェット情報はウィジェットマネージャ42に登録された。
【0152】
その後、ユーザは、帳票スキャンウィジェット41bを実行させるために画像形成装置30の設置場所へ移動する。マーキング用紙印刷ウィジェット41aと同様、広告を受信しており、スキャン機能を備えた複数の画像形成装置30のいずれからも帳票スキャンウィジェット41bを実行させることができる。
【0153】
画像形成装置30の操作パネル35を介した操作によって、ウィジェット選択画面620を表示させるまでに実行される処理手順は、図29において説明した通りである。図29の処理によって、ウィジェットマネージャ42に登録された帳票スキャンウィジェット41bのウィジェット情報は、画像形成装置30に転送される。当該ウィジェット情報は、図35に示されるウィジェット情報にウィジェット中継用URLが付加されたものである。当該ウィジェット情報に基づいて、ウィジェット選択画面620には、図32に示されるように帳票スキャンウィジェット41bに対応するボタン622が表示される。
【0154】
ウィジェット選択画面620表示後の帳票スキャンウィジェット41bに関する処理手順について説明する。図36は、帳票スキャンウィジェット実行時の処理手順を説明するためのシーケンス図である。
【0155】
まず、原稿として、マーキング用紙及び帳票が重ねられて画像形成装置30のADFにセットされる。なお、当該マーキング用紙は、マーキング用紙印刷ウィジェット41aを利用して印刷され、マーキングが行われたものである。また、当該帳票は、マーキング用紙印刷ウィジェット41aを利用して印刷され、記入が行われたものである。マーキング用紙及び帳票がADFにセットされた状態で、ウィジェット選択画面620において、帳票スキャンウィジェット41bに対応するボタン622が選択される(S601)。プロバイダアプリ3221のウィジェット連携部334は、押下されたボタン622に対応するウィジェット情報(以下、「カレントウィジェット情報」という。)に含まれている連携機能識別子(「scan」)に基づいて、スキャンを実行すべきことを認識する。そこで、ウィジェット連携部334は、スキャンの実行を機能制御部335に要求する。
【0156】
機能制御部335は、カレントウィジェット情報に含まれている設定情報に基づくスキャンジョブをスキャンアプリ3211に実行させる(S602)。スキャンアプリ3211は、画像形成装置30にセットされたマーキング用紙及び帳票に対するスキャンをスキャナ32に実行させ、その結果得られる画像データ(マーキング画像データ及び帳票画像データ)をウィジェット連携部334に出力する。以下、マーキング画像データ及び帳票画像データを総称する場合、「スキャン画像データ」という。
【0157】
ウィジェット連携部334は、スキャン画像データをカレントウィジェット情報に含まれているウィジェット中継用URL宛に送信する(S603)。ウィジェット中継用URL宛に送信されたスキャン画像データは、ウィジェットマネージャ42の仲介部424によって受信される。
【0158】
一方、帳票スキャンウィジェット41bは、ウィジェット情報を送信した後、画像形成装置30において画像データがスキャンされたことを確認するためのポーリングを行い、画像データの転送(返信)を待機している。具体的には、帳票スキャンウィジェット41bの連携部413bは、スキャンされた画像データの取得要求をウィジェットマネージャ42の仲介部424に送信する(S511)。仲介部424は、当該取得要求に対する応答を行う(S512)。
【0159】
仲介部424は、スキャン画像データの受信後に受信される、画像データの取得要求(S511)に応じ、当該取得要求元の帳票スキャンウィジェット41bのウィジェット中継用URLに関して受信されているスキャン画像データを、帳票スキャンウィジェット41bの連携部413bに返信する(S512)。
【0160】
連携部413bは、スキャン画像データを受信すると、当該スキャン画像データをロジック部414bに入力する。ロジック部414bは、マーキング画像データをバーコードデコーダ44に入力する(S513)。バーコードデコーダ44は、マーキング画像データの所定の位置に含まれているバーコード画像よりフォルダ名を抽出し、当該フォルダ名をロジック部414bに出力する(S514)。
【0161】
続いて、ロジック部414bは、マーキング画像データ、帳票画像データ、及びバーコードデコーダ44より出力されたフォルダ名をファイル名生成部46に入力する(S515)。ファイル名生成部46は、例えば、第四の実施の形態等において説明した処理により、マーキング画像データ及び帳票画像データに基づいて、帳票画像データに対するファイル名を生成する(S516)。ファイル名生成部46は、生成されたファイル名をロジック部414bに出力する(S517)。
【0162】
なお、マーキング画像と枠画像との差分を抽出する場合、ファイル名生成部46は、入力されたフォルダ名に係るフォルダより帳票テンプレートデータを取得し、当該帳票テンプレートデータに基づいて枠画像データを生成する。ファイル名生成部46は、当該枠画像データが示す枠画像と、入力されたマーキング画像データが示すマーキング画像との差分を抽出する。ファイル名生成部46は、抽出された差分に基づいてマーキング用紙に対する記入位置を検出する。
【0163】
続いて、ロジック部414bは、帳票画像データを補助記憶装置402に保存する(S519)。より詳しくは、ロジック部414bは、バーコードデコーダ44より出力されたフォルダ名に係るフォルダの下に、ファイル名生成部46より出力されたファイル名に係るファイルを生成し、当該ファイルに帳票画像データを記録する。なお、マーキング画像データは、廃棄されてもよいし、帳票画像データとは異なるフォルダに保存されてもよい。
【0164】
上述したように、本実施形態によれば、画像形成装置30の処理負荷を軽減することができる。すなわち、マーキング用紙に印刷される画像の生成処理や、マーキング画像及び帳票画像に対する画像処理等は、ユーザ端末40によって実行される。したがって、本実施形態では、ユーザ端末40が、画像処理装置の一例に相当する。また、帳票画像データを、ユーザの任意のユーザ端末40に保存させることができる。
【0165】
なお、マーキング画像データに含まれているバーコードに埋め込まれているフォルダ名は、帳票テンプレートデータが保存されていたフォルダのフォルダ名である。したがって、本実施形態において、各帳票画像データは、対応する帳票テンプレートデータと同じフォルダに保存される。これは、一般的に、テンプレートファイル又はフォーマットファイル等と、内容が記入されたファイルとは、同じフォルダ内に整理されて保存される傾向にあることに鑑みたものである。但し、帳票画像データは、帳票テンプレートデータと異なるフォルダに保存されてもよい。例えば、帳票テンプレートデータは、「xxx/template」というフォルダに保存され、帳票画像データは、「xxx/data」というフォルダに保存されてもよい。この場合、ロジック部414bは、バーコードデコーダ44より出力されたフォルダ名を加工することにより得られるフォルダ名に係るフォルダに帳票画像データを保存すればよい。バーコードデコーダ44より出力されたフォルダ名を加工することにより得られるフォルダ名とは、上記の例では、「template」の部分に「data」を埋め込むことにより得られるフォルダ名である。なお、「xxx」は、例えば、帳票の種類を示す文字列である。
【0166】
また、本実施形態では、枠画像を含むマーキング用紙を適用した例を説明したが、枠画像を含まないマーキング用紙が用いられてもよい。すなわち、マーキング用紙には、フォルダ名が埋め込まれたバーコード画像のみが記録されるようにしてもよい。この場合、帳票テンプレート解析部45による処理は不要である。また、ファイル名生成部46は、第一〜第三の実施形態において説明したいずれかの処理を実行すればよい。
【0167】
また、マーキング用紙に記録されるバーコードに埋め込まれるフォルダ名は、帳票テンプレートデータとは無関係に決定されてもよい。例えば、マーキング用紙印刷ウィジェット41aの属性情報管理ファイル415に当該フォルダ名が設定されていてもよい。又は、例えば、マーキング用紙印刷ウィジェット41aのアイコンを操作することにより表示されるマーキング用紙印刷ウィジェット41aの設定画面を介して当該フォルダ名が設定されてもよい。
【0168】
また、マーキング用紙印刷ウィジェット41aは、必ずしも帳票テンプレートデータを印刷対象としなくてもよい。この場合、バーコード画像を含むマーキングデータのみが印刷対象とされる。
【0169】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0170】
1 帳票
2 マーキング用紙
5 情報処理システム
21,22 マーキング領域
23 バーコード
30 画像形成装置
31 コントローラ
32 スキャナ
33 プリンタ
34 モデム
35 操作パネル
36 ネットワークインタフェース
37 SDカードスロット
40 ユーザ端末
41a マーキング用紙印刷ウィジェット
41b 帳票スキャンウィジェット
42 ウィジェットマネージャ
43 バーコードエンコーダ
44 バーコードデコーダ
45 帳票テンプレート解析部
46 ファイル名生成部
47 OS
80 SDカード
100 画像形成装置
114 操作部
121 画像読み取り手段
122 マーキング領域検出手段
123 行間検出手段
124 文字間検出」手段
125 抽出領域検出手段
126 文字認識手段
126−1 第一の文字認識手段
126−2 第二の文字認識手段
127 文字連結手段
128 画像保持手段
129 バーコード認識手段
130 XML出力手段
311 CPU
312 RAM
313 ROM
314 HDD
321 標準アプリ
322 SDKアプリ
323 SDKプラットフォーム
324 コントロールサービス
325 OS
331 ユーザ検知部
332 UI制御部
333 ウィジェット情報取得部
334 ウィジェット連携部
335 機能制御部
336 ユーザ管理テーブル
400 ドライブ装置
401 記録媒体
402 補助記憶装置
403 メモリ装置
404 CPU
405 インタフェース装置
406 表示装置
407 入力装置
411 ウィジェットUI部
412 ウィジェット情報送信部
413 連携部
414 ロジック部
415 属性情報管理ファイル
421 ウィジェット情報登録部
422 広告部
423 ウィジェット情報提供部
424 仲介部
427 ウィジェット情報管理テーブル
B バス
【先行技術文献】
【特許文献】
【0171】
【特許文献1】特開平9−13406号公報
【特許文献2】特開2009−27648号公報
【特許文献3】特開2008−77454号公報
【特許文献4】特開平1−150974号公報
【特許文献5】特開平9−274643号公報

【特許請求の範囲】
【請求項1】
第一の用紙より読み取られた第一の画像データに基づいて、前記第一の用紙に対する記入位置を検出する記入位置検出手段と、
第二の用紙より読み取られた第二の画像データについて、前記記入位置に基づいて特定される領域に対して文字認識を実行する第一の文字認識手段とを有する画像処理装置。
【請求項2】
前記第一の文字認識手段による文字認識の結果に基づいて前記第二の画像データの識別名を生成する識別名生成手段を有する請求項1記載の画像処理装置。
【請求項3】
前記第二の画像データの特徴情報を検出し、前記特徴情報に基づいて前記領域を補正する補正手段を有する請求項1又は2記載の画像処理装置。
【請求項4】
前記第二の画像データについて前記領域に対して文字認識を実行する第二の文字認識手段を有し、
前記識別名生成手段は、前記第二の文字認識手段による文字認識の結果に基づいて前記識別名の生成処理を制御する請求項2記載の画像処理装置。
【請求項5】
前記第二の文字認識手段で識別可能な文字種は、第一の文字認識手段で識別可能な文字種よりも少ない請求項4記載の画像処理装置。
【請求項6】
前記第一の画像データに含まれているバーコードより文字列を抽出する抽出手段を有し、
前記文字列によって示される保存位置に前記前記第二の画像データを保存する請求項1乃至5いずれか一項記載の画像処理装置。
【請求項7】
前記第一の画像データは、前記第一の用紙より読み取られた図形を含み、
前記第一の文字認識手段は、前記記入位置に係る前記図形に基づいて特定される領域に対して文字認識を実行する請求項1乃至6いずれか一項記載の画像処理装置。
【請求項8】
前記第二の画像データについて前記領域に対して文字認識を実行する第二の文字認識手段と、
前記第二の文字認識手段による文字認識の結果と前記第一の文字認識手段による文字認識の結果とが関連付けられたXMLデータを出力するXMLデータ出力手段とを有する請求項1記載の画像処理装置。
【請求項9】
コンピュータに、
文字列が埋め込まれたバーコードを含む画像データを生成するバーコード画像生成手順と、
前記画像データを画像形成装置に印刷させる印刷制御手順とを実行させるための第一のプログラムと、
コンピュータに、
前記画像データが印刷された第一の用紙より読み取られた第一の画像データと、第二の用紙より読み取られた第二の画像データとを画像形成装置より受信する画像データ受信手順と、
前記第一の画像データに含まれている前記バーコードより前記文字列を抽出する抽出手順と、
前記第一の画像データに基づいて、前記第一の用紙に対する記入位置を検出する記入位置検出手順と、
前記第二の画像データについて、前記記入位置に基づいて特定される領域に対して文字認識を実行する文字認識手順と、
前記文字認識手順による文字認識の結果に基づいて前記第二の画像データの識別名を生成する識別名生成手順と、
前記文字列によって示される保存位置に、前記識別名に関連付けて前記第二の画像データを保存する保存手順とを実行させるための第二のプログラムと、
前記画像形成装置とを有する画像処理システム。
【請求項10】
画像処理装置が、
第一の用紙より読み取られた第一の画像データに基づいて、前記第一の用紙に対する記入位置を検出する記入位置検出手順と、
第二の用紙より読み取られた第二の画像データについて、前記記入位置に基づいて特定される領域に対して文字認識を実行する文字認識手順とを実行する画像処理方法。
【請求項11】
画像処理装置に、
第一の用紙より読み取られた第一の画像データに基づいて、前記第一の用紙に対する記入位置を検出する記入位置検出手順と、
第二の用紙より読み取られた第二の画像データについて、前記記入位置に基づいて特定される領域に対して文字認識を実行する文字認識手順とを実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate


【公開番号】特開2011−76581(P2011−76581A)
【公開日】平成23年4月14日(2011.4.14)
【国際特許分類】
【出願番号】特願2010−29358(P2010−29358)
【出願日】平成22年2月12日(2010.2.12)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
2.Bluetooth
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】