(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024091806
(43)【公開日】2024-07-05
(54)【発明の名称】画像処理システム、情報処理システム、画像処理方法、プログラム
(51)【国際特許分類】
H04N 1/387 20060101AFI20240628BHJP
G06V 30/14 20220101ALI20240628BHJP
【FI】
H04N1/387 200
G06V30/14 340A
【審査請求】有
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2024067294
(22)【出願日】2024-04-18
(62)【分割の表示】P 2020113444の分割
【原出願日】2020-06-30
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】吉橋 亮佑
(72)【発明者】
【氏名】網倉 智哉
(72)【発明者】
【氏名】木戸口 和明
(72)【発明者】
【氏名】山本 幸司
(72)【発明者】
【氏名】神原 康二
(57)【要約】
【課題】識別情報の選択に応じて画像データの領域に画像処理を行う画像処理システムを提供すること。
【解決手段】機器20と情報処理システム10とがネットワークを介して通信できる画像処理システム100であって、画像処理の領域と識別情報とを対応付ける設定受付部12を有し、前記機器は、機器が受け付けたユーザからの選択に応じて、前記識別情報と画像データを前記情報処理システムに送信する通信部31と、を有し、前記情報処理システムは、前記画像データのうち、前記識別情報に対応づけられている前記画像処理の領域への画像処理結果を出力する処理結果出力部68、を有することを特徴とする。
【選択図】
図1
【特許請求の範囲】
【請求項1】
機器と情報処理システムとがネットワークを介して通信できる画像処理システムであって、
画像処理の領域と識別情報とを対応付ける設定受付部を有し、
前記機器は、
機器が受け付けたユーザからの選択に応じて、前記識別情報と画像データを前記情報処理システムに送信する通信部と、を有し、
前記情報処理システムは、
前記画像データのうち、前記識別情報に対応づけられている前記画像処理の領域への画像処理結果を出力する処理結果出力部、
を有することを特徴とする画像処理システム。
【請求項2】
前記機器は、
複数の前記識別情報のうち1の識別情報を特定するための選択をユーザから受け付ける操作受付部を有し、
前記通信部は、前記操作受付部が受け付けた選択に応じて特定される前記識別情報と前記画像データを前記情報処理システムに送信することを特徴とする請求項1に記載の画像処理システム。
【請求項3】
前記画像処理の領域は、OCR処理が行われる領域であることを特徴とする請求項1又は2に記載の画像処理システム。
【請求項4】
前記識別情報は、前記機器が表示するアイコンの識別情報であることを特徴とする請求項2に記載の画像処理システム。
【請求項5】
前記アイコンは、前記情報処理システムが実行するアプリケーションのアイコンであり、
前記アプリケーションに前記画像処理の領域が対応づけられていることを特徴とする請求項4に記載の画像処理システム。
【請求項6】
前記情報処理システムは、前記アイコンと前記画像処理の領域を有する設定ファイルを対応付けており、
前記設定ファイルは外部サービスシステムに保存されており、
前記処理結果出力部は、前記外部サービスシステムから取得した前記設定ファイルが有する前記画像処理の領域に画像処理を行うことを特徴とする請求項5に記載の画像処理システム。
【請求項7】
前記操作受付部は、複製元の前記アプリケーションの選択、及び、複製により作成される前記アプリケーションのアプリ名を受け付け、
前記通信部は複製元の前記アプリケーションの識別情報、及び、前記アプリ名を前記情報処理システムに送信し、
前記情報処理システムは、
複製元の前記アプリケーションを複製して前記アプリ名を付与した新しいアプリケーションを作成し、
前記操作受付部は、前記新しいアプリケーションと、前記新しいアプリケーションに対応付けられる前記設定ファイルの選択を受け付けることを特徴とする請求項6に記載の画像処理システム。
【請求項8】
1つの前記複製元の前記アプリケーションから複数の前記新しいアプリケーションが作成され、
前記操作受付部は、複数の前記新しいアプリケーションに対し、それぞれ別の前記設定ファイルの選択を受け付けることを特徴とする請求項7に記載の画像処理システム。
【請求項9】
前記アイコンには前記アプリケーションの識別情報が関連付けられており、
前記操作受付部が前記アイコンの選択を受け付けた場合、前記通信部は、前記アイコンに関連付けられている前記アプリケーションの実行要求及び前記画像データを前記情報処理システムに送信し、
前記アプリケーションの実行が要求された場合、前記処理結果出力部は、前記画像データに対し、選択された前記アイコンに対応づけられている前記画像処理の領域に画像処理を行うことを特徴とする請求項7又は8に記載の画像処理システム。
【請求項10】
前記画像データは、前記機器が原稿を読み取って生成したものであり、
前記アイコンには前記原稿の名称が表示されることを特徴とする請求項9に記載の画像処理システム。
【請求項11】
前記アイコンには前記原稿のサムネイルが表示されることを特徴とする請求項10に記載の画像処理システム。
【請求項12】
前記機器はスキャン機能を有する画像処理装置であることを特徴とする請求項1~11のいずれか1項に記載の画像処理システム。
【請求項13】
前記機器はパーソナルコンピュータ又はスマートフォンであることを特徴とする請求項1~11のいずれか1項に記載の画像処理システム。
【請求項14】
機器とネットワークを介して通信できる情報処理システムであって、
画像処理の領域と識別情報とを対応付ける設定受付部と、
前記機器が受け付けたユーザからの選択に応じて、前記識別情報と画像データを前記機器から受信する通信部と、
前記画像データのうち、前記識別情報に対応づけられている前記画像処理の領域への画像処理結果を出力する処理結果出力部と、
を有することを特徴とする情報処理システム。
【請求項15】
機器と情報処理システムとがネットワークを介して通信できる画像処理システムが行う画像処理方法であって、
設定受付部が、画像処理の領域と識別情報とを対応付けるステップと、
前記機器は、
通信部が、機器が受け付けたユーザからの選択に応じて、前記識別情報と画像データを前記情報処理システムに送信するステップと、
前記情報処理システムは、
前記画像データのうち、前記識別情報に対応づけられている前記画像処理の領域への画像処理結果を出力するステップと、
を有することを特徴とする画像処理方法。
【請求項16】
機器とネットワークを介して通信できる情報処理装置を、
画像処理の領域と識別情報とを対応付ける設定受付部と、
前記機器が受け付けたユーザからの選択に応じて、前記識別情報と画像データを前記機器から受信する通信部と、
前記画像データのうち、前記識別情報に対応づけられている前記画像処理の領域への画像処理結果を出力する処理結果出力部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システム、情報処理システム、画像処理方法、及び、プログラムに関する。
【背景技術】
【0002】
企業や団体などの組織の日常業務では、請求書、注文書、経費精算書などの帳票の処理が発生する場合が多い。組織内の担当者は、例えば、帳票から、取り扱い日付、案件番号、金額などを抽出したり、集計したりする業務を日々行っている。
【0003】
このような業務の電子化に関する技術が考案されている(例えば、特許文献1参照。)。特許文献1には、ユーザがマスクすべき領域をマーキングした帳票を複合機がスキャンし、基幹システム等に領域がマスクされた帳票を登録する画像読込み装置が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、識別情報の選択に応じて画像データの領域に画像処理を行うことができないという問題があった。例えば、機器が表示するアイコンやボタン等をユーザが押下すると、機器が帳票を読み取って電子化し、サーバに登録するシステムが存在する。しかし、このシステムは電子化された画像データの所定の領域に画像処理を行うことはできなかった。
【0005】
本発明は、上記課題に鑑み、識別情報の選択に応じて画像データの領域に画像処理を行う画像処理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題に鑑み、本発明は、機器(MFP等及びPC等の端末装置も含まれる)PCもMFPも含まれる)と情報処理システムとがネットワークを介して通信できる画像処理システムであって、画像処理の領域と識別情報とを対応付ける設定受付部を有し、前記機器は、機器が受け付けたユーザからの選択に応じて、前記識別情報と画像データを前記情報処理システムに送信する通信部と、を有し、前記情報処理システムは、
前記画像データのうち、前記識別情報に対応づけられている前記画像処理の領域への画像処理結果を出力する処理結果出力部、を有することを特徴とする。
【発明の効果】
【0007】
識別情報の選択に応じて画像データの領域に画像処理を行う画像処理システムを提供することができる。
【図面の簡単な説明】
【0008】
【
図1】画像処理システムが帳票から取得したデータでファイルを作成する処理又は動作を説明する図である。
【
図2】本実施形態に係る画像処理システムの一例のシステム構成を示す図である。
【
図3】情報処理システム及び端末装置の一例のハードウェア構成を示す図である。
【
図4】画像形成装置の一例のハードウェア構成図である。
【
図5】機器、端末装置、及び、情報処理システムの一例の機能構成を示す図である。
【
図6】アイコンと領域情報の対応付けを説明する図である。
【
図7】アプリ処理情報記憶部に記憶されているアプリ処理情報の一例を示す図である。
【
図8】アプリが行う一連の処理を模式的に示す図である。
【
図9】帳票における領域のマーキング方法を説明する図である。
【
図10】領域情報の登録時に機器が表示する領域登録画面の一例を示す図である。
【
図11】管理者が領域をマーキングした帳票から情報処理システムが領域情報を取得して、設定ファイルを作成する手順を示すシーケンス図の一例である。
【
図12】画像データからの領域の検出を説明する図の一例である。
【
図13】管理者が設定ファイルのF~K列へ情報を設定する手順を示すシーケンス図の一例である。
【
図14】設定ファイルと帳票の対応を説明する図の一例である。
【
図15】アプリと領域情報の対応付けに関して端末装置が表示する画面の一例である。
【
図16】管理者がアプリと設定ファイルを対応づける処理を説明するシーケンス図の一例である。
【
図17】いくつかのアプリの選択画面を示す図の一例である。
【
図18】アプリの複製に際して管理者が操作する画面の一例である。
【
図19】情報処理システムがアプリの複製を登録する手順を示すシーケンス図の一例である。
【
図20】機器が表示する画面の遷移例を示す図である。
【
図21】外部サービスシステムに保存されたファイルを説明する図の一例である。
【
図22】情報処理システムが機器から帳票の画像データを含むPDFファイルを受信し、領域からデータを取得するシーケンス図の一例である。
【
図23】OCR処理結果の補正を説明する図の一例である。
【
図24】端末装置が表示する外部サービスシステムのファイル一覧画面の一例を示す図である。
【
図25】機器が表示する出力データ表示画面の一例を示す図である。
【
図26】複数の帳票と、出力されたファイルを示す図の一例である。
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態の一例として、画像処理システムと、画像処理システムが行う画像処理方法を提供することを目的とする。
【0010】
<処理又は動作の概略>
企業や団体などの組織では、経費精算書、請求書又は注文書などの帳票の処理が発生する場合が多い。組織内の担当者は、帳票から日付、案件番号又は金額などを抽出したり、集計したりする業務を日々行っている。処理された帳票はファイリングの後、保管されるが、その保管スペースにもコストがかかる。徐々に帳票の電子化が進められているが、帳票のファイルに自動で付与されたファイル名を担当者がリネームする作業などにも手間がかかる。
【0011】
請求処理や受発注を自動化するシステムやサービスは存在するが、高価なものが多いため、これらに投資できる中小企業は多くない。このため、やむを得ず人手を介してこの帳票の処理を行っているという現状がある。
【0012】
本実施形態では、領域がマーキングされた帳票により事前に登録された領域情報に基づいて、情報処理システムが、日々発生する帳票の領域に画像処理を行ってデータを取得し、電子的なファイルとして出力することができる。
【0013】
図1を参照して、画像処理システムが行う処理又は動作の概略を説明する。
図1は、画像処理システム100が帳票から取得したデータでファイルを作成する処理又は動作を説明する図である。
図1(a)は帳票における領域情報の設定を、
図1(b)は領域情報を使用した帳票からのデータの取得を、それぞれ説明する図である。
【0014】
(1) 画像処理システム100は外部サービスシステム40と連携することができる。画像処理システム100はアプリを介して外部サービスシステム40と連携する。画像処理システム100で動作するアプリを単に「アプリ」、外部サービスシステム40で動作するアプリを連携先アプリと呼ばれてもよく、この場合、アプリと連携先アプリの互いのアプリIDを対応付け、対応関係を画像処理システム100は記憶する。
【0015】
(2) 画像処理システム100の管理者8は、組織内のユーザが日常的に使う帳票7を使用して、帳票7のどの領域のデータを取得すべきかを指定する。例えば、マーカーペンで帳票7の領域を塗り潰したり、囲んだりすればよい。機器20は領域がマーキングされた帳票7を読み取って生成した画像データを情報処理システム10へ送信する。なお、マーキングされる帳票7には項目に対し文字などが記入されていてもよいし、項目のみでもよいし、白紙でもよい。
【0016】
(3) 情報処理システム10はマーカーペンで指定される領域の領域情報を設定ファイルに保存する。領域情報は、画像データにおける例えば矩形の領域の対角頂点の座標である。情報処理システム10は設定ファイルを外部サービスシステム40に保存する。
【0017】
(4)-1 管理者は、端末装置30を外部サービスシステム40に接続させ、設定ファイルをダウンロードし、設定ファイルに帳票の言語や日時のフォーマットを補完する。
【0018】
(4)-2 また、管理者は端末装置30を情報処理システム10に接続させ、アプリのアプリIDと設定ファイルを対応づける操作を行う。管理者は任意の数のアプリIDと設定ファイルとを対応付けることができる。これにより、アプリの選択を受け付けるアイコンと画像処理が行われる領域情報が対応づけられる。
【0019】
(5) 組織内のユーザ6が費用の精算などのために帳票7を組織に提出する場合、この帳票7に対応したアプリのアイコンを機器20で押下する。複数の帳票名などからアプリを簡単に選べるようになっている。ユーザは必要事項を手書きした帳票、又は、プリントアウトした帳票を機器20に読み取らせる。機器20はアプリのアプリIDと帳票を読み取って生成した画像データ(例えばPDFファイル)を情報処理システム10へ送信する。
【0020】
(6) 情報処理システム10はアプリIDで設定ファイルを特定し、外部サービスシステム40から取得した設定ファイルが有する領域情報の領域を画像データから取得する(例えば切り出す)。したがって、管理者が登録した帳票の領域が取得される。
【0021】
(7) 情報処理システム10はこの領域にのみOCR(Optical Character Reader)処理を行い、データ化する。すなわち、領域に記載されたデータ(文字などの文字コード)が得られる。
【0022】
(8) 情報処理システム10はデータを電子的なファイル(例えばCSV(Comma Separated Value)ファイル)に出力して、ファイルと画像データを、外部サービスシステム40に送信する。なお、情報処理システム10が連携先アプリのアプリIDを指定した場合は、連携先アプリを指定してファイルと画像データを送信できる。
【0023】
(9) 外部サービスシステム40は管理者が指定したフォルダ(又はディレクトリ)に画像データとファイルを登録する。ファイルには精算に必要な情報が含まれているので、担当者は精算処理することができる。
【0024】
以上説明したように、本実施形態の画像処理システムは、領域がマーキングされた帳票を機器20が読み取り、帳票ごとに領域情報を記憶する。管理者は、帳票とアプリのアイコンを対応づけるので、アプリの選択を受け付けるアイコンと画像処理が行われる領域情報が対応づけられる。そして、情報処理システム10は機器から送信された帳票の画像データから領域のみを取得してOCR処理を行い、OCR処理結果であるデータをファイルに出力する。これによって、任意の数のアイコンそれぞれに画像処理の領域を対応付けることが可能となり、ユーザは例えば帳票の種類に応じてアイコンを選択するだけで、スキャンで生成された画像データの所望の領域に画像処理(例えば、OCR処理)を行わせることができる。
【0025】
<用語について>
管理者とは画像処理システムの顧客側のシステム管理者等であり、一般ユーザのために画像処理システムに関する設定を行う者である。ユーザとは、顧客側の一般ユーザである。一般ユーザが管理者の作業を行ってもよいので、両者を区別しなくてもよい。
【0026】
OCR(Optical Character Recognition/Reader)とは、手書き文字又はプリントアウトされた文字の形を感光素子によって電気信号に変換することによって、コンピュータが利用できるデジタルの文字コードに変換する技術をいう。文字認識処理、文字変換処理、電子化、などと称される場合もある。OCR処理で得られるデータは日本語、英語、数字、記号、図形など様々である。
【0027】
帳票とは帳簿や伝票などの総称である。ユーザが記入するための空欄を設けた事務用紙ともいう。本実施形態では主に帳票について説明するが、機器20が読み取り可能なら原稿であればその名称は問わない。例えば、文書、書類、書面、レポート、新聞、雑誌などでも対象となる。なお、帳票は紙媒体にプリントアウトされない場合もある(機器20が帳票を読み取る必要がない場合がある)。
【0028】
OCR処理の対象となる画像データの種類はどのようなものでもよいが、PDF、JPEG、PNG、TIFF、BMP、などがある。
【0029】
識別情報は、領域を識別する情報であればよい。識別情報は必ずしも画像である必要はなく、領域と何らかの識別情報があらかじめ対応付けられていればよい。本実施形態ではアプリIDという用語で説明される。領域を識別するための情報あれば、アプリID、アイコン又はボタンのほか、アプリ名、設定名、設定番号、帳票名、書類名、リンクに埋め込まれたURL等でもよい。
【0030】
OCR領域に関する情報は、情報処理システム10がOCR領域を特定するための情報である。本実施形態では領域情報という用語で説明される。
【0031】
画像処理結果とは、画像処理により得られる成果物をいう。例えば、OCR処理結果である文字コード(データ)をいう。
【0032】
本実施形態では「設定ファイル」は領域情報が設定されるファイルであり、「ファイル」はデータが出力されたファイルである。ファイルとは、コンピュータで管理されるデータの基本単位となる、データのまとまりである。
【0033】
データを出力するとは、ユーザがデータを視覚で確認できるようにすることをいう。本実施形態では、例えばファイルに出力される。
【0034】
選択受付部品は、機器20又は端末装置30がユーザの選択を受け付けるための表示部品である。選択受付部品は機器20が表示してもよいし、端末装置30が表示してもよい。選択受付部品は例えばアイコンやボタンと呼ばれるが、どのように呼ばれてもよい。選択受付部品は、例えばタッチパネル付きのディスプレイに表示されるが、タッチパネルがない場合は、キーボードやマウスで選択受付部品まで移動されたカーソルがキーボードやマウスで押下されることで選択を受け付ける。
【0035】
選択受付部品に関する情報は、例えば、選択受付部品を識別又は特定するための情報であり、本実施形態ではアプリのアプリIDという用語で説明される。
【0036】
アイコンとは、コンピュータに与える指示・命令や文書ファイルなどを記号化した図形(画像)である。ボタンとは、ユーザがマウスや指先で押下して、ソフトウェアに命令を与える図形(画像)である。アイコンとボタンのいずれも操作内容や命令の内容が記されていてよい。アイコンとボタンは厳密に区別されなくてもよい。
【0037】
<システム構成例>
まず、本実施形態に係る画像処理システム100のシステム構成について、
図2を参照しながら説明する。
図2は、本実施形態に係る画像処理システム100の一例のシステム構成を示す図である。
【0038】
図2に示す画像処理システム100は、情報処理システム10と、機器20と、を含み、インターネット等の広域的なネットワークN1を介して通信可能に接続されている。画像処理システム100は外部システムである外部サービスシステム40と通信する。また、任意の端末装置30がネットワークN1,N2を介して、情報処理システム10と通信できる。
【0039】
情報処理システム10は、一台以上の情報処理装置で実現され、ネットワークN1を介して、クラウドサービス等の外部サービスシステム40と連携した一連の処理により実現される各種のサービスを提供する。本実施形態に係る情報処理システム10が提供するサービスの具体例については後述する。情報処理システム10は、クラウドコンピューティングにより実現されてもよいし、単一の情報処理装置によって実現されてもよい。クラウドコンピューティングとは、特定ハードウェア資源が意識されずにネットワーク上のリソースが利用される利用形態をいう。情報処理システム10は、インターネット上に存在しても、オンプレミスに存在してもよい。なお、一連の処理は1つのアプリにより提供され、一連の処理を「処理フロー」「ワークフロー」ともいう。
【0040】
機器20は、ユーザが使用する各種の電子機器である。機器20は、例えば、MFP(Multifunction Peripheral)等の画像処理装置、画像形成装置、PC(パーソナルコンピュータ)、プロジェクタ、電子黒板、デジタルカメラ等である。機器20はネットワークN2に接続されている。ユーザは、機器20を用いて、情報処理システム10又は外部サービスシステム40の少なくとも一方が提供する各種のサービスを利用することができる。
【0041】
なお、以降では、複数の機器20について、各々を区別するときは、「機器201」、「機器202」等と添え字を用いて記載する。
【0042】
端末装置30は、例えば、管理者又はユーザが使用するデスクトップPC(パーソナルコンピュータ)、ノート型PC、スマートフォン、タブレット端末等である。この他、端末装置30はWebブラウザが動作可能な装置であればよい。端末装置30はネットワークN2に接続されている。管理者又はユーザは端末装置30を操作して、情報処理システム10又は外部サービスシステム40が提供する各種のサービスを利用することができ、更に、連携先アプリ又はアプリの設定を行うことができる。
【0043】
なお、説明の便宜上機器20と端末装置30を分けて説明するが、機器20及び端末装置30を含めて機器と呼ばれてもよい。
【0044】
また、以降では、複数の端末装置30について、各々を区別するときは、「端末装置301」、「端末装置302」等と添え字を用いて記載する。
【0045】
外部サービスシステム40は、ネットワークN1を介して連携先アプリの実行によるサービスを提供する一台以上の情報処理装置である。連携先アプリの実行によりデータの管理又は処理が行われ、データそのものや処理結果がサービスとなる。
【0046】
外部サービスシステム40の一例には、例えば、クラウドサービス、ASP(Application Service Provider)等があり、ネットワークを介して提供される各種の外部サービスが含まれてよい。本実施形態ではサービスの一例としてストレージサービスについて説明する。外部サービスシステム40は、インターネット上に存在しても、オンプレミスに存在してもよい。
【0047】
なお、以降では、複数の外部サービスシステム40について、各々を区別するときは、図示されている「外部サービスシステム401」を外部サービスシステム40A、「外部サービスシステム402」を外部サービスシステム40B等と、記載する。
【0048】
<ハードウェア構成例>
図3を参照して、本実施形態に係る画像処理システム100に含まれる情報処理システム10及び端末装置30のハードウェア構成について説明する。
【0049】
<<情報処理システム及び端末装置>>
図3は、本実施形態に係る情報処理システム10及び端末装置30の一例のハードウェア構成を示す図である。
図3に示されているように、情報処理システム10及び端末装置30はコンピュータによって構築されており、CPU501、ROM502、RAM503、HD504、HDD(Hard Disk Drive)コントローラ505、ディスプレイ506、外部機器20接続I/F(Interface)508、ネットワークI/F509、バスライン510、キーボード511、ポインティングデバイス512、DVD-RW(Digital Versatile Disk Rewritable)ドライブ514、メディアI/F516を備えている。
【0050】
これらのうち、CPU501は、情報処理システム10及び端末装置30全体の動作を制御する。ROM502は、IPL等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器20接続I/F508は、各種の外部機器20を接続するためのインターフェースである。この場合の外部機器20は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F509は、ネットワークN2を利用してデータ通信をするためのインターフェースである。バスライン510は、
図3に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0051】
また、キーボード511は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD-RWドライブ514は、着脱可能な記録媒体の一例としてのDVD-RW513に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F516は、フラッシュメモリ等の記録メディア515に対するデータの読み出し又は書き込み(記憶)を制御する。
【0052】
<<機器>>
図4は、機器20の一例である画像形成装置のハードウェア構成図である。
図4に示されているように、画像形成装置は、コントローラ910、近距離通信回路920、エンジン制御部930、操作パネル940、ネットワークI/F950を備えている。
【0053】
これらのうち、コントローラ910は、コンピュータの主要部であるCPU901、システムメモリ(MEM-P)902、ノースブリッジ(NB)903、サウスブリッジ(SB)904、ASIC(Application Specific Integrated Circuit)906、記憶部であるローカルメモリ(MEM-C)907、HDDコントローラ908、及び、記憶部であるHD909を有し、NB903とASIC906との間をAGP(Accelerated Graphics Port)バス921で接続した構成となっている。
【0054】
これらのうち、CPU901は、画像形成装置の全体制御を行う制御部である。NB903は、CPU901と、MEM-P902、SB904、及びAGPバス921とを接続するためのブリッジであり、MEM-P902に対する読み書きなどを制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタ及びAGPターゲットとを有する。
【0055】
MEM-P902は、コントローラ910の各機能を実現させるプログラムやデータの格納用メモリであるROM902a、プログラムやデータの展開、及びメモリ印刷時の描画用メモリなどとして用いるRAM902bとからなる。なお、RAM902bに記憶されているプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0056】
SB904は、NB903とPCIデバイス、周辺デバイスとを接続するためのブリッジである。ASIC906は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス921、PCIバス922、HDDコントローラ908及びMEM-C907をそれぞれ接続するブリッジの役割を有する。このASIC906は、PCIターゲット及びAGPマスタ、ASIC906の中核をなすアービタ(ARB)、MEM-C907を制御するメモリコントローラ、ハードウェアロジックなどにより画像データの回転などを行う複数のDMAC(Direct Memory Access Controller)、並びに、スキャナ部931、プリンタ部932、及びファクシミリ部との間でPCIバス922を介したデータ転送を行うPCIユニットとからなる。なお、ASIC906には、USB(Universal Serial Bus)のインターフェースや、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインターフェースを接続するようにしてもよい。
【0057】
MEM-C907は、コピー用画像バッファ及び符号バッファとして用いるローカルメモリである。HD909は、画像データの蓄積、印刷時に用いるフォントデータの蓄積、フォームの蓄積を行うためのストレージである。HD909は、CPU901の制御にしたがってHD909に対するデータの読出又は書込を制御する。AGPバス921は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインタフェースであり、MEM-P902に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にすることができる。
【0058】
また、近距離通信回路920には、近距離通信回路のアンテナ920aが備わっている。近距離通信回路920は、NFC、Bluetooth(登録商標)等の通信回路である。
【0059】
更に、エンジン制御部930は、スキャナ部931、プリンタ部932及びファクシミリ部933を有している。また、操作パネル940は、現在の設定値や選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等のパネル表示部940a、並びに、濃度の設定条件などの画像形成に関する条件の設定値を受け付けるテンキー及びコピー開始指示を受け付けるスタートキー等からなるハードキー940bを備えている。コントローラ910は、画像形成装置全体の制御を行い、例えば、描画、通信、操作パネル940からの入力等を制御する。スキャナ部931又はプリンタ部932には、誤差拡散やガンマ変換などの画像処理部分が含まれている。
【0060】
なお、画像形成装置は、操作パネル940のアプリケーション切り替えキーにより、ドキュメントボックス機能、コピー機能、プリンタ機能、及びファクシミリ機能を順次に切り替えて選択することが可能となる。ドキュメントボックス機能の選択時にはドキュメントボックスモードとなり、コピー機能の選択時にはコピーモードとなり、プリンタ機能の選択時にはプリンタモードとなり、ファクシミリモードの選択時にはファクシミリモードとなる。
【0061】
また、ネットワークI/F950は、ネットワークN2を利用してデータ通信をするためのインターフェースである。近距離通信回路920及びネットワークI/F950は、PCIバス922を介して、ASIC906に電気的に接続されている。
【0062】
<機能について>
次に、本実施形態に係る画像処理システム100の機能構成について、
図5を参照しながら説明する。
図5は、本実施形態に係る機器20、端末装置30、及び、情報処理システム10の一例の機能構成を示す図である。
【0063】
<<機器>>
まず、機器20は、第二通信部21と、表示制御部22と、操作受付部23と、画像データ生成部24と、ファクシミリ処理部25と、電子メール処理部26とを有する。これら各機能部は、機器20にインストールされた1以上のプログラムに含まれる命令をCPU901が実行することで実現される機能又は手段である。例えば、第二通信部21、表示制御部22及び操作受付部23はWebブラウザにより実現され、その他は個別のアプリケーション(ネイティブアプリ)により実現される。
【0064】
第二通信部21は、情報処理システム10との間で各種の情報を送受信する。本実施形態ではアプリ一覧画面の画面情報等を情報処理システム10から受信し、帳票の画像データやアプリID等を情報処理システム10に送信する。
【0065】
表示制御部22は各種の画面の画面情報を解釈してパネル表示部940aに表示する。操作受付部23は、パネル表示部940aに表示された各種画面におけるユーザの各種操作を受け付ける。
【0066】
画像データ生成部24は、操作受付部23が選択を受け付けたアプリが画像データを生成するものである場合、スキャナ部931で原稿をスキャンして画像データを生成する。画像データ生成部24はスキャン機能である。画像データ生成部24は、画像データをPDFファイルに変換する。変換せずに画像データ(JPEG、TIFF、PNGなど)のままでもよい。ファクシミリ処理部25は、ファクシミリ部933によるファクシミリの受信及び送信に関する処理を行い、ファクシミリを受信した場合に予め対応付けられているアプリの実行を情報処理システム10に要求する。なお、ファクシミリの送信元(FAX番号)に対応したアプリを要求してもよい。
【0067】
電子メール処理部26は電子メールの送受信に関する処理を行い、電子メールを受信した場合に予め対応付けられているアプリの実行を情報処理システム10に要求する。なお、電子メールの送信元(メールアドレス)に対応したアプリを要求してもよい。
【0068】
<<端末装置>>
端末装置30は、第一通信部31と、表示制御部32と、操作受付部33とを有する。これら各機能部は、端末装置30にインストールされた1以上のプログラムに含まれる命令をCPU501が実行することで実現される機能又は手段である。なお、このプログラムはWebブラウザでもよいし、情報処理システム10と通信するための専用のソフトウェアでもよい。
【0069】
第一通信部31は、情報処理システム10又は外部サービスシステム40との間で各種の情報を送受信する(第二の通信部の一例)。本実施形態では各種の画面情報等を情報処理システム10又は外部サービスシステム40から受信し、管理者又はユーザが設定した情報を情報処理システム10又は外部サービスシステム40に送信する。
【0070】
表示制御部32は各種の画面の画面情報を解釈してディスプレイ506に表示する。操作受付部33は、ディスプレイ506に表示された各種画面におけるユーザの各種操作を受け付ける。
【0071】
<<情報処理システム>>
情報処理システム10は、アプリデータサービス部11、設定受付部12、認証サービス部14、Webサービス処理部15、入出力サービス部16、コンポーネント18、及び、通信部19を有する。これら各機能部は、情報処理システム10にインストールされた1以上のプログラムに含まれる命令をCPU501が実行することで実現される機能又は手段である。なお、
図5では作図の都合上、1つの情報処理システム10が各機能部を有しているが、各機能部は複数の情報処理装置に分散して配置されてもよい。
【0072】
通信部19は、端末装置30及び機器20との間で各種の情報を送受信する。設定受付部12は、端末装置30に設定サイトを提供し、設定サイトに対する設定を受け付ける。サイトとは、WebページやWebアプリをいう場合もあるし、端末装置30にWebページやWebアプリを提供するサーバ側のシステムをいう場合もある。設定受付部12は端末画面提供部42を有しており、端末画面提供部42はアプリの実行に必要な情報を管理者に設定させる初期画面、アプリ一覧画面、及び、対応付け画面等を提供する。なお、端末画面提供部42は、端末装置30からのHTTPリクエストに対しHTML、XML、CSS(Cascade Style Sheet)、及びJavaScript(登録商標)等により記述された画面情報を生成し、画面情報をHTTPレスポンスとして端末装置30に送信する。
【0073】
アプリデータサービス部11はアプリデータ管理部41を有している。アプリデータ管理部41は、企業などの顧客により購入されたアプリのアプリデータ43を顧客ごとに管理する。アプリデータ43は、例えば、アプリと上記の領域情報を対応付ける。アプリデータ43はアプリデータ記憶部13に記憶される。なお、画像処理システム100から見た顧客などの組織をテナントという。
【0074】
Webサービス処理部15は機器20に対し画面情報を提供したり、機器20からアプリの実行を受け付けたりする。Webサービス処理部15はアプリ実行部46と機器画面提供部47を有している。アプリ実行部46は機器20からのアプリの実行を受け付け、入出力処理部48に対しアプリの実行を要求する。機器画面提供部47は画面情報54を使って、アプリ一覧画面やアプリ画面の画面情報を機器20に提供する。
【0075】
入出力サービス部16は認証サービス部14、アプリ処理情報記憶部17及びコンポーネント18を使用してデータの入出力を行う。入出力サービス部16は入出力処理部48とアプリ管理部49を有している。入出力処理部48はアプリ実行部46から要求されたアプリを実行する。実行時にはアプリ処理情報53を参照しアプリに含まれる各処理をコンポーネント18に要求する。アプリ管理部49は、アプリ処理情報記憶部17に記憶されている、アプリのアプリ処理情報53や画面情報54を管理する。アプリ処理情報53にはアプリがどの処理をどの順番で行うか(例えば、OCRの後に外部サービスシステム40に処理要求する等)が設定されている。画面情報54は各アプリのアイコン、アプリ一覧画面、及び各アプリ画面など、機器20が表示する画面の情報である。アプリ処理情報記憶部17にはアプリごとにアプリ処理情報53及び画面情報54が記憶されている。
【0076】
認証サービス部14はユーザ(管理者を含む)、及び、機器20の認証に関する処理を行う。認証サービス部14はユーザ管理部44とデバイス管理部45を有している。ユーザ管理部44はユーザに関する情報を管理する。例えば、ユーザ名やパスワード等の認証情報を保持する。また、認証情報には情報処理システム10のものと外部サービスシステム40のものとがある。デバイス管理部45は、テナントに対応付けられている機器20を管理する。つまり、テナントの識別情報と機器20を対応付けて管理しており、機器20が特定されるとテナントも特定される。
【0077】
コンポーネント18は各処理を実際に行う個別の機能の総称である。コンポーネント18内の1つのブロックが1つの処理に対応する。コンポーネント18は例えば、認証処理部61、外部サービス処理部62、判断部63、PDF処理部64、領域検出部65、ファイル出力部66、領域取得部67、処理結果出力部68、及び、OCR補正部69を有している。認証処理部61は認証サービス部14に対して認証に関する処理を依頼するコンポーネント18である。外部サービス処理部62は、外部サービスシステム40に対して処理要求を依頼するコンポーネント18である。つまり、外部サービス処理部62は外部サービスシステム40と連携するための機能である。外部サービス処理部62は外部サービスシステム40の種類ごとに用意される。判断部63は各種の判断を行い、処理フローの分岐を制御する。PDF処理部64はPDFファイルに関する処理を行うものであり、例えばPDFファイルから画像データを取り出したり、透明テキスト付きのPDFファイルを作成したりする。機器20がPDFファイルの形式で画像データを送信するためである。領域検出部65は、画像データからマーカーペンなどでマーキングされた矩形領域を検出し、矩形領域の座標(領域情報)を作成する。ファイル出力部66は、領域情報を含む設定ファイルを作成し、また、OCR処理結果(帳票の領域から取得されたデータ)を含むファイルを出力する。領域取得部67は領域情報に基づいて、画像データから領域を取得する(例えば切り出す)。処理結果出力部68は、領域のみ及び画像データの全体にOCR処理を行う。OCR補正部69はOCR処理結果を補正する。なお、図示する以外に、翻訳等のコンポーネントを有していてよい。
【0078】
【表1】
表1は、アプリ処理情報記憶部17が保持するアプリ処理情報の一例を示す。アプリ処理情報記憶部17はテナントごとに購入されている(ライセンスがある)アプリのリストを記憶する。表1に示す情報はアプリ処理情報記憶部が記憶するリストに含まれるアプリうち、本実施形態で説明する受信した画像データの一部に画像処理を行うアプリの一覧で、アプリID、アプリ名、画面情報、アプリ処理情報、共有アプリ、及び、外部サービスシステム40の各項目を有している。アプリIDはアプリを識別する識別情報である。アプリ名は管理者が付与したアプリの名称である。また、アプリのアイコンや設定画面を機器20が表示する際に使用される画面情報54(HTML等で記述された)がアプリに対応付けられる。アプリには一連の処理の内容と順番(処理フロー)が定義されるので、各アプリにはアプリ処理情報53が対応付けられる。後述するように、複製されたアプリはフロー情報が同じになる。共有アプリとは、一般のアプリがユーザごとに利用権限が与えられるのに対し、共有アプリはテナントのユーザが共通に使えるアプリであることを示す。表1では経費精算書アプリが共有アプリである。各ユーザが共通に利用するためである。外部サービスシステム40の項目は各アプリが連携する外部サービスシステム40である。外部サービスシステム40と連携しないアプリも存在する。
【0079】
アプリ管理部49は、管理者又はユーザがログインすると、管理者又はユーザに利用権限が認められているアプリの一覧をアプリ処理情報記憶部17から取得して機器20に提供する。また、アプリ管理部49は、アプリの一覧からアプリが指定されると、アプリに対応付けられている画面情報とアプリ処理情報を特定する。
【0080】
【表2】
表2はユーザ管理部44が管理するユーザに関する情報の一例を示す。表2(a)はユーザに関する情報として、情報処理システム10におけるユーザID、ユーザ名、メールアドレス、パスワード、利用できるアプリ、及び、外部サービスシステム情報の各項目を有している。このユーザには管理者も含まれる。ユーザID、ユーザ名又はメールアドレスの少なくとも1つとパスワードは、ユーザが情報処理システム10にログインするための認証情報である。利用できるアプリはこのユーザに利用権限が与えられているアプリである。利用権限は、利用人数などを指定してライセンスを購入したアプリを管理者が各ユーザに割り当てることで与えられる。利用できるアプリには個人アプリと共有アプリがある。個人アプリも共有アプリも複数のユーザに使用されるが、個人アプリは個人のユーザの外部サービスの認証情報を使用し、共有アプリは複数のユーザが外部サービスに対し管理者の認証情報を使用する。表2(a)では、U001~U003に共通のapp003が共有アプリである。その他は個人アプリである。個人アプリの場合、ユーザごとに外部サービスシステムの認証情報の登録が必要である。外部サービスシステム情報はユーザが連携設定済みの外部サービスシステム40である。
【0081】
なお、連携設定済みとは、ユーザが外部サービスシステム40との連携を希望し、外部サービスシステム40の認証情報でログインできることが確認できたことをいう。ユーザは設定サイトから外部サービスシステム40の認証情報を入力し、ログインできた場合に、表2(a)の外部サービスシステム情報に外部サービスシステムの識別情報が設定される。また、表2(b)に外部サービスシステム40の認証情報が登録される。
【0082】
表2(b)は、各ユーザの外部サービスシステムに関する情報であり、ユーザID、外部サービスシステム40、ユーザID、及び、パスワードの各項目を有している。表2(b)にはユーザが連携設定した外部サービスシステム40の認証情報が登録される。外部サービスシステム40の認証情報はユーザが外部サービスシステム40にログインするための認証情報である。U002のユーザのように、外部サービスシステム40ごとに認証情報が異なっている場合もある。このため、画像処理システム100のユーザごとに、外部サービスシステム40の認証情報が関連付けられている。情報処理システム10は、機器20から取得した情報処理システム10のユーザID、パスワード等の認証情報に応じて、連携先の外部サービスシステム40の認証情報を特定する。
【0083】
また、認証情報は外部サービスシステム40の認証情報、又は、外部サービスシステム40と連携するために必要な認証情報であればよく、ユーザIDやパスワード以外に、外部サービスシステム40との連携設定時に外部サービスシステム40から取得したトークン等でも良い。
【0084】
表2(c)は、共有アプリ用の認証情報である。共有アプリの識別情報に外部サービスシステム40と認証情報が対応づけられている。共有アプリの認証情報は管理者のものが使用されるので、管理者の識別情報が登録されている。
【0085】
【表3】
表3は、アプリデータ記憶部13に記憶されているアプリデータ43の一例を示す。アプリデータ43は、アプリと設定ファイル(領域情報)を対応づける。対応付けは管理者が行う。
・applicationId…連携元のアプリIDである。
・applicationName…アプリのアプリ名である。
・fileId…情報処理システム10が作成した設定ファイルの識別情報である。
・fileName…情報処理システム10が作成した設定ファイルのファイル名である。設定ファイルは外部サービスシステム40に保存されるが、そのフォルダと共にファイル名が設定される。例えばURLでよい。
・アップロード先フォルダ…設定ファイルが保存される外部サービスシステム40とそのフォルダである。例えばURLでよい。管理者が設定する。
【0086】
【表4】
表4は、外部サービスシステム40に記憶されている設定ファイル9の一例を示す。設定ファイル9は、OCR処理の対象となる領域情報を有するファイルである。設定ファイルは表形式(例えばCSV形式)になっており、各セルの位置が列番号と行番号で指定される。以下、A列~L列の項目について説明する。なお、設定ファイルの1行目にある項目名は、設定ファイルの作成時に情報処理システム10により設定される。
・ID…領域情報の識別情報である。自動的に採番され、管理者やユーザが意識する必要はない。
・始点X座標、始点Y座標、終点X座標、終点Y座標…領域情報である。マーキングされた帳票の矩形領域の対角頂点を表す。1点の座標と幅と高さが指定されてもよい。座標の単位は例えばcm、ピクセルなどでよい。
【0087】
以上の情報が、情報処理システム10が自動的に設定する情報となる。以下の情報は、管理者が入力する。
・フォーマット…領域のデータ形式である。例えば、日付(YYYY/MM/DD)、数値(NUMERIC)などがある。データのフォーマットがわかるので、処理結果出力部68がより高精度にOCR処理することができる。フォーマットはプルダウンメニューになっている。このように領域ごとにデータの種類が設定される。
・CSV列名…領域に付与された名称である。帳票の場合は、矩形枠のタイトルなどが入力されるが、管理者が任意の値を入力できる。CSV列名はデータと共にファイルに出力される。
・CSV位置(列)…領域から抽出されたデータを情報処理システム10がファイルのどの列に書き込むかを指定する。
・CSV位置(開始行)…領域から抽出されたデータを情報処理システム10がファイルのどの行に書き込むかを指定する。行番号は帳票の読み取りのたびに大きくなるため、ファイルに1つもデータが記載されていない場合の「開始行」が設定される。例えば、最初の帳票から取得されたデータは2行目に設定されるが、2枚目の帳票から取得されたデータは3行目に設定される。これに対し列位置は固定でよい。
・OCR言語…領域がどの言語で記述されているかが設定される。言語がわかるので、処理結果出力部68がより高精度にOCR処理することができる。OCR言語はプルダウンメニューになっている。このように領域ごとにデータの種類が設定される。
・ファイル名に使う順序…本実施形態では領域から取得されたデータが出力されるファイルのファイル名に使用される。ファイル名に使う順序は、情報処理システム10が出力するファイルのファイル名に使用されるデータの順番である。例えば、「書類名」が1番、「申請日」が2番の場合、ファイル名は各領域から取得されたデータ(経費精算書、20201010)により、「経費精算書_20201010.csv」となる。
【0088】
<アイコンと領域情報の対応付け>
表1にはアプリIDと画面情報が対応づけられており、表3にはアプリIDと領域情報を含むfileNameが対応づけられている。したがって、情報処理システム10では、画面情報と領域情報とが対応づけられている。そしてこの画面情報には、アプリのアイコンが含まれている。
【0089】
図6は表1と表3から得られるアイコンと領域情報の対応付けを説明する図である。
図6に示すように、アプリIDはアプリのアイコンと対応づけられ、更に、領域情報と対応づけられている。したがって、アイコンと領域情報が対応づけられるので、情報処理システム10はユーザが選択したアイコンに対応づけられている領域情報の領域に画像処理(OCR処理)を行うことができる。
【0090】
<アプリ処理情報>
次に、
図7を用いて、アプリ処理情報の詳細について説明する。
図7は、アプリ処理情報記憶部17に記憶されているアプリ処理情報53の一例を示す図である。
【0091】
図7に示すアプリ処理情報53は、機器20でスキャンして生成された画像データを「外部サービスシステムB」に処理要求するサービスを実現するための一連の処理に関する情報である。
【0092】
アプリ処理情報53には、当該アプリ処理情報53の識別情報を示すフローID1201Aと、当該アプリ処理情報53の名称を示すフロー名1202Aと、一連の処理の処理内容を示すフロー詳細1203Aとが含まれる。フロー名1202Aはアプリの名称を兼ねている。
【0093】
また、フロー詳細1203Aには、「外部サービスシステムB」に処理要求することを示す処理内容1223Aが含まれる。
【0094】
処理内容1223Aでは、「外部サービスシステムB」と連携した処理を実行するコンポーネント18のコンポーネントID「ExService_B」、及び、パラメータ「AppId」「Folder」が指定されている。「ExService_B」は外部サービスシステムBのための外部サービス処理部62に相当する。「AppId」には連携先アプリIDが格納され(アプリと連携先アプリの対応は予め決まっている)、「Folder」にはファイルの保存先のフォルダ(アップロード先フォルダ)が格納される(管理者が設定したアップロード先フォルダが設定される)。これにより、情報処理システム10はスキャンされた画像データを「外部サービスシステムB」に保存することができる。
【0095】
なお、また、連携先アプリと連携しないアプリの場合、「AppId」が省略される。図示したパラメータは一部であって、アプリ処理情報はより多くのパラメータを含みうる。
【0096】
図7では、説明を簡単にするため、1つのコンポーネントのみ指定されているが、アプリ処理情報53には、アプリが行う一連の処理内容1223Aが処理(コンポーネント)の数だけ登録されている。
【0097】
図8は、アプリが行う一連の処理を模式的に示す図である。
図8(a)は設定ファイルの作成を行うアプリ(例えば、OCR領域指定アプリ)の一連の処理を示す。1つのブロックが処理内容1223Aに対応する。各処理の詳細は
図11にて説明する。
【0098】
図8(b)は帳票の領域からデータを出力するアプリ(例えば、経費精算書アプリ)の一連の処理を示す。1つのブロックが処理内容1223Aに対応する。各処理の詳細は
図22にて説明する。
【0099】
<領域の指定、領域の取得、設定ファイルの作成>
次に、
図9~
図12を参照して、管理者による領域の指定、領域の取得、及び、設定ファイルの作成について説明する。
【0100】
図9は、帳票における領域のマーキング方法を説明する図である。
図9(a)では、白黒以外の(彩度がある)マーカーペンで色が付けられた色付着部601が形成されている。領域検出部65は白黒以外の画素を検出し、白黒以外の画素(色付着部601)の外接矩形を検出する。白黒以外のマーカーペンが使用されるのは、領域検出部65が領域を容易に検出できるようにするためであり、黒のマーカーペンが使用されてもよい。この場合、領域検出部65は、一定以上の高さと面積を有する黒画素の外接矩形を検出する。
【0101】
また、
図9(b)では白黒以外のマーカーペンで領域を囲む枠線602が形成されている。領域検出部65は白黒以外の画素を検出し、白黒以外の画素(枠線602)の外接矩形を検出する。
【0102】
なお、領域のマーキング方法は
図9に示す方法には限られない。例えば、二重線で領域が指定されてもよいし、所定の記号(%、$、#、△等)で囲まれた範囲で領域が指定されてもよい。
【0103】
図10は、領域情報の登録時に機器20が表示する領域登録画面610の一例である。管理者は機器20から情報処理システム10にログインしてOCR領域指定アプリを選択する。領域登録画面610は、「OCRしたい領域を枠線で囲った原稿をセットして「スタート」を押してください」というメッセージ611、読み取り設定欄612、及び、スタートボタン613を有している。ユーザは原稿(帳票)をコンタクトガラスにセットして、スタートボタン613を押下する。必要に応じて読み取り設定欄612で読み取り条件(カラー/白黒、片面/両面、向き、解像度等)を設定してもよい。なお、カラー/白黒に関してはユーザが誤って白黒に設定しないように、カラーに固定されているとよい。
【0104】
なお、
図10の領域登録画面610から管理者が設定ファイルのファイル名を指定できるとよい。外部サービスシステム40から設定ファイルを探しやすくするためである。また、設定ファイルの保存先のフォルダをユーザが設定できるとよい。
【0105】
図11は、管理者が領域をマーキングした帳票から情報処理システム10が領域情報を取得して、設定ファイルを作成する手順を示すシーケンス図の一例である。
【0106】
S1:管理者は機器20を操作して情報処理システム10にログインし、初期画面に表示されるアプリ一覧からOCR領域指定アプリを選択する。これにより、機器20の表示制御部22は領域登録画面610を表示する。管理者は領域をマーキングした帳票をコンタクトガラスに設置してスタートボタン613を押下する。画像データ生成部24は帳票の画像データを生成し、PDFファイルに変換する。
【0107】
S2:機器20の第二通信部21は、OCR領域指定アプリの実行要求と共にPDFファイルを情報処理システム10に送信する。
【0108】
S3:情報処理システム10の通信部19はPDFファイルを受信する。アプリ実行部46はOCR領域指定アプリのアプリIDを指定して実行を入出力処理部48に要求する。入出力処理部48はOCR領域指定アプリのアプリIDに対応づけられているアプリ処理情報53を参照して、アプリを実行する。まず、入出力処理部48はPDFファイルを指定してPDF処理部64に画像データの抽出を要求する。PDF処理部64はPDFファイルから帳票の画像データを抽出する。
【0109】
S4:次に、入出力処理部48は画像データと共に、領域の取得を領域検出部65に要求する。領域検出部65は、画像データの色情報に基づいて画像データから領域を取得する。
【0110】
図12は画像データからの領域の検出を説明する図である。
図12(a)に示すように、マーカーペンで指定された色付着部601のRGB値は、白黒でない値を有している。黒のRGBは(0,0,0)、白のRGBは(255,255,255)なので、領域検出部65は例えば、(1,1,1)~(254,254,254)のRGBを有する色付着部601を検出する。なお、マーカーペンの色が決まっている場合は、開発者はRGBの範囲を色に応じて狭めることができ、より精度よく色付着部601を検出できる。例えば、帳票がカラーの場合でも、帳票にはない色のマーカーペンが使用されると、カラーの帳票から領域検出部65が色付着部601を検出できる。
【0111】
図12(b)は検出された色付着部601を示す。領域検出部65は検出した色付着部601の外接矩形620を設定する。そして、外接矩形620の上下左右にマージンを設定し、マージンを含む領域621を決定する。
図12(b)では、左右にa〔mm〕、上下にb〔mm〕が設定されている。マージンを設定するのは、機器20が帳票を読み取る場合に位置ずれなどを起こすためである。
図12(b)の左上コーナー622の座標が領域情報の始点X座標と始点Y座標であり、右下コーナー623の座標が領域情報の終点X座標と終点Y座標(領域情報)である。
【0112】
また、
図12(c)に示すように、領域検出部65はRGBに基づいて検出された色付着部601の外側の枠線625を検出してもよい。領域検出部65は、色付着部601(外接矩形620)の垂直方向外側に向けて黒画素を探索し、黒画素が見つかった場合は黒画素をたどり、元の位置に戻った場合に、外側の枠線625を検出したと判断する。こうすることで、データが記入される最大の領域を検出でき、機器20が帳票を読み取る場合に位置ずれなどを起こしても領域取得部67がデータを取得しやすくなる。
【0113】
S5:次に、入出力処理部48は、マーカーペンで領域が指定された画像データを指定して外部サービス処理部62に外部サービスシステム40へのアップロードを要求する。
【0114】
S6:外部サービス処理部62は、管理者の外部サービスシステム40における認証情報をユーザ管理部44から取得する。これにより、外部サービス処理部62は外部サービスシステム40にログインし、管理者のトップフォルダ(又は、管理者が指定したフォルダ)に画像データを保存する。領域登録画面610で管理者が設定ファイルのファイル名を指定した場合、外部サービス処理部62は同じファイル名を画像データのファイルに付与する。ファイル名が設定されていない場合、現在の日時などがファイル名となる。
【0115】
S7:次に、入出力処理部48は、領域検出部65が検出した領域情報を指定し、ファイル出力部66に設定ファイルの作成を要求する。ファイル出力部66はIDを採番し、領域情報をCSVファイルの決まった列に配置して、設定ファイルを生成する。この時点では表4のA~E列に情報が入った状態となる。
【0116】
S8:次に、入出力処理部48は、設定ファイルを指定して外部サービス処理部62に外部サービスシステム40へのアップロードを要求する。
【0117】
S9:外部サービス処理部62は、外部サービスシステム40にログイン済みなので、管理者のトップフォルダ(又は、管理者が指定したフォルダ)に設定ファイルを保存する。領域登録画面610で管理者が設定ファイルのファイル名を指定した場合、外部サービス処理部62はこのファイル名を設定ファイルのファイルに付与する。ファイル名が設定されていない場合、現在の日時などがファイル名となる。画像データと設定ファイルのファイル名が同じなので、管理者は設定ファイルがどの画像データにより生成されたのかを容易に判断できる。
【0118】
<設定ファイルへのその他の情報の登録>
図13、
図14を参照して、設定ファイルへのF~K列への設定について説明する。
図13は、管理者が設定ファイルのF~K列へ情報を設定する手順を示すシーケンス図の一例である。
【0119】
S11:外部サービスシステム40に設定ファイルを登録した後、管理者は端末装置30を操作して端末装置30を外部サービスシステム40に接続させる。管理者は自分の認証情報を入力して、外部サービスシステム40にログインする。
【0120】
S12:外部サービスシステム40はストレージサービスなので、管理者が登録したファイルの一覧を端末装置30に送信する。例えばトップフォルダにあるファイルの一覧が送信される。トップフォルダにない場合は、管理者が階層を指定する。ファイルの一覧の中に、管理者が機器20から登録した設定ファイルと画像データのファイルも含まれる。
【0121】
S13:管理者は設定ファイルの内容を確認したり、F~K列への情報を設定したりするため、設定ファイルを選択する。端末装置30の操作受付部33は選択を受け付け、第一通信部31が設定ファイルのファイルIDを指定して設定ファイルを外部サービスシステム40に要求する。
【0122】
S14:外部サービスシステム40の通信部19は設定ファイルの要求を受信し、設定ファイルを端末装置30に送信する。
【0123】
S15:管理者は設定ファイルの内容を確認し、F~K列への情報を設定する。端末装置30の操作受付部33は設定を受け付ける。
【0124】
S16:管理者が例えば、設定ファイルをアップロードする操作を行うと、第一通信部31はA~K列へ情報が設定された設定ファイルを情報処理システム10に送信する。
【0125】
以上のようにして、外部サービスシステム40には設定ファイルが登録される。
【0126】
図14は、設定ファイルと帳票の対応を説明する図である。表4にて説明したように、管理者は、フォーマット、CSV列名、CSV位置(列)、CSV位置(行)、OCR言語、及び、ファイル名に使う順序、を設定する。なお、必ずしも全ての列を設定しなくてもよい。
【0127】
図14の例では、ID=1の領域情報から取得されたデータはCSV列名の「書類名」と対応することが設定されている。「書類名」はファイル名の一番目に使用される。ID=2の領域情報から取得されたデータはCSV列名の「申請日」と対応することが設定されている。また、申請日のCSV位置が3列2行と設定されているので、ID=2の領域情報から取得されたデータはファイルの3列2行目に書き出される。更に「申請日」はファイル名の二番目に使用される。ID=3の領域情報から取得されたデータはCSV列名の「金額」と対応することが設定されている。また、金額のCSV位置が4列2行と設定されているので、ID=3の領域情報から取得されたデータはファイルの4列2行目に書き出される。
【0128】
<アプリと領域情報の対応付け>
次に、
図15、
図16を参照して、アプリと領域情報の対応付けについて説明する。
図15は、アプリと領域情報の対応付けに関して端末装置30が表示する画面の一例である。管理者は端末装置30を操作して、端末装置30を情報処理システム10と通信させる。
【0129】
まず、
図15(a)は管理者が情報処理システム10にログインすると表示される初期画面630である。管理者に認められている操作メニューが表示される。設定ファイルにアプリを対応づけるため、管理者がアプリ一覧を表示させるアイコン631を選択する。
【0130】
表2に示したように、ユーザ管理部44ではユーザごとに利用できるアプリと外部サービスシステム情報が登録されているので、情報処理システム10は外部サービスシステム40ごとに管理者が利用できるアプリの一覧を端末装置30に提供できる。
【0131】
図15(b)はアプリ一覧画面632の一例を示す。アプリ一覧画面632には管理者が利用できるアプリの一覧が表示される。管理者はアプリ一覧画面632から、外部サービスシステム40に登録した設定ファイルと対応付けるためのアプリ633(例えば、経費精算書アプリ)を選択する。操作受付部33がアプリ633の選択を受け付けることで、
図15(c)に示す対応付け画面640が表示される。対応付け画面640は、外部サービスシステム選択欄641、アップロード先フォルダ欄642、及び、設定ファイル欄643を有している。
・外部サービスシステム選択欄641…領域から取得されたデータを書き出すファイルの保存先の外部サービスシステム40を管理者が設定するための欄である。したがって、管理者はアプリに予め対応付けられている外部サービスシステム40を変更したり、新規に設定したりできる。
・アップロード先フォルダ欄642…外部サービスシステム40において、領域から取得されたデータを書き出すファイルの保存先のフォルダを管理者が設定するための欄である。管理者がフォルダ選択ボタン642aを押下すると、外部サービスシステム40における管理者の認証情報で情報処理システム10が外部サービスシステム40にログインし、外部サービスシステム40においての管理者がアクセスできるトップフォルダが端末装置30に表示される。管理者は任意のフォルダを選択できる。
・設定ファイル欄643…アプリと対応付ける設定ファイルを管理者が選択するための欄である。管理者がファイルを選択ボタン644、を押下すると、外部サービスシステム40における管理者の認証情報で情報処理システム10が外部サービスシステム40にログインし、外部サービスシステム40においての管理者がアクセスできるトップフォルダが端末装置30に表示される。トップフォルダ(又は管理者が設定したフォルダ)には、情報処理システム10が登録し、管理者が更新した設定ファイルが含まれる。トップフォルダに設定ファイルがない場合、管理者はトップフォルダの下位のフォルダから設定ファイルを探すことができる。
【0132】
図16は、
図15の画面を介して管理者がアプリと設定ファイルを対応づける処理を説明するシーケンス図の一例である。
図16の処理は
図15(a)の画面が表示された状態からスタートする。
【0133】
S21:管理者は情報処理システム10にログインして、初期画面630からアプリ一覧を表示する操作を端末装置30に入力する。端末装置30の操作受付部33は操作を受け付け、第一通信部31がアプリ一覧を情報処理システム10に要求する。
【0134】
S22:情報処理システム10の通信部19がアプリ一覧の要求を受信し、端末画面提供部42が管理者のユーザIDに対応づけられているアプリをユーザ管理部44から取得する。端末画面提供部42は、外部サービスシステム40ごとに管理者が利用できるアプリを含むアプリ一覧画面の画面情報を作成する。通信部19はアプリ一覧画面の画面情報を端末装置30に送信する。
【0135】
S23:管理者が、設定ファイルを対応付けるアプリを選択する。端末装置30の操作受付部33が選択を受け付ける。この後、上記のように端末装置30は対応付け画面640を表示する。
【0136】
S24:管理者は、対応付け画面640でファイルを選択ボタン644、を押下する。操作受付部33が押下を受け付け、対応付け画面640で設定されている外部サービスシステム40に保存されているファイル一覧の要求を第一通信部31が情報処理システム10に送信する。
【0137】
S25:情報処理システム10の通信部19はファイル一覧の要求を受信し、アプリ実行部46が入出力処理部48に外部サービスシステム40を指定してファイル一覧を要求する。入出力処理部48は外部サービスシステム40に対応した外部サービス処理部62にファイル一覧を要求する。外部サービス処理部62は管理者の外部サービスシステム40(アプリに対応づけられているか、又は、対応付け画面でユーザが設定した)における認証情報をユーザ管理部44から取得し、外部サービスシステム40にファイル一覧の要求を送信する。
【0138】
S26:外部サービスシステム40は管理者の認証情報に基づいて、管理者のログインを許可し、管理者に対応づけられているファイルの一覧を取得する。ファイルの一覧が端末装置30に送信される。なお、
図16では、設定ファイルが保存された外部サービスシステム40と、領域から取得されたデータのファイルが保存される外部サービスシステム40が同じという前提だが両者は異なってもよい。この場合、管理者は設定ファイルを選択後、対応付け画面640で外部サービスシステム40を変更する。
【0139】
S27:端末装置30の表示制御部32はファイルの一覧を表示する。管理者はアプリと対応づけられる設定ファイルを選択する。端末装置30の操作受付部33は選択を受け付ける。
【0140】
S28:端末装置30の第一通信部31は設定ファイルの識別情報、アプリの識別情報、外部サービスシステム40、及び、アップロード先フォルダを指定して、設定ファイルとアプリの対応付け要求を情報処理システム10に送信する。
【0141】
S29:情報処理システム10の通信部19は設定ファイルとアプリの対応付け要求を受信し、アプリデータ管理部41がアプリデータ43に設定ファイルとアプリを対応付けて登録する。すなわち、applicationId、applicationName、fileId、fileName、及びアップロード先フォルダを対応づけて登録する。なお、外部サービスシステム40はアプリ処理情報53に登録される。
【0142】
以上により、アプリと設定ファイルが対応づけられた。以降、一般ユーザが機器20からアイコンを押下するだけで帳票の領域のデータをファイルに出力できる。
【0143】
なお、
図16では、対応付け画面640で管理者がアプリと領域情報を対応づける方法を説明したが、領域情報の登録時にアプリと領域情報の対応付けを行ってもよい。
【0144】
この場合、例えば
図10の領域登録画面610にアプリ名を入力するための欄が表示される。管理者は設定ファイルと対応づけたいアプリのアプリ名を入力する。情報処理システム10は設定ファイルを作成後、入力されたアプリ名のアプリと設定ファイルを対応づけることができる。つまり、管理者がアプリ名を設定して帳票を読み取らせれば、設定ファイルが生成され、連携元ファイルと設定ファイルとが対応づけられる。
【0145】
<アプリの複製>
帳票の形状は様々であるため、ユーザによりデータが記入される領域の場所も帳票によって様々である。そこで、本実施形態では、各帳票それぞれの形状に合わせて管理者が領域情報を登録することができる。各帳票ごとに領域情報を登録する方法の1つとして、管理者がアプリを複製する方法を説明する。
【0146】
図17は、いくつかのアプリの選択画面650を示す。一例として、明細書アプリ、納付書アプリ、及び、OCR指定領域アプリがある場合、明細書アプリに対しては明細書の領域情報が、納付書アプリに対しては納付書の領域情報が、アプリデータ43においてそれぞれ対応づけられている。ユーザが、明細書の領域からデータを取得したい場合、明細書アプリを起動して明細書をスキャンすることで期待する領域のデータを出力できる。ユーザが、納付書の領域からデータを取得したい場合、納付書アプリを起動して納付書をスキャンすることで期待する領域のデータを出力できる。
【0147】
各アプリが行う処理はアプリ処理情報53に記載されているが、明細書アプリと納付書アプリが行う処理は、ファイルの保存先、アップロード先フォルダ、及び、設定ファイルが異なるものの、実行されるコンポーネントは同じである。したがって、管理者が明細書アプリ又は納付書アプリを複製すれば、領域の指定、領域の取得、設定ファイルの作成、及び、設定ファイルと複製したアプリとの対応付け、が行われることで、情報処理システム10が任意の帳票に対応したアプリを作成できる。
【0148】
図18を参照してアプリの複製について説明する。
図18は、アプリの複製に際して管理者が操作する画面の一例である。
図18(a)は管理者が情報処理システム10にログインすることで端末装置30が表示する初期画面630である。初期画面630には管理者が各種の設定を行うための設定ボタン651が表示される。
【0149】
図18(b)は設定ボタン651の押下後に表示されるアプリ管理画面652である。アプリ管理画面652にはいくつかのアプリがグループ化されたグループ名653が表示される。なお、画面遷移は説明のための一例であって、図示した画面の省略や、新たな画面の追加が行われてよい。
【0150】
グループ名653の右側にはこのグループに所属するアプリの一覧が表示される。アプリの一覧に表示されるアプリは管理者に利用権限が認められているアプリである。管理者専用のアプリもあるし、他のユーザが使用するアプリもある。管理者は複製元となるアプリの設定ボタン654を押下する。設定ボタン654の押下により、メニューが表示され、該メニューの中に複製するボタン655がある。
【0151】
管理者が複製するボタン655を押下すると、
図18(c)に示す複製アプリ設定画面(ポップアップ画面)660が表示される。複製アプリ設定画面660は、アプリ名設定欄661、アイコンリスト欄662、及び、複製要求ボタン663を有している。アプリ名設定欄661には、複製により作成される新しいアプリに管理者が任意のアプリ名を入力する。アプリ名は任意でよいが、重複するアプリ名は排除されるか、又は、「~(2)」などのように枝番が付される。アプリ名以外にアイコン名、設定名と呼ばれてもよい。
【0152】
アイコンリスト欄662には、アイコンのリストが表示される。管理者は所望のアイコンを選択できる。参照ボタン664を押下して別のアイコンを表示させることも可能である。管理者が複製要求ボタン663を押下すると、複製元のアプリのアプリID,アプリ名、及び、アイコンが情報処理システム10に送信される。情報処理システム10はこれらを受信し、アプリ管理部49が複製元のアプリのアプリ処理情報53と画面情報54を使用して、新たにアプリを登録する。アプリ処理情報53のうち、アプリIDは重複しないものが採番され、アプリ名には管理者が入力したアプリ名が設定される。画面情報は複製元のアプリと同じであるが、このうちアイコンは管理者が選択したものである。アプリ処理情報、共有アプリ、及び、外部サービスシステム40の項目は複製元のアプリと同じである。例えばアプリ名等でユーザがアプリを識別可能な場合、すべてのアプリに対して別のアイコンが設定されている必要はない。
【0153】
また、本実施形態ではアプリの複製に伴い、新たな画像処理領域の設定が追加されているが、アプリの複製でなく、設定の追加や、アイコンの追加という形で、新たな画像処理領域の追加と機器で選択を受け付ける識別情報を対応付ける設定を管理者が行ってもよい。
【0154】
図19は、情報処理システム10がアプリの複製を登録する手順を示すシーケンス図の一例である。
【0155】
S31:管理者が情報処理システム10の認証情報を端末装置30に入力する。端末装置30の操作受付部33は認証情報の入力を受け付け、第一通信部31が認証情報を情報処理システム10に送信することで、管理者が情報処理システム10にログインする。
【0156】
S32:ログインにより情報処理システム10の端末画面提供部42が通信部19を介して初期画面の画面情報を端末装置30に送信する。その後、管理者の操作に応じて、端末画面提供部42は
図18に示した画面の画面情報を端末装置30に送信する。
【0157】
S33:管理者がアプリ名等を端末装置30に入力するので、操作受付部33が入力を受け付ける。
【0158】
S34:端末装置30の第一通信部31は複製元のアプリのアプリID,アプリ名、及び、アイコンを情報処理システム10に送信する。
【0159】
S35:情報処理システム10の通信部19はこれらを受信し、アプリ管理部49が複製元のアプリのアプリ処理情報53と画面情報54を使用して、新たにアプリを登録する。
【0160】
このように、管理者はアプリを複製することができる。管理者は複製により生成した新たなアプリに設定ファイルを対応付け、所望の帳票の所定の領域からデータを取得できる。
【0161】
管理者は1つの複製元のアプリから複数の新しいアプリを作成でき、情報処理システム10は、複数の新しいアプリに対し、それぞれ別の設定ファイルの選択を受け付けることができる。同じ処理フローに対する何らかの識別情報が付与できれば良いため、アプリの複製は一例であってアイコンの追加、設定の追加という態様で同じ処理フローに識別情報が付与されてもよい。
【0162】
<アプリと設定ファイルの対応付けを利用した帳票からのデータの取得>
アプリと設定ファイルの対応付けが完了した後は、ユーザが帳票を機器20に読み取らせることで、情報処理システム10が帳票からデータを取得できる。
【0163】
図20、
図21を参照して、帳票からのデータの取得について説明する。
図20は、機器20が表示する画面の遷移例を示す図である。
【0164】
(1)
図20(a)に示すように、ユーザはアプリ一覧画面を機器20に表示させる。例えば、経費を精算したい場合、ユーザは経費精算書アプリのアイコンを選択する。どの帳票がどのアプリに対応しているかはユーザが把握しているが、アプリのアイコン690に表示されるアプリ名と帳票(原稿)の名称が一致しているとよい。このアプリ名はアイコン名や設定名と呼ばれてもよい。すなわち、アイコン690には帳票の名称が含まれるとよい。更に、アイコン690には、帳票のサムネイルが含まれるとよい。ユーザが帳票に対応していないアイコンを選択することを抑制しやすくなる。あるいは、ユーザがアイコン690を押下すると帳票のサムネイルが表示されてもよい。ユーザはサムネイルを拡大表示したり部分表示したりしてアイコン690を確認できる。
【0165】
また、アイコン690にはリンクが埋め込まれていてもよい。リンクは、例えばアプリIDを含むURLか、又は、情報処理システム側でアプリIDと対応付けられているURLを有する。アイコン690の押下で、機器20はURLに接続することで、アプリIDを情報処理システムに通知する。
【0166】
またアイコン690が対応していない帳票をユーザが選択した場合、機器20がユーザに警告するとよい。例えば、機器20は読み取った帳票の画像データと、アイコン690に対応づけられている画像データを比較し、両者が異なる場合に、処理を継続するかどうかのメッセージなどを表示することでユーザに問い合わせる。画像データの比較は情報処理システム10が行ってもよい。なお、比較の方法としては、例えば、アイコン690に対応づけられている画像データで読み取った帳票の画像データを機器20又は情報処理システム10がパターンマッチングする方法がある。また、帳票にバーコードや二次元バーコードなどでアプリIDが印刷されている場合、このアプリIDとアイコン690に対応づけられているアプリIDを機器20又は情報処理システム10が比較する方法がある。
【0167】
また、ユーザが選択するものがアイコンで、機器20が情報処理システム10に送信するのがアプリIDや設定番号等の文字列であってもよい。つまり選択される物自体はアプリID(識別情報)ではなくてもよい。
【0168】
(2) 経費精算書を機器20がスキャンする場合、ユーザは経費精算書を用意する(
図20(b))。経費精算書はユーザが手書きで用意してもよいし、機器20がプリントアウトしてもよい。ユーザ自身がプリントアウトしたものではなくてもよい(公的に発行される書類や、他社から送られてくる書類等)。
【0169】
(3) ユーザが選択したアプリが画面情報54に基づいて
図20(c)の画面を表示する。
図20(c)の画面は
図10と同じである。ユーザはプリントアウトされた経費精算書をコンタクトガラスにセットし、スタートボタン613を押下することで機器20に読み取らせる。
【0170】
帳票の画像データが情報処理システム10に送信され、次述するような処理によりファイルが出力される。
【0171】
図21は外部サービスシステム40に保存されたファイルを説明する図である。
図21(a)は外部サービスシステム40のアップロード先フォルダの一例を示す。すなわち、管理者が
図15で設定したアップロード先フォルダに情報処理システム10が出力したファイルが保存される。
図21(a)の「My Drive>経費精算書置き場」のファイル階層は一例であり、管理者はアクセス権があるフォルダを指定できる。
【0172】
図21(b)はアップロード先フォルダに保存される2つのファイルを示す。1回の読み取り操作で2つのファイルが生成される。
A.帳票の領域から取得されたデータが保存されるCSVファイル681。
B.帳票の画像データを含むPDFファイル682。
【0173】
同じアプリが作成するCSVファイルは、1回の読み取り操作のたびに別々になる。ファイル名には申請日が含まれるので、ファイルが上書きされることはない。一方、同じアプリで取得されたデータは、読み取り操作のタイミングが異なっても、同一のCSVファイルに追加したい場合がある。この方法については後述する。こうすることで、庶務などの担当者は1つのCSVファイルにアクセスするだけで各社員のデータに対し精算等を行える。
【0174】
<<機器20が帳票をスキャンしない場合>>
図20の説明では、経費精算書を機器20がスキャンしていたが、情報処理システム10は帳票の画像データを端末装置30等から受信し、画像データの領域からデータを取得できる。この場合は、以下のようにして帳票の画像データを端末装置30が情報処理システム10に送信する。
【0175】
・ ユーザが端末装置30で動作するワープロで経費精算書を表示させ、必要事項を入力する。したがって、必要事項は文字コードになっている。ユーザが端末装置30を情報処理システム10に接続して、ログインして、アプリ一覧を表示させる。端末装置30の画面は
図20(a)の画面と同様になるので、ユーザが所望のアプリを選択する。情報処理システム10の端末画面提供部42は経費精算書を受付可能な画面情報を端末装置30に送信する。ユーザがこの画面で経費精算書の画像データが含まれるPDFファイル等を選択すると、端末装置30がPDFファイルを情報処理システム10に送信できる。
【0176】
したがって、ユーザは帳票をプリントアウトしなくても情報処理システム10が帳票からデータを取得できる。この場合、後述する
図22の処理における機器20の処理は端末装置30によって行われる。
【0177】
<動作手順>
図22は、情報処理システム10が機器20から帳票の画像データを含むPDFファイルを受信し、領域からデータを取得するシーケンス図の一例である。
【0178】
S41:帳票をプリントアウトしたユーザは機器20を操作して情報処理システム10における自分の認証情報を入力する。機器20の操作受付部23は認証情報の入力を受け付け、第二通信部21が認証情報を情報処理システム10に送信する。これにより、ユーザは情報処理システム10にログインする。ログインにより機器20の表示制御部22は、ユーザに利用権限が認められているアプリの一覧を表示する(
図20(a))。ユーザは例えばプリントアウトした帳票の名称と一致するアプリ名のアプリを選択する。操作受付部23は選択を受け付ける。
【0179】
S42:機器20の第二通信部21はアプリIDを指定してアプリ画面取得要求を情報処理システム10に送信する。
【0180】
S43:情報処理システム10の通信部19はアプリ画面取得要求を受信し、機器画面提供部47がアプリ管理部49からアプリIDで特定されるアプリの画面情報54を取得する。アプリのアプリ画面の画面情報が機器20に送信される。これにより、機器20の表示制御部22はアプリ画面を表示する(
図20(c))。
【0181】
S44:ユーザはプリントアウトされた帳票をコンタクトガラスにセットし、スタートボタン613を押下する。機器20の操作受付部23は押下を受け付け、画像データ生成部24が帳票の画像データを生成し、この画像データをPDFファイルに変換する。
【0182】
S45:機器20の第二通信部21はアプリのアプリIDとPDFファイルを指定して、アプリの実行を情報処理システム10に要求する。
【0183】
S46:情報処理システム10の通信部19はアプリの実行要求を受信し、アプリ実行部46がアプリの実行を開始する。アプリ実行部46はアプリIDを指定して入出力サービス部16にアプリの実行を要求する。入出力サービス部16はアプリ管理部49を介してアプリ処理情報53を取得する。これにより、アプリの処理フローが得られた。また、入出力処理部48はアプリデータ記憶部13からアプリIDに対応づけられたアプリデータ43を取得する。これにより、アプリに対応づけられている設定ファイルを特定できる。
【0184】
入出力処理部48はアプリデータ43とアプリ処理情報53に基づいて、設定ファイルの取得を外部サービス処理部62に要求する。
【0185】
S47:外部サービス処理部62はアプリデータ43に登録されているfileNameの項目のURLに接続し、設定ファイルを外部サービスシステム40から取得する。なお、外部サービス処理部62は、実行要求されたアプリが共有アプリでない場合はユーザの外部サービスシステム40における認証情報で外部サービスシステム40にログインし、実行要求されたアプリが共有アプリである場合は管理者の外部サービスシステム40における認証情報で外部サービスシステム40にログインする。
【0186】
S48:次に、入出力処理部48はアプリ処理情報53に基づいて、設定ファイルから領域情報を取得することをファイル出力部66に要求する。
【0187】
S49:ファイル出力部66は設定ファイルの予め決まった行と列から全ての領域情報を取得し、入出力処理部48に返す。
【0188】
S50:次に、入出力処理部48はアプリ処理情報53に基づいて、画像データと領域情報を指定して、画像データからの領域の取得(切り取り)を領域取得部67に要求する。
【0189】
S51:領域取得部67は画像データから領域情報で指定される領域を取得し、領域の画像を入出力処理部48に返す。なお、領域取得部67は画像データから領域を取得(切り取り)しなくてもよい。この場合、処理結果出力部68が領域情報で特定される画像データの領域にOCR処理を行えばよい。
【0190】
ステップS52~S55は領域の数だけ繰り返し実行される。
【0191】
S52:入出力処理部48はアプリ処理情報53に基づいて、領域の画像を指定して、領域のOCR処理を処理結果出力部68に要求する。この時、入出力処理部48は設定ファイルから取得したフォーマットとOCR言語を領域に対応づけて指定するとよい。
【0192】
S53:処理結果出力部68はフォーマットとOCR言語に対応した認識エンジンで領域にOCR処理を行う。処理結果出力部68は文字コードに変換されたデータ(OCR処理結果)を入出力処理部48に返す。
【0193】
なお、認識エンジンは、例えば文字の画像と文字コードがセットになった学習データを用いて両者の対応を学習し、画像からOCR処理結果(文字コード)を出力する識別機である。学習データが、日本語のみ、英語のみ、数値のみ、日付のみ、のように単純なほど、識別機の識別精度が向上する。一方、学習データに日本語、英語、数値及び日付の複数が混在すると、種々のデータの認識が可能になるが、識別精度が低下する傾向になる。したがって、フォーマットとOCR言語に対応した認識エンジンを使用することで認識精度を向上できる。
【0194】
ここで、機械学習とは、コンピュータに人のような学習能力を獲得させるための技術であり、コンピュータが,データ識別等の判断に必要なアルゴリズムを,事前に取り込まれる学習データから自律的に生成し,新たなデータについてこれを適用して予測を行う技術のことをいう。機械学習のための学習方法は、教師あり学習、教師なし学習、半教師学習、強化学習、深層学習のいずれかの方法でもよく、更に、これらの学習方法を組み合わせた学習方法でもよく、機械学習のための学習方法は問わない。また、認識エンジンは機械学習の学習効果によって生成されたものでなくてもよい。
【0195】
S54:次に、入出力処理部48はアプリ処理情報53に基づいて、領域から取得されたデータ、CSV列名、CSV位置、及び、ファイル名(設定ファイルから取得)を指定して、ファイル出力部66にデータを有するファイルの出力を要求する。
【0196】
S55:ファイル出力部66は、CSV列名を列の先頭に書き込み、データをCSV位置で指定されるCSVファイルのセルに書き込み、OCR処理結果(CSVファイル)を入出力処理部48に返す。CSVファイルには指定されたファイル名が付与されている。なお、出力先のファイルの形式はCSVファイルに限らず、表形式のファイルであればよいし、テキストファイルでもよいし、その他のアプリケーションのファイルでもよい。
【0197】
S56:次に、入出力処理部48はアプリ処理情報53に基づいて、OCR処理結果(CSVファイル)、フォーマット及びOCR言語を指定して、OCR処理結果の補正をOCR補正部69に要求する。このフォーマットは表4に示された設定ファイルから取得されていて、管理者によって設定されたものである。
【0198】
図23はOCR処理結果の補正を説明する図である。設定ファイルにフォーマットが設定されている場合、OCR補正部69はOCR処理結果を補正できる。OCR補正部69には指定文字列と変換文字のルールが
図23に示すように定義されている。
図23(a)はフォーマットがNUMERICの場合のルールである。例えば、数値にはI,B、Zが含まれないので、それぞれ1,8,2に補正される。
図23(b)は言語がEnglishの場合のルールである。例えば、Englishには1,2、8が含まれないので、それぞれI,B,Zに補正される。
【0199】
S57:OCR補正部69は、補正したOCR処理結果(CSVファイル)を入出力処理部48に返す。
【0200】
ステップS58~S61はCSVファイルの数だけ実行される。1回の読み取り操作で作成されるCSVファイルの数は、帳票の数に関係なく1回の場合と、帳票のページ数と同じ場合がある。どちらが採用されるかは、アプリに設定されている。
【0201】
S58:次に、入出力処理部48はアプリ処理情報53に基づいて、OCR処理結果(CSVファイル)のアップロードを外部サービス処理部62に要求する。アップロード先フォルダはアプリデータ43に設定されている。
【0202】
S59:外部サービス処理部62は外部サービスシステム40のアップロード先フォルダにCSVファイルを保存する。
【0203】
S60:メタデータの設定が可能な場合は、ステップS60が実行される。外部サービスシステム40がメタデータ(外部サービスシステム上でユーザが設定した項目で、文字列、日付など)の設定に対応している場合、アップロードするCSVファイルに紐付けるメタデータをユーザが設定できる。ユーザは機器20が表示する画面からメタデータを入力できる。入出力処理部48はメタデータのアップロードを外部サービス処理部62に要求する。アップロード先フォルダはCSVファイルと同じである。
【0204】
S61:外部サービス処理部62は外部サービスシステム40のアップロード先フォルダにメタデータを保存する。
【0205】
S62:複数の帳票データが読み込まれた場合に、ユーザとしては個別のファイルに保存したい場合がある。この場合、入出力処理部48はアプリ処理情報53に基づいて、複数ページの画像データと共に、ページ分割をPDF処理部64に要求する。この処理は省略されてもよく、その場合、入出力処理部48は複数のデータを1つのファイルとして保存してよい。
【0206】
S63:PDF処理部64は1ページずつに分解したPDFファイルを入出力処理部48に返す。
【0207】
S64:入出力処理部48はアプリ処理情報53に基づいて、PDFファイルを指定して、OCR処理を処理結果出力部68に要求する。
【0208】
S65:処理結果出力部68はPDFファイルにOCR処理を行い、OCR処理で生成された文字コードをPDFファイルに透明テキストとして設定する。
【0209】
ステップS66~S69はPDFファイルの数だけ実行される。
【0210】
S66:入出力処理部48はアプリ処理情報53に基づいて、テキスト付きPDFファイルのアップロードを外部サービス処理部62に要求する。アップロード先フォルダはアプリデータ43に設定されている。
【0211】
S67:外部サービス処理部62は外部サービスシステム40のアップロード先フォルダにテキスト付きPDFファイルを保存する。
【0212】
S68:外部サービスシステム40が上記メタデータ(外部サービスシステム上でユーザが設定した項目で、文字列、日付など)に対応している場合、ユーザは機器20が表示する画面からメタデータを入力できる。入出力処理部48はメタデータのアップロードを外部サービス処理部62に要求する。アップロード先フォルダはPDFファイルと同じである。
【0213】
S69:外部サービス処理部62は外部サービスシステム40のアップロード先フォルダにメタデータを保存する。
【0214】
以上により、外部サービスシステム40のアップロード先フォルダに、CSVファイルとCSVファイルとは別のPDFファイルが登録された。
【0215】
<外部サービスシステムに登録されたCSVファイルとPDFファイルの表示>
企業の担当者が社員の経費などを計算する場合、端末装置30を操作して外部サービスシステム40に接続させる。担当者にはアップロード先フォルダが通知されているので、端末装置30でCSVファイルとPDFファイルを取得できる。
【0216】
図24は、端末装置30が表示する外部サービスシステム40のファイル一覧画面670の一例である。
図24(a)に示すように、アップロード先フォルダにPDFファイル671とCSVファイル672が保存されている。
図24(b)は端末装置30が表示させたCSVファイル672の内容を示す。すなわち、
図24(b)は帳票から出力されたデータである。
図24(b)では2つの領域から取得されたデータが保存されている。各列には設定ファイルに設定されているCSV列名も設定されており、ユーザは各列が何のデータかを判断できる。
【0217】
また、
図25に示すように、機器20も処理結果を表示することが好ましい。
図25は機器20が表示する出力データ表示画面691の一例である。出力データ表示画面691は、実行されたアプリ名692、及び、アプリが出力したファイルのリスト693を表示する。これらは情報処理システム10から機器20に送信される。CSVファイルにはCSVファイルの内容が含まれており、ユーザがCSVファイルを押下することで、帳票の領域から取得されCSVファイルに保存されたデータ694を機器20が表示することができる。
【0218】
ファイル名やデータを確認したユーザは帳票が正しく処理されたかどうかを判断できる。
【0219】
なお、
図22では処理の対象となる画像データをPDFファイルとしたが、JPEG、PNG、TIFF、BMP、などどのような形式の画像データでもよい。
<複数の帳票が読み取られた場合>
図26を参照して複数の帳票が一度の読み取り操作で読み取られた場合を説明する。
図26は、複数の帳票と、出力されたファイルを示す図である。
図26(a)に示すように、アプリの実行時に複数の帳票が1回の読み取り操作で読み取られた。1回の読み取り操作とは、スタートボタン613が1回だけ押下された場合をいう。機器20は複数の帳票を順番に読み取り、情報処理システム10は各帳票の画像データの同じ領域から複数のデータを取得する。
【0220】
図26(b)は複数の帳票が一度の読み取り操作で読み取られた場合のCSVファイルを示す図である。1行目が1枚目の帳票から取得されたデータであり、2行目が2枚目の帳票から取得されたデータである。このように、複数の帳票の複数のデータが1つのCSVファイルにまとめられるので、担当者は集計やグラフ化がしやすくなる。
【0221】
なお、複数の帳票が一度の読み取り操作で読み取られた場合、ファイル出力部66は設定ファイルのCSV位置(開始行)を1つずつインクリメントする。つまり、帳票ごとに下の行にデータを書き込めばよい。
【0222】
複数の帳票が一度の読み取り操作で読み取られた場合、情報処理システム10が帳票の数だけのCSVファイルを出力することも可能である。
【0223】
また、複数の帳票が複数回の読み取り操作で読み取られた場合(異なるタイミングで読み取られた場合)、情報処理システム10が1つの同じCSVファイルにデータを出力することも可能である。外部サービスシステム40がマージする場合と、情報処理システム10がマージする場合がある。
【0224】
・外部サービスシステム40がマージする場合、外部サービス処理部62はCSVファイルのマージを外部サービスシステム40に要求する。アプリが同じならCSVファイルのファイル名に同じ文字列(例えば経費精算書)が含まれるので、外部サービス処理部62はファイル名を指定してCSVファイルのマージを要求できる。外部サービスシステム40はすでに保存済みのCSVファイルの同じ列番号に、マージが要求されたCSVファイルの同じ列番号のデータを追加する。
【0225】
・情報処理システムがマージする場合、外部サービス処理部62はファイル名を指定してCSVファイルを外部サービスシステム40からダウンロードする。外部サービス処理部62は取得したCSVファイルの同じ列番号に、新たに作成したCSVファイルの同じ列番号のデータを追加する。外部サービス処理部62はマージしたCSVファイルを外部サービスシステム40にアップロードする。
【0226】
このように、情報処理システムは受信した複数の画像データから同一の領域を取得し、処理結果出力部68は、複数の画像データで同一の領域にOCR処理を行い、ファイル出力部66は、複数の画像データで同一の領域から生成された複数のデータを1つのファイルに出力することができる。
【0227】
<主な効果>
以上説明したように、本実施形態の画像処理システムは、領域がマーキングされた帳票を機器20が読み取り、帳票ごとに領域情報を記憶する。そして、機器から送信された帳票の画像データから領域のみを取得してOCR処理を行い、OCR処理結果であるデータをファイルに出力する。これによって、同じ種類の複数の帳票において特定の領域のみを抜き出したファイルを簡単に作成することが可能になる。
【0228】
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【0229】
例えば、本実施形態では、帳票の領域から取得されたデータをファイルに出力したが、ファイル化するのでなくメールで送信してもよいし、機器20に表示させてもよい。
【0230】
また、本実施形態では指定された領域に対してOCR処理を行っているが、その他の画像処理(マスク処理や画像の抜出処理等)を行ってもよい。
【0231】
また、
図5などの構成例は、端末装置30、機器20、及び情報処理システム10による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。端末装置30、機器20、及び情報処理システム10の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
【0232】
また、実施例に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。ある実施形態では、情報処理システム10は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。
【0233】
更に、情報処理システム10は、本実施形態で開示された処理ステップ、例えば
図22等を様々な組み合わせで共有するように構成できる。例えば、所定のユニットによって実行されるプロセスは、情報処理システム10が有する複数の情報処理装置によって実行され得る。また、情報処理システム10は、1つのサーバ装置にまとめられていても良いし、複数の装置に分けられていても良い。
【0234】
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)や従来の回路モジュール等のデバイスを含むものとする。
【符号の説明】
【0235】
10 情報処理システム
20 機器
30 端末装置
100 画像処理システム
【先行技術文献】
【特許文献】
【0236】