JP2022014322A - 画像処理装置、画像処理方法、およびプログラム - Google Patents

画像処理装置、画像処理方法、およびプログラム Download PDF

Info

Publication number
JP2022014322A
JP2022014322A JP2020116595A JP2020116595A JP2022014322A JP 2022014322 A JP2022014322 A JP 2022014322A JP 2020116595 A JP2020116595 A JP 2020116595A JP 2020116595 A JP2020116595 A JP 2020116595A JP 2022014322 A JP2022014322 A JP 2022014322A
Authority
JP
Japan
Prior art keywords
image
character
black pixel
pixel block
brightness
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
JP2020116595A
Other languages
English (en)
Other versions
JP2022014322A5 (ja
Inventor
理 山中
Satoru Yamanaka
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 JP2020116595A priority Critical patent/JP2022014322A/ja
Priority to US17/364,015 priority patent/US11948342B2/en
Publication of JP2022014322A publication Critical patent/JP2022014322A/ja
Publication of JP2022014322A5 publication Critical patent/JP2022014322A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • G06V10/273Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion removing elements interfering with the pattern to be recognised
    • 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/155Removing patterns interfering with the pattern to be recognised, such as ruled lines or underlines
    • 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

Abstract

【課題】 入力画像内に含まれる高輝度画素のうちの、適切な高輝度画素を抽出できるようにする。【解決手段】 入力画像を閾値に基づいて二値化することにより、二値画像を生成し、前記入力画像において所定の高輝度の画素を黒画素化することにより高輝度画像を生成し、前記二値画像内の黒画素塊に基づいて特定される文字画像の位置と、前記高輝度画像内の黒画素塊の位置とに基づいて、前記高輝度画像内の黒画素塊を抽出対象にするか否か判定する。【選択図】 図2

Description

本発明は、入力画像内の高輝度画素を抽出対象にするか否か判定する画像処理装置、方法、プログラムに関する。
会計業務などの効率化を目的として、光学文字認識(Optical character recognition、以下OCR)処理技術を用いて、スキャナで読み取った帳票画像から文字情報を抽出し、認識するシステムの開発が行われている。さらに、帳票画像のOCR結果に基づいて、日付などの特定の項目(以下、Key)を抽出し、文字形式などの情報を用いて各Keyに対応した値(以下、Value)を推測して取得する機能(以下、Key-Value抽出機能)が一般的に知られている。
帳票画像の中には、輝度の高い色(明度の高い色)で記述された文字を含んでいることがある。もし、これらの文字がKeyやValueであった場合、従来の文字認識システムではKey-Value抽出できないことがある。例えば、スキャン画像内の文字認識において、画像全体の輝度値から算出した閾値をもとに画像を白黒の二値画像に変換し、文字画像を黒色、背景画像を白色で表示する方法が一般的である。しかし、輝度値が閾値以上の文字は、背景と同化するため、文字として認識できない。
これに対し、特許文献1では、スキャン画像を第1の閾値で二値化して得た第1の二値画像に基づいて文字領域を抽出し、その文字領域以外の背景領域に関して第2の閾値で再二値化して第2の二値画像を取得することで明度の高い色の文字を抽出している。
特開2019-159420号公報
一方、両面に印刷された帳票をスキャナで読み取ると、スキャン画像内に、裏面の文字や絵が透けて写りこむ「裏写り」という現象が発生することがある。裏写りによって写りこんだ文字や絵などのオブジェクトは、表面の文字画像よりも薄い色のオブジェクト(すなわち明度または輝度の高いオブジェクト)として、スキャン画像内に存在する場合が多い。このようなスキャン画像に対して、特許文献1のような技術を適用すると、明度(輝度)の高い文字画像に加えて、裏写りしているオブジェクトも、二値画像として抽出されることになる。
一方、スキャン画像からKeyとValueをペアにして抽出する場合、Keyとなる文字列とValueとなる文字列との位置関係も考慮されるのが一般的である。例えば、Keyとなる文字列の右側に存在する文字列をValueとして抽出する場合がある。そしてスキャン画像に対して、上述したような明度の高い文字列等のオブジェクトを抽出する処理を適用した場合、Keyとなる文字列とValueとなる文字列との間に、裏写りしたオブジェクトが二値化された状態で出現する場合がある。このような場合、Keyとなる文字列の右側に、裏写りしたオブジェクトが存在するため、本来のKey-Valueのペアの抽出に失敗してしまう。
上記課題を解決するために、本発明の画像処理装置は、入力画像を閾値に基づいて二値化することにより、二値画像を生成する二値化手段と、前記入力画像において所定の高輝度の画素を黒画素化することにより高輝度画像を生成する生成手段と、前記二値画像内の黒画素塊に基づいて特定される文字画像の位置と、前記高輝度画像内の黒画素塊の位置とに基づいて、前記高輝度画像内の黒画素塊を抽出対象にするか否か判定する判定手段と、を備えることを特徴とする。
本発明によれば、高輝度画像内の黒画素のうち、適切な黒画素を抽出対象とすることができる。
第一実施形態に係る情報処理システムを示す図である。 第一実施形態に係る二値化からKey-Value抽出までの処理を示すフローチャートである。 第一実施形態に係る非文字画像の除去処理を示すフローチャートである。 第一実施形態に係る抽出対象判定処理を示すフローチャートである。 第一実施形態に係る印影除去処理を示すフローチャートである。 第一実施形態に係る罫線除去処理を示すフローチャートである。 第二実施形態に係る抽出対象判定の処理を示すフローチャートである。 第三実施形態に係る抽出対象判定の処理を示すフローチャートである。 第三実施形態に係る抽出対象判定の処理の変形例を示すフローチャートである。 第四実施形態に係る二値化からKey-Value抽出までの処理を示すフローチャートである。 第四実施形態に係るKey-Value抽出処理を示すフローチャートである。 第四実施形態に係る第二の抽出判定処理を示すフローチャートである
(第一の実施形態)
図1は、第1の実施形態に係る情報処理システムを示す図である。情報処理システムは、複写機(複合機)100と、情報処理装置110とを含む。複合機100は、スキャナ101と、プリンタ102と、通信部103とを有している。スキャナ101は、文書のスキャンを行い、スキャン画像を生成する。プリンタ102は、画像を用紙にプリント(画像形成)する。複写機100の通信部103は、ネットワークを介して外部装置と通信を行う。
情報処理装置110は、CPU111と、ROM112と、RAM113と、HDD114と、表示部115と、入力部116と、情報処理装置側通信部117とを有している。CPU111は、ROM112またはHDD114に記憶された制御プログラムを読み出して実行することにより、後述するフローチャートで説明するような各種処理を行う処理部として機能する。RAM113は、CPU111の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD114は、各種データや各種プログラム等を記憶する。すなわち、情報処理装置110の機能や処理は、CPU111がROM112又はHDD114に格納されているプログラムを読み出して実行することによって実現されるものである。
情報処理装置110の通信部117は、ネットワークを介して外部装置との通信処理を行う。表示部115は、各種情報を表示するためのディスプレイやプロジェクタである。入力部116は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。なお、表示部115と入力部116は、タッチパネルのように一体に設けられていてもよい。
本実施形態において、複写機100は、スキャナ101で帳票等の文書をスキャンし、入力画像を生成する。そして、入力画像は、通信部103を介して情報処理装置110に送信される。情報処理装置110ではは、通信部117を介して入力画像を受信し、これをHDD114等の記憶部に記憶する。
図2は、第一の実施形態に係る処理の流れを示すフローチャートである。
S201において、CPU111は、複写機110から受信した入力画像に対して、二値化処理を行うことによって二値画像を生成し、RAM113に格納する。二値化処理とは、画像を白と黒の2階調に変換する処理のことであり、例えば、入力画像を輝度画像に変換し、輝度画像の各画素を第1の閾値VTHと比較して、この閾値VTHより低い輝度の画素は黒画素とし、その閾値より高い輝度の画素は白画素とする。また、二値化処理で用いる閾値は、例えば、画像全体のヒストグラムに基づいて決定する方法を用いることが可能であるが、その他の手法を用いて閾値を決定するようにしても構わない。
S202において、CPU111は、二値画像内の黒画素について、文字画像の画素であるか、非文字画像の画素であるかを分類し、非文字画像と判定された黒画素については二値画像から除去(すなわち、白画素に置換)する。非文字画像を除去された二値画像には、文字画像が含まれており、後述するS209のOCR処理(文字認識処理)に適した画像(非文字画像除去済みの画像)となっている。なお、S202では、文字画像の位置(文字領域の位置)も特定することができる。
図3は、非文字画像の除去処理を示すフローチャートであり、ノイズ除去(S301)、印影除去(S302)、罫線除去(S303)の処理を行う。なお、ノイズ除去と印影除去と罫線除去の処理順は、図3の順に限るものではなく、別の異なる順で処理を実行しても良い。なお、入力画像にノイズ、印影、罫線以外の非文字情報(写真やイラストなど)を含む場合は、それらの非文字画像を除去する処理を追加してもよい。
ノイズ除去処理(S301)では、例えば、連結している黒画素を黒画素塊として検出し、当該検出した黒画素塊のうち、小さいサイズの黒画素塊(微小な孤立ドット)をノイズとして判定し、当該黒画素塊を除去する。ノイズ除去は、公知のノイズ除去方法(孤立点の除去など)を用いることができる。
印影除去処理(S302)の詳細を、図5Aを用いて説明する。S501において、CPU111は、印影の位置情報を取得する。印影の位置情報は、入力画像内の赤色の画素塊を検出し、当該検出した赤色の画素塊のうち、一般的な印影の形状やサイズを有する画素塊を印影として特定することにより、その印影の位置を取得する。なお、印影の位置情報の取得方法はこれに限るものではなく、その他の方法を用いてもよい。S502において、CPU111は、当該取得した印影の位置情報を、RAM113もしくはHDD114に格納する。そして、S503において、CPU111は、当該格納した印影の位置情報を用いて、二値画像内の印影に対応する画素を白画素に変換することで、印影画像を除去することができる。
罫線除去(S303)の詳細を、図5Bを用いて説明する。S511において、CPU111は、罫線の位置情報を取得する。例えば、二値画像において、縦方向と横方向のそれぞれの方向でヒストグラムを作成することにより、ヒストグラムの計数が所定の閾値以上となった位置に、縦の罫線と横の罫線が存在すると判定できる。なお、罫線の検出方法は、ヒストグラムに限るものではなく、それ以外の手法を用いるようにしても構わない。S512において、CPU111は、当該取得した罫線の位置情報をRAM113もしくはHDD114に格納する。そして、S513において、CPU111は、当該格納した罫線の位置情報を用いて、二値画像内の罫線に対応する画素を白画素に変換することで、罫線を除去することができる。
なお、本実施形態では、印影除去(S302)時の印影の位置情報と、罫線除去(S303)時の罫線の位置情報とを、RAM113もしくはHDD114の異なる領域に格納したが、これに限るものではない。例えば、ノイズ、印影、罫線、およびその他の非文字情報と判定された画素の位置を、同じ領域に格納してもよい。
S203において、CPU111は、S201の二値化処理で用いた第1の閾値VTHと、それよりも高い第2の閾値(p×VMAX)とを用いて、入力画像のうち第1の閾値と第2の閾値との間の輝度を有する画素を黒画素とした第2の二値画像(以下、高輝度画像)を作成する。すなわち、入力画像の輝度画像において、
TH < V ≦ p×VMAX ・・・(式1)
を満たす輝度値Vを有する画素を黒色とし、その他の画素を白色とすることにより、高輝度画像を作成する。ここで、VMAXは入力画像内の最大輝度値であり、本実施形態において、係数pは0.98を用いるものとする。なお、係数pは、0.98に限るものではなく、
TH / VMAX < p < 1.0 ・・・(式2)
を満たす範囲で、係数pの値を変更するようにしてもよい。このようにして、S203で生成される高輝度画像は、S201の二値化処理時の閾値よりも高い輝度を有し、かつ、背景色より低い輝度を有する画素を黒画素とし、それ以外の画素(輝度の低い画素および背景の画素)を白画素とした画像である。なお、係数pの値が大きくなるにつれて、式1を満たす画素の数も増え、不要なノイズも抽出しやすくなる傾向があるため、高輝度画像内において孤立点除去等のノイズ除去処理を行ってもよい。また、高輝度画像では濃度ムラのある画像も多いため、平滑化処理などの濃度ムラを改善する処理を予め行ってもよい。
S204において、CPU111は、高輝度画像を解析することにより、高輝度の文字が存在する可能性のある領域(以下、高輝度画像領域)を抽出する。例えば、高輝度画像において、連結している黒画素を黒画素塊として検出し、当該検出した黒画素塊のサイズが一般的な文字のサイズに相当し、かつ、同様のサイズの黒画素塊が並んでいる領域を、高輝度の文字列が存在しうる領域(高輝度画像領域)として抽出する。
S205において、CPU111は、S204で検出した高輝度画像領域の数をカウントし、高輝度画像領域が1つ以上存在する場合はS206へ進み、1つも存在しない場合はS209へ進む。S206~S208の処理は、S204で検出された高輝度画像領域を1つずつ順に処理対象として、すべての高輝度画像領域が処理されるまで繰り返し実行される。
S206において、CPU111は、各高輝度画像領域を抽出対象にするかどうかを判定する。図4に、第一の実施形態に係る高輝度画像の抽出対象判定処理に関するフローチャートを示す。まず、S401では、S201で生成した二値画像において、現在の処理対象の高輝度画像領域に対応する位置に、文字画像の黒画素塊が存在するかどうかを判定する。ここでは、S202で文字画像の画素であると判定された黒画素の塊の位置が、処理対象の高輝度画像領域に対応する範囲内に含まれるならば、当該処理対象の高輝度画像領域に文字が存在すると判定する。S401で高輝度画像領域内に文字が存在すると判定した場合(すなわち、二値画像から抽出した文字の画素塊と、高輝度画像から抽出した高輝度画像領域とが重なっている場合)は、当該高輝度画像領域は裏写りによるものである可能性が高いため、S405に進み、当該判定対象の高輝度画像領域を抽出対象外と判定する。一方、S401で高輝度画像領域内に文字が存在しない場合(すなわち、二値画像から抽出した文字の画素塊と、高輝度画像から抽出した高輝度画像領域とが重なっていない場合)は、S402へ進む。
次に、S402において、CPU111は、S201で生成した二値画像において、当該判定対象の高輝度画像領域に対応する位置の左右両方に文字画像の黒画素塊があるか判定する。ここでは、S202で文字画像の画素であると判定された複数の黒画素の塊の位置が、判定対象の高輝度画像領域に対応する位置の左側と右側の両方に存在するならば、当該判定対象の高輝度画像領域の左右に文字が存在すると判定する。また、S403において、CPU111は、S201で生成した二値画像において、当該判定対象の高輝度画像領域に対応する位置の上下両方に文字画像の黒画素塊があるか判定する。ここでは、S202で文字画像の画素であると判定された複数の黒画素の塊の位置が、判定対象の高輝度画像領域に対応する位置の上側と下側の両方に存在するならば、当該判定対象の高輝度画像領域の左右に文字が存在すると判定する。すなわち、S402およびS403では、二値画像において文字画像の画素と判定された複数の黒画素塊の間(左右または上下方向の少なくともいずれかの間)に、高輝度画像領域があるかどうかを判定している。
判定対象の高輝度画像領域の位置が、二値画像における複数の文字画像の間ではない(文字画像の画素塊に挟まれていない)場合(S402でNo、かつ、S403でNo)は、当該高輝度画像がKeyまたはValueに関する文字画像である可能性がある。また、当該高輝度画像領域内の高輝度画像がKeyまたはValueに関する文字画像でなかったとしても、二値画像内の文字画像に基づくKey-Value抽出を阻害する可能性は低い。したがって、S404では、当該判定対象の高輝度画像領域を抽出対象と設定して、その位置情報をRAM113に格納する。
一方、判定対象の高輝度画像領域の位置が、二値画像における複数の文字画像の間である場合(S402でYes、または、S403でYes)は、もし二値画像内の文字画像同士がKeyとValueの関係にあったなら、その間の高輝度画像領域内の高輝度画像を抽出してしまうと、Key-Value抽出を阻害する可能性がある。したがって、S405では、当該判定対象の高輝度画像領域を抽出対象外と設定する。なお、S402およびS403において、高輝度画像領域の左右および上下に文字が存在するかを探索しているが、その探索範囲は、上下と左右で異なってもよい。例えば、上下方向においては、高輝度画像領域の上辺から上方向に180ピクセル以内の範囲において、二値画像内の文字画像を探索し、かつ、高輝度画像領域の底辺から下方向に180ピクセル以内の範囲において、二値画像内の文字画像を探索する。一方、左右方向においては、高輝度画像領域の左辺から左方向、ならびに、右辺から右方向に、二値画像内の左右の端までの間で文字画像を探索する。また、探索範囲は、入力画像の種類によって変更してもよいし、高輝度画像領域のサイズや位置によって変更してもよい。
次に、S207において、CPU111は、S206の判定結果が“抽出対象”であった場合(S207でYes)は、S208へ進む。一方、判定結果が“抽出対象外”であった場合(S207でNo)、未判定の高輝度画像領域が残っているか判定し、未判定の高輝度画像領域がある場合は、当該高輝度画像領域を新たな判定対象としてS206の処理に戻り、すべての高輝度画像領域を判定済みの場合はS209へ進む。
次に、S208において、CPU111は、高輝度画像から、S206で抽出対象として設定した高輝度画像領域内の黒画素塊の位置情報を抽出し、RAM113に格納する。そして、S208の処理の後、未判定の高輝度画像領域が残っているか判定し、未判定の高輝度画像領域がある場合は、当該高輝度画像領域を新たな判定対象としてS206の処理に戻り、すべての高輝度画像領域を判定済みの場合はS209へ進む。
S209において、CPU111は、二値画像内の文字画像の黒画素塊、および抽出対象として設定した高輝度画像領域内の高輝度画像の黒画素塊に対してOCR処理(文字認識処理)を実行し、文字認識結果を位置情報に関連付けてRAM113もしくはHDD114に格納する。本実施形態では、文字領域内の文字の特徴量を分析し、特徴量が最も近い文字に分類することで、文字領域内の文字を認識するものとするが、文字領域内の文字を認識することができるならば、異なる方法を用いてもよい。例えば、機械学習やディープラーニングを用いて文字の認識を行ってもよい。
S210において、CPU111は、RAM113もしくはHDD114に格納した文字認識結果を用いてKey-Value抽出処理を実行する。本実施形態では、Key(キー)とValue(バリュー)を検索するために必要な情報を予めHDD114に格納しておき、文字認識結果の文字情報と各文字情報の位置情報とに基づいてKeyとValueを抽出する。そして、KeyとValueの関係にあると判定した各々の文字情報と位置情報を互いに関連付けてRAM113もしくはHDD114に格納する。検索に必要な情報としては、OCR結果や文字の形式、または、KeyとValueの位置関係に関する情報であるが、Key-Value抽出において同様の効果が得られるのであれば、他の情報を用いてもよい。
本実施形態により、高輝度画像に含まれる黒画素のうちの、適切な黒画素を抽出対象とすることができる。これにより、例えば、KeyやValueの抽出を阻害しない高輝度画像を抽出することができるので、Key-Value抽出精度を向上させることができる。
(第二の実施形態)
第二の実施形態については、第一の実施形態との差分のみの説明とし、特に明記しない部分については第一の実施形態と同じ構成/手順となる。
第一の実施形態において、非文字情報除去(S202)で二値画像から除去した印影や罫線の一部もしくは全体が、高輝度画像領域と重なっていた場合については考慮していなかった。
図6に、本実施形態に係る高輝度画像の抽出判定処理を示すフローチャートを示す。ここで、図6は、第一の実施形態における抽出判定処理(S206、および図4)に相当する処理である。S601において、CPU111は、S201で生成した二値画像において、現在の処理対象の高輝度画像領域に対応する位置に、文字画像の黒画素塊が存在するかどうかを判定する。S601で高輝度画像領域内に文字が存在すると判定した場合(すなわち、二値画像から抽出した文字の画素塊と、高輝度画像から抽出した高輝度画像領域とが重なっている場合)は、当該高輝度画像領域は裏写りによるものである可能性が高いため、S607に進み、当該判定対象の高輝度画像領域を抽出対象外と判定する。一方、S601で高輝度画像領域内に文字が存在しない場合(すなわち、二値画像から抽出した文字の画素塊と、高輝度画像から抽出した高輝度画像領域とが重なっていない場合)は、S602へ進む。
S602において、CPU111は、S502およびS512でRAM113もしくはHDD114に格納した印影や罫線の位置情報を取得する。
次に、S603において、CPU111は、高輝度画像領域と、印影および罫線の位置情報とが重なっているかどうかを評価する。印影や罫線が高輝度領域と重なっていた場合はS604へ進み、重なっていない場合はS605へ進む。
S604において、CPU111は、高輝度画像領域の重心の座標から、当該重なっていると判断された印影または罫線までの最短距離を算出する。最短距離が閾値以下であれば(S604でYes)、S607に進んで、当該高輝度画像領域の高輝度画像は抽出対象外(すなわち、高輝度画像を表示しない)と設定する。一方、最短距離が当該閾値より大きければ(S604でNo)、S605へ進む。なお、閾値は、例えば、当該判定対象の高輝度画像領域のサイズ(高さ又は幅)の4分の1にすれば、当該高輝度画像領域の中央付近に印影または罫線が重なっているか判断することができる。
S605において、CPU111は、まず、当該判定対象の高輝度画像領域が罫線に囲まれているかどうかを確認する。ここでは、高輝度画像領域の外接矩形(上下左右全ての辺)とほぼ一致する位置に罫線の位置情報が存在するかを確認する。そして、罫線が存在する場合は、当該判定対象の高輝度画像領域の位置情報を罫線に囲まれている高輝度画像領域としてRAM113の別の領域に格納する。さらに、罫線に囲まれている高輝度画像領域が同じ高さに複数並んで存在するかどうかを判断し、複数存在すると判定した場合(S605のYes)、表内の罫線で囲まれたセルの色付き背景画像であるとして、S607でそれらの高輝度画像領域を抽出対象外に設定する。一方、罫線に囲まれた高輝度画像領域が一つのみ、もしくは、近傍の高輝度画像領域の高さがまちまちである場合(S605のNo)、S606において、当該判定対象の高輝度画像領域を抽出対象に設定する。
本実施形態により、高輝度画像領域の中央付近に印影や罫線の一部が重なっている場合も、当該高輝度画像領域を抽出対象外とすることができる。
(第三の実施形態)
第三の実施形態については、第一、二実施形態との差分のみの説明とし、特に明記しない部分については第一、二実施形態と同じ構成/手順となる。
第一の実施形態では、高輝度画像領域と二値画像内の文字の位置情報とを比較することにより、当該高輝度画像領域を抽出対象とするかどうかを判定したが、本実施形態では、高輝度画像が文字であるかどうかに基づいて判定する。具体的には、高輝度画像のOCR結果を用いて、抽出対象とすべき高輝度画像と抽出対象にしない裏写り画像とを判別する。一般的に、裏写り画像かどうかを判定するためには、表面と裏面の2種の画像が必要であるが、本実施形態では、表面の画像1種のみで裏写り画像かどうかの判定が可能である。
図7Aに、本実施形態に係る高輝度画像の抽出対象判定処理を示すフローチャートを示す。ここで、図7Aは、第一の実施形態における抽出対象判定処理(S206、および図4)に相当する処理である。S701において、CPU111は、S201で生成した二値画像において、現在の処理対象の高輝度画像領域に対応する位置に、文字画像の黒画素塊が存在するかどうかを判定する。S701の処理は、S401の処理と同様である。
S702において、CPU111は、S203で作成した高輝度画像を用いて、当該判定対象の高輝度画像領域内の高輝度画像に対してOCR処理を実行する。本実施形態では、OCR処理を用いて文字として認識できるかどうか判定するが、文字らしさを判定することができるのであれば、他の方法(例えば、文字判定用のニューラルネットワーク)を用いてもよい。
S703において、CPU111は、当該判定対象の高輝度画像内の全画素塊のうち、文字として認識できた画素塊の割合(OCR結果の確信度が所定の値以上となった画素塊の割合)を算出する。
S704において、CPU111は、文字として認識された画素塊の割合が閾値より大きいか確認する。閾値より大きいの場合は(S704でYes)、高輝度画像に文字画像が含まれていると判断し、S705に進んで、当該高輝度画像領域を抽出対象として設定する。一方、閾値以下である場合(S704でNo)、つまり、高輝度画像に文字が含まれていないと認識された場合、その高輝度画像領域内の高輝度画像は、ノイズや裏写り画像である可能性が高いため、S706に進んで、抽出対象外とする。なお、本実施形態では、文字として認識できた画素塊の割合を判定基準としたが、文字として認識できた画素塊の数を判定基準として用いてもよい。
また、図7Bに、本実施形態に係る別方式の高輝度画像領域の抽出対象判定処理を示すフローチャートを示す。ここで、図7Bは、第一の実施形態における抽出判定処理(S206、および図4)に相当する処理である。S711において、CPU111は、S201で生成した二値画像において、現在の処理対象の高輝度画像領域に対応する位置に、文字画像の黒画素塊が存在するかどうかを判定する。S711の処理は、S401の処理と同様である。
S712において、CPU111は、当該処理対象の高輝度画像領域を反転して、反転高輝度画像を生成する。表面に裏写りした画像は、文字が上下、もしくは左右に反転していることが多い。よって、反転した高輝度画像に対して、S713においてOCR処理を実行する。
S714において、CPU111は、当該判定対象の高輝度画像内の全画素塊のうち、S713のOCR処理によって文字として認識された画素塊の割合(OCR結果の確信度が所定の値以上となった画素塊の割合)を算出する。
S715において、CPU111は、文字として認識された画素塊の割合が閾値より小さいか確認する。反転高輝度画像において文字として認識された画素塊の割合が当該閾値以上である場合(S715でNo)、当該高輝度画像領域は裏写りした文字画像であると判断し、S717に進んで、当該高輝度画像領域を抽出対象外として設定する。一方、反転高輝度画像において文字として認識された画素塊の割合が当該閾値より小さい場合、S716に進んで、当該高輝度画像領域を抽出対象として設定する。なお、本実施形態では、高輝度画像を左右に反転した画像を用いたが、上下反転や、180度回転させた画像を用いてもよい。また、上下反転、左右反転、180度回転した各画像と、元の画像とで文字認識結果を比較し、元の画像の文字認識率が最も高い場合のみ、抽出対象と判定してもよい。
本実施形態により、OCR結果に基づいて裏写りした高輝度画像と判断される場合は、抽出対象外の領域と設定できるので、Key-Value抽出を阻害する高輝度画像の抽出を防ぐことができる。
(第四の実施形態)
第四の実施形態については、第一の実施形態との差分のみの説明とし、特に明記しない部分については第一の実施形態と同じ構成/手順となる。
図8に本実施形態に係る二値化からKey-Value抽出処理までの一連の処理を示すフローチャートを示す。図8のフローチャートのうち、S801~S810は、図2のフローチャートにおけるS201~S210と同様の処理内容である。ただし、S807で抽出対象外と判定された場合(S807でNo)、S811に進む。S811において、CPU111は、当該抽出対象外と判定された高輝度画像領域の位置情報をRAM113もしくはHDD114に格納する。
図9は、本実施形態に係るS810のKey-Value抽出処理の詳細を示すフローチャートを示す。S901において、CPU111は、S809のOCR結果(二値画像内の文字画像の黒画素塊および抽出対象として設定した高輝度画像領域内の高輝度画像の黒画素塊に対して、OCRした結果)とその位置情報に基づいて、KeyとValueを抽出する。そして、KeyとValueの関係にあると判定した各々の文字情報とその位置情報とを関連づけてRAM113に格納する。
次に、S902において、CPU111は、Keyが抽出されたかを確認し、抽出された場合はS903へ進み、Keyが1つも抽出されていなかった場合は処理を終了する。
次に、S903において、CPU111は、当該抽出されたKeyの位置情報をRAM113より取得し、S711においてRAM113に格納した抽出対象外の高輝度画像領域が、当該Keyの周辺に存在するかを確認する。Key周辺に、S711で抽出対象外とした高輝度画像領域が存在する場合はS904へ進み、存在しない場合は処理を終了する。なお、本実施形態では、各Keyの周辺に、抽出対象外としていた高輝度画像が存在するかを確認したが、さらに、S901で抽出されたValueの周辺に、抽出対象外としていた高輝度画像が存在するかを確認するようにしてもよい。
S904において、CPU111は、S903でKey周辺に存在すると判定された抽出対象外の高輝度画像領域内の高輝度画像に対してOCRを実行し、文字認識結果を位置情報に関連付けてRAM113もしくはHDD114に格納する。
次に、S905において、CPU111は、Key周辺の抽出対象外と設定されていた高輝度画像領域内の高輝度画像が、当該Keyに対応したValueであるかどうかを、S904のOCR結果に基づいて判定する。図10に本実施形態に係るValue判定処理に関するフローチャートを示す。S1001において、CPU111は、Key周辺に存在する抽出対象外の高輝度画像に文字情報が存在するかを確認する。文字情報が存在する場合は(S1001のYes)、S1002へ進み、文字情報が存在しない場合は(S1001のNo)、高輝度画像は抽出対象外の画像である(S1006)と判定する。
S1002において、CPU111は、HDD114に予め格納していたKeyに対応するValueの形式に関する情報を取得する。本実施形態において、例えば、Keyが「金額」であった場合、対応するValueの形式として「通貨+数字」、「数字のみ」などを用いたが、同様の結果が得られるならば、他の表記方法を用いてもよい。
S1003において、CPU111は、Key周辺に存在する抽出対象外の高輝度画像のOCR結果をもとに、文字の形式を分析する。S1004において、CPU111は、高輝度画像のOCR結果の分析結果の文字の形式が、当該Keyに対応するValueとして予め定義されていた文字の形式に一致するか判断する。そして、S1004で一致すると判断した場合は、S1005に進んで、当該高輝度画像領域を抽出対象として設定しなおす。一方、S1004で一致しないと判断した場合は、S1006に進んで当該高輝度画像領域を抽出対象外のままにする。
S906において、CPU111は、S905の判定の結果、抽出対象と設定しなおした高輝度画像領域があるか判断し、抽出対象に設定した高輝度画像領域がある場合はS907に進む。S907において、CPU111は、当該抽出対象に設定しなおした高輝度画像領域に関する位置情報と文字情報とを取得し、当該Keyに関連付けてRAM113もしくはHDD114の別領域に格納する。なお、S906で、抽出対象に設定した高輝度画像領域がないと判定した場合は、Key-Value抽出を終了する。
本実施形態により、抽出対象外の高輝度画像に含まれるValueを取得することができ、Key-Value精度をより向上させることが出来る。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (13)

  1. 入力画像を閾値に基づいて二値化することにより、二値画像を生成する二値化手段と、
    前記入力画像において所定の高輝度の画素を黒画素化することにより高輝度画像を生成する生成手段と、
    前記二値画像内の黒画素塊に基づいて特定される文字画像の位置と、前記高輝度画像内の黒画素塊の位置とに基づいて、前記高輝度画像内の黒画素塊を抽出対象にするか否か判定する判定手段と、
    を備えることを特徴とする画像処理装置。
  2. 前記生成手段は、前記入力画像において、前記二値化手段で用いた閾値よりも高い輝度で且つ背景よりも低い輝度を有する画素を黒画素化することにより、前記高輝度画像を生成する、ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記二値化手段で生成された前記二値画像において、文字画像と非文字画像とを特定する特定手段を更に備え、
    前記判定手段は、前記特定手段で特定された文字画像の位置と、前記高輝度画像内の黒画素塊の位置とに基づいて、前記高輝度画像内の黒画素塊を抽出対象にするか否か判定する、ことを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記判定手段は、前記二値画像内の黒画素塊に基づいて特定される文字画像の間にある前記高輝度画像内の黒画素塊を、抽出対象にしないと判定する、ことを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
  5. 前記判定手段は、前記高輝度画像内の黒画素塊の領域内に、前記二値画像内の黒画素塊に基づいて特定される文字画像がある場合、前記高輝度画像内の黒画素塊を、抽出対象にしないと判定する、ことを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
  6. 前記二値画像内の黒画素塊に基づいて特定される文字画像と、前記判定手段で抽出対象として判定された前記高輝度画像内の黒画素塊とに対して、文字認識処理を実行する文字認識手段、を更に備えることを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
  7. 前記文字認識手段による文字認識結果に基づいて、KeyとValueの関係にある文字情報を抽出するKey-Value抽出手段、を更に有することを特徴とする請求項6に記載の画像処理装置。
  8. 前記判定手段は、前記高輝度画像内の黒画素塊の領域と、前記特定手段で特定された前記非文字画像が所定の範囲で重なっている場合、当該高輝度画像内の黒画素塊を、抽出対象にしないと判定する、ことを特徴とする請求項3に記載の画像処理装置。
  9. 前記特定手段は、前記非文字画像として罫線を特定し、
    前記判定手段は、前記特定された罫線によって囲まれた前記高輝度画像内の黒画素塊の領域が複数並んで存在する場合、当該高輝度画像内の黒画素塊を、抽出対象にしないと判定する、ことを特徴とする請求項3に記載の画像処理装置。
  10. 前記高輝度画像内の黒画素塊に対して、文字認識処理を実行する文字認識手段、を更に備え、
    前記判定手段は、前記二値画像内の黒画素塊に基づいて特定される文字画像の位置と、前記高輝度画像内の黒画素塊の位置と、前記文字認識手段による前記高輝度画像内の黒画素塊の文字認識処理の結果とに基づいて、前記高輝度画像内の黒画素塊を抽出対象にするか否か判定する、
    ことを特徴とする請求項1に記載の画像処理装置。
  11. 前記文字認識手段による文字認識結果に基づいて、Keyの文字情報を判定し、当該判定されたKeyの文字情報に対応する位置の周辺に、前記判定手段で抽出対象にしないと判定された前記高輝度画像内の黒画素塊が存在する場合、当該抽出対象にしないと判定された前記高輝度画像内の黒画素塊に対して文字認識処理を行い、当該文字認識処理の結果に基づいて、当該高輝度画像内の黒画素塊を抽出対象に設定するか否か判定する第2の判定手段を、更に備えることを特徴とする請求項6に記載の画像処理装置。
  12. 入力画像を閾値に基づいて二値化することにより、二値画像を生成する二値化ステップと、
    前記入力画像において所定の高輝度の画素を黒画素化することにより高輝度画像を生成する生成ステップと、
    前記二値画像内の黒画素塊に基づいて特定される文字画像の位置と、前記高輝度画像内の黒画素塊の位置とに基づいて、前記高輝度画像内の黒画素塊を抽出対象にするか否か判定する判定ステップと、
    を備えることを特徴とする画像処理方法。
  13. コンピュータを、請求項1乃至11のいずれか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
JP2020116595A 2020-07-06 2020-07-06 画像処理装置、画像処理方法、およびプログラム Pending JP2022014322A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020116595A JP2022014322A (ja) 2020-07-06 2020-07-06 画像処理装置、画像処理方法、およびプログラム
US17/364,015 US11948342B2 (en) 2020-07-06 2021-06-30 Image processing apparatus, image processing method, and non-transitory storage medium for determining extraction target pixel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020116595A JP2022014322A (ja) 2020-07-06 2020-07-06 画像処理装置、画像処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2022014322A true JP2022014322A (ja) 2022-01-19
JP2022014322A5 JP2022014322A5 (ja) 2023-07-05

Family

ID=79166324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020116595A Pending JP2022014322A (ja) 2020-07-06 2020-07-06 画像処理装置、画像処理方法、およびプログラム

Country Status (2)

Country Link
US (1) US11948342B2 (ja)
JP (1) JP2022014322A (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873215B2 (en) * 2007-06-27 2011-01-18 Seiko Epson Corporation Precise identification of text pixels from scanned document images
JP4491488B2 (ja) * 2008-03-03 2010-06-30 シャープ株式会社 画像処理装置、画像読取装置、画像データ出力処理装置、および画像処理方法
JP2014036314A (ja) * 2012-08-08 2014-02-24 Canon Inc スキャンサービスシステム、スキャンサービス方法及びスキャンサービスプログラム
GB201610425D0 (en) * 2016-06-15 2016-07-27 Q-Linea Ab Analysis of images of biological material
JP6900164B2 (ja) * 2016-09-27 2021-07-07 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP6903966B2 (ja) * 2017-03-16 2021-07-14 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システム及びプログラム
JP2019159420A (ja) 2018-03-07 2019-09-19 キヤノン株式会社 画像処理装置、制御方法、およびそのプログラム
JP6970835B2 (ja) * 2018-09-28 2021-11-24 株式会社Pfu 画像処理装置、制御方法及び制御プログラム
JP7301529B2 (ja) * 2018-11-30 2023-07-03 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2021043775A (ja) * 2019-09-12 2021-03-18 富士ゼロックス株式会社 情報処理装置及びプログラム

Also Published As

Publication number Publication date
US20220004795A1 (en) 2022-01-06
US11948342B2 (en) 2024-04-02

Similar Documents

Publication Publication Date Title
CN107093172B (zh) 文字检测方法及系统
CN101231698B (zh) 分割图像和/或接收表示分割的图像的信号的设备和方法
JP6139396B2 (ja) 文書を表す二値画像を圧縮する方法及びプログラム
JP5887770B2 (ja) 画像処理装置及び画像処理プログラム
JP2018121226A (ja) 画像処理装置、画像処理方法およびプログラム
JP2012205181A (ja) 画像処理装置およびプログラム
JP2022147074A (ja) 画像処理装置、画像処理方法およびプログラム
CN115131590B (zh) 目标检测模型的训练方法、目标检测方法及相关设备
JP2022014322A (ja) 画像処理装置、画像処理方法、およびプログラム
JP5742367B2 (ja) 画像処理装置及び画像処理プログラム
JP2017174031A (ja) 画像処理装置及び画像処理プログラム
KR102455883B1 (ko) 신경망 기반 디지털 문서의 위아래 방향 판단 장치 및 방법
JP5742283B2 (ja) 画像処理装置及び画像処理プログラム
JP2020087320A (ja) 画像処理装置、画像処理方法、及びプログラム
JP5283267B2 (ja) コンテンツ識別方法及び装置
JP2008250425A (ja) 帳票処理装置
JP2022167414A (ja) 画像処理装置、画像処理方法およびプログラム
JP4974367B2 (ja) 領域分割方法及び装置、並びにプログラム
JP5213338B2 (ja) 文字認識装置、文字認識方法、コンピュータプログラム
JP5747604B2 (ja) 画像処理装置及び画像処理プログラム
JP2007280346A (ja) 画像処理装置、画像方向判別方法、および画像方向判別プログラム
JP2006201885A (ja) 画像判断装置、画像形成装置、画像判断方法、画像判断プログラム、画像形成プログラムおよびコンピュータ読取り可能な記録媒体
JPH0535914A (ja) 画像傾き検出方法
JP2022019253A (ja) 情報処理装置、情報処理方法及びプログラム
JP2021189859A (ja) 文書データ生成装置、画像形成装置、及び文書データ生成プログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20200731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230627

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230627

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20231213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402