(57)【要約】【課題】罫線によって囲まれている領域を分割するための区切りを抽出する場合にあって、フィールド枠線の下側の枠線から短く直立したものを区切りとして抽出する技術に比べて、精度よく区切りを抽出することができるようにした画像処理装置を提供する。【解決手段】画像処理装置の第１の抽出手段は、画像から罫線と非罫線を抽出し、第２の抽出手段は、前記罫線における前記非罫線の位置が規則的に並んでいる場合は、該罫線によって囲まれている領域を分割するための区切りとして、該非罫線を抽出する。【選択図】図１
2017010187.tif 000002
【特許請求の範囲】
【請求項１】
画像から罫線と非罫線を抽出する第１の抽出手段と、
前記罫線における前記非罫線の位置が規則的に並んでいる場合は、該罫線によって囲まれている領域を分割するための区切りとして、該非罫線を抽出する第２の抽出手段
を具備することを特徴とする画像処理装置。
【請求項２】
前記第２の抽出手段は、予め定められた幅を最小幅として、前記罫線を等分に分割した位置に、前記非罫線がある場合に、該非罫線を前記区切りとして抽出する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の抽出手段は、高さと幅が予め定められた範囲にある前記非罫線を対象とする
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記第２の抽出手段は、前記第２の抽出手段によって抽出された非罫線のうち、区切りとしての大きさを超える第１の非罫線とその他の第２の非罫線に分類し、該第２の非罫線の大きさを用いて、該第１の非罫線を分割する
ことを特徴とする請求項１から３のいずれか一項に記載の画像処理装置。
【請求項５】
前記第２の抽出手段は、罫線によって囲まれている領域内に、既に印刷された文字が含まれている場合は、該文字以外の領域を形成する罫線部分を分割するための区切りとして、非罫線を抽出する
ことを特徴とする請求項１から４のいずれか一項に記載の画像処理装置。
【請求項６】
前記第２の抽出手段は、罫線に囲まれている領域が複数並んでいる場合は、他の領域における区切りとしての非罫線を用いて、個々の領域における区切りとしての非罫線を抽出する
ことを特徴とする請求項１から５のいずれか一項に記載の画像処理装置。
【請求項７】
コンピュータを、
画像から罫線と非罫線を抽出する第１の抽出手段と、
前記罫線における前記非罫線の位置が規則的に並んでいる場合は、該罫線によって囲まれている領域を分割するための区切りとして、該非罫線を抽出する第２の抽出手段
として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、文字枠線の傾きや、実線、破線など枠線の線種にかかわりなく文字枠線を検出できる文字認識装置及び文字枠線の検出方法を提供することを課題とし、文字枠線検出部はフィールド枠線検出部、文字区切り線検出部及びひげ線検出部を備えており、文字枠線をその性質に応じて検出し、すなわち、フィールド枠線検出部によりフィールドを構成する文字枠線の一種であるフィールド枠線（フィールド区切り線）を検出し、文字区切り線検出部はフィールド枠線検出部によって検出されたフィールド区切り線を基準としてフィールドを構成する文字枠線の一種である文字区切り線を検出し、また、ひげ線検出部は同様にフィールド区切り線を基準としてフィールドを構成する文字枠線の一種であるひげ線を検出することが開示されている。
【０００３】
特許文献２には、罫線や枠などの要素をできるだけ正確に抽出し、未抽出や過抽出を抑え、手作業による図形入力を削減することを課題とし、読み込まれた帳票画像から罫線を抽出し、罫線情報から罫線枠を抽出した後、抽出された罫線枠に相当する部分の画像データを前記帳票画像から消去し、生成された枠消去画像から再び罫線を抽出し、さらに抽出された罫線に相当する部分の画像データを消去し、生成された罫線消去画像から文字列を抽出することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１５５１１３号公報
【特許文献２】特開２０００−１７２７８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術によれば、フィールド枠線の下側の枠線から短く直立し、そのフィールド内で１文字ずつの記入領域を区画する縦線からなるひげ線を検出することが行われている。
しかし、規則的に並んでいない非罫線であっても、フィールド枠線の下側の枠線から短く直立したものであれば、区切りのひげ線として検出してしまう。
本発明は、罫線によって囲まれている領域を分割するための区切りを抽出する場合にあって、フィールド枠線の下側の枠線から短く直立したものを区切りとして抽出する技術に比べて、精度よく区切りを抽出することができるようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、画像から罫線と非罫線を抽出する第１の抽出手段と、前記罫線における前記非罫線の位置が規則的に並んでいる場合は、該罫線によって囲まれている領域を分割するための区切りとして、該非罫線を抽出する第２の抽出手段を具備することを特徴とする画像処理装置である。
【０００７】
請求項２の発明は、前記第２の抽出手段は、予め定められた幅を最小幅として、前記罫線を等分に分割した位置に、前記非罫線がある場合に、該非罫線を前記区切りとして抽出することを特徴とする請求項１に記載の画像処理装置である。
【０００８】
請求項３の発明は、前記第２の抽出手段は、高さと幅が予め定められた範囲にある前記非罫線を対象とすることを特徴とする請求項１又は２に記載の画像処理装置である。
【０００９】
請求項４の発明は、前記第２の抽出手段は、前記第２の抽出手段によって抽出された非罫線のうち、区切りとしての大きさを超える第１の非罫線とその他の第２の非罫線に分類し、該第２の非罫線の大きさを用いて、該第１の非罫線を分割することを特徴とする請求項１から３のいずれか一項に記載の画像処理装置である。
【００１０】
請求項５の発明は、前記第２の抽出手段は、罫線によって囲まれている領域内に、既に印刷された文字が含まれている場合は、該文字以外の領域を形成する罫線部分を分割するための区切りとして、非罫線を抽出することを特徴とする請求項１から４のいずれか一項に記載の画像処理装置である。
【００１１】
請求項６の発明は、前記第２の抽出手段は、罫線に囲まれている領域が複数並んでいる場合は、他の領域における区切りとしての非罫線を用いて、個々の領域における区切りとしての非罫線を抽出することを特徴とする請求項１から５のいずれか一項に記載の画像処理装置である。
【００１２】
請求項７の発明は、コンピュータを、画像から罫線と非罫線を抽出する第１の抽出手段と、前記罫線における前記非罫線の位置が規則的に並んでいる場合は、該罫線によって囲まれている領域を分割するための区切りとして、該非罫線を抽出する第２の抽出手段として機能させるための画像処理プログラムである。
【発明の効果】
【００１３】
請求項１の画像処理装置によれば、罫線によって囲まれている領域を分割するための区切りを抽出する場合にあって、フィールド枠線の下側の枠線から短く直立したものを区切りとして抽出する技術に比べて、精度よく区切りを抽出することができる。
【００１４】
請求項２の画像処理装置によれば、予め定められた幅を最小幅として、罫線を等分に分割した位置に、非罫線がある場合に、その非罫線を区切りとして抽出することができる。
【００１５】
請求項３の画像処理装置によれば、高さと幅が予め定められた範囲にある非罫線を対象として、区切りを抽出することができる。
【００１６】
請求項４の画像処理装置によれば、区切り以外の非罫線と区切りである非罫線が接触している場合であっても、それを分割して区切りを抽出することができる。
【００１７】
請求項５の画像処理装置によれば、罫線によって囲まれている領域内に、既に印刷された文字が含まれている場合であっても、区切りを抽出することができる。
【００１８】
請求項６の画像処理装置によれば、罫線に囲まれている領域が複数並んでいる場合は、他の領域における区切りとしての非罫線を用いて、個々の領域における区切りとしての非罫線を抽出することができる。
【００１９】
請求項７の画像処理プログラムによれば、罫線によって囲まれている領域を分割するための区切りを抽出する場合にあって、フィールド枠線の下側の枠線から短く直立したものを区切りとして抽出する技術に比べて、精度よく区切りを抽出することができる。
【図面の簡単な説明】
【００２０】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を利用したシステム構成例を示す説明図である。
【図３】本実施の形態において、対象とする画像の例を示す説明図である。
【図４】本実施の形態で、罫線と非罫線を抽出した例を示す説明図である。
【図５】非罫線部分を文字認識した場合の例を示す説明図である。
【図６】本実施の形態による処理例を示すフローチャートである。
【図７】本実施の形態による処理例を示す説明図である。
【図８】本実施の形態による処理例を示す説明図である。
【図９】本実施の形態による処理例を示すフローチャートである。
【図１０】本実施の形態による処理例を示す説明図である。
【図１１】本実施の形態による処理例を示す説明図である。
【図１２】本実施の形態による処理例を示す説明図である。
【図１３】本実施の形態による処理例を示すフローチャートである。
【図１４】本実施の形態による処理例を示す説明図である。
【図１５】本実施の形態による処理例を示す説明図である。
【図１６】本実施の形態による処理例を示す説明図である。
【図１７】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２１】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２２】
本実施の形態である画像情報処理装置１００は、罫線によって囲まれている領域を分割するための区切りを抽出するものであって、図１の例に示すように、データ読込モジュール１１０、線分検出モジュール１２０、セル構成検出モジュール１３０、非罫線要素接続算出モジュール１４０、非線分区切り判断モジュール１５０を有している。
【００２３】
データ読込モジュール１１０は、線分検出モジュール１２０と接続されている。データ読込モジュール１１０は、画像を読み取り、その画像を線分検出モジュール１２０へ渡す。画像を読み取るとは、例えば、スキャナー、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク（コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む）等に記憶されている画像を読み出すこと等が含まれる。画像は、２値画像、多値画像（カラー画像を含む）であってもよい。読み取る画像は、１枚であってもよいし、複数枚であってもよい。また、画像の内容として、例えば、帳票のようにビジネスに用いられる文書、広告宣伝用のパンフレット等であってもよい。なお、その画像の読み取り対象である原稿内には、文字枠線が印刷されている。文字枠線は、その文字枠線内に収まるように文字を、印刷又は手書きで記入させるためのものである。また、読み取られた画像の文字枠線内には、文字が印刷又は記入（以下、記入という）されていてもよいし、記入されておらず空白のままのものであってもよい。文字が記入されている場合は、例えば、画像情報処理装置１００の後処理で、その文字を認識することが行われる。また、文字が記入されていない場合は、例えば、画像情報処理装置１００の後処理で、テンプレート作成に利用される。
【００２４】
文字枠線で囲まれている領域は、罫線によって囲まれている領域である。そして、文字の位置を規定するために、その領域を分割するための区切りが付されている場合が多い。この区切りが実線である場合は、従来技術によって区切りも含めた罫線（直線状の線分）と、その罫線以外の画素塊（非罫線、例えば、文字等）を分離することが可能である。なお、画素塊とは、４連結又は８連結で連続する画素領域である。
しかし、図３の例に示すような、上辺又は下辺の罫線から対方向（下又は上）にのびている短い線である区切り（セル区切り、ひげ線ともいわれる）がある。前述の特許文献１において「フィールド枠線の下側の枠線から短く直立したもの」と表現されているものである。なお、横書の場合は、上辺又は下辺の罫線から対方向にのびている区切りとなり、縦書の場合は、左辺又は右辺の罫線から対方向（右又は左）にのびている区切りとなる。
画像情報処理装置１００は、主に、このような区切りを対象としている。
【００２５】
線分検出モジュール１２０は、データ読込モジュール１１０、セル構成検出モジュール１３０、非罫線要素接続算出モジュール１４０と接続されている。線分検出モジュール１２０は、線分を抽出する。この線分は、文字枠線となる罫線の候補となる。例えば、直線状の線分を抽出する従来技術を用いればよい。
セル構成検出モジュール１３０は、線分検出モジュール１２０、非罫線要素接続算出モジュール１４０、非線分区切り判断モジュール１５０と接続されている。セル構成検出モジュール１３０は、線分検出モジュール１２０によって抽出された線分を対象として、文字枠線である罫線の構成を検出する。例えば、水平、垂直な線分によって構成される罫線構造を分析し、文字枠のセル構成要素を検出する。なお、文字枠の集合である表を、分析の対象として含んでいてもよい。分析として、罫線の始点、終点（線分の端点）の座標を抽出することを含む。また、その線分の太さ、色等を抽出するようにしてもよい。
【００２６】
非罫線要素接続算出モジュール１４０は、線分検出モジュール１２０、セル構成検出モジュール１３０、非線分区切り判断モジュール１５０と接続されている。非罫線要素接続算出モジュール１４０は、セル構成検出モジュール１３０によって検出された文字枠線である罫線と、その罫線以外の画素塊である非罫線を分離する。なお、前述した文字枠内の区切りは、非罫線として抽出されることになる。
そして、罫線における非罫線の位置を算出する。つまり、罫線を座標軸として、非罫線の位置を抽出するものである。例えば、文字枠線のうち下辺の罫線をＸ座標軸（例えば、左端を０）として、非罫線の位置（Ｘ座標）を抽出すればよい。この場合、区切りの他に、文字等の画素塊である非罫線が含まれることもある。また、その罫線に接触している非罫線のみの座標を抽出してもよい。この場合も、文字等が罫線に接触していることがあるので、区切りの他に、文字等の画素塊である非罫線が含まれることもある。
【００２７】
非線分区切り判断モジュール１５０は、セル構成検出モジュール１３０、非罫線要素接続算出モジュール１４０と接続されている。非線分区切り判断モジュール１５０は、罫線における非罫線の位置が規則的に並んでいる場合は、その罫線によって囲まれている領域を分割するための区切りとして、その非罫線を抽出する。非罫線要素接続算出モジュール１４０によって算出された罫線における非罫線の位置を用いる。その位置のうち、規則的に並んでいるものを区切りの非罫線として抽出する。
非線分区切り判断モジュール１５０は、予め定められた幅を最小幅として、罫線を等分に分割した位置に、非罫線がある場合に、その非罫線を区切りとして抽出するようにしてもよい。
【００２８】
また、非線分区切り判断モジュール１５０は、高さと幅が予め定められた範囲にある非罫線を対象とするようにしてもよい。詳細な処理について、図１２の例を用いて後述する。
また、非線分区切り判断モジュール１５０は、前述の処理によって抽出した非罫線のうち、区切りとしての大きさを超える第１の非罫線とその他の第２の非罫線に分類し、その第２の非罫線の大きさを用いて、その第１の非罫線を分割するようにしてもよい。詳細な処理について、図１３、図１４の例を用いて後述する。
また、非線分区切り判断モジュール１５０は、罫線によって囲まれている領域内に、既に印刷された文字が含まれている場合は、その文字以外の領域を形成する罫線部分を分割するための区切りとして、非罫線を抽出するようにしてもよい。詳細な処理について、図１５の例を用いて後述する。
また、非線分区切り判断モジュール１５０は、罫線に囲まれている領域が複数並んでいる場合は、他の領域における区切りとしての非罫線を用いて、個々の領域における区切りとしての非罫線を抽出するようにしてもよい。ここで「罫線に囲まれている領域が複数並んでいる場合」として、それらの領域が接触している場合（例えば、文字枠線によって表を形成している場合）であってもよいし、それらの領域が離れている場合であってもよい。また、それらの領域が接触している場合のみに適用するようにしてもよい。そして、それらの領域が離れている場合は、逆に、他の領域における区切りの位置とは独立に（無関係に）、区切りとなる非罫線を抽出してもよい。詳細な処理について、図１６の例を用いて後述する。
【００２９】
図２は、本実施の形態を利用したシステム構成例を示す説明図である。
図２（ａ）に示す例は、画像読取装置２１０と画像情報処理装置１００と帳票処理装置２３０によって構成したものである。
画像読取装置２１０は、画像情報処理装置１００と接続されている。画像読取装置２１０は、区切りのある文字枠が記載されている帳票を読み取るスキャナーである。
画像情報処理装置１００は、画像読取装置２１０、帳票処理装置２３０と接続されている。画像情報処理装置１００は、画像読取装置２１０によって読み取られた画像を受け付け、その文字枠から、区切りの非罫線を抽出し、文字枠内の文字部分を識別可能にする。
帳票処理装置２３０は、画像情報処理装置１００と接続されている。帳票処理装置２３０は、画像情報処理装置１００によって識別可能とされた文字枠内の文字部分を文字認識し、その結果を用いて各種の帳票処理を行う。
なお、画像情報処理装置１００は、画像読取装置２１０又は帳票処理装置２３０のいずれかと一体として構成してもよいし、画像読取装置２１０、画像情報処理装置１００、帳票処理装置２３０を一体として構成してもよい。
【００３０】
図２（ｂ）に示す例では、画像情報処理装置１００、画像読取装置２１０Ａ、画像読取装置２１０Ｂ、画像読取装置２１０Ｃ、帳票処理装置２３０Ａ、帳票処理装置２３０Ｂは、通信回線２９０を介してそれぞれ接続されている。通信回線２９０は、無線、有線、これらの組み合わせであってもよく、例えば、通信インフラとしてのインターネット、イントラネット等であってもよい。
ここでの画像読取装置２１０は、スキャナーであってもよいし、ファックスであってもよい。画像情報処理装置１００による機能をクラウドサービスとして実現してもよい。例えば、複数の拠点に設置された画像読取装置２１０から帳票の画像が送信され、画像情報処理装置１００が処理を行い、それらの帳票について帳票処理装置２３０が統合的な帳票処理を行うようにしてもよい。
【００３１】
図３は、本実施の形態において、対象とする画像の例を示す説明図である。データ読込モジュール１１０が読み込んだ画像の例を示している。この例では、文字枠内には、４つの文字を記載してもらうために、区切りが上辺と下辺の罫線に３個ずつある。なお、文字は手書きの数字であり、下辺の罫線又は区切りに接続しているものがあったり、ノイズが発生したりしている。
図４は、本実施の形態で、罫線と非罫線を抽出した例を示す説明図である。線分検出モジュール１２０による処理結果を示している。図４（ａ）の例は、罫線だけを抽出したものであり、図４（ｂ）の例は、罫線以外の画素塊（非罫線）だけを抽出したものである。
なお、図４（ｂ）に示した画像をそのまま文字認識した場合（本実施の形態のセル構成検出モジュール１３０、非罫線要素接続算出モジュール１４０、非線分区切り判断モジュール１５０による処理が行われなかった場合）、文字認識結果は図５の例に示すようになる。つまり、「．３．’７．’２”’９．．」のように認識されてしまう。例えば、区切りが「．’」に、ノイズが［. ”］に、区切りと重なった数字（本来は［８］）が［９］に誤認識されている。
【００３２】
図６は、本実施の形態による処理例を示すフローチャートである。具体例として、図３の例に示す画像を対象とした場合の処理例を説明する。
ステップＳ６０２では、データ読込モジュール１１０が、画像データを読み込む。図３の例に示すような画像を読み込む。
ステップＳ６０４では、線分検出モジュール１２０が、直線状の線分を抽出する。図４（ａ）の例に示すように罫線を抽出する。もちろんのことながら、罫線を抽出した結果、図４（ｂ）の例に示すように非罫線も抽出することになる。
【００３３】
ステップＳ６０６では、セル構成検出モジュール１３０が、セル構成要素を抽出する。図４（ａ）の例に示すように罫線を対象として、図７の例に示すように、矩形を構成する罫線７１０、罫線７２０、罫線７３０、罫線７４０を抽出する。例えば、各罫線の始点と終点の座標を抽出する。そして、この例は、１個の文字枠からなっていることを抽出する。
ステップＳ６０８では、非罫線要素接続算出モジュール１４０が、罫線と非罫線要素と接続関係を抽出する。図では、図７の例で示した罫線７２０（上辺の罫線）と罫線７４０（下辺の罫線）と、図４（ｂ）の例で示した非罫線との関係を抽出したものである。非罫線（非罫線要素８１０〜８３６）として、文字、区切り、ノイズ等が混在している。罫線７２０に接触している非罫線は非罫線要素８１０から８１８であり、罫線７４０に接触しているのは非罫線要素８２０〜８２８、非罫線要素８３２〜８３６であり、非罫線要素８３０（数字の「２」）は、接触していない。
ステップＳ６１０では、非線分区切り判断モジュール１５０が、区切り要素を抽出する。ステップＳ６１０の処理内容については、図９の例に示すフローチャートを用いて説明する。
【００３４】
図９は、本実施の形態（非線分区切り判断モジュール１５０）による処理例を示すフローチャートである。
ステップＳ９０２では、罫線の区間内における非罫線要素の座標を抽出する。図１０に例を示す。図１０（ａ）に示す例は、図８と同じものであり、罫線７２０と非罫線要素８１０等との関係、罫線７４０と非罫線要素８２０等との関係例を示している。図１０（ｂ）に示す例は、罫線７４０における非罫線要素８２０等の位置を示すものである。例えば、罫線７４０を、その左端を［０］とした座標軸（右端は［６００］、罫線７４０の幅Ｗ：＝６００）として、各非罫線（非罫線要素８２０等）の位置を示したものである。具体的には、非罫線要素８２０は５０、非罫線要素８２２は８０、非罫線要素８２４は１５０、非罫線要素８２６は２２５、非罫線要素８２８は３００、非罫線要素８３２は５００、非罫線要素８３４は５７０、非罫線要素８３６は５７０の位置にある。この数値列を｛Ｙｊ｝ｊ＝１〜Ｎ（この例では８）とする。なお、単位は、ピクセル（画素数）であってもよいし、ｍｍ等であってもよい。もちろんのことながら、上辺である罫線７２０に対しても同等のことを行う。
【００３５】
ステップＳ９０４では、規則的に並んでいる非罫線要素を抽出する。図１１に例を示す。文字幅の最小値をＴｍｉｎとする。Ｔｍｉｎは予め定められた数値であり、例えば、Ｔｍｉｎ：＝４０とする。Ｔｍｉｎと罫線７４０の長さによって、この文字枠（セル、又は罫線７２０）を分割できる最大値Ｓｍａｘを算出できる。この例ではＳｍａｘ：＝１５（＝６００／４０）となる。また、分割数の最小値をＳｍｉｎとする。Ｓｍｉｎは予め定められた数値であり、例えば、Ｓｍｉｎ：＝３とする。Ｓｍｉｎは、２以上で設定可能である。なお、文字幅の最大値を定めた後に、分割数の最小値を定めるようにしてもよい。この例では、３（Ｓｍｉｎ）〜１５（Ｓｍａｘ）の範囲で、以下の探索処理を行う。
【００３６】
ステップＳ９０２で抽出した座標列に対して、分割数の最小値（Ｓｍｉｎ）から当てはまり具合を検査する。
分割数Ｓで想定される座標値列（｛Ｘｉ（：＝ｉ＊Ｗ／Ｓ）｝  ｉ＝１〜Ｓ−１）に対して、予め定められた近傍δの範囲に実データの座標値列｛Ｙｊ｝で一致する点がいくつあるかカウントする。カウント数がＳ−１個に一致するならば採用する。なお、｛Ｘｉ｝は、分割数Ｓの場合の区切りの位置を示している。実際の座標値列｛Ｙｊ｝には、種々の分割数Ｓにおける｛Ｘｉ｝に合致するものが含まれているはずであり、その合致する位置にある非罫線を区切りとして抽出すればよい。
図１１の例では、３分割した場合の｛Ｘｉ｝の位置（近傍δの範囲）には、｛Ｙｊ｝がないので、罫線７４０を３分割した区切りではないと判断されている。次に、４分割した場合の｛Ｘｉ｝の位置（近傍δの範囲）には、｛Ｙｊ｝が全てあるので、罫線７４０を４分割した区切りであり、その位置にある非罫線を区切りとして抽出する。
【００３７】
なお、前述の例では、探索順序として、分割数が少ない方から順に行ったが、分割数が多い方から順に行ってもよいし、予め定められた分割数（罫線の長さに基づいて定めた分割数であって、具体的には、罫線の長さを一般的な文字幅で除算した値等）から探索を始めるようにしてもよい。
また、前述の例では、カウント数がＳ−１個に一致したものを採用したが、全て探索した後に、一致したものの数が最も多いものを採用するようにしてもよい。
また、ここでの対象とする罫線は、横書の場合は、上辺又は下辺の罫線、縦書の場合は、左辺又は右辺の罫線としてもよい。
【００３８】
図１２は、本実施の形態による処理例を示す説明図である。文字枠を構成している罫線（前述の例では、罫線７１０〜７４０）と接続した非罫線を、サイズチェックを行い、条件を満たさないものは削除する。なお、ここで非罫線のサイズチェックにおける幅とは罫線の方向（図１１の例では横方向）をいい、高さとは非罫線の罫線との接続方向（図１１の例では上方向）をいうものとする。
区切り（つまり、ひげ線状の突起）と認められない要素を以下のような処理例で削除する。
図１２の例に示すように、幅、高さに関する２次元空間での範囲内を満たす（図１２の例では、色の濃い部分の領域）ならば削除する。この例は、非罫線の幅が小さいものは基本的に区切り候補として残して、幅が大きいほど区切り候補ではないと判断するようにしたものである。例えば、スキャンの際、又はファックス送信等で発生する間延びした雑音ランレングスを区切り候補に入れない効果が期待できる。
【００３９】
さらに、非罫線の位置が規則的に並んでいる場合に、その非罫線が同じサイズ等であるか否かを判断するようにしてもよい。つまり、サイズ等が揃っている場合は、区切りとして採用する。そして、逸脱した非罫線に対しては補正を行うようにしてもよい。図１３、図１４の例を用いて説明する。
図１４は、本実施の形態による処理例を示す説明図である。前述したように、この例では、４分割であり、非罫線要素８２４、非罫線要素８２８、非罫線要素８３２が区切りとして抽出されている。しかし、非罫線要素８３２は、数字「８」と区切りが接触しており、非罫線要素８３２そのものを区切りとして抽出してしまうと、後の文字認識等の処理において、数字「８」が認識対象とならない等の不具合が発生することになる。また、非罫線要素８３２そのものを文字認識してしまうと、数字「８」と区切りが接触しているので、誤認識してしまうことがある。
なお、図１４内の外接矩形（外接矩形１４２４、外接矩形１４２８、外接矩形１４３２）は、見やすくするために、実際の外接矩形よりも大きく描画している。
【００４０】
図１３は、本実施の形態（非線分区切り判断モジュール１５０）による処理例を示すフローチャートである。
ステップＳ１３０２では、区切りと認識された部分画像のサイズを計測して、そのサイズの同形性、そもそもの点又は線分らしさを算出する。例えば、図１４に示すように、非罫線要素８２４の外接矩形１４２４、非罫線要素８２８の外接矩形１４２８、非罫線要素８３２の外接矩形１４３２のサイズを計測する。サイズの同形性として、例えば、外接矩形の幅、外接矩形の高さ、又は、外接矩形の幅と高さの比率等の差分が予め定められた範囲内にあることをいう。そもそもの点又は線分らしさとは、予め定められた外接矩形の幅、外接矩形の高さ、又は、外接矩形の幅と高さの比率等が予め定められた範囲内にあることをいう。
ステップＳ１３０４では、想定外のサイズのものを区分する。つまり、サイズの同形性を満たさない非罫線、そもそもの点又は線分らしさを満たさない非罫線を抽出する。
【００４１】
ステップＳ１３０６では、予め定められた閾値の範囲でクラスタ化を行う。例えば、予め定められた範囲内にある非罫線の外接矩形の幅と高さでの２次元空間におけるクラスタリングを行う。また、サイズ差によるクラスタリングを行うようにしてもよい。
ステップＳ１３０８では、小さいサイズのクラスタを区切りの候補として決定する。
ステップＳ１３１０では、その他のクラスタに所属する要素を区切り候補のサイズと同等になるように分解する。つまり、区切りとその他の文字部に分けることを行う。具体的には、区切りの候補としてのクラスタ内にある非罫線のサイズ、位置関係（実際に非罫線がある位置（Ｙｉ）と本来区切りがある位置（Ｘｉ）との差分）を用いて、想定外のサイズの非罫線から、その位置関係にある画素塊を区切りの候補のサイズの分だけ除外する処理を行えばよい。図１４の例では、Ｘ１とＹ３（非罫線要素８２４の位置）との位置関係、Ｘ２とＹ５（非罫線要素８２８の位置）との位置関係と同じ位置関係になるように、Ｘ３とＹ６（非罫線要素８３２の位置）の位置関係にあって、外接矩形１４３２内から外接矩形１４２４等と同じ大きさの部分を削除することによって、本来の数字の「８」の画素塊を抽出する。
【００４２】
図１５は、本実施の形態による処理例を示す説明図である。図１５（ａ）の例に示すように、文字枠内にプレプリント文字列（例えば、「価格」、「生年月日」、「名前」等のように文字枠の名称又は文字枠内に記載される情報の名称）が含まれる場合、その文字列の領域を除いた空間（文字が記載される領域）を等分割すると仮定して、区切りの非罫線であるか否かを判断するようにしてもよい。
文字枠内にプレプリント文字列が含まれている場合、その文字列が記入不可エリアとして暗黙に表現されることがある。これらの場合、前述の処理では対応しきれない。
そこで、プレプリント文字列が検出された場合に、以下の処理を行う。
（１）プレプリント部を検出する。
文字枠内で予め定められたサイズ以上の非罫線がある領域を、プレプリント部として抽出する。図１５（ｂ）の例に示すように、プレプリント部１５１０が抽出されることとなる。
（２）プレプリント部の右側に余白を持たせて右端を設定する。
プレプリント部の右側に予め定められた幅の余白を加えて、プレプリント部を拡張する。図１５（ｂ）の例に示すように、プレプリント枠の右端１５２０が設定される。プレプリント枠の右端１５２０の位置に、縦罫線があると仮定したことになる。
（３）残った領域で、区切りの抽出処理を行う。
図１５（ｂ）の例では、プレプリント以外の領域１５３０を対象として、区切りの抽出処理を行う。
なお、この処理例は、未記入帳票のレイアウト登録時を想定したものである。既に、手書きによる記載がある場合は、プレプリント部と手書きによる記載とを区別する処理を行えばよい。例えば、活字文字と手書き文字の区別処理を行えばよい。具体的には、プレプリント文字が既知である場合は、その文字とのパターンマッチング等によってプレプリント部を区別するようにしてもよい。
【００４３】
図１６は、本実施の形態による処理例を示す説明図である。表形式の場合、複数の行又は列で区切りの候補が検出できた場合に、それぞれの行／列で検出できた区切りを総合的に判断するようにしてもよい。
表形式文書の場合、図１６の例に示すように、多段で区切りの入った行が設計されている場合がある。この場合、上下に関連したセルで同様の区切りによる記入欄があることが多い。
そこで、各文字枠内での区切り抽出の結果をそのまま利用するのではなく、その結果から好ましい分割数を多数行の文字枠で統合的に判断する。これによって、正確性が増すこととなる。
各行において前述の区切り抽出を行う。ただし、ここでの抽出結果は、区切り候補としてであって、最終的な区切り抽出の結果ではない。例えば、行１６１０はｎ１分割が候補であり、行１６２０はｎ２分割が候補であり、行１６３０はｎｉ分割が候補であり、行１６４０はｎＮ分割が候補である。
そして、分割数の多数決によって分割数を決定するようにしてもよい。また、分割数の決定方法は、比率等を用いた確率計算を行ってもよい。
また、分割数だけでなく、分割位置（区切りの位置）、区切りのサイズについても、全ての文字枠で統一するようにしてもよい。
【００４４】
図１７を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図１７に示す構成は、例えばパーソナルコンピュータ（ＰＣ）等によって構成されるものであり、スキャナー等のデータ読み取り部１７１７と、プリンタ等のデータ出力部１７１８を備えたハードウェア構成例を示している。
【００４５】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１７０１は、前述の実施の形態において説明した各種のモジュール、すなわち、データ読込モジュール１１０、線分検出モジュール１２０、セル構成検出モジュール１３０、非罫線要素接続算出モジュール１４０、非線分区切り判断モジュール１５０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００４６】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１７０２は、ＣＰＵ１７０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１７０３は、ＣＰＵ１７０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバス等から構成されるホストバス１７０４により相互に接続されている。
【００４７】
ホストバス１７０４は、ブリッジ１７０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バス等の外部バス１７０６に接続されている。
【００４８】
キーボード１７０８、マウス等のポインティングデバイス１７０９は、操作者により操作される入力デバイスである。ディスプレイ１７１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等があり、各種情報をテキストやイメージ情報として表示する。
【００４９】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１７１１は、ハードディスク（フラッシュメモリ等であってもよい）を内蔵し、ハードディスクを駆動し、ＣＰＵ１７０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、読み込まれた画像データ、罫線を示すデータ、非罫線を示すデータ等が格納される。さらに、その他の各種データ、各種コンピュータ・プログラム等が格納される。
【００５０】
ドライブ１７１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１７１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１７０７、外部バス１７０６、ブリッジ１７０５、及びホストバス１７０４を介して接続されているＲＡＭ１７０３に供給する。リムーバブル記録媒体１７１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００５１】
接続ポート１７１４は、外部接続機器１７１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１７１４は、インタフェース１７０７、及び外部バス１７０６、ブリッジ１７０５、ホストバス１７０４等を介してＣＰＵ１７０１等に接続されている。通信部１７１６は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部１７１７は、例えばスキャナーであり、ドキュメントの読み取り処理を実行する。データ出力部１７１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００５２】
なお、図１７に示す画像処理装置のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１７に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１７に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器（携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む）、情報家電、ロボット、複写機、ファックス、スキャナー、プリンタ、複合機（スキャナー、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００５３】
また、前述の実施の形態の説明において、予め定められた値との比較において、「以上」、「以下」、「より大きい」、「より小さい（未満）」としたものは、その組み合わせに矛盾が生じない限り、それぞれ「より大きい」、「より小さい（未満）」、「以上」、「以下」としてもよい。
【００５４】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００５５】
１００…画像情報処理装置
１１０…データ読込モジュール
１２０…線分検出モジュール
１３０…セル構成検出モジュール
１４０…非罫線要素接続算出モジュール
１５０…非線分区切り判断モジュール
２１０…画像読取装置
２３０…帳票処理装置
２９０…通信回線
【図１】
2017010187.tif 000003
【図２】
2017010187.tif 000004
【図３】
2017010187.tif 000005
【図４】
2017010187.tif 000006
【図５】
2017010187.tif 000007
【図６】
2017010187.tif 000008
【図７】
2017010187.tif 000009
【図８】
2017010187.tif 000010
【図９】
2017010187.tif 000011
【図１０】
2017010187.tif 000012
【図１１】
2017010187.tif 000013
【図１２】
2017010187.tif 000014
【図１３】
2017010187.tif 000015
【図１４】
2017010187.tif 000016
【図１５】
2017010187.tif 000017
【図１６】
2017010187.tif 000018
【図１７】
2017010187.tif 000019