(57)【要約】【課題】  網掛けや塗りつぶし領域を有する帳票の罫線を検出可能な罫線検出装置、罫線検出方法及びプログラムを提供する。【解決手段】  網掛けや塗りつぶし領域を含む帳票１のイメージをイメージ画像として取得し、画像情報記憶部９に記憶する。画像情報記憶部９に記憶したイメージ画像に基づいて、罫線検出部８により罫線を検出し、罫線情報を罫線情報記憶部１０へ記憶する。この時、罫線判定部７で連続する黒画素の数から塗りつぶし領域かどうかを判定し、塗りつぶし領域と判定された場合はその領域の上端と下端をそれぞれ横罫線として検出する。また、黒画素拡張部６により黒画素と隣接する白画素を黒画素へ置換し、網掛け領域を塗りつぶし領域に近似することにより、網掛け領域を含む帳票の罫線検出も塗りつぶし領域と同様に行うことができる。【選択図】 図１
2007034972.tif 000002
【特許請求の範囲】
【請求項１】
帳票のイメージを白画素と黒画素とからなるイメージ画像として入力する画像入力手段
と、
前記画像入力手段によって入力されたイメージ画像を記憶する画像記憶手段と、
前記画像記憶手段に記憶されたイメージ画像に基づいて、一方向に所定数以上連続する黒
画素列が前記一方向と直行する方向へ連続することを検出し、前記黒画素列の両端をそれ
ぞれ罫線として検出する罫線検出手段とを備えたことを特徴とする罫線検出装置。
【請求項２】
前記画像記憶手段に記憶されたイメージ画像の黒画素に隣接する白画素を黒画素に置換
する黒画素拡張手段を備えたことを特徴とする請求項１記載の罫線検出装置。
【請求項３】
帳票のイメージを白画素と黒画素とからなるイメージ画像として入力する画像入力ステ
ップと、
前記画像入力ステップによって入力されたイメージ画像を記憶する画像記憶ステップと、
前記画像記憶ステップに記憶されたイメージ画像に基づいて、一方向に所定数以上連続す
る黒画素列が前記一方向と直行する方向へ連続することを検出し、前記黒画素列の両端を
それぞれ罫線として検出する罫線検出ステップとを備えたことを特徴とする罫線検出方法
。
【請求項４】
前記画像記憶ステップに記憶されたイメージ画像の黒画素に隣接する白画素を黒画素に
置換する黒画素拡張ステップを備えたことを特徴とする請求項３記載の罫線検出方法。
【請求項５】
帳票のイメージを白画素と黒画素とからなるイメージ画像として入力する画像入力機能
と、
前記画像入力機能によって入力されたイメージ画像を記憶する画像記憶機能と、
前記画像記憶機能に記憶されたイメージ画像に基づいて、一方向に所定数以上連続する黒
画素列が前記一方向と直行する方向へ連続することを検出し、前記黒画素列の両端をそれ
ぞれ罫線として検出する罫線検出機能とを備えたことを特徴とするコンピュータで利用さ
れるプログラム。
【請求項６】
前記画像記憶機能に記憶されたイメージ画像の黒画素に隣接する白画素を黒画素に置換
する黒画素拡張機能を備えたことを特徴とする請求項５記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、網掛けや塗りつぶし領域を有する帳票でも罫線検出が可能な、罫線検出装置
、罫線検出方法およびプログラムに関する。
【背景技術】
【０００２】
従来、罫線を含む定型用紙のイメージ画像から罫線を検出する場合、定型用紙のイメー
ジ画像を水平方向と垂直方向に見て複数の部分に分割してそれぞれの部分の黒画素をカウ
ントしてヒストグラムを作成し、このヒストグラムが山となる部分に罫線が存在する部分
として抽出する方法（例えば、特許文献１参照。）や、イメージ画像を走査する第１の走
査線上の黒画素から所定角度範囲内の平行な第２の走査線上で黒画素を見つけたときに両
者を結ぶ線分に黒画素が検出されたとき罫線候補とし、これらを統合して罫線検出を行う
方法がある（例えば、特許文献２参照。）。
【特許文献１】特開平４−１１１１８８号公報
【特許文献２】特開平８−１２３９６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、図２に示す自賠責レセプトのような、網掛けや塗りつぶし領域を含む帳
票の場合、従来の罫線検出方法では、この網掛けや塗りつぶし領域部分の罫線が検出でき
ないという問題があった。本発明は上記の問題を解決するためになされたものであり、網
掛けや塗りつぶし領域を含む帳票に対しても罫線検出が可能な罫線検出装置、罫線検出方
法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するための本発明による罫線検出装置は以下の構成を備える。即ち、帳
票のイメージを白画素と黒画素とからなるイメージ画像として入力する画像入力手段と、
前記画像入力手段によって入力されたイメージ画像を記憶する画像記憶手段と、
前記画像記憶手段に記憶されたイメージ画像に基づいて、一方向に所定数以上連続する黒
画素列が前記一方向と直行する方向へ連続することを検出し、前記黒画素列の両端をそれ
ぞれ罫線として検出する罫線検出手段とを備えたことを特徴とする。
【発明の効果】
【０００５】
本発明によれば、網掛けや塗りつぶし領域を含む帳票に対しても罫線検出を行うことが
可能になる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施例について図面を参照しながら説明する。
【０００７】
図１は、本発明に係る罫線検出装置の全体構成を示すブロック図である。図１において
、帳票１は罫線および網掛けや塗りつぶし領域を含んだ帳票である。スキャナ２は帳票１
上を走査することにより、帳票１のイメージをイメージ画像として取得する。パーソナル
コンピュータ３は、記憶装置４に記憶された罫線検出プログラム５を、図示しないＣＰＵ
(中央演算処理装置)が実行することにより、帳票のイメージ画像から罫線の検出をする。
記憶装置４には罫線検出プログラム５が図示しないＨＤＤ(磁気ディスク装置)からロード
され記憶されている。罫線検出プログラム５は、網掛け領域を含む帳票の罫線を検出する
場合に、この網掛け領域を塗りつぶし領域として扱うために黒画素の拡張をする黒画素拡
張部６と、イメージ画像上の黒画素の連続に関する情報を罫線判定条件に照合する罫線判
定部７と、この罫線判定部７で判定された情報に基づき、罫線候補の座標情報から罫線を
検出する罫線検出部８とから構成される。なお、これらのプログラムをＲＯＭに記憶して
もよい。
【０００８】
また、記憶装置４には、スキャナ２で取得した帳票１のイメージのイメージ画像を記憶
するための画像情報記憶部９と、罫線情報を記憶するための罫線情報記憶部１０とが設け
られている。また、コンピュータ３は上記以外にも、図示しない外部記憶媒体やネットワ
ークを介してイメージ画像を取得したり、ネットワークを介して罫線情報記憶部１０に保
存された罫線情報を外部出力装置へ出力することが可能である。
【０００９】
以下に、網掛け領域を含む場合に、罫線検出処理行う前に実施する黒画素拡張処理を図
３と図４を参照して説明する。ここで、図３は黒画素拡張処理のイメージを示す図であり
、図４は黒画素拡張処理を説明するためのフローチャートを示す図である。
【００１０】
本実施例では、図３に示すように黒画素の左方向(−ｘ方向)および下方向(＋ｙ方向)に
隣接する白画素を黒画素に置換する画像処理を行うことで、１画素分黒画素を拡張する。
ここで、帳票の左端から右端へ向う方向を＋ｘ方向、上端から下端へ向う方向を＋ｙ方向
とし、左上端を原点として、走査対象とする画素の座標を（ｘ[ｉ]，ｙ[ｊ]）とする。
【００１１】
図４においてｉ，ｊは整数型の変数、ｐ：（ｘ[ｉ]，ｙ[ｊ]）およびｐ’：（ｘ[ｉ]，
ｙ[ｊ]）はそれぞれ走査対象画素および走査対象画素と隣接する画素、ｉ_ｍａｘおよび
ｊ_ｍａｘはそれぞれ変数ｉおよびｊの最大値であり、ｘ[ｉ_ｍａｘ]およびy[ｊ_ｍａｘ]
はそれぞれ右端の画素のｘ座標および下端の画素のｙ座標を表している。
【００１２】
まず始めに、ステップ２０で変数ｉの初期化を行い、ステップ２１で変数ｊの初期化お
よび変数ｉのインクリメントを行い、ステップ２２で変数ｊのインクリメントを行う。次
に、左上端の画素ｐ：（ｘ[１]，ｙ[１]）より黒画素か白画素かを判定し(ステップ２３)
、黒画素を検出したら当該黒画素の−ｘ方向に隣接するｐ’：（ｘ[ｉ−１]，ｙ[ｊ]）お
よび＋ｙ方向に隣接するｐ’：（ｘ[ｉ]，ｙ[ｊ＋１]）を黒画素として画素データを置換
する(ステップ２４)。ステップ２５で走査対象画素が下端まで到達したかを判定し、判定
結果がＮＯの場合はステップ２２に戻りｊをインクリメントして、対象画素を＋ｙ方向へ
１画素移動した後、ステップ２３〜２４を繰り返す。判定結果がＹＥＳの場合は、ステッ
プ２１に移行しｉをインクリメントして、＋ｘ方向へ走査対象列を１列移動すると同時に
、変数ｊを初期化して対象列の上端の画素からステップ２２〜２４の処理を繰り返す。こ
れらの処理を繰り返して、ステップ２６でＹＥＳの判定が出るまで、即ち走査対象が右端
の列に到達するまでステップ２１〜２５の処理を繰り返す。このようにして、イメージ画
像の全画素に対して黒画素拡張処理を行うことで、図５に示すように、網掛け領域を塗り
つぶし領域に近似し、以後の処理で網掛け領域と塗りつぶし領域を区別することなく扱う
ことが可能になる。
【００１３】
以下に、塗りつぶし領域を含む帳票の罫線検出方法について説明する。
【００１４】
図６に横罫線の検出方法を示す。各列毎に黒画素の連続する数を算出し、この数が所定
数未満、具体的に本実施例では４未満の場合に、この黒画素列を罫線候補として検出し、
尚且つこの黒画素列と隣接する列に連続する黒画素列が検出された場合には、それぞれの
黒画素列における上端の画素の座標を罫線位置として罫線情報検出部に記憶する。このよ
うにして、各列で検出した罫線位置を連結することで罫線を検出する。
【００１５】
もし符号１００で示す列のように、一時的に黒画素の連続数が所定値を超えるような場
合には、次項に説明する塗りつぶし領域と同様、黒画素列の上端と下端の画素を罫線位置
として検出するが、最終的には両隣りの列の罫線位置を考慮して決定する。即ち、符号９
９および１０１で示す列のように、両隣の列の罫線位置が連結される場合は、列９９と列
１０１の黒画素を連結した線分を罫線とし、列１００との交点を罫線位置として検出する
。
【００１６】
一方、図７に示すように、黒画素が所定数以上連続する列が複数連続する場合には、塗
りつぶし領域と判別し、塗りつぶし領域の上端と下端の画素をそれぞれ横罫線として検出
する。図７において、符号１０２で示された列は黒画素が１０連続しており、尚且つ、列
１０２と隣接する符号１０３で示された列もまた黒画素が１０連続して、列１０２と連続
しているため、上記条件を満たし、塗りつぶし領域と判別される。さらに列１０２の上端
画素と列１０３の上端画素を結んだ線分が領域の上側の罫線、列１０２の下端画素と列１
０３の下端画素を結んだ線分が領域の下側の罫線として検出される。上記は列ごとに見て
いた画素の白黒配列を行ごとに置き換えることにより、縦罫線も同様にして検出すること
ができる。
【００１７】
以下に、塗りつぶし領域を含む帳票の罫線検出方法の詳細な処理について図８と図９を
参照して説明する。
【００１８】
塗りつぶし領域を含む帳票の罫線検出処理のフローチャートを図８に、塗りつぶし領域
の判別方法を図９に示す。ここにｘｓ[ｉ]、ｙｓ[ｉ]、ｙｅ[ｉ]はそれぞれ連続する黒画
素のｘ座標、連続する黒画素の始点のｙ座標と終点のｙ座標を表している(連続していな
い、即ち１画素のみの場合はｙｓ[ｉ]＝ｙｅ[ｉ]となる)。またｉは整数型の変数で黒画
素の連続を１グループとしたとき、そのグループに対して１ずつシーケンシャルに振られ
る番号である。また、Ｎは定数で通常の罫線か塗りつぶし領域かを判定する際に用いる所
定数（本実施例ではＮ＝４とする）、ｉ_ｍａｘはｉの最大値とする。
【００１９】
まず始めに、図１の画像情報記憶部９に保存された帳票のイメージ画像を走査し、図９
に示すように、黒画素を配列に記録する(ステップ３０)。次に、ステップ３１で変数ｉの
初期化を行い、ステップ３２でｉをインクリメントし罫線判定の対象とする連続した黒画
素のグループを順番に走査していく。ステップ３３では、ｙ方向へ黒画素が連続している
場合には、黒画素の連続している数ｙｅ[ｉ]−ｙｓ[ｉ]＋１を算出し、ステップ３４にお
いて塗りつぶし領域かどうかの判別を行う。前記で算出した黒画素の連続する数がＮ未満
であれば、ステップ３５で対象画素(ｘｓ[ｉ]，ｙｓ[ｉ])を罫線候補として検出し、尚且
つステップ３８で＋ｘ方向に隣接する画素(ｘｓ[ｉ]＋１，ｙｓ[ｉ])が黒画素であれば、
ステップ３９でそれらを結ぶ線分：(始点，終点)＝(ｘｓ[ｉ]，ｙｓ[ｉ]，ｘｓ[ｉ]＋１
，ｙｓ[ｉ])を横罫線として検出する。
【００２０】
次に、算出した黒画素の連続している数がＮ以上であれば、ステップ３６で塗りつぶし
領域と判定し、ステップ３７で対象とする黒画素列の上端(ｘｓ[ｉ]，ｙｓ[ｉ])と下端(
ｘｓ[ｉ]，ｙｅ[ｉ])をそれぞれ罫線候補として検出し、さらに＋ｘ方向に隣接する画素(
ｘｓ[ｉ]＋１，ｙｓ[ｉ])および下端(ｘｓ[ｉ]＋１，ｙｅ[ｉ])が黒画素であれば(ステッ
プ３８)、ステップ３９で前記罫線候補とこれらを結ぶ線分：(始点，終点)＝(（ｘｓ[ｉ]
，ｙｓ[ｉ]），（ｘｓ[ｉ]＋１，ｙｓ[ｉ]）)および線分：(始点：終点)＝(（ｘｓ[ｉ]，
ｙｅ[ｉ]），（ｘｓ[ｉ]＋１，ｙｅ[ｉ]）)をそれぞれ横罫線Ａおよび横罫線Ｂとして検
出する。検出された罫線に関する情報は、図１０に示すように罫線の始点と終点の座標を
、図１の罫線情報記憶部１０にデータ配列として記憶していく。
【００２１】
上記罫線検出処理をｘとｙについて入れ替えて同様に行うことで、縦罫線を検出する。
【図面の簡単な説明】
【００２２】
【図１】本発明に係る罫線検出装置の全体構成を示すブロック図
【図２】自賠責レセプトのイメージ
【図３】黒画素拡張処理のイメージ
【図４】黒画素拡張工程のフローチャート
【図５】網掛けイメージ(左)と黒画素拡張後のイメージ(右)
【図６】横罫線の検出方法
【図７】塗りつぶし領域がある場合の横罫線の検出方法
【図８】罫線検出処理を示すフローチャート
【図９】塗りつぶし領域の判別方法
【図１０】黒画素および罫線の情報
【符号の説明】
【００２３】
１・・・帳票
２・・・スキャナ
３・・・パーソナルコンピュータ
４・・・記憶装置
５・・・罫線検出プログラム
６・・・黒画素拡張部
７・・・罫線判定部
８・・・罫線検出部
９・・・画像情報記憶部
１０・・・罫線情報記憶部
【図１】
2007034972.tif 000003
【図２】
2007034972.tif 000004
【図３】
2007034972.tif 000005
【図４】
2007034972.tif 000006
【図５】
2007034972.tif 000007
【図６】
2007034972.tif 000008
【図７】
2007034972.tif 000009
【図８】
2007034972.tif 000010
【図９】
2007034972.tif 000011
【図１０】
2007034972.tif 000012