JP2022019446A - 画像処理システム、装置、方法、プログラム - Google Patents

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

Info

Publication number
JP2022019446A
JP2022019446A JP2020123284A JP2020123284A JP2022019446A JP 2022019446 A JP2022019446 A JP 2022019446A JP 2020123284 A JP2020123284 A JP 2020123284A JP 2020123284 A JP2020123284 A JP 2020123284A JP 2022019446 A JP2022019446 A JP 2022019446A
Authority
JP
Japan
Prior art keywords
character
character string
image processing
candidate
regular expression
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
Application number
JP2020123284A
Other languages
English (en)
Inventor
嘉仁 七海
Yoshihito Nanaumi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2020123284A priority Critical patent/JP2022019446A/ja
Priority to US17/372,277 priority patent/US20220019835A1/en
Publication of JP2022019446A publication Critical patent/JP2022019446A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/1444Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields
    • G06V30/1456Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields based on user interactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30176Document

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Character Input (AREA)

Abstract

【課題】 ユーザが選択した領域の文字認識結果の文字列が、所望の範囲でなかった場合に簡単に修正できるようにする。【解決手段】 本発明では、文書画像に対して文字認識処理を実行し、当該文字認識処理の認識結果の文字列において、候補分割点を特定しておく。そして、表示した文書画像上でユーザにより所望の位置が指定されると、当該指定された位置に対応する文字列を出力対象とするとともに、前記候補分割点を表示する。そして、この候補分割点がユーザにより操作された場合は、前記出力対象の文字列を前記候補分割点に基づき分割された文字列に変更する。【選択図】 図12

Description

本発明は、画像処理システム、装置、方法及びプログラムに関する。
紙の文書をスキャンし、電子化して保管する業務がある。従来、電子化する際に、文字認識を実施してファイル名に利用するシステムがあった。例えば、文書画像上から文字認識結果をユーザが選択して、その文字認識結果をファイル名として任意のストレージに保存するシステムがあった。しかしながら、文字認識結果を使用しているため、文字認識結果の揺れ、例えばファイル名として設定したい文字列に余分な空白文字が存在したときに、ファイル名にも空白文字が含まれてしまい、好ましくない。そこで、特許文献1では、文字認識結果をファイル名に利用するのに、先頭の空白文字を除去するなどファイル名として好適な文字列に変換する方法が開示されている。
特開2013-74609号公報
特許文献1の方法では、選択された文字認識に空白文字が入っていた場合に、ファイル名として好適な文字列に変換はできる。しかし、ユーザによっては、ファイル名として選択した、文字認識の結果の文字列の範囲が好ましくないことがある。また、同様の文書画像に対してファイル名を付与する際、ファイル名にしたい文字列の範囲がユーザごとに異なる場合もあるので、1つの基準でファイル名に用いる文字列を決めるのは難しい。例えば、文書画像内に記載されている日付をファイル名に用いる際、例えば、その日付に付随する項目名(例えば“支払期日”)の文字列も一緒にファイル名に使用したいというユーザもいるし、日付のみをファイル名に使用したいというユーザもいる。
本発明の画像処理システムは、文書画像に対して文字認識処理を実行する文字認識手段と、前記文字認識処理の認識結果の文字列において、候補分割点を特定する候補分割手段と、前記文書画像を表示し、当該表示した文書画像上でユーザにより指定された位置に対応する文字列を出力対象とするとともに、前記候補分割点を表示する表示手段と、前記表示した前記候補分割点が前記ユーザにより操作された場合、前記出力対象の文字列を前記候補分割点に基づく文字列に変更する変更手段と、を備えることを特徴とする。
本発明によれば、ユーザが選択した領域の文字認識結果の文字列が、所望の範囲でなかった場合に簡単に修正できる操作性を提供することが可能となる。
画像処理システムのシステム構成を示す図である。 画像形成装置101のハードウェア構成を説明する図である。 画像処理サーバ102、ユーザ端末103のハードウェア構成を説明する図である。 帳票画像400とその文字認識結果の例を示す図である。 第1の実施形態の処理フローを示す図である。 テキスト分割の処理フローを示す図である。 候補分割の処理フローを示す図である。 テキスト補正の処理フローを示す図である。 正規表現定義のリストを示す図である。 文字認識結果の例を示す表である。 テキスト分割結果の位置を示す例である。 候補分割結果の位置を示す例である。 テキスト補正結果の例である。
以下、本発明の実施形態について図面に基づいて説明する。なお、実施形態は本発明を限定するものではなく、また、実施形態で説明されている全ての構成が本発明の課題を解決するため必須の手段であるとは限らない。
<第1の実施形態>
図1は、第1の実施形態に係る画像処理システム100の構成例を示す図である。この画像処理システム100は、画像形成装置101と、画像処理サーバ102と、ユーザ端末103とを有する。画像形成装置101と、画像処理サーバ102と、ユーザ端末103は、ネットワーク104により相互に接続され、通信可能である。
画像形成装置101は、ユーザ端末103から画像データの印刷依頼(印刷データ)を受信して印刷することや、画像形成装置101に備わるスキャナで画像データを読み取ることや、スキャナで読み取られた画像データを印刷することなどが可能な複合機である。また、画像処理サーバ102は、画像形成装置101のスキャナで読み取られた画像データに対して後述の画像処理を実行し、その画像処理結果を、ユーザ端末103に送信することが可能な画像処理装置である。なお、画像処理サーバ102は、クラウド、すなわちインターネット上に配置される仮想サーバであってもよい。ユーザ端末103は、画像処理サーバ102から受信した画像処理結果を、ユーザインターフェイスを備えたアプリケーションでユーザと対話的に追加処理をすることが可能である。なお、本実施形態では、ユーザ端末103は、ディスプレイとキーボードやマウスを備えた一般的なPCを想定するが、例えばタッチパネルを備えたモバイル端末であってもよい。
本実施形態では、画像形成装置101が請求書などの紙の帳票をスキャンし、画像処理サーバ102がそこから必要となる情報を抽出して電子的に格納し、ユーザ端末103が抽出結果の確認と修正が可能なユーザインターフェイスを提供する、一連のデータ入力支援処理の説明を行う。
図2は、画像形成装置101の構成の一例を示す図である。画像形成装置101は、コントローラ201、プリンタ202、スキャナ203、及び操作部204を有する。コントローラ201は、CPU211、RAM212、HDD213、ネットワークI/F214、プリンタI/F215、スキャナI/F216、操作部I/F217、及び拡張I/F218を有する。
CPU211は、画像形成装置101の全体を制御する。CPU211は、RAM212、HDD213、ネットワークI/F214、プリンタI/F215、スキャナI/F216、操作部I/F217、及び拡張I/F218とのデータの授受を制御可能である。また、CPU211は、HDD213から読み出した制御プログラム(命令)をRAM212に展開し、RAM212に展開した命令を実行する。HDD213は、CPU211で実行可能な制御プログラム、画像形成装置101で使用する設定値、及びユーザから依頼された処理に関するデータ等を記憶する。RAM212は、CPU211がHDD213から読み出した命令を一時的に格納するための領域を有する。また、RAM212は、命令の実行に必要な各種のデータを記憶しておくことも可能である。例えば画像処理では、CPU211は入力されたデータをRAM212に展開することで処理を行うことが可能である。
ネットワークI/F214は、画像処理システム100内の装置とネットワーク通信を行うためのインターフェイスである。ネットワークI/F214は、データ受信を行ったことをCPU211に伝達することや、RAM212上のデータをネットワーク104に送信することが可能である。プリンタI/F215は、CPU211から送信された印刷データをプリンタ202に送信することや、プリンタ202から受信したプリンタの状態をCPU211に伝達することが可能である。スキャナI/F216は、CPU211から送信された画像読み取り指示をスキャナ203に送信し、スキャナ203から受信した画像データをCPU211に伝達することや、スキャナ203から受信した状態をCPU211に伝達することが可能である。操作部I/F217は、操作部204から入力されたユーザからの指示をCPU211に伝達することや、ユーザが操作するための画面情報を操作部204に伝達することが可能である。拡張I/F218は、画像形成装置101に外部機器を接続することを可能とするインターフェイスである。拡張I/F218は、例えば、USB(Universal Serial Bus)形式のインターフェイスを具備する。画像形成装置101は、USBメモリ等の外部記憶装置が拡張I/F218に接続されることにより、当該外部記憶装置に記憶されているデータの読み取り及び当該外部記憶装置に対するデータの書き込みを行うことが可能である。
プリンタ202は、プリンタI/F215から受信した画像データを用紙に印刷することや、プリンタ202の状態をプリンタI/F215に伝達することが可能である。
スキャナ203は、スキャナI/F216から受信した画像読み取り指示に従って、読み取り部に置かれた用紙に表示されている情報を読み取ってデジタル化してスキャナI/F216に伝達することが可能である。また、スキャナ203は、自身の状態をスキャナI/F216に伝達することが可能である。
操作部204は、画像形成装置101に対して各種の指示を行うための操作をユーザに行わせるためのインターフェイスである。例えば、操作部204は、タッチパネルを有する液晶画面を具備し、画像形成装置101のユーザに操作画面を提供するとともに、ユーザからの操作を受け付ける。なお、操作部204の詳細は図5で後述する。
図3(a)は、画像処理サーバ102の構成の一例を示す図である。画像処理サーバ102は、CPU301、RAM302、HDD303、及びネットワークI/F304を有する。CPU301は、画像処理サーバ102の全体を制御する。CPU301は、RAM302、HDD303、及びネットワークI/F304とのデータの授受を制御可能である。また、CPU301は、HDD303から読み出した制御プログラム(命令)をRAM302に展開し、RAM302に展開した命令を実行する。
図3(b)は、ユーザ端末103の構成の一例を示す図である。ユーザ端末103は、CPU311、RAM312、HDD313、ネットワークI/F314、入出力I/F315を有する。CPU311は、ユーザ端末103の全体を制御する。CPU311は、RAM312、HDD313、ネットワークI/F314、及び入出力I/F315とのデータの授受を制御可能である。ディスプレイ320は、液晶などの表示デバイスによって構成され、入出力I/F315から受信した表示情報を表示する。入力装置330は、マウス、あるいはタッチパネルといったポインティングデバイス、およびキーボードによって構成され、ユーザからの操作を受け付けて、入出力I/F315に操作情報を送信する。HDD313には、画像処理サーバ102からネットワークI/F314を介して受信した画像処理結果を格納することが可能である。本実施形態では、CPU311は、HDD313から読み出したアプリケーションプログラムをRAM312に展開し、操作部I/F315にて表示情報の表示とユーザ操作の受け付けを行う。
図4(a)は、本実施形態において想定する帳票画像400の一例を示す図である。帳票画像400は、画像形成装置101のスキャナで紙文書(例えば請求書)を読み取ることにより取得した画像である。項目値401乃至403は、画像処理システム100で抽出対象にしたい項目文字列の例である。図4(a)の項目値401は、この文書の内容を示すタイトルの値であり、項目値402は、発行日を示す日付の値であり、項目値403は請求金額の値である。なお、図4(a)の例では、各項目値401~403の位置を示すために矩形枠で囲んで説明しているが、スキャンして得た帳票画像に矩形枠は記載されていないものとする。
図4(b)は、帳票画像400に対して、汎用の領域解析処理と光学文字認識(OCR)処理とを実行した場合に得られる文字認識結果の文字列(OCR文字列)の例である。文字列410乃至417の8個の文字領域が特定され、各文字領域からOCR文字列が抽出されている。図4(b)では、領域解析処理およびOCR処理の結果に基づき抽出された各文字領域に対応する位置を矩形枠で示している。文字列410は、項目値401の文字列とその左側にある文字列とを包含する1つの文字領域に対応する文字列として得られている。また、文字列411は、項目値402とその左側の文字列とを包含する1つの文字領域に対応する文字列として抽出されている。また、文字列413も、項目値403とその左側の文字列とを包含する領域に対応する文字列として抽出されている。
この文字列をユーザによるファイル名作成のUIに用いるユースケースを説明する。例えば、ユーザが文書画像上の所望の位置をクリックした場合に、当該クリックした位置に対応する、図4(b)の領域解析結果に基づく文字領域が選択されるようなUI(ユーザインタフェース)について説明する。
このようなUIでは、あるユーザが“ABC”の文字列上をクリックして指定すると、領域解析結果に基づく文字領域の文字列(すなわち、文字領域410の“ABC(株)様請求書”という文字列)が選択されることになる。したがって、そのユーザが“ABC(株)”の部分のみをファイル名として選択したかった場合は、当該選択された文字列の中から、余分な“様請求書”の文字列を削除するように操作する必要がある。また一方、ファイル名に“ABC(株)様”と付けたい別のユーザが操作している場合は、クリックにより指定された“ABC(株)様請求書”という文字列から、余分な“請求書”の文字列を削除するように操作する必要がある。
以下では、ユーザが指定した位置に対応する文字領域の文字認識結果の文字列に基づいてファイル名を付与するシステムにおいて、当該文字認識結果の文字列がユーザの所望する文字列でない場合に修正を簡単に行える修正操作UIについて説明する。
本実施形態の処理フローについて説明する前に、まず、図9の正規表現定義リストについて説明する。
図9の正規表現定義リスト900は、後述するステップS503のテキスト分割処理で使用される複数の正規表現定義をテーブル形式で示した例である。正規表現定義リスト900では、各定義IDに対して、正規表現式と、正規表現パラメータとの組み合わせを関連付けることにより定義している。このリストで予め定義された複数の正規表現定義は、画像処理サーバ102のHDD303に格納されている。正規表現式は、抽出したい項目、例えば日付や、電話番号、金額、文書タイトルに含まれる文字など、抽出対象にしたい文字列を一つの正規表現式で記述したものである。正規表現パラメータとは、正規表現式ごとに定義した、正規表現検索を実施する際に対象となるOCR文字列をどのように解釈するかのパラメータである。例えば、隣接する文字と文字の間の距離がどの程度離れていればスペース文字(空白文字)として扱うか、などをパラメータで記述したものである。
図9の正規表現定義リスト900の例では、3個の正規表現定義910、920、930が定義されている。
正規表現定義ID910は、“¥S*書”の正規表現式と、“スぺース=2h”の正規表現パラメータからなる。“¥S*書”の正規表現式は、スペース文字以外(¥S)の複数の文字と“書”という文字とを組み合わせたパターンを表しており、例えば“請求書”、“見積書”などの文字列が該当するパターンとして検索可能である。正規表現パラメータの“スペース=2h”は、OCR文字列を検索文字列に変換する際に、隣接する文字同士の距離が、文字高さ(h)に対して2倍以上空いてれば、スペース文字を挿入して扱うことを示している。なお、本実施形態では、正規表現パラメータとして、スペース文字と扱うための閾値に文字高さを用いて規定しているが、例えば画像のピクセルサイズや、紙面上の物理的な距離、平均文字幅などを基準として用いてもよい。
正規表現定義920は、日付に関する正規表現定義であり、“¥d{2,4}年¥d{1,2}月¥d{1,2}日”の正規表現式と、“スペース削除”の正規表現パラメータからなる。“¥d{2,4}年¥d{1,2}月¥d{1,2}日”の正規表現式は、2~4桁の数字と、“年”と、1~2桁の数字と、“月”と、1~2桁の数字と、“日”と、を組み合わせたパターンを表しており、このパターンに一致する日付の文字列が検索可能である。正規表現パラメータの“スペース削除”とは、OCR文字列を検索文字列に変換する際に、隣り合った文字の間の距離によらず、スペース文字を挿入しないことを示している。
正規表現定義930は、“[1-9][¥d,]*円”の正規表現式と、“スぺース=1h”の正規表現パラメータからなる。“[1-9][¥d,]*円”の正規表現式は、1~9のいずれかの数字で始まり、1桁以上のカンマを含む数字と、“円”と、を組み合わせたパターンを表しており、このパターンに一致する金額を表す文字列が検索可能である。正規表現パラメータの“スペース=1h”とは、OCR文字列を検索文字列に変換する際に、隣接する文字同士の距離が、文字高さ(h)を基準として、文字高さ1個分以上空いていればスペース文字を挿入して扱うことを示している。
正規表現定義940は、“¥s”の正規表現式と、“スぺース=3.5h”の正規表現パラメータからなる。正規表現定義940は、スペース文字(¥s)というパターンを表し、スペース文字の文字列が検索可能である。正規表現パラメータの“スペース=3.5h”は、テキスト情報を検索文字列に変換する際に、隣接する文字同士の距離が、文字高さを基準として、3.5個分以上空いてれば、スペース文字を挿入して扱うことを示している。つまり、この正規表現定義940は、文字間の間隔が、文字高さの3.5倍以上空いてれば、その文字間にスペース文字を挿入し、かつ、そのスペース文字が正規表現式にマッチするパターン記述である。
図9の正規表現定義リスト901は、後述するステップS504の候補分割処理で使用される1または複数の正規表現定義をテーブル形式で示した例である。正規表現定義リスト901は、正規表現定義リスト900と同様の形式であり、各定義IDに対して、正規表現式と、正規表現パラメータとの組み合わせを関連付けることにより定義している。図9の正規表現定義リスト901の例では、1つの正規表現定義950について定義している。
正規表現定義ID950は、“¥s”の正規表現式と、“スぺース=0.5h”の正規表現パラメータからなる。正規表現定義950は、スペース文字(¥s)というパターンを表し、スペース文字の文字列が検索可能である。正規表現パラメータの“スペース=0.5h”は、テキスト分割結果の文字列情報を検索文字列に変換する際に、隣接する文字同士の距離が、文字高さ(h)に対して0.5倍以上空いてれば、スペース文字を挿入して扱うことを示している。つまり、この正規表現定義950は、文字高さに対して0.5倍以上空いてれば、スペース文字を挿入するとともに、スペース文字が正規表現式にマッチするパターン記述である。
図9の正規表現定義リスト902は、後述するステップS505のテキスト補正処理で使用される複数の正規表現定義をテーブル形式で示した例である。正規表現定義リスト902は、各定義IDに対して、正規表現式と、正規表現パラメータと、当該正規表現式にマッチしたテキスト情報に実行すべき処理と、を関連づけることにより定義している。この定義リストは、画像処理サーバ102のHDD303に格納されている。
正規表現定義の定義ID960に対しては、正規表現定義920と同様の正規表現式と、正規表現パラメータとが関連づけられ、さらに、当該正規表現式にマッチした場合に実行する処理は、当該マッチしたテキスト情報に対してスペース文字を除去する処理である。
正規表現定義の定義ID970に対しては、正規表現定義930と同様の正規表現式と、正規表現パラメータとが関連づけられ、さらに、当該正規表現式にマッチした場合に実行する処理は、当該マッチしたテキスト情報に対して“,”を削除する処理である。
正規表現定義の定義ID980に対しては、正規表現定義930と同様の正規表現式と、正規表現パラメータとが関連づけられ、さらに、当該正規表現式にマッチした場合に実行する処理は、当該マッチしたテキスト情報に対して“円”を削除する処理である。
図4の帳票画像400および図9の正規表現定義リスト900、901,902を例として用いて、本実施形態の画像処理を、図5~8のフローチャートを用いて説明する。
図5のS501において、画像形成装置101のCPU211は、スキャナ203で読み取った帳票画像400を、画像処理サーバ102へ送信する。画像処理サーバ102は、その画像形成装置101から送信された帳票画像400を取得する。
次にS502において、画像処理サーバ102のCPU301は、帳票画像400に治して領域解析処理を行うことにより文字領域を特定し、文字領域に対して文字認識処理を実行する。文字認識処理の結果、CPU301は、文字領域(文字ブロック)の座標と、文字領域中の各文字の座標と、当該文字認識結果の文字コードとを得る。ここで得た文字領域単位の文字コードの配列をOCR文字列(文字認識結果の文字列)と呼ぶ。帳票画像400に文字認識処理を実施した結果、文字列410乃至417がOCR文字列として取得されたものとする。
次にS503において、画像処理サーバ102のCPU301は、テキスト分割処理を行う。このテキスト分割処理の詳細については、図6のフローチャートを用いて説明する。
図6のS601において、画像処理サーバ102のCPU301は、HDD303に格納された図9の正規表現定義リスト900から、正規表現定義の1つ(例えば正規表現定義910)を処理対象とする。
次にS602において、画像処理サーバ102のCPU301は、S601で処理対象とした正規表現定義の正規表現パラメータに基づいて、S502で得た文字認識結果の文字列を解釈し、検索用文字列として正規化する。
図10は文字認識結果の例である。文字認識結果1001は、文字列410の文字認識結果である。文字認識結果1002は、文字列411の文字認識結果である。また文字認識結果1003は、文字列413の文字認識結果である。文字認識結果1001~1003の各表における文字の行は各認識文字を表し、距離の行は、次の文字までの距離として、文字高さを相対基準とした距離を表している。正規表現定義910の正規表現パラメータは“スペース=2h”であり、これは文字同士の距離が文字高さを相対基準として文字高さ2個分以上であればスペース文字とみなすことを示している。認識結果1001では、“様”の文字が、隣の“請”の文字まで2.1文字高さに相当する距離ぶん離れているため、ここにスペース文字を挿入して検索用文字列“ABC(株)様 請求書”を生成する。
なお、正規表現パラメータごとに、検索用の文字列は変わるので、例えば“スペース=1h”と定義していた場合は、さらに“請”と“求”、“求”と“書”の間にスペース文字を挿入し、“ABC(株) 様 請 求 書”となるし、“スペース削除”と定義していた場合は“ABC(株)様請求書”となる。
同様に、残りの文字認識結果411乃至417に対してもS602の処理を実行して、すべての文字列に対する検索用文字列を生成する。
次に、S603において、画像処理サーバ102のCPU301は、S602で得た検索用文字列に対して、S601で処理対象とした正規表現定義の正規表現式にマッチするかどうか判定するための正規表現検索を実施する。
文字列410の検索用文字列“ABC(株)様 請求書”に対して正規表現定義910の正規表現式の検索を行った場合、“請求書”の部分が一致する。続いて、文字列411の検索用文字列“発行日:2020年 5月 15日”に対して正規表現定義910の正規表現式の検索を行った結果、一致する箇所は得られない。同様に、残りの文字列412乃至417に対しても正規表現定義910の正規表現式を用いて同様の処理を実施し、その結果、他の文字列には正規表現式は一致しない。
次にS604において、画像処理サーバ102のCPU301は、S603の検索結果で得られた“請求書”の一致情報をRAM302へと格納する。
次に、S605において、画像処理サーバ102のCPU301は、未処理の正規表現定義が残っているか判別し、未処理の正規表現定義が残っている場合は、S601へ戻って、未処理の正規表現定義の1つを次の処理対象として、同様の処理を繰り返す。
例えば、正規表現定義910を最初の処理対象としていた場合は、正規表現定義920を次の処理対象とする。この場合、S601において、文字認識結果1002に対して、正規表現定義920のパラメータに基づいて、検索用文字列を生成する。正規表現定義920のパラメータは“スペース削除”であるため、文字間の距離にかかわらず、スペース文字を挿入しないので、文字認識結果1002からは、検索用文字列として“発行日:2020年5月15日”が得られる。そして、正規表現定義920の正規表現式に一致する箇所として、“2020年5月15日”の検索結果が得られる。
同様に、正規表現定義930を処理対象とした場合は、S602において、文字認識結果1003に対して、正規表現定義930のパラメータ“スペース=1h”に基づいて、“合計金額: 11,286円”の検索文字列を形成する。そして、正規表現定義630の正規表現式に一致する箇所として、S603において、“11,286円”が検索される。
S606において、画像処理サーバ102のCPU301は、S604の処理でRAMに格納された検索結果をもとに文字列の分割処理を実施する。分割処理とは、OCR文字列中において、正規表現式で一致した箇所の両端で、OCR文字列を分割する処理のことである。例えば、OCR文字列410の“ABC(株)様請求書”において、“請求書”の左右を文字列の区切りとして分割する。ただし、“請求書”の右側は、OCR文字列の右端であるため分割は発生せず、“請求書”の左側の位置(すなわち、“様”と“請”の間)で分割することにより、OCR文字列410を二つの文字列に分割する。同様に、“2020年5月15日”、“11,286円”についても処理を行い、図6のフローチャートの処理を終了する。テキスト分割処理により分割された後の文字列をテキスト分割結果と呼ぶこととする。このテキスト分割結果は、分割後の文字列を示すテキスト情報と、各文字の外接矩形の文字位置情報とを含む。
図11は、帳票画像400に対して、図6で詳細を説明したテキスト分割処理を適用した後のテキスト分割結果を示した図である。文字認識結果の文字列410がテキスト分割結果1100と1101に分割され、文字認識結果の文字列411がテキスト分割結果1102と1103に分割され、文字認識結果の文字列413がテキスト分割結果1104と1105に分割されている。なお、文字認識結果412、414乃至417は元のままとなっている。
次にS504において、画像処理サーバ102のCPU301は、候補分割処理を行う。この候補分割処理の詳細については、図7のフローチャートを用いて説明する。
図7のS701において、画像処理サーバ102のCPU301は、HDD303に格納された正規表現定義リスト901から、正規表現定義の1つ(正規表現定義950)を処理対象とする。そして、S702~S705の処理を実行することによって、S503のテキスト分割処理で分割したテキスト分割結果の中に、当該処理対象とした正規表現定義に一致するパターンがあるか判定する。S702~S705の処理は、S602~S605の処理と同様であるので、詳細説明は省略する。なお、図9の正規表現定義リスト901の例では、正規表現定義950が1つだけ定義されているので、S702で挿入したスペース文字の箇所がS703で検索され、当該検索されたスペース文字の箇所がマッチする位置としてS704で格納されることになる。当該格納されたスペース文字の位置情報は、後述するS506で表示される図12のUIにおいて、候補分割点の位置として利用される。
なお、図9の正規表現定義リスト901では、スペース文字の位置を特定するための正規表現定義950だけを定義していたが、これだけに限るものではない。例えば、“:”(コロン)や“;”(セミコロン)の位置も検索できるように、正規表現式を定義してもよい。なお、“:”(コロン)や“;”(セミコロン)の位置を検索する場合は、スペース文字を挿入する必要が無いので、正規表現パラメータはスペース削除とすればよい。
次にS505において、画像処理サーバ102のCPU301は、テキスト補正処理を行う。このテキスト補正処理の詳細については、図8のフローチャートを用いて説明する。
図8のS801において、画像処理サーバ102のCPU301は、HDD303に格納された正規表現定義リスト902から、正規表現定義の1つを処理対象とする。例えば、正規表現定義960、正規表現定義970、正規表現定義980の順で1つずつ処理対象としてS802~S807の処理を繰り返し行う。S802~S803の処理は、S602~S603の処理と同様であるので詳細説明を省略するが、S503のテキスト分割処理で分割したテキスト分割結果の中に、当該処理対象とした正規表現定義に一致するパターンがあるか判定する。
図13の1301は、テキスト分割結果の文字列の中から正規表現定義960に一致すると判定された文字列である。テキスト分割結果1301の表における文字の行は各認識文字、距離の行は次の文字までの文字高さ相対距離を表している。また、テキスト分割結果1302は、テキスト分割結果の文字列の中から、正規表現定義970および正規表現定義980でマッチすると判定される文字列である。
S804において、画像処理サーバ102のCPU301は、あらかじめ定義した文字間の距離を用いて、文字認識結果のテキスト情報およびテキスト分割結果のテキスト情報に対して、スペース文字を挿入する。本実施例では、“スペース=0.5h”でスペース文字を挿入する。例えば、テキスト分割結果1301に対してS804のスペース挿入処理を行うと、スペース挿入結果1303となる。また、テキスト分割結果1302に対してS804のスペース挿入処理を行った場合は、結果的にスペース文字は挿入されずに、スペース挿入結果1304となる。
S805において、画像処理サーバ102のCPU301は、S803で正規表現定義にマッチすると判定された文字列を対象として、S806の処理に進む。テキスト分割結果1301、テキスト分割結果1302はマッチした文字列であるので、S806の処理対象となる。なお、S803で正規表現定義にマッチすると判定されなかった文字列に関しては、S806の処理対象とならずに、S807に進む。
S806において、画像処理サーバ102のCPU301は、当該処理対象の正規表現定義に対応づけられている処理を実行する。正規表現定義960にマッチしたテキスト分割結果1301に対しては、S804でスペース文字が挿入されて文字列1303となったが、S806で、正規表現定義960に対応付けられている処理がスペース文字を除去する処理であるので、結果的にテキスト補正結果1305となる。また、正規表現定義970にマッチしたテキスト分割結果1302については、S804の処理後の文字列1304に対して、正規表現定義970に対応付けられた処理(“,”を除去する処理)が実行されて、テキスト補正結果1306となる。さらに、テキスト分割結果1302は正規表現定義980にもマッチするので、テキスト補正結果1306に対して、正規表現定義980に対付けられた処理(“円”を除去する処理)がさらに実行されて、テキスト補正結果1307となる。
S506において、画像処理サーバ102のCPU301は、ユーザ端末103に対して、ファイル名を付与するためのUI画面の表示を行わせるための情報を送信する。当該送信される情報には、表示のための文書画像と、各文字領域の文字認識結果の文字列と、各文字領域位置情報)と、候補分割点の位置情報などが含まれる。ユーザ端末103のCPU311は、当該受信した情報に基づいて、ディスプレイ320に文書画像を表示して、ユーザが当該文書画像上の所望の位置を指定すると、当該指定した位置に対応する文字列に基づきファイル名を付与するためのUI表示を行う。UI画面の表示は、ユーザ端末103が備えるWebブラウザを介して表示されるWebアプリケーションであってもよいし、専用のアプリケーションを用いて表示されるものであってもよい。
図12は、S503のテキスト分割処理結果の文字列の位置と、S504の候補分割処理結果の候補分割点の位置とが、文書画像上のどの位置に対応するかを模式的に示したものである。S503のテキスト分割処理結果の文字列の位置は、図11と同様に、テキスト分割結果1100~1105で示されている。また、S504の候補分割処理の結果の位置は、候補分割点1200~1203で示されている。候補分割点1200は、テキスト分割結果1100において、S703の処理でマッチしたスペース文字の位置を候補分割点として示したものである。また、候補分割点1201および分割点1202は、テキスト分割結果1103において、S703の処理でマッチした位置を示したものである。また、候補分割点1203は、文字認識結果の文字列417において、S703の処理でマッチしたスペース文字の位置を候補分割点として示したものである。
S506で表示されるファイル名付与UI画面では、ユーザが文書画像上の所望の位置を指定すると、当該指定した位置に対応する文字列の領域(図12の412~417、1100~1105のいずれか)がフォーカスされ、その文字列の認識結果が、ファイル名入力欄に入力される。候補分割点1200~1203は通常、非表示であるが、当該フォーカスされた領域に対して候補分割点を設定している場合は、当該フォーカスされた時点で、候補分割点の位置を表示してユーザが候補分割点を選べるようにする。例えば、ユーザにより指定された位置が、テキスト分割結果1100に対応する位置であった場合は、当該テキスト分割結果1100の領域をフォーカス表示するとともに、候補分割点1200を指定可能に表示する。なお、候補分割点の位置は、図12のように三角形のマークで表示してもよいし、縦線のバーなど、その他のマークで表示するようにしても構わない。
そして、S507において、ユーザ端末103のCPU311は、ユーザによる候補分割点に対する操作をトリガーにして、ファイル名入力欄に入力済みの文字列を修正することで、ファイル名として利用される文字列を変更する。例えば、ユーザの文書画像上でのクリック操作によりフォーカス表示された領域の文字列“ABC(株)様”がユーザ所望の文字列ではなかった場合、ユーザは、さらに、候補分割点1200を押下する操作を行うことにより、テキスト分割結果を修正し、出力結果として“ABC(株)”を得ることができる。またテキスト分割結果1103の“2020年5月15日”がユーザの所望する出力結果ではなかった場合、分割点1202を押下することにより、テキスト分割結果を修正し、出力テキストとして“2020年5月”を得ることができる。
なお、本実施形態では、候補分割点をユーザがクリック操作(またはタッチ操作)した場合、候補分割点の左側の文字列が出力されるものとするが、これに限るものではない。例えば、ユーザが候補分割点を押して右にドラッグする操作を行うと、候補分割点の右側の文字列を出力対象とし、ユーザが候補分割点を押して左にドラッグする操作を行うと、候補分割点の左側の文字列を出力対象とするようにしてもよい。このように、候補分割点に対して所定の操作が行われると、当該候補分割点で分割されたいずれかの文字列が出力対象となるようにすればよい。
S508において、ユーザ端末103のCPU311は、ユーザによるファイル名確定操作が行われると、それまでのS506~S507でファイル名入力欄に入力された文字列に基づき、当該文書画像に付与すべきファイル名を確定する。そして、ユーザ端末103のCPU311は、当該確定したファイル名の情報を、画像処理サーバ102に送信して、当該確定したファイル名の情報を文書画像に関連付けさせる。
なお、本実施形態では、S506~S508において、ユーザ端末103において表示されるUI画面でファイル名を確定した後に、当該確定したファイル名の情報を画像処理サーバ102に表示するようにしたが、これに限るものではない。例えば、ユーザ端末103において、ユーザが文字列を指定したり候補分割点を操作したりするたびに、当該入力または変更された文字列の情報を画像処理サーバ102に通知するように構成してもよい。
以上のように本画像処理を適用することで、文字認識結果やテキスト分割結果をユーザが選択することでファイル名として付与することができるようになる。さらに、その領域がユーザの所望の結果ではないときに候補分割点に対する所定の操作を行うことにより文字認識結果やテキスト分割結果を修正することができ、それに伴い出力テキストを修正することが出来る。
なお、本実施形態では、文字認識処理の言語設定として日本語で説明したが、これに限るものではなく、文字認識言語が英語である場合は、英語に対応した正規表現定義を読み込み実行する構成であってもよい。さらにユーザによる言語指定を行わず、文字認識時に各行ごとに言語推定を行い、言語推定結果毎にテキスト分割時に読み込む正規表現定義を変更して実行する構成であってもよい。さらに文字認識前に帳票を分類し、その分類結果毎にテキスト分割時に読み込む正規表現定義を変更して実行する構成であってもよい。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワークまたは記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
100 画像処理システム
101 画像形成装置
102 画像処理サーバ(画像処理装置)
103 ユーザ端末
104 ネットワーク

Claims (14)

  1. 文書画像に対して文字認識処理を実行する文字認識手段と、
    前記文字認識処理の認識結果の文字列において、候補分割点を特定する候補分割手段と、
    前記文書画像を表示し、当該表示した文書画像上でユーザにより指定された位置に対応する文字列を出力対象とするとともに、前記候補分割点を表示する表示手段と、
    前記表示した前記候補分割点が前記ユーザにより操作された場合、前記出力対象の文字列を前記候補分割点に基づく文字列に変更する変更手段と、
    を備えることを特徴とする画像処理システム。
  2. 正規表現式とスペース文字に関するパラメータとを関連づけた正規表現定義を用いて、前記文字認識処理の認識結果の文字列を分割するテキスト分割手段を更に備え、
    前記候補分割手段は、前記文字認識処理の認識結果の文字列および前記テキスト分割手段で分割された後の文字列において、前記候補分割点を特定する、
    ことを特徴とする請求項1に記載の画像処理システム。
  3. 前記表示手段は、前記表示した文書画像上で前記ユーザにより指定された位置に対応する文字列を出力対象とするとともに、当該文書画像上で当該文字列に対応する領域をフォーカス表示し、かつ、前記候補分割点を表示する、ことを特徴とする請求項1または2に記載の画像処理システム。
  4. 前記候補分割手段は、文字列における所定の文字の位置に基づいて、前記候補分割点を特定する、ことを特徴とする請求項1乃至3のいずれか1項に記載の画像処理システム。
  5. 前記候補分割手段は、前記所定の文字を検索するための正規表現式とスペース文字に関するパラメータとを関連づけた正規表現定義を用いて、前記文字列における所定の文字の位置を検索し、当該検索した位置に基づいて、前記候補分割点を特定する、ことを特徴とする請求項4に記載の画像処理システム。
  6. 前記所定の文字はスペース文字であり、前記候補分割手段は、文字列におけるスペース文字の位置に基づいて、前記候補分割点を特定する、ことを特徴とする請求項4または5に記載の画像処理システム。
  7. 前記候補分割手段は、文字列におけるコロンの位置に基づいて、前記候補分割点を特定する、ことを特徴とする請求項4または5に記載の画像処理システム。
  8. 前記所定の文字はセミコロンであり、前記候補分割手段は、文字列におけるセミコロンの位置に基づいて、前記候補分割点を特定する、ことを特徴とする請求項4または5に記載の画像処理システム。
  9. 前記変更手段は、前記表示した前記候補分割点に対して前記ユーザにより所定の操作が為されるのに応じて、前記出力対象の文字列を前記候補分割点に基づき分割された文字列に変更する、ことを特徴とする請求項1乃至8のいずれか1項に記載の画像処理システム。
  10. 前記表示手段は、前記表示した文書画像上で前記ユーザにより前記位置の指定が行われるのに応じて、当該指定された位置に対応する文字列の領域を強調表示し、かつ、前記候補分割点を指定可能に表示する、ことを特徴とする請求項1乃至9のいずれか1項に記載の画像処理システム。
  11. 前記画像処理システムは、サーバと端末とを備え、
    前記サーバが、前記文字認識手段と前記候補分割手段とを含み、
    前記端末が、前記表示手段と前記変更手段とを含む、
    ことを特徴とする請求項1に記載の画像処理システム。
  12. 文書画像に対して文字認識処理を実行する文字認識手段と、
    前記文字認識処理の認識結果の文字列において、候補分割点を特定する候補分割手段と、
    前記文書画像と前記文字認識処理の認識結果の文字列と前記候補分割点とに関する情報を端末に送信する送信手段と、
    を備えることを特徴とする画像処理装置であって、
    前記情報を受信した端末では、前記文書画像を表示し、当該表示した文書画像上でユーザにより指定された位置に対応する文字列を出力対象とするとともに、前記候補分割点を表示し、さらに、当該表示した前記候補分割点が前記ユーザにより操作された場合は、前記出力対象の文字列を前記候補分割点に基づく文字列に変更する、
    ことを特徴とする画像処理装置。
  13. 文書画像に対して文字認識処理を実行する文字認識ステップと、
    前記文字認識処理の認識結果の文字列において、候補分割点を特定する候補分割ステップと、
    前記文書画像を表示し、当該表示した文書画像上でユーザにより指定された位置に対応する文字列を出力対象とするとともに、前記候補分割点を表示する表示ステップと、
    前記表示した前記候補分割点が前記ユーザにより操作された場合、前記出力対象の文字列を前記候補分割点に基づく文字列に変更する変更ステップと、
    を備えることを特徴とする画像処理方法。
  14. コンピュータを、請求項1乃至11のいずれか1項に記載の画像処理システムの各手段、または、請求項12に記載の画像処理装置の各手段として機能させるためのプログラム。
JP2020123284A 2020-07-17 2020-07-17 画像処理システム、装置、方法、プログラム Pending JP2022019446A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020123284A JP2022019446A (ja) 2020-07-17 2020-07-17 画像処理システム、装置、方法、プログラム
US17/372,277 US20220019835A1 (en) 2020-07-17 2021-07-09 Image processing system, apparatus, method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020123284A JP2022019446A (ja) 2020-07-17 2020-07-17 画像処理システム、装置、方法、プログラム

Publications (1)

Publication Number Publication Date
JP2022019446A true JP2022019446A (ja) 2022-01-27

Family

ID=79291507

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020123284A Pending JP2022019446A (ja) 2020-07-17 2020-07-17 画像処理システム、装置、方法、プログラム

Country Status (2)

Country Link
US (1) US20220019835A1 (ja)
JP (1) JP2022019446A (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689342A (en) * 1994-11-17 1997-11-18 Canon Kabushiki Kaisha Image processing method and apparatus which orders text areas which have been extracted from an image
US7668718B2 (en) * 2001-07-17 2010-02-23 Custom Speech Usa, Inc. Synchronized pattern recognition source data processed by manual or automatic means for creation of shared speaker-dependent speech user profile
JP5594269B2 (ja) * 2011-09-29 2014-09-24 コニカミノルタ株式会社 ファイル名作成装置、画像形成装置、およびファイル名作成プログラム
JP6286866B2 (ja) * 2013-05-20 2018-03-07 オムロン株式会社 画像処理装置および画像処理方法
WO2015100574A1 (zh) * 2013-12-31 2015-07-09 华为终端有限公司 一种字符串输入控制方法,及装置
JP6881990B2 (ja) * 2017-01-30 2021-06-02 キヤノン株式会社 画像処理装置とその制御方法、及びプログラム
JP6968647B2 (ja) * 2017-10-03 2021-11-17 キヤノン株式会社 スキャン画像にファイル名を設定するための装置、その制御方法及びプログラム
JP6898594B2 (ja) * 2017-11-13 2021-07-07 ブラザー工業株式会社 編集装置、編集方法、及び編集プログラム
US10970848B2 (en) * 2018-11-29 2021-04-06 Sap Se Font family and size aware character segmentation

Also Published As

Publication number Publication date
US20220019835A1 (en) 2022-01-20

Similar Documents

Publication Publication Date Title
JP2019115011A (ja) 画像処理装置および画像処理プログラム
JP2012018576A (ja) 画像処理装置、画像処理方法、コンピュータプログラム
US10423825B2 (en) Retrieval device, retrieval method, and computer-readable storage medium for computer program
JP7434001B2 (ja) 情報処理装置、プログラム、情報処理方法
US11243670B2 (en) Information processing system, information processing apparatus, information processing method and non-transitory computer readable medium
JP2007058622A (ja) 文書管理装置及び文書管理方法
EP2884425B1 (en) Method and system of extracting structured data from a document
EP3506155A1 (en) Image processing apparatus and image processing program
JP7443012B2 (ja) メタデータを設定するための設定方法、プログラム、装置
CN111580758B (zh) 图像形成装置
US20230206672A1 (en) Image processing apparatus, control method of image processing apparatus, and storage medium
JP2022019445A (ja) 画像処理装置、方法、プログラム
JP2022019446A (ja) 画像処理システム、装置、方法、プログラム
US20090279781A1 (en) Image processing apparatus, image processing method, and storage medium
JP2022137608A (ja) 情報処理装置、情報処理方法およびプログラム
US11006015B2 (en) Information processing apparatus and non-transitory computer readable medium storing information processing program
JP2005100079A (ja) 帳票データ入力装置およびプログラム
JP2021114224A (ja) ファイル検索システム、ファイル検索方法及びプログラム
JP5860434B2 (ja) 画像形成システム、ログ画像抽出プログラムおよび画像形成装置
US11475687B2 (en) Information processing system
US9075878B2 (en) Information processing apparatus, content item management system, non-transitory computer readable medium, and information processing method
JP2008118489A (ja) ファクシミリ配信システム及びファクシミリ装置
US10261729B1 (en) Document manipulation mechanism
JP6175414B2 (ja) 文書処理装置および文書処理プログラム
JP2024084452A (ja) 情報処理装置とその制御方法、及びプログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20200731

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230704

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20231213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240604