(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023013501
(43)【公開日】2023-01-26
(54)【発明の名称】画像処理装置、画像処理方法、及びプログラム
(51)【国際特許分類】
G06V 30/14 20220101AFI20230119BHJP
【FI】
G06K9/20 320K
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021117728
(22)【出願日】2021-07-16
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100085660
【弁理士】
【氏名又は名称】鈴木 均
(72)【発明者】
【氏名】作山 宏幸
【テーマコード(参考)】
5B029
【Fターム(参考)】
5B029AA01
5B029BB02
5B029CC20
5B029CC21
5B029EE08
(57)【要約】
【課題】画像データに含まれる文字画像の正立方向を識別する処理における精度を向上させることにある。
【解決手段】画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割する領域分割部70bと、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに前記水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する確信度算出部70dと、確信度算出部70dにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定部70eと、制御部70と、を備え、制御部70は、正立方向判定部70eが正立方向の判定を行う場合には、通常の文字認識処理を行うときよりも、領域分割部70bに設定するサイズの上限値が大きくなるように制御する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
画像データに含まれる文字画像の正立方向を識別し、前記正立方向に沿って通常の文字認識処理を行う画像処理装置であって、
前記画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、前記上限値内の矩形領域に分割する領域分割部と、
前記矩形領域内の文字画像を対象に前記垂直方向の+方向、及び-方向、並びに前記水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、前記4方向の確信度を算出する確信度算出部と、
前記確信度算出部により算出された前記4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定部と、
制御部と、を備え、
前記制御部は、前記正立方向判定部が前記正立方向の判定を行う場合には、前記通常の文字認識処理を行うときよりも、前記領域分割部に設定する前記サイズの上限値が大きくなるように制御することを特徴とする画像処理装置。
【請求項2】
前記制御部は、前記サイズの実際値が前記サイズの上限値を超えない場合に、前記正立方向判定部による判定結果が不定となったときに、前記サイズの上限値がより大きくなるように制御することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記領域分割部により分割された矩形領域のうち、行または列内の矩形領域において、前記サイズの実際値が前記上限値を超える文字画像の数を計数する計数部を備え、
前記制御部は、前記計数部により計数された前記文字画像の数が行または列内で基準値以下である場合に、前記サイズの上限値がより大きくなるように制御することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記計数部は、前記領域分割部により分割された矩形領域のうち、行または列内の矩形領域において、前記サイズの実際値が前記上限値を超える文字画像のうち、当該文字画像同士が隣接している隣接数を計数し、
前記制御部は、前記計数部により計数された前記文字画像の隣接数が行または列内で初めて2つ以上になる場合に、前記サイズの上限値がより大きくなるように制御することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記制御部は、前記計数部により計数された前記文字画像の数が同一行内または同一列内で過半数ある場合に、前記サイズの上限値がより大きくなるように制御することを特徴とする請求項3に記載の画像処理装置。
【請求項6】
前記制御部は、前記サイズの実際値が前記サイズの上限値を超える文字画像を抽出し、前記抽出した文字画像が隣接する行または列に跨がっている場合に、前記サイズの上限値を引き継ぐように制御することを特徴とする請求項1に記載の画像処理装置。
【請求項7】
前記確信度算出部が、前記矩形領域内の文字画像を対象に前記垂直方向の+方向、及び-方向、並びに前記水平方向の+方向、及び-方向のうち、少なくとも2方向に沿ってそれぞれ文字認識処理を行い、少なくとも前記2方向の確信度を算出し、
前記正立方向判定部が、前記確信度算出部により算出された少なくとも前記2方向の各確信度が所定の閾値よりも大きい確信度を有する方向を正立方向として判定し、
前記制御部は、前記サイズの上限値を大きくなるように制御した場合に、前記確信度の閾値が大きくなるように制御することを特徴とする請求項1乃至6の何れか一項に記載の画像処理装置。
【請求項8】
前記正立方向判定部は、前記確信度算出部により算出された前記4方向の各確信度のうち少なくとも1つが第1閾値を越えた場合に、確信度が最大となる方向に関してのみ確信度を積算し、各方向について積算した確信度を積算回数で除算した値が、前記第1閾値と異なる第2閾値を越えたときに、当該方向を正立方向とすることを特徴とする請求項6に記載の画像処理装置。
【請求項9】
前記制御部は、前記正立方向判定部が前記正立方向の判定を行った場合に、前記通常の文字認識処理を行うときよりも、前記領域分割部に設定する前記サイズの上限値が大きくなるように制御したときに、当該大きくされた上限値に基づいて、前記通常の文字認識処理における文字サイズの上限値を決定するように制御することを特徴とする請求項1乃至7の何れか一項に記載の画像処理装置。
【請求項10】
画像データに含まれる文字画像の正立方向を識別し、前記正立方向に沿って通常の文字認識処理を行う画像処理方法であって、
前記画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、前記上限値内の矩形領域に分割する領域分割ステップと、
前記矩形領域内の文字画像を対象に前記垂直方向の+方向、及び-方向、並びに前記水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、前記4方向の確信度を算出する確信度算出ステップと、
前記確信度算出ステップにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定ステップと、
制御ステップと、を実行し、
前記制御ステップは、前記正立方向判定ステップが前記正立方向の判定を行う場合には、前記通常の文字認識処理を行うときよりも、前記領域分割ステップに設定する前記サイズの上限値が大きくなるように制御することを特徴とする画像処理方法。
【請求項11】
プロセッサを、画像データに含まれる文字画像の正立方向を識別し、前記正立方向に沿って通常の文字認識処理を行う画像処理方法として機能させるためのプログラムであって、
プロセッサを、
前記画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、前記上限値内の矩形領域に分割する領域分割ステップと、
前記矩形領域内の文字画像を対象に前記垂直方向の+方向、及び-方向、並びに前記水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、前記4方向の確信度を算出する確信度算出ステップと、
前記確信度算出ステップにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定ステップと、
制御ステップと、を備え、
前記制御ステップは、前記正立方向判定ステップが前記正立方向の判定を行う場合には、前記通常の文字認識処理を行うときよりも、前記領域分割ステップに設定する前記サイズの上限値が大きくなるように制御することとして機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【0002】
従来、文字認識処理における1つの手法では、画素数が多い高解像度の光電変換手段と画素数が少ない低解像度の光電変換手段とで画像を読み取っている。ここで、読取対象が小さい文字である場合には高解像度の光電変換手段で読み取った画像データを用い、一方、読取対象が大きな文字である場合には低解像度の光電変換手段で読み取った画像データを用いて文字認識を行う。
特許文献1には、多様な文字サイズの文字の文字認識処理を簡単な構成で精度よく行うことを目的として、画像データにおける文字認識処理の対象とする文字のサイズが所定サイズよりも大きいか否かを判定し、所定サイズよりも大きいと判定された場合には、画像データにおける少なくとも上記文字を含む領域を当該文字のサイズが上記所定サイズ以下になるように縮小処理し、縮小処理された画像データを用いて上記文字の文字認識処理を行うという技術が開示されている。
このように、特許文献1は、文字サイズに着目した文字認識処理であり、縮小処理を伴うことに起因して処理量が多くなっていた。
【0003】
ところで、スキャンして読み取った文字画像に対しては、まず文字画像の正立方向が不明であるため、文字画像の正立方向を識別しておき、その後、識別して得た正立方向に沿って通常の文字認識処理を行う必要があった。
従来、正立方向の判定処理では、例えば、スキャンした原稿に含まれる文字画像(のいくつか)を90度ずつ回転しながらOCR(Optical Character Recognition:光学的文字認識)処理を行い、最も高い認識確信度を得られる方向(読めるであろう方向)を正立方向とする方法があった。
なお、このようなOCR処理を用いる正立方向の判定処理では、スキャンして得た画像に含まれる文字画像全体に対してOCR処理を行うと処理量が多くなるため、文字画像全体から一部を切り出しておき、切り出された一部の画像を対象にして正立方向の判定処理を行うのが一般的である。
しかし、特許文献1にあっては、文字の正立方向(文字が読める向き、あるいは被写体が正立している向き)を識別することを前提とした文字認識処理ではなかった。
すなわち、特許文献1にあっては、縮小処理された画像データを用いて文字認識処理を行っていたため、正立方向の判定処理の精度が低下するといった問題があった。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の一実施形態は、上記に鑑みてなされたもので、その目的は、画像データに含まれる文字画像の正立方向を識別する処理における精度を向上させることにある。
【課題を解決するための手段】
【0005】
上記課題を解決するために、請求項1記載の発明は、画像データに含まれる文字画像の正立方向を識別し、前記正立方向に沿って通常の文字認識処理を行う画像処理装置であって、前記画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、前記上限値内の矩形領域に分割する領域分割部と、前記矩形領域内の文字画像を対象に前記垂直方向の+方向、及び-方向、並びに前記水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、前記4方向の確信度を算出する確信度算出部と、前記確信度算出部により算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定部と、制御部と、を備え、前記制御部は、前記正立方向判定部が前記正立方向の判定を行う場合には、前記通常の文字認識処理を行うときよりも、前記領域分割部に設定する前記サイズの上限値が大きくなるように制御することを特徴とする。
【発明の効果】
【0006】
本発明によれば、画像データに含まれる文字画像の正立方向を識別する処理における精度を向上させることができる。
【図面の簡単な説明】
【0007】
【
図1】本発明の一実施形態に係わる画像処理装置を含むシステムの構成を例示する図である。
【
図2】
図1に示す画像形成装置のハードウェア構成の一例を示す図である。
【
図3】
図1に示すパーソナルコンピュータのハードウェア構成図である。
【
図4】本発明の一実施形態に係わる画像処理装置の機能を表す機能ブロック図である。
【
図5】本発明の第1実施形態に係わる画像処理装置の処理を表すフローチャートである。
【
図6】(a)~(e)は本発明の各実施形態に係わる画像処理装置の処理対象となる画像を表す図である。
【
図7】本発明の第2実施形態に係わる画像処理装置の処理を表すフローチャートである。
【
図8】本発明の第3実施形態に係わる画像処理装置の処理を表すフローチャートである。
【
図9】本発明の第4実施形態に係わる画像処理装置の処理を表すフローチャートである。
【
図10】(a)~(d)は本発明の第5実施形態に係わる画像処理装置の処理を表すフローチャートである。
【発明を実施するための形態】
【0008】
以下、本発明を図面に示した実施の形態により詳細に説明する。
本発明は、画像データに含まれる文字画像の正立方向を識別する処理における精度を向上させるために、以下の構成を有する。
すなわち、本発明の画像処理装置は、画像データに含まれる文字画像の正立方向を識別し、正立方向に沿って通常の文字認識処理を行う画像処理装置であって、画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割する領域分割部と、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する確信度算出部と、確信度算出部により算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定部と、制御部と、を備え、制御部は、正立方向判定部が正立方向の判定を行う場合には、通常の文字認識処理を行うときよりも、領域分割部に設定するサイズの上限値が大きくなるように制御することを特徴とする。
以上の構成を備えることにより、画像データに含まれる文字画像の正立方向を識別する処理における精度を向上させることができる。
上記記載の本発明の特徴について、以下の図面を用いて詳細に解説する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
上記の本発明の特徴に関して、以下、図面を用いて詳細に説明する。
【0009】
<システム構成>
図1は、本発明の一実施形態に係わる画像処理装置を含むシステムの構成を例示する図である。
システム1は、画像形成装置10、2つのパーソナルコンピュータであるPC80、PC90を備え、これらが通信ネットワークNを介して相互にデータの送受信を行う構成となっている。
画像形成装置10は、原稿シートを読み取るスキャナ部31、シート上に画像を形成するプリンタ部32、及び通信機能などを備えるMFP(Multifunction Peripheral)である。スキャナ部31は、ADF(Auto Document Feeder:自動原稿送り装置)が設けられている場合はADFにセットされた原稿シートを読み取る。画像形成装置10は、スキャナ部31、プリンタ部32を用いることで、コピー、プリンタ、スキャナ、ファクシミリの各機能を利用者に提供する。また操作パネル40を介して利用者から指示を受け付け、もしくは通信ネットワークNを介してPC80、PC90から指示を受け付けることで、画像形成装置10はこれら機能を実行する。
【0010】
また、画像形成装置10は、光学文字認識(以下、必要に応じて単に「文字認識」、もしくは「OCR処理」と称する)の技術を用いて、スキャナ部31により読み取られたスキャン画像から、電子データのテキストを抽出する機能、及びそのテキストとスキャン画像をもとに,編集可能な文書(ex.マイクロソフトWord文書)を作成する機能を有している。
なお、PC80、PC90は、画像形成装置10を利用する一般ユーザが用いる端末(コンピュータ)である。
本発明に係わる画像処理装置は、
図1に示す画像形成装置10、またはPC80、PC90により構成される。
なお、PC80、PC90は、画像形成装置10を利用する一般ユーザが用いる端末(コンピュータ)である。
【0011】
<画像形成装置のハードウェア構成>
図2は、
図1に示す画像形成装置10のハードウェア構成の一例を示す図である。
図2に示されているように、画像形成装置10は、コントローラ20、近距離通信回路60、エンジン制御部30、操作パネル40、ネットワークI/F(Interface)50を備えている。
コントローラ20は、コンピュータの主要部であるCPU25a、システムメモリ(MEM-P)22、ノースブリッジ(NB)25b、サウスブリッジ(SB)24、ASIC(Application Specific Integrated Circuit)26、記憶部であるローカルメモリ(MEM-C)27、HDD(Hard Disk Drive)コントローラ28、及び記憶部であるHD29を有する。またNB25bとCPU25aとは、SoC(System on a Chip)25により統合されている。
CPU25aは、画像形成装置10の全体制御を行う制御部である。NB25bは、CPU25aと、MEM-P22、SB24とを接続するためのブリッジであり、MEM-P22に対する読み書きなどを制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタ、及びAGPターゲットとを有する。
【0012】
MEM-P22は、コントローラ20の各機能を実現させるプログラムやデータの格納用メモリであるROM22a、プログラムやデータの展開、及びメモリ印刷時の描画用メモリなどとして用いるRAM22bとからなる。なお、RAM22bに記憶されているプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0013】
SB24は、NB25bとPCIデバイス、周辺デバイスとを接続するためのブリッジである。ASIC26は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、PCIバス23、HDDコントローラ28、及びMEM-C27をそれぞれ接続するブリッジの役割を有する。このASIC26は、PCIターゲット、及びAGPマスタ、ASIC26の中核をなすアービタ(ARB)、MEM-C27を制御するメモリコントローラ、ハードウェアロジックなどにより画像データの回転などを行う複数のDMAC(Direct Memory Access Controller)、並びに、スキャナ部31、及びプリンタ部32との間でPCIバス23を介したデータ転送を行うPCIユニットからなる。なお、ASIC26には、USB(Universal Serial Bus)のインターフェースや、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインターフェースを接続するようにしてもよい。
【0014】
MEM-C27は、コピー用画像バッファ、及び符号バッファとして用いるローカルメモリである。HD29は、後述の動作を実行するためのプログラムや各種制御用のデータを事前に記憶したストレージであり、画像データの蓄積、印刷時に用いるフォントデータやフォームの蓄積を行う用途にも用いられる。HD29は、CPU25aの制御にしたがってHD29に対するデータの読出または書込を制御する。
また、近距離通信回路60には、NFC、Bluetooth(登録商標)等の通信回路60aが備わっており、ユーザが所持しているICカードとの間でのデータ通信を実現する。ユーザがICカードを通信回路60aの近傍にかざすと、近距離通信回路60は、ICカードに記録されている各種データを読み取る。
【0015】
エンジン制御部30は、スキャナ部31、及びプリンタ部32の制御を行う。操作パネル40は、現在の設定値や選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等のパネル表示部40a、並びに、濃度の設定条件などの画像形成に関する条件の設定値を受け付けるテンキー、及びコピー開始指示を受け付けるスタートキー等からなる操作パネル40bを備えている。コントローラ20は、画像形成装置10全体の制御を行い、例えば、描画、通信、操作パネル40からの入力等を制御する。スキャナ部31またはプリンタ部32には、誤差拡散やガンマ変換などの画像処理部分が含まれている。
なお、画像形成装置10は、操作パネル40のアプリケーション切り替えキーにより、ドキュメントボックス機能(スキャナ機能)、コピー機能、プリンタ機能、及びファクシミリ機能を順次に切り替えて選択することが可能となる。またドキュメントボックス機能(スキャナ機能)には、OCR処理により画像からテキストを抽出し、オフィス系の各種アプリケーションで使用可能なフォーマットに変換する機能も備えられている。
また、ネットワークI/F50は、通信ネットワークNを利用してデータ通信をするためのインターフェースである。近距離通信回路60、及びネットワークI/F50は、PCIバス23を介して、ASIC26に電気的に接続されている。
【0016】
<パーソナルコンピュータのハードウェア構成>
図3は、
図1に示すパーソナルコンピュータのハードウェア構成図である。ここでは、パーソナルコンピュータのハードウェア構成について説明する。
図3に示されているように、パーソナルコンピュータは、CPU101、ROM102、RAM103、HD104、HDD(Hard Disk Drive)コントローラ105、ディスプレイ106、外部機器接続I/F(Interface)108、ネットワークI/F109、データバス110、キーボード111、ポインティングデバイス112、DVD-RW(Digital Versatile Disk Rewritable)ドライブ114、メディアI/F116を備えている。
これらのうち、CPU101は、パーソナルコンピュータ80,90全体の動作を制御する。ROM102は、IPL等のCPU101の駆動に用いられるプログラムを記憶する。RAM103は、CPU101のワークエリアとして使用される。HD104は、プログラム等の各種データを記憶する。HDDコントローラ105は、CPU101の制御にしたがってHD104に対する各種データの読み出し又は書き込みを制御する。
【0017】
ディスプレイ106は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F108は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F109は、通信ネットワークNを利用してデータ通信をするためのインターフェースである。バスライン110は、
図3に示されているCPU101等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
また、キーボード111は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス112は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD-RWドライブ114は、着脱可能な記録媒体の一例としてのDVD-RW113に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F116は、フラッシュメモリ等の記録メディア115に対するデータの読み出し又は書き込み(記憶)を制御する。
【0018】
<正立方向の判定処理における課題>
以下、
図6を参照して説明する。
図6(a)~(e)は、本発明の各実施形態に係わる画像処理装置の処理対象となる画像を表す図である。
原稿の紙面をスキャナ部31によりスキャンして得られた画像データは、
図6(a)に示すような多値の画像データである。
OCR処理を行う場合には、
図6(a)に示すような原稿の多値の画像データを所定の閾値により二値化し、
図6(b)に示すような二値画像データを得る必要がある。
その後、
図6(c)に示すように、二値画像データに対して垂直方向y、及び水平方向xに正射影などを取って、文字と思われる画像の矩形領域を抽出するのが一般的である。
図6(c)に示すように、水平方向xの正射影を行えば、行の高さLhを得られるので、水平方向xの切り出しが可能であり、さらに垂直方向yの正射影を行えば、列の幅を得られる。さらに、
図6(d)に示すように、文字画像の矩形領域の切り出しが可能となり、「と」「ま」「と」という文字画像を分離することが可能になる。
そして、
図6(e)に示すように、物理長が大き過ぎる矩形は、文字ではない(ex.写真画像である)という仮定を設けることが多い。この場合、原稿に含まれるフォントサイズに上限値を設定する。
【0019】
この設定(フォントサイズに上限値を設定する)は、一般には正しく、写真画像を無理に1文字として誤認識することを防ぐ効果がある。
しかし、場合によっては誤認識を防げないことがある。
それは、原稿に予想外の大きなフォントだけが含まれている場合である。
例えば、プレゼンテーション用のスライドには、非常に大きな文字だけが使われるときがある。
こうした場合に、通常のフォントサイズを前提にOCR処理を行うとすると、矩形サイズの上限値で大き過ぎる画像が棄却されてしまい、OCR処理が行われない場合がある。
確かに、原稿に大きなフォントしか含まれていない場合は、原稿に含まれる文字数自体が少ない場合であるから、OCR処理が行われなくても、影響自体は少ないとは言える。つまり、写真画像を無理に1文字として誤認識することを防ぐ効果の方を優先することも可能である。
【0020】
しかし、OCR処理を文字認識そのものではなく、正立方向の判定処理のために使う場合は、前記除外の結果、原稿の天地が判別できない(不定となる)ことがある。原稿の天地が識別できない場合は、初期の状態を正立方向と仮定するが、その仮定が誤っている場合は、(前記写真画像の誤認識と比較にならない)原稿全体のOCR処理結果を誤るという大きな弊害が生じる。
つまり、正立方向の判定処理のためにOCR処理を行う場合には、前提となるフォントサイズの上限値を変更した方がよいと考えられる。
また、正立方向の判定処理のために変更したフォントサイズによって、OCR処理による高い確信度が得られた場合には、その原稿は大きなフォントで構成されている可能性が高いと理解できるため、正立方向の判定処理後に頁全体の文字画像にOCR処理を施す場合にも、前記上限値を変更した方が良い。
【0021】
すなわち、以下の手順によりOCR処理を行う。
(1)ページ内をサンプリングしてOCR処理を行い、原稿の+x方向、-x方向、+y方向、-y方向のそれぞれの確信度を算出して、最高の確信度に対応する方向を正立方向であると判定する。この結果、原稿の正立方向を得る。
(2)ページ内全面に対して、正立方向に沿ってOCR処理を行う。
OCR処理では、認識精度を向上するために、上述する矩形領域のサイズに上限値を設ける。その上限値は(同じOCR処理でも)用途毎に変更する必要がある。
【0022】
<機能ブロック図>
図4は、本発明の一実施形態に係わる画像処理装置の機能を表す機能ブロック図である。
画像処理装置は、例えば、
図3に示すパーソナルコンピュータのHD104に、以下に説明する処理を実行するためのプログラムをインストールしておき、CPUがHD104から読み出したプログラムを実行することにより構成される。
なお、画像処理装置は、
図2に示す画像形成装置10のHD29に、以下に説明する処理を実行するためのプログラムをインストールしておき、CPU25aがHD29から読み出したプログラムを実行することにより構成されてもよい。
【0023】
図4に示すように、画像処理装置は制御部70を備え、さらに制御部70は、二値画像入力部70a、領域分割部70b、計数部70c、確信度算出部70d、正立方向判定部70eを備えている。
画像処理装置は、画像データに含まれる文字画像の正立方向を識別し、正立方向に沿って通常の文字認識処理を行う。
原稿をスキャナ部31で読み取って取得した多値画像データを所定の閾値により二値化したデータが二値画像入力部70aに入力される。
二値画像入力部70aは、二値化したデータを入力して、RAM22bの第1ワークエリアに二値画像を展開する。
【0024】
領域分割部70bは、二値の画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割する。
計数部70cについては、後述する。
確信度算出部70dは、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する。
正立方向判定部70eは、確信度算出部70dにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する。
制御部70は、正立方向判定部70eが正立方向の判定を行う場合には、通常の文字認識処理を行うときよりも、領域分割部70bに設定するサイズの上限値が大きくなるように制御する。
制御部70は、サイズの実際値がサイズの上限値を超えない場合に、正立方向判定部70eによる判定結果が不定となったときに、サイズの上限値がより大きくなるように制御する。
【0025】
計数部70cは、領域分割部70bにより分割された矩形領域のうち、行または列内の矩形領域において、サイズの実際値が上限値を超える文字画像の数を計数する。
制御部70は、計数部70cにより計数された文字画像の数が行または列内で基準値以下である場合に、サイズの上限値がより大きくなるように制御する。
【0026】
計数部70cは、領域分割部70bにより分割された矩形領域のうち、行または列内の矩形領域において、サイズの実際値が上限値を超える文字画像のうち、当該文字画像同士が隣接している隣接数を計数する。
制御部70は、計数部70cにより計数された文字画像の隣接数が行または列内で初めて2つ以上になる場合に、サイズの上限値がより大きくなるように制御することを特徴とする。
【0027】
制御部70は、計数部70cにより計数された文字画像の数が同一行内または同一列内で過半数ある場合に、サイズの上限値がより大きくなるように制御する。
【0028】
制御部70は、サイズの実際値がサイズの上限値を超える文字画像を抽出し、抽出した文字画像が隣接する行または列に跨がっている場合に、サイズの上限値を引き継ぐように制御する。
【0029】
確信度算出部70dが、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向のうち、少なくとも2方向に沿ってそれぞれ文字認識処理を行い、少なくとも2方向の確信度を算出する。
正立方向判定部70eが、確信度算出部70dにより算出された少なくとも2方向の各確信度が所定の閾値よりも大きい確信度を有する方向を正立方向として判定する。
制御部70は、サイズの上限値を大きくなるように制御した場合に、確信度の閾値が大きくなるように制御する。
【0030】
正立方向判定部70eは、確信度算出部70dにより算出された4方向の各確信度のうち少なくとも1つが第1閾値を越えた場合に、確信度が最大となる方向に関してのみ確信度を積算し、各方向について積算した確信度を積算回数で除算した値が、第1閾値と異なる第2閾値を越えたときに、当該方向を正立方向とする。
【0031】
制御部70は、正立方向判定部70eが正立方向の判定を行った場合に、通常の文字認識処理を行うときよりも、領域分割部70bに設定するサイズの上限値が大きくなるように制御したときに、当該大きくされた上限値に基づいて、通常の文字認識処理における文字サイズの上限値を決定するように制御する。
【0032】
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウエアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
【0033】
<第1実施形態>
次に、
図5は、本発明の第1実施形態に係わる画像処理装置(第1態様、第2態様、第7態様、第8態様)の処理を表すフローチャートである。なお、
図5に示すステップS306、S307は、特開2000-113103公報に記載された技術的事項と同様のものである。
図5においては、識別不能である場合に見直しを行う処理(ステップS307~S311)を特徴とする。
図5において、ステップS301では、二値画像入力部70aは、二値画像を入力する。なお、原稿をスキャナ部31で読み取って取得した多値画像データは、
図6(a)に示すような多値の画像データであり、この多値画像データを所定の閾値により二値化したデータを二値画像入力部70aに入力して、RAM22bの第1ワークエリアに二値画像を展開する。
ステップS302では、領域分割部70bは、RAM22bの第1ワークエリアに展開された画像に対して全行切り出し処理を行い、切り出された画像をRAM22bの第2ワークエリアに記憶する。
【0034】
ステップS303では、領域分割部70bは、RAM22bの第2ワークエリアにおいて、切り出された画像のうち、高さがLh(上限値)を越える行を除外する。
ステップS304では、領域分割部70bは、RAM22bの第2ワークエリアにおいて、除外後の全行に対して文字の矩形領域を切り出し、切り出された画像をRAM22bの第3ワークエリアに記憶する。
ステップS305では、領域分割部70bは、RAM22bの第3ワークエリアにおいて、幅がCw(上限値)を越える矩形領域を除外する。ステップS305を経ることで、入力画像に含まれるOCR処理すべき全文字の矩形領域を獲得して、RAM22bの第3ワークエリアに記憶することができる。
ステップS303~S305において、領域分割部70bは、画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割することができる。
【0035】
<二値画像の領域分割について>
ここで、ステップS301~S302における二値画像の領域分割について説明する。
図6(a)は、多値画像データG1の一例である。
図6(b)は、二値化画像G2の一例である。多値画像データを閾値と比較して二値化画像を生成する。
図6(c)は、その水平方向xに正射影(線分α1)をとれば、行の切り出しが可能となる。
図6(c)に示す例である場合、線分α1の長さは「ま」の高さとなり、これが本実施形態でいう行の高さLhとなる。
さらに、
図6(c)において、垂直方向の射影(線分β1、β2、β3)をとることで、
図6(d)に示すように、文字の矩形領域R1,R2,R3の切り出しが可能である。この場合、各文字の高さは再度水平方向xの正射影を取り直すことで求められる。
【0036】
確信度算出部70dは、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する。
その後、ステップS306では、正立方向判定部70eは、文字画像の単位で4方向(±x方向、±y方向)のOCR処理、及び確信度の比較を行い、確信度(Confidence)の最大値が所定値Cth=0.8以上である場合に、該確信度最大の方向に1カウントを加え(特開2000-113103公報に記載された「投票」を行い)、4方向の各方向のカウント数を累積カウント数で除算してカウント数の和を1に正規化する。
【0037】
【0038】
ここでいう確信度とは、前記特開2000-113103公報に記載された技術的事項と同様に、OCR処理の結果がどの程度確からしいかを表わす量であり、確信度は0~1の数値で表わされる。典型的には、前記切り出された各文字画像の画素数を正規化してから特徴量を抽出し、その特徴量とパターン辞書とのマッチングを行なうことにより、類似度(ユークリッド距離やマララノビス距離)を0~1に換算したものである。
【0039】
そして、ステップS307で、正立方向判定部70eは、カウント数が少なくとも3つ以上ある場合に、累積カウント結果を正規化した最大値と天地識別閾値Dth=0.85とを比較する。累積カウント結果を正規化した最大値が天地識別閾値Dth以上である場合に、その最大値の方向を正立方向として決定して、正立方向の判定処理を終了する。
ここで、少なくとも初期値としては、確信度の閾値Cth<正立方向の判定処理の判断閾値Dthである(第8態様)。
文字に関する確信度は、1文字分だけでは信頼性が不足する。一方、極端に高い確信度は信用できるため、複数文字分の確信度を正規化した値に対する閾値(天地識別閾値)を、1文字に対する確信度閾値よりも大きく設定することで、正立方向の判定処理の精度を確保することができる(第8態様の効果)。
【0040】
累積カウント結果を正規化した最大値が天地識別閾値Dth未満である場合に、ステップS308に進み、正立方向判定部70eは、未処理の矩形が残っているか否かを判断する。
正規化した最大値が天地識別閾値Dth未満である場合に、未処理の矩形が残っている場合に(ステップS308でYes)、ステップS309に進み、次の文字の矩形領域を選択してステップS306へ戻り、前記カウントを繰り返す。矩形選択はラスター順に行われる。
高さLh以上の全ての行についての文字の矩形領域を処理しても、前記カウント数が3未満である場合や、前記正規化した最大値が所定値未満である場合には、正立方向は不定となり、ステップS310に移る(請求項2)。
【0041】
ステップS310では、正立方向判定部70eは、本実施形態の中心となる部分であり、Lhが画像高さ未満かつCw(上限値)が画像幅未満か否かを判断する。
Lhが画像高さ未満かつCwが画像幅未満である場合には(ステップS310でYes)、ステップS311に進み、Lh=Lh*1.5、Cw=Cw*1.5、として行高さLh、及び文字幅Cwの上限値を大きくし(第1態様)、さらにCth=Cth*1.1(ただしCthの上限値は1とする)として、投票に足る確信度の閾値を大きくして(第7態様)ステップS303に戻り、ステップS303以降の処理を再度実行する。
【0042】
これにより、当初想定よりも大きな文字の矩形領域を投票の対象とすることができるため、正立不定である場合を少なくでき、結果的に正立方向の判定処理の精度を向上することができる(第1態様の効果)。
また、正立方向の判定処理が不定になった場合に初めて矩形サイズを大きく設定するため、想定内である場合には影響を与えず、想定外である場合だけに対して適応的な処理が可能になる(第2態様の効果)。
なお、Cth =Cth*1.1と同時に、Dth =Dth*1.05などとDthを更新し、Cth<Dthをなるべく維持するようにしてもよい。
一方、Lhが画像高さ未満かつCwが画像幅未満である場合には(ステップS310でNo)、ステップS312に進み、最終的に識別不能とする。
【0043】
また本実施形態では、当初想定よりも大きな文字の矩形領域を投票の対象とする分、確信度の閾値を高くすることで、実際には文字ではなく写真である矩形(本来文字らしくない矩形=確信度の低いであろう矩形)が投票の対象となる弊害を避けることができる。これらの結果、前記弊害を軽減した状態で、文字の矩形領域の上限値を大きく設定することができ、結果的に正立方向の判定処理の精度を向上することができる(第7態様の効果)。
【0044】
<第2実施形態>
次に、
図7は、本発明の第2実施形態に係わる画像処理装置(第1態様、第3態様、第6態様)の処理を表すフローチャートである。
図7においては、行内の矩形領域の数が不足している場合に見直しを行う処理(ステップS405~S412)を特徴とする。
図7において、ステップS401では、二値画像入力部70aは、二値画像を入力する。なお、原稿をスキャナ部31で読み取って取得した多値画像データは、
図6(a)に示すような多値の画像データであり、この多値画像データを所定の閾値により二値化したデータを二値画像入力部70aに入力して、RAM22bの第1ワークエリアに二値画像を展開する。
ステップS402では、領域分割部70bは、RAM22bの第1ワークエリアに展開された画像に対して全行切り出し処理を行い、切り出された画像をRAM22bの第2ワークエリアに記憶する。
ステップS403では、領域分割部70bは、文字の幅の上限値Cw、文字の高さの上限値Ch、確信度の閾値Cthを初期化する。
【0045】
ステップS404では、領域分割部70bは、RAM22bの第2ワークエリアにおいて、行毎に、文字幅>Cw、文字高さ>Chの矩形領域を除外することで、1行内でOCR処理すべき全文字についての矩形領域を確定し、その画像をRAM22bの第3ワークエリアに記憶する。
ステップS405では、領域分割部70bは、当該行内でOCR処理すべき文字の矩形領域の数が所定値未満か否かを判定する(第3態様)。ここで、文字の矩形領域の数が所定値未満ではない場合に、ステップS408に進む。一方、文字の矩形領域の数が所定値未満である場合に、ステップS406に進む。
ステップS406では、領域分割部70bは、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満か否かを比較する。ここで、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満ではない場合に、ステップS408に進む。一方、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満である場合に、ステップS407に進む。
【0046】
ステップS407では、領域分割部70bは、Cw=Cw*1.5、Ch=Ch*1.5、Cth=Cth*1.1として設定する(第1態様)。
このように、行内で処理対象となる文字の矩形領域数を予め計数し、矩形数が少ない場合には矩形サイズの上限値を大きく設定することで、正立方向の判定処理に十分な矩形数を確保できる場合が増え、正立不定である場合を少なくできる結果、正立方向の判定処理の精度を向上することができる(第3態様の効果)。
【0047】
確信度算出部70dは、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する。
その後、ステップS408では、正立方向判定部70eは、文字画像の単位で4方向(±x方向、±y方向)のOCR処理、及び確信度の比較を行い、確信度(Confidence)の最大値が所定値Cth=0.8以上である場合に、該確信度最大の方向に1カウントを加え(特開2000-113103公報に記載された「投票」を行い)、4方向の各方向のカウント数を累積カウント数で除算してカウント数の和を1に正規化する。
【0048】
そして、ステップS409では、正立方向判定部70eは、カウント数が少なくとも3つ以上ある場合に、累積カウント結果を正規化した最大値と天地識別閾値Dth=0.85とを比較する。累積カウント結果を正規化した最大値が天地識別閾値Dth以上である場合に、その最大値の方向を正立方向として決定して、正立方向の判定処理を終了する。
一方、累積カウント結果を正規化した最大値が天地識別閾値Dth未満である場合に、ステップS410に進み、正立方向判定部70eは、未処理の矩形が残っているか否かを判断する。
正規化した最大値が天地識別閾値Dth未満である場合に、未処理の矩形が残っている場合に(ステップS410でYes)、ステップS411に進み、次の文字の矩形領域を選択してステップS408へ戻り、前記カウントを繰り返す。矩形選択はラスター順に行われる。
【0049】
また、識別が終了しない場合(S409、No)に、ステップS410に進み、行内に文字の矩形領域が残っているか否かを判断する。ここで、行内に文字の矩形領域が残っていないとき(S410、No)に、画像中にはまだ行が残っているときには(S412、Yes)、ステップS404に進む。
これにより、大きい値に更新された上限値Cw、Chは、次の行に引き継がれる(第6態様)。
行間において、初期化ではなく引継ぎをすることによって、効率的に上限値を更新することができる(第6態様の効果)。
一方、ステップS412において、画像中には行が残っていないときには(S412、No)、ステップS413に進み、最終的に識別不能とする。
【0050】
<第3実施形態>
次に、
図8は、本発明の第3実施形態に係わる画像処理装置(第1態様、第4態様)の処理を表すフローチャートである。
図8においては、行内で連続した矩形領域が除外された場合に見直しを行う処理(ステップS505~S512)を特徴とする。
図8において、ステップS501では、二値画像入力部70aは、二値画像を入力する。なお、原稿をスキャナ部31で読み取って取得した多値画像データは、
図6(a)に示すような多値の画像データであり、この多値画像データを所定の閾値により二値化したデータを二値画像入力部70aに入力して、RAM22bの第1ワークエリアに二値画像を展開する。
ステップS502では、領域分割部70bは、RAM22bの第1ワークエリアに展開された画像に対して全行切り出し処理を行い、切り出された画像をRAM22bの第2ワークエリアに記憶する。
ステップS503では、領域分割部70bは、文字の幅の上限値Cw、文字の高さの上限値Chを初期化する。
【0051】
ステップS504では、領域分割部70bは、RAM22bの第2ワークエリアにおいて、行毎に、文字幅>Cw、文字高さ>Chの矩形領域を除外することで、1行内でOCR処理すべき全文字についての矩形領域を確定し、その画像をRAM22bの第3ワークエリアに記憶する。
ステップS505では、領域分割部70bは、当該行内で隣接した文字の矩形領域がともに除外されたか否かを判定する(第4態様)。ここで、当該行内で隣接した文字の矩形領域がともに除外されたていない場合に、ステップS508に進む。一方、当該行内で隣接した文字の矩形領域がともに除外された場合に、ステップS506に進む。
ステップS506では、領域分割部70bは、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満か否かを比較する。ここで、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満ではない場合に、ステップS508に進む。一方、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満である場合に、ステップS507に進む。
【0052】
ステップS507では、領域分割部70bは、Cw=Cw*1.5、Ch=Ch*1.5、Cth=Cth*1.1として設定する。
このように、行内で処理対象となる文字の矩形領域数を予め計数し、矩形数が少ない場合には矩形サイズの上限値を大きく設定することで、正立方向の判定処理に十分な矩形数を確保できる場合が増え、正立不定である場合を少なくできる結果、正立方向の判定処理の精度を向上することができる。
【0053】
確信度算出部70dは、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する。
その後、ステップS508では、正立方向判定部70eは、文字画像の単位で4方向(±x方向、±y方向)のOCR処理、及び確信度の比較を行い、確信度(Confidence)の最大値が所定値Cth=0.8以上である場合に、該確信度最大の方向に1カウントを加え(特開2000-113103公報に記載された「投票」を行い)、4方向の各方向のカウント数を累積カウント数で除算してカウント数の和を1に正規化する。
【0054】
そして、ステップS509では、正立方向判定部70eは、カウント数が少なくとも3つ以上ある場合に、累積カウント結果を正規化した最大値と天地識別閾値Dth=0.85とを比較する。累積カウント結果を正規化した最大値が天地識別閾値Dth以上である場合に、その最大値の方向を正立方向として決定して、正立方向の判定処理を終了する。
一方、累積カウント結果を正規化した最大値が天地識別閾値Dth未満である場合に、ステップS510に進み、正立方向判定部70eは、未処理の矩形が残っているか否かを判断する。
正規化した最大値が天地識別閾値Dth未満である場合に、未処理の矩形が残っている場合に(ステップS510でYes)、ステップS511に進み、次の文字の矩形領域を選択してステップS508へ戻り、前記カウントを繰り返す。矩形選択はラスター順に行われる。
【0055】
また、識別が終了しない場合(S509、No)に、ステップS510に進み、行内に文字の矩形領域が残っているか否かを判断する。ここで、行内に文字の矩形領域が残っていないとき(S510、No)に、画像中にはまだ行が残っているときには(S512、Yes)、ステップS504に進む。
これにより、大きい値に更新された上限値Cw、Chは、次の行に引き継がれる。
行間において、初期化ではなく引継ぎをすることによって、効率的に上限値を更新することができる。
一方、ステップS512において、画像中には行が残っていないときには(S512、No)、ステップS513に進み、最終的に識別不能とする。
【0056】
ステップS505において、隣接した2つの矩形領域が除外された場合には、画像中の実際の文字サイズが想定よりも大きい可能性があるため、矩形領域のサイズの上限値を大きく設定することで、正立方向の判定処理に十分な矩形数を確保できる場合が増え、正立方向が不定である場合を少なくできる。この結果、正立方向の判定処理の精度を向上することができる(第4態様の効果)。
【0057】
<第4実施形態>
次に、
図9は、本発明の第4実施形態に係わる画像処理装置(第1態様、第5態様)の処理を表すフローチャートである。
図9においては、行内で過半数の矩形領域が除外された場合に見直しを行う処理(ステップS605~S612)を特徴とする。
図9において、ステップS601では、二値画像入力部70aは、二値画像を入力する。なお、原稿をスキャナ部31で読み取って取得した多値画像データは、
図6(a)に示すような多値の画像データであり、この多値画像データを所定の閾値により二値化したデータを二値画像入力部70aに入力して、RAM22bの第1ワークエリアに二値画像を展開する。
ステップS602では、領域分割部70bは、RAM22bの第1ワークエリアに展開された画像に対して全行切り出し処理を行い、切り出された画像をRAM22bの第2ワークエリアに記憶する。
ステップS603では、領域分割部70bは、文字の幅の上限値Cw、文字の高さの上限値Chを初期化する。
【0058】
ステップS604では、領域分割部70bは、RAM22bの第2ワークエリアにおいて、行毎に、文字幅>Cw、文字高さ>Chの矩形領域を除外することで、1行内でOCR処理すべき全文字についての矩形領域を確定し、その画像をRAM22bの第3ワークエリアに記憶する。
ステップS605では、領域分割部70bは、当該行内で過半数の文字の矩形領域が除外されたか否かを判定する(第4態様)。ここで、当該行内で過半数の文字の矩形領域が除外されたていない場合に、ステップS608に進む。一方、当該行内で過半数の文字の矩形領域が除外された場合に、ステップS606に進む。
ステップS606では、領域分割部70bは、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満か否かを比較する。ここで、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満ではない場合に、ステップS608に進む。一方、Cwが画像幅の1/2未満、かつChが画像幅の1/2未満である場合に、ステップS607に進む。
【0059】
ステップS607では、領域分割部70bは、Cw=Cw*1.5、Ch=Ch*1.5、Cth=Cth*1.1として設定する。
このように、行内で処理対象となる文字の矩形領域数を予め計数し、矩形数が少ない場合には矩形サイズの上限値を大きく設定することで、正立方向の判定処理に十分な矩形数を確保できる場合が増え、正立不定である場合を少なくできる結果、正立方向の判定処理の精度を向上することができる。
【0060】
確信度算出部70dは、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する。
その後、ステップS608では、正立方向判定部70eは、文字画像の単位で4方向(±x方向、±y方向)のOCR処理、及び確信度の比較を行い、確信度(Confidence)の最大値が所定値Cth=0.8以上である場合に、該確信度最大の方向に1カウントを加え(特開2000-113103公報に記載された「投票」を行い)、4方向の各方向のカウント数を累積カウント数で除算してカウント数の和を1に正規化する。
【0061】
そして、ステップS609では、正立方向判定部70eは、カウント数が少なくとも3つ以上ある場合に、累積カウント結果を正規化した最大値と天地識別閾値Dth=0.85とを比較する。累積カウント結果を正規化した最大値が天地識別閾値Dth以上である場合に、その最大値の方向を正立方向として決定して、正立方向の判定処理を終了する。
一方、累積カウント結果を正規化した最大値が天地識別閾値Dth未満である場合に、ステップS610に進み、正立方向判定部70eは、未処理の矩形が残っているか否かを判断する。
正規化した最大値が天地識別閾値Dth未満である場合に、未処理の矩形が残っている場合に(ステップS610でYes)、ステップS611に進み、次の文字の矩形領域を選択してステップS608へ戻り、前記カウントを繰り返す。矩形選択はラスター順に行われる。
【0062】
また、識別が終了しない場合(S609、No)に、ステップS610に進み、行内に文字の矩形領域が残っているか否かを判断する。ここで、行内に文字の矩形領域が残っていないとき(S610、No)に、画像中にはまだ行が残っているときには(S612、Yes)、ステップS604に進む。
これにより、大きい値に更新された上限値Cw、Chは、次の行に引き継がれる。
行間において、初期化ではなく引継ぎをすることによって、効率的に上限値を更新することができる。
一方、ステップS612において、画像中には行が残っていないときには(S612、No)、ステップS613に進み、最終的に識別不能とする。
【0063】
この際、当該行内で過半数の矩形が除外されたかどうかを検証し(S605)(第5態様)、当該行内で過半数の矩形が除外された場合には、Cwが画像幅の1/2未満かつChが画像幅の1/2未満かどうか比較し(S606)、Cwが画像幅の1/2未満かつChが画像幅の1/2未満である場合にはステップS607でCw=Cw*1.5、Ch=Ch*1.5、Cth =Cth*1.1とする(第1態様)。
過半数の矩形が除外された場合には、画像中の実際の文字サイズが想定よりも大きい可能性が高いため、矩形サイズの上限値を大きく設定することで、正立方向の判定処理に十分な矩形数を確保できる場合がより増え、正立方向が不定である場合を少なくできる。この結果、正立方向の判定処理の精度を向上することができる(第5態様の効果)。
【0064】
<第5実施形態>
次に、
図10(a)~
図10(d)は本発明の第5実施形態に係わる画像処理装置(第9態様)の処理を表すフローチャートである。
図10においては、正立方向の判定処理時の矩形領域のサイズを用いて、画像全体のOCR処理を実行することを特徴とする。
<基本例>
図10(a)は本発明の第5実施形態に係わる画像処理装置(第9態様)の処理を表すフローチャートの基本例である。
図10(a)において、ステップS701Aでは、二値画像を入力する。
次に、ステップS702Aでは、全行切り出し処理を行う。
ステップS703Aでは、制御部70は、上述したステップS300での正立方向の判定処理を行う。
【0065】
ステップS704Aでは、上述したステップS300による処理を終了した後のLh,Cwの値を保持する。
ステップS705Aでは、天地識別できたか否かを判断する。ここで、天地識別ができなかった場合(No)に、正立方向が不定であることとし、ステップS707Aに進み、一方、天地識別ができた場合(Yes)に、正立方向が特定できたこととし、ステップS706Aに進む。
ステップS706Aでは、識別した正立方向に画像全体を回転させ、全行切り出し処理を行う。
ステップS707Aでは、上述したステップS300による処理を終了した後のLh,Cwの値を用いて、全行を対象にしてOCR処理の対象外の文字の矩形領域を除外する。
ステップS708Aでは、除外後の文字の矩形領域の全てに対してOCR処理を実行する。
【0066】
図10(a)において、本実施形態では、ステップS703AにおいてステップS300を実行した後にLh、Cwの値を保持する(ステップS704A)。正立方向の判定処理ができた場合(ステップS705A、Yes)には、識別した正立方向に画像全体を回転させ、全行切り出し処理を行う(ステップS706A)。
その後、処理終了後のLh、Cwの値を用いて、全行を対象にOCR処理対象外の文字の矩形領域を除外し(ステップS707A)、除外後の文字の矩形領域の全てに対してOCR処理を実行する(ステップS708A)(第9態様)。
【0067】
<変形例1>
図10(b)は本発明の第5実施形態に係わる画像処理装置(第9態様)の処理を表すフローチャートの変形例1である。
図10(b)に示すステップS701B~S708Bは、それぞれ
図10(a)に示すステップS701A~S708Aを変形したものである。
図10(b)において、本実施形態では、ステップS703BにおいてステップS400を実行した後にCw、Chの値を保持する(ステップS704B)。正立方向の判定処理ができた場合(ステップS705B、Yes)には、識別した正立方向に画像全体を回転させ、全行切り出し処理を行う(ステップS706B)。
その後、処理終了後のCw、Chの値を用いて、全行を対象にOCR処理対象外の文字の矩形領域を除外し(ステップS707B)、除外後の文字の矩形領域の全てに対してOCR処理を実行する(ステップS708B)(第9態様)。
【0068】
<変形例2>
図10(c)は本発明の第5実施形態に係わる画像処理装置(第9態様)の処理を表すフローチャートの変形例2である。
図10(c)に示すステップS701C~S708Cは、それぞれ
図10(a)に示すステップS701A~S708Aを変形したものである。
図10(c)において、本実施形態では、ステップS703CにおいてステップS500を実行した後にCw、Chの値を保持する(ステップS704C)。正立方向の判定処理ができた場合(ステップS705C、Yes)には、識別した正立方向に画像全体を回転させ、全行切り出し処理を行う(ステップS706C)。
その後、処理終了後のCw、Chの値を用いて、全行を対象にOCR処理対象外の文字の矩形領域を除外し(ステップS707C)、除外後の文字の矩形領域の全てに対してOCR処理を実行する(ステップS708C)(第9態様)。
【0069】
<変形例3>
図10(d)は本発明の第5実施形態に係わる画像処理装置(第9態様)の処理を表すフローチャートの変形例3である。
図10(d)に示すステップS701D~S708Dは、それぞれ
図10(a)に示すステップS701A~S708Aを変形したものである。
図10(d)において、本実施形態では、ステップS703DにおいてステップS600を実行した後にCw、Chの値を保持する(ステップS704D)。正立方向の判定処理ができた場合(ステップS705D、Yes)には、識別した正立方向に画像全体を回転させ、全行切り出し処理を行う(ステップS706D)。
その後、処理終了後のCw、Chの値を用いて、全行を対象にOCR処理対象外の文字の矩形領域を除外し(ステップS707D)、除外後の文字の矩形領域の全てに対してOCR処理を実行する(ステップS708D)(第9態様)。
【0070】
このように、正立方向の判定処理時に見直した文字の矩形領域のサイズの上限値を、後段のOCR処理時にも利用する構成としたので、正立方向の判定処理が不定とならなかった場合には見直された矩形サイズが妥当である可能性が高く、後段のOCR処理時に(誤って)除外される文字を低減することができる。この結果、OCR処理の認識率を向上することができる(第9態様の効果)。
なお、OCR処理の対象となる文字の矩形領域のサイズに上限値を設ける方法は、本実施形態のようにOCR処理を行う前段で行う方法だけでなく、OCR処理の中で行うことも可能である。すなわち、OCR処理本体(ex.OCR処理ライブラリ)にはすべてのサイズの矩形が入力されるが、該本体の中で所定サイズ以上の矩形領域の処理は行わない方法である。こうした場合、OCR処理本体に対しては、処理の対象とすべき矩形領域の上限値がパラメータとして渡されることが通例であり、見直した後の上限値が、パラメータとして渡されるように構成すればよい。
なお、
図5~10は、第10態様(第1態様~第9態様)の実施形態であって、第1態様~第9態様に対応した効果を奏するシステムを実現できる(第10態様の効果)。また以上の記載により、第11態様が容易に実施可能であることや、その効果も明らかである。
【0071】
<本実施形態の態様例の作用、効果のまとめ>
<第1態様>
本態様の画像処理装置は、画像データに含まれる文字画像の正立方向を識別し、正立方向に沿って通常の文字認識処理を行う画像処理装置であって、画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割する領域分割部70bと、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する確信度算出部70dと、確信度算出部70dにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定部70eと、制御部70と、を備え、制御部70は、正立方向判定部70eが正立方向の判定を行う場合には、通常の文字認識処理を行うときよりも、領域分割部70bに設定するサイズの上限値が大きくなるように制御することを特徴とする。
本態様によれば、領域分割部70bに設定するサイズの上限値が大きくなるように制御することができるので、当初想定よりも大きな文字の矩形領域を投票の対象とすることができるため、正立方向の判定が不定になる場合を少なくでき、結果的に正立方向を識別する処理の精度を向上させることができる。
【0072】
<第2態様>
本態様の制御部70は、サイズの実際値がサイズの上限値を超えない場合に、正立方向判定部70eによる判定結果が不定となったときに、サイズの上限値がより大きくなるように制御することを特徴とする。
本態様によれば、正立方向判定部70eによる判定結果が不定となったときに、初めて矩形領域のサイズを大きく設定するため、当初想定内である場合には影響を与えず、一方、当初想定外である場合にだけ、サイズの上限値がより大きくなるように制御するという適応的な処理が可能になる。
【0073】
<第3態様>
本態様の画像処理装置は、領域分割部70bにより分割された矩形領域のうち、行または列内の矩形領域において、サイズの実際値が上限値を超える文字画像の数を計数する計数部70cを備え、制御部70は、計数部70cにより計数された文字画像の数が行または列内で基準値以下である場合に、サイズの上限値がより大きくなるように制御することを特徴とする。
本態様によれば、計数部70cにより計数された文字画像の数が行または列内で基準値以下である場合に、サイズの上限値がより大きくなるように制御することで、正立方向の判定に十分な矩形領域の数を確保できる場合が増え、判定結果が不定になる場合を少なくできる。この結果、正立方向を識別する処理の精度を向上することができる。
【0074】
<第4態様>
本態様の画像処理装置において、計数部70cは、領域分割部70bにより分割された矩形領域のうち、行または列内の矩形領域において、サイズの実際値が上限値を超える文字画像のうち、当該文字画像同士が隣接している隣接数を計数し、
制御部70は、計数部70cにより計数された文字画像の隣接数が行または列内で初めて2つ以上になる場合に、サイズの上限値がより大きくなるように制御することを特徴とする。
本態様によれば、ステップS505において、隣接した2つの矩形領域がともに除外された場合には、画像中の実際の文字サイズが想定よりも大きい可能性があるため、矩形領域のサイズの上限値を大きく設定することで、正立方向を識別するのに十分な矩形領域の数を確保できる場合が増え、正立方向が不定である場合を少なくできる。この結果、正立方向を識別する処理の精度を向上することができる。
【0075】
<第5態様>
本態様の制御部70は、計数部70cにより計数された文字画像の数が同一行内または同一列内で過半数ある場合に、サイズの上限値がより大きくなるように制御することを特徴とする。
本態様によれば、過半数の矩形領域が除外された場合には、画像中の実際の文字サイズが想定よりも大きい可能性が高いため、矩形領域のサイズの上限値を大きく設定することで、正立方向を識別する処理に十分な矩形領域の数を確保できる場合がより増え、正立方向が不定である場合を少なくできる。この結果、正立方向を識別する処理の精度を向上することができる。
【0076】
<第6態様>
本態様の制御部70は、サイズの実際値がサイズの上限値を超える文字画像を抽出し、抽出した文字画像が隣接する行または列に跨がっている場合に、サイズの上限値を引き継ぐように制御することを特徴とする。
本態様によれば、文字画像が隣接する行または列に跨がっている場合に、サイズの上限値を引き継ぐように制御することで、効率的に上限値を更新することができる。
【0077】
<第7態様>
本態様の画像処理装置において、確信度算出部70dが、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向のうち、少なくとも2方向に沿ってそれぞれ文字認識処理を行い、少なくとも2方向の確信度を算出し、
正立方向判定部70eが、確信度算出部70dにより算出された少なくとも2方向の各確信度が所定の閾値よりも大きい確信度を有する方向を正立方向として判定し、
制御部70は、サイズの上限値を大きくなるように制御した場合に、確信度の閾値が大きくなるように制御することを特徴とする。
本態様によれば、当初想定よりも大きな文字の矩形領域を投票の対象とする分、確信度の閾値を高くすることで、実際には文字ではなく写真である矩形(本来文字らしくない矩形=確信度の低いであろう矩形)が投票の対象となる弊害を避けることができる。これらの結果、弊害を軽減した状態で、文字の矩形領域の上限値を大きく設定することができ、結果的に正立方向の判定処理の精度を向上することができる。
【0078】
<第8態様>
本態様の正立方向判定部70eは、確信度算出部70dにより算出された4方向の各確信度のうち少なくとも1つが第1閾値を越えた場合に、確信度が最大となる方向に関してのみ確信度を積算し、各方向について積算した確信度を積算回数で除算した値が、第1閾値と異なる第2閾値を越えたときに、当該方向を正立方向とすることを特徴とする。
本態様によれば、文字に関する確信度は、1文字分だけでは信頼性が不足する。一方、極端に高い確信度は信用できるため、複数文字分の確信度を正規化した値に対する閾値(天地識別閾値)を、1文字に対する確信度閾値よりも大きく設定することで、正立方向の判定処理の精度を確保することができる。
【0079】
<第9態様>
本態様の制御部70は、正立方向判定部70eが正立方向の判定を行った場合に、通常の文字認識処理を行うときよりも、領域分割部70bに設定するサイズの上限値が大きくなるように制御したときに、当該大きくされた上限値に基づいて、通常の文字認識処理における文字サイズの上限値を決定するように制御することを特徴とする。
本態様によれば、正立方向の判定処理時に見直した文字の矩形領域のサイズの上限値を、後段のOCR処理時にも利用する構成としたので、正立方向の判定処理が不定とならなかった場合には見直された矩形サイズが妥当である可能性が高く、後段のOCR処理時に(誤って)除外される文字を低減することができる。この結果、OCR処理の認識率を向上することができる。
【0080】
<第10態様>
本態様の画像処理方法は、画像データに含まれる文字画像の正立方向を識別し、正立方向に沿って通常の文字認識処理を行う画像処理方法であって、画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割する領域分割ステップと、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する確信度算出ステップと、確信度算出ステップにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定ステップと、制御ステップと、を実行し、制御ステップは、正立方向判定ステップが正立方向の判定を行う場合には、通常の文字認識処理を行うときよりも、領域分割ステップに設定するサイズの上限値が大きくなるように制御することを特徴とする。
本態様によれば、領域分割ステップに設定するサイズの上限値が大きくなるように制御することができるので、当初想定よりも大きな文字の矩形領域を投票の対象とすることができるため、正立方向の判定が不定になる場合を少なくでき、結果的に正立方向を識別する処理の精度を向上させることができる。
【0081】
<第11態様>
本態様のプログラムは、プロセッサを、画像データに含まれる文字画像の正立方向を識別し、正立方向に沿って通常の文字認識処理を行う画像処理方法として機能させるためのプログラムであって、プロセッサを、画像データに含まれる文字画像毎に垂直方向、及び水平方向のサイズに上限値を設定して、上限値内の矩形領域に分割する領域分割ステップと、矩形領域内の文字画像を対象に垂直方向の+方向、及び-方向、並びに水平方向の+方向、及び-方向に沿ってそれぞれ文字認識処理を行い、4方向の確信度を算出する確信度算出ステップと、確信度算出ステップにより算出された4方向の各確信度のうち最大の確信度を有する方向を正立方向として判定する正立方向判定ステップと、制御ステップと、を備え、制御ステップは、正立方向判定ステップが正立方向の判定を行う場合には、通常の文字認識処理を行うときよりも、領域分割ステップに設定するサイズの上限値が大きくなるように制御することとして機能させる。
本態様によれば、領域分割ステップに設定するサイズの上限値が大きくなるように制御することができるので、当初想定よりも大きな文字の矩形領域を投票の対象とすることができるため、正立方向の判定が不定になる場合を少なくでき、結果的に正立方向を識別する処理の精度を向上させることができる。
【符号の説明】
【0082】
1…システム、10…画像形成装置、101…CPU、102…ROM、103…RAM、104…HD、105…HDDコントローラ、106…ディスプレイ、111…キーボード、112…ポインティングデバイス、114…RWドライブ、115…記録メディア、20…コントローラ、22a…ROM、22b…RAM、25a…CPU、25b…NB、26…ASIC、28…HDDコントローラ、29…HD、30…エンジン制御部、31…スキャナ部、32…プリンタ部、40…操作パネル、40a…パネル表示部、40b…操作パネル、60…近距離通信回路、60a…通信回路、70…制御部、70a…二値画像入力部、70b…領域分割部、70c…計数部、70d…確信度算出部、70e…正立方向判定部、80…PC、90…PC
【先行技術文献】
【特許文献】
【0083】