(57)【特許請求の範囲】
【請求項１】
文字列画像から文字行を出力する画像処理装置であって、
複数の文字行から基準行を選択する手段と、
選択された基準行の有する形状値に基づいて各文字行がルビであるかを判定する手段とを備え、
前記選択する手段は、行幅、および行高さを変数とするメンバシップ関数による評価値に応じて基準行を選択することを特徴とする画像処理装置。
【請求項２】
前記選択する手段は、行幅を変数とするメンバシップ関数による評価値、および行高さを変数とするメンバシップ関数による評価値の和に応じて基準行を選択することを特徴とする請求項１に記載された画像処理装置。
【請求項３】
コンピュータに、
画像データに含まれる複数の文字行から、行幅、および行高さを変数とするメンバシップ関数による評価値に応じて基準行を選択するステップと、
選択された基準行の有する形状値に基づいて各文字行がルビであるかを判定するステップと、
を実行させることを特徴とする画像処理プログラム。
【請求項４】
前記選択するステップは、行幅を変数とするメンバシップ関数による評価値、および行高さを変数とするメンバシップ関数による評価値の和に応じて基準行を選択することを特徴とする請求項３に記載された画像処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、OCR（光学的文字読み取り装置）等に利用される文字認識処理に関し、より特定すると、文書原稿から読み取った文字列画像をもとに文字認識の対象となる文字候補を抽出する処理の前段で用いられる文字行の切り出しにおいて、文字行の中、例えば、本文行に対するルビ行のように一つの認識対象群から除外したい行を検出し、検出結果を用いて利用する文字行を出力することを可能にする手段を有する画像処理装置、及び画像処理プログラムに関する。
【０００２】
【従来の技術】
従来のOCR（光学的文字読み取り装置）においては、スキャナーにより文書原稿から読み取った画像に基づいて原稿に記された文字を認識する処理を行っている。この処理を行う際に、読み取った画像に含まれる文字列画像をもとに文字認識の対象となる文字候補を抽出するために文字単位の切り出しを行うが、その手順として、複数行の文字列画像から文字行を切り出す処理を前段で行う。この行切り出しは、認識対象を規定することになるので、認識の精度を保証するために適正な切り出しが必要になる。
文字行の切り出しにおいて、従来から知られている方法は、いわば“外接矩形統合法”と呼ぶべき方法である。この方法は、まず、入力文字列画像から図形としてまとまりのある黒画素の連結パターンを抽出し、抽出された各々のパターンについて、その外接矩形を求め、次に、これらの矩形を一つの行を構成する要素と判断する統合規則（例えば、矩形相互の水平、垂直方向の距離が所定範囲内にあれば統合）に従い統合し、得られる行矩形により行の切り出しを行っている（特許2895122号、参照）。
【０００３】
この“外接矩形統合法”による行の切り出しの際、対象とする原稿中に本文を構成する通常の文字行にルビ等の注に相当する行が付加されている場合に、これまではルビ行等も通常の行と同様に切り出されるのが普通であった。
ところで、近年の文字認識装置においては、パターンマッチング法により得られた文字認識結果に対して、何らかの言語処理による修正を施して、文書としてもっともらしい形態を持つ認識結果を最終的に出力する場合が多い。このような言語処理を施すにあたって、ルビ行が通常の行と同じように切り出されてしまうと、ルビ行の前後で文章的なつながりが無くなるため、言語処理による修正の精度が大きく低下する。
例えば、図９に示すようなルビ行が付加された画像が入力された場合に、ルビ行を通常の行と同様に切り出した場合、言語処理には「本日は晴天なりあしたどんてん明日は曇天なり」という文章が対象になるので、正しい言語処理が行えず、文字認識装置の認識性能の低下につながってしまう。
【０００４】
【発明が解決しようとする課題】
そこで、本文にルビが混入することがないように、特開平８−１０１８８６（文字認識装置）では、ルビ行を取り除く方法を提案している。特開平８−１０１８８６に示されている方法では、除去の対象となるルビ文字行が行間に書き加えられたものであり、従って最終行は本文行であるという前提をおいて、最終行を基準として最終行から一つ前の文字行と、先頭行に向けて逆順にルビ行の検出を行っている。しかしながら、この前提条件は常に成り立つものではなく、最終行が必ずしも通常の行であるとは限らない。例えば、脚注などが存在する原稿においては、最終行にルビと同程度の大きさの文字が配置される場合もある。従って、特開平８−１０１８８６は、一つの認識対象群（本文行群）から除外したい、或いは別に扱いたいルビや脚注といった行が、最終行にある場合に対応して、これらの行の検出をすることができない。
このように、従来技術は、ルビや脚注の入った原稿の文字列認識（切り出し）精度向上に対する要求に十分に応えるものではない、という問題を抱えている。本発明は、上述の従来技術の問題に鑑みてなされたものであり、その目的は、本文行に対するルビ行や脚注行といった行のように、一つの認識対象群（本文行群）として扱いたくない、或いは一つの認識対象群（本文行群）とは別に扱いたい行を検出する場合に、対象とする行が原稿上のどの文字行に在っても（特開平８−１０１８８６のような前提条件を置かずに、無条件で）検出ができるようにすることを可能にする画像処理装置、及び画像処理プログラムを提供することにある。
【０００５】
【課題を解決するための手段】
請求項１の発明は、文字列画像から文字行を出力する画像処理装置であって、複数の文字行から基準行を選択する手段と、選択された基準行の有する形状値に基づいて各文字行がルビであるかを判定する手段とを備え、前記選択する手段は、行幅、および行高さを変数とするメンバシップ関数による評価値に応じて基準行を選択することを特徴とする。
【０００６】
請求項２の発明は、請求項１に記載された画像処理装置において、前記選択する手段は、行幅を変数とするメンバシップ関数による評価値、および行高さを変数とするメンバシップ関数による評価値の和に応じて基準行を選択することを特徴とするものである。
【０００８】
請求項４の発明は、コンピュータに、画像データに含まれる複数の文字行から、行幅、および行高さを変数とするメンバシップ関数による評価値に応じて基準行を選択するステップと、選択された基準行の有する形状値に基づいて各文字行がルビであるかを判定するステップとを実行させることを特徴とする画像処理プログラムである。
【０００９】
請求項５の発明は、請求項４に記載された画像処理プログラムにおいて、前記選択するステップは、行幅を変数とするメンバシップ関数による評価値、および行高さを変数とするメンバシップ関数による評価値の和に応じて基準行を選択することを特徴とするものである。
【００２２】
【発明の実施の形態】
本発明が構成要件とする、文字列認識（切り出し）精度の向上を図るための文字行データの出力手段は、処理対象として入力された複数行の文字列画像に含まれる文字行の中、本文行に対するルビ行や脚注行といった行のように、一つの認識対象群（本文行群）として扱いたくない、或いは一つの認識対象群（本文行群）とは別に扱いたい行（以下、単に「ルビ行」という）を検出し、本文行、ルビ行それぞれの文字行データとして区別し、出力することを可能にし、そのための手段（手順）を提供するものである。
以下に示す本発明の各実施形態では、複数行の文字列画像に含まれる文字行全部の行切り出しを行い、その中から本文行、ルビ行それぞれを検出可能とする。その検出手順は、切り出された全行の中から所定の規則に従い基準行（標準的な本文行とみなせる行）を抽出し、抽出された基準行の有する形状値に基づいて、切り出された各々の行が本文行に属する行であるか、否（即ち、ルビ行）かを判定し、その判定結果を用いて、切り出された行データの出力を行うという手順による。
図１は、各実施形態の実施に共通に用いる処理装置（システム）の構成を示すブロック図である。
図１を参照すると、１は例えばスキャナ等の原稿画像を読み取り、その画像を入力する画像入力部、３は入力された複数行の文字列画像に含まれる文字行全部の行切り出しを行う文字行切り出し部、５は切り出された各々の行が一つの認識対象群（本文行群）に属する行であるか、否か、その属性を判定する文字行判定部、７は判定結果を用いて、切り出された文字行データを出力する行出力部である。
なお、以下の各実施形態には、本発明を特徴付ける文字行データの出力に関する手順を中心に実施に係わる形態を例示する。従って、図１に示すブロック図にも、文字認識装置のうちの、行切り出しに係わる部分のみを示し、その他の構成部分については省略し、文字認識処理全体、即ち、対象画像の入力から最終的に文字認識の最適解を得るまでの手順（手段）全体の説明をしないが、文字認識処理全体については、文字認識に必要な基本的な手順として従前から知られている手順を適用することにより、その実施が可能である。
【００２３】
「実施形態１」
本実施形態は、図１に示した処理システムにより実行される文字行データの出力（検出）処理に係わるものである。ここに示す文字行データの出力処理は、基準行（標準の文字行とみなせる行）を選択する規則として、最大行幅を用い、また、選択・抽出された基準行の有する形状値としての高さに基づいて、切り出された各々の行が本文行に属する行であるか、ルビ行か、その属性を判定し、ルビ行と判定された行については行データを削除して、切り出された行データの出力を行うという手順による処理プロセスの実施形態を示す。
図２は、本実施形態の文字行データの出力処理のフローチャートを示す。
図２を参照すると、本実施形態フローでは、先ず、画像入力部１により認識対象となる複数行の文字列画像を文字行切り出し部３に入力する（Ｓ１１）。なお、この入力の際、画像と共に、認識対象領域のデータを与えても良い。認識対象領域が与えられた場合には、与えられた領域内のみを行切り出しの対象とすればよい。
次に、文字行切り出し部３は、従来提案されている手法を適用して文字行を切り出す（Ｓ１２）。文字行の切り出しには、射影を用いる方法などさまざまな手法が提案されているが、ここでは、上記「従来の技術」の項に示した“外接矩形統合法”を用いるものとする。例えば、特許2895122号に示す手法で行切り出しを行った場合、統合により得られる行矩形の座標と、行内の矩形（統合の基になる黒画素連結成分の外接矩形）の座標が文字行切り出し部３から出力され、文字行判定部５に送られる。なお、このステップで切り出した行に関する全ての行データを記憶部２に格納する。
【００２４】
次に、行切り出し結果を受け取る文字行判定部５は、切り出された各々の行が本文行に属する行であるか、否か（即ち、ルビ行であるか）を判定する。この手順として、先ず、文字行切り出し部３から送られてきた全ての切り出し行の中から、一つの基準行を選択し、これを判定の基準として定める。基準行の選択にあたっては、行矩形の座標を用いて全ての行矩形のうち、その幅の最も広い行を基準行とする（Ｓ１３）。この基準行の定め方によると、通常、ルビ行の幅がルビを付与されている本文行の幅より広くなることは無いので、この基準で選択すれば、標準的な本文行とみなせる行が選択され、ルビ行が選択されることは無い。基準行を定めた後、判定に用いる基準値を設定するための手順として、基準行として定めた最大行幅を持つ行の高さ値：Shを取得し、取得した行高さ値の半分：Sh／2を判定の基準値として設定する（Ｓ１４）。
次いで、各切り出し行の判定は、各行の高さ：HがSh／2より低い行をルビ行と判定し、それ以外を本文行と判定する。また、本実施形態では、ルビ行と判定した行データを削除するという処理を行う。従って、この処理の手順としては、各行の高さHがSh／2より低い行であるか、否かを判定し（Ｓ１５）、Sh／2より低い行である場合には（Ｓ１５-YES）、このルビ行のデータを先に記憶部２に格納した行データから削除する（Ｓ１６）。なお、このルビ行判定・行データ削除処理は、各切り出し行毎に全部の行について、判定を行うので、ステップＳ１５，Ｓ１６の処理は、行数分繰り返し実行する。
ルビ行判定・行データ削除処理を各切り出し行に適用した後、ルビ行データが削除され、それ以外の本文行にあたる行の行矩形、行内矩形の情報を含む行データを行出力部７を通じて、文字認識処理を行うための後段の処理部へ出力し（Ｓ１７）、この処理を終了する。
【００２５】
「実施形態２」
本実施形態は、図１に示した処理システムにより実行される文字行データの出力（検出）処理に係わるものである。ここに示す文字行データの出力処理は、基準行（標準の文字行とみなせる行）を選択する規則として、行幅と行高さを変数とするメンバシップ関数を導入し、この関数により基準行としての評価値を算出する。
図５は、メンバシップ関数の一例を示す線図であり、図４は、メンバシップ関数を設定するためのパラメータに用いる切り出し行矩形の形状値を説明する図である。
このメンバシップ関数は、下記(1)、(2)の条件、
(1) 行幅が広いほど評価値が高い。
(2) 行高さが低いほど評価値が高い。
に従った設定とする。
ここでは、上記(1)を満足する関数として、図５(A)の例に示すように、最大行幅：MaxWの評価値を最大値：1とする一次関数を用いる。
また、上記(2)を満足する関数として、図５(B)の例に示すように、最大行高さ：MaxHの評価値を最小値：0とする一次関数を用いる。ただし、行高さについては誤って線分のみの行やノイズのみの微小行を選択しないように、又、ルビ行が基準行として選択されないように、所定のしきい値：Thignoreより小さい場合には評価値が“0”となるようにしている。また、メンバシップ関数の連続性を考慮して、最大行高さMaxHの半分の高さMaxH／2で評価値を最大値：1としている。
このメンバシップ関数を用いて、対象となる行各々の評価値を算出する。評価値の算出方法は、ここでは、行高さのメンバシップ関数から求まる評価値と、行幅のメンバシップ関数から求まる評価値の和を各行の評価値とし、評価値最大の行を基準行として選択する（後述の図３に示す処理フローの説明、参照）。
また、選択・抽出された基準行の有する形状値としての高さに基づいて、切り出された各々の行が本文行に属する行であるか、ルビ行か、その属性を判定し、ルビ行と判定された行については行データを削除して、切り出された行データの出力を行うという手順により、文字行データの出力処理プロセスを実行する。
【００２６】
図３は、本実施形態の文字行データの出力処理のフローチャートを示す。
図３を参照すると、本実施形態フローでは、先ず、画像入力部１により認識対象となる複数行の文字列画像を文字行切り出し部３に入力する（Ｓ２１）。なお、この入力の際、画像と共に、認識対象領域のデータを与えても良い。認識対象領域が与えられた場合には、与えられた領域内のみを行切り出しの対象とすればよい。
次に、文字行切り出し部３は、文字行を切り出しを行う（Ｓ２２）。文字行の切り出しの手法は、上記した「実施形態１」に示したと同様に、“外接矩形統合法”を適用することにより実施する。文字行の切り出し結果として得られる行矩形の座標と、行内の矩形（統合の基になる黒画素連結成分の外接矩形）の座標は、文字行切り出し部３から出力され、文字行判定部５に送られる。なお、このステップで切り出した行に関する全ての行データを記憶部２に格納する。
次に、行切り出し結果を受け取る文字行判定部５は、切り出された各々の行が本文行に属する行であるか、否か（即ち、ルビ行であるか）を判定する。この手順として、先ず、文字行切り出し部３から送られてきた全ての切り出し行の中から、一つの基準行を選択し、これを判定の基準として定める。
基準行の選択にあたっては、上記したメンバシップ関数を適用して評価値を求め、評価値最大の行を基準行として選択する。
【００２７】
図６は、この基準行の選択処理を説明するための図である。同図の(A)は認識処理の対象となる複数の行S1〜S5を示し、同図の(B)、(C)は上記で説明した方法（図４，５参照）により設定されたメンバシップ関数、及び(A)に示した対象行へのメンバシップ関数の適用時の操作状態を示す。
基準行の選択処理の手順としては、まず、メンバシップ関数を設定する（Ｓ２３）。このために、認識処理の対象となる複数の行S1〜S5の中から最大行幅MaxW及び最大行高さMaxHを抽出する（図６(A)参照）。抽出した最大行幅MaxWをパラメータとして行幅に対するメンバシップ関数（図６(B)参照）を設定し、抽出した最大行高さMaxHをパラメータとして行高さに対するメンバシップ関数（図６(C)参照）を設定する。
この後、設定されたメンバシップ関数を用いて、対象となる行各々の評価値：メンバシップ値Vを算出し、その最大値Vmaxをとる行を基準行として選択する。従って、まず、Vmax＝0として、この処理における初期条件を設定する（Ｓ２４）。
次いで、対象となる複数の行S1〜S5の各行にメンバシップ関数を適用してメンバシップ値Vを算出する（Ｓ２５）。対象となる複数の行S1〜S5の各行の行幅値、行高さ値それぞれに対し、図６の(B)、(C)の例に示すように、関数に従ったメンバシップ値を得るが、ここでは行幅値、行高さ値それぞれに対するメンバシップ値の和を算出し、最終的に求めるメンバシップ値Vとする。
さらに、最大値Vmaxとなる行を選択するので、各行毎に順次求められるメンバシップ値Vを、これまでに求めた行の最大値Vmaxと比較し（Ｓ２６）、その結果により、即ち最大値Vmaxが変更される場合（Ｓ２６-YES）、変更後の最大値Vmaxの行データ（後段で利用する最大行幅を持つ行の高さ値：Sh）を更新する（Ｓ２７）。この基準行の選択処理は、各切り出し行毎にS1〜S5全部の行について、判定を行うので、ステップＳ２５〜Ｓ２７の処理は、行数分繰り返し実行する。
【００２８】
基準行の選択処理により基準行を定めた後、切り出された各々の行が本文行に属する行であるか、否か（即ち、ルビ行であるか）を判定する。判定に用いる基準値は、前段のステップＳ２７で取得しておいた基準行が持つ行データとしての行高さ値Shを用い、この行高さ値の半分：Sh／2を判定の基準値として設定する。
各切り出し行の判定は、各行の高さ：HがSh／2より低い行をルビ行と判定し、それ以外を本文行と判定する。また、本実施形態では、ルビ行と判定した行データを削除するという処理を行う。従って、この処理の手順としては、各行の高さHがSh／2より低い行であるか、否かを判定し（Ｓ２８）、Sh／2より低い行である場合には（Ｓ２８-YES）、このルビ行のデータを先に記憶部２に格納した行データから削除する（Ｓ２９）。なお、このルビ行判定・行データ削除処理は、各切り出し行毎に全部の行について、判定を行うので、ステップＳ２８，Ｓ２９の処理は、行数分繰り返し実行する。
ルビ行判定・行データ削除処理を各切り出し行に適用した後、ルビ行データが削除され、それ以外の本文行にあたる行の行矩形、行内矩形の情報を含む行データを行出力部７を通じて、文字認識処理を行うための後段の処理部へ出力し（Ｓ３０）、この処理を終了する。
【００２９】
「実施形態３」
本実施形態は、図１に示した処理システムにより実行される文字行データの出力（検出）処理に係わるものである。ここに示す文字行データの出力処理は、上記した「実施形態２」の改良に係わるものである。改良点は、ルビ行の過検出を抑制することを可能とするものであり、ルビ行と同様の行矩形の高さ（上記の各実施形態に即していうと、H＜Sh／2となる高さ）を有する行に属するものの中に、ルビ行ではなく、本文行と見なした方が適当である、即ちルビ行として削除すると悪影響が生じる場合があり、このような行高さによるチェックで過検出となる行を、本文行として扱うことができるようにする処理を付加する。このための手段として、行高さのチェックでルビ行と判定されても、基準行の高さと比較して前後の行との間隔が広い場合、つまりルビ行と明らかに判定ができない場合（なお、本来のルビ行やノイズ行などでは、前後の行との間隔が非常に狭くなる場合が殆どなので、この条件を追加してもルビ行の検出には影響がない）には、本文行と見なし、ルビ行としての扱いをするものから除外する処理手段を用いる。
なお、基準行（標準の文字行とみなせる行）を選択する規則として、行幅と行高さを変数とするメンバシップ関数を導入し、この関数により基準行としての評価値を算出するという点では、「実施形態２」と変わりがない。
【００３０】
図７は、本実施形態の文字行データの出力処理のフローチャートを示す。
図７を参照すると、本実施形態フローでは、メンバシップ関数による評価により基準行を選択し、基準行が持つ行高さ値Shを、ルビ行判定の基準値として設定するまでのステップＳ３１〜Ｓ３７の処理手順は、上記した「実施形態２」の手順（図３のステップＳ２１〜Ｓ２７）と同様に実施する。従って、上記した「実施形態２」のステップＳ２１〜Ｓ２７の処理手順の説明を参照することとし、ここでは、この処理手順の記述を省略する。
メンバシップ関数による評価値が最大となる行を基準行とする基準行選択処理（Ｓ３５〜３７）により基準行を定めた後、切り出された各々の行が本文行に属する行であるか、否か、その属性を判定する。本実施形態では、行高さによるルビ行の判定と、ルビ行の過検出を補正するために行う前後（或いは上下）の行との間隔による判定の２段階でこの判定を行う。
ここでは、行高さによるルビ行の判定に用いる基準値は、前段のステップＳ３７で取得しておいた基準行が持つ行データとしての行高さ値Shを用い、この行高さ値の半分：Sh／2を判定の基準値として設定し、各行の高さ：HがSh／2より低い行をルビ行と判定する。また、前後の行との間隔による判定は、基準行の高さShと比較して前後の行との間隔（前行との間隔＋次行との間隔）：Bの方が広い場合に、本文行と見なすようにする。
２段階の各切り出し行の判定の結果により、本文行或いは本文行と見なされた行の行データを出力し、それ以外のルビ行と判定した行データを削除するという処理を行う。
【００３１】
従って、この処理フローにおける手順としては、まず、各行の前後の行との間隔（前行との間隔＋次行との間隔）Bを算出する（Ｓ３８）。
次いで、各行の高さHが基準行の高さの半分Sh／2より低い行であるか、否かを判定し（Ｓ３９）、Sh／2より低い行である場合には（Ｓ２８-YES）、さらにステップＳ３８で算出した前後の行との間隔Bが基準行の高さShより広いか、否かを判定する（Ｓ４０）。
ここで、前後の行との間隔Bが基準行の高さShより狭い場合（Ｓ４０-YES）、過検出のないルビ行と判定されるので、この行のデータを先に記憶部２に格納した行データから削除する（Ｓ４１）。なお、このルビ行判定・行データ削除処理は、各切り出し行毎に全部の行について、判定を行うので、ステップＳ３８〜Ｓ４１の処理は、行数分繰り返し実行する。
ルビ行判定・行データ削除処理を各切り出し行に適用した後、過検出のないルビ行と判定されたルビ行データが削除され、それ以外の本文行或いは本文行と見なされた行の行矩形、行内矩形の情報を含む行データを行出力部７を通じて、文字認識処理を行うための後段の処理部へ出力し（Ｓ４２）、この処理を終了する。
【００３２】
「実施形態４」
本実施形態は、図１に示した処理システムにより実行される文字行データの出力（検出）処理に係わるものである。ここに示す文字行データの出力処理は、上記した「実施形態３」を改変するものである。改変する点は、「実施形態３」では、過検出を抑制して、明らかなルビ行の判定を行い、判定されたルビ行について行データを削除する処理を行っているが、このルビ行についてのデータ削除を行わずに、本文行とは別系統のデータとして、後段の文字認識処理に用いることを可能にするための出力処理を行うようにした点にある。
このルビ行の出力処理は、ルビ行であることを示す情報を追加して、行出力部７を通じて後段の処理へ行データを出力する。後段の処理では、追加されたルビ行であることを示す情報により、ルビ行を無視して言語処理等の後処理を行うことが可能になる。その上、その処理とは別に、各ルビ行を独立に処理して認識結果を得、最終的に本文行の認識結果と合成して文字認識装置の処理結果として出力することも可能になる。出力は、RTFなどルビに対応したフォーマットで、ルビの部分も含めた認識結果を出力する等、利用に適した形態による方法を採用すればよい。
【００３３】
図８は、本実施形態の文字行データの出力処理のフローチャートを示す。
図８を参照すると、本実施形態フローでは、メンバシップ関数による評価により基準行を選択し、基準行が持つ行高さ値Shを、ルビ行判定の基準値として設定し、前後の行との間隔Bを求めて過検出を抑制して、明らかなルビ行の判定を行うまでのステップＳ５１〜Ｓ６０の処理手順は、上記した「実施形態３」の手順（図７のステップＳ３１〜Ｓ４０）と同様に実施する。従って、上記した「実施形態３」のステップＳ３１〜Ｓ４０の処理手順の説明を参照することとし、ここでは、この処理手順の記述を省略する。
ステップＳ５９に至るまでの処理を経てルビ行と判定された行に対し、前後の行との間隔Bが基準行の高さShより狭いか、否かの判定を行い（Ｓ６０）、前後の行との間隔Bが基準行の高さShより狭ければ、明らかな（過検出のない）ルビ行と判定される（Ｓ６０-YES）。ここで、明らかなルビ行であると判定された切り出し行に対して、上記「実施形態３」におけるように行データの削除をしないで、明らかなルビ行であるとした判定結果を行データ（行の行矩形、行内矩形の情報を含む）に追加する（Ｓ６１）。
ルビ行判定・行データ追加処理を各切り出し行に適用した後、明らかなルビ行と判定されたルビ行について、判定結果の情報が追加され、又、明らかなルビ行以外の本文行或いは本文行と見なされた行については、本来の行矩形、行内矩形の情報を含む行データを行出力部７を通じて、文字認識処理を行うための後段の処理部へ出力し（Ｓ６２）、この処理を終了する。
【００３４】
「実施形態５」
本実施形態は、本発明に係わる文字認識装置の他の実施形態を示すものである。
上記した「実施形態１」〜「実施形態４」に示した文字行データの出力処理手順を含む処理を実行する手段として、汎用のコンピュータを利用して構成される装置を例示するものである。
汎用のコンピュータにより実施するものであるから、構成要素として、スキャナ、キーボード、マウス等の入力装置に対する入力部I/F、CPU、記憶装置、ハードディスクドライブ等の補助記憶装置、ディスプレイ等への出力装置への出力I/F、リムーバブルな記憶媒体のドライブ、リムーバブルな記憶媒体、ネットワークを介して他機と通信するためのコントローラなど通常のコンピュータが備える構成要素を備え、これらをバス接続して装置（システム）を構成する。
また、記憶装置、ハードディスクドライブ等の補助記憶装置、ドライブが用いる記憶媒体の一部には、本発明に係わる文字列認識（切り出し）機能を実現するための、上記「実施形態１」〜「実施形態４」に示した文字行データの出力処理手順を含む文字認識方法に示した各処理手順を実行するためのプログラム（ソフトウェア）が記録されている。
処理対象の文字列画像は、スキャナー等の入力装置による原稿読み取りで入力され、例えばハードディスクなどに格納されているものである。CPUは、記憶手段が有する記録媒体から上記した処理手順を実現するプログラムを読み出し、プログラムに従う処理を対象文字列画像に実行し、その処理結果等をディスプレイに出力する。
なお、本発明に係わる文字認識装置を、ネットワークコントローラによりネットワークを介して、外部の装置と接続して、機能の一部をネットワーク上に持つような形態で実施してもよい。
【００３５】
【発明の効果】
複数の文字行からより正確に基準行を選択することができる。
【図面の簡単な説明】
【図１】  本発明に係わる文字列認識（切り出し）処理システムの構成を示すブロック図である。
【図２】  「実施形態１」に係わる文字行データの出力処理のフローチャートを示す。
【図３】  「実施形態２」に係わる文字行データの出力処理のフローチャートを示す。
【図４】  基準行を求めるためのメンバシップ関数を設定するためのパラメータを説明する図である。
【図５】  図４のパラメータを用いて設定されたメンバシップ関数の一例を示す線図である。
【図６】  メンバシップ値による基準行の選択処理を説明するための図である。
【図７】  「実施形態３」に係わる文字行データの出力処理のフローチャートを示す。
【図８】  「実施形態４」に係わる文字行データの出力処理のフローチャートを示す。
【図９】  ルビ行が付加された画像の一例を示す。
【符号の説明】
１…画像入力部、                ２…記憶部、
３…文字行切り出し部、          ５…文字行判定部、
７…行出力部。
【図１】
0004162195.tif 000002
【図２】
0004162195.tif 000003
【図３】
0004162195.tif 000004
【図４】
0004162195.tif 000005
【図５】
0004162195.tif 000006
【図６】
0004162195.tif 000007
【図７】
0004162195.tif 000008
【図８】
0004162195.tif 000009
【図９】
0004162195.tif 000010