(57)【要約】【課題】画像から線分を抽出する際の誤抽出を低減させる。【解決手段】線分抽出プログラムは、画像から線分の候補領域を抽出し、前記線分の候補領域の周囲となる周囲領域を特定し、前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する、処理をコンピュータに実行させる。【選択図】図３
2019046377.tif 000002
【特許請求の範囲】
【請求項１】
画像から線分の候補領域を抽出し、
前記線分の候補領域の周囲となる周囲領域を特定し、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する、
処理をコンピュータに実行させる線分抽出プログラム。
【請求項２】
前記線分の候補領域の上下方向と左右方向の独立した領域を、前記周囲領域として特定することを特徴とする請求項１に記載の線分抽出プログラム。
【請求項３】
前記画像に含まれる文字の幅を特定し、
前記文字の幅を基準として、前記周囲領域の左右方向の大きさを決定することを特徴とする請求項１または２に記載の線分抽出プログラム。
【請求項４】
前記画像における線分の太さを特定し、
前記線分の太さを基準として、前記周囲領域の上下方向の大きさを決定することを特徴とする請求項３に記載の線分抽出プログラム。
【請求項５】
画像から線分の候補領域を抽出する抽出部と、
前記線分の候補領域の周囲となる周囲領域を特定する特定部と、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する判定部と
を有することを特徴とする画像処理装置。
【請求項６】
画像から線分の候補領域を抽出し、
前記線分の候補領域の周囲となる周囲領域を特定し、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する、
処理をコンピュータが実行する線分抽出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、線分抽出プログラム、画像処理装置及び線分抽出方法に関する。
【背景技術】
【０００２】
従来より、帳簿や伝票等の各種帳票をスキャンすることにより電子化された帳票画像に対して、文字認識処理等を行う帳票画像処理システムが知られている。当該帳票画像処理システムでは、文字認識精度を上げるために、文字と罫線（線分）とを正しく識別することが求められる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１６５３７１号公報
【特許文献２】特開２００８−１９８１５７号公報
【特許文献３】特開平１０−３３４１８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、帳票には長さや太さの異なる複数の線分が含まれており、それら全ての線分を、例えば線分の形状に基づいて抽出しようとすると、文字の一部を誤抽出してしまうといった問題がある。
【０００５】
一つの側面では、画像から線分を抽出する際の誤抽出を低減させることを目的としている。
【課題を解決するための手段】
【０００６】
一態様によれば、線分抽出プログラムは、
画像から線分の候補領域を抽出し、
前記線分の候補領域の周囲となる周囲領域を特定し、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する、処理をコンピュータに実行させる。
【発明の効果】
【０００７】
画像から線分を抽出する際の誤抽出を低減させることができる。
【図面の簡単な説明】
【０００８】
【図１】帳票画像処理システムのシステム構成の一例を示す図である。
【図２】画像処理装置のハードウェア構成の一例を示す図である。
【図３】前処理部及び線分抽出部の機能構成の詳細を示す図である。
【図４】線分抽出処理の流れを示すフローチャートである。
【図５】線分候補抽出処理の詳細を示すフローチャートである。
【図６】文字サイズ算出処理の詳細を示すフローチャートである。
【図７】上下領域情報算出処理及び左右領域情報算出処理の詳細を示すフローチャートである。
【図８】ノイズ判定処理の詳細を示す第１のフローチャートである。
【図９】ノイズ判定処理の詳細を示す第２のフローチャートである。
【図１０】線分抽出処理の効果を説明するための図である。
【発明を実施するための形態】
【０００９】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【００１０】
［第１の実施形態］
＜帳票画像処理システムのシステム構成＞
はじめに、帳票画像処理システムのシステム構成について説明する。帳票画像処理システムは、帳簿（例えば、仕訳帳、現金出納帳、売掛帳）や伝票（例えば、見積書、請求書、納品書、領収書）等の各種帳票をスキャンすることで電子化した帳票画像に対して、文字認識処理等を行うシステムである。
【００１１】
図１は、帳票画像処理システムのシステム構成の一例を示す図である。図１に示すように、帳票画像処理システム１００は、読取装置１１０と、読取装置１１０と接続される画像処理装置１２０とを有する。
【００１２】
読取装置１１０は、スキャナ等の画像形成装置である。読取装置１１０は、帳票１３０をスキャンすることで帳票１３０を電子化し、帳票画像を形成する。読取装置１１０は、電子化した帳票画像を画像処理装置１２０に送信する。
【００１３】
画像処理装置１２０には、前処理プログラム、線分抽出プログラム、帳票識別プログラム、文字認識プログラム等がインストールされている。画像処理装置１２０は、これらのプログラムを実行することで、前処理部１２１、線分抽出部１２２、帳票識別部１２３、文字認識部１２４として機能する。
【００１４】
前処理部１２１は、読取装置１１０より帳票画像を受信し、受信した帳票画像を２値化することで、２値化画像を生成する。また、前処理部１２１は、生成した２値化画像を線分抽出部１２２及び文字認識部１２４に通知する。
【００１５】
線分抽出部１２２は、前処理部１２１より２値化画像を受信し、受信した２値化画像から罫線（線分）を抽出する。また、線分抽出部１２２は、抽出した線分の位置を示す線分情報を帳票識別部１２３に通知する。
【００１６】
帳票識別部１２３は、線分抽出部１２２より線分情報を受信し、受信した線分情報に基づいて、帳票の種類を識別する。また、帳票識別部１２３は、識別した帳票の種類を示す帳票情報を文字認識部１２４に通知する。
【００１７】
文字認識部１２４は、前処理部１２１より２値化画像を受信し、帳票識別部１２３より帳票情報を受信する。文字認識部１２４は、受信した帳票情報に基づいて、２値化画像に対して文字認識処理を行う際の対象領域を特定する。更に、文字認識部１２４は、特定した対象領域より文字を抽出し、文字認識処理を行う。
【００１８】
＜画像処理装置のハードウェア構成＞
次に、画像処理装置１２０のハードウェア構成について説明する。図２は、画像処理装置のハードウェア構成の一例を示す図である。
【００１９】
図２に示すように、画像処理装置１２０は、ＣＰＵ（Central  Processing  Unit）２０１、ＲＯＭ（Read  Only  Memory）２０２、ＲＡＭ（Random  Access  Memory）２０３を有する。ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３は、いわゆるコンピュータを形成する。また、画像処理装置１２０は、補助記憶装置２０４、操作装置２０５、表示装置２０６、Ｉ／Ｆ（Interface）装置２０７、ドライブ装置２０８を有する。なお、画像処理装置１２０の各ハードウェアは、バス２０９を介して相互に接続されている。
【００２０】
ＣＰＵ２０１は、補助記憶装置２０４にインストールされた各種プログラム（例えば、前処理プログラム、線分抽出プログラム、帳票識別プログラム、文字認識プログラム等）を実行する。
【００２１】
ＲＯＭ２０２は、不揮発性メモリであり、主記憶装置として機能する。ＲＯＭ２０２は、補助記憶装置２０４にインストールされた各種プログラムをＣＰＵ２０１が実行するために必要な各種プログラム、データ等を格納する。具体的には、ＲＯＭ２０２はＢＩＯＳ（Basic  Input/Output  System）やＥＦＩ（Extensible  Firmware  Interface）等のブートプログラム等を格納する。
【００２２】
ＲＡＭ２０３は、ＤＲＡＭ（Dynamic  Random  Access  Memory）やＳＲＡＭ（Static  Random  Access  Memory）等の揮発性メモリであり、主記憶装置として機能する。ＲＡＭ２０３は、補助記憶装置２０４にインストールされた各種プログラムがＣＰＵ２０１によって実行される際に展開される、作業領域を提供する。
【００２３】
補助記憶装置２０４は、各種プログラムや、各種プログラムがＣＰＵ２０１によって実行される際に用いられる情報を格納する。
【００２４】
操作装置２０５は、画像処理装置１２０のユーザが画像処理装置１２０に対して各種指示を入力する際に用いる入力デバイスである。表示装置２０６は、画像処理装置１２０の内部情報を表示する表示デバイスである。
【００２５】
Ｉ／Ｆ装置２０７は、読取装置１１０と、画像処理装置１２０とを通信可能に接続する接続デバイスである。
【００２６】
ドライブ装置２０８は記録媒体２１０をセットするためのデバイスである。ここでいう記録媒体２１０には、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体２１０には、ＲＯＭ、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【００２７】
なお、補助記憶装置２０４にインストールされる各種プログラムは、例えば、配布された記録媒体２１０がドライブ装置２０８にセットされ、該記録媒体２１０に記録された各種プログラムがドライブ装置２０８により読み出されることでインストールされる。
【００２８】
＜画像処理装置の機能構成＞
次に、画像処理装置１２０の機能構成について説明する。ここでは、画像処理装置１２０の各部（前処理部１２１、線分抽出部１２２、帳票識別部１２３、文字認識部１２４）のうち、前処理部１２１及び線分抽出部１２２について、機能構成の詳細を説明する。
【００２９】
図３は、前処理部及び線分抽出部の機能構成の詳細を示す図である。図３に示すように、前処理部１２１は、帳票画像取得部３１１と、２値化部３１２とを有する。
【００３０】
帳票画像取得部３１１は、読取装置１１０より帳票画像を受信し、受信した帳票画像を２値化部３１２に通知する。２値化部３１２は、帳票画像を２値化することで、２値化画像を生成する。また、２値化部３１２は、生成した２値化画像を線分抽出部１２２及び文字認識部１２４に通知する。
【００３１】
線分抽出部１２２は、２値化画像取得部３２１と、黒ラン画像抽出部３２２と、線分候補領域特定部３２３と、文字領域画像抽出部３２４と、文字サイズ算出部３２５と、周囲領域特定部３２６と、ノイズ判定部３２７とを有する。
【００３２】
２値化画像取得部３２１は、２値化部３１２より２値化画像を受信し、黒ラン画像抽出部３２２及び文字領域画像抽出部３２４に通知する。
【００３３】
黒ラン画像抽出部３２２は、２値化画像から黒ラン画像を抽出する。黒ラン画像とは、２値化画像において、黒画素が横方向の１ラインまたは縦方向の１ラインに連続している塊を指す。黒ラン画像抽出部３２２は、横方向の各ラインで黒ラン画像を抽出し、線分候補領域特定部３２３に通知する。
【００３４】
なお、黒ラン画像抽出部３２２は、縦方向の各ラインについても同様の処理を行うことで、縦方向の黒ラン画像を抽出し、線分候補領域特定部３２３に通知する。
【００３５】
線分候補領域特定部３２３は抽出部の一例であり、黒ラン画像抽出部３２２より受信した横方向の黒ラン画像を、隣接する横方向のライン間で統合することで、横方向の線分候補を抽出する。同様に、線分候補領域特定部３２３は、黒ラン画像抽出部３２２より受信した縦方向の黒ラン画像を、隣接する縦方向のライン間で統合することで、縦方向の線分候補を抽出する。
【００３６】
また、線分候補領域特定部３２３は、それぞれの線分候補に外接する外接矩形領域（線分候補領域）を特定し、２値化画像における当該外接矩形領域の位置を示す線分候補領域情報を算出する。更に、線分候補領域特定部３２３は、算出した線分候補領域情報を、周囲領域特定部３２６に通知する。
【００３７】
文字領域画像抽出部３２４は、２値化画像から文字領域画像を抽出する。文字領域画像とは、２値化画像において、黒画素が互いに隣接している塊を指す。文字領域画像抽出部３２４は、抽出した各文字領域画像をラベリングして、文字サイズ算出部３２５に通知する。
【００３８】
文字サイズ算出部３２５は、文字領域画像抽出部３２４より受信した各文字領域画像に基づいて、２値化画像に含まれている各文字の文字幅（Ｗｃ）と文字高さ（Ｈｃ）とを算出する。
【００３９】
具体的には、文字サイズ算出部３２５は、文字領域画像に外接する外接矩形領域を特定し、特定した外接矩形領域の幅についてヒストグラムを作成し、出現頻度が最大となる幅を判定する。文字サイズ算出部３２５は、出現頻度が最大となる幅を、２値化画像に含まれている各文字の文字幅（Ｗｃ）として周囲領域特定部３２６に通知する。
【００４０】
同様に、文字サイズ算出部３２５は、特定した外接矩形領域の高さについてヒストグラムを作成し、出現頻度が最大となる高さを判定する。文字サイズ算出部３２５は、出現頻度が最大となる高さを、２値化画像に含まれている各文字の文字高さ（Ｈｃ）として周囲領域特定部３２６に通知する。
【００４１】
周囲領域特定部３２６は特定部の一例である。周囲領域特定部３２６は、線分候補領域特定部３２３より線分候補領域情報を受信し、文字サイズ算出部３２５より文字幅（Ｗｃ）及び文字高さ（Ｈｃ）を受信する。また、周囲領域特定部３２６は、受信した線分候補領域情報に基づいて、２値化画像における線分候補領域の位置を識別する。
【００４２】
そして、周囲領域特定部３２６は、位置を識別した線分候補領域に対して、上下方向及び左右方向に独立した領域（線分候補領域の周囲に位置する周囲領域）を特定し、特定した周囲領域の位置を示す周囲領域情報をノイズ判定部３２７に通知する。なお、周囲領域特定部３２６は、線分候補領域の周囲に位置する周囲領域を特定するにあたり、文字幅（Ｗｃ）及び文字高さ（Ｈｃ）を用いる。
【００４３】
ノイズ判定部３２７は判定部の一例である。ノイズ判定部３２７は、周囲領域特定部３２６より受信した周囲領域情報に基づいて、それぞれの線分候補について周囲領域を特定する。また、ノイズ判定部３２７は、２値化画像より、特定した周囲領域に含まれる各画素の画素値を抽出し、抽出した画素値に基づいて、それぞれの線分候補が線分であるのかノイズであるのかを判定する。
【００４４】
ノイズ判定部３２７は、それぞれの線分候補のうち、線分であると判定した線分候補について、線分の位置を示す線分情報を帳票識別部１２３に通知する。
【００４５】
＜線分抽出処理の流れ＞
次に、線分抽出部１２２により実行される線分抽出処理全体の流れについて説明する。図４は、線分抽出処理の流れを示すフローチャートである。画像処理装置１２０が起動し、前処理部１２１が読取装置１１０より帳票画像を受信し、２値化画像を生成すると、図４に示す線分抽出処理が開始される。
【００４６】
ステップＳ４０１において、２値化画像取得部３２１は、２値化部３１２より２値化画像を受信する。
【００４７】
ステップＳ４０２において、黒ラン画像抽出部３２２及び線分候補領域特定部３２３は、線分候補抽出処理を実行し、線分候補領域情報を周囲領域特定部３２６に通知する。なお、線分候補抽出処理（ステップＳ４０２）の詳細は後述する。
【００４８】
ステップＳ４０３において、文字領域画像抽出部３２４及び文字サイズ算出部３２５は、文字サイズ算出処理を実行し、文字幅（Ｗｃ）及び文字高さ（Ｈｃ）を、周囲領域特定部３２６に通知する。なお、文字サイズ算出処理（ステップＳ４０３）の詳細は後述する。
【００４９】
ステップＳ４０４において、周囲領域特定部３２６は、線分候補の数をカウントするカウンタｉに１を代入する。
【００５０】
ステップＳ４０５において、周囲領域特定部３２６は、ｉ番目の線分候補についての線分候補領域情報を、線分候補領域特定部３２３より受信する。
【００５１】
ステップＳ４０６において、周囲領域特定部３２６は、ｉ番目の線分候補が横方向の線分候補であった場合、ｉ番目の線分候補についての線分候補領域情報に基づいて、線分候補領域に対する周囲領域のうち、上領域及び下領域を特定する。
【００５２】
また、周囲領域特定部３２６は、ｉ番目の線分候補が縦方向の線分候補であった場合、ｉ番目の線分候補についての線分候補領域情報と、文字高さ（Ｈｃ）とに基づいて、線分候補領域に対する周囲領域のうち、上領域及び下領域を特定する。
【００５３】
そして、周囲領域特定部３２６は、特定した上領域及び下領域の２値化画像における位置を示す上領域情報及び下領域情報を算出し、周囲領域情報としてノイズ判定部３２７に通知する。なお、上下領域情報算出処理（ステップＳ４０６）の詳細は後述する。
【００５４】
ステップＳ４０７において、周囲領域特定部３２６は、ｉ番目の線分候補が横方向の線分候補であった場合、ｉ番目の線分候補についての線分候補領域情報と、文字幅（Ｗｃ）とに基づいて、線分候補領域に対する周囲領域のうち、左領域及び右領域を特定する。
【００５５】
また、周囲領域特定部３２６は、ｉ番目の線分候補が縦方向の線分候補であった場合、ｉ番目の線分候補についての線分候補領域情報に基づいて、線分候補領域に対する周囲領域のうち、左領域及び右領域を特定する。
【００５６】
そして、周囲領域特定部３２６は、特定した左領域及び右領域の２値化画像における位置を示す左領域情報及び右領域情報を算出し、周囲領域情報としてノイズ判定部３２７に通知する。なお、左右領域情報算出処理の詳細（ステップＳ４０７）は後述する。
【００５７】
ステップＳ４０８において、ノイズ判定部３２７は、ｉ番目の線分候補についての周囲領域情報に基づいて特定される周囲領域（上領域、下領域、左領域、右領域）に含まれる各画素の画素値を２値化画像より抽出する。そして、ノイズ判定部３２７は、抽出した画素値に基づいて、ｉ番目の線分候補が、線分であるのかノイズであるのかを判定する。なお、ノイズ判定処理（ステップＳ４０８）の詳細は後述する。
【００５８】
ステップＳ４０９において、周囲領域特定部３２６は、全ての線分候補についてステップＳ４０５〜ステップＳ４０８までの処理を行ったか否かを判定する。ステップＳ４０９において、線分候補の中に、ステップＳ４０５〜ステップＳ４０８までの処理を行っていない線分候補があると判定した場合には、ステップＳ４１０に進む。
【００５９】
ステップＳ４１０において、周囲領域特定部３２６は、カウンタｉをインクリメントし、ステップＳ４０５に戻る。
【００６０】
一方、ステップＳ４０９において、全ての線分候補について、ステップＳ４０５〜ステップＳ４０８までの処理を行ったと判定した場合、線分抽出処理を終了する。
【００６１】
＜線分候補抽出処理の詳細＞
次に、線分候補抽出処理（図４のステップＳ４０２）の詳細について説明する。図５は、線分候補抽出処理の詳細を示すフローチャートである。ここでは、横方向の線分候補を抽出する場合の線分候補抽出処理について、具体例を参照しながら説明する。
【００６２】
ステップＳ５０１において、黒ラン画像抽出部３２２は、２値化画像５００を取得し、取得した２値化画像５００の横方向の各ラインで、所定の閾値以上の長さを有する黒ラン画像を抽出する。なお、２値化画像５００には、横方向の線分５１１、５１２と、縦方向の線分５３１、５３３とが含まれ、更に、文字列５４０が含まれているものとする。
【００６３】
ステップＳ５０２において、黒ラン画像抽出部３２２は、ステップＳ５０１において抽出した黒ラン画像のうち、隣接するライン間（ここでは、隣接する横方向のライン間）の黒ラン画像を統合することで、横方向の線分候補を抽出する。
【００６４】
ステップＳ５０３において、黒ラン画像抽出部３２２は、抽出した線分候補に外接する外接矩形領域５２１、５２２、５４１〜５４６を特定する。
【００６５】
なお、外接矩形領域５２１は、線分候補として抽出された線分５１１に外接する外接矩形領域である。線分５１１は、複数ライン分の黒ラン画像が統合されることで、線分候補として抽出される。
【００６６】
同様に、外接矩形領域５２２は、線分候補として抽出された線分５１２に外接する外接矩形領域である。線分５１２は、複数ライン分の黒ラン画像が統合されることで、線分候補として抽出される。
【００６７】
一方、外接矩形領域５４１〜５４６は、文字列５４０に含まれる文字の一部に外接する外接矩形領域である。図５に示すように、文字列５４０に含まれる文字の一部も、複数ライン分の黒ラン画像が統合されることで、線分候補として抽出される。
【００６８】
ステップＳ５０４において、線分候補領域特定部３２３は、特定した外接矩形領域５２１、５２２、５４１〜５４６の２値化画像５００内での位置を示す線分候補領域情報を算出し、周囲領域特定部３２６に通知する。
【００６９】
＜文字サイズ算出処理の流れ＞
次に、文字サイズ算出処理（図４のステップＳ４０３）の詳細について説明する。図６は、文字サイズ算出処理の詳細を示すフローチャートである。ここでは、文字幅（Ｗｃ）を算出する場合の文字サイズ算出処理について、具体例を参照しながら説明する。
【００７０】
ステップＳ６０１において、文字領域画像抽出部３２４は、２値化画像５００を取得し、取得した２値化画像５００から文字領域画像を抽出し、抽出した各文字領域画像をラベリングして、文字サイズ算出部３２５に通知する。なお、図６に示すように、２値化画像５００には、文字列５４０が含まれるものとする。
【００７１】
ステップＳ６０２において、文字サイズ算出部３２５は、文字領域画像抽出部３２４より通知された各文字領域画像に外接する外接矩形領域６２１〜６３５をそれぞれ特定する。
【００７２】
ステップＳ６０３において、文字サイズ算出部３２５は、特定した各外接矩形領域６２１〜６３５の幅を算出し、算出した外接矩形領域の幅について、ヒストグラム６４０を作成する。
【００７３】
ステップＳ６０４において、文字サイズ算出部３２５は、作成したヒストグラム６４０に基づいて、出現頻度が最大となる幅を判定する。また、文字サイズ算出部３２５は、出現頻度が最大となる幅を文字幅（Ｗｃ）に決定し、周囲領域特定部３２６に通知する。
【００７４】
＜上下領域情報算出処理及び左右領域情報算出処理の詳細＞
次に、上下領域情報算出処理（図４のステップＳ４０６）及び左右領域情報算出処理（図４のステップＳ４０７）の詳細について説明する。上述したとおり、周囲領域特定部３２６は、線分候補領域それぞれに対して、周囲領域として、上領域、下領域、左領域、右領域を特定する。ここでは、横方向の線分候補についての上下領域情報算出処理及び左右領域情報算出処理について説明する。
【００７５】
図７は、上下領域情報算出処理及び左右領域情報算出処理の詳細を示すフローチャートである。このうち、図７（ａ）は、周囲領域情報として、上領域情報と下領域情報とを算出する上下領域情報算出処理のフローチャートを表している。図７（ｃ）の具体例を参照しながら、図７（ａ）に示す上下領域情報算出処理の流れについて説明する。
【００７６】
ステップＳ７０１において、周囲領域特定部３２６は、線分候補領域特定部３２３より線分候補領域情報を取得する。線分候補領域情報には、線分候補に外接する外接矩形領域５２１の左上の頂点の座標（ｘ１，ｙ１）と、右下の頂点の座標（ｘ２，ｙ２）とが含まれているものとする（図７（ｃ）参照）。
【００７７】
ステップＳ７０２において、周囲領域特定部３２６は、上領域（Ａｕ）の位置を示す上領域情報として、上領域（Ａｕ）の左上の頂点の座標（ｘ１，ｙ１−Ｋ×Ｈ）と、右下の頂点の座標（ｘ２，ｙ１−１）とを算出する。なお、“Ｈ”は、線分候補に外接する外接矩形領域５２１の太さを表す。また、“Ｋ”は所定数を表す。
【００７８】
つまり、上領域（Ａｕ）は、線分候補に外接する外接矩形領域５２１の上側に隣接する矩形領域であって、線分候補に外接する外接矩形領域５２１と同じ幅（ｗ）を有する。また、上領域（Ａｕ）は、線分候補に外接する外接矩形領域５２１の太さ（Ｈ）を基準として所定数（Ｋ）倍の高さ（Ｋ×Ｈ）を有する。
【００７９】
ステップＳ７０３において、周囲領域特定部３２６は、下領域（Ａｄ）の位置を示す下領域情報として、下領域（Ａｄ）の左上の頂点の座標（ｘ１，ｙ２＋１）と、右下の頂点の座標（ｘ２，ｙ２＋Ｋ×Ｈ）とを算出する。
【００８０】
つまり、下領域（Ａｄ）は、線分候補に外接する外接矩形領域５２１の下側に隣接する矩形領域であって、線分候補に外接する外接矩形領域５２１と同じ幅（ｗ）を有する。また、下領域（Ａｄ）は、線分候補に外接する外接矩形領域５２１の太さ（Ｈ）を基準として所定数（Ｋ）倍の高さ（Ｋ×Ｈ）を有する。
【００８１】
図７（ｂ）は、周囲領域情報として、左領域情報と右領域情報とを算出する左右領域情報算出処理のフローチャートを表している。図７（ｃ）の具体例を参照しながら、図７（ｂ）に示す左右領域情報算出処理について説明する。
【００８２】
ステップＳ７１１において、周囲領域特定部３２６は、線分候補領域特定部３２３より線分候補領域情報を取得する。上述したとおり、線分候補領域情報には、線分候補に外接する外接矩形領域５２１の左上の頂点の座標（ｘ１，ｙ１）と、右下の頂点の座標（ｘ２，ｙ２）とが含まれているものとする（図７（ｃ）参照）。
【００８３】
ステップＳ７１２において、周囲領域特定部３２６は、文字サイズ算出部３２５より文字幅（Ｗｃ）を取得する。
【００８４】
ステップＳ７１３において、周囲領域特定部３２６は、左領域（Ａｌ）の位置を示す左領域情報として、左領域（Ａｌ）の左上の頂点の座標（ｘ１−Ｗｃ，ｙ１−Ｋ×Ｈ）と、右下の頂点の座標（ｘ１−１，ｙ２＋Ｋ×Ｈ）とを算出する。
【００８５】
つまり、左領域（Ａｌ）は、線分候補に外接する外接矩形領域５２１の左側に隣接する矩形領域であって、文字幅（Ｗｃ）と同じ幅（Ｗｃ）を有する。また、左領域（Ａｌ）は、線分候補に外接する外接矩形領域５２１の太さ（Ｈ）を基準として、（２Ｋ）倍したものに、線分候補に外接する外接矩形領域５２１の太さ（Ｈ）を加算した高さ（２×Ｋ×Ｈ＋Ｈ）を有する。
【００８６】
ステップＳ７１４において、周囲領域特定部３２６は、右領域（Ａｒ）の位置を示す右領域情報として、右領域（Ａｒ）の左上の頂点の座標（ｘ２＋１，ｙ１−Ｋ×Ｈ）と、右下の頂点の座標（ｘ２＋Ｗｃ，ｙ２＋Ｋ×Ｈ）とを算出する。
【００８７】
つまり、右領域（Ａｒ）は、線分候補に外接する外接矩形領域５２１の右側に隣接する矩形領域であって、文字幅（Ｗｃ）と同じ幅（Ｗｃ）を有する。また、右領域（Ａｒ）は、線分候補に外接する外接矩形領域５２１の太さ（Ｈ）を基準として、（２Ｋ）倍したものに、線分候補に外接する外接矩形領域５２１の太さ（Ｈ）を加算した高さ（２×Ｋ×Ｈ＋Ｈ）を有する。
【００８８】
＜ノイズ判定処理の詳細＞
次に、ノイズ判定処理（図４のステップＳ４０８）の詳細について説明する。図８及び図９は、ノイズ判定処理の詳細を示す第１及び第２のフローチャートである。
【００８９】
ステップＳ８０１において、ノイズ判定部３２７は、周囲領域特定部３２６より、周囲領域情報（上領域（Ａｕ）情報、下領域（Ａｄ）情報、左領域（Ａｌ）情報、右領域（Ａｒ）情報）を受信する。
【００９０】
ステップＳ８０２において、ノイズ判定部３２７は、周囲領域の数をカウントするカウンタｎに１を代入する。
【００９１】
ステップＳ８０３において、ノイズ判定部３２７は、ｎ番目の周囲領域に含まれる各画素の画素値を抽出する。ここでは、１番目の周囲領域として、２値化画像より、上領域（Ａｕ）に含まれる各画素の画素値を抽出する。
【００９２】
ステップＳ８０４において、ノイズ判定部３２７は、抽出した画素値（ｇ（ｘ、ｙ））の平均値ｍを下式に基づいて算出する。
【００９３】
【数１】
2019046377.tif 000003
【００９４】
ステップＳ８０５において、ノイズ判定部３２７は、抽出した画素値（ｇ（ｘ、ｙ））の分散値ｖを下式に基づいて算出する。
【００９５】
【数２】
2019046377.tif 000004
【００９６】
ステップＳ８０６において、ノイズ判定部３２７は、カウンタｎが４未満であるか否かを判定する。ステップＳ８０６において、カウンタｎが４未満である場合（ステップＳ８０６においてＹｅｓの場合）には、ステップＳ８０７に進む。
【００９７】
ステップＳ８０７において、ノイズ判定部３２７は、カウンタｎをインクリメントし、ステップＳ８０３に戻る。
【００９８】
一方、ステップＳ８０６において、カウンタｎが４以上である場合（ステップＳ８０６においてＮｏの場合）には、ステップＳ８０８に進む。
【００９９】
ステップＳ８０８において、ノイズ判定部３２７は、上領域内の画素値の分散値（ｖｕ）と、下領域内の画素値の分散値（ｖｄ）と、左領域内の画素値の分散値（ｖｌ）と、右領域内の画素値の分散値（ｖｒ）とを取得し、図９のステップＳ９０１に進む。
【０１００】
ステップＳ９０１において、ノイズ判定部３２７は、周囲領域についての各分散値に基づいて、線分候補が線分であるのかノイズであるのかを判定するための指標値を算出する。具体的には、ノイズ判定部３２７は、周囲領域の幅と高さのうち、長さが長い方の値（Ｔとおく）を用いて、周囲領域についての各分散値を除算することで各分散値を正規化し、指標値（正規化分散値）を算出する（下式参照）。
【０１０１】
【数３】
2019046377.tif 000005
【０１０２】
例えば、上領域（Ａｕ）の場合、高さ（Ｋ×Ｈ）より幅（ｗ）の方が長いため、Ｔ＝ｗとなり、指標値（Ｓｕ）は、分散値（ｖｕ）／ｗとなる。同様に、下領域（Ａｄ）の場合、指標値（Ｓｄ）は、分散値（ｖｄ）／ｗとなる。
【０１０３】
一方、左領域（Ａｌ）の場合、幅（Ｗｃ）より高さ（２×Ｋ×Ｈ＋Ｈ）の方が長いため、Ｔ＝（２×Ｋ×Ｈ＋Ｈ）となり、指標値（Ｓｌ）は、分散値（ｖｌ）／（２×Ｋ×Ｈ＋Ｈ）となる。同様に、右領域（Ａｒ）の場合、指標値（Ｓｒ）は、分散値（ｖｒ）／（２×Ｋ×Ｈ＋Ｈ）となる。
【０１０４】
なお、本実施形態では、指標値として正規化分散値を用いる例を示したが、正規化分散値以外の指標値を用いてもよい。例えば、ノイズ判定部３２７は、それぞれの周囲領域内で各画素の勾配値（勾配の強さ）を求め、周囲領域内の勾配値の平均値を、指標値として用いてもよい。ここで、各画素の勾配値は、例えば、１つの画素とその周囲にある８画素との間の差分値を求め、その最大値と定義してもよい。
【０１０５】
あるいは、ノイズ判定部３２７は、例えば、線分候補領域の平均の画素値を求め、各周囲領域で、線分候補領域の平均の画素値に対して所定の閾値以内の画素値となる、類似している画素を特定して、その画素数を求め、その画素数をそれぞれの周囲領域の画素数で割った平均値を、指標値として用いてもよい。
【０１０６】
ステップＳ９０２において、ノイズ判定部３２７は、算出した指標値（Ｓｕ、Ｓｄ、ｌ、Ｓｒ）に基づいて、線分候補が線分であるのかノイズであるのかを判定する。具体的には、ノイズ判定部３２７は、指標値についての下記の条件が成立するか否かを判定する。
・Ｓｕ＜Ｔｈ１、かつ、Ｓｄ＜Ｔｈ１
・Ｓｌ＜Ｔｈ２、かつ、Ｓｒ＜Ｔｈ２
ただし、Ｔｈ１、Ｔｈ２は所定の閾値である。
【０１０７】
ステップＳ９０２において上記条件が成立すると判定した場合には（ステップＳ９０２においてＹｅｓの場合には）、ステップＳ９０３に進む。ステップＳ９０２において、ノイズ判定部３２７は、処理対象の線分候補が、線分であると判定する。つまり、周囲領域に分布している黒画素が少なく、正規化分散値が小さい場合には、処理対象の線分候補が、線分であると判定する。
【０１０８】
ステップＳ９０４において、ノイズ判定部３２７は、線分であると判定した線分候補についての線分候補領域情報を、線分情報として、帳票識別部１２３に出力する。
【０１０９】
一方、ステップＳ９０２において上記条件が成立しないと判定した場合には（ステップＳ９０２においてＮｏの場合には）、ステップＳ９０５に進む。ステップＳ９０５において、ノイズ判定部３２７は、処理対象の線分候補が、ノイズであると判定する。つまり、周囲領域に分布している黒画素が多く、正規化分散値が大きい場合には、処理対象の線分候補が、線分ではない（ノイズである）と判定する。
【０１１０】
＜線分抽出処理の効果＞
次に、線分抽出処理（図４）の効果について説明する。図１０は、線分抽出処理の効果を説明するための図である。
【０１１１】
図１０（ａ）は、文字列の一部が黒ラン画像として抽出され、線分候補に外接する外接矩形領域１００１が特定された様子を示している。このような場合でも、線分抽出処理（図４）によれば、上領域（Ａｕ）の分散値（ｖｕ）が大きくなる。このため、指標値（Ｓｕ）＜Ｔｈ１が成立せず、ノイズ判定部３２７は、当該線分候補をノイズと判定する。つまり、線分抽出処理（図４）によれば、誤抽出を低減させることができる。
【０１１２】
図１０（ｂ）は、文字列の一部が黒ラン画像として抽出され、線分候補に外接する外接矩形領域１００２が特定された様子を示している。このような場合でも、線分抽出処理（図４）によれば、左領域（Ａｌ）の分散値（ｖｌ）と右領域（Ａｒ）の分散値（ｖｒ）が大きくなる。このため、指標値（Ｓｌ）＜Ｔｈ２及び指標値（Ｓｒ）＜Ｔｈ２が成立せず、ノイズ判定部３２７では、当該線分候補をノイズと判定する。つまり、線分抽出処理（図４）によれば、誤抽出を低減させることができる。
【０１１３】
図１０（ｃ）は、線分が黒ラン画像として抽出され、線分候補に外接する外接矩形領域１００３が特定された様子を示している。図１０（ｃ）の場合、上領域（Ａｕ）において文字列が重なっているため、上領域（Ａｕ）の分散値（ｖｕ）は大きくなる。
【０１１４】
しかしながら、文字列が重なっているのは、線分の一部にすぎないため、指標値（Ｓｕ）＝ｖｕ／（２×Ｋ×Ｈ＋Ｈ）を算出した場合、指標値（Ｓｕ）は所定の閾値Ｔｈ１よりも小さくなる。この結果、ノイズ判定部３２７では、当該線分候補を線分と判定する。つまり、線分抽出処理（図４）によれば、線分の抽出漏れを防ぐことができる。
【０１１５】
以上の説明から明らかなように、第１の実施形態における画像処理装置は、帳票画像から線分候補を抽出し、抽出した線分候補について、周囲領域を特定する。そして、第１の実施形態における画像処理装置は、特定した周囲領域に含まれる各画素の正規化分散値が、所定の値より小さいか否かに応じて、抽出した線分候補が線分であるのかノイズであるのかを判定する。
【０１１６】
これにより、第１の実施形態における画像処理装置によれば、帳票画像から線分を抽出する際の誤抽出を低減させることができる。
【０１１７】
［第２の実施形態］
上記第１の実施形態では、横方向の線分候補についての線分候補抽出処理、上下領域情報算出処理、左右領域情報算出処理を説明したが、縦方向の線分候補についても同様である。
【０１１８】
例えば、縦方向の線分候補の場合、画像に含まれる文字の高さを基準として、上領域及び下領域を特定する。縦方向の線分候補の場合、横方向の線分候補についての左右領域情報算出処理において、幅を高さと読み替え、高さを幅と読み替え、左領域を上領域と読み替え、右領域を下領域と読み替えることにより、上下領域情報算出処理を実行することができる。
【０１１９】
同様に、縦方向の線分候補の場合、線分の太さを基準として、左領域及び右領域を特定する。縦方向の線分候補の場合、横方向の線分候補についての上下領域情報算出処理において、幅を高さと読み替え、高さを幅と読み替え、上領域を左領域と読み替え、下領域を右領域と読み替えることにより、左右領域情報算出処理を実行することができる。
【０１２０】
また、上記第１の実施形態において説明した周囲領域（上領域、下領域、左領域、右領域）それぞれの幅及び高さの算出方法は一例にすぎず、他の算出方法により幅及び高さを算出してもよい。
【０１２１】
また、上記第１の実施形態では、指標値（正規化分散値）を算出するにあたり、２値化画像を用いるものとして説明したが、２値化画像に代えて帳票画像を用いてもよい。
【０１２２】
また、上記第１の実施形態では、文字サイズ算出処理の際、２値化画像全体から文字幅（及び文字高さ）を算出するものとして説明した。しかしながら、２値化画像を複数の領域に分け、それぞれの領域において文字幅（及び文字高さ）を算出するようにしてもよい。
【０１２３】
また、上記第１の実施形態では、画像処理装置１２０を、読取装置１１０とは別体として設けるものとして説明した。しかしながら、画像処理装置１２０の各部（前処理部１２１、線分抽出部１２２、帳票識別部１２３、文字認識部１２４）の全部または一部は、読取装置１１０において実現されてもよい。
【０１２４】
また、上記第１の実施形態では、読取装置１１０として、スキャナ等の画像形成装置を例示したが、例えば、読取装置１１０として、ＭＦＰ（Multi-Function  Peripheral）等の画像形成装置を用いてもよい。
【０１２５】
なお、開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
画像から線分の候補領域を抽出し、
前記線分の候補領域の周囲となる周囲領域を特定し、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する、
処理をコンピュータに実行させる線分抽出プログラム。
（付記２）
前記線分の候補領域の上下方向と左右方向の独立した領域を、前記周囲領域として特定することを特徴とする付記１に記載の線分抽出プログラム。
（付記３）
前記画像に含まれる文字の幅を特定し、
前記文字の幅を基準として、前記周囲領域の左右方向の大きさを決定することを特徴とする付記１または２に記載の線分抽出プログラム。
（付記４）
前記画像における線分の太さを特定し、
前記線分の太さを基準として、前記周囲領域の上下方向の大きさを決定することを特徴とする付記３に記載の線分抽出プログラム。
（付記５）
前記画像に含まれる文字の高さを特定し、
前記文字の高さを基準として、前記周囲領域の上下方向の大きさを決定することを特徴とする付記１または２に記載の線分抽出プログラム。
（付記６）
前記画像における線分の太さを特定し、
前記線分の太さを基準として、前記周囲領域の左右方向の大きさを決定することを特徴とする付記５に記載の線分抽出プログラム。
（付記７）
画像から線分の候補領域を抽出する抽出部と、
前記線分の候補領域の周囲となる周囲領域を特定する特定部と、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する判定部と
を有することを特徴とする画像処理装置。
（付記８）
画像から線分の候補領域を抽出し、
前記線分の候補領域の周囲となる周囲領域を特定し、
前記周囲領域の特徴量から算出される指標値に基づいて、前記線分の候補領域が線分か否かを判定する、
処理をコンピュータが実行する線分抽出方法。
【０１２６】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０１２７】
１００              ：帳票画像処理システム
１１０              ：読取装置
１２０              ：画像処理装置
１２１              ：前処理部
１２２              ：線分抽出部
１２３              ：帳票識別部
１２４              ：文字認識部
３２１              ：２値化画像取得部
３２２              ：黒ラン画像抽出部
３２３              ：線分候補領域特定部
３２４              ：文字領域画像抽出部
３２５              ：文字サイズ算出部
３２６              ：周囲領域特定部
３２７              ：ノイズ判定部
６０１、６０２      ：線分
６１１、６１２      ：外接矩形領域
６２１、６２２      ：外接矩形領域
６３１〜６３６      ：外接矩形領域
【図１】
2019046377.tif 000006
【図２】
2019046377.tif 000007
【図３】
2019046377.tif 000008
【図４】
2019046377.tif 000009
【図５】
2019046377.tif 000010
【図６】
2019046377.tif 000011
【図７】
2019046377.tif 000012
【図８】
2019046377.tif 000013
【図９】
2019046377.tif 000014
【図１０】
2019046377.tif 000015