(57)【要約】【課題】予め定めた特定領域に正立判定に適した文字が含まれていない場合の、正立判定精度低下を抑制する。【解決手段】画像処理装置１０は、正立方向を決定すべき画像データに対してレイアウト解析を実行するレイアウト解析部１０２と、レイアウト解析の結果を用いて画像データから図表を抽出する図表抽出部１０３と、抽出した図表との関係で文字列が存在する確率が高い部分領域を正立判定領域として特定する正立判定領域特定部１０４と、正立判定領域で文字認識を実行するＯＣＲ実行部１０５と、文字認識の結果を用いて画像データの正立方向を判定する正立方向判定部１０６を備える。【選択図】図２
2019128839.tif 000002
【特許請求の範囲】
【請求項１】
画像データに対してレイアウト解析を実行するレイアウト解析部と、
前記レイアウト解析の結果を用いて前記画像データから図表を抽出する抽出部と、
抽出した前記図表との関係で文字列が存在する確率が高い部分領域で文字認識を実行する文字認識部と、
前記文字認識の結果を用いて前記画像データの正立方向を決定する正立方向決定部と、
を備える画像処理装置。
【請求項２】
前記部分領域は、前記抽出部により抽出された前記図表中の相対的位置により決定される
請求項１に記載の画像処理装置。
【請求項３】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が第１行または第ｍ行の領域であることを特徴とする
請求項１に記載の画像処理装置。
【請求項４】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が第１列または第ｎ列の領域であることを特徴とする
請求項１に記載の画像処理装置。
【請求項５】
前記抽出部により抽出された前記図表が前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）であり、前記レイアウト解析部にて第１列と第２列、第ｎ列と第（ｎ−１）列の幅を比較した結果第２列または第（ｎ−１）列の幅が大きかった場合に、第２列または第（ｎ−１）列を前記部分領域とすることを特徴とする
請求項１に記載の画像処理装置。
【請求項６】
前記抽出部により抽出された前記図表が前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）であり、前記文字認識部が第１行で文字認識を実行した結果、前記正立方向決定部で正立方向が確定できなかった場合に、次に第ｍ行を前記部分領域とすることを特徴とする
請求項３記載の画像処理装置。
【請求項７】
前記抽出部により抽出された前記図表が前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）であり、前記文字認識部が第１列で文字認識を実行した結果、前記正立方向決定部で正立方向が確定できなかった場合に、次に第ｎ列を前記部分領域とすることを特徴とする
請求項４記載の画像処理装置。
【請求項８】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が前記レイアウト解析の結果相対的に画素の存在頻度の高い列である第ａ列（１≦ａ≦ｎ）であることを特徴とする
請求項１に記載の画像処理装置。
【請求項９】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が前記レイアウト解析の結果最も幅の広い列である第ａ列（１≦ａ≦ｎ）であることを特徴とする
請求項１に記載の画像処理装置。
【請求項１０】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が前記レイアウト解析の結果相対的に画素の存在頻度が高く、かつ最も幅の広い列である第ａ列（１≦ａ≦ｎ）であることを特徴とする
請求項１に記載の画像処理装置。
【請求項１１】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域がｍ行未満の複数行の領域であることを特徴とする
請求項１に記載の画像処理装置。
【請求項１２】
前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域がｎ列未満の複数列の領域であることを特徴とする
請求項１に記載の画像処理装置。
【請求項１３】
前記文字認識部は、前記部分領域内の文字列について順次文字認識を実行してその確信度を算出し、
前記正立方向決定部は、前記確信度が基準値以上となった場合に、前記部分領域の残りの文字列について前記文字認識部で文字認識することなく前記画像データの正立方向を決定する
請求項１〜１２のいずれかに記載の画像処理装置。
【請求項１４】
前記部分領域は、抽出した前記図表のタイトル領域、抽出した前記図表をｍ行×ｎ列（ｍ，ｎは自然数）とした場合の第１行または第ｍ行の領域、第１列または第ｎ列の領域であり、
前記文字認識部は、まず、前記図表のタイトル領域の文字認識を実行し、前記正立方向決定部で前記画像データの正立方向が決定されない場合に、次に第１行または第ｍ行の領域の文字認識を実行する、あるいは前記第１列または第ｎ列の領域の文字認識を実行する
請求項１に記載の画像処理装置。
【請求項１５】
前記部分領域は、さらに、抽出した前記図表をｍ行×ｎ列（ｍ，ｎは自然数）とした場合の第２列または第（ｎ−１）列の領域であり、
前記文字認識部は、前記第１列または第ｎ列の領域の文字認識を実行し、前記正立方向決定部で前記画像データの正立方向が決定されない場合に、前記第２列または第（ｎ−１）列の領域の文字認識を実行する
請求項１４に記載の画像処理装置。
【請求項１６】
コンピュータに、
原稿を読み取って画像データを取得するステップと、
前記画像データに対してレイアウト解析を実行するステップと、
前記レイアウト解析の結果を用いて前記画像データから図表を抽出するステップと、
抽出した前記図表との関係で文字列が存在する確率が高い部分領域で文字認識を実行するステップと、
前記文字認識の結果を用いて前記画像データの正立方向を決定して出力するステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、原稿全体の画像情報を用いて原稿の正立方向を判定する場合と比較して、高速に得られる正立方向から認識される文字情報を出力することを目的として、原稿に形成された画像内で文字認識が行われる第１領域とは別の基準により予め定められた、当該画像の正立方向を検出するための第２領域の画像情報を取得する取得部と、画像情報により得られる画像の正立方向から認識される第１領域の文字情報を出力する出力部とを備える画像処理装置が記載されている。予め定められた領域に含まれる文字を１文字ずつ、０度、９０度、１８０度、２７０度の４方向から読み取り、予め定められた辞書の文字パターンと照合する。そして、４方向の各方向別に、辞書の文字パターンの中で最も特徴の近いものを特定する。その際、特徴の近い度合いを示す確信度も算出する。そして、４方向で算出した確信度のうち最も確信度の高い文字パターンを文字認識の結果として、その際の方向を正立方向として判定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１５１４９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
図表のレイアウト解析の結果にかかわらず予め定めた固定の領域のみを文字認識することで正立方向を判定する構成の場合、予め定めた固定の領域に正立判定に適した文字が含まれていないときには、正立判定の精度が低下する課題がある。
【０００５】
本発明は、かかる課題を解決することを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明は、画像データに対してレイアウト解析を実行するレイアウト解析部と、前記レイアウト解析の結果を用いて前記画像データから図表を抽出する抽出部と、抽出した前記図表との関係で文字列が存在する確率が高い部分領域で文字認識を実行する文字認識部と、前記文字認識の結果を用いて前記画像データの正立方向を決定する正立方向決定部とを備える画像処理装置である。
【０００７】
請求項２に記載の発明は、前記部分領域は、前記抽出部により抽出された前記図表中の相対的位置により決定される請求項１に記載の画像処理装置である。
【０００８】
請求項３に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が第１行または第ｍ行の領域であることを特徴とする請求項１に記載の画像処理装置である。
【０００９】
請求項４に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が第１列または第ｎ列の領域であることを特徴とする請求項１に記載の画像処理装置である。
【００１０】
請求項５に記載の発明は、前記抽出部により抽出された前記図表が前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）であり、前記レイアウト解析部にて第１列と第２列、第ｎ列と第（ｎ−１）列の幅を比較した結果第２列または第（ｎ−１）列の幅が大きかった場合に、第２列または第（ｎ−１）列を前記部分領域とすることを特徴とする請求項１に記載の画像処理装置である。
【００１１】
請求項６に記載の発明は、前記抽出部により抽出された前記図表が前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）であり、前記文字認識部が第１行で文字認識を実行した結果、前記正立方向決定部で正立方向が確定できなかった場合に、次に第ｍ行を前記部分領域とすることを特徴とする請求項３に記載の画像処理装置である。
【００１２】
請求項７に記載の発明は、前記抽出部により抽出された前記図表が前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）であり、前記文字認識部が第１列で文字認識を実行した結果、前記正立方向決定部で正立方向が確定できなかった場合に、次に第ｎ列を前記部分領域とすることを特徴とする請求項４に記載の画像処理装置である。
【００１３】
請求項８に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が前記レイアウト解析の結果相対的に画素の存在頻度の高い列である第ａ列（１≦ａ≦ｎ）であることを特徴とする請求項１に記載の画像処理装置である。
【００１４】
請求項９に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が前記レイアウト解析の結果最も幅の広い列である第ａ列（１≦ａ≦ｎ）であることを特徴とする請求項１に記載の画像処理装置である。
【００１５】
請求項１０に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域が前記レイアウト解析の結果相対的に画素の存在頻度が高く、かつ最も幅の広い列である第ａ列（１≦ａ≦ｎ）であることを特徴とする請求項１に記載の画像処理装置である。
【００１６】
請求項１１に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域がｍ行未満の複数行の領域であることを特徴とする請求項１に記載の画像処理装置である。
【００１７】
請求項１２に記載の発明は、前記抽出部により抽出された前記図表を前記画像データの長辺または短辺を基準としてｍ行×ｎ列（ｍ，ｎは自然数）とした場合に、前記部分領域がｎ列未満の複数列の領域であることを特徴とする請求項１に記載の画像処理装置である。
【００１８】
請求項１３に記載の発明は、前記文字認識部は、前記部分領域内の文字列について順次文字認識を実行してその確信度を算出し、前記正立方向決定部は、前記確信度が基準値以上となった場合に、前記部分領域の残りの文字列について前記文字認識部で文字認識することなく前記画像データの正立方向を決定する請求項１〜１２のいずれかに記載の画像処理装置である。
【００１９】
請求項１４に記載の発明は、前記部分領域は、抽出した前記図表のタイトル領域、抽出した前記図表をｍ行×ｎ列（ｍ，ｎは自然数）とした場合の第１行または第ｍ行の領域、第１列または第ｎ列の領域であり、前記文字認識部は、まず、前記図表のタイトル領域の文字認識を実行し、前記正立方向決定部で前記画像データの正立方向が決定されない場合に、次に第１行または第ｍ行の領域の文字認識を実行する、あるいは前記第１列または第ｎ列の領域の文字認識を実行する請求項１に記載の画像処理装置である。
【００２０】
請求項１５に記載の発明は、前記部分領域は、さらに、抽出した前記図表をｍ行×ｎ列（ｍ，ｎは自然数）とした場合の第２列または第（ｎ−１）列の領域であり、前記文字認識部は、前記第１列または第ｎ列の領域の文字認識を実行し、前記正立方向決定部で前記画像データの正立方向が決定されない場合に、前記第２列または第（ｎ−１）列の領域の文字認識を実行する請求項１４に記載の画像処理装置である。
【００２１】
請求項１６に記載の発明は、コンピュータに、原稿を読み取って画像データを取得するステップと、前記画像データに対してレイアウト解析を実行するステップと、前記レイアウト解析の結果を用いて前記画像データから図表を抽出するステップと、抽出した前記図表との関係で文字列が存在する確率が高い部分領域で文字認識を実行するステップと、前記文字認識の結果を用いて前記画像データの正立方向を決定して出力するステップとを実行させるプログラムである。
【発明の効果】
【００２２】
請求項１〜１６に記載の発明によれば、図表のレイアウト解析の結果にかかわらず予め定めた固定の領域のみを文字認識することで正立方向を判定する構成と比べて、正立判定の精度が向上する。
【００２３】
請求項１３に記載の発明によれば、さらに、正立判定までの時間が短縮される。
【図面の簡単な説明】
【００２４】
【図１】実施形態の構成ブロック図である。
【図２】実施形態の機能ブロック図である。
【図３】実施形態の処理フローチャート（その１）である。
【図４】実施形態の処理フローチャート（その２）である。
【図５】実施形態の正立判定領域の一例を示す説明図である。
【図６】実施形態の正立判定領域の他の例を示す説明図である。
【図７】実施形態の正立判定領域のさらに他の例を示す説明図である。
【図８】他の実施形態の処理フローチャートである。
【図９】他の実施形態の正立判定領域の一例を示す説明図である。
【図１０】他の実施形態の正立判定領域の他の例を示す説明図である。
【発明を実施するための形態】
【００２５】
以下、図面に基づき本発明の実施形態について説明する。
【００２６】
＜実施形態１＞
まず、本実施形態における画像処理装置１０のハードウェア構成について説明する。
【００２７】
図１は、画像処理装置１０の構成ブロック図を示す。画像処理装置１０は、例えば、スキャン機能、プリント機能、コピー機能及びファクシミリ機能等を備えたいわゆる複合機である。画像処理装置１０は、ＣＰＵ（Central Processing Unit）１２、ＲＯＭ（Read Only Memory）１４、ＲＡＭ（Random Access Memory）１６、操作部１８、表示部２０、画像読取部２２、画像形成部２４、画像処理部２６、通信部２８、及び記憶部３０を備える。これらの構成ブロックは、バスに接続されており、バスを介してデータの授受を行う。
【００２８】
ＣＰＵ１２は、ＯＳ（Operating System）やアプリケーション等の各種プログラムを実行する。また、ＲＯＭ１４は、ＣＰＵ１２により実行される制御プログラムを記憶する。ＲＡＭ１６は、ＣＰＵ１２の作業用メモリ等として用いられる。ＣＰＵ１２は、ＲＯＭ１４に記憶されている制御プログラムを読み出し、ＲＡＭ１６を作業エリアとして制御プログラムを実行する。ＣＰＵ１２により制御プログラムが実行されると、画像処理装置１０における各種機能が実現される。
【００２９】
操作部１８は、画像処理装置１０のユーザ操作を受け付ける。操作部１８は、例えば、ハードウェアキーにより構成され、例えば、接触された位置に応じた制御信号を出力するタッチパネルにより構成される。接触検知手段は任意であり、接触による圧力を検知する手段や、接触した物の静電気を検知する手段等が用いられ得る。
【００３０】
表示部２０は、例えば液晶ディスプレイや有機ＥＬディスプレイにより構成され、画像処理装置１０に関するデータを表示する。表示部２０は、ユーザが画像処理装置１０を操作する際にユーザが参照する画面を表示する。表示部２０は操作部１８と一体的に構成されてもよい。
【００３１】
画像読取部２２は、ユーザ等によりＡＤＦ（Auto Document Feeder：オートドキュメントフィーダ）等にセットされた原稿３２に対して、原稿に形成されている画像を読み取り、読み取った画像を示す画像データを生成する。画像読取部２２は、例えばスキャナであり、光源から原稿に照射した光に対する反射光をレンズで縮小してＣＣＤ（Charge Coupled Devices）で受光するＣＣＤ方式や、ＬＥＤ光源から原稿に順に照射した光に対する反射光をＣＩＳ（Contact Image Sensor）で受光するＣＩＳ方式が用いられ得る。原稿３２は、必ずしも全てが一定方向に整列しておらず、図１に示すように任意の方向（ランダム）にセットされ得る。
【００３２】
画像形成部２４は、用紙等の記録媒体に画像を形成する印刷機構を備えている。画像形成部２４は、例えばプリンタであり、感光体に付着させたトナーを記録媒体に転写して像を形成する電子写真方式や、インクを記録媒体上に吐出して像を形成するインクジェット方式、あるいはレーザ方式が用いられ得る。
【００３３】
画像処理部２６は、画像データが表す画像に色補正や階調補正等の画像処理を施す。
【００３４】
通信部２８は、図示しない通信回線に接続されており、通信回線に接続されている他装置と通信を行う。例えば、通信部２８を介して、他装置との間で画像データの送受信が行われる。他装置はユーザ端末やクラウドサーバ等である。
【００３５】
記憶部３０は、ハードディスク装置などの記憶領域を具備しており、通信部２８で受信したデータや画像処理装置１０で生成されたデータ等を記憶する。記憶部３０は、ＣＰＵ１２で実行される制御プログラムを記憶してもよい。
【００３６】
画像処理装置１０のＣＰＵ１２は、制御プログラムに従い、原稿３２に形成されている画像を読み取って生成した画像データに対して、１枚ずつ正立方向の判定を行い、その結果を出力する。正立方向の判定結果は、例えば画像データに含まれる文字の認識に利用され得る。正立方向とは、その画像中の文字が正しく読める方向である。正立方向の判定や文字認識には、例えばＯＣＲ（Optical Character Recognition）が用いられる。ＯＣＲとは、画像データ上にある文字を解析し、コンピュータで扱われる文字データに変換する技術である。
【００３７】
次に、画像処理装置１０の機能構成について説明する。
【００３８】
図２は、画像処理装置１０の機能ブロック図を示す。画像処理装置１０は、機能ブロックとして、画像データ取得部１０１と、レイアウト解析部１０２と、図表抽出部１０３と、正立判定領域特定部１０４と、ＯＣＲ実行部１０５と、正立方向判定部１０６を備える。
【００３９】
画像データ取得部１０１は、画像読取部２２が原稿３２に形成されている画像を読み取って生成した画像データを取得する。
【００４０】
レイアウト解析部１０２は、画像データ取得部１０１で取得した画像データが有する画像のレイアウトを解析する。レイアウト解析部１０２は、例えば、背景に対するコントラストで情報（文字と図表）の塊（ブロック）を抽出し、あるいは色調の連続性等から図表領域を抽出することによって、画像データにおける画像のレイアウトを解析する。実施形態では、特に、レイアウト解析部１０２は、画像データにおける図表の塊（枠線、罫線を含む）、及びその位置を解析する。また、このレイアウト解析では、図表における画素分布を検出し、画素分布の相対的な大小についても解析し、特に画素分布が他の領域に比べて相対的に高い、つまり画素の存在頻度が相対的に高い領域を解析する。
【００４１】
図表抽出部１０３は、レイアウト解析部１０２での解析結果を用いて、画像データに図表が含まれているか否かを判定し、図表が含まれている場合には当該図表を抽出する。ここで、図表とは、図と表の少なくともいずれかを意味する。
【００４２】
正立判定領域特定部１０４は、図表抽出部１０３で抽出された図表を用いて画像データにおける正立判定を行うべき正立判定領域を特定する。正立判定領域特定部１０４は、抽出された図表に対して特定の位置関係にある領域、具体的には正立判定に用い得る文字列が存在している確率が高い領域を正立判定領域として特定する。正立判定領域は、１つまたは複数個が特定され得る。正立判定領域が複数個特定された場合、これら複数の正立判定領域間において優先度が設定されてもよい。優先度は、文字列が存在している確率が高い領域ほど高くなるように設定され得る。例えば、幅の大きい領域を優先する、画素の存在頻度が高い領域を優先する等である。図表との位置関係において文字列が存在している確率が高い特定領域についてはさらに後述する。
【００４３】
ＯＣＲ実行部１０５は、文字認識部として機能し、正立判定領域特定部１０４で特定された正立判定領域に対してＯＣＲ処理を実行して正立判定領域に含まれる文字を認識する。具体的には、ＯＣＲ実行部１０５は、例えば正立判定領域に含まれる文字を１文字ずつ、０度、９０度、１８０度、２７０度の４方向から読み取り、予め定められた辞書の文字パターンと照合する。そして、４方向の各方向別に、辞書の文字パターンの中で最も特徴の近いものを特定するとともにその確信度を算出する。ここで、確信度とは、認識対象の文字と認識結果の文字との特徴点がどの程度一致しているか否かを示す比率である。確信度の算出方法は任意であるが、例えば、入力画像データから抽出した特徴ベクトルと、ＯＣＲ辞書中の特徴ベクトルとの間の距離を計算し、入力文字に最も近い辞書内の文字を認識結果として選択して出力する場合において、認識結果の第１位候補文字と、第２位候補文字の距離値の逆数によって次式によるインデックス値ｒを算出する。
r =v1／(v1 + v2)
【００４４】
ここで、ｖ１、ｖ２は、それぞれ第１位候補文字と第２候補文字の距離値の逆数である。そして、事前に収集した学習用の文字に対する評価によって、正しく認識された文字
と、正しく認識できなかった文字に対するｒ値のヒストグラムを求め、このヒストグラムを用いて確信度を算出する。
【００４５】
正立方向判定部１０６は、正立方向決定部として機能し、ＯＣＲ実行部１０５で算出された確信度を用いて、１文字ずつ正立方向を判定する。そして、判定した頻度が最も高い方向を画像データの正立方向と判定して出力する。例えば、正立判定領域に５つの文字が含まれており、第１〜第４の文字については０度の方向が正立方向、第５の文字については１８０度の方向が正立方向と判定された場合、正立方向判定部１０６は、画像データの正立方向は０度の方向と判定する。
【００４６】
図２の各機能ブロックは、ＣＰＵ１２が処理プログラムを実行することにより実現される。但し、機能ブロックの一部は、プログラムの実行によるソフトウェア処理ではなく、ハードウェア処理により実現してもよい。ハードウェア処理は、例えばＡＳＩＣやＦＰＧＡ（フィールドプログラマブルゲートアレイ）などの回路を用いて行ってもよい。
【００４７】
次に、図表として表を例にとり、実施形態の処理について説明する。
【００４８】
図３及び図４は、実施形態の処理フローチャートを示す。処理プログラムに基づいてＣＰＵ１２が実行する処理である。
【００４９】
まず、画像データ取得部１０１で画像データを取得すると、レイアウト解析部１０２に当該画像データを入力する（Ｓ１０１）。レイアウト解析部１０２は、画像データのレイアウト解析を実行して解析結果を図表抽出部１０３に出力する。レイアウト解析では、図表の塊を抽出し、表の場合には当該表を構成する連続線としての枠線や罫線を抽出する。枠線や罫線を抽出することで、表の大きさや位置、行数や列数の情報が得られる。さらに、行の幅や列の幅の情報が得られ、これらの幅の相対的な大小関係についての情報が得られる。
【００５０】
図表抽出部１０３は、レイアウト解析データを用いて画像データに表が含まれているか否かを判定する（Ｓ１０２）。表が抽出された場合（Ｓ１０２でＹＥＳ）、当該表の外枠の横長矩形領域内の文字方向を検出する（Ｓ１０３）。すなわち、正立判定領域特定部１０４は、抽出された表の外枠の横長矩形領域を正立判定領域として特定してＯＣＲ実行部１０５に出力する。表の外枠の横長矩形領域は、表を行列とみなした場合の最上段行あるいは最下段行を意味し、行方向は、例えばＡ４の原稿用紙の長辺方向に垂直な方向、言い換えれば短辺方向と平行な方向を意味する。具体的には、表が５行×４列で構成されている場合、最上段の第１行あるいは最下段の第５行を意味する。ＯＣＲ実行部１０５は、特定された領域において０度、９０度、１８０度、２７０度の４方向のＯＣＲを実行して確信度を算出し、正立方向判定部１０６に出力する。正立方向判定部１０６は、算出された確信度を用いて正立判定領域における文字方向を検出する。
【００５１】
正立判定領域における文字方向を検出した後、正立方向判定部１０６は、画像データの方向が確定したか否かを判定する（Ｓ１０４）。例えば、Ｓ１０３の処理を正立判定領域内の全ての文字について実行し、判定した頻度が最も高い方向が存在する場合には方向が確定したと判定し（Ｓ１０４でＹＥＳ）、確定した方向を正立方向として出力して処理を終了する。他方、方向が確定しない場合、例えば、０度と９０度がほぼ同程度の頻度である場合等には、方向が確定していないと判定し（Ｓ１０４でＮＯ）、次の処理に移行する。
【００５２】
次の処理では、正立判定領域特定部１０４は、抽出された表の外枠の縦長矩形領域のサイズが閾値以上に大きいか否かを判定する（Ｓ１０５）。表の外枠の縦長矩形領域は、表を行列とみなした場合の最左端列あるいは最右端列を意味し、列方向は、例えばＡ４の原稿用紙の長辺方向と平行な方向を意味する。具体的には、表が５行×４列で構成されている場合、最左端の第１列あるいは最右端の第４列行を意味する。閾値は、例えば列の幅との関連において設定され、正立判定するに際して最低限必要な文字数が存在し得る幅として設定し得る。正立判定するに際して最低限必要な文字数に相当する画素数を用いて設定してもよい。閾値以上に大きい場合には（Ｓ１０５でＹＥＳ）、当該外枠の縦長領域内の文字方向を検出する（Ｓ１０６）。すなわち、正立判定領域特定部１０４は、抽出された表の外枠の縦長矩形領域を正立判定領域として特定してＯＣＲ実行部１０５に出力する。ＯＣＲ実行部１０５は、特定された領域において０度、９０度、１８０度、２７０度の４方向のＯＣＲを実行して確信度を算出し、正立方向判定部１０６に出力する。正立方向判定部１０６は、算出された確信度を用いて正立判定領域における文字方向を検出する。
【００５３】
正立判定領域における文字方向を検出した後、正立方向判定部１０６は、画像データの方向が確定したか否かを判定する（Ｓ１０７）。例えば、Ｓ１０６の処理を正立判定領域内の全ての文字について実行し、判定した頻度が最も高い方向が存在する場合には方向が確定したと判定し（Ｓ１０７でＹＥＳ）、確定した方向を正立方向として出力して処理を終了する。他方、方向が確定しない場合、例えば、０度と９０度がほぼ同程度の頻度である場合等には、方向が確定していないと判定し（Ｓ１０７でＮＯ）、他の手段で方向を検出する（Ｓ１０８）。Ｓ１０２で画像データに表が含まれていない場合についても同様に他の手段で方向を検出する（Ｓ１０８）。
【００５４】
他方、Ｓ１０５でＮＯ、すなわち、表外枠の横長矩形領域でも方向が確定せず、かつ、表外枠の縦長矩形領域でも方向が確定しない場合には、さらに図４の処理に移行する。
【００５５】
図４において、正立判定領域特定部１０４は、抽出された表の縦長矩形領域の１つ内側の矩形領域のサイズが閾値以上に大きいか否かを判定する（Ｓ１０９）。１つ内側の縦長矩形領域は、表を行列とみなした場合の最左端行から１つ内側の列あるいは最右端から１つ左側の列を意味する。具体的には、表が５行×４列で構成されている場合、第２列あるいは第３列を意味する。閾値以上に大きい場合には（Ｓ１０９でＹＥＳ）、当該１つ内側の縦長領域内の文字方向を検出する（Ｓ１１０）。すなわち、正立判定領域特定部１０４は、１つ内側の縦長矩形領域を正立判定領域として特定してＯＣＲ実行部１０５に出力する。ＯＣＲ実行部１０５は、特定された領域において０度、９０度、１８０度、２７０度の４方向のＯＣＲを実行して確信度を算出し、正立方向判定部１０６に出力する。正立方向判定部１０６は、算出された確信度を用いて正立判定領域における文字方向を検出する。
【００５６】
正立判定領域における文字方向を検出した後、正立方向判定部１０６は、画像データの方向が確定したか否かを判定する（Ｓ１１１）。例えば、Ｓ１１０の処理を正立判定領域内の全ての文字について実行し、判定した頻度が最も高い方向が存在する場合には方向が確定したと判定し（Ｓ１１１でＹＥＳ）、確定した方向を正立方向として出力して処理を終了する。他方、方向が確定しない場合、例えば、０度と９０度がほぼ同程度の頻度である場合等には、方向が確定していないと判定し（Ｓ１１１でＮＯ）、他の手段で方向を検出する（Ｓ１１２）。
【００５７】
このように、本実施形態では、正立判定領域特定部１０４は、正立判定領域として、表外枠の横長矩形領域、表外枠の縦長矩形領域、表外枠の縦長矩形領域の１つ内側の縦長矩形領域を正立判定領域として特定して画像データの正立方向を判定する。表外枠の横長矩形領域、表外枠の縦長矩形領域、及び表外枠の縦長矩形領域の１つ内側の縦長矩形領域は、正立判定に用い得る文字列が存在する確率が高い領域として特定されたものである。また、これらの領域は、抽出された図表中における相対的位置を用いて決定されたものである。次に、これらの領域について、より詳細に説明する。
【００５８】
図５は、Ｓ１０３で正立判定領域として特定される表外枠の横長矩形領域の一例を示す。表２００は、外枠及び複数の罫線から構成されており、表の上端部及び下端部には、外枠の横長矩形領域２０２及び２０４が存在する。横長矩形領域２０２は、第１行の矩形領域に相当し、横長矩形領域２０４は、第５行の矩形領域に相当する。上端部の横長矩形領域２０２は、通常、各行の項目名が記載される。例えば、「品名」、「数量」、「単位」、「単価」、「金額」等である。また、下端部の横長矩形領域２０４には、各行の合計等が記載される。例えば、「小計」等である。正立判定領域特定部１０４は、上端部の横長矩形領域２０２や下端部の横長矩形領域２０４には、統計的あるいは慣習上、文字列が含まれることが多いという事実に着目し、この事実を利用して横長矩形領域２０２，２０４を正立判定領域として特定する。表の内側部分は、これらの領域に比べて相対的に数字列が多いため、正立判定の精度が低下し得るが、上端部の横長矩形領域２０２や下端部の横長矩形領域２０４には、統計的に、あるいは慣習上、文字列が含まれることが多いため、これらの文字列を用いることで判定精度の低下が抑制される。
【００５９】
なお、正立判定領域特定部１０４は、上端部の横長矩形領域２０２と下端部の横長矩形領域２０４の少なくともいずれかを正立判定領域として特定し得る。まず、上端部の横長矩形領域２０２を正立判定領域として特定し、正立方向が確定しない場合に、次に下端部の横長矩形領域２０４を正立判定領域として特定してもよい。具体的には、例えばＡ４原稿用紙の長辺に沿った方向を上下方向とし、その１方向を上方向として上端部の横長矩形領域２０２を特定してＯＣＲを実行し、正立方向が確定しない場合に、上下方向の上方向とは反対側の方向を下方向として下端部の横長矩形領域２０４を特定してＯＣＲを実行する。
【００６０】
図６は、Ｓ１０５で正立判定領域として特定される表外枠の縦長矩形領域の一例を示す。表２００の左端部に縦長矩形領域２０６が存在する。縦長矩形領域２０６は、第１列の矩形領域に相当する。左端部の縦長矩形領域２０６は、通常、各列の項目名が記載される。例えば、「品名」、「マルチロガー」、「ベースセット」、「拡張端子」、「小計」等である。
【００６１】
正立判定領域特定部１０４は、左端部の縦長矩形領域２０６には、統計的に、あるいは慣習上、文字列が含まれることが多いという事実に着目し、この事実を利用して縦長矩形領域２０６を正立判定領域として特定する。
【００６２】
なお、図６では左端部の縦長矩形領域２０６を示したが、右端部の縦長矩形領域を正立判定領域として特定してもよく、左端部の縦長矩形領域と右端部の縦長矩形領域の少なくともいずれかを正立判定領域として特定し得る。右端部の縦長矩形領域は、第５列の矩形領域に相当する。
【００６３】
また、Ｓ１０５では、縦長矩形領域のサイズが閾値以上に大きい場合のみ正立判定領域として特定しているが、これは、縦長矩形領域のサイズ、つまり縦長矩形領域の横方向のサイズが小さい場合にはアルファベットや数字、あるいは記号のみが記載されており、文字列が含まれていない確率が相対的に高くなることを考慮したものである。
【００６４】
図７は、Ｓ１１０で正立判定領域として特定される表外枠の縦長矩形領域の１つ内側の縦長矩形領域の一例を示す。表２００の左端部の縦長矩形領域の１つ内側、つまり横方向側に縦長矩形領域２０８が存在する。縦長矩形領域２０８は、第２列の矩形領域に相当する。左端部の縦長矩形領域には「Ｎｏ」や数字のみが記載されているが、１つ内側の縦長矩形領域２０８には各列の項目名が記載される。例えば、「品名」、「ソフトウェア開発」、「設計」、「実装」、「一般管理費」、「小計」等である。
【００６５】
正立判定領域特定部１０４は、左端部の縦長矩形領域より１つ内側の縦長矩形領域２０８には、統計的に、あるいは慣習上、文字列が含まれることが多いという事実に着目し、この事実を利用して縦長矩形領域２０８を正立判定領域として特定する。
【００６６】
なお、表外枠の横長矩形領域及び表外枠の縦長矩形領域は、抽出された表の長辺または短辺を基準としてｍ行×ｎ列の行列とみなした場合に、それぞれ
表外枠の横長矩形領域：第１行あるいは第ｍ行
表外枠の縦長矩形領域：第１列あるいは第ｎ列
に相当するが、これらは表の外枠を含む領域と表現し得る。また、抽出した表の外枠の長さに相違がある場合に、最も長い辺が属する領域と表現し得る。例えば、図５において、横長矩形領域２０２，２０４は、表の最も長い辺が属する領域である。図６における縦長矩形領域２０６は、２番目に長い辺が属する領域である。
【００６７】
また、表外枠の縦長矩形領域の１つ内側の縦長矩形領域は、表をｍ行×ｎ列の行列とみなした場合に、
表外枠の縦長矩形領域の１つ内側の縦長矩形領域：第２列あるいは第（ｎ−１）列
に相当するが、これは、表の外枠を含む領域に隣接する領域と表現し得る。
【００６８】
さらに、表外枠の横長矩形領域は、各行の項目名が記載される領域であるため、他の行に比べてその幅が相対的に大きくなる傾向がある。この事実に着目し、表の外枠を含む領域のうち、その幅が最も広い領域を正立判定領域としてもよい。
【００６９】
＜実施形態２＞
実施形態１では、表外枠の横長矩形領域、表外枠の縦長矩形領域、表外枠の縦長矩形領域の１つ内側の縦長矩形領域を正立判定領域として特定して画像データの正立方向を判定しているが、これ以外にも、図表との位置関係において正立判定に使用し得る文字列が含まれている確率が高い領域が存在し得る。例えば、図表のタイトルが記載されている領域である。
【００７０】
図８は、本実施形態の処理フローチャートを示す。図３と異なる点は、Ｓ１０２で表が抽出された場合に、表近傍領域内の文字方向を検出する処理である（Ｓ２０１）。すなわち、正立判定領域特定部１０４は、抽出された表の外枠から予め定めた距離内、より特定的には、外枠上端あるいは外枠下端から予め定めた距離内に画像データの塊が存在する場合に、当該塊の領域を図表のタイトル領域とみなして正立判定領域として特定する。ここで、外枠上端とは、例えばＡ４原稿用紙の長辺方向の一方向を意味し、外枠下端とは、Ａ４原稿用紙の長辺方向の他方向を意味する。
【００７１】
正立判定領域特定部１０４は、特定された正立判定領域をＯＣＲ実行部１０５に出力する。ＯＣＲ実行部１０５は、特定された領域において０度、９０度、１８０度、２７０度の４方向のＯＣＲを実行して確信度を算出し、正立方向判定部１０６に出力する。正立方向判定部１０６は、算出された確信度を用いて正立判定領域における文字方向を検出する。
【００７２】
正立判定領域における文字方向を検出した後、正立方向判定部１０６は、画像データの方向が確定したか否かを判定する（Ｓ２０２）。例えば、Ｓ２０１の処理を正立判定領域内の全ての文字について実行し、判定した頻度が最も高い方向が存在する場合には方向が確定したと判定し（Ｓ２０２でＹＥＳ）、確定した方向を正立方向として出力して処理を終了する。他方、方向が確定しない場合、例えば、０度と９０度がほぼ同程度の頻度である場合等には、方向が確定していないと判定し（Ｓ２０２でＮＯ）、図３のＳ１０３以降の処理を実行する。
【００７３】
このように、表外枠の横長矩形領域、表外枠の縦長矩形領域、表外枠の縦長矩形領域の１つ内側の縦長矩形領域に加え、図表近傍の領域であって図表のタイトルが記載されている領域を正立判定領域として特定することで、正立判定精度の低下が抑制される。
【００７４】
図９は、表のタイトルが記載されている領域の一例を示す。表２００の上部、具体的には、表の外枠上端から所定距離内に「表１．ソフトウェア費用一覧」のタイトル領域２１０が存在する。このタイトル領域２１０を正立判定領域として特定する。
【００７５】
図１０は、図のタイトルが記載されている領域の一例を示す。図３００の上部、具体的には図の上端から所定距離内に「図１．頻度分布」のタイトル領域３０２が存在する。このタイトル領域３０２を正立判定領域として特定する。
【００７６】
なお、実施形態１，２において、表の上下及び左右は、原稿用紙の長辺から一義的に決定され得る。例えば、Ａ４原稿用紙の長辺に沿った方向を上下方向とし、その１方向を上部、他方向を下部と定義する。また、上下を決定した後、短辺に沿った方向を左右方向とする。勿論、原稿用紙の短辺から上下左右を決定してもよいが、これは長辺から決定する場合と実質的に等価である。仮に、図９において、このようにして定義される表２００の外枠上端から予め定めた所定距離内にタイトルが存在しない場合、表の正立方向が９０度あるいは２７０度回転した方向にある可能性があるので、その場合には表２００の外枠左端あるいは外枠右端から予め定めた距離内の領域においてＯＣＲを実行すればよい。図１０の場合も同様である。要約すれば、表２００の外枠から（上下左右方向の）予め定めた距離内の領域を正立判定領域として特定すればよい。予め定めた距離は一般には固定値であるが、ユーザの設定により可変値としてもよい。
【００７７】
以上、本発明の実施形態について説明したが、本発明はこれらの実施形態に限定されるものではなく、種々の変形が可能である。以下、変形例について説明する。
【００７８】
＜変形例１＞
実施形態１では、表外枠の横長矩形領域、表外枠の縦長矩形領域、表外枠の縦長矩形領域の１つ内側の縦長矩形領域を正立判定領域として特定するとともに、これらの領域の間に優先度を設け、優先順位として、
１．表外枠の横長矩形領域
２．表外枠の縦長矩形領域
３．表外枠の縦長矩形領域の１つ内側の縦長矩形領域
と設定しているが、これらの優先順位は任意に設定し得る。例えば、
１．表外枠の縦長矩形領域
２．表外枠の縦長矩形領域の１つ内側の縦長矩形領域
３．表外枠の横長矩形領域
としてもよい。
【００７９】
実施形態２についても同様であり、実施形態２では、表外枠の横長矩形領域、表外枠の縦長矩形領域、表外枠の縦長矩形領域の１つ内側の縦長矩形領域、及び図表のタイトル領域を正立判定領域として特定するとともに、これらの領域の間に優先度を設け、優先順位として、
１．図表のタイトル領域
２．表外枠の横長矩形領域
３．表外枠の縦長矩形領域
４．表外枠の縦長矩形領域の１つ内側の縦長矩形領域
と設定しているが、これらの優先順位は任意に設定し得る。例えば、
１．表外枠の縦長矩形領域
２．表外枠の縦長矩形領域の１つ内側の縦長矩形領域
３．表外枠の横長矩形領域
４．図表のタイトル領域
としてもよい。これは、図３及び図４のＳ１０８、Ｓ１１２の「他の手段で検出」の処理を、図表のタイトル領域を正立判定領域として特定して処理することに相当する。
【００８０】
また、正立判定領域の優先度については、固定とする他に可変としてもよく、ユーザの設定により可変としてもよい。具体的には、ユーザが画像データに含まれる図表の種類毎に優先度を設定する等であり、ある種の図表についてはタイトル領域を１位の優先順位とし、別の種類の図表については表外枠の横長矩形領域を１位の優先順位とする等である。
【００８１】
＜変形例２＞
実施形態１、２では、左端部の縦長矩形領域のサイズ、つまり横方向の長さが閾値以下の場合や閾値以上に大きい場合でも方向が確定されない場合に、その１つ内側の縦長矩形領域を正立判定領域として特定しているが、１つ内側の縦長矩形領域に代えて、表のうち最も行方向のサイズ（幅）が大きい縦長矩形領域を抽出して正立判定領域として特定してもよい。具体的には、列数が５列の表において、左端部から３番目の列に相当する縦長矩形領域が最も幅が大きい場合に、当該３番目の列の縦長矩形領域を正立判定領域として特定する等である。
【００８２】
＜変形例３＞
実施形態１、２では、例えば、表外枠の横長矩形領域を正立判定領域として特定した場合に、当該横長矩形領域内の全ての文字列を対象として正立方向及びその確信度を算出し、判定した頻度が最も高い方向を最終的に正立方向として確定しているが、正立判定領域として特定した領域内に存在する文字列に対して順次ＯＣＲを実行し、ある文字列において十分に大きな確信度が得られた場合、例えば、ある文字において基準値（例えば９８％）以上の確信度が得られた場合に、その時点で正立方向を確定してもよい。すなわち、正立判定領域内の全ての文字列についてＯＣＲを実行して確信度を算出する必要はない。基準値はデフォルト値として固定でもよいが、ユーザが設定し得る可変値でもよい。
【００８３】
＜変形例４＞
実施形態では、表を行列とみなした場合に、最も幅の広い行あるいは列を正立判定領域として特定しているが、レイアウト解析の結果得られる画素密度を用い、最も画素密度が高い（最も存在頻度が高い）行あるいは列を正立判定領域として特定してもよく、あるいは、最も幅が広く、かつ、最も画素密度が高い行あるいは列を正立判定領域として特定してもよい。
【００８４】
＜変形例５＞
実施形態では、表を行列とみなした場合に、一定の条件を満たす行あるいは列を正立判定領域として特定しているが、当該行あるいは列はそれぞれ複数行あるいは複数列であってもよい。具体的には、ｍ行×ｎ列の行列において、ｍ行未満の複数行、あるいはｎ列未満の複数列を正立判定領域として特定してもよい。さらに、一定の条件を満たす行及び列を正立判定領域として特定してもよい。第１行及び第１列、あるいは第１行及び第２列、第１行及び第ｍ行及び第１列、等である。
【符号の説明】
【００８５】
１０  画像処理装置、１２  ＣＰＵ、１４  ＲＯＭ、１６  ＲＡＭ、１８  操作部、２０  表示部、２２  画像読取部、２４  画像形成部、２６  画像処理部、２８  通信部、３０  記憶部、１０１  画像データ取得部、１０２  レイアウト解析部、１０３  図表抽出部、１０４  正立判定領域特定部、１０５  ＯＣＲ実行部、１０６  正立方向判定部。
【図１】
2019128839.tif 000003
【図２】
2019128839.tif 000004
【図３】
2019128839.tif 000005
【図４】
2019128839.tif 000006
【図５】
2019128839.tif 000007
【図６】
2019128839.tif 000008
【図７】
2019128839.tif 000009
【図８】
2019128839.tif 000010
【図９】
2019128839.tif 000011
【図１０】
2019128839.tif 000012