(57)【要約】【課題】様々のカラー画像に対応して精度良く同色領域を抽出することが可能な画像処理装置を提供する。【解決手段】色の輝度値及び読み取り解像度を変数として隣接画素間の色差の最大値が格納されている色差テーブルから、入力画像から得られた隣接画素間の色差が最もよく一致する読み取り解像度を３原色のそれぞれに対して個別に取得し、この３原色の読み取り解像度に基づいて、入力画像の読み取り解像度を算出するようにする。【選択図】図４
2005317042.tif 000002
【特許請求の範囲】
【請求項１】
色の輝度値及び読み取り解像度を変数として、隣接画素間の色差の最大値を格納する色差テーブルと、
入力画像から得られる隣接画素間の色差と前記色差テーブルに格納されている色差とが最もよく一致する読み取り解像度を、３原色のそれぞれに対し個別に取得する解像度取得手段と、
前記３原色の読み取り解像度に基づいて、前記入力画像の読み取り解像度を算出する解像度算出手段と、
前記入力画像の読み取り解像度に対応する色差を、前記色差テーブルから取得する色差取得手段と、
前記色差テーブルから取得した色差に基づいて、ラベリングのしきい値を設定するしきい値設定手段と、
前記しきい値に基づいて、前記入力画像のラベリングを行うラベリング手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記色差テーブルは、画像が取りうる全ての色の輝度値に対し、隣接画素間の色差の最大値が登録されたものであることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
画像を所定の方向へ走査する走査手段と、
走査方向に対し、第１のラベル以外の画素から前記第１のラベルに変化する画素数を計数する第１の計数手段と、
前記走査方向に対し、前記第１のラベルが付された画素が２画素以上続いた後に、前記第１のラベルから前記第１のラベル以外の画素に変化する画素数を計数する第２の計数手段と、
前記第１のラベルが付された画素のうち、前記走査方向の隣接画素の両方が前記第１のラベルであり、かつ、前記走査方向と垂直方向の隣接画素の少なくとも一方が前記第１のラベル以外である画素数を計数する第３の計数手段とを備えることを特徴とする画像処理装置。
【請求項４】
予め定められた第１のしきい値と入力画像の色情報とを比較することにより、前記入力画像から同色領域を抽出する同色領域抽出手段と、
前記同色領域の色情報に基づいて、第２のしきい値を算出するしきい値算出手段と、
前記第２のしきい値と前記入力画像の色情報とを比較することにより、前記入力画像からの同色領域の再抽出を行う同色領域再抽出手段とを備えることを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置に関し、特に、カラー画像からタイトルなどの文字領域を抽出する場合に適用して好適なものである。
【背景技術】
【０００２】
近年、コンピュータやカラープリンタなどの周辺機器の発達と、その低価格化に伴って、カラー画像を処理する分野が広がっている。このため、カラー画像を領域分割し、カラー画像の中から特定領域だけを抽出する技術、例えば、カラー画像中の同色領域を抽出する技術が求められている。
【０００３】
この技術は、例えば、ＣＣＤカメラで撮影したカラー情景画像を処理対象の入力画像とする場合では、画像認識による果物選別や、車の監視、セキュリティーのための人物監視等、多方面で求められている。
【０００４】
また、カラー文書画像を入力画像とする場合では、画像から文書名やキーワードなどを自動抽出して、検索時に使用できるものとして期待されている。その一例として、図書館での本の分類や、管理の自動システムがあげられる。その他にも、画像をデータベースとして蓄積、共有化するグループウェアでの自動キーワードまたはファイル名付けなどに利用される。これらの情報は、膨大な量のカラー文書画像を自動検索するのに使用される。
【０００５】
従来のカラー画像中の同色領域を抽出する技術として、カラー画像中の画素を色ごとにクラスタリングすることにより、色分解画像を作成する方法がある。また、隣接拡張法による色ラベリング結果を用いることにより、カラー画像中の同色領域を抽出する方法がある。
【０００６】
また、カラー画像中からタイトルを抽出する技術として、色分解画像を用いて文字領域の抽出処理を行う方法がある。
この方法では、以下の処理が行われる。
【０００７】
・１つの色の色分解画像から連結領域の外接矩形を求める。
・外接矩形のサイズ、形状で一定の範囲にあるものだけに絞る。
・矩形毎に隣接矩形探索範囲を設け、その内部にかかる矩形を探索し、お互いに内部にかかる関係の矩形群をグループとして抽出する。
【０００８】
・グループ内の矩形の重心の直線性がよい物だけを残す。
・グループの外接矩形を求め、その内部を対象にグループを構成する領域の色に近いパターンを抽出する。
【０００９】
なお、従来のカラー文書画像から文字領域を抽出する技術が記載されている文献として、以下の非特許文献１〜４のようなものがある。
【非特許文献１】仙田等「文字の単色性に着目したカラー画像からの文字パターン抽出法」電子情報通信学会ＰＲＵ９４−０９，ｐ１７−２４
【非特許文献２】上羽等「等色線処理によるカラー画像からの文字領域の抽出」電子情報通信学会ＰＲＵ９４−０９，ｐ９−１６
【非特許文献３】松尾等「カラー文書画像からの単色文字領域の抽出」１９９７電子情報通信学会総合大会Ｄ−１２−１９
【非特許文献４】松尾等「濃淡及び色情報による情景画像からの文字列抽出」電子情報通信学会ＰＲＵ９２−１２１，ｐ２５−３２
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、従来のカラー画像の画素の色ごとのクラスタリングにより同色領域を抽出する方法では、画像全体の多数の画素を対象としたクラスタリングが行われるため、クラスタリングに必要な計算時間が大きくなる。
【００１１】
さらに、画像全体の画素を対象としてクラスタリングが行われるので、精度のよい領域抽出ができない場合がある。例えば、第１の色の領域と第２の色の領域とが離れた場所にあり、第１の色と第２の色とが類似しているために、これらの第１の色と第２の色とが１つのクラスタに分類されると、このクラスタから生成される第３の色によっては、第１の色と第２の色との両方を完全にカバーすることができず、抽出結果のパターンに穴が空いたり、輪郭がきれいに抽出されなかったりする場合がある。
【００１２】
また、従来の領域拡張法を用いて同色領域を抽出する方法では、隣り合う画素の色が、人間が見た時には同じように見えるものについても、隣接画素との色の近さをどう定義するかによっては、しきい値よりも大きくかけ離れる場合があり、領域中の穴や領域輪郭が正しく抽出できない場合がある。
【００１３】
さらに、隣接画素との関係だけを見ているので、文字領域と背景領域の境界で徐々に色が変化していく場合には、文字領域が背景領域と同一ラベルになってしまう場合がある。
また、従来の領域拡張法では、多種多様なカラー文書画像に対し、予め定められたしきい値を一律に適用して同色領域の抽出が行われるため、例えば、灰色や中間色などの同色系統の色が背景と文字に使われている場合には、かなりの頻度で背景と文字が同一ラベル化し、文字パターンの抽出精度が損なわれたり、逆に抽出されたラベル領域が文字パターンの中で小さく細切れ状態となり、結果的に文字パターンの抽出精度が悪化したりする場合がある。
【００１４】
また、２５６色画像などのフルカラー以外の画像に領域拡張法を適応すると、細かいラベル領域が多数発生し、領域抽出の精度が悪化するという問題がある。
また、従来の色分解画像を用いた文字領域の抽出方法では、画像全体についての色分解画像を、その画像から抽出された色の数だけ生成する必要があり、色分解画像の生成に時間がかかるという問題がある。さらに、各色分解画像は画像全体について生成されるので、例えば、その画像からタイトルを抽出する場合に、タイトル領域以外の色の影響を受けやすく、タイトルの抽出精度が悪化するという問題がある。また、連結領域の外接矩形を求める場合、抽出した色分解画像ごとに画像全体について処理を行う必要があるため、１つのカラー画像から複数（抽出した色数分の）の縦横が同じサイズの画像が必要になり、処理に時間がかかるという問題がある。
【００１５】
また、外接矩形のグルーピングも、画像全体について生成された色分解画像ごとに行われるので、処理に時間がかかるとともに、抽出対象となる文字が異なる色分解画像にクラスタリングされると、救済できないという問題がある。
【００１６】
また、グループの構成時に互いに探索範囲にかかる矩形だけを抽出するので、文字パターンの一部であるが、小さい部分がグループから抜け落ち易いという問題がある。また、抜け落ちた部分を拾うために、グループ内の色が近いパターンの抽出を最後に行うが、この時に色が近いノイズを拾いやすいという問題がある。
【００１７】
そこで、本発明の目的は、様々のカラー画像に対応して精度良く同色領域を抽出することが可能な画像処理装置を提供することである。
【課題を解決するための手段】
【００１８】
本発明の一態様によれば、色の輝度値及び読み取り解像度を変数として隣接画素間の色差の最大値が格納されている色差テーブルから、入力画像から得られた隣接画素間の色差が最もよく一致する読み取り解像度を３原色のそれぞれに対して個別に取得し、この３原色の読み取り解像度に基づいて、入力画像の読み取り解像度を算出するようにしている。
【００１９】
このことにより、入力画像の読み取り解像度を算出する際に、読み取り解像度の色成分ごとの違いを考慮することが可能となることから、カラー画像からの同色パターンの抽出精度を向上させることが可能となる。
【００２０】
また、本発明の一態様によれば、画像が取りうる全ての色の輝度値に対し、隣接画素間の色差の最大値を色差テーブルに登録するようにしている。
このことにより、画像の色の輝度値がどのような値であっても、補間などの演算を行うことなく、隣接画素間の色差の最大値を色差テーブルから直接取得することが可能となり、画像の色の輝度値に対応したラベリングのしきい値を高速に求めることが可能となる。
【００２１】
また、本発明の一態様によれば、画像を所定の方向へ走査した際のラベル値の変化回数に基づいて、画像内のパターンの輪郭長を算出するようにしている。
このことにより、輪郭長の算出対象となるパターンの外接矩形の範囲内を１回走査するだけで、そのパターンの輪郭長を算出することが可能となり、輪郭長の算出処理を高速化することが可能となる。
【００２２】
また、本発明の一態様によれば、走査方向に対し第１のラベル以外の画素から第１のラベルに変化する画素数を計数し、走査方向に対し第１のラベルが付された画素が２画素以上続いた後に、第１のラベルから第１のラベル以外の画素に変化する画素数を計数し、第１のラベルが付された画素のうち、走査方向の隣接画素の両方が第１のラベルであり、かつ、走査方向と垂直方向の隣接画素の少なくとも一方が第１のラベル以外である画素数を計数するようにしている。
【００２３】
このことにより、パターンのエッジを検出して輪郭長を算出する際に、走査方向に連続するエッジをパターンの輪郭として検出することが可能となるとともに、１画素幅のパターンについては、輪郭が２回カウントされることを防止することが可能となり、様々な形状のパターンの輪郭長を１度の走査で正確に算出することが可能となる。
【発明の効果】
【００２４】
本発明の一態様によれば、入力画像の読み取り解像度を算出する際に、読み取り解像度の色成分ごとの違いを考慮することが可能となることから、カラー画像からの同色パターンの抽出精度を向上させることが可能となる。
【００２５】
また、本発明の一態様によれば、画像が取りうる全ての色の輝度値に対し、隣接画素間の色差の最大値を色差テーブルに登録することにより、補間などの演算を行うことなく、隣接画素間の色差の最大値を色差テーブルから直接取得することが可能となり、ラベリングのしきい値を画像の色の輝度値ごとに高速に求めることが可能となる。
【００２６】
また、本発明の一態様によれば、画像を所定の方向へ走査した際のラベル値の変化回数に基づいて、画像内のパターンの輪郭長を算出することにより、輪郭長の算出処理を高速化することが可能となる。
【００２７】
また、本発明の一態様によれば、パターンのエッジを検出して輪郭長を算出する際に、走査方向に連続するエッジをパターンの輪郭として検出するとともに、１画素幅のパターンについては、輪郭が２回カウントされることを防止することにより、様々な形状のパターンの輪郭長を１度の走査で正確に算出することが可能となる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施例に係わる画像処理装置について図面を参照しながら説明する。
図１は、本発明の第１実施例に係わる画像処理装置の構成を示すブロック図である。
図１において、入力画像１が処理対象とされる場合、読み取り情報取得手段２は、入力画像１の読み取り情報を取得する。この読み取り情報は、入力画像１の色数、読み取り解像度、輝度値、彩度、隣接画素間の色差、または色の分散などである。
【００２９】
同色範囲設定手段３は、入力画像１の読み取り情報に基づいて、入力画像１の同一とみなす色の範囲を設定する。
ラベリング手段４は、同色範囲設定手段３で設定された色の範囲の連結画素に同一ラベルを付すことにより、入力画像１のラベリングを行う。
【００３０】
このことにより、ラベリング対象となる入力画像１からラベリングのしきい値を求めることが可能となり、多種多様なカラー画像が処理対象とされ、同一とみなす色の範囲が各カラー画像ごとに異なっている場合においても、そのカラー画像の色の範囲に対応したしきい値を用いてラベリングを行うことができる。
【００３１】
グルーピング手段５は、ラベリング手段４により生成されたラベルパターンのグルーピングを行う。ここで、グルーピング手段５は、同色範囲設定手段３で設定された同一色の範囲のパターンを同一グループにグルーピングすることができる。
【００３２】
グループ情報算出手段５は、同一グループに分類されているパターンの画像情報に基づいて、グループの画像情報を算出する。
ここで、グループの画像情報は、グループの色情報やグループの矩形情報などである。グループの色情報は、例えば、同一グループに属するパターンの色の平均値や同一グループに属するパターンの色の分散である。グループの矩形情報は、例えば、同一グループに属するパターン全体の外接矩形の大きさ、形状、または位置である。
【００３３】
グループの画像情報が求まると、このグループの画像情報は、同色範囲設定手段３、ラベリング手段４及びグルーピング手段５に供給される。
同色範囲設定手段３は、グループの画像情報を受け取ると、このグループの画像情報に基づいて、ラベリングのしきい値を設定することができる。例えば、同一グループに属するパターンの色の変動を求め、同一グループに属するパターンの輝度差の最大値をラベリングのしきい値とすることができる。
【００３４】
このことにより、ラベリングを行うパターン自体からラベリングのしきい値を求めることが可能となり、同一とみなす色の範囲が背景パターンと文字パターンとで異なっている場合においても、ラベリングを精度良く行うことができる。
【００３５】
ラベリング手段４は、グループの画像情報を受け取ると、このグループの画像情報に基づいて、ラベリングを行うことができる。例えば、同色パターンの再抽出を行う場合に、探索する範囲を同一グループに属するパターンを囲む外接矩形内に限定することができる。
【００３６】
このことにより、入力画像１からタイトルパターンを抽出する際に、タイトルを構成するパターンの一部が欠落した場合においても、欠落したパターンのみを効率よく抽出することが可能となる。
【００３７】
グルーピング手段５は、グループの画像情報を受け取ると、このグループの画像情報に基づいて、パターンのグルーピングを行うことができる。例えば、パターンのグルーピングを行う場合に、同一グループに属するパターン全体の色を考慮してグルーピングを行う。
【００３８】
このことにより、グルーピング対象となるパターンの一部に局所的な色の変動がある場合においても、この局所的な色の変動を吸収してパターンのグルーピングを行うことが可能となり、同色パターンの抽出精度を向上させることが可能となる。
【００３９】
図２は、本発明の第２実施例に係わる画像処理装置の構成を示すブロック図である。
図２において、色数判別手段７は、カラー画像の色数を判別する。第１のラベリング手段９は、第１のラベリング方法によりラベリングを行う。第２のラベリング手段１０は、第２のラベリング方法によりラベリングを行う。制御手段８は、カラー画像の色数に基づいて、第１のラベリング手段９または第２のラベリング手段１０にラベリングを行わせる。
【００４０】
ここで、色数判別手段７は、カラー画像の１画素当たりのビット数を調べることにより、カラー画像の色数を判別することができる。
また、第１のラベリング方法として、色パレットのクラスタリングを用いたラベリングを用いることができ、第２のラベリング方法として、隣接拡張法を用いたラベリングを用いることができる。
【００４１】
また、制御手段８は、色数の少ないカラー画像に対しては、色パレットのクラスタリングを用いたラベリングを行わせ、色数の多いカラー画像に対しては、隣接拡張法を用いたラベリングを行わせることができる。
【００４２】
このことにより、色数の少ないカラー画像に対しては、領域の色差がある程度大きくても、それらの領域を同一色であるとみなしてラベリングを行うことが可能となり、同色領域内での色の欠落を防止して、同色領域を精度良く抽出することが可能となる。また、色数の多いカラー画像では、わずかな色の違いを検出して、異なる色の領域に異なるラベルを付与することが可能となり、文字の背景が文字の色に近い場合においても、文字のみを精度良く抽出することが可能となる。
【００４３】
図３は、本発明の第３実施例に係わる画像処理装置１４の構成及び動作を示す図である。
図３において、局所領域抽出手段１５は、ラベリング対象となる入力画像１３から局所領域を抽出する。色差情報抽出手段１６は、局所領域から入力画像１３の実際の色差情報を抽出する。しきい値設定手段１７は、入力画像１３から抽出した色差情報に基づいて、入力画像１３のラベリングのしきい値を設定する。
【００４４】
ここで、局所領域抽出手段１５は、入力画像をメッシュで区切り、メッシュ領域１２の色の分散値が予め決められた範囲にあるものだけを局所領域として抽出することができる。また、色差情報抽出手段１６は、局所領域として抽出されたメッシュ領域１２内の色の標準偏差を色差情報として算出することができる。また、しきい値設定手段１７は、メッシュ領域１２ごとに求めた標準偏差の平均値に基づいて、しきい値を設定することができる。
【００４５】
例えば、互いに隣接する画素１１の色差がしきい値以下かどうかを調べることにより、同色領域１８を抽出することを考える。
ここで、画素１１の色差を判定するしきい値は、入力画像１３のラベリングを行う前に予め決めておく必要がある。このため、このしきい値として、実験用のカラー画像などを用いて経験的に決めた値を使うと、多種多様なカラー画像に対応できなくなる場合がある。
【００４６】
そこで、色差情報抽出手段１６は、ラベリング対象となる入力画像１３自体から同色領域１８の色差情報を抽出し、しきい値設定手段１７は、その色差情報に基づいて入力画像１３のラベリングのしきい値を設定する。
【００４７】
入力画像１３から同色領域１８の色差情報を抽出するために、入力画像１３から均一色領域を抽出する。この均一色領域を抽出するために、例えば、入力画像１３を３×３の画素１１ごとに分割したメッシュ領域１２を生成する。メッシュ領域１２が生成されると、入力画像１３のメッシュ領域１２のそれぞれについて、画素１１の色の分散を調べる。そして、画素１１の色の分散の小さいメッシュ領域１２を均一色領域とする。
【００４８】
例えば、入力画像１３において、メッシュ領域Ｆ、Ｇは同色領域１８内にあるので、メッシュ領域Ｆ、Ｇの画素１１の色の分散は小さい。一方、メッシュ領域Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｈ、Ｉ、Ｊ、Ｋ、Ｌは同色領域１８のそれ以外の領域とが混在しているので、メッシュ領域Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｈ、Ｉ、Ｊ、Ｋ、Ｌの画素１１の色の分散は大きい。従って、画素１１の色の分散を各メッシュ領域１２ごとに調べ、画素１１の色の分散の小さなメッシュ領域１２のみを抽出することにより、メッシュ領域Ｆ、Ｇのみを均一色領域として抽出することができる。
【００４９】
均一色領域が抽出されると、均一色領域の色差情報に基づいて、ラベリングのしきい値を設定する。
例えば、均一色領域としてメッシュ領域Ｆ、Ｇが入力画像１３から抽出されると、各メッシュ領域Ｆ、Ｇの標準偏差の平均値に基づいて、同色領域１８を抽出するためのしきい値を設定する。
【００５０】
このように、入力画像１３全体には様々な色が分布していても、小さな領域のみに注目した場合には、均一色だけからなる領域も存在するようになる。このため、分割された領域ごとに、その領域の分散を求め、分散の小さな領域のみを取り出すことにより、入力画像１３から均一色領域を抽出することが可能となる。入力画像１３から均一色領域が抽出されると、この均一色領域の色の変動を調べることにより、同色領域１８を画素単位で特定するためのラベリングのしきい値を設定することができる。
【００５１】
この結果、灰色や中間色などの同色系統の色が文字と背景とに使われているため、予め実験的に求めたしきい値を用いただけでは、これらの色を区別できない場合においても、同一色で塗られている範囲の色が実際にどの程度異なっているかを、処理対象となる実際の画像から求めることが可能となり、同色系統の色の文字と背景とが混在した画像から、文字のみを精度良く抽出することが可能となる。
【００５２】
以下、本発明の一実施例に係わるパターン抽出装置について、図面を参照しながら説明する。
図４は、本発明の第４実施例に係わるパターン抽出装置の動作を示すフローチャートである。
【００５３】
図４において、まず、フルエントリ色差テーブル作成処理を行う（ステップＳ１）。このフルエントリ色差テーブルは、入力画像画が取りうるＲＧＢの各輝度値及び読み込み解像度を変数として、隣接画素との輝度値の最大値を格納したものである。
【００５４】
ここで、隣接画素との輝度値の最大値を求めるために、実際の印刷方法を模倣した印刷モデルを用いて、ＲＧＢの各輝度値ごとの同色領域をコンピュータ上に仮想的に生成する。そして、コンピュータ上に仮想的に生成された同色領域での隣接画素との輝度値の最大値を、読み込み解像度ごとに求める。
【００５５】
図５は、網点印刷法における印刷モデルの構築方法を示す図である。
図５において、印刷モデルとして、シアン、マゼンタ、黄色の印刷メッシュＭ１１、Ｍ１２、Ｍ１３をそれぞれ回転させて重ね合わせたものを使用し、カラー画像の色を仮想的に表現する。ここで、シアン、マゼンタ、黄色の色の濃さを調節する場合、印刷メッシュＭ１１、Ｍ１２、Ｍ１３の各格子点に配置される塗りつぶし円Ｄ１１、Ｄ１２、Ｄ１３の大きさを調節する。
【００５６】
この時、一般的な印刷モデルのパラメータは、
・印刷メッシュＭ１１、Ｍ１２、Ｍ１３の格子間隔ｍｄ（ただし、格子間隔ｍｄは、黄色、シアン、マゼンタ共通サイズ）
・黄色メッシュＭ１１の水平線からの角度θ１１
・マゼンタメッシュＭ１２の水平線からの角度θ１２
・シアンメッシュＭ１３の水平線からの角度θ１３
・黄色の塗りつぶし円Ｄ１１の半径ｒ１１
・マゼンタの塗りつぶし円Ｄ１２の半径ｒ１２
・シアンの塗りつぶし円Ｄ１３の半径ｒ１３
である。ただし、本実施例では、この全てのパラメータを可変にすると煩雑すぎるので、ある程度の限定を与え、以下のように設定した。
【００５７】
・黄色メッシュＭ１１の水平線からの角度θ１１＝１５度
・マゼンタメッシュＭ１２の水平線からの角度θ１２＝３０度
・シアンメッシュＭ１３の水平線からの角度θ１３ ＝４５度
・格子間隔ｍｄ＝２０ドット
この印刷モデルを使用して、シミュレーションを行い、黄色、マゼンタ、シアンの塗りつぶし円Ｄ１１、Ｄ１２、Ｄ１３のそれぞれの半径ｒ１１、ｒ１２、ｒ１３に影響を受ける平均ＲＧＢ値（Ｒｍ，Ｇｍ，Ｂｍ）を求める。
【００５８】
具体的には、印刷メッシュＭ１１、Ｍ１２、Ｍ１３の格子間隔ｍｄよりもかなり大きな単位面積を考え、平均ＲＧＢ値（Ｒｍ，Ｇｍ，Ｂｍ）を、
Ｒｍ＝２５５−単位面積中のシアンの面積×２５５／単位面積
Ｇｍ＝２５５−単位面積中のマゼンタの面積×２５５／単位面積
Ｂｍ＝２５５−単位面積中の黄色の面積×２５５／単位面積
として求める。
【００５９】
次に、１つの色（Ｒｍ，Ｇｍ，Ｂｍ）で均一に印刷されている画像をスキャナで読み込んだ場合のスキャナ読み込みモデルについて考える。これは、印刷メッシュＭ１１、Ｍ１２、Ｍ１３と独立な間隔ｓｄを有する読み込みメッシュＭ１４を導入し、この読み込みメッシュＭ１４内のＲＧＢの各輝度値（＝各色の面積）を求めることに相当する。
【００６０】
ここで、読み込みメッシュＭ１４の間隔ｓｄが、スキャナ読み込み解像度に相当する。なお、同じ平均色（Ｒｍ，Ｇｍ，Ｂｍ）の画像を読み込む場合でも、スキャナ読み込み解像度が大きい場合には、隣接画素のＲＧＢ輝度差は大きく異なり、逆に、スキャナ読み込み解像度が小さい場合には、読み取った結果の画素はどの画素も平均色（Ｒｍ，Ｇｍ，Ｂｍ）に近づくため、隣接画素のＲＧＢ輝度差は０に近づくようになる。
【００６１】
１つの読み込みメッシュＭ１４内の具体的なＲＧＢ輝度値（Ｒｃ，Ｇｃ，Ｂｃ）は、以下のようになる。
Ｒｃ＝２５５−読み込みメッシュ面積中のシアンの面積×２５５／読み込みメッシュ面積
Ｇｃ＝２５５−読み込みメッシュ面積中のマゼンタの面積×２５５／読み込みメッシュ面積
Ｂｃ＝２５５−読み込みメッシュ面積中の黄色の面積×２５５／読み込みメッシュ面積
読み込みメッシュＭ１４の間隔ｓｄを変えながら、ＲＧＢ輝度値（Ｒｃ，Ｇｃ，Ｂｃ）及び隣接画素とのＲＧＢそれぞれの輝度差を求め、各ＲＧＢ輝度値に対応した輝度差の適当な値（例えば、最大値）を色差テーブルに記録する。
【００６２】
この時、本来は、印刷モデルでは、印刷メッシュの交点に描かれた塗りつぶし円はＲＧＢが相互に重なり合い、ＲＧＢの各輝度値によって相互に影響を及ぼし合うため、ＲＧＢは独立とは言えないが、このスキャナ読み込みモデルでは、単純化のために、ＲＧＢは相互に独立であるという仮説を立てた。
【００６３】
従って、ＲＧＢ輝度値、読み込み解像度、及び隣接画素の輝度差の結果を、ＲＧＢ独立のテーブルに保存することができる。
図６は、Ｒのテーブルの例を示す図である。
【００６４】
図６において、Ｒ輝度値を０〜２５５まで変化させた場合のＲ輝度値のそれぞれについて、スキャナ読み込み解像度を１４〜３５まで変化させた時の隣接画素との輝度差の最大値が格納されている。
【００６５】
なお、フルエントリ色差テーブルの作成方法は、０〜２５５の輝度値を擬似的に発生させ、それぞれの輝度値の時の隣接画素の輝度差の最大値を印刷モデル上で求め、その値を色差テーブルに格納する。この処理をＲＧＢそれぞれの色要素について行う。
【００６６】
なお、図６の例では、Ｒのテーブルの場合について示したが、Ｇ、Ｂのテーブルの構成も同様である。
Ｒ，Ｇ，Ｂの色差テーブルが与えられると、このＲ，Ｇ，Ｂの色差テーブルを参照することにより、入力画像から同一色の範囲を検出する際のしきい値を獲得することができる。
【００６７】
このように、０〜２５５の全ての輝度値のエントリを持ったテーブルを予め作成しておくことにより、補完計算を省略することが可能となり、数十個の飛び飛び輝度値のエントリしか持たない場合に比べて、パラメータ推定処理や色ラベリング処理などの処理時間を減らすことが可能となり、処理の高速化を図ることが可能となる。
【００６８】
なお、数十個の飛び飛び輝度値のエントリしか持たない色差テーブルを用いる場合は、以下の補完演算により隣接画素との輝度差の最大値を求めることができる。
色差テーブルに登録されている輝度値Ｒｉに対する隣接画素との輝度差の最大値がＲｄｉ、色差テーブルに登録されている輝度値Ｒｉ＋１に対する隣接画素との輝度差の最大値がＲｄｉ＋１であるとする。この時、色差テーブルに登録されていない輝度値Ｒｍが、輝度値Ｒｉと輝度値Ｒｉ＋１の間の線形補間で表されるとして、その関係を隣接画素との輝度値の最大値にも適応して、推定される隣接画素との輝度値の最大値ｉｎｆｅｒｅｄ＿ｄｅｌｔａを求める。すなわち、
ｒｌ＝Ｒｉ−Ｒｉ＋１
ｒｍ＝Ｒｍ−Ｒｉ
ｒｎ＝Ｒｉ＋１−Ｒｍ
ｉｎｆｅｒｅｄ＿ｄｅｌｔａ＝Ｒｄｉ＊ｒｎ／ｒｌ＋Ｒｄｉ＋１＊ｒｍ／ｒｌ
とする。
【００６９】
次に、画像入力処理を行う（ステップＳ２）。
この画像入力処理では、ＣＣＤカメラやスキャナなどの撮像装置でカラー画像を入力し、メモリに保存する。
【００７０】
次に、フルカラー／その他判定処理を行う（ステップＳ３）。
このフルカラー／その他判定処理では、入力画像のヘッダに含まれている１画素当たりのビット数を調べ、２４ビット／画素の画像をフルカラー画像とみなし、図４のステップＳ４〜ステップＳ２４の処理を行う。１画素当たりのビット数が２４ビットより小さい場合には、フルカラー以外の入力画像とみなし、図４のステップＳ２５、ステップＳ２６及びステップＳ６〜ステップＳ２４の処理を行う。
【００７１】
次に、モデル解像度推定処理及び距離しきい値獲得処理を行う（ステップＳ４）。
モデル解像度推定処理は、入力画像の解像度が印刷モデルのどの読み込み解像度に適合しているかを推定する。この処理では、入力画像をメッシュ状に分割し、ＲＧＢの各色成分について、各メッシュ領域内における隣接画素との輝度値の最大値と最も良く一致する読み込み解像度を色差テーブルから求める。
【００７２】
また、距離しきい値獲得処理は、ラベリングで使用するしきい値を実際の入力画像の色差から求める。この処理では、入力画像をメッシュ状に分割し、各メッシュ領域内における画素の色の分散を求めることにより、均一色からなるメッシュ領域を抽出する。そして、均一色からなるメッシュ領域の画素の標準偏差に基づいて、ラベリングで使用するしきい値を求める。
【００７３】
以下、モデル解像度推定処理について具体的に説明する。
まず、入力画像をｎ×ｎのメッシュに区切り、各メッシュ領域の中の各画素の（Ｒ，Ｇ，Ｂ）の値を各色成分ごとに分解して考えるのではなく、（Ｒ，Ｇ，Ｂ）の値をまとめて考えることにより、入力画像に最も適合する印刷モデルの解像度を求めることを考える。この場合、入力画像の解像度を求めるには、印刷モデルとの適合具合があまりかけ離れていないメッシュ領域から求めた解像度だけを対象に、それらの解像度を画像全体で平均する。
【００７４】
しかし、この方法では、実際の入力画像が印刷モデルと一致していない場合、読み込み解像度に誤差が生じることがある。例えば、実際の入力画像は、Ｙ（イエロー）、Ｍ（マゼンタ）、Ｃ（シアン）、Ｋ（ブラック）を使って印刷されることが多く、それぞれの色のメッシュの角度（スクリン角度）、色の印刷の順番、重ねて印刷された時の色が独立でないことによる影響、メッシュの解像度、ＹＭＣの３色を使用するかＹＭＣＫの４色を使用するかなどは、それぞれの印刷物ごとに異なっている。一方、印刷モデルの色は、角度固定、色は独立、ＹＭＣの３色、メッシュ解像度はある一定の範囲という固定された条件で生成されている。このため、実際の入力画像とのずれが生じ、それが読み込み解像度の推定に影響するからである。
【００７５】
この結果、実際に正しいパターンが抽出される理想的な解像度値と多少ずれた解像度値が推定され、本来同一の色と見なされる領域で、解像度及び対象となる色から決まる同色範囲が狭くなる。このため、同色範囲が細切れの領域に分断され、本来同一のラベルが付される文字パターンが、小さな細切れ領域に分割される現象が発生する。
【００７６】
そこで、本実施例では、推定解像度を全画像から（Ｒ，Ｇ，Ｂ）の各成分ごとに独立に求め、各成分ごとに独立に求めた推定解像度を後で平均化する。
図７は、本発明の一実施例に係わるモデル解像度推定処理を説明する図である。
【００７７】
図７において、入力画像を各ＲＧＢ成分ごとに分解したＲ画像２１、Ｇ画像２３及びＢ画像２５をそれぞれ３×３画素ａ〜ｉずつのメッシュ領域２２、２４、２６に分割する。そして、各メッシュ領域２２、２４、２６内の３×３画素ａ〜ｉの平均ＲＧＢ輝度（Ｒｍ，Ｇｍ，Ｂｍ）及び隣接画素の輝度差の最大値（Ｒｄ，Ｇｄ，Ｂｄ）を、Ｒ画像２１、Ｇ画像２３及びＢ画像２５のそれぞれについて各メッシュ領域２２、２４、２６ごとに求める。ここで、３×３画素ａ〜ｉの隣接方向は２０通りあるので、これらの２０通り隣接画素の輝度差を求め、それらの輝度差のうち最大値（Ｒｄ，Ｇｄ，Ｂｄ）を採用する。
【００７８】
一方、Ｒテーブル２７、Ｇテーブル２８及びＢテーブル２９には、各輝度値に対応する隣接画素との輝度差の最大値が解像度をパラメータとして登録されている。
そして、平均Ｒ輝度Ｒｍ及び隣接画素との輝度差の最大値Ｒｄをキー情報としてＲテーブル２７を検索し、Ｒ画像２１から求めた隣接画素との輝度差の最大値ＲｄとＲテーブル２７に登録されている隣接画素との輝度差の最大値との差ｄｉｆｆ＿ｒを求める。このｄｉｆｆ＿ｒの算出を平均Ｒ輝度Ｒｍについて登録されている全ての解像度に対して行い、ｄｉｆｆ＿ｒの値が最小となる解像度ｒｅｓｏｌ＿ｒをＲテーブル２７から求める。
【００７９】
このｒｅｓｏｌ＿ｒの算出をＲ画像２１の全てのメッシュ領域２２に対して行い、各メッシュ領域２２について求めた全てのｒｅｓｏｌ＿ｒの平均値ｍｅａｎ＿ｒｅｓｏｌ＿ｒを算出する。
【００８０】
また、平均Ｇ輝度Ｇｍ及び隣接画素との輝度差の最大値Ｇｄをキー情報としてＧテーブル２８を検索し、Ｇ画像２３から求めた隣接画素との輝度差の最大値ＧｄとＧテーブル２８に登録されている隣接画素との輝度差の最大値との差ｄｉｆｆ＿ｇを求める。このｄｉｆｆ＿ｇの算出を平均Ｇ輝度Ｇｍについて登録されている全ての解像度に対して行い、ｄｉｆｆ＿ｇの値が最小となる解像度ｒｅｓｏｌ＿ｇをＧテーブル２８から求める。
【００８１】
このｒｅｓｏｌ＿ｇの算出をＧ画像２３の全てのメッシュ領域２４に対して行い、各メッシュ領域２４について求めた全てのｒｅｓｏｌ＿ｇの平均値ｍｅａｎ＿ｒｅｓｏｌ＿ｇを算出する。
【００８２】
また、平均Ｂ輝度Ｂｍ及び隣接画素との輝度差の最大値Ｂｄをキー情報としてＢテーブル２９を検索し、Ｂ画像２５から求めた隣接画素との輝度差の最大値ＢｄとＢテーブル２９に登録されている隣接画素との輝度差の最大値との差ｄｉｆｆ＿ｂを求める。このｄｉｆｆ＿ｂの算出を平均Ｂ輝度Ｂｍについて登録されている全ての解像度に対して行い、ｄｉｆｆ＿ｂの値が最小となる解像度ｒｅｓｏｌ＿ｂをＢテーブル２９から求める。
【００８３】
このｒｅｓｏｌ＿ｂの算出をＢ画像２５の全てのメッシュ領域２６に対して行い、各メッシュ領域２６について求めた全てのｒｅｓｏｌ＿ｂの平均値ｍｅａｎ＿ｒｅｓｏｌ＿ｂを算出する。
【００８４】
ｍｅａｎ＿ｒｅｓｏｌ＿ｒ、ｍｅａｎ＿ｒｅｓｏｌ＿ｇ及びｍｅａｎ＿ｒｅｓｏｌ＿ｂが求まると、これらの値の平均値ｒｅｓｏｌｕｔｉｏｎを求め、このｒｅｓｏｌｕｔｉｏｎを入力画像の印刷モデルでの読み込み解像度とする。
【００８５】
以下、数式を用いて説明する。入力画像を３×３画素づつのメッシュ領域に分割した場合に、その内部の平均ＲＧＢ輝度を（Ｒｍ，Ｇｍ，Ｂｍ）、隣接画素の輝度差の最大値を（Ｒｄ，Ｇｄ，Ｂｄ）とする。
【００８６】
以下、ＲＧＢ独立の処理であるので、Ｒを例にして説明する。
解像度値をある値に固定して、Ｒｍからテーブルを参照して、推定される隣接画素との輝度値の最大値ｉｎｆｅｒｅｄ＿ｄｅｌｔａを求める。
【００８７】
この推定される隣接画素との輝度値の最大値ｉｎｆｅｒｅｄ＿ｄｅｌｔａと実際に画像から求めたＲｄとの差ｄｉｆｆ＿ｒを、
ｄｉｆｆ＿ｒ＝｜Ｒｄ−ｉｎｆｅｒｅｄ＿ｄｅｌｔａ｜
として求める。
【００８８】
解像度パラメータをスキャンして、このｄｉｆｆ＿ｒの値が最も小さくなる解像度ｒｅｓｏｌ＿ｒを求める。この解像度ｒｅｓｏｌ＿ｒを入力画像中の各メッシュ領域全体について算出し、解像度ｒｅｓｏｌ＿ｒの平均値ｍｅａｎ＿ｒｅｓｏｌ＿ｒを求める。
【００８９】
これと同様の処理をＧ，Ｂでも行い、ｍｅａｎ＿ｒｅｓｏｌ＿ｇ，ｍｅａｎ＿ｒｅｓｏｌ＿ｂを求める。そして、それらの値の平均値ｒｅｓｏｌｕｔｉｏｎを、
ｒｅｓｏｌｕｔｉｏｎ＝（ｍｅａｎ＿ｒｅｓｏｌ＿ｒ
＋ｍｅａｎ＿ｒｅｓｏｌ＿ｇ＋ｍｅａｎ＿ｒｅｓｏｌ＿ｂ）／３
として求め、この平均値ｒｅｓｏｌｕｔｉｏｎを入力画像の推定解像度として用いる。
【００９０】
次に、距離しきい値獲得処理について具体的に説明する。
まず、背景と文字領域との色の境目がぼんやりしている時でも、背景と文字領域との区別を正確に行えるようにするため、同一ラベルの付されたラベル領域（同色と判断された領域）の平均色を算出し、その平均色とその周囲にある対象画素の色との色差が、そのラベル領域の平均色から推定される許容色差の一定倍率の色差以内にあれば、対象画素をそのラベル領域に組み込むことを考える。
【００９１】
この手法によっても、背景と文字領域との区別をある程度正確に行うことが可能である。
しかし、この手法では、ラベリングのしきい値として、色差テーブルに登録されている値を多種多様なカラー画像に対して一律に適用するため、灰色、中間色などの特定の色が背景や文字色にあると、背景と文字とが同じ領域と判断される場合があり、ラベリング対象となるカラー画像によっては、背景色と文字色とを正確に区別できない場合がある。
【００９２】
そこで、本実施例では、入力画像の局地的な同色判定処理を導入し、入力画像の中から局所的に同色領域（色の変化が無い部分）を求め、その局所領域から色ラベリングで使用する距離値のしきい値を求める。
【００９３】
この手法により、背景と文字領域との色の境目がぼんやりしている時でも、背景と文字領域との区別を正確に行うことが可能となり、文字領域のみを背景から精度良く切り離して、文字領域のみを正しく抽出することができる。
【００９４】
具体的には、入力画像を３×３画素づつのメッシュ領域に分割し、その内部の平均ＲＧＢ輝度値（Ｒｍ，Ｇｍ，Ｂｍ）と分散値（Ｒｖ，Ｇｖ，Ｂｖ）を求める。そして、ＲＧＢの各分散値の２乗和のルートを、
ｓ＝ｓｑｒｔ（Ｒｖ×Ｒｖ＋Ｇｖ×Ｇｖ＋Ｂｖ×Ｂｖ）
として求め、この値ｓをメッシュ領域の分散値とする。入力画像の各メッシュ領域ごとのｓの値を求め、それを記録する。また、ｓの値の最大値をｓｍａｘとして記録する。
【００９５】
ここで、メッシュ領域のｓの値が、
ｓｍａｘ×ＲＡＮＧＥ＿ＬＯＷ＜ｓ＜ｓｍａｘ×ＲＡＮＧＥ＿ＨＩＧＨ
かつ
ｓ＞ＭＩＮ＿ＶＡＲＩ
（例えば、ＲＡＮＧＥ＿ＬＯＷ＝０．００４，ＲＡＮＧＥ＿ＨＩＧＨ＝０．１６，ＭＩＮ＿ＶＡＬＩ＝１０とする。）
の条件を満足する場合、このメッシュ領域をラベリングのしきい値を求めるための局所領域とする。
【００９６】
なお、ｓの値が小さい程、そのメッシュ領域内の画素の色は互いに近くなるが、ｓの値の最も小さな領域は、同一色で塗られた背景領域に相当する場合が多い。このため、ｓの値の最も小さな領域の色差に基づいてラベリングのしきい値を設定し、このしきい値を用いて文字領域の抽出を行うと、しきい値が小さくなり過ぎて、文字領域の抽出には適切でないことがある。従って、しきい値の算出に用いるメッシュ領域のｓの値には、下限が設けられている。
【００９７】
しきい値の算出に用いるメッシュ領域を入力画像から求めると、このメッシュ領域のｓの値のルートを標準偏差として求める。そして、対象メッシュ領域ごとに求めた標準偏差をｋ（例えば、ｋ＝３．０）倍した後の平均値ＴＨ＿ｄｉｓｔを以下の式で求め、この平均値ＴＨ＿ｄｉｓｔを距離のしきい値とする。
【００９８】
【数１】
2005317042.tif 000003
ここで、ｉは対象メッシュ領域の番号、ｎは対象メッシュ領域の個数である。なお、距離しきい値獲得処理においては、モデル解像度推定処理で使用したメッシュと同一のメッシュを用いることにより、モデル解像度推定処理で算出した平均ＲＧＢ輝度値（Ｒｍ，Ｇｍ，Ｂｍ）を分散値（Ｒｖ，Ｇｖ，Ｂｖ）の算出に使用することができ、処理を高速化することができる。
【００９９】
次に、色ラベリング処理を行う（ステップＳ５）。
この色ラベリング処理では、領域拡張法によりラベリングを行う。この領域拡張法は、隣接する画素の色が近い時に、同一ラベルを与えることを繰り返すことにより、画像全体を同色領域で区分けしていく手法である。領域拡張法は、同一ラベルを与えるかどうかの判断の対象が注目画素の周辺の画素だけなので、色空間をクラスタリングする場合に比べて処理時間を短縮できる。
【０１００】
一方、領域拡張法では、隣接画素との色の近さをどう定義するかによって、同色パターンに穴が空いたり、輪郭が綺麗に抽出されたかったりする。また、隣接画素との関係だけを見ているので、文字領域と背景領域の境界で徐々に色が変化していく場合には、文字領域が背景領域と同一ラベルになる場合がある。
【０１０１】
このため、同一ラベルの付されたラベル領域の平均色を算出し、その平均色とその周囲にある対象画素の色との色差が、そのラベル領域の平均色から推定される許容色差の一定倍率の色差以内にあれば、対象画素をそのラベル領域に組み込むようにすることにより、背景と文字領域との色の境目がぼんやりしている時でも、背景と文字領域との区別をある程度は正確に行うことができる。
【０１０２】
しかし、この手法によっても、様々なカラー文書画像には対応できず、灰色や中間色などの領域で、かなりの頻度で背景と文字が同一ラベル化し、文字パターンを正確に抽出できないことがあったり、抽出されたラベル領域が文字パターンの中で小さく細切れ状態となり、結果的に文字パターンを正確に抽出できないことがあったりする。
【０１０３】
そこで、本実施例では、領域拡張法によるラベリングのしきい値として、ステップＳ４で求めたしきい値を用いる。このステップＳ４で求めたしきい値は、ラベリング対象となる入力画像の同色領域の実際の色差に基づいて設定されており、多種多様なカラー文書画像に対して最適な値を与えることができる。このため、印刷モデルなどを用いて求めたしきい値を多種多様なカラー文書画像に対して一律に適用することなく、多種多様なカラー文書画像の同一色の範囲を個別に考慮してラベリングを行うことが可能となり、同色領域の抽出精度を向上させることができる。
【０１０４】
図８は、本発明の一実施例に係わる色ラベリング処理を説明する図である。
図８において、画素ａ〜ｒからなる領域（斜線部分）が同色パターン３１として抽出され、画素ａ〜ｒに同一ラベルが付されているものとする。ここで、例えば、ラベルが付されていない画素ｓが検出されると、画素ｓの周囲に既にラベル付けされている画素があるかどうかを調べる。そして、既にラベル付けされている画素ｐ、ｑ、ｒが見つかると、画素ｒの色と画素ｐ、ｑ、ｒのいずれかの色との差がしきい値以下であるかどうかを調べる。そして、例えば、画素ｓの色と画素ｐの色との差がしきい値以下であると判断された場合、画素ｐと同一ラベルが付されている画素ａ〜ｒの色の平均色と画素ｓの色とを比較する。この結果、画素ｐと同一ラベルが付されている画素ａ〜ｒの色の平均色と画素ｓの色との差がしきい値以下であると判断された場合、画素ｓに画素ｐと同一ラベルを付す。
【０１０５】
ここで、ラベリングを行うしきい値を、色差テーブルから求めるのではなく、例えば、画素ｃ、ｄ、ｅ、ｈ、ｉ、ｊ、ｋ、ｌ、ｍからなる領域をメッシュ領域として抽出し、このメッシュ領域内における画素ｃ、ｄ、ｅ、ｈ、ｉ、ｊ、ｋ、ｌ、ｍの色の分散に基づいて求めることにより、ラベリングの精度を向上させることができる。
【０１０６】
具体的には、入力画像の左上からラスタスキャンを行い、ラベル付けがされていない画素に注目する。この注目画素のＲＧＢ輝度値（Ｒ、Ｇ、Ｂ）と推定解像度ｒｅｓｏｌｕｔｉｏｎとを用いてテーブルを検索することにより、隣接画素との輝度値の最大値をＲＧＢの色成分ごとに求める。隣接画素との輝度値の最大値が求まると、この値をラベリングのしきい値（ｄｅｌａｔ＿ｒ，ｄｅｌｔａ＿ｇ，ｄｅｌｔａ＿ｂ）とする。
【０１０７】
なお、上述した実施例では、Ｒ、Ｇ、Ｂの各成分について、同一の解像度ｒｅｓｏｌｕｔｉｏｎを用いてテーブルを検索することにより、ラベリングのしきい値（ｄｅｌａｔ＿ｒ，ｄｅｌｔａ＿ｇ，ｄｅｌｔａ＿ｂ）を求める場合について説明したが、Ｒ、Ｇ、Ｂの各成分の解像度（ｍｅａｎ＿ｒｅｓｏｌ＿ｒ，ｍｅａｎ＿ｒｅｓｏｌ＿ｇ，ｍｅａｎ＿ｒｅｓｏｌ＿ｂ）を個別に用いて、Ｒテーブル、Ｇテーブル、Ｂテーブルをそれぞれ検索することにより、ラベリングのしきい値（ｄｅｌａｔ＿ｒ，ｄｅｌｔａ＿ｇ，ｄｅｌｔａ＿ｂ）を求めるようにしてもよい。
【０１０８】
次に、注目画素の周囲の８画素を走査して、その注目画素の周囲に既にラベル付けされた周囲画素があり、その周囲画素のＲＧＢ輝度値（Ｒｓ，Ｇｓ，Ｂｓ）が、
｜Ｒ−Ｒｓ｜＜＝ｄｅｌｔａ＿ｒ
かつ
｜Ｇ−Ｇｓ｜＜＝ｄｅｌｔａ＿ｇ
かつ
｜Ｂ−Ｂｓ｜＜＝ｄｅｌｔａ＿ｂ
の条件を満たす場合に、注目画素の色はその周囲画素の色と近いと判断する。
【０１０９】
周囲画素の色が注目画素の色と近い判断されると、周囲画素のラベルをカレントラベル（ｒｅｇｉｏｎ）として保存し、注目画素のラベルとしてｒｅｇｉｏｎを与える。また、ラベル領域の平均色（Ｒｍ，Ｇｍ，Ｂｍ）として、周囲のラベル領域の平均色に注目画素の色を加味した新たな平均色を求める。
【０１１０】
それ以外の場合は、カレントラベルとして、今まで付けたラベル値＋１のラベル値を設定し、注目画素のラベルにもその値を付与する。この場合には、ラベル領域の平均色（Ｒｍ，Ｇｍ，Ｂｍ）として、注目画素のＲＧＢ値を設定する。
【０１１１】
どちらの場合でも、注目画素の座標値を処理対象座標配列に保存する。
次に、注目画素の周りに同色領域を拡張する処理を行う。処理対象座標配列の中から、先頭の座標値を取り出し、その座標値の画素を注目画素とする。注目画素のＲＧＢ輝度値からテーブルを検索し、ＲＧＢ各色成分の隣接画素との輝度値の差を推定しきい値（ｄｅｌｔａ＿ｒ，ｄｅｌｔａ＿ｇ，ｄｅｌｔａ＿ｂ）とする。
【０１１２】
注目画素の周囲の８画素を走査して、周囲画素が未処理の場合、その周囲画素のＲＧＢ輝度値（Ｒｉ，Ｇｉ，Ｂｉ）を求め、注目画素のＲＧＢ輝度値（Ｒｃ，Ｇｃ，Ｂｃ）及びラベル領域の平均色（Ｒｍ，Ｇｍ，Ｂｍ）との輝度差をＲＧＢ各成分ごとに求める。
【０１１３】
図９は、本発明の一実施例に係わる注目画素の周囲の８画素を示す図である。
図９において、注目画素Ｃの周囲画素は８個あるので、隣接画素との輝度値の差を求める場合、この８画素の走査を行う。
【０１１４】
そして、周囲画素のＲＧＢ輝度値（Ｒｉ，Ｇｉ，Ｂｉ）と注目画素のＲＧＢ輝度値（Ｒｃ，Ｇｃ，Ｂｃ）との関係が、
｜Ｒｉ−Ｒｃ｜＜＝ｄｅｌｔａ＿ｒ
かつ
｜Ｇｉ−Ｇｃ｜＜＝ｄｅｌｔａ＿ｇ
かつ
｜Ｂｉ−Ｂｃ｜＜＝ｄｅｌｔａ＿ｂ
の条件を満たし、かつ、ラベル領域の平均色（Ｒｍ，Ｇｍ，Ｂｍ）と周囲画素のＲＧＢ輝度値（Ｒｉ，Ｇｉ，Ｂｉ）との色差の距離値が、
｜Ｒｉ−Ｒｍ｜＋｜Ｇｉ−Ｇｍ｜＋｜Ｂｉ−Ｂｍ｜＜ＴＨ＿ｄｉｓｔ
の条件を満たす場合、注目画素と同一ラベルを周囲画素に付し、周囲画素の座標を処理対象座標配列に追加する。今処理した注目画素は、処理対象座標配列から削除する。処理座標のｘ，ｙの最大値、最小値を求め、その値をこのラベル領域の外接矩形として保存する。また、このラベル領域の平均色を外接矩形の属性として保存する。
【０１１５】
ここで、ラベル画像の平均色と周囲画素との色差を判定するしきい値として、ＴＨ＿ｄｉｓｔを用いる。これは、ラベル画像の平均色と周囲画素との色差を判定するしきい値として、テーブルに登録されているしきい値を用いると、テーブルに登録されているしきい値は隣接画素との輝度差の最大値であるため、同色画素の欠落を防止するのにはよいが、文字と背景との境界がぼんやりしていて、文字と背景との色差があまりない場合には、背景が文字領域に取り込まれ、文字の境界をはっきりと検出できなくなるからである。
【０１１６】
一方、ＴＨ＿ｄｉｓｔは、色がほぼ同一とみなせる局所領域での色の実際の散らばり具合の平均に基づいて設定されているので、実際の画像の均一色の範囲を精度よく検出することが可能となり、文字と背景との境界がぼんやりしている場合においても、文字を表す色からずれてくる背景の色を区別することが可能となる。
【０１１７】
以上の処理を処理対象座標配列の内容がなくなるまで続ける。
ラベリングの結果、同一色で連結している領域には同じラベル値が付与され、同じラベルを持つ領域を囲む外接矩形が獲得される。なお、ラベリング処理の出力情報には、以下の内容が含まれる。
【０１１８】
・ラベル画像：４バイト／１画素
・外接矩形
矩形数：ｍａｘｃｏｕｎｔ
矩形情報：ｌｂｔｂｌ
内包するラベル画像のラベル番号：ｌａｂｅｌ
矩形左上座標：（ｘｍｉｎ，ｙｍｉｎ）
矩形右下座標：（ｘｍａｘ，ｙｍａｘ）
矩形内の代表色：（ｒ，ｇ，ｂ）
所属するグループ番号：ｓｔｒｉｎｇ＿ｌａｂｅｌ
輪郭長：ｃｏｎｔｏｕｒ
次に、Ｌ字形、コ字形パターン削除処理を行う（ステップＳ６）。
【０１１９】
このＬ字形、コ字形パターン削除処理では、文字パターンの近くに存在し、かつ、その文字パターンと同色のＬ字形、コ字形のパターンを削除する。
これは、文字パターンの周囲に背景パターンがあると、背景パターンの一部がＬ字形またはコ字形のパターンとして抽出されやすく、重なり矩形統合処理でＬ字形またはコ字形のパターンが文字パターンと統合されるためである。このような統合が行われると、以降の処理でこれらのパターンは分離されることがなく、統合されたままの状態で処理が行われるため、文字らしさの形状の特性を失い、処理途中で削除されるか、文字以外のノイズパターンがのったまま文字として抽出される。従って、処理の早い段階でＬ字形またはコ字形のパターンを削除し、このような不具合を防止する。
【０１２０】
図１０は、本発明の一実施例に係わるＬ字形パターンが存在する場合の重なり統合結果を示す図である。
図１０（ａ）において、「文字」というパターン４２及びＬ字形のパターン４３が抽出され、パターン４２の外接矩形４１及びパターン４３の外接矩形４４が生成されているものとする。ここで、外接矩形４１と外接矩形４４との重なり矩形統合を行うと、図１０（ｂ）に示すように、外接矩形４５が生成される。外接矩形４５が生成されると、「文字」というパターン４２及びＬ字形のパターン４３は、１つのパターンを構成するものとみなされ、「文字」というパターン４２の大きさや形状の特性が失われる。
【０１２１】
このため、Ｌ字形のパターン４３を削除することにより、外接矩形４１が外接矩形４４と統合されることを防止し、「文字」というパターン４２の大きさや形状を保ったまま、その後の処理を行うことができるようにする。
【０１２２】
具体的には、矩形内のパターンの黒画素比率（＝パターンの画素数／矩形の面積）を求める。そして、以下の条件を満たすパターンをＬ字形またはコ字形パターンとして削除する。
【０１２３】
矩形の幅が幅しきい値以上、
かつ
矩形の高さが高さしきい値以上、
かつ
黒画素比率が黒画素比率しきい値未満。
【０１２４】
ここで、例えば、幅しきい値＝１００ｄｏｔ、高さしきい値＝１００ｄｏｔ、黒画素比率しきい値＝０．４に設定する。
次に、注目矩形抽出処理を行う（ステップＳ７）。
【０１２５】
この注目矩形抽出処理では、全ての色についての外接矩形を対象にして、事前に決めた範囲内のサイズの外接矩形を注目矩形として抽出する。
具体的には、以下の条件を満たす外接矩形を注目矩形として抽出する。
【０１２６】
ｘ方向長さが２３ｄｏｔ（１００ｄｐｉ時）以上で画像の幅の１／２以下
かつ
ｙ方向長さが２３ｄｏｔ（１００ｄｐｉ時）以上で画像の高さの１／２以下。
【０１２７】
この注目矩形抽出処理により、外接矩形同士をグルーピングする際の基準となる外接矩形の大きさを限定することが可能となり、例えば、タイトル領域を抽出する場合に、タイトルとなる文字の大きさに適合した外接矩形を基準として、外接矩形同士をグルーピングすることが可能となり、ノイズや背景などのタイトルには含まれない外接矩形が基準とされて、グルーピング処理が行われることを防止することが可能となることから、不要な処理を省略して、処理速度を向上させることが可能となる。
【０１２８】
次に、注目矩形の周りの探索範囲とそこにかかる矩形抽出を行う（ステップＳ８）。
この探索範囲にかかる矩形抽出処理では、注目矩形の周囲に、あるサイズの探索範囲を設定し、その範囲にかかる矩形を抽出する。
【０１２９】
図１１は、本発明の一実施例に係わる注目矩形の周囲の探索範囲の設定方法を説明する図である。
図１１において、矩形番号１〜３０の外接矩形が抽出され、矩形番号１の外接矩形５１を注目矩形としたものとする。そして、この外接矩形５１の周りに探索範囲５２が設定されたものとすると、外接矩形５１についてのグルーピングの処理対象として、探索範囲５２にかかる矩形番号２〜２４の外接矩形のみを選択し、探索範囲５２にかからない矩形番号２５〜３０の外接矩形については、外接矩形５１のグルーピングの処理対象から除く。
【０１３０】
このように、外接矩形同士をグルーピングする際に、外接矩形の探索範囲を注目矩形の周りに限定することにより、所定の範囲内にまとまって存在している文字列のみを抽出することが可能となり、例えば、タイトル領域を抽出する場合に、タイトルには含まれないような離れた位置に存在する文字を考慮する必要がなくなることから、タイトル領域の抽出を効率的に行うことが可能となる。
【０１３１】
具体的には、探索範囲５２は、注目矩形５１の縦横の長さの内、長い方をｌｅｎとすると、ｌｅｎと１００ｄｐｉの３５ｄｏｔとの小さい方を注目矩形の周囲の探索範囲長ｒａｎｇｅ＿ｓｉｚｅとする。
【０１３２】
注目矩形の周囲ｒａｎｇｅ＿ｓｉｚｅの範囲にかかる外接矩形を高速に求めるため、以下の方法を用いる。
図１２は、本発明の一実施例に係わる注目矩形の周囲の探索範囲にかかる矩形の抽出方法を説明する図である。
【０１３３】
図１２において、矩形番号１〜４の外接矩形６１〜６４が抽出されたものとすると、ＸＹの各座標値に存在する矩形番号及び矩形数を求め、これらの矩形番号及び矩形数をＸＹの各座標値ごとに登録する。
【０１３４】
例えば、Ｘ座標値１〜４の位置には外接矩形６１〜６４が存在しないので、矩形数ｎ＝０、矩形番号＝空が登録され、Ｘ座標値５〜１３の位置には矩形番号４の外接矩形６４が存在しているので、矩形数ｎ＝１、矩形番号＝４が登録され、Ｘ座標値１４の位置には矩形番号３の外接矩形６３及び矩形番号４の外接矩形６４が存在しているので、矩形数ｎ＝２、矩形番号＝３、４が登録され、Ｘ座標値１５、１６の位置には矩形番号４の外接矩形６４が存在しているので、矩形数ｎ＝１、矩形番号＝４が登録される。以下、同様である。
【０１３５】
次に、矩形番号３の外接矩形６３を注目矩形とし、この外接矩形６３の周りに探索範囲６５が設定されたものとすると、この探索範囲６５に含まれるＸＹの各座標値を求める。そして、ＸＹの各座標値の矩形番号をＸＹそれぞれについて求め、ＸＹの両方に含まれる矩形番号を探索範囲６５にかかる外接矩形とする。例えば、探索範囲１６５のＸ座標に含まれる外接矩形の矩形番号は１〜４、探索範囲６５のＹ座標に含まれる外接矩形の矩形番号は２〜４であるので、ＸＹの両方に含まれる矩形番号は２〜４となる。この結果、探索範囲６５にかかる外接矩形として、矩形番号２〜４に対応する外接矩形６２〜６４が得られる。
【０１３６】
具体的には、以下のａ）〜ｄ）の処理を行う。
ａ）画像全体のＸ，Ｙ軸へ矩形番号を投影する。すなわち、画像全体のＸ，Ｙ軸の１画素毎に、それに属する矩形数と矩形番号の集合を登録する。例えば、矩形番号ｉがＸ軸の（ｘ１，ｘ２）の範囲にあるとすれば、Ｘ軸のｘ１からｘ２の座標には、番号ｉが矩形番号の集合に入ることになる。同じことを全矩形について縦横座標について行う。
【０１３７】
ｂ）注目矩形の周囲にｒａｎｇｅ＿ｓｉｚｅの範囲を設定する。
ｃ）ｒａｎｇｅ＿ｓｉｚｅの範囲のＸ軸の座標毎の矩形種類を論理ＯＲして矩形番号の集合を抽出する。
【０１３８】
同様にＹ軸でも抽出する。
ｄ）Ｘ軸から求めた矩形番号の集合とＹ軸から求めた矩形番号の集合とを論理ＡＮＤし、この注目矩形の周囲にある矩形集合を決定する。
【０１３９】
なお、図１２の矩形番号の格納方法では、画像全体に存在する全ての矩形番号を格納する容量が各座標値ごとに必要となり、記憶容量が大きくなる。
そこで、上述した座標毎の矩形数及び矩形番号を高速に、かつ必要メモリを最小に求めるために、以下のような方式をとる。
【０１４０】
図１３は、本発明の一実施例に係わる注目矩形の周囲の探索範囲にかかる矩形情報の格納方法を説明する図である。
図１３（ａ）において、矩形番号１、２の外接矩形７１、７２が抽出されたものとし、外接矩形７１はＸ座標が１５５〜１６５の範囲内にあり、外接矩形７２はＸ座標が１６０〜１６３の範囲内にあるものとする。このため、図１３（ｂ）に示すように、外接矩形７１については、Ｘ座標が１５５〜１６５の位置に矩形番号１が登録され、外接矩形７２については、Ｘ座標が１６０〜１６３の位置に矩形番号２が登録される。
【０１４１】
次に、図１３（ｃ）に示すように、抽出された矩形番号１、２を、Ｘ座標１５５〜１６５の順序で矩形番号１、２順に並べ換え、Ｘ座標値が同じ値を示す矩形番号が幾つあるかを数えることにより、各座標値の矩形数を求めることができる。
【０１４２】
具体的には、以下のｉ）〜ｖ）の処理を行う。
ｉ）全ての矩形の横幅を合計して、その長さの数だけ矩形番号、座標の情報を持ったデータ構造を用意する。
【０１４３】
ｉｉ）矩形の座標と矩形番号を用意されたデータ構造のデータにセットする。
ｉｉｉ）このデータ構造のデータを座標値でソートする。
ｉｖ）データの座標値を順に見ていき、座標値が同じものの数を座標値毎に数え、それをその座標に属する矩形数とする。また、その座標毎の矩形数分だけ矩形番号を入れる記録領域を確保する。ソートしたデータ構造を先頭からスキャンしていき、座標が同じ間は数をカウントしていき、座標値が変わったところで数を確定させ、それを保存する。
【０１４４】
ｖ）ソートしたデータ構造で、座標値が同じ物の矩形番号を上で確保した領域に格納する。これもソートしたデータ構造を先頭からスキャンしていき、座標が同じ間は、矩形番号を格納領域にセットする。
【０１４５】
次に、同色グループ抽出処理を行う（ステップＳ９）。
この同色グループ抽出処理は、異なるラベルが付されているパターンのうち、類似色のパターン同士を１つのグループにまとめるものである。なお、この処理を用いてタイトルを抽出する場合には、タイトルを構成する個々の文字が同じ色であることが前提となる。
【０１４６】
まず、１つの矩形の色（なお、矩形の色とは、その矩形により囲まれるパターンの色。以下同様）とその周囲にある矩形の色とが近い時に、それらの矩形を同一グループに入れることを考える。
【０１４７】
しかし、この方法では、矩形の色が徐々に変化すると、実際には同色でない矩形までも同一のグループに入れられることになる。
そこで、１つの矩形の色とその周囲にある矩形の色とを比較することに加え、その矩形が属するグループの色との比較も行い、グループに追加しようとしている矩形の色が、グループの色とそれほどかけ離れていない場合のみ、その矩形をグループに加えることとした。なお、グループの色は、例えば、そのグループに属する矩形の色の平均値とすることができる。
【０１４８】
図１４は、本発明の一実施例に係わる同色グループの生成方法を示す図である。
図１４（ａ）において、外接矩形８１〜８３が生成されているものとし、外接矩形８１〜８３内のパターンの色が徐々に変化しているものとする。また、外接矩形８１、８２内のパターンは文字であるが、外接矩形８３内のパターンは背景の一部であるものとする。
【０１４９】
外接矩形８１〜８３についてのグルーピングを行う場合、まず、外接矩形８１の周囲に探索領域８４を設定し、この探索領域８４にかかる外接矩形８２を抽出する。この外接矩形８２が抽出されると、外接矩形８１内のパターンの色と外接矩形８２内のパターンの色との間での色空間上の距離ｄｉｓｔを求める。そして、距離ｄｉｓｔが所定値以下の場合、外接矩形８１と外接矩形８２とは、図１４（ｂ）に示すように、同一のグループ８５に分類される。
【０１５０】
次に、外接矩形８２の周囲に探索領域８６を設定し、この探索領域８６にかかる外接矩形８３を抽出する。この外接矩形８３が抽出されると、外接矩形８２内のパターンの色と外接矩形８３内のパターンの色との間での色空間上の距離ｄｉｓｔを求め、距離ｄｉｓｔが所定値以下かどうかを判断する。
【０１５１】
ここで、距離ｄｉｓｔが所定値以下の場合に、外接矩形８３を外接矩形８２と同一のグループ８５に分類すると、文字のグループに背景のパターンが混在することになる。
そこで、外接矩形８１内のパターンの色と外接矩形８２内のパターンの色との平均値をグループ８５の色として求め、グループ８５の色と外接矩形８３内のパターンの色との間での色空間上の距離ｄｉｓｔ２を求める。そして、距離ｄｉｓｔ２が所定値以下の場合、外接矩形８３を外接矩形８２と同一のグループ８５に分類するようにする。
【０１５２】
ここで、外接矩形８１〜８３内のパターンの色が徐々に変化している場合、外接矩形８２内のパターンの色と外接矩形８３内のパターンの色との間での色空間上の距離ｄｉｓｔが近くても、外接矩形８１内のパターンの色と外接矩形８３内のパターンの色との間での色空間上の距離は遠くなる。
【０１５３】
この結果、距離ｄｉｓｔ２は距離ｄｉｓｔより大きくなり、外接矩形８３内のパターンの色がグループ８５の色と離れていると判断することが可能となり、外接矩形８３がグループ８５に分類されることを防止することが可能となる。
【０１５４】
具体的には、１つの注目矩形の色（Ｒｃ，Ｇｃ，Ｂｃ）とその周囲矩形の集合の中の１つの矩形ｉの色（Ｒｉ，Ｇｉ，Ｂｉ）との間でのＲＧＢ空間上の距離を以下のように定義する。
【０１５５】
ｄｉｓｔ＝｜Ｒｃ−Ｒｉ｜＋｜Ｇｃ−Ｇｉ｜＋Ｂｃ−Ｂｉ｜
また、注目矩形の色（Ｒｃ，Ｇｃ，Ｂｃ）と解像度ｒｅｓｏｌｕｔｉｏｎから求められるＲＧＢの各輝度差を、ｄｅｌｔａ＿ｒ，ｄｅｌｔａ＿ｇ，ｄｅｌｔａ＿ｂとする。
【０１５６】
また、注目矩形が属する既に抽出されているグループの色を（Ｒｇ，Ｇｇ，Ｂｇ）とする。ここで、グループの色は、そのグループに属する矩形内のパターンの色の平均色とする。なお、最初は、矩形の色はグループの色と同じである。
【０１５７】
この時、グループの色（Ｒｇ，Ｇｇ，Ｂｇ）と周囲の矩形ｉが属するグループの色（Ｒｉｇ，Ｇｉｇ，Ｂｉｇ）との色差の距離ｄｉｓｔ２を以下のように定義する。
ｄｉｓｔ２＝｜Ｒｇ−Ｒｉｇ｜＋｜Ｇｇ−Ｇｉｇ｜＋｜Ｂｇ−Ｂｉｇ｜
注目矩形（Ｒｃ，Ｇｃ，Ｂｃ）とその周囲矩形の集合の中の１つの矩形ｉ（Ｒｉ，Ｇｉ，Ｂｉ）が以下の条件を満足する時、これらの２つの矩形は、注目矩形のグループに属すると判定して、周囲矩形ｉをそのグループに格納する。また、新たにグループに加わった矩形の矩形番号を新規追加矩形領域に格納する。
【０１５８】
（ｄｉｓｔ＜ＴＨ＿ＲＧＢ
または
（｜Ｒｃ−Ｒｉ｜＜ｄｅｌｔａ＿ｒ
かつ
｜Ｇｃ−Ｇｉ｜＜ｄｅｌｔａ＿ｇ
かつ
｜Ｂｃ−Ｂｉ｜＜ｄｅｌｔａ＿ｂ））
かつ
ｄｉｓｔ２＜ｔｈｒ＿ｒｇｂ
ここで、
ｔｈｒ＿ｒｇｂ
＝（ｍｉｎ（Ｒｇから求めた輝度差、Ｒｉｇから求めた輝度差）
＋ｍｉｎ（Ｇｇから求めた輝度差，Ｇｉｇから求めた輝度差）
＋ｍｉｎ（Ｂｇから求めた輝度差，Ｂｉｇから求めた輝度差））／２
とする。また、例えば、ＴＨ＿ＲＧＢ＝２０とする。
【０１５９】
新規追加矩形領域の先頭の矩形番号を取り出し、それを新たな注目矩形として、その周囲にある矩形を計算し、上記の手順を繰り返して、グループに属する矩形を求める。この手順をグループに新たに加わる矩形が無くなるまで繰り返す。なお、抽出するグループ情報のデータ構造は以下のようになる。
【０１６０】
グループ内の矩形数：ｎｕｍ
グループを構成する矩形番号：ｃｈｉｌｄ
重なり矩形統合後の矩形数：ｏｖｅｒｌａｐ＿ｎｕｍ
重なり矩形統合後の矩形情報：ｏｖｅｒｌａｐ
（データタイプは、矩形情報１ｂｔｂｌ型）
グループ内文字列の方向コード：ｏｒｉｅｎｔ
グループ内の文字列数：ｇｙｏｕ＿ｎｕｍ
グループ内の文字列情報：ｇｙｏｕ
（データタイプは、矩形情報１ｂｔｂｌ型）
次に、グループ内平均文字線太さ抽出処理を行う（ステップＳ１１）。
【０１６１】
このグループ内平均文字線太さ抽出処理では、グループ内の外接矩形に対応するラベル画像のパターンに対して、輪郭追跡処理を行い、輪郭長を求める。すなわち、グループに属する１つの外接矩形の矩形範囲内で、その外接矩形のラベル番号に注目して、ラベル画像上で輪郭追跡処理を行う。抽出した輪郭の長さが抽出されると、輪郭の長さをその矩形の輪郭長の属性にセットする。そして、その矩形内のパターンの面積を輪郭長で割って、文字の線の平均的な太さを求め、その値を矩形の属性として矩形情報に登録する。
【０１６２】
図１５は、本発明の一実施例に係わる文字線の太さの算出方法を説明する図である。
図１５（ａ）において、例えば、「フ」というパターンが抽出されたものとすると、「フ」というパターンに含まれる画素数を数えることにより、「フ」というパターンの面積Ｓを算出する。
【０１６３】
次に、図１５（ｂ）に示すように、「フ」というパターンの輪郭を抽出し、この輪郭長Ｌを算出する。そして、「フ」というパターンの面積Ｓを輪郭長Ｌで割って、「フ」というパターンの平均的な太さＷを求める。
【０１６４】
輪郭長獲得処理として、輪郭を構成する画素の周囲の８つの画素のラベル値を時計回りの順番で調べ、そのラベル値が輪郭を構成する画素のラベル値と一致する画素を輪郭として抽出する方法がある。
【０１６５】
しかし、この手法では、文字パターンだけなら高速であるが、背景から抽出された複雑な形状のパターンについてはかなり処理時間がかかる。これは、輪郭追跡手法自体がラベル画像の輪郭の１つ外側をチェックする必要があり、ある輪郭点から次の輪郭点を探すために、既に走査した画素についても何回もチェックしにいく処理が必要となるからである。
【０１６６】
そこで、本実施例では、１つのラベル画像のエッジに注目して、ラベル画像の外接矩形の内部をラスタスキャンし、特定のラベル値以外から特定のラベル値に変化する点をカウントするようにした。このことにより、ラベル画像の外接矩形内の１回のラスタスキャンの間に、ラベル画像のパターンの輪郭長を獲得することが可能となり、輪郭長獲得処理にかかる時間を従来の方法に比べて５倍程度高速化することが可能となる。
【０１６７】
図１６は、本発明の一実施例に係わる輪郭長獲得処理を示すフローチャートである。なお、処理対象となるラベル画像のラベル値をｒｅｇｉｏｎ、そのラベル値のパターンの外接矩形の座標を（ｘｍｉｎ，ｙｍｉｎ）−（ｘｍａｘ，ｙｍａｘ）、輪郭長をｃｏｕｎｔ、ラベル画像の画素がエッジかどうかを示すフラグをｆｌａｇ（１画素前がｒｅｇｉｏｎの値の画素の場合、１に設定される）、縦方向の太さが１画素のパターンを検出するフラグをｆｉｒｓｔ＿ｆｌａｇ（横方向に１画素幅の場合、１に設定される）とする。
【０１６８】
図１６において、まず、初期設定を行い（ステップＳ３１〜Ｓ３４）、ｃｏｕｎｔ＝０、ｙ＝ｙｍｉｎ、ｆｌａｇ＝０、ｆｉｒｓｔ＿ｆｌａｇ＝０、ｘ＝ｘｍｉｎとする。
次に、ｆｌａｇ＞０かどうかを判断し（ステップＳ３５）、ｆｌａｇ＞０でない場合、カレント画素のラベル値がｒｅｇｉｏｎかどうかを判断する（ステップＳ４６）。ここで、カレント画素のラベル値がｒｅｇｉｏｎでない場合、ｘ＜ｘｍａｘかどうかを判断し（ステップＳ４８）、ｘ＜ｘｍａｘである場合、ｘをインクリメントして、ステップＳ３５に戻る。
【０１６９】
一方、ステップＳ４６において、カレント画素のラベル値がｒｅｇｉｏｎである場合、そのカレント画素は輪郭を構成するので、ｃｏｕｎｔをインクリメントするとともに、ｆｌａｇ＝１、ｆｉｒｓｔ＿ｆｌａｇ＝１に設定して、ステップＳ４８に進む（ステップＳ４７）。
【０１７０】
一方、ステップＳ３５において、ｆｌａｇ＞０である場合、カレント画素（ｘ、ｙ）のラベル値がｒｅｇｉｏｎかどうかを判断し（ステップＳ３６）、カレント画素のラベル値がｒｅｇｉｏｎである場合、ｙがｙｍｉｎまたはｙｍａｘかどうかを判断する（ステップＳ３７）。ここで、ｙがｙｍｉｎまたはｙｍａｘである場合、ｃｏｕｎｔをインクリメントする（ステップＳ３９）。
【０１７１】
また、ステップＳ３７において、ｙがｙｍｉｎでも、ｙｍａｘでもない場合、カレント画素の上か下の画素のラベル値がｒｅｇｉｏｎかどうかを判断し（ステップＳ３８）、カレント画素の上か下の画素のラベル値がｒｅｇｉｏｎでない場合にのみ、ｃｏｕｎｔをインクリメントする（ステップＳ３９）。
【０１７２】
一方、ステップＳ３６において、カレント画素のラベル値がｒｅｇｉｏｎでない場合、ｙがｙｍｉｎまたはｙｍａｘかどうかを判断し（ステップＳ４０）、ｙがｙｍｉｎまたはｙｍａｘである場合、ｆｌａｇ＝０とする（ステップＳ４４）。
【０１７３】
一方、ステップＳ４０において、ｙがｙｍｉｎでも、ｙｍａｘでもない場合、カレント画素の左の画素の上の画素及び下の画素のラベル値がｒｅｇｉｏｎであり（ステップＳ４１）、かつ、ｆｉｒｓｔ＿ｆｌａｇが０である場合にのみ（ステップＳ４２）、ｃｏｕｎｔをインクリメントし（ステップＳ４３）、それ以外の場合はステップＳ４４に進む。
【０１７４】
次に、ｆｉｒｓｔ＿ｆｌａｇ＝０に設定し（ステップＳ４５）、以上の処理をｘがｘｍａｘに達するまで、ｘを１ずつインクリメントさせながら繰り返す。
そして、ｘがｘｍａｘに達すると、ｆｌａｇ＞０かどうかを判断し（ステップＳ５０）、ｆｌａｇ＞０でない場合、ｙ＜ｙｍａｘかどうかを判断する（ステップＳ５５）。ここで、ｙ＜ｙｍａｘである場合、ｙをインクリメントして、ステップＳ３３に戻る。
【０１７５】
一方、ステップＳ５０において、ｆｌａｇ＞０である場合、ｙがｙｍｉｎまたはｙｍａｘかどうかを判断し（ステップＳ５１）、ｙがｙｍｉｎまたはｙｍａｘである場合、ステップＳ５５に進む。
【０１７６】
一方、ステップＳ５１において、ｙがｙｍｉｎでも、ｙｍａｘでもない場合、カレント画素の左の画素の上の画素及び下の画素のラベル値がｒｅｇｉｏｎであり（ステップＳ５２）、かつ、ｆｉｒｓｔ＿ｆｌａｇが０である場合にのみ（ステップＳ５３）、ｃｏｕｎｔをインクリメントし（ステップＳ５４）、それ以外の場合はステップＳ５５に進む。
【０１７７】
以上の処理をｙがｙｍａｘに達するまで、ｙを１ずつインクリメントさせながら繰り返し、ｙがｙｍａｘに達すると、ｃｏｕｎｔをラベル値がｒｅｇｉｏｎのラベル画像の輪郭長として出力する。
【０１７８】
なお、上述した実施例では、外接矩形内を横方向（ｘ方向）にラスタスキャンすることにより、輪郭長を求める場合について説明したが、外接矩形内を縦方向（ｙ方向）にラスタスキャンして、輪郭長を求めるようにしてもよい。
【０１７９】
図１７は、本発明の一実施例に係わる輪郭長獲得方法を説明するためのパターンの具体例を示す図である。
図１７において、同一のラベル値を有するラベル画像８８（斜線部分）が抽出され、そのラベル画像８８の外接矩形８７が生成されているものとする。この外接矩形の座標が（ｘｍｉｎ，ｙｍｉｎ）−（ｘｍａｘ，ｙｍａｘ）で表されているものとすると、この外接矩形の範囲内を（ｘｍｉｎ，ｙｍｉｎ）の座標に位置する画素から１ラインずつｘ方向にスキャンする。
【０１８０】
ここで、図１６のステップＳ４６からステップＳ４７に進む過程でＡの画素がカウントされ、ステップＳ３７からステップＳ３９に進む過程でＢの画素がカウントされ、ステップＳ３８からステップＳ３９に進む過程でＣの画素がカウントされ、ステップＳ４２からステップＳ４３に進む過程でＤの画素がカウントされ、ステップＳ５３からステップＳ５４に進む過程でＥの画素がカウントされる。この結果、外接矩形８７の範囲内を１回だけスキャンすることにより、ラベル画像８８の輪郭を求めることが可能となり、輪郭長獲得処理の高速化を図ることが可能となる。
【０１８１】
次に、文字線太さによる再グループ化処理を行う（ステップＳ１１）。
この再グループ化処理では、グループ内の外接矩形を対象に、外接矩形の平均文字線太さを用いてグループ化を行い、新たなグループ情報を構築する。すなわち、グループ内の外接矩形を対象にして、図４のステップＳ７〜Ｓ９の処理を繰り返す。ここで、ステップＳ９のグループ化の時に、ステップＳ９で使用した色情報だけでなく、推定文字線太さ（＝２０×矩形内のパターン面積／パターンの輪郭長）も使用する。
【０１８２】
図１８は、本発明の一実施例に係わる文字線の太さによる再グルーピング処理を説明する図である。
図１８において、「グループ１」という文字列と「グループ２」という文字列が同一色で記述され、互いに近接して配置されているため、「グループ１」という文字列と「グループ２」という文字列が同一のグループ９１にグルーピングされているものとする。
【０１８３】
ここで、「グループ１」という文字列に含まれる文字の太さと「グループ２」という文字列に含まれる文字の太さを算出し、異なる太さの文字を別々のグループに分割する。この結果、「グループ１」という文字列はグループ９２にグルーピングされ、「グループ２」という文字列はグループ９３にグルーピングされる。
【０１８４】
この処理により、文字パターンの近くにその文字パターンの色と同一の背景パターンがあり、これらの背景パターンと文字パターンが同じグループに属していたものを、別々のグループにしたり、文字パターンだけからなるグループでも、フォントやサイズが異なるものを別々のグループにしたりすることができる。
【０１８５】
具体的には、２つの外接矩形のうち、第１の外接矩形の推定文字線太さｔｈｉｃｋ１及び第２の外接矩形の推定文字線太さｔｈｉｃｋ２から、文字線太さの比ｔｈｉｃｋ＿ｒａｔｅを以下のように求める。
【０１８６】
ｔｈｉｃｋ＿ｒａｔｅ＝ｍａｘ（ｔｈｉｃｋ１，ｔｈｉｃｋ２）
／ｍｉｎ（ｔｈｉｃｋ１，ｔｈｉｃｋ２）
そして、以下の条件を満足した時に、２つの外接矩形を同じグループとして記録する。
【０１８７】
ｔｈｉｃｋ＿ｒａｔｅ＜ＴＨ＿ＴＨＩＣＫ＿ＲＡＴＥ
かつ
（ｄｉｓｔ＜ＴＨ＿ＲＧＢ
または
（｜Ｒｃ−Ｒｉ｜＜ｄｅｌｔａ＿ｒ
かつ
｜Ｇｃ−Ｇｉ｜＜ｄｅｌｔａ＿ｇ
かつ
｜Ｂｃ−Ｂｉ｜＜ｄｅｌｔａ＿ｂ））
ただし、ＴＨ＿ＴＨＩＣＫ＿ＲＡＴＥは、例えば、２．５とする。
【０１８８】
この処理を元のグループ内全ての外接矩形について行い、グループ内の新たなグルーピングを行う。この際、１つのグループの中に１つの矩形しか属していないグループは、タイトルを構成しないものとして削除される。
【０１８９】
また、文字線太さによる再グルーピングの他の例として、グループ内の文字線太さの頻度分布を作成し、その文字線太さをクラスタリングすることにより、文字線太さのクラスタを複数個生成する方法でもよい。複数のクラスタを生成する方法として、文字線太さの頻度分布の谷で複数のクラスタに分割する方法や、階層的クラスタリングを適用する方法などを用いることができる。
【０１９０】
具体的には、２つの外接矩形のうち、第１の外接矩形の推定文字線太さをｔｈｉｃｋ１、第２の外接矩形の推定文字線太さをｔｈｉｃｋ２とすると、以下の条件を満足した時にこれらの２つの外接矩形を同じグループとする。
【０１９１】
ｔｈｉｃｋ１とｔｈｉｃｋ２とが同一の文字線太さのクラスタに所属し、
かつ
（ｄｉｓｔ ＜ ＴＨ＿ＲＧＢ
または
（｜Ｒｃ−Ｒｉ｜＜ｄｅｌｔａ＿ｒ
かつ
｜Ｇｃ−Ｇｉ｜＜ｄｅｌｔａ＿ｇ
かつ
｜Ｂｃ−Ｂｉ｜＜ｄｅｌｔａ＿ｂ））
この処理を元のグループ内全ての矩形について行い、グループ内の新たなグルーピングを行う。
【０１９２】
次に、グループ内の大きな矩形削除処理を行う（ステップＳ１２）。
このグループ内の大きな矩形削除処理では、グループ内で平均的な矩形サイズを求め、そのサイズを基準に極端に大きなサイズの矩形を背景などのノイズとして削除する。
【０１９３】
図１９は、本発明の一実施例に係わるグループ内の大きな矩形削除処理を説明する図である。
図１９（ａ）において、外接矩形１０２〜１１１がグループ１０１にグルーピングされているものとすると、グループ１０１内の各外接矩形１０２〜１１１の大きさを求める。ここで、外接矩形１０２の大きさが他の外接矩形１０３〜１１１の大きさに比べ、かけ離れているものとすると、図１９（ｂ）に示すように、グループ１０１から外接矩形１０２を削除し、外接矩形１０３〜１１１よりなるグループ１１２を生成する。
【０１９４】
具体的には、以下のａ）〜ｄ）の処理を行う。
ａ）グループ内の外接矩形の高さのヒストグラムを作成して、最大頻度値を示す矩形高さｆｒｅｑ＿ｈｅｉｇｈｔを以下の方法で求める。
【０１９５】
ｉ）ヒストグラムにぼかし用のウィンドウを用いてコンボリューション演算（移動和）を行い、ヒストグラムをぼかす。具体的なぼかし用ウィンドウは、例えば、「１１１１１」の５画素からなる。
【０１９６】
ｉｉ）最小高さ値（具体的には、１００ｄｐｉで２３ｄｏｔ）を予め決めておき、その最小高さ値以上で最大頻度を示す矩形高さｆｒｅｑ＿ｈｅｉｇｈｔを求める。
ｂ）最大頻度値を示す矩形高さｆｒｅｑ＿ｈｅｉｇｈｔが最小高さ値（具体的には、１００ｄｐｉで２３ｄｏｔ）より小さい時は、最小高さ値を最大頻度値を示す矩形高さｆｒｅｑ＿ｈｅｉｇｈｔとする。
【０１９７】
ｃ）大きな矩形と判定するしきい値ｔｈ＿ｌａｒｇｅを、例えば、ｔｈ＿ｌａｒｇｅ＝ｆｒｅｑ＿ｈｅｉｇｈｔ＊１０とする。
ｄ）グループ内の外接矩形で縦横サイズとも、ｔｈ＿ｌａｒｇｅより小さいものだけを残して、後はノイズとしてそのグループから削除する。
【０１９８】
次に、グループ内の重なり矩形統合処理を行う（ステップＳ１３）。
このグループ内の重なり矩形統合処理では、グループ内の外接矩形の中で重なりがある外接矩形について、それらの外接矩形を囲む矩形を新たに作り、グループ情報に新たに登録する。
【０１９９】
すなわち、グループ内の外接矩形のうち、一部でも重なりがある外接矩形同士を統合して、それらを囲む外接矩形にする。
図２０は、本発明の一実施例に係わるグループ内の重なり矩形統合処理を説明する図である。
【０２００】
図２０（ａ）において、外接矩形１３１は外接矩形１３２と重なっており、外接矩形１３２は外接矩形１３３と部分的に重なっている。この場合、外接矩形１３１〜１３３を統合し、外接矩形１３４を生成する。
【０２０１】
この処理により、例えば、「画」や「関」などのように、１つの文字が互いに分離した複数のストロークからなる場合に、これらの複数のストロークからなる１つの文字を一体的に取り扱うことができ、その後の処理を効率的に行うことが可能となる。
【０２０２】
また、重なり矩形統合処理を同一グループに属するパターンの中で行うことにより、文字領域に背景ノイズが混在している場合においても、文字と背景ノイズとが統合されることを防止でき、文字の抽出精度を向上させることが可能となる。
【０２０３】
次に、グループ内文字列抽出処理を行う（ステップＳ１４）。
このグループ内文字列抽出処理では、グループ内で文字列方向を推定し、その方向に対して、文字列を抽出する。抽出した文字列の方向及び座標などの情報はグループごとに保存する。なお、この処理をタイトルの抽出に用いる場合には、１つのタイトルを構成する個々の文字は、横方向または縦方向に一列に並んでいることが前提になる。
【０２０４】
図２１は、本発明の一実施例に係わるグループ内文字列抽出処理を説明する図である。
図２１（ａ）において、矩形番号１〜２９の外接矩形がグループ１４１にグルーピングされているものとすると、最も左にある矩形番号１の外接矩形から、右方向に矩形番号１の外接矩形と隣接する外接矩形があるかどうかを探す。そして、矩形番号１の外接矩形と隣接する外接矩形として、矩形番号２の外接矩形が見つかると、見つかった外接矩形に矩形番号１を伝番し、見つかった外接矩形の矩形番号２を矩形番号１に変更する。同様にして、右方向に隣接する外接矩形があるかどうかを探し、隣接する外接矩形が見つかると、左に隣接する外接矩形の矩形番号を右の外接矩形に伝番する。
【０２０５】
矩形番号１の外接矩形から右方向に隣接する外接矩形がなくなると、矩形番号１５の外接矩形から、右方向に矩形番号１５の外接矩形と隣接する外接矩形があるかどうかを探す。矩形番号１５の外接矩形と隣接する外接矩形が見つかると、見つかった外接矩形に矩形番号１５を伝番する。
【０２０６】
以上の処理により、図２１（ｂ）に示すように、矩形番号１の外接矩形に右方向に隣接する外接矩形に矩形番号１が付され、矩形番号１５の外接矩形に右方向に隣接する外接矩形に矩形番号１５が付される。矩形番号の伝番処理が終了すると、同一の矩形番号１が付された外接矩形を囲む外接矩形１４２を生成し、同一の矩形番号１５が付された外接矩形を囲む外接矩形１４３を生成する。
【０２０７】
具体的には、以下のａ）〜ｅ）の処理を行う。
ａ）グループ内の外接矩形の座標から文字列方向を推定する。
ｂ）外接矩形の上下左右の最も近くにある矩形の内向き、外向きの両方向の隣接関係を求める。
【０２０８】
ｃ）横方向の文字列の場合、左からの隣接関係のない矩形を開始矩形として、右に矩形がなくなるまで、開始矩形番号を右にある矩形に伝搬していく。縦方向も同様である。
ｄ）左からの隣接関係がなく、左への隣接関係がある矩形は、左の矩形番号を獲得して、それを右へ伝搬し、隣接関係がなくなるまで繰り返す。
【０２０９】
ｅ）ここまでの処理をグループ内全ての矩形について行った後に、同じ矩形番号が付いている矩形を求め、同じ矩形番号が付いている矩形の外接矩形を文字列矩形として抽出する。
【０２１０】
次に、文字列内分離文字統合処理を行う（ステップＳ１５）。
この文字列内分離文字統合処理では、横書きの上下分離文字統合処理（縦書きでは、左右分離文字統合処理）を文字列矩形に適応して、分離矩形を統合した外接矩形に置き換える。ここでは、抽出された文字列内の矩形に対して文字列方向と直角の方向に矩形統合を行う。これは横書きの文字列ならば、例えば「こ」という文字の上ストロークと下ストロークをそれぞれ囲む矩形をまとめて、１つの矩形とする処理である。また、縦書きの文字列ならば、例えば「い」という文字の右ストロークと左ストロークをそれぞれ囲む矩形をまとめて、１つの矩形とする処理である。
【０２１１】
図２２は、本発明の一実施例に係わる文字列内分離文字統合処理を説明する図である。
図２２（ａ）において、グループ１４１内で互いに横方向に隣接する外接矩形を囲む外接矩形１４２、１４３が生成され、外接矩形１４２内には、縦方向に互いに隣接する外接矩形１４４、１４５及び縦方向に互いに隣接する外接矩形１４６、１４７が存在し、外接矩形１４３内には、縦方向に互いに隣接する外接矩形１４８、１４９及び縦方向に互いに隣接する外接矩形１５０、１５１が存在しているものとする。
【０２１２】
この場合、図２２（ｂ）に示すように、外接矩形１４４、１４５を囲む外接矩形１５２を生成して、外接矩形１４４、１４５を統合し、外接矩形１４６、１４７を囲む外接矩形１５３を生成して、外接矩形１４６、１４７を統合し、外接矩形１４８、１４９を囲む外接矩形１５４を生成して、外接矩形１４８、１４９を統合し、外接矩形１５０、１５１を囲む外接矩形１５５を生成して、外接矩形１５０、１５１を統合する。
【０２１３】
具体的には、以下のａ）〜ｃ）の処理を行う。なお、以下の例では、横文字列の場合について説明するが、縦文字列の場合についても同様である。
ａ）文字列内矩形をｘ座標で昇順にソートする。
【０２１４】
ｂ）最初の矩形をカレント矩形として、それ以降の次の矩形がカレント矩形のｘ座標の範囲に重なる場合は統合し、カレント矩形のｘ座標の範囲も統合結果のものに変更する。この処理を統合する矩形がなくなるまで繰り返す。統合する矩形がなくなったら、分離統合後の矩形として保存する。
【０２１５】
ｃ）統合する矩形が無くなったら、次の矩形を新たなカレント矩形として、ｂ）及びｃ）の処理を繰り返す。
次に、グループ内の文字列サイズによる再グループ化を行う（ステップＳ１６）。
【０２１６】
グループ内の文字列サイズによる再グループ化処理では、グループ内の文字列情報から文字列方向に直角のサイズに注目して、その大きさで再グループ化を行い、その結果を新たなグループ情報に格納する。
【０２１７】
このことにより、同色グループ内で、文字サイズが異なる文字列を別グループにすることができ、同時にノイズと文字列の別グループ化も可能となる。
なお、この処理をタイトルの抽出に用いる場合には、１つのタイトルを構成する個々の文字の大きさが揃っていることが前提になる。
【０２１８】
図２３は、本発明の一実施例に係わるグループ内の文字列サイズによる再グループ化処理を説明する図である。
図２３（ａ）において、グループ１４１内で互いに横方向に隣接する外接矩形を囲む外接矩形１４２、１４３が生成されているものとすると、外接矩形１４２の高さＨ１及び外接矩形１４３の高さＨ２を算出する。そして、外接矩形１４２の高さＨ１と外接矩形１４３の高さＨ２の差がしきい値より大きい場合は、外接矩形１４２と外接矩形１４３とを別々のグループにする。
【０２１９】
具体的には、以下の条件を満たす時に、これらの２つの文字列矩形は、同じグループに属するものとして、同じグループ番号を与える。
２つの文字列矩形の高さ（横書きの場合。縦書きなら幅）の差がしきい値より小さい、
かつ、
（２つの文字列矩形が重複する、または、２つの文字列矩形間の距離がしきい値より小さい）
この処理を全てのグループで行う。
【０２２０】
次に、グループ内で同じグループ番号の文字列を１つのグループとする新たなグループを作成する。
この処理は、図３のステップＳ９で同じグループになった文字サイズの異なる文字列を、別々のグループにする働きがある。
【０２２１】
次に、グループ内の大きな矩形削除処理を行う（ステップＳ１７）。
このグループ内の大きな矩形削除処理では、ノイズ除去のため、グループ内で平均的な矩形サイズを求め、その矩形サイズを基準として極端に大きなサイズの矩形を再び削除する。すなわち、これまでの処理で変化したグループに対して、図４のステップＳ１２の処理を再度行い、グループ内のノイズを削除する。
【０２２２】
次に、グループ統合処理を行う（ステップＳ１８）。
このグループ統合処理では、左右方向または上下方向に互いに近接する同色グループを統合する。すなわち、２つのグループがほぼ同じ色で、かつ近くにあり、グループの外接矩形が並んでいる場合に、その２つの外接矩形を統合し、１つのグループとする。これは、後で行う文字矩形の並びによるグループの文字列らしさの判定を安定化させるために行う。
【０２２３】
図２４は、本発明の一実施例に係わるグループ統合処理を説明する図である。
図２４（ａ）において、グループ１の外接矩形１６１とグループ２の外接矩形１６２が互いに横に並んでいるものとすると、外接矩形１６１と外接矩形１６２の距離Ｌ１及び外接矩形１６１と外接矩形１６２の下端同士の座標の差Ｅ１を求める。そして、外接矩形１６１と外接矩形１６２の距離Ｌ１及び外接矩形１６１と外接矩形１６２の下端同士の座標の差Ｅ１が各しきい値より小さく、グループ１の代表色とグループ２の代表色の差が所定のしきい値以内にある場合、外接矩形１６１と外接矩形１６２とを統合し、外接矩形１６１及び外接矩形１６２を囲む外接矩形１６３を生成する。
【０２２４】
具体的には、２つのグループの外接矩形において、色及び下端の座標が近く、かつ、近い距離にあり、２つをまとめて１つの文字列とみれそうなものを１つのグループにまとめる。ここで、２つのグループの平均色をそれぞれ（Ｒｇ１，Ｇｇ１，Ｂｇ１）と（Ｒｇ２，Ｇｇ２，Ｂｇ２）とすると、２つのグループのそれぞれのＲＧＢ値の平均値（Ｒｇ１＋Ｒｇ２，Ｇｇ１＋Ｇｇ２，Ｂｇ１＋Ｂｇ２）を求める。そして、そのＲＧＢ値の平均値と解像度をキー情報としてテーブルを検索し、テーブルから得られたＲＧＢそれぞれの輝度差（ｄｅｌｔａ＿ｒ，ｄｅｌｔａ＿ｇ，ｄｅｌｔａ＿ｂ）を同色とみなす場合の輝度差のしきい値とする。この時、統合の条件は、以下の通りである。
【０２２５】
｜Ｒｇ１−Ｒｇ２｜＜ｄｅｌｔａ＿ｒ
かつ
｜Ｇｇ１−Ｇｇ２｜＜ｄｅｌｔａ＿ｇ
かつ
｜Ｂｇ１−Ｂｇ２｜＜ｄｅｌｔａ＿ｂ
かつ
横並びの場合、横方向の距離が固定しきい値より小さい
（ただし、縦並びの場合は、縦方向の距離が固定しきい値より小さい）
かつ
横並びの場合、２つのグループの外接矩形の下端座標の差が固定しきい値より小さい（ただし、縦並びの場合は、左端と右端同士の差が両方とも固定しきい値よりも小さい）
この処理を統合するグループがなくなるまで繰り返す。
【０２２６】
なお、横並びの場合に、下端の座標の差のみを考慮し、上端の座標の差を考慮しないのは、タイトルがアルファベットで書かれている場合などで、そのタイトルに大文字と小文字が混在していると、下端の座標は揃っているが、上端の座標はその差が大きい場合があり、大文字と小文字とを１つのグループに統合できなくなる場合があるからである。例えば、「Ｗｉｎｄｏｗｓ」という文字列がタイトルにあり、「Ｗｉｎｄ」の部分と「ｏｗｓ」の部分とが別々のグループとして抽出された場合に、上端の座標の差まで考慮すると、「Ｗｉｎｄ」の部分と「ｏｗｓ」の部分とを１つのグループに統合できなくなるからである。
【０２２７】
次に、矩形並びによる文字らしいグループの抽出処理を行う（ステップＳ１９）。
この矩形並びによる文字らしいグループの抽出処理では、グループ内の矩形の中で、サイズまたは形など一定の条件を満足する矩形を対象に、上端座標または下端座標のどちらかが隣りの矩形と近い場合、この両者の矩形が並んでいると判定し、並びフラグをセットする。そして、その一定条件を満足するグループ内の対象矩形の中で、並んでいる矩形の数がどの程度の割合であるかを示す並び矩形率を求め、その並び矩形率が一定のしきい値以上のグループを文字列と見なして抽出する。
【０２２８】
図２５は、本発明の一実施例に係わる矩形並びによる文字列らしいグループの抽出処理を説明する図である。
図２５（ａ）において、外接矩形１７１〜１７４及び外接矩形１７６〜１８７が入力画像から生成され、外接矩形のグルーピングにより、外接矩形１７１〜１７４が１つのグループとされた結果、これらの外接矩形１７１〜１７４を囲む外接矩形１７５が生成されている。また、外接矩形のグルーピングにより、外接矩形１７６〜１８７が１つのグループとされた結果、これらの外接矩形１７６〜１８７を囲む外接矩形１８８が生成されている。
【０２２９】
次に、各グループ内の外接矩形のサイズや位置関係を調べ、横方向に並んでいる外接矩形に対して横並びフラグ１を与え、縦方向に並んでいる外接矩形に対して縦並びフラグ２を与える。この結果、外接矩形１７５内の外接矩形１７１〜１７４はランダムに並んでいるので、外接矩形１７１〜１７４には、横並びフラグ１も縦並びフラグ２も付かない。一方、外接矩形１８８内の外接矩形１７６〜１８７は横一列に並んでいるので、外接矩形１７６〜１８７には、横並びフラグ１が与えられる。
【０２３０】
外接矩形１７１〜１７４及び外接矩形１７６〜１８７についてのフラグ処理が終了すると、フラグが付された矩形の割合を各グループごとに算出する。そして、フラグが付された矩形の割合の多いグループを文字列として抽出し、フラグが付された矩形の割合の少ないグループをノイズとして捨てる。
【０２３１】
この結果、図２５（ｂ）に示すように、外接矩形１７５のグループは、そのグループに属する外接矩形１７１〜１７４に対して、フラグが１つも付されてないので、ノイズとして捨てられる。一方、外接矩形１８８のグループは、そのグループに属する外接矩形１７６〜１８７に対して、横並びフラグ１を与えられているので、文字列として抽出される。
【０２３２】
具体的には、以下のａ）〜ｅ）の処理を行う。
ａ）グループ内の隣接するサイズまたは形の一定条件を満足する２つの矩形の上端座標同士または下端座標同士の差がしきい値（高さのＷＩＤ＿ＲＡＴＥ（＝０．２）倍）より小さい場合、その２つの矩形に横並びフラグを与える。
【０２３３】
ここで、隣接するとは、基準矩形の幅のＷＩＤ＿ＲＡＴＥ＿ＤＩＳＴ（＝０．５）倍の周囲範囲以内に矩形があることをいう。
ｂ）グループ内の隣接するサイズまたは形の一定条件を満足する２つの矩形の左端座標同士または右端座標同士の差がしきい値（幅のＷＩＤ＿ＲＡＴＥ倍）より小さい場合、その２つの矩形に縦並びフラグを与える。
【０２３４】
ここで、隣接するとは、基準矩形の高さのＷＩＤ＿ＲＡＴＥ＿ＤＩＳＴ倍の周囲範囲以内に矩形があることをいう。
ｃ）グループ内の矩形で、横並びフラグと縦並びフラグの数の多い方を文字列方向として採用して、その数を並んでいる矩形数とする。
【０２３５】
ｄ）グループ内の矩形の中で並んでいる矩形の比率を、「並んでいる矩形数／グループ内のサイズまたは形の一定条件を満足する矩形の総数」として算出する。
なお、対象とするグループ内矩形の条件は、グループ内の矩形の最頻値を示す高さを求め、例えば、その３倍をｌａｒｇｅ＿ｒｅｃｔとすると、矩形高さが、固定サイズ（２３ｄｏｔ，１００ｄｐｉで）より大きく、ｌａｒｇｅ＿ｒｅｃｔより小さいものとする。
【０２３６】
ｅ）並んでいる矩形の比率が一定しきい値ＮＵＭ＿ＲＡＴＥ（＝０．８）より大きい場合に、そのグループを文字列らしいグループとして残し、他をノイズとして捨てる。
なお、中点「・」や中棒「ー」などのタイトルとして用いられることがある特殊な記号を予め登録しておき、ａ）〜ｅ）の条件を満たさない場合でも、このような特殊な記号をタイトルを構成するパターンとして残すようにしてもよい。
【０２３７】
次に、ノイズグループの削除処理を行う（ステップＳ２０）。
このノイズグループの削除処理では、グループ内が２つの矩形だけから構成されているグループに対して、その形状及び座標から判断してノイズと思われるグループを抽出し、そのグループを削除する。すなわち、グループ内の矩形数が２つのものについて、その２つの矩形の上下端（または左右端）とも近いかどうかを判断し、２つの矩形が並んでいると判断されるもの以外のグループをノイズとして削除する。
【０２３８】
図２６は、本発明の一実施例に係わるノイズグループの削除処理を説明する図である。
図２６において、２つの外接矩形２１１、２１２が１つのグループとして抽出され、この２つの外接矩形２１１、２１２を囲む外接矩形２１３が生成されているものとする。この場合、外接矩形２１１と外接矩形２１２の下端座標は揃っているが、外接矩形２１１と外接矩形２１２の上端座標は極端に異なっているので、これらの外接矩形２１１、２１２はノイズであると見なして、外接矩形２１１、２１２からなるグループを文字列らしいグループから削除する。
【０２３９】
具体的には、以下の処理を行う。
グループ内の２つの矩形の高さの平均をｈｅｉ，幅の平均をｗｉｄとする。しきい値を決める比率ＤＥＬ＿ＲＡＴＥ＝０．１として、
（｜第１の矩形の上端座標−第２の矩形の上端座標｜＜ｈｅｉ×ＤＥＬ＿ＲＡＴＥ
かつ
｜第１の矩形の下端座標−第２の矩形の下端座標｜＜ｈｅｉ×ＤＥＬ＿ＲＡＴＥ）
または
（｜第１の矩形の左端座標−第２の矩形の左端座標｜＜ｗｉｄ×ＤＥＬ＿ＲＡＴＥ
かつ
｜第１の矩形の右端座標−第２の矩形の右端座標｜＜ｗｉｄ×ＤＥＬ＿ＲＡＴＥ）
を満足するグループだけ残し、後はノイズとして削除する。
【０２４０】
次に、文字認識によるノイズ除去処理を行う（ステップＳ２１）。
この文字認識によるノイズ除去処理では、パターンの外接矩形の位置及びサイズ情報によるノイズ除去を行った後に、グループ内のパターンを文字認識処理し、各パターンごとの距離値をグループ内で平均する。その平均値が予め決めたしきい値（例えば、１２００）よりも小さい場合に、文字らしいグループとして残し、それ以外のグループを削除する。
【０２４１】
この処理により、抽出したグループの内部のパターンが背景部分から抽出されたノイズだけで構成されるグループを検出することが可能となり、明らかに文字と見なせないパターンをタイトル候補から除外することが可能となることから、タイトルの抽出精度を向上させることが可能となる。
【０２４２】
また、文字認識結果の距離値に従って、グループ内のパターンを再グルーピングすることもできる。
具体的には、グループ内の全矩形内のパターンの文字認識処理を行い、第１位候補の距離値を矩形ごとに獲得する。そして、矩形ごとの距離値の頻度分布を作成し、その距離値をクラスタリングすることにより、距離値のクラスタを複数個生成する。複数のクラスタを生成する方法として、距離値の頻度分布の谷で複数のクラスタに分割する方法や、階層的クラスタリングを適用する方法などを用いることができる。
【０２４３】
２つの外接矩形のうち、第１の外接矩形のパターンの文字認識距離値をｄｉｓｔ１、第２の外接矩形のパターンの文字認識距離値をｄｉｓｔ２とすると、これらの距離値が同じクラスタに属する時に、これらの２つの外接矩形を同じグループに分類する。
【０２４４】
この処理を元のグループ内全ての矩形について行い、グループ内の新たなグルーピングを行う。
次に、グループ内同色パターン抽出処理を行う（ステップＳ２２）。
【０２４５】
このグループ内同色パターンの抽出処理では、グループの代表色をグループ内部の矩形の代表色の平均として求める。グループの矩形の内部に相当する範囲で、原画像を探索して、グループの代表色に近いパターンで、既に文字パターンとして抽出されているもの以外ものを２値画像として抽出する。この抽出されたパターンに２値画像用のラベリングを行い、連結成分の外接矩形を求め、その外接矩形の大きさが所定値より大きいものだけを文字パターンの一部として、そのグループに追加する。
【０２４６】
この処理により、これまでの処理で抜け落ちるが、実は文字の一部であるパターン、例えば、「ば」の濁点部分のように、文字幅情報や色ずれなどで落されたパターンを再抽出することができる。
【０２４７】
ここで、グループの代表色と近い色のパターンを原画像から再抽出する際に、固定しきい値を用いて同色パターンかどうかの判断を行うと、背景色と文字色とが近く、特に、それらの色が黒色に近い場合は、この処理によって背景ノイズを大量に拾ってしまい、文字を消してしまう場合がある。
【０２４８】
そこで、原画像から同色パターンを再抽出する際に、固定しきい値を用いて同色パターンかどうかの判断を行うのではなく、文字パターンとして既に抽出されている領域内の色の分散を考え、この分散から求めた標準偏差をしきい値を用いることにより、同色パターンかどうかの判断を行う。
【０２４９】
図２７は、本発明の一実施例に係わるグループ内同色パターン抽出処理を説明する図である。
図２７（ａ）において、図３のステップＳ１〜Ｓ２１の処理により、「クローハル化への３つの成功モデル」という文字列が入力画像から抽出され、これらの文字列を囲む外接矩形２２１が生成されているものとする。この場合、図２７（ｂ）の「ク」という文字の濁点２２２及び「ハ」という文字の濁点２２３が欠落している。
【０２５０】
ここで、「ク」という文字の濁点２２２が欠落したのは、「ク」という文字の濁点２２２の色と「ク」という文字の色との差がしきい値範囲内にないために、「ク」という文字の濁点２２２が「ク」という文字と異なるグループにグルーピングされたためである。
【０２５１】
また、「ハ」という文字の濁点２２３が欠落したのは、「ハ」という文字の濁点２２３の色と「ハ」という文字の色との差がしきい値範囲内にないために、「ハ」という文字の濁点２２３が「ハ」という文字と異なるグループにグルーピングされたためである。
【０２５２】
このように、ステップＳ９の同色グループ抽出処理では、抽出対象となる文字列のうち、局所的な部分の色同士が比較されるので、抽出対象となる文字列の色が色ずれなどで局所的に変化している場合には、文字の一部が欠落したりする。
【０２５３】
そこで、「ク」という文字の濁点２２２及び「ハ」という文字の濁点２２３の再抽出を行う場合には、既に抽出されている「クローハル化への３つの成功モデル」という文字列全体を考慮して、その代表色を求め、この代表色に近い色を有するパターンを原画像から再抽出する。すなわち、既に抽出されている文字列全体の代表色を求め、この文字列全体の代表色と抽出対象となるパターンの色とを比較することにより、その文字列の局所的な色の変化の影響を軽減することが可能となり、「ク」という文字の濁点２２２及び「ハ」という文字の濁点２２３を抽出することが可能となる。
【０２５４】
また、再抽出を行う際には、再抽出の対象となるパターンの探索範囲を、外接矩形２２１の範囲に限定する。この限定を行うことにより、例えば、原画像からタイトルを構成する文字を抽出する場合、その文字の探索範囲をタイトル領域のみに限定して文字の再抽出を行うことが可能となり、抽出処理を高速化することが可能となる。
【０２５５】
さらに、再抽出を行う際の同色かどうかの判断に用いるしきい値として、実験的に予め定められた値を用いるのではなく、図２７（ａ）で既に抽出されている「クローハル化への３つの成功モデル」というパターンの色情報から算出した値を用いるようにする。
【０２５６】
この結果、背景色と文字色とが近い場合においても、背景色と文字色との微妙な色の違いを区別することが可能となり、「グローバル化への３つの成功モデル」という文字列と近い色の背景ノイズが外接矩形２２１の範囲内に存在している場合においても、背景ノイズが抽出されることを防止しながら、「ク」という文字の濁点２２２及び「ハ」という文字の濁点２２３を抽出することが可能となる。
【０２５７】
なお、「グローバル化への３つの成功モデル」という文字列の色と背景ノイズの色とが完全に同一である場合には、これらのノイズが抽出されることを防止できないが、再抽出されたパターンのうち微小なものをノイズとみなして除去することにより、ノイズを減らすことができる。
【０２５８】
具体的には、以下の処理を行う。
ａ）グループ内の矩形について保存されている代表色情報をグループ内の矩形全てについて平均し、グループの代表色（Ｒｍ，Ｇｍ，Ｂｍ）を求める。また、グループ内のＲＧＢの分散（Ｖｒ，Ｖｇ，Ｖｂ）を求め、その分散から、グループの標準偏差を以下の式で求める。
【０２５９】
ｄｅｖ＝ｓｑｒｔ（ｓｑｒｔ（Ｖｒ＊Ｖｒ＋Ｖｇ＊Ｖｇ＋Ｖｂ＊Ｖｂ））
ｂ）グループ内の矩形サイズの最頻度を幅と高さについて求め、それぞれｍｆｗ，ｍｆｈとする。その幅と高さが、最小矩形サイズのしきい値ｍｉｎｓｉｚｅ（＝２）より大きな場合には、それぞれｍｉｎｓｉｚｅで置き換える。
【０２６０】
ｃ）グループの外接矩形を求め、その外接矩形の大きさの２値画像を作成する。２値画像の値は、全て０としておく。
ｄ）グループの範囲内で原画像の画素の色を調べ、原画像の画素の色（Ｒ，Ｇ，Ｂ）とグループの代表色（Ｒｍ，Ｇｍ，Ｂｍ）との関係が、
｜Ｒｍ，−Ｒ｜＋｜Ｇｍ−Ｇ｜＋｜Ｂｍ−Ｂ｜＜ｋ×ｄｅｖ （ｋ＝５）
を満足する画素の位置を記録し、２値画像のその位置の画素を１にする。
【０２６１】
ｅ）２値画像の中から、グループ内の矩形を構成する。このグループ内の矩形から既に抽出されているパターンを除去し、２値画像のパターンを、グループの代表色に近い色であり、かつ、これまでの処理で漏れていたパターンだけにする。
【０２６２】
ｆ）この２値画像に対して、２値画像用のラベリングを行い、連結領域の外接矩形を求める。
ｇ）外接矩形の幅ｗ及び高さｈが、ｗ＞ｍｆｗ／２  かつ  ｈ＞ｍｆｈ／２を満足する矩形だけを残し、他の矩形を削除する。
【０２６３】
ｈ）残った矩形に含まれる連結成分のパターンをグループに追加する。
次に、グループの出力順位決定処理を行う（ステップＳ２３）。
このグループの出力順位決定処理では、文字列を含んでいるグループが複数抽出された場合、グループの外接矩形から面積を計算して、全画像中のグループの面積の大きい順にグループをソートして、このソートした結果を出力順序とする。
【０２６４】
次に、２値パターン生成処理を行う（ステップＳ２４）。
この２値パターン生成処理では、グループを構成するパターンを文字認識できるような２値画像として作成する。
【０２６５】
具体的には、以下のａ）〜ｃ）の処理を行う。
ａ）グループの外接矩形サイズの２値画像を作成し、その値を全て０に設定する。
ｂ）グループ内の矩形のラベル番号を抽出し、対応する矩形領域の内部でラベル画像を探索し、そのラベル番号の画素を抽出し、２値画像上でその座標の画素を１とする。
【０２６６】
ｃ）ｂ）の処理を全ての矩形について行い、グループを構成するパターンを２値画像上に作成する。
図４のステップＳ３で、入力画像がフルカラー画像でないと判定された場合には、クラスタリング処理を行う（ステップＳ２５）。
【０２６７】
クラスタリング処理では、ＲＧＢ画像の画素をＲＧＢ空間上、またはＲＧＢ以外の色空間（ＨＳＶ等）上でクラスタリングを行い、１つのクラスタに属する画素だけで色ごとの画像を作成する。
【０２６８】
ここで、フルカラー画像以外の画像についてクラスタリング処理を行うのは、フルカラー（例えば、１６６７万色）画像に用いたラベリング方法を、フルカラー以外（例えば、２５６色）の画像に適応すると、同色領域に細かい領域が多数発生し、その後の処理時間がフルカラー画像を処理する場合に比べて大幅に増大したり、文字パターンの抽出精度が低下したりするからである。
【０２６９】
これは、例えば、２５６色画像は、フルカラー画像を色のクラスタリングにより減色したものと考えられ、フルカラー画像では異なった色として表現されている領域が、２５６色画像では同一色の領域として表現されるからである。すなわち、フルカラー画像では１６６７万色を区別する必要があるため、同一色とみなす色の変動の範囲を小さくする必要があるが、２５６色画像では２５６色を区別するだけでよく、同一色とみなす色の変動の範囲がある程度大きくてもよい。このため、フルカラー画像に適用されるラベリング方法を、２５６色画像の適用すると、２５６色画像では同一色として表現されている領域が異なった色で構成されていると判断され、同色領域に細かい領域が多数発生することになる。
【０２７０】
そこで、フルカラー画像以外の画像について、画像の色パレットを対象にクラスタリング処理を行い、そのクラスタリング結果を用いてラベリングを行うようにする。
また、画像の色分布をクラスタリングし、そのクラスタリング結果を用いてラベリングを行うようにすることもできる。
【０２７１】
また、フルカラー画像以外のラベリングを行う場合に、クラスタリングと領域拡張法ラベリングを組み合わせた手法を使用することもできる。
クラスタリング結果として、１つのクラスタ当たり以下のような情報を得ることができる。
【０２７２】
・クラスタ番号
・クラスタに含まれる色パレットの個数
・クラスタに含まれる元の画像の色パレット番号
・クラスタの平均色（Ｒ，Ｇ，Ｂ）
クラスタリング手法として、例えば、クラスタ中心間のシティブロック距離を距離尺度に使った階層的クラスタリングを用いることができる。なお、距離の尺度を、ユークリッド距離、重み付きユークリッド距離、またはマハラノビス距離などにより定義することもできる。
【０２７３】
また、クラスタ間の距離を測る方法として、最短距離法、最長距離法、メジアン法、重心法、群平均法、またはウォード法などを用いることができる。
また、クラスタリングの終了条件として、例えば、クラスタ中心間の距離の最小値が予め定めたしきい値より小さくなった時に、クラスタリングを終了させることができる。
【０２７４】
画像の色分布をクラスタリングする場合、クラスタリングに使用するベクトルは、画像の色パレット（Ｒｉ，Ｇｉ，Ｂｉ）（ｉ＝１〜２５５など）である。
この色パレットのベクトルを使用して階層的クラスタリングを行う場合、色差の尺度としてクラスタ間の距離を求め、クラスタ間の距離が小さいクラスタ同士を統合する。
【０２７５】
なお、２つの色（Ｒ１，Ｇ１，Ｂ１）、（Ｒ２，Ｇ２，Ｂ２）の間の距離ｄｉｓｔを、シティブロック距離で定義した場合、以下の式で表すことができる。
ｄｉｓｔ＝｜Ｒ１−Ｒ２｜＋｜Ｇ１−Ｇ２｜＋｜Ｂ１−Ｂ２｜
ここで、デバイスによる色の違いの識別能力と人間による色の違いの識別能力とは異なっており、例えば、色空間上での距離値が同じ値を示す色であっても、黒（または白）に近い２つの色は、赤などの高彩度の２つの色などに比べて、人間が見た時の色の識別能力が低い。
【０２７６】
すなわち、黒に近い２つの色は、色空間上での距離値が離れていても、人間の目にはその２つの色を区別できず、その２つの色が同一色に見えてしまう。
一方、赤に近い２つの色は、色空間上での距離値がある程度近くても、人間の目にはその２つの色を区別でき、その２つの赤色を異なった色と見ることができる。
【０２７７】
そこで、クラスタリングに先立って、低彩度色（黒、または白に近い色）の２色間の距離値を高彩度色の２色間の距離値よりも小さくするための色変換を行う。この色変換により、全ての輝度値の値について、０から２５５までの輝度値の差分を同じ評価基準で判断することができる。
【０２７８】
図２８は、本発明の一実施例に係わる色信号の変換方法を説明する図である。
図２８において、黒および白に近い色では、（Ｒ，Ｇ，Ｂ）の色空間上の色差よりも、人間が判別する色差の方が鈍感である場合が多い。
【０２７９】
例えば、人が色の違いを意識する時には、黒（０，０，０）と黒に近い色（０，０，８０）の色差（＝８０）は、例えば、赤（２５５，０，０）と赤に近い色（２５５，５，５）の色差（＝１０）と同程度の感度である。すなわち、赤系統２つの色は、色差が１０程度しかなくても、これらの２つの色の違いを認識できるが、黒系統の２つの色は、色差が８０程度以上にならないと、これらの２つの色の違いを認識することができない。
【０２８０】
このため、黒や白に近い場合には２色間の色差を圧縮し、それ以外の色の場合には２色間の色差を拡大するような色変換を行い、全ての色で色差の距離を同等に評価可能とする。この色変換により得られた色パレットをクラスタリングすることにより、人が判断した場合と同等のクラスタリング結果を得ることが可能となる。
【０２８１】
なお、色変換を計算により行う場合、以下の式を用いることができる。
Ｒｎｅｗ＝｛１−ｃｏｓ（Ｒ×π／２５５）｝×２５５＋Ｒ×４
Ｇｎｅｗ＝｛１−ｃｏｓ（Ｇ×π／２５５）｝×２５５＋Ｇ×４
Ｂｎｅｗ＝｛１−ｃｏｓ（Ｂ×π／２５５）｝×２５５＋Ｂ×４
また、人間の識別能力に対応した色の変換関係を実験的に求め、この実験的に求めた色の変換関係を変換テーブルに予め登録しておくようにしてもよい。
【０２８２】
次に、クラスタリング結果を用いた色ラベリング処理を行う（ステップＳ２６）。
このクラスタリング結果を用いた色ラベリング処理では、色パレットのクラスタリング結果から得られた情報を使用してカラー画像のラベリングを行う。
【０２８３】
すなわち、フルカラー以外の画像については、その画像を構成する色パレットをクラスタリングを行い、そのクラスタリング結果をラベリング処理に反映させる。
一方、フルカラー画像を対象にクラスタリングを行うと、膨大な時間がかかる。また、処理時間を短縮するために、色空間を適当な区分に分割するなどの疑似クラスタリングを行うと、精度が悪化する。
【０２８４】
そこで、フルカラー画像では、クラスタリングを用いたラベリングを行わず、フルカラー以外の２５６色などの少数の色数の画像のみに限定してクラスタリングを用いたラベリング行う。
【０２８５】
図２９は、本発明の一実施例に係わるクラスタリング結果を用いた色ラベリング方法を説明する図である。
図２９において、画素の色パレットのクラスタリングにより、色パレットのクラスタが生成され、各画素の色パレットが属するクラスタの番号が各画素に与えられているものとする。
【０２８６】
例えば、パターン２３１、２３５の色が赤、パターン２３２、２３４の色が青、パターン２３３の色が黄であるものとし、赤がクラスタ番号１のクラスタに分類され、青がクラスタ番号２のクラスタに分類され、黄がクラスタ番号３のクラスタに分類されたものとすると、パターン２３１、２３５を構成する各画素にはクラスタ番号１が与えられ、パターン２３２、２３４を構成する各画素にはクラスタ番号２が与えられ、パターン２３３を構成する各画素にはクラスタ番号３が与えられる。
【０２８７】
クラスタ番号が各画素に与えられると、互いに隣接する画素同士のクラスタ番号を比較し、互いに隣接する画素のクラスタ番号が同一である場合、それらの画素に同一のラベルを与える。
【０２８８】
例えば、パターン２３１を構成する画素はクラスタ番号１の画素で連結しているため、パターン２３１を構成する画素には、ラベル番号１が与えられる。一方、パターン２３５を構成する画素のクラスタ番号も１であるが、パターン２３１とパターン２３５とは連結していないので、パターン２３５を構成する画素にはラベル番号５が与えられる。
【０２８９】
具体的には、以下の処理を行う。
まず、画素のパレット番号からクラスタ番号を獲得する変換表を作成する。
次に、クラスタ番号に注目した色ラベリング処理を行う。この色ラベリング処理では、隣り合う画素のクラスタ番号が同じ場合に同一ラベルを与える。
【０２９０】
すなわち、縮小画像の左上からラスタスキャンを行い、ラベル付けがされていない画素に注目する。
そして、この未処理の画素の周囲８画素を走査して、周囲に既にラベル付けされた画素があり、その画素のクラスタ番号が注目画素のクラスタ番号と同じである場合に、周囲画素のラベルをカレントラベル（ｒｅｇｉｏｎ）として保存し、注目画素のラベルとしてｒｅｇｉｏｎを与える。
【０２９１】
また、領域の平均色（Ｒｍ，Ｇｍ，Ｂｍ）として、周囲のラベルの平均色に注目画素の色を加味した新たな平均色を求める。
それ以外の場合は、カレントラベルとして、今まで付けたラベル値＋１のラベル値を設定し、注目画素のラベルにもその値を付与する。この場合でも、領域の平均色（Ｒｍ，Ｇｍ，Ｂｍ）として、注目画素のＲＧＢ値を設定する。
【０２９２】
どちらの場合でも、注目画素の座標値を処理対象座標配列に保存する。
注目画素の周りに同色領域を拡張する処理を行う。処理対象配列の中から、先頭の座標値を取り出し、その座標の画素を注目画素とする。
【０２９３】
注目画素の市有為８画素を走査し、未処理の画素であり、注目画素のクラスタ番号と周囲画素のクラスタ番号が同一である場合、注目画素と同一ラベルを付け、周囲画素の座標を処理対象配列に追加する。今処理した注目画素は、処理対象配列から削除する。処理座標のｘ，ｙの最大値、最小値を求め、それをこのラベル領域の外接矩形として保存する。また、このラベル領域の平均色を外接矩形の属性として保存する。
【０２９４】
この処理を処理対象配列の内容がなくなるまで続ける。
ラベリングの結果、ラベル画像（同一領域は、同じラベル値が付与されている画像）と同じラベルを持つ領域を囲む外接矩形が獲得される。
【０２９５】
ラベリング処理の出力情報は、以下のようになる。
・ラベル画像：４バイト／１画素
・外接矩形
矩形数：ｍａｘｃｏｕｎｔ
内包するラベル画像のラベル番号：ｌａｂｅｌ
矩形左上座標：（ｘｍｉｎ，ｙｍｉｎ）
矩形右上座標：（ｘｍａｘ，ｙｍａｘ）
矩形内の代表色：（ｒ，ｇ，ｂ）
所属するグループ番号：ｓｔｒｉｎｇ＿ｌａｂｅｌ
輪郭長：ｃｏｎｔｏｕｒ
図３０は、本発明の一実施例に係わるパターン抽出装置のシステム構成を示すブロック図である。
【０２９６】
図３０において、２４１は全体的な処理を行う中央演算処理ユニット（ＣＰＵ）、２４２はリードオンリメモリ（ＲＯＭ）、２４３はランダムアクセスメモリ（ＲＡＭ）、２４４は通信インターフェイス、２４５は通信ネットワーク、２４６は入出力インターフェイス、２４７は入力画像やタイトルの抽出結果などを表示するディスプレイ、２４８は入力画像やタイトルの抽出結果などを印刷するプリンタ、２４９はスキャナ２５０またはＣＣＤ２５１により読み取られたデータを一時的に格納するメモリ、２５０はカラー画像などを読み取るスキャナ、２５１はカラー画像などを読み取るＣＣＤ、２５２はキーボード、２５３は記憶媒体を駆動するドライバ、２５４はハードディスク、２５５はＩＣメモリカード、２５６は磁気テープ、２５７はフロッピーディスク、２５８はＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどの光ディスク、２５９はバスである。
【０２９７】
パターン抽出処理を行うプログラム、印刷モデルを構築するプログラム、色差テーブルなどは、ハードディスク５４、ＩＣメモリカード５５、磁気テープ５６、フロッピーディスク５７、光ディスク５８などの記憶媒体に格納される。そして、パターン抽出処理を行うプログラム及び色差テーブルを、これらの記憶媒体からＲＡＭ２４３に読み出すことにより、パターン抽出処理を行うことができる。また、パターン抽出処理を行うプログラムなどを、ＲＯＭ２４２に格納しておくこともできる。また、印刷モデルを構築するプログラムを起動させることにより、色差テーブルを作成することができる。
【０２９８】
さらに、パターン抽出処理を行うプログラムや色差テーブルななどを、通信インターフェイス２４４を介して通信ネットワーク２４５から取り出すこともできる。通信インターフェイス２４４に接続される通信ネットワーク２４５は、無線及び有線のいずれでもよく、例えば、ＬＡＮ（ＬｏｃａｌＡｒｅａ Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ Ａｒｅａ Ｎｅｔｗｏｒｋ）、インターネット、アナログ電話網、デジタル電話網（ＩＳＤＮ：ＩｎｔｅｇｒａｌＳｅｒｖｉｃｅ Ｄｉｇｉｔａｌ Ｎｅｔｗｏｒｋ）、ＰＨＳ（パーソナルハンディシステム）、携帯電話網、衛星通信網などを用いることができる。
【０２９９】
ＣＰＵ２４１は、パターン抽出処理を行うプログラムが起動されると、スキャナ２５０またはＣＣＤ２５１により読み取られた入力画像のラベリングを行うしきい値を設定し、スキャナ２５０またはＣＣＤ２５１により読み取られた入力画像からラベル画像を生成する。ラベル画像が生成されると、入力画像のパターンの各ラベルごとに、各パターンについての外接矩形を生成する。そして、各外接矩形内の領域の色情報及び外接矩形の幾何学情報に基づいて、各外接矩形のグルーピングを行い、このグルーピングされた外接矩形の配置状態や大きさなどを考慮して、タイトル領域などを抽出する。タイトル領域が抽出されると、このタイトル領域に含まれているパターンを入力画像のタイトルとしてディスプレイ２４７やプリンタ２４８に出力したり、このタイトル領域に含まれるパターンの文字認識を行い、その認識結果に基づいて、文書の自動分類や自動検索を行ったりする。
【０３００】
以下、上述した処理について、実際のカラー画像を例にとって説明する。なお、以下の説明に用いるカラー画像は、フルカラー画像を例にとっているが、フルカラー画像以外のカラー画像についても、色ラベリング処理が異なる以外は同様に処理できる。
【０３０１】
図３１（ａ）は、入力された原画像の例を示す図である。
図３１（ａ）において、この原画像は、８４７×１１６７画素から構成され、「祝！パソコン２０年」という文字パターン３０１が黒色で印刷されている。また、この文字パターン３０１の周囲には、色が黒→オレンジ→黄にかけて少しずつ変化する背景パターン３０２が存在している。ここで、図３１（ａ）の原画像から「祝！パソコン２０年」という文字パターン３０１を抽出するものとする。
【０３０２】
図３１（ｂ）は、図３１（ａ）のラベル画像を示す図である。
図３１（ｂ）において、このラベル画像は、図４のステップＳ５の色ラベリング処理により得られたものである。この色ラベリング処理により、同色の連結領域に対して同一ラベルが付され、同一ラベルが付されたパターンの外接矩形が生成される。
【０３０３】
ここで、原画像を３×３画素からなるメッシュ領域に分割し、これらのメッシュ領域の中の画素の色の分散の小さいもの選択することにより、図３１（ａ）の原画像から均一色領域を抽出する。例えば、図３１（ａ）の原画像の右上の領域３０３や右下の領域３０４は黒一色で着色されているので、これらの領域３０３、３０４が原画像の均一色領域として抽出される。
【０３０４】
原画像から均一色領域が抽出されると、この均一色領域の色の分散を求め、この分散に基づいてラベリングのしきい値を設定する。このしきい値をラベリングの際に用いることにより、「祝！パソコン２０年」という黒色の文字パターン３０１が黒色の背景パターン３０２で覆われているのもかかわらず、文字パターン３０１の色と背景パターン３０２の色との微妙な違いを区別することができ、「祝！パソコン２０年」というパターン３０１の輪郭を正確に縁取ったラベル画像３１１を生成することができる。
【０３０５】
また、背景パターン３０２の色は微妙に変化しているため、隣接拡張法によるラベリングでは背景パターン３０２の色の変動を吸収できず、微小な背景ノイズ３１２が多数生成されている。
【０３０６】
なお、フルカラー画像の場合、色ラベリング処理により得られる外接矩形の個数は数千〜数万程度になる。
図３２（ａ）は、図３１（ｂ）のラベル画像から得られた注目矩形を示す図である。
【０３０７】
図３２（ａ）において、この注目矩形は、図４のステップＳ７の注目矩形抽出処理により得られたものである。この注目矩形抽出処理では、図３１（ｂ）のラベル画像から得られる外接矩形のうち、所定の範囲内の大きさの外接矩形が注目矩形とされる。このため、図３１（ｂ）の色ラベリング処理により得られる外接矩形のうち、矩形番号１〜４１の矩形が注目矩形として抽出される。
【０３０８】
この注目矩形抽出処理により、タイトルを構成しないことが明らかな微小な背景ノイズ３１２などの外接矩形を、グルーピングの際の探索範囲の基準となる外接矩形から除去することができ、処理を高速化することが可能となる。例えば、図３１（ｂ）の状態では外接矩形の個数が数千〜数万程度あったものが、図３２（ａ）の状態では外接矩形の個数を数十個に減らすことができる。
【０３０９】
図３２（ｂ）は、グループ抽出結果を示す図である。
図３２（ｂ）において、このグループ抽出結果は、図４のステップＳ９の同色グループ抽出処理により得られたものである。この同色グループ抽出処理は、図３１（ｂ）のラベリング処理が終了した段階では、タイトルを構成する個々の文字に異なるラベルが付されているので、タイトルを構成する「祝」、「！」、「パ」、「ソ」、「コ」、「ン」、「２」、「０」及び「年」という文字を１つのグループにまとめるために行われる。
【０３１０】
この同色グループ抽出処理により、同一のグループにグルーピングされた外接矩形を囲む外接矩形が生成され、矩形番号が１〜１６のグループの外接矩形が生成される。
ここで、同色グループ抽出処理では、図３１（ｂ）のラベル画像から得られた外接矩形のうち、図３２（ａ）で設定された注目矩形から所定の範囲内にあり、矩形の色の近いもの同士が同一のグループにグルーピングされる。
【０３１１】
このため、タイトルを構成する個々の文字に局所的な色の変動がある場合には、１つのタイトルを構成する文字であっても、それらの文字が異なるグループに分類される場合がある。例えば、図３１（ａ）の「祝！パソコン２０年」という文字パターン３０１のうち、「コ」という文字の色と「ン」という文字の色とが局所的に異なっているとすると、「コ」という文字と「ン」という文字とが異なるグループに分類される。このため、図３２（ｂ）では、「祝！ハソコ」というパターンと「ン２０年」というパターンとが異なるグループに分類され、「祝！ハソコ」というパターンに対応するグループの外接矩形３２１と、「ン２０年」というパターンに対応するグループの外接矩形３２２とが生成される。
【０３１２】
また、外接矩形３２１に対応するグループは「祝！ハソコ」というパターンから構成され、「祝！パソコン２０年」という文字パターン３０１から「ハ」の半濁点が欠落している。これは、同色グループ抽出処理では、図３２（ａ）で抽出された注目矩形の色とその周囲にある矩形の色とが比較され、注目矩形の色とその周囲にある矩形の色との差が大きい場合には、それらの矩形は異なるグループに分類されるためである。例えば、「ハ」というパターンの色と「ハ」の半濁点の色との差が大きい場合には、「ハ」というパターンと「ハ」の半濁点とは異なるグループに分類され、「ハ」の半濁点が外接矩形３２１のグループから欠落する。
【０３１３】
さらに、同色グループを抽出する際のしきい値が適切でない時にも、「ハ」の半濁点が外接矩形３２１に対応するグループから欠落する場合がある。例えば、同色とみなす範囲のしきい値が印刷モデルから獲得した同色パターンの輝度差に基づいて設定されている場合には、印刷モデルと異なる方法で印刷された画像が入力されると、対応できなくなる。
【０３１４】
なお、図３２（ａ）の注目矩形から所定の範囲内に、代表色の色の近い他の外接矩形が図３１（ｂ）のラベル画像から見つからない場合は、その注目矩形はグループを作らないため、その注目矩形は消滅させる。
【０３１５】
図３３（ａ）は、図３２（ｂ）のグループ抽出結果を文字線太さで再グループ化した結果を示す図である。
図３３（ａ）において、この再グループ結果は、図４のステップＳ１１の文字線太さによる再グループ化処理により得られたものである。この処理により、矩形番号が０〜１２のグループの外接矩形が生成されている。なお、図３２（ｂ）の外接矩形のうち、パターンの線の太さによってグループを作ることができないものは消滅させる。
【０３１６】
図３３（ｂ）は、図３３（ａ）の画像から矩形並びによる文字列らしいグループを抽出した結果を示す図である。
図３３（ｂ）において、この文字列らしいグループは、図４のステップＳ１９の矩形並びによる文字列らしいグループの抽出処理により得られたものである。この処理により、図３３（ａ）の矩形番号が０〜１２のグループのうち、そのグループ内の矩形がランダムに並んでいるグループは削除され、縦方向または横方向に矩形が規則正しく並んでいるグループだけが残される。この結果、矩形番号が０〜２のグループの外接矩形３４１〜３４３が抽出される。
【０３１７】
ここで、図３３（ｂ）の矩形番号０のグループの外接矩形３４１は、図３３（ａ）の矩形番号３のグループの外接矩形３３１と矩形番号２のグループの外接矩形３３２とを統合したものとなっている。これは、図４のステップＳ１９の処理が行われる前に、図４のステップＳ１８のグループ統合処理が行われたためである。
【０３１８】
このグループ統合処理では、グループの統合を行うかどうかの判断がそのグループに属する全てのパターンの色の平均に基づいて行われる。このため、同一タイトルに属するにもかかわらず、別々のグループに属するとされた文字を１つのグループにまとめることができる。
【０３１９】
例えば、図３２（ｂ）では、「祝！ハソコ」というパターンと「ン２０年」というパターンとが異なるグループに分類され、「祝！ハソコ」というパターンに対応するグループの外接矩形３２１と、「ン２０年」というパターンに対応するグループの外接矩形３２２とが生成されている。これは、図３２（ｂ）の同色グループ抽出処理では、互いに隣接する矩形同士の色の違いしか判断しないため、図３１（ａ）の「祝！パソコン２０年」という文字パターン３０１のうち、「コ」という文字の色と「ン」という文字の色とが局所的に異なっているとすると、「コ」という文字と「ン」という文字とが異なるグループに分類されるからである。
【０３２０】
一方、図４のステップＳ１８のグループ統合処理では、グループの外接矩形３２１内の「祝！ハソコ」というパターン全体の色と、グループの外接矩形３２２内の「ン２０年」というパターン全体の色とが比較され、これらのグループの色が近い場合は、１つのグループに統合される。このため、図３１（ａ）の「祝！パソコン２０年」という文字パターン３０１のうち、「コ」という文字の色と「ン」という文字の色とが局所的に異なっている場合でも、「コ」という文字の色の変動は「コ」という文字が属する「祝！ハソコ」というパターン全体の色に吸収され、「ン」という文字の色の変動は「ン」という文字が属する「ン２０年」というパターン全体の色に吸収される。このため、「祝！ハソコ」というパターンと「ン２０年」というパターンとを１つのグループにまとめることが可能となる。
【０３２１】
図３４（ａ）は、図３３（ｂ）のグループの外接矩形からそのグループ内のパターンを抽出した結果を示す図である。
図３４（ａ）において、「祝！ハソコン２０年」という文字パターン３５１とノイズパターン３５２とが抽出されている。ここで、「祝！ハソコン２０年」という文字パターン３５１は、図３３（ｂ）のグループの外接矩形３４１から抽出されたものであり、ノイズパターン３５２は、図３３（ｂ）のグループの外接矩形３４２から抽出されたものである。なお、図３３（ｂ）のグループの外接矩形３４３のパターンは、そのパターンについての文字認識を行った結果、ノイズと見なされ削除されている。
【０３２２】
ここまでの処理では、グループの外接矩形３４１から抽出された文字パターン３５１は、「ハ」の半濁点が「祝！パソコン２０年」という文字パターン３０１から欠落したままの状態となっている。そこで、グループの色に近いパターンの再抽出を行う。
【０３２３】
図３４（ｂ）は、グループの色に近いパターンの再抽出結果を示す図である。図３４（ｂ）において、このグループ内パターンは、図４のステップＳ２２のグループ内同色パターン抽出処理により得られたものである。
【０３２４】
このグループ内同色パターン抽出処理では、図３４（ａ）の「祝！ハソコン２０年」という文字パターン３５１については、図３３（ｂ）のグループの外接矩形３４１内に存在する図３１（ａ）の原画像のパターンが探索される。
【０３２５】
ここで、グループの外接矩形３４１内に存在する文字パターン３５１全体の色と、図３３（ｂ）のグループの外接矩形３４１内に抽出されないで残っている原画像のパターンの色とを比較することにより、同色パターンの再抽出を行う。
【０３２６】
このため、「祝！ハソコン２０年」という文字パターン３５１全体の色と、「ハ」の半濁点の色とを比較して、これらのパターンが同色かどうかの判定を行うことが可能となり、図３１（ｂ）の同色グループ抽出処理では抽出できなかった「ハ」の半濁点を抽出することが可能となる。
【０３２７】
また、同色パターンを再抽出する際の同色とみなす範囲のしきい値を、既に抽出されている「祝！ハソコン２０年」という文字パターン３５１の色の変動に基づいて設定する。
このため、タイトルを構成するパターンとして既に抽出されている部分の色情報から、タイトルを構成する残りのパターンを抽出することが可能となり、同色パターンを抽出する際のしきい値として、抽出対象となるパターンの色差を忠実に反映した値を用いることが可能となり、図３１（ｂ）の同色グループ抽出処理では抽出できなかった「ハ」の半濁点を抽出することが可能となる。
【０３２８】
この結果、図３４（ａ）の「祝！ハソコン２０年」という文字パターン３５１に対し、「ハ」の半濁点を抽出することが可能となり、図３１（ａ）の原画像の文字パターン３０１に対応する文字パターン３６１を抽出することが可能となる。
【０３２９】
図３５は、図３１（ａ）の画像から抽出された第１候補のタイトルを示す図である。
図３４（ｂ）の例では、タイトル候補として、２つのパターン３６１、３６２が抽出されているので、これらのパターン３６１、３６２に対応する外接矩形３４１、３４２の面積を計算する。そして、面積の大きい方のパターンをタイトルの第１候補として提示する。この結果、図３５に示すように、図３１（ａ）の原画像から抽出された「祝！パソコン２０年」という文字パターン３０１をタイトルの第１候補として提示することができる。
【図面の簡単な説明】
【０３３０】
【図１】本発明の第１実施例に係わる画像処理装置の構成を示すブロック図である。
【図２】本発明の第２実施例に係わる画像処理装置の構成を示すブロック図である。
【図３】本発明の第３実施例に係わる画像処理装置の構成を示すブロック図である。
【図４】本発明の第４実施例に係わるパターン抽出装置の動作を示すフローチャートである。
【図５】本発明の一実施例に係わる印刷モデルの生成方法を示す図である。
【図６】本発明の一実施例に係わる色差テーブルの構成を示す図である。
【図７】本発明の一実施例に係わる読み取り解像度推定方法を説明する図である。
【図８】本発明の一実施例に係わる色ラベリング処理を説明する図である。
【図９】本発明の一実施例に係わる注目画素の周囲の８画素を示す図である。
【図１０】本発明の一実施例に係わるＬ字形パターンが存在する場合の重なり統合結果を示す図である。
【図１１】本発明の一実施例に係わる注目矩形の周囲の探索範囲の設定方法を説明する図である。
【図１２】本発明の一実施例に係わる注目矩形の周囲の探索範囲にかかる矩形の抽出方法を説明する図である。
【図１３】本発明の一実施例に係わる注目矩形の周囲の探索範囲にかかる矩形情報の格納方法を説明する図である。
【図１４】本発明の一実施例に係わる同色グループの生成方法を示す図である。
【図１５】本発明の一実施例に係わる文字線の太さの算出方法を説明する図である。
【図１６】本発明の一実施例に係わる輪郭長獲得処理を示すフローチャートである。
【図１７】本発明の一実施例に係わる輪郭長獲得方法を説明するためのパターンの具体例を示す図である。
【図１８】本発明の一実施例に係わる文字線の太さによる再グルーピング処理を説明する図である。
【図１９】本発明の一実施例に係わるグループ内の大きな矩形削除処理を説明する図である。
【図２０】本発明の一実施例に係わるグループ内の重なり矩形統合処理を説明する図である。
【図２１】本発明の一実施例に係わるグループ内文字列抽出処理を説明する図である。
【図２２】本発明の一実施例に係わる文字列内分離文字統合処理を説明する図である。
【図２３】本発明の一実施例に係わるグループ内の文字列サイズによる再グループ化処理を説明する図である。
【図２４】本発明の一実施例に係わるグループ統合処理を説明する図である。
【図２５】本発明の一実施例に係わる矩形並びによる文字列らしいグループの抽出処理を説明する図である。
【図２６】本発明の一実施例に係わるノイズグループの削除処理を説明する図である。
【図２７】本発明の一実施例に係わるグループ内同色パターン抽出処理を説明する図である。
【図２８】本発明の一実施例に係わる色信号の変換方法を説明する図である。
【図２９】本発明の一実施例に係わるクラスタリング結果を用いた色ラベリング方法を説明する図である。
【図３０】本発明の一実施例に係わるパターン抽出装置のシステム構成を示すブロック図である。
【図３１】（ａ）は、本発明の一実施例に係わる原画像を示す図、（ｂ）は、図３１（ａ）のラベル画像を示す図である。
【図３２】（ａ）は、図３１（ｂ）のラベル画像に設定された注目矩形を示す図、（ｂ）はグループ抽出結果を示す図である。
【図３３】（ａ）は、図３２（ｂ）のグループ抽出結果を文字線太さで再グループ化した結果を示す図、（ｂ）は、図３２（ａ）の画像から矩形並びによる文字列らしいグループを抽出した結果を示す図である。
【図３４】（ａ）は、図３３（ｂ）の画像からグループ内パターンを抽出した結果を示す図、（ｂ）は、グループ色に近いパターンの再抽出を行った結果を示す図である。
【図３５】図３１（ａ）の画像から抽出された第１候補のタイトルのパターンを示す図である。
【符号の説明】
【０３３１】
１ 入力画像
２ 読み取り情報取得手段
３ 同色範囲設定手段
４ ラベリング手段
５ グルーピング手段
６ グループ情報算出手段
７ 色数判別手段
８ 制御手段
９ 第１のラベリング手段
１０ 第２のラベリング手段
１４ 画像処理装置
１５ 局所領域抽出手段
１６ 色差情報抽出手段
１７ しきい値設定手段
２４１ ＣＰＵ
２４２ ＲＯＭ
２４３ ＲＡＭ
２４４ 通信インターフェイス
２４５ 通信ネットワーク
２４６ 入出力インターフェイス
２４７ ディスプレイ
２４８ プリンタ
２４９ メモリ
２５０ スキャナ
２５１ ＣＣＤ
２５２ キーボード
２５３ ドライバ
２５４ ハードディスク
２５５ ＩＣメモリカード
２５６ 磁気テープ
２５７ フロッピーディスク
２５８ 光ディスク
２５９ バス
【図１】
2005317042.tif 000004
【図２】
2005317042.tif 000005
【図３】
2005317042.tif 000006
【図４】
2005317042.tif 000007
【図５】
2005317042.tif 000008
【図６】
2005317042.tif 000009
【図７】
2005317042.tif 000010
【図８】
2005317042.tif 000011
【図９】
2005317042.tif 000012
【図１０】
2005317042.tif 000013
【図１１】
2005317042.tif 000014
【図１２】
2005317042.tif 000015
【図１３】
2005317042.tif 000016
【図１４】
2005317042.tif 000017
【図１５】
2005317042.tif 000018
【図１６】
2005317042.tif 000019
【図１７】
2005317042.tif 000020
【図１８】
2005317042.tif 000021
【図１９】
2005317042.tif 000022
【図２０】
2005317042.tif 000023
【図２１】
2005317042.tif 000024
【図２２】
2005317042.tif 000025
【図２３】
2005317042.tif 000026
【図２４】
2005317042.tif 000027
【図２５】
2005317042.tif 000028
【図２６】
2005317042.tif 000029
【図２７】
2005317042.tif 000030
【図２８】
2005317042.tif 000031
【図２９】
2005317042.tif 000032
【図３０】
2005317042.tif 000033
【図３１】
2005317042.tif 000034
【図３２】
2005317042.tif 000035
【図３３】
2005317042.tif 000036
【図３４】
2005317042.tif 000037
【図３５】
2005317042.tif 000038