JP2021068289A - 画像処理装置、情報処理方法及びプログラム - Google Patents
画像処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2021068289A JP2021068289A JP2019194478A JP2019194478A JP2021068289A JP 2021068289 A JP2021068289 A JP 2021068289A JP 2019194478 A JP2019194478 A JP 2019194478A JP 2019194478 A JP2019194478 A JP 2019194478A JP 2021068289 A JP2021068289 A JP 2021068289A
- Authority
- JP
- Japan
- Prior art keywords
- metadata
- file
- image
- normalization
- cpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Character Discrimination (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】検索対象である文書ファイルに統制された文言のメタデータを付与する技術を提供する。【解決手段】画像形成装置は、取得した原稿画像に対して文字認識処理を行い、文字認識結果を用いて原稿内に記載されている項目とその値をメタデータの候補として抽出する。そして、メタデータ候補を文字列正規化データベースにより正規化し、作成したファイルに付与する。【選択図】図3
Description
本発明は、画像処理装置、情報処理方法及びプログラムに関する。
帳票等の紙文書を画像読み取り装置でスキャンしてデジタル化しストレージに格納する業務フローが存在し、また、デジタル化した文書ファイルを後で利用する際に、格納されたファイルを探すことがある。格納されたファイルをストレージ内から探す際、フォルダを開き、ファイルをひとつずつ開いて探す作業を人手で行うことは大きな負荷となる。
そこで解決する手法として、ファイルにメタデータを付加し、ユーザが入力する検索キーワードから、そのメタデータを用いてファイルの検索を行う手法がある。メタデータとは、ファイル内に記載された内容に関する代表情報及び付帯情報が記載されたデータのことである。より具体的には、メタデータの構成として、抽出項目とその値が対で定義されている。抽出項目とはデータの意味を指す「キー項目」(以下、項目という)で、値とはキー項目に対応する具体的な内容を示す「バリュー値」(以下、値という)を指す。
そこで解決する手法として、ファイルにメタデータを付加し、ユーザが入力する検索キーワードから、そのメタデータを用いてファイルの検索を行う手法がある。メタデータとは、ファイル内に記載された内容に関する代表情報及び付帯情報が記載されたデータのことである。より具体的には、メタデータの構成として、抽出項目とその値が対で定義されている。抽出項目とはデータの意味を指す「キー項目」(以下、項目という)で、値とはキー項目に対応する具体的な内容を示す「バリュー値」(以下、値という)を指す。
ファイルにメタデータを付加する際、ファイル内に記載された文言をそのまま付与してしまうと、表記ばらつきによって本質的には同じ意味を指す文言であっても異なる表記でメタデータに付与される場合がある。この場合、検索時に文言が一致せず検索性が低下してしまう可能性がある。また、検索時に用いる検索キーワードも同様に検索者が使用する入力キーワードばらつきによって文言が一致せず検索性が低下してしまう可能性がある。
そこで、あいまい検索技術では同義語辞書又は類義語を持ち、検索時に用いる検索キーワード及び、その同義語すべてで検索する手法がある。その他、特許文献1では、同義語辞書の代わりに、過去にメタデータを付与した類似文書をストレージ内から検索し、類似文書に付与したメタデータを追加付与することにより解決する方法が提案されている。
しかし、すべての同義語・類義語で検索をそれぞれ行ったり、類似文書を検索したりするため、多くの時間を費やしてしまうという課題がある。
これを解決する手法として、特許文献2の手法がある。この手法では、画像検索時に、検索キーワードの同義語及び類義語辞書を用いて統制されたキーワードに正規化し検索を行うことが提案されている。これにより、あいまい検索時の時間が多くかかる課題は解決可能である。
そこで、あいまい検索技術では同義語辞書又は類義語を持ち、検索時に用いる検索キーワード及び、その同義語すべてで検索する手法がある。その他、特許文献1では、同義語辞書の代わりに、過去にメタデータを付与した類似文書をストレージ内から検索し、類似文書に付与したメタデータを追加付与することにより解決する方法が提案されている。
しかし、すべての同義語・類義語で検索をそれぞれ行ったり、類似文書を検索したりするため、多くの時間を費やしてしまうという課題がある。
これを解決する手法として、特許文献2の手法がある。この手法では、画像検索時に、検索キーワードの同義語及び類義語辞書を用いて統制されたキーワードに正規化し検索を行うことが提案されている。これにより、あいまい検索時の時間が多くかかる課題は解決可能である。
特許文献2の手法の場合、検索に用いる検索キーワードについては正規化される。一方、検索対象である付与されたメタデータは画像検索に用いるため画像特徴量から一意に決まるため、正規化する必要がないため、正規化されていない。一方、文書検索の場合、文書内に記載されている内容も表記ばらつきしているため、そのままメタデータ化してしまうと検索対象である付与されたメタデータもばらついてしまうため、検索キーワードを正規化したとしても、網羅的に検索できない課題がある。
本発明は、画像に対して文字認識処理を行う文字認識手段と、文字認識結果からメタデータを抽出する抽出手段と、前記メタデータを正規化する正規化手段と、を有することを特徴とする。
本発明によれば、網羅的に検索可能とすることができる。
以下、本発明の実施形態について図面に基づいて説明する。
<実施形態1>
(システム構成)
図1は、画像処理システムのシステム構成の一例を示す図である。図1に示すように、画像形成装置100はLAN102に接続され、Internet103等を介してPC等の端末101等と通信可能になっている。なお、本実施形態の実現にあたっては、PC等の端末101に関しては、必ずしも必要なくてもよく、画像形成装置100のみの構成だけでもよい。画像形成装置100は画像処理装置の一例である。
画像形成装置100は、表示操作部、スキャナ部及び、プリンタ部を有する複合機(MFP)であり、スキャナ部を用いて文書原稿をスキャンするスキャン端末として利用することが可能である。また、画像形成装置100は、タッチパネル、又はハードボタン等の表示操作部を有し、メタデータの付与内容を表示したり、ユーザからの指示を受け付けたりするためのユーザインタフェースの表示を行ったりする。
(システム構成)
図1は、画像処理システムのシステム構成の一例を示す図である。図1に示すように、画像形成装置100はLAN102に接続され、Internet103等を介してPC等の端末101等と通信可能になっている。なお、本実施形態の実現にあたっては、PC等の端末101に関しては、必ずしも必要なくてもよく、画像形成装置100のみの構成だけでもよい。画像形成装置100は画像処理装置の一例である。
画像形成装置100は、表示操作部、スキャナ部及び、プリンタ部を有する複合機(MFP)であり、スキャナ部を用いて文書原稿をスキャンするスキャン端末として利用することが可能である。また、画像形成装置100は、タッチパネル、又はハードボタン等の表示操作部を有し、メタデータの付与内容を表示したり、ユーザからの指示を受け付けたりするためのユーザインタフェースの表示を行ったりする。
なお、本実施形態では、画像形成装置100単体で、スキャン処理、OCR関連処理、メタデータ選択処理、メタデータ付与処理、ファイル送信を行う例について説明するが、その一部を他の端末101で行うように構成したシステムであってもよい。例えば、まず、スキャン処理とファイル分割処理とを画像形成装置100で実行して、スキャン画像を他の端末101にネットワークを介して送信する。そして、他の端末101においてOCR関連処理及びメタデータ選択処理を実行し、付与するメタデータを画像形成装置100に返信して、画像形成装置でファイルを生成及びメタデータ付与処理をしてファイル送信をしてもよい。
(画像形成装置100のハードウェア構成)
図2は、画像形成装置100のハードウェア構成の一例を示す図である。制御部110では、CPU111、記憶装置112(ROM118、RAM119、HDD120)、プリンタI/F部113、ネットワークI/F部114、スキャナI/F部115、表示操作I/F部116がシステムバス117を介して互いに通信可能に接続されている。制御部110は、画像形成装置100全体の動作を制御する。
CPU111は、記憶装置112に記憶された制御プログラムを読み出し実行することにより、後述の図3、図4、図6、図9−図11のフローチャートにおける各処理(読取制御、画像処理、表示制御等)を実行する。記憶装置112は、プログラム、画像データ、メタデータ、設定データ及び、処理結果データ等を格納し保持する。
記憶装置112には、不揮発性メモリであるROM118、揮発性メモリであるRAM119及び、大容量記憶領域であるHDD120等がある。
ROM118は、制御プログラム等を保持する不揮発性メモリであり、CPU111はその制御プログラムを読み出し、処理を実行することによって画像形成装置100の制御を行う。
RAM119は、CPU111の主メモリ、ワークエリア等の一時記憶領域として用いられる揮発性メモリである。
図2は、画像形成装置100のハードウェア構成の一例を示す図である。制御部110では、CPU111、記憶装置112(ROM118、RAM119、HDD120)、プリンタI/F部113、ネットワークI/F部114、スキャナI/F部115、表示操作I/F部116がシステムバス117を介して互いに通信可能に接続されている。制御部110は、画像形成装置100全体の動作を制御する。
CPU111は、記憶装置112に記憶された制御プログラムを読み出し実行することにより、後述の図3、図4、図6、図9−図11のフローチャートにおける各処理(読取制御、画像処理、表示制御等)を実行する。記憶装置112は、プログラム、画像データ、メタデータ、設定データ及び、処理結果データ等を格納し保持する。
記憶装置112には、不揮発性メモリであるROM118、揮発性メモリであるRAM119及び、大容量記憶領域であるHDD120等がある。
ROM118は、制御プログラム等を保持する不揮発性メモリであり、CPU111はその制御プログラムを読み出し、処理を実行することによって画像形成装置100の制御を行う。
RAM119は、CPU111の主メモリ、ワークエリア等の一時記憶領域として用いられる揮発性メモリである。
ネットワークI/F部114は、制御部110又は画像形成装置100を、システムバス117を介してLAN102に接続する。
ネットワークI/F部114は、LAN102上の外部装置に画像データを送信したり、LAN102上の外部装置から各種情報を受信したりする。
スキャナI/F部115は、スキャナ部122と制御部110とを、システムバス117を介して接続する。スキャナ部122は、文書原稿を読み取ってスキャン画像データを生成し、スキャナI/F部115を介してスキャン画像データを制御部110に入力する。
表示操作部I/F部116は、表示操作部123と制御部110とを、システムバス117を介して接続する。表示操作部123には、タッチパネル機能を有する液晶表示部及びハードボタン等が備えられている。
プリンタI/F部113は、プリンタ部121と制御部110とを、システムバス117を介して接続する。プリンタ部121は、CPU111で生成された画像データをプリンタI/F部113を介して受信し、受信した画像データを用いて記録紙へのプリント処理を行う。
以上のように、本実施形態に係る画像形成装置100では、上記のハードウェア構成によって、画像処理機能を提供することができる。
ネットワークI/F部114は、LAN102上の外部装置に画像データを送信したり、LAN102上の外部装置から各種情報を受信したりする。
スキャナI/F部115は、スキャナ部122と制御部110とを、システムバス117を介して接続する。スキャナ部122は、文書原稿を読み取ってスキャン画像データを生成し、スキャナI/F部115を介してスキャン画像データを制御部110に入力する。
表示操作部I/F部116は、表示操作部123と制御部110とを、システムバス117を介して接続する。表示操作部123には、タッチパネル機能を有する液晶表示部及びハードボタン等が備えられている。
プリンタI/F部113は、プリンタ部121と制御部110とを、システムバス117を介して接続する。プリンタ部121は、CPU111で生成された画像データをプリンタI/F部113を介して受信し、受信した画像データを用いて記録紙へのプリント処理を行う。
以上のように、本実施形態に係る画像形成装置100では、上記のハードウェア構成によって、画像処理機能を提供することができる。
(フローチャートを用いた本実施形態の詳細説明)
本実施形態では、画像形成装置100が文書原稿を読み取り、ファイルに付与するメタデータの取得のため、OCR処理を行う。そして、OCR結果を基にファイルに付与するメタデータ候補を取得する。取得したメタデータの候補を基にメタデータの文字列を正規化処理し、作成したファイルに付与を行う。付与されたメタデータに対し、ユーザによる確認及び修正処理が終わると、ファイルの送信を行う。OCR処理は、文字認識処理の一例である。また、OCR結果は、文字認識結果の一例である。
図3は、画像形成装置100が実行する情報処理の一例を示すフローチャートである。
表示操作部123からユーザの指示を受け付けると、ステップS301において、スキャナ部122は、原稿フィーダ又は原稿台から文書原稿を読み取る。CPU111は、スキャナ部122より画像データを取得する。
本実施形態では、画像形成装置100が文書原稿を読み取り、ファイルに付与するメタデータの取得のため、OCR処理を行う。そして、OCR結果を基にファイルに付与するメタデータ候補を取得する。取得したメタデータの候補を基にメタデータの文字列を正規化処理し、作成したファイルに付与を行う。付与されたメタデータに対し、ユーザによる確認及び修正処理が終わると、ファイルの送信を行う。OCR処理は、文字認識処理の一例である。また、OCR結果は、文字認識結果の一例である。
図3は、画像形成装置100が実行する情報処理の一例を示すフローチャートである。
表示操作部123からユーザの指示を受け付けると、ステップS301において、スキャナ部122は、原稿フィーダ又は原稿台から文書原稿を読み取る。CPU111は、スキャナ部122より画像データを取得する。
ステップS302において、CPU111は、ステップS301で取得した画像に対して、OCR関連処理を実行する。OCR関連処理の詳細については後述する。
ステップS303において、CPU111は、ステップS302で行ったOCR結果から抽出項目及び抽出値の取得処理を実行する。抽出項目及び抽出値の取得処理の詳細については後述する。
ステップS304において、CPU111は、ステップS303で取得した抽出項目及び抽出値から付与するメタデータの候補を決定する。付与するメタデータ候補決定の詳細については後述する。
ステップS305において、CPU111は、ステップS304で決定したメタデータの候補文字列を、事前にHDD120に保持された文字列正規化データベースを用いて正規化変換処理を行う。メタデータの正規化処理の詳細については後述する。
ステップS303において、CPU111は、ステップS302で行ったOCR結果から抽出項目及び抽出値の取得処理を実行する。抽出項目及び抽出値の取得処理の詳細については後述する。
ステップS304において、CPU111は、ステップS303で取得した抽出項目及び抽出値から付与するメタデータの候補を決定する。付与するメタデータ候補決定の詳細については後述する。
ステップS305において、CPU111は、ステップS304で決定したメタデータの候補文字列を、事前にHDD120に保持された文字列正規化データベースを用いて正規化変換処理を行う。メタデータの正規化処理の詳細については後述する。
ステップS306において、CPU111は、ステップS301で取得した画像からファイルを作成する。本実施形態ではPDF(Portable Document Format)化の例を示す。
ステップS307において、CPU111は、ステップS306で作成したPDFファイルに対し、S305で決定されたメタデータをファイルに付与する。PDFファイルには、XML形式の文書メタデータを設定することができる。付与するメタデータには、作成者氏名、著作権情報、作成日時といった一般的なファイルに付与されている情報が含まれている。これに加えて、キーワードという任意の情報を付与することができる。なお、それらの情報は検索ユーティリティで使用することが可能である。また、本実施形態では作成したPDFファイルに対しメタデータを付与する例を示すが、本実施形態はこれに限定されるものではない。PDFファイルと異なるデータとして別にメタデータのテキスト情報を保持し、クラウドストレージ等に送信する場合には、ファイルとは別に設定することもできる。
ステップS308において、CPU111は、ステップS307で作成したファイルを、LAN102を通じて送信先に送信する。
ステップS307において、CPU111は、ステップS306で作成したPDFファイルに対し、S305で決定されたメタデータをファイルに付与する。PDFファイルには、XML形式の文書メタデータを設定することができる。付与するメタデータには、作成者氏名、著作権情報、作成日時といった一般的なファイルに付与されている情報が含まれている。これに加えて、キーワードという任意の情報を付与することができる。なお、それらの情報は検索ユーティリティで使用することが可能である。また、本実施形態では作成したPDFファイルに対しメタデータを付与する例を示すが、本実施形態はこれに限定されるものではない。PDFファイルと異なるデータとして別にメタデータのテキスト情報を保持し、クラウドストレージ等に送信する場合には、ファイルとは別に設定することもできる。
ステップS308において、CPU111は、ステップS307で作成したファイルを、LAN102を通じて送信先に送信する。
(OCR関連処理(S302)の詳細説明)
OCR関連処理の詳細について、図4を用いて説明する。図4は、画像データ一枚に対して、OCRとその前処理を含めたOCR関連処理を実行する情報処理の一例を示すフローチャートである。
ステップS401において、CPU111は、画像データから傾きの角度を検出し、検出した傾きだけ逆方向に画像を回転することで、傾きを補正した画像データを取得する。傾き補正の対象となる傾きとは、スキャナ部122による読み取り時に、原稿フィーダ内のローラの摩耗等が原因でまっすぐに原稿が読み取られなかったり、原稿の印刷時にまっすぐ印字できなかったりするような傾きである。傾き検出では、CPU111は、画像データ内に含まれるオブジェクトを検出し、水平方向又は鉛直方向に隣り合うオブジェクト群を連結する。CPU111は、連結されたオブジェクトの中心位置を結んだ角度が、水平方向又は鉛直方向からどれだけ傾いているかを取得することで傾きを求める。なお、傾き検出は上記の方法に限るものではない。例えば、CPU111は、画像データ内に含まれるオブジェクトの中心座標を取得し、0.1度単位で中心座標群を回転させながら、中心座標群が水平方向又は垂直方向に並ぶ割合がもっとも高い角度を傾きとして求めてもよい。この傾き補正によって、画像の傾きを補正することで、後述する回転補正及びブロックセレクション処理、OCRのそれぞれの処理精度を上げることができる。
OCR関連処理の詳細について、図4を用いて説明する。図4は、画像データ一枚に対して、OCRとその前処理を含めたOCR関連処理を実行する情報処理の一例を示すフローチャートである。
ステップS401において、CPU111は、画像データから傾きの角度を検出し、検出した傾きだけ逆方向に画像を回転することで、傾きを補正した画像データを取得する。傾き補正の対象となる傾きとは、スキャナ部122による読み取り時に、原稿フィーダ内のローラの摩耗等が原因でまっすぐに原稿が読み取られなかったり、原稿の印刷時にまっすぐ印字できなかったりするような傾きである。傾き検出では、CPU111は、画像データ内に含まれるオブジェクトを検出し、水平方向又は鉛直方向に隣り合うオブジェクト群を連結する。CPU111は、連結されたオブジェクトの中心位置を結んだ角度が、水平方向又は鉛直方向からどれだけ傾いているかを取得することで傾きを求める。なお、傾き検出は上記の方法に限るものではない。例えば、CPU111は、画像データ内に含まれるオブジェクトの中心座標を取得し、0.1度単位で中心座標群を回転させながら、中心座標群が水平方向又は垂直方向に並ぶ割合がもっとも高い角度を傾きとして求めてもよい。この傾き補正によって、画像の傾きを補正することで、後述する回転補正及びブロックセレクション処理、OCRのそれぞれの処理精度を上げることができる。
ステップS402において、CPU111は、ステップS401で取得した傾き補正後の画像に対して、原稿内の文字が正立する向きになるように、90度単位で画像を回転補正した画像を得る。CPU111は、ステップS401で取得した傾き補正後の画像を基準画像として、基準画像と90回転した画像、180度回転した画像、270度回転した画像の4枚の画像を用意する。そして、CPU111は、それぞれの画像に対し、高速処理可能な簡易的なOCR処理を実行して、一定値以上の確信度を持って認識された文字の数が最も多い画像を回転補正後画像として取得する。なお、回転補正の方法は上記に限るものではない。
ステップS403において、CPU111は、ステップS402で取得した回転補正後画像に対し、ブロックセレクション処理を実行する。ブロックセレクション処理とは、画像を前景領域と背景領域に分類した上で、前景領域をテキストブロック及びそれ以外のブロックに分割する判定処理である。CPU111は、白黒に二値化された画像を基に、領域ごとに文字領域(TEXT)、線領域(LINE)、表領域(TABLE)、写真領域(PHOTO)、図画領域(PICTURE)を決定する。得られた文字領域(TEXT)のブロック情報は、後述のOCR処理で用いられる。
ステップS404において、CPU111は、ステップS403で取得したテキストブロックに対してOCRを実行し、各テキストブロックに対応する文字列を結果として取得する。
ステップS403において、CPU111は、ステップS402で取得した回転補正後画像に対し、ブロックセレクション処理を実行する。ブロックセレクション処理とは、画像を前景領域と背景領域に分類した上で、前景領域をテキストブロック及びそれ以外のブロックに分割する判定処理である。CPU111は、白黒に二値化された画像を基に、領域ごとに文字領域(TEXT)、線領域(LINE)、表領域(TABLE)、写真領域(PHOTO)、図画領域(PICTURE)を決定する。得られた文字領域(TEXT)のブロック情報は、後述のOCR処理で用いられる。
ステップS404において、CPU111は、ステップS403で取得したテキストブロックに対してOCRを実行し、各テキストブロックに対応する文字列を結果として取得する。
(抽出項目及び抽出値の取得処理(S303)の詳細説明)
抽出項目及び抽出値の取得処理の詳細について説明する。抽出項目及び抽出値の取得処理は、CPU111が、OCR関連処理(S302)で取得したOCR結果を用いて、原稿内に記載されている項目とその値を取得する。ここで、項目とはデータの意味を指す「キー項目」を指す。値とは、それに対応する具体的な内容を示す「バリュー値」を指す。また、抽出項目及び抽出値が対になったデータのことをメタデータと呼ぶ。図5(A)(B)を用いて具体的に説明する。図5(A)は、請求書等の帳票原稿の例である。図5(B)は、請求書等の帳票原稿から情報取得する領域を示した例である。例えば、CPU111は、図5(B)502に示すように項目「請求先会社名」という項目に対し、具体的な情報として会社名である「ABC(株)」を取得する。その他、CPU111は、図5(B)503に示すように項目「請求元会社名」に対し「株式会社あいう」及び、図5(B)505に示すように「請求番号」に対し「1234」をそれぞれ取得する。抽出項目及び抽出値の取得処理の方法は様々あるが、例えば、CPU111は、取得したい項目の項目名を保持しておき、OCR結果で保持している項目名と一致していることを見つけた場合、その文字列が記載されたブロックセレクション処理結果から座標値を取得する。CPU111は、 項目を取得した文字領域ブロックに最も近い右側、下側領域、右下側領域の文字ブロックのOCR結果を取得することで抽出項目及び抽出値の取得処理が可能である。また、項目名が記載されていない場合には、CPU111は、文字列のパターンから推定することもできる。例えば、図5(B)504に示すように日付を示す「2019年4月1日」の場合、CPU111は、推定によって「YYYY年M月D日」の並びパターンになっていることを正規表現等の手法で推定する。その結果、CPU111は、項目「(請求)日付」に対し「2019年4月1日」と判定することもできる。その他、CPU111は、文字位置の情報及びフォントサイズの情報を基に、判定できるものもある。具体的には、文字位置の情報で画像の上部にあり、フォントサイズの情報で周囲の文字よりも大きい場合には、CPU111は、書類名と推定し、図5(B)501に示すように項目「書類名」は「請求明細書」と判定することもできる。具体的に取得する内容としては、書類名情報、会社名情報、会社の電話番号、住所等の情報、担当者又は作成者等の個人特定情報、請求日又は納品日等の日付情報、請求書ナンバー等の独自のナンバー情報、件名又は案件名情報、その他内訳等の詳細情報がある。その他にも様々な手法は様々あるが、OCR結果から抽出項目及び抽出値の取得できるものであればよい。
抽出項目及び抽出値の取得処理の詳細について説明する。抽出項目及び抽出値の取得処理は、CPU111が、OCR関連処理(S302)で取得したOCR結果を用いて、原稿内に記載されている項目とその値を取得する。ここで、項目とはデータの意味を指す「キー項目」を指す。値とは、それに対応する具体的な内容を示す「バリュー値」を指す。また、抽出項目及び抽出値が対になったデータのことをメタデータと呼ぶ。図5(A)(B)を用いて具体的に説明する。図5(A)は、請求書等の帳票原稿の例である。図5(B)は、請求書等の帳票原稿から情報取得する領域を示した例である。例えば、CPU111は、図5(B)502に示すように項目「請求先会社名」という項目に対し、具体的な情報として会社名である「ABC(株)」を取得する。その他、CPU111は、図5(B)503に示すように項目「請求元会社名」に対し「株式会社あいう」及び、図5(B)505に示すように「請求番号」に対し「1234」をそれぞれ取得する。抽出項目及び抽出値の取得処理の方法は様々あるが、例えば、CPU111は、取得したい項目の項目名を保持しておき、OCR結果で保持している項目名と一致していることを見つけた場合、その文字列が記載されたブロックセレクション処理結果から座標値を取得する。CPU111は、 項目を取得した文字領域ブロックに最も近い右側、下側領域、右下側領域の文字ブロックのOCR結果を取得することで抽出項目及び抽出値の取得処理が可能である。また、項目名が記載されていない場合には、CPU111は、文字列のパターンから推定することもできる。例えば、図5(B)504に示すように日付を示す「2019年4月1日」の場合、CPU111は、推定によって「YYYY年M月D日」の並びパターンになっていることを正規表現等の手法で推定する。その結果、CPU111は、項目「(請求)日付」に対し「2019年4月1日」と判定することもできる。その他、CPU111は、文字位置の情報及びフォントサイズの情報を基に、判定できるものもある。具体的には、文字位置の情報で画像の上部にあり、フォントサイズの情報で周囲の文字よりも大きい場合には、CPU111は、書類名と推定し、図5(B)501に示すように項目「書類名」は「請求明細書」と判定することもできる。具体的に取得する内容としては、書類名情報、会社名情報、会社の電話番号、住所等の情報、担当者又は作成者等の個人特定情報、請求日又は納品日等の日付情報、請求書ナンバー等の独自のナンバー情報、件名又は案件名情報、その他内訳等の詳細情報がある。その他にも様々な手法は様々あるが、OCR結果から抽出項目及び抽出値の取得できるものであればよい。
(付与するメタデータ候補決定(S304)の詳細説明)
付与するメタデータ候補決定の詳細について説明する。付与するメタデータ候補決定は、CPU111が、抽出項目及び抽出値の取得処理(S303)で取得した抽出項目及び抽出値の情報から、付与すべきメタデータの選定を行う。
取得された項目及び値の中から、メタデータとして設定する項目を選定する項目については、事前にユーザがファイルを後で検索するために付与するメタデータを設定できる。その他にも、自動的にシステムが設定することもできる。具体的には、CPU111は、抽出項目及び抽出値の取得処理(S303)で取得した情報から、設定に応じて、例えば、書類名情報と請求元会社名情報、請求先会社名情報、請求番号情報、請求日付情報を選定し、その項目と値を取得する。
付与するメタデータ候補決定の詳細について説明する。付与するメタデータ候補決定は、CPU111が、抽出項目及び抽出値の取得処理(S303)で取得した抽出項目及び抽出値の情報から、付与すべきメタデータの選定を行う。
取得された項目及び値の中から、メタデータとして設定する項目を選定する項目については、事前にユーザがファイルを後で検索するために付与するメタデータを設定できる。その他にも、自動的にシステムが設定することもできる。具体的には、CPU111は、抽出項目及び抽出値の取得処理(S303)で取得した情報から、設定に応じて、例えば、書類名情報と請求元会社名情報、請求先会社名情報、請求番号情報、請求日付情報を選定し、その項目と値を取得する。
(メタデータの正規化処理(S305)の詳細説明)
メタデータの正規化処理の詳細について、図6を用いて説明する。図6は、付与するメタデータ候補決定S304で決定したメタデータの値を正規化する情報処理の一例を示すフローチャートである。
ステップS601において、CPU111は、付与メタデータの値に設定されている文字列を取得する。
ステップS602において、CPU111は、文字列正規化データベースから対応する値データを検索する。文字列正規化データベースは、抽出した候補バリュー値を正規化された値に変換するための辞書のことである。文字列正規化データベースの例を図7に示す。文字列正規化データベースには、情報として通し番号を示す(No.)610、区分611、候補バリュー値612、正規化値613が収録されている。CPU111は、ステップS601において取得したバリュー値を、文字列正規化データベースの候補バリュー値612内から検索を行う。図5(B)の例で具体例を説明する。書類名情報は、項目「書類名」に対し値は501で記載された「請求明細書」が取得されている。「請求明細書」の文言を612から検索すると、No.1の620に記載されていることがわかる。項目「請求元会社名」、「請求先会社名」では会社の種類を示す「株式会社」を示す文言はそれぞれ502が「**(株)」、503「株式会社**」となっている。この記載を612から検索すると、No.100のそれぞれ621、622に記載されていることがわかる。項目「請求日付」では日付の記載が504の「2019年4月1日」となっている。この記載を612から検索すると、No.200の623に記載されていることがわかる。なお、日付については、独自の記載方法もあり、例えば元号で記載された年の情報を西暦に変換する処理を行ったうえで検索を行うこともできる。
メタデータの正規化処理の詳細について、図6を用いて説明する。図6は、付与するメタデータ候補決定S304で決定したメタデータの値を正規化する情報処理の一例を示すフローチャートである。
ステップS601において、CPU111は、付与メタデータの値に設定されている文字列を取得する。
ステップS602において、CPU111は、文字列正規化データベースから対応する値データを検索する。文字列正規化データベースは、抽出した候補バリュー値を正規化された値に変換するための辞書のことである。文字列正規化データベースの例を図7に示す。文字列正規化データベースには、情報として通し番号を示す(No.)610、区分611、候補バリュー値612、正規化値613が収録されている。CPU111は、ステップS601において取得したバリュー値を、文字列正規化データベースの候補バリュー値612内から検索を行う。図5(B)の例で具体例を説明する。書類名情報は、項目「書類名」に対し値は501で記載された「請求明細書」が取得されている。「請求明細書」の文言を612から検索すると、No.1の620に記載されていることがわかる。項目「請求元会社名」、「請求先会社名」では会社の種類を示す「株式会社」を示す文言はそれぞれ502が「**(株)」、503「株式会社**」となっている。この記載を612から検索すると、No.100のそれぞれ621、622に記載されていることがわかる。項目「請求日付」では日付の記載が504の「2019年4月1日」となっている。この記載を612から検索すると、No.200の623に記載されていることがわかる。なお、日付については、独自の記載方法もあり、例えば元号で記載された年の情報を西暦に変換する処理を行ったうえで検索を行うこともできる。
ステップS603において、CPU111は、文字列正規化データベースから正規化値を取得する。ステップS602において検索した値に対応する正規化値613を取得する。この処理にて、それぞれ正規化値を取得する。具体的には、「請求明細書」は「請求書」、「ABC(株)」は「ABC株式会社」、「株式会社あいう」は「株式会社あいう(変更なし)」、「2019年4月1日」に「20190401」にそれぞれ正規化変換される。
ステップS604において、CPU111は、付与メタデータの値を設定する。ステップS603で正規化された結果を最終的に付与するメタデータとして設定を行う。
ステップS601からステップS604までの処理で、図5(B)の結果を処理した結果を図8に示す。それぞれ取得された値が変換されていることがわかる。
以上、ステップS301からステップS308までの処理を行うことで、文書内に記載されている文言を利用してメタデータを付与することができる。その中で、設定されたメタデータの値としては表記ばらつきがある文言から統制された文言に正規化したものが設定され、メタデータとして付与され格納される。
ステップS604において、CPU111は、付与メタデータの値を設定する。ステップS603で正規化された結果を最終的に付与するメタデータとして設定を行う。
ステップS601からステップS604までの処理で、図5(B)の結果を処理した結果を図8に示す。それぞれ取得された値が変換されていることがわかる。
以上、ステップS301からステップS308までの処理を行うことで、文書内に記載されている文言を利用してメタデータを付与することができる。その中で、設定されたメタデータの値としては表記ばらつきがある文言から統制された文言に正規化したものが設定され、メタデータとして付与され格納される。
(検索処理の詳細説明)
ステップS301からステップS308までの処理で生成されたメタデータが付与されたファイルを検索する際の情報処理について説明する。検索処理の詳細について、図9を用いて説明する。図9は、ユーザが入力した検索キーワードを基にメタデータが付与されたファイルの検索を実行する情報処理の一例を示すフローチャートである。
ステップS901において、CPU111は、ユーザがキーボード等を用いて入力した検索キーワードを受け取る。
ステップS902において、CPU111は、取得した検索キーワードの文字列を正規化処理する。処理内容としては、前述のメタデータの正規化処理(S305)と同様の処理であり、CPU111は、検索キーワード文言の表記ばらつきを統制された文言に置き換える処理を行う。
ステップS902において、CPU111は、ステップS902において変換された検索キーワードを用いて検索処理を実行する。メタデータが付与されたファイルが格納されているストレージに対し、それぞれのファイルのメタデータの値の文言と、検索キーワードの文字列一致を判定する。CPU111は、文字列一致があるファイルに対しては検索結果としてファイルが格納されているファイルパスの情報、ファイル自体を提示する。CPU111は、逆に、文字列一致がないファイルに対しては、何も実施しない。
以上、ステップS901からステップS903までの処理を行うことで、検索キーワードの文言を表記ばらつきがある文言から統制された文言に正規化されて検索を行うことができる。
ステップS301からステップS308までの処理で生成されたメタデータが付与されたファイルを検索する際の情報処理について説明する。検索処理の詳細について、図9を用いて説明する。図9は、ユーザが入力した検索キーワードを基にメタデータが付与されたファイルの検索を実行する情報処理の一例を示すフローチャートである。
ステップS901において、CPU111は、ユーザがキーボード等を用いて入力した検索キーワードを受け取る。
ステップS902において、CPU111は、取得した検索キーワードの文字列を正規化処理する。処理内容としては、前述のメタデータの正規化処理(S305)と同様の処理であり、CPU111は、検索キーワード文言の表記ばらつきを統制された文言に置き換える処理を行う。
ステップS902において、CPU111は、ステップS902において変換された検索キーワードを用いて検索処理を実行する。メタデータが付与されたファイルが格納されているストレージに対し、それぞれのファイルのメタデータの値の文言と、検索キーワードの文字列一致を判定する。CPU111は、文字列一致があるファイルに対しては検索結果としてファイルが格納されているファイルパスの情報、ファイル自体を提示する。CPU111は、逆に、文字列一致がないファイルに対しては、何も実施しない。
以上、ステップS901からステップS903までの処理を行うことで、検索キーワードの文言を表記ばらつきがある文言から統制された文言に正規化されて検索を行うことができる。
以上、実施形態1によれば、検索対象である文書ファイルには統制された文言のメタデータが付与されており、検索する際も検索キーワードの文言も統制されるため、検索時には文字列一致が可能になる。これにより、表記ばらつきがあるファイル内容からメタデータを付与した場合においても検索性を低下させることなく、高速に検索することができる。
(変形例1)
実施形態1では、検索対象である文書ファイルに統制された文言のメタデータを付与する例を説明した。しかし、正規化され統制された文言でのみ検索を行う場合、文書内に記載された文言で検索したい場合、不要なファイルまで検索で見つかってしまう課題がある。そこで、変形例1では、統制された文言のメタデータに加え、文書内に記載された文言も合わせてメタデータとして付加する例について説明する。なお、以下では、実施形態1と差異がある箇所について説明する。
実施形態1では、検索対象である文書ファイルに統制された文言のメタデータを付与する例を説明した。しかし、正規化され統制された文言でのみ検索を行う場合、文書内に記載された文言で検索したい場合、不要なファイルまで検索で見つかってしまう課題がある。そこで、変形例1では、統制された文言のメタデータに加え、文書内に記載された文言も合わせてメタデータとして付加する例について説明する。なお、以下では、実施形態1と差異がある箇所について説明する。
図10は、変形例1の画像形成装置100が実行する情報処理の一例を示すフローチャートである。図10と、図3に示した実施形態1のフローチャートとの差異について説明する。
ステップS301からステップS308までについては実施形態1と同様である。変形例1のフローチャートでは、実施形態1のフローチャートに加えて、ステップS309の候補メタデータ付与の処理が追加されている。
ステップS309において、CPU111は、ステップS304で決定したメタデータを付与する。この処理によって、文書内のOCR結果から取得され、文書内に記載された文言のメタデータが付与される。これにより、正規化前のメタデータがファイルに付与される。ステップS301からステップS309までの処理を行うことで、ファイルにはメタデータの各項目にそれぞれ正規化前のメタデータと正規化後のメタデータ2つずつメタデータが付与される。
検索時には、正規化前のメタデータか、正規化後のメタデータのどちらのメタデータを検索するかをユーザに指定させる。その指定に応じたメタデータの中から検索を行う。検索キーワードも同様に正規化前の検索キーワードか、正規化後のキーワードかを選択可能である。正規化されたメタデータで検索する場合、入力検索キーワードを正規化変換した文言で検索を行う。正規化されていない文書からのメタデータで検索する場合、入力検索キーワードを正規化しない文言で検索を行う。
ステップS301からステップS308までについては実施形態1と同様である。変形例1のフローチャートでは、実施形態1のフローチャートに加えて、ステップS309の候補メタデータ付与の処理が追加されている。
ステップS309において、CPU111は、ステップS304で決定したメタデータを付与する。この処理によって、文書内のOCR結果から取得され、文書内に記載された文言のメタデータが付与される。これにより、正規化前のメタデータがファイルに付与される。ステップS301からステップS309までの処理を行うことで、ファイルにはメタデータの各項目にそれぞれ正規化前のメタデータと正規化後のメタデータ2つずつメタデータが付与される。
検索時には、正規化前のメタデータか、正規化後のメタデータのどちらのメタデータを検索するかをユーザに指定させる。その指定に応じたメタデータの中から検索を行う。検索キーワードも同様に正規化前の検索キーワードか、正規化後のキーワードかを選択可能である。正規化されたメタデータで検索する場合、入力検索キーワードを正規化変換した文言で検索を行う。正規化されていない文書からのメタデータで検索する場合、入力検索キーワードを正規化しない文言で検索を行う。
以上、変形例1によれば、正規化され統制された文言でのみ検索を行うこともでき、かつ、文書内に記載された文言で検索も行うことが可能になる。
(変形例2)
実施形態1では、検索対象である文書ファイルに統制された文言のメタデータを付与する例を説明した。その中で、正規化を行う際に候補バリュー値を文字列正規化データベース内から検索をするフローを説明した。しかし、文字列正規化データベースの候補バリュー値内にメタデータとして取得した値の文字列が存在しない場合がある。そこで、変形例2では、文字列正規化データベース内の候補バリュー値の更新について説明する。なお、以下では、実施形態1と差異がある箇所について説明する。
実施形態1では、検索対象である文書ファイルに統制された文言のメタデータを付与する例を説明した。その中で、正規化を行う際に候補バリュー値を文字列正規化データベース内から検索をするフローを説明した。しかし、文字列正規化データベースの候補バリュー値内にメタデータとして取得した値の文字列が存在しない場合がある。そこで、変形例2では、文字列正規化データベース内の候補バリュー値の更新について説明する。なお、以下では、実施形態1と差異がある箇所について説明する。
図11は、変形例2の画像形成装置100が実行する情報処理の一例を示すフローチャートである。図11と、図3に示した実施形態1のフローチャートとの差異について説明する。
ステップS301からステップS308までについては実施形態1と同様である。変形例2のフローチャートでは、実施形態1のフローチャートに加えて、ステップS310のデータベースの更新の処理が追加されている。
ステップS305で、CPU111は、正規化処理を行うための文字列正規化データベースから検索を行う。その際、文字列正規化データベース内に候補メタデータの値がない場合には、ステップS310において、CPU111は、文字列正規化データベース更新を行う。より具体的には、文字列正規化データベース内に記載がないことを検知した場合には、CPU111は、表示操作部123に対して文字列正規化データベース内に値がない旨を表示する。その上で、更新を実施する場合には、CPU111は、更新を行う。CPU111は、更新内容としては、候補メタデータが何かをユーザに提示し、候補メタデータが文字列正規化データベース内のどの項目と同じ意味を指すかを指定されるのを受け、更新を行う。
ステップS301からステップS308までについては実施形態1と同様である。変形例2のフローチャートでは、実施形態1のフローチャートに加えて、ステップS310のデータベースの更新の処理が追加されている。
ステップS305で、CPU111は、正規化処理を行うための文字列正規化データベースから検索を行う。その際、文字列正規化データベース内に候補メタデータの値がない場合には、ステップS310において、CPU111は、文字列正規化データベース更新を行う。より具体的には、文字列正規化データベース内に記載がないことを検知した場合には、CPU111は、表示操作部123に対して文字列正規化データベース内に値がない旨を表示する。その上で、更新を実施する場合には、CPU111は、更新を行う。CPU111は、更新内容としては、候補メタデータが何かをユーザに提示し、候補メタデータが文字列正規化データベース内のどの項目と同じ意味を指すかを指定されるのを受け、更新を行う。
以上、変形例2によれば、未知の文言がどの項目と一致しているかを確認した上で、追加で更新することができる。
(変形例3)
実施形態1では、検索対象である文書ファイルに統制された文言のメタデータを付与する例を説明した。しかし、取得したメタデータの値がOCR誤認識で間違ってしまっている場合がある。そこで、変形例3では、OCR誤認識があった場合でも処理が可能な処理について説明する。なお、以下では、実施形態1と差異がある箇所について説明する。
実施形態1では、検索対象である文書ファイルに統制された文言のメタデータを付与する例を説明した。しかし、取得したメタデータの値がOCR誤認識で間違ってしまっている場合がある。そこで、変形例3では、OCR誤認識があった場合でも処理が可能な処理について説明する。なお、以下では、実施形態1と差異がある箇所について説明する。
図12は、正規化処理を行うための文字列正規化データベースを説明するための図である。630に「言青求所」と記載されているのがわかる。「請求書」に対しOCRを行うとしばしば「言青求書」と間違えてしまう。これは「請」の文字が、偏(へん)と旁(つくり)で分かれて別の文字とOCR認識処理で誤判定してしまい、「言」と「青」と認識してしまうためである。そこで、実質的には「請求書」と「言青求書」は同じ意味を指すため、文字列正規化データベース内に追加を行っている。631も同様に「請求明細書」と「言青求明細書」は同じ意味を指すため、文字列正規化データベース内に追加を行っている。その他にも、632に示すように「株」を「木」と「朱」と別れて誤認識されている。そこで、「**株式会社」と「**木朱式会社」は同じ意味を指すため、文字列正規化データベース内に追加を行っている。その他にも、「0(数字のゼロ)」と「O(英文字のオー)」等OCRが間違いやすい項目は様々あり、それらの組み合わせを文字列正規化データベースに収録を行う。
以上、変形例3によれば、OCR誤認識があった場合でも正しく正規化処理を実施することができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
上述した変形例は任意に組み合わせて実行することができる。
上述した変形例は任意に組み合わせて実行することができる。
以上、上述した各実施形態によれば、文書ファイルにメタデータを付与する際、文書内の文言からメタデータを付与する場合において文書内の文言に表記ゆれがあったとしても、検索性を低下させることなく、高速に検索することができる。即ち、網羅的に検索可能とすることができる。
100 画像形成装置
110 制御部
111 CPU
112 記憶装置
110 制御部
111 CPU
112 記憶装置
Claims (7)
- 画像に対して文字認識処理を行う文字認識手段と、
文字認識結果からメタデータを抽出する抽出手段と、
前記メタデータを正規化する正規化手段と、
を有することを特徴とする画像処理装置。 - 前記画像に基づきファイルを生成する生成手段と、
前記ファイルに前記正規化したメタデータを付与する第1の付与手段と、
前記第1の付与手段により前記正規化したメタデータが付与されたファイルを送信する送信手段と、
を更に有することを特徴とする請求項1に記載の画像処理装置。 - 正規化前のメタデータを前記ファイルに付与する第2の付与手段を更に有し、
前記送信手段は、前記第1の付与手段により前記正規化したメタデータが、前記第2の付与手段により前記正規化前のメタデータが、付与されたファイルを送信する請求項2に記載の画像処理装置。 - 前記正規化手段は、文字列正規化データを用いて前記メタデータを正規化する請求項1乃至3の何れか1項に記載の画像処理装置。
- 前記文字列正規化データを更新する更新手段を更に有する請求項4に記載の画像処理装置。
- 画像処理装置が実行する情報処理方法であって、
画像に対して文字認識処理を行う文字認識工程と、
文字認識結果からメタデータを抽出する抽出工程と、
前記メタデータを正規化する正規化工程と、
を含むことを特徴とする情報処理方法。 - コンピュータを、請求項1乃至5の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019194478A JP2021068289A (ja) | 2019-10-25 | 2019-10-25 | 画像処理装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019194478A JP2021068289A (ja) | 2019-10-25 | 2019-10-25 | 画像処理装置、情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021068289A true JP2021068289A (ja) | 2021-04-30 |
Family
ID=75637313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019194478A Pending JP2021068289A (ja) | 2019-10-25 | 2019-10-25 | 画像処理装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021068289A (ja) |
-
2019
- 2019-10-25 JP JP2019194478A patent/JP2021068289A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5181888B2 (ja) | グラフィカルユーザインターフェースを生成する方法及びシステム | |
US8429154B2 (en) | Document search device, imaging forming apparatus, and document search system | |
JP2009020888A (ja) | インビジブルジャンクションを生成する方法及びシステム | |
JP2008052372A (ja) | 画像処理装置、手書き情報認識方法、手書き情報認識プログラム | |
US11321558B2 (en) | Information processing apparatus and non-transitory computer readable medium | |
JP2008022159A (ja) | 文書処理装置及び文書処理方法 | |
US20200356769A1 (en) | Image processing apparatus, image processing method, and storage medium | |
US20130339002A1 (en) | Image processing device, image processing method and non-transitory computer readable recording medium | |
JP2024012448A (ja) | 画像処理装置、画像処理装置の制御方法及びそのプログラム | |
JP2018042067A (ja) | 画像処理システム、画像処理方法、情報処理装置 | |
JP2021149439A (ja) | 情報処理装置及び情報処理プログラム | |
JP2021068289A (ja) | 画像処理装置、情報処理方法及びプログラム | |
JP2020087112A (ja) | 帳票処理装置および帳票処理方法 | |
JP7317612B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2021114225A (ja) | ファイル検索システム、ファイル検索方法及びプログラム | |
JP2021034778A (ja) | 情報処理装置及び情報処理プログラム | |
JP2020047031A (ja) | 文書検索装置、文書検索システム及びプログラム | |
JP2021114224A (ja) | ファイル検索システム、ファイル検索方法及びプログラム | |
JP2007052614A (ja) | 文書管理装置、文書管理システムおよび文書管理方法 | |
US11659106B2 (en) | Information processing apparatus, non-transitory computer readable medium, and character recognition system | |
US20230118845A1 (en) | Information processing apparatus and non-transitory computer readable medium storing information processing program | |
JP2007018158A (ja) | 文字処理装置、文字処理方法及び記録媒体 | |
US11763582B2 (en) | Information processing apparatus, control method of information processing apparatus, and non-transitory storage medium | |
US20230273952A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2021144673A (ja) | 画像処理装置、画像処理方法、およびプログラム |