JP3857746B2 - テキスト領域をハイライトする方法 - Google Patents
テキスト領域をハイライトする方法 Download PDFInfo
- Publication number
- JP3857746B2 JP3857746B2 JP10578496A JP10578496A JP3857746B2 JP 3857746 B2 JP3857746 B2 JP 3857746B2 JP 10578496 A JP10578496 A JP 10578496A JP 10578496 A JP10578496 A JP 10578496A JP 3857746 B2 JP3857746 B2 JP 3857746B2
- Authority
- JP
- Japan
- Prior art keywords
- processor
- edge
- text
- scan line
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/40062—Discrimination between different image types, e.g. two-tone, continuous tone
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Character Input (AREA)
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明は、テキスト/画像分割を行なうための方法に関する。
【0002】
【従来の技術】
ラスタ画像は、一連の走査線信号として表現される。各々の走査線信号は、画像を横切る多数の絵要素すなわち画素による一つの水平ストリップを表し、画素の各々は、仮想的なグリッドの中の位置と値を有する。画素レベルは、白と黒の間で変化可能な灰色の階調を示す。8ビットが、画素レベルを表すために使用され、これはレベルが0および255の間で変化することを可能にする。典型的には、黒を表すために0が選択され、白を表すために255が選択される。換言すれば、そのレベルが下がるほど、画素は暗くなる。
【0003】
走査線信号によって表現された多くの文書は、テキストと、グラフィック或いは画像の両方を含む。テキストとグラフィックを識別して分離する能力は、多くの画像処理分野で重要である。例えば、高品質な複写を生成するためには、テキストとグラフィックの取り扱いを異ならせる必要がある。グラフィック領域は、連続的に変化する灰色の階調の範囲で表現され表示される場合には、視覚的に一層満足され、より多くの視覚的情報を伝達する。これに対して、テキスト領域は、2階調のみの高コントラストで表現され表示されるときに、一層容易に視覚的に区別される。文書のテキストと画像領域の識別は、テキスト/画像分割として一般に知られている。
【0004】
【発明が解決しようとする課題】
テキスト/画像分割のいくつかの従来の方法は、グラフィックスを表す形を識別することを試みることによって、テキストと画像領域を区別する。これは、多数の走査線信号、多分文書を表す全ての走査線信号を分析することを必要とする。したがって、テキスト/画像分割の従来の方法は、それらが分析されている間、多数の走査線信号をバッファするための大容量のメモリを必要とする。テキスト/画像分割のこれらの従来の方法は、その上、長い処理時間を必要とする。テキスト/画像分割の他の従来の方法は、グラフィックスからテキストを識別するために異なった解決法をとるが、前述した方法と同様に、これらの方法も、長時間の処理と大容量のメモリを必要とする。
【0005】
【発明の実施の形態】
図1は、テキスト/画像分割を行なう本発明の方法を行なう多機能装置のブロック図である。
図2Aは、テキスト領域とこれを横切る走査線を示す。
図2Bは、図2Aのテキスト領域を横切る走査線に関しての画素位置対画素強度のグラフである。
図2Cは、図2Dの画像領域を横切る走査線に関しての画素位置対画素強度のグラフである。
図2Dは、画像領域とこれを横切る走査線を示す。
図3は、画像領域を含む走査線の中でテキスト領域を識別してハイライトする方法の流れ図である。
図4は、縁を位置付ける方法の流れ図である。
【0006】
〔好適な実施態様の詳細な説明〕
図1のブロック図は、パーソナルコンピュータ20のユーザを、紙と文書の電子表現との間で容易に移動することができるようにする多機能装置22を示す。多機能装置22は、文書が用紙に転写されている間に、文書の質も改善する。多機能装置22は、本発明のテキスト/画像分割の方法を用いてそれを行う。テキスト/画像分割とテキストの本発明の方法によれば、ハイライトは一度に一つの走査線だけ実行される。
【0007】
I.システム概観
本発明の方法のより詳細な議論の前に、本発明の方法を動作させようとする環境を考える。多機能装置22は、文書をプリントしたり文書をコピーしたりするだけでなく、ファクシミリ文書を送信したり受信したりする。多機能装置22は、多機能制御装置24、ファックスモデム26、プリンタ28、および、スキャナ30により、これらのタスクを実行する。図示されていないが、多機能装置22は、陰極線管(CRT)のような追加のディスプレイ装置を含んでもよい。多機能制御装置24は、多機能オペレーティングシステム32を用いる入力/出力装置26,28、および、30の動作と協働を制御する。多機能オペレーティングシステム32は、適切な命令シーケンスを選択し、それは、実行のためにプロセッサ34へ送られる。多機能オペレーティングシステム32は、記憶装置の中に格納されたソフトウェアとして実現することができる。好適には、多機能オペレーティングシステム32を実現するのに使用されるのは、Microsoft at Work(商標)である。
【0008】
ファックスモデム26、スキャナ30、プリンタ28、ネットワークポート21、多機能制御装置24は、それらが取り扱う文書を、走査線信号を使用して表す。スキャナ30は、プリンタ28が走査線信号を使用して記録媒体の上に画像を記録する間、ハードコピー文書の上の画像から走査線信号を発生させる。ファックスモデム26と多機能制御装置24は、パーソナルコンピュータ20、ネットワークポート21、電話線、プリンタ28、または、スキャナ30から受信した走査線信号を使用して、電子媒体と紙の間の情報の移動を可能にする。
【0009】
多機能オペレーティングシステム32の機能性は、本発明の方法のプロセスを含んでいる追加のプロセスをコールすることによって強化される。これらのプロセスは、好適には、プロセッサ34によって実行され、メモリ36の中にオブジェクトコードの形態で格納された命令を使用して実現される。メモリ36は、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、プログラム可能な読み出し専用メモリ(PROM)、消去可能でプログラム可能な読み出し専用メモリ(EPROM)、電気的に消去可能でプログラム可能な読み出し専用メモリ(EEPROM)のような、及び、フラッシュメモリのような、ソリッドステート記憶装置を使用して実現することができる。
【0010】
テキスト/画像分割の本発明の方法は、多機能装置で使用することに限定されるものではない。この方法は、走査線信号を使用するメモリとプロセッサを含む任意の装置と連結して使用することもできる。このように、例えば、本発明の方法は、パーソナルコンピュータ20、ファックス装置の中で、或いは、複雑なコピー機械の中で実現することができる。
【0011】
前述したように、多機能制御装置24は、テキスト領域をハイライトすることにより、テキスト領域の視認性を改善する。多機能制御装置24は、周囲の走査線を参照することなく、一度に一つの走査線の割合でこのタスクを実行する。多機能制御装置24は、設定された特徴に関して各々の走査線信号を探索し、走査線信号の中のテキスト領域を画像領域から区別する。テキスト領域を画像領域から区別する走査線信号のこれらの特徴は、図2A、図2B、図2C、および、図2Dを参照して議論される。図2Aは、表現するのに何本かの走査線を必要とする小さいテキスト領域40を示す。線42は、テキスト領域40を横切る一つの走査線を表す。図2Bは、画素位置に対する走査線42を表す走査線信号についての強度値をグラフで示す。テキスト領域40の中のテキストの各々の文字は、2本の縁を含む。例えば、縁44そして46は、「T」とその背景の間のカラーの変化を表す。これに加えて、図2Bの中の隣接している縁は極性が異なる。例えば、図2Bを左から右に見ると、縁44の極性は下降し、縁46の極性は上昇し、縁48の極性は下降し、縁50の極性は上昇しており、以下同様である。図2Bは、各々の組の縁の間にメサという実質的に一定の強度値の領域も含む。例えば、メサ52は、縁44そして46の間に位置付けられる。テキストのテキスト文字の終わりは、縁なしの長距離部分によって記録される。これに対して、図2Dの特徴を考える。図2Cは、図2Dに示された画像領域60を横切る走査線62について画素位置に対する強度値をグラフで示す。画像領域60を表すためには、数本の走査線を必要とする。図2Cは、64,66,68および70のような縁を含む。隣接している縁の極性が常に異なっているとはかぎらない。例えば、図2Cのグラフを左から右に見ると、両方の縁64および66の極性は下降し、縁66及び68の極性は異なっており、両方の縁68および70の極性は上がっている。図2Cのグラフは、強度の変化が大きくないが、一定ではない縁の間の領域を含む。このように、所定の図2Bと図2Cのテキスト領域は、少なくとも3つの特徴を有する。第1に、テキスト領域は、少なくとも2本の縁によって境界をつけられる。第2に、テキスト領域の最後の縁は、縁或いは画素強度における大きな漸増がない長距離部分により示すことができる。第3に、縁が互い違いに変わるテキスト領域の中に、異なった極性を持っている。
【0012】
II.テキスト/画像分割の方法
図3の流れ図は、画像領域も含む走査線信号のテキスト領域を識別してハイライトするためのプロセッサ34によって使用されるプロセス80を示す。プロセス80は、メモリ36内にオブジェクトコードの形態で格納される。簡単に述べられたように、実行されたプロセス80が、入力走査線信号を、修正された走査線信号に変換したとき、そのテキスト領域は、表示されたときに、入力走査線のものに比べてハイライトされる。最初に、ステップ112の間、プロセッサ34は、第1のテキスト領域の可能性のある開始縁を探索する。ステップ114の間、プロセッサ34は、新しいテキスト領域について変数を初期化する。その後、ステップ116の間、プロセッサ34は、縁カウントをインクリメントし、ポインタをテキスト領域の終わりへ調整することにより、縁の発見に応答する。プロセッサ34は、ステップ118の間に別の縁の探索する。別の縁を見つけた後に、プロセッサ34は、ステップ120−124とステップ126−129かステップ134−138のどちらか一方の間、縁が丁度テキスト領域の部分に位置するかどうか決定する。すなわち、プロセッサ34は、発見されたばかりの縁にもっとも接近した隣接縁へ十分に接近しており、且つ、正しい極性であるかどうか、及び、縁間の間隔内の画素レベルの変化が許容可能であるかどうかを決定する。もしそうであれば、プロセッサはステップ116に戻り、そして、最新のテキスト領域の終縁を探索し続ける。最新のテキスト領域の終縁を識別した後に、ステップ132の間に、領域内の平均レベルとは異なるレベルの画素の値を変えることにより、領域内のテキストをハイライトする。プロセッサ34は、その後ステップ114に戻り、そして、走査線の全ての画素が検査されるまでテキスト縁を探索し続ける。
【0013】
A.開始縁の位置付け
概観に述べられたように、命令80は、プロセッサ34に、入力走査線によって定義された第1の縁を位置付けることを要求することによって始まる。プロセッサ34は、命令148を実行することによってステップ112の間にその第1の縁を位置付ける。プロセッサ34は、入力走査線の全ての他の縁を位置付けるために、命令148を同じく使用する。命令148は、メモリ36に、または、いくつかの他の機械の読みやすい媒体の中に格納することができる。命令148は、図4において流れ図の形態で示される。
【0014】
簡単にいうと、命令148を実行することによって縁を位置付ける努力は、画素レベルに何らかの変化が検出されるまで走査線を走査することから始まる。次に、プロセッサ34は、画素レベルが上昇しているか、下降しているかを決定する。プロセッサ34は、次いで、場合によるが、レベルが上昇或いは下降を停止するまで走査線の走査を続ける。もしこの時点で、最新の画素レベルが適切な境界の外側にあれば、次いで、プロセッサ34は縁が発見された可能性を調査する。もし画素レベルの変化が十分に鋭くて、且つ、十分に大きければ、プロセッサ34は、縁を発見したことになる。縁を位置付けると、プロセッサ34は適切なステップ、ステップ114またはステップ120の適当な方へ戻る。
【0015】
プロセッサ34は、多数の変数を初期化することによって、ステップ150の間に縁探索の準備を行う。プロセッサ34は、最新の画素位置へ初期化されたEdgeStartPosを使用して縁の開始位置を追跡する。プロセッサ34は、HighPosを使用して縁に沿った最高強度レベルの位置と、LowPosを使用して縁に沿った最低強度レベルの位置を追跡する。プロセッサ34は、HighPosとLowPosの両方を、最新の画素の位置へ初期化する。プロセッサ34は、HighLevelとLowLevelを使用して縁に沿った高レベル及び低レベルも追跡する。ステップ150の間、両方の変数は最新の画素レベルの値へ初期化される。これらの変数の初期化が完了すると、プロセッサ34は、ステップ150からステップ152に進む。
【0016】
ステップ152の間、プロセッサ34は、走査線の次の画素のレベルが最新の画素のレベルと異なるかどうかを決定する。プロセッサ34は、画素レベルの変化が検出されるまで、または、走査線の終わりに到達するまで、画素を走査し続ける。画素レベルの変化が走査線の終わりの前に検出されたときに命令148によって指示された動作を先ず考える。これに応答して、プロセッサ34はステップ154に進んで、ステップ152の間に発見された強度レベルの変化が、上昇であるか下降であるかを決定する。プロセッサ34は、これに続いて強度レベルが上昇であるか下降であるか、同様に反応する。ステップ156−163の記載は、議論されることはないステップ164−172により指示された低下する強度レベルへの応答も示す。縁が上昇していると決定されると、プロセッサ34は、ステップ154からステップ156に分岐する。ステップ156の間、プロセッサ34は、レベルが上昇を停止するまで走査線を走査し続ける。レベルがもはや上昇していないことが判ったとき、、或いは、走査線の最後の画素に到達したときに、プロセッサ34は、ステップ156からステップ158に分岐する。
【0017】
プロセッサ34は、ステップ158の間に、縁を位置付けたかどうかを決定するためのテストの第1のものを実行する。プロセッサ34は、ステップ158の間に、最新の画素のレベルをHighLevelと比較する。もし最新の画素のレベルがHighLevelより大きくなければ、プロセッサ34は、予期した上昇縁を発見しなかったことになる。これに応答して、ステップ158を抜け出し、ステップ152に戻って縁の探索を続ける。他方では、もし最新の画素のレベルが、HighLevelを越えれば、プロセッサ34はステップ160に進む。ステップ160の間に、プロセッサ34は、縁に沿った高レベルの発見を反映するために、上昇縁と関連づけられた値を調整する。すなわち、ステップ160の間に、プロセッサ34は、最新の画素のレベルに等しいHighLevelを設定し、最新の画素の位置に等しいHighPosを設定する。プロセッサ34は、次いで、ステップ160を抜け出しステップ162に進む。
【0018】
ステップ162で、プロセッサ34は、発見されたばかりのレベル増加が縁に必要とされる傾斜を満足するかどうかを決定する二つのテストの第1のものを実行する。縁の確認には、互いからMaxEdgeWidth以上離れて位置していない2つの画素の間の、少なくともMinEdgeHeightのレベルの差を必要とする。1つの実施態様では、MinEdgeHeightは64に設定され、MaxEdgeWidthは7に設定される。これは、過度に包括的に縁を定義している。すなわち、これらの値を使用して、プロセッサ34は、多くの非テキスト縁を識別することになる。その結果として、テキスト領域を確実に識別するために追加の基準を使用する必要がある。包括的でない縁定義を使用するときには、これらの他の基準は、テキスト領域を識別するためには必要とされない場合がある。縁定義は、特定の性能要求にを適合させることができる。
【0019】
ステップ162の間、プロセッサ34は、LowPosとHighPosの間の位置の差をMaxEdgeWidthと比較する。もし縁幅がMaxEdgeWidthより大きければ、プロセッサ34は、ステップ162からステップ163に進んで、縁の開始が余りにも早く定義された可能性を考慮する。ステップ163の間に、プロセッサ34は、EdgeStartPosを、最新の画素位置とMaxEdgeWidthの間の差に変更する。付加的に、プロセッサ34は、LowLevelとLowPosを、それらがEdgeStartPosの位置とレベルを表すように調整する。それが完了すると、プロセッサ34は、ステップ163からステップ174に進む。プロセッサ34は、縁幅がMaxEdgeWidth以下である時には、ステップ162から直接ステップ174に達する。プロセッサ34は、EdgeEndPosを最新の画素に等しく設定する。その後、プロセッサ34は、ステップ174からステップ176へ分岐する。
【0020】
ステップ176の間、プロセッサ34は第2の縁テストを実行する。プロセッサ34は、HighLevelとLowLevelの間の差をMinEdgeHeightと比較することによって、縁レベルの変化が十分であるかどうかを決定する。もし差がMinEdgeHeight以下ならば、検出されたレベルの変化は縁を表さない。これに応答して、プロセッサ34はステップ152へ戻り、縁を検索し続ける。他方では、もし縁のレベルの差がMinEdgeHeightを越えれば、プロセッサ34はステップ178に進み、これにより、命令80の適切なステップに戻る。
【0021】
命令148の一つの特徴、すなわち、走査線の最後の画素へ到達したときの応答が、これから議論される。プロセッサ34は、ステップ152、156、または、164の間に最後の画素を発見するかもしれない。もし最後の画素に到着する前にステップ152の間にレベルの変化が発見されなければ、縁は見つからなかったことになり、プロセッサ34はステップ180に進む。プロセッサ34は、縁が見つけられなかったこと指示し、178へ分岐し、ステップ112または118の適切な方に戻る。これに対して、もし最後の画素が、ステップ156または164の間で走査している間に検索されたときには、特別な動作は必要でない。例えば、もし検査すべき画素が残っていないことがステップ156の間に発見されたら、プロセッサ34は、レベルの上昇が停止したように応答し、ステップ158に進む。次いで、プロセッサ34は、ステップ178に到達するまで前述した方法で命令を実行し、ステップ112または118のいずれかに戻らせる。
【0022】
B.テキスト領域の終縁の位置付け
第1の可能性のあるテキスト領域の探索を始める時に、プロセッサ34はステップ112からステップ114へ分岐する。ステップ114で、プロセッサ34は変数を初期化することによって、探索の準備をする。最初に、プロセッサ34は縁カウンタEdgeCountをゼロに初期化する。またプロセッサ34は、テキスト開始位置TextStartPosを、新しいテキスト領域の開始縁位置EdgeStartPosへ設定する。次いで、プロセッサ34は、ステップ116へ進む。プロセッサ34は、ステップ116の間に他の変数を調整して、最近発見された縁を反映させる。プロセッサ34は、EdgeCountをインクリメントし、テキスト終了位置TextEndPosを、発見したばかりの縁の終わり、すなわち、EdgeEndPosに等しく設定する。その結果として、今やテキスト領域は、検出された最初の縁の開始位置から、発見された最後の縁まで拡張される。これが完了すると、プロセッサ34はステップ118に進む。
【0023】
プロセッサの34は、詳細に前に議論された命令148を実行することにより、ステップ118の間に、別の縁を探索する。それが別の縁を発見すると、プロセッサ34は、ステップ118からステップ120に進む。
【0024】
ステップ120で、プロセッサ34は、縁の許容度の2つの、すなわち縁ギャップとギャップレベルのテストを実行する準備をする。テキスト領域の中では、隣接している縁が互いの近くに位置付けられる傾向があるので、隣接している縁の間の間隔が調べられる。このように、もしそれが前の縁から非常に遠く位置付けられていれば、縁はテキスト領域の部分である見込みがない。隣接している縁の間の距離よりも非常に大きく選択されている距離MaxEdgeSpacingは、ディザリングにより大きく影響されることになる最大のフォントサイズに依存する設計上の選択事項である。テキスト領域の中では、レベルが実質的に一定のままである傾向があるので、縁ギャップの中のレベルが調べられる。縁ギャップの中の強度レベルの大幅な変化は、分析される走査線の一部がもはやテキスト領域を表さないことを示す。好適な実施態様においては、発見された最後の縁のメジアンのレベルMedianLevelが、縁ギャップの中のレベルの変化が大きすぎることを識別するために使用される。
【0025】
プロセッサ34は、MedianLevelと縁ギャップEdgeGapを計算することにより、ステップ120の間に縁ギャップとギャップレベルの双方について準備する。好適には、プロセッサ34は、下記式に従ってメジアンの強度レベルを計算する。
【0026】
MedianLevel=(HighLevel+LowLevel)/2
【0027】
ここで、MedianLevelは、最も最近に発見された縁のメジアンの強度である。
【0028】
好適には、縁ギャップは下記式を使用して計算される。
【0029】
EdgeGap=EdgeStartPos−TextEndPos
【0030】
EdgeGapとMedianLevelが計算されると、プロセッサ34はステップ120からステップ122に分岐する。
【0031】
ステップ122の間、プロセッサ34は、EdgeGapがMaxEdgeSpacingを越えるかどうかを決定することによって、縁ギャップテストを実行する。もし越えていれば、その時点ではそのようには認識されなかったけれども、最新のテキスト領域の終縁は既に発見されたとになる。プロセッサ34は、ステップ122からステップ130に分岐することによってこの状況に応答するステップ130の間の動作の説明は後述する。他方では、もしEdgeGapがあまり大きくなければ、発見されたばかりの縁は許容することができる。この可能性を調査するために、プロセッサ34は、ステップ122からステップ124へ分岐する。
【0032】
ステップ124の間、プロセッサ34は、位置付けたばかりの縁が上昇縁か下降縁であるかを決定する。上昇縁と下降縁に応答して指示された動作は類似しており、従って、ステップ126、128、そして129の説明は、同じくステップ134、136、そして138の動作を説明するのにも役に立つ。ステップ124と126の間、プロセッサ34は、発見されたばかりの縁の極性が前に発見された縁のものとは異なるかどうかを決定する。そうでなければ、発見されたばかりの縁は、最新のテキスト領域の部分ではない。なぜなら、テキスト領域の中では縁の極性は、交互に変化するからである。これに応答して、プロセッサ34は、ステップ126からステップ130に進む。ステップ130の議論は後で行われる。他方では、もし発見されたばかりの縁の極性が最新のテキスト領域と一致すれば、プロセッサ34はステップ126からステップ128へ分岐する。
【0033】
ステップ128の間、ギャップレベルテストを見越して、プロセッサ34は縁ギャップの中の最大値レベルMaxLevelを決定する。その後、ステップ129の間、プロセッサ34は、MaxLevelをMedianLevelと比較することによって、ギャップレベルテストを実行する。プロセッサ34は、もしMaxLevelがMedianLevelを越えなければ、発見されたばかりの縁が、最新のテキスト領域の部分であると見做す。これに応答して、プロセッサ34はステップ129からステップ116に分岐し、最新のテキスト領域と関係した縁を探索し続ける。これに対して、もしMedianLevelがMaxLevelを越えれば、発見されたばかりの縁は、最新のテキスト領域の部分ではない。これは、プロセッサ34が、最新のテキスト領域の最後の縁を既に発見し、多分、他のテキスト領域の最初の縁を発見したことを意味する。プロセッサ34は、ステップ129を抜け出てステップ130へ分岐することにより、この状況に応答する。
【0034】
発見されたばかりの縁が最新のテキスト領域の部分ではないことが決定された場合には、ステップ122、126、129、134、または、138の間にどのような決定がなされたかには無関係に、プロセッサ34はステップ130に進む。ステップ130の間、プロセッサ34は、発見されたばかりの縁の組が、テキスト領域を形成するかどうかを決定する。もし縁の組が、MinEdgesと名付けられた最小数の縁よりも小さい場合には、プロセッサ34は、テキスト領域を発見しなかったことになる。MinEdgesに設定される値は、設計事項である。好適な実施態様においては、ハイライトされた各々のテキスト領域が少なくとも2本の縁を含むことを確実にするために、MinEdgesは2に設定される。プロセッサ34は、ステップ130からステップ114に戻ることによって、2本以下の縁の発見に応答し、別のテキスト領域を探索し始める。これに対して、発見されたばかりの縁の組がMinEdges以上を含んでいるときには、プロセッサ34は、テキスト領域を位置付けた。プロセッサ34は、ステップ130からステップ132に進み、そのテキスト領域をハイライトして注意を引く。
【0035】
C.テキスト領域のハイライト
プロセッサ34は、ステップ132の間に発見されたばかりのテキスト領域をハイライトする。最初に、プロセッサ34は、発見されたばかりのテキスト領域の、PelAvgと名付けられた平均画素強度を計算する。プロセッサ34は、平均画素強度を使用して、走査線の画素毎の新しい強度値を計算する。プロセッサ34は、既に平均画素値より暗い画素がより暗くなり、既に平均画素レベルより明るい画素が更に明るくなるように、各々の画素の値を修正する。好適には、NewValueと名付けられた画素毎の新しい値は、数学的に以下のように表現される。
【0036】
NewValue=PelAvg+N*(OldValue−PelAvg)
ここで、
OldValueは、強調前の画素の強度値であり、
Nは、定数である。
【0037】
Nは視覚的に満足な画像を生成する任意の値とすることができる。好適な実施態様においては、Nは2に等しく設定される。
【0038】
好適には、プロセッサ34は、NewValueを最大255と最小0にクランプする。NewValueの計算後に、プロセッサ34は、ステップ132に抜け出し、ステップ114へ戻って、別のテキスト領域を捜す。
【0039】
D.走査線の終わりに対する応答
ステップ112そして118の間の、縁の探索期間中に、幾つかの点に走査線の最後の画素が到達する。先に議論されたように、もしステップ152の間に到達したら、これは命令148に、縁が見つからなかったというメッセージを返させる。もしプロセッサ34が、ステップ112の間にこのメッセージを受信した場合には、これ以上の動作は不要である。なぜなら、テキスト領域が必要としている最小の数を見つけることが出来なかったからである。従って、プロセッサ34は、単純にステップ112からステップ144に分岐し、これにより、命令80の実行を開始させたプログラムに戻す。もし縁が見つからなかったというメッセージがステップ118の間に返された場合には、状況は異なる。少なくとも一つの縁が以前に発見され、テキスト領域を形成するため必要とされる最小数の縁が見つかったかも知れないという可能性が存在する。これに応答して、プロセッサ34は、ステップ118からステップ140に進む。ステップ140の間、プロセッサ34は、最小数の縁が発見されたかどうかを決定する。もしそうであれば、プロセッサ34は、ステップ142へ分岐し、ステップ132に関して前に議論された同じ方法でTextStartPosとEdgeEndPosの間で画素値を修正する。これが完了すると、プロセッサ34はステップ144へ分岐する。走査線の分析と修正が完了すると、プロセッサ34は、選択された装置20,21,26または28に、命令80の実行期間中に計算された全ての新しい画素レベルを含む修正された走査線を結合する。
【0040】
IV.概要
このように走査線信号の画像領域とテキスト領域を区別して、テキスト領域をハイライトする方法が説明された。この方法は、走査線信号の中の縁の組を識別することによって始まる。次に、縁の組がテキスト領域の境界を表すかどうかが決定される。もしそうであれば、次いで、平均画素強度値がテキスト領域について計算される。その後、値が平均と異なるテキスト領域の中のこれらの画素の強度は修正されて、修正された走査線信号が生成される。その結果として、修正された走査線信号が走査線を再現するために使用されるとき、テキストがハイライトされる。
【0041】
前述した明細書においては、本発明は特定の例示的な実施態様に関して説明された。しかしながら、特許請求の範囲に記載された発明の広範な精神及び範囲から離れることなく、様々な修正及び変更を成しえることは明らかである。したがって、明細書及び図面は、制限的に解釈されるものではなく、例示として見做される。
【図面の簡単な説明】
【図1】 テキスト/画像分割を行なう本発明の方法を行なう多機能装置のブロック図である。
【図2】 図2Aは、テキスト領域とこれを横切る走査線を示す。図2Bは、図2Aのテキスト領域を横切る走査線に関しての画素位置対画素強度のグラフである。図2Cは、図2Dの画像領域を横切る走査線に関しての画素位置対画素強度のグラフである。図2Dは、画像領域とこれを横切る走査線を示す。
【図3】 画像領域を含む走査線の中でテキスト領域を識別してハイライトする方法の流れ図である。
【図4】 縁を位置付ける方法の流れ図である。
【符号の説明】
21 ネットワークポート
22 多機能装置
24 多機能制御装置
26 ファックスモデム
28 プリンタ
30 スキャナ
32 多機能オペレーティングシステム
34 プロセッサ
36 メモリ
44,46,48,50,64,66,68,70 縁
52 メサ
58 長距離部分
60 画像領域
62 走査線
Claims (2)
- 画像領域を含む一つの走査線信号の中でテキスト領域をハイライトする方法であって、
プロセッサに連結されたメモリ内に格納された命令を実行するプロセッサを使用し、走査線信号は複数の画素を含み、各々の画素は強度を示す値を有し、プロセッサは走査線信号を再現するための再現装置に連結され、
a)走査線信号の画素の値によって表現された開始縁を識別し、
b)次の縁が、最も近い以前に発見された縁の所定の距離の中に位置するかどうかを決定し、
c)もし次の縁が最も近い以前に発見された縁の所定の距離の中に位置する場合には、
1)次の縁の極性を最も近い以前に発見された縁の極性と比較し、
2)もし次の縁の極性が最も近い以前に発見された縁の極性と異なる場合には、ステップc)を繰り返し、
d)ステップc)の間に識別された開始縁と次の縁がテキスト領域を形成するかどうかを決定し、
e)ステップc)の間に識別された開始縁と次の縁がテキスト領域を形成する場合には、
1)テキスト領域の中の画素毎に平均強度値を計算し、
2)平均強度値とは異なる値を有するテキスト領域の中に位置する画素の値を変更して修正された走査線信号を生成する
プロセッサにより実行される各ステップからなる方法。 - ステップd)が、ステップc)の間に識別された縁の数が少なくとも3であるかどうかを決定することを含む請求項1に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/432,215 US5745596A (en) | 1995-05-01 | 1995-05-01 | Method and apparatus for performing text/image segmentation |
US432215 | 1995-05-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08307665A JPH08307665A (ja) | 1996-11-22 |
JP3857746B2 true JP3857746B2 (ja) | 2006-12-13 |
Family
ID=23715229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10578496A Expired - Fee Related JP3857746B2 (ja) | 1995-05-01 | 1996-04-25 | テキスト領域をハイライトする方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5745596A (ja) |
EP (1) | EP0741487B1 (ja) |
JP (1) | JP3857746B2 (ja) |
DE (1) | DE69618068T2 (ja) |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5946420A (en) * | 1996-05-10 | 1999-08-31 | Hewlett-Packard Company | Printing with text enhancement: recognition by sensing paired edges, or by disqualification in pictorial regions |
US5987448A (en) * | 1997-07-25 | 1999-11-16 | Claritech Corporation | Methodology for displaying search results using character recognition |
GB9727322D0 (en) | 1997-12-29 | 1998-02-25 | Xerox Corp | Multilingual information retrieval |
JP2000138833A (ja) * | 1998-08-28 | 2000-05-16 | Toshiba Tec Corp | 画像処理方法及び画像処理装置 |
US6711292B2 (en) | 1998-12-30 | 2004-03-23 | Canon Kabushiki Kaisha | Block selection of table features |
US6681047B1 (en) * | 1999-05-31 | 2004-01-20 | Ricoh Co., Ltd. | Method and system for determining character edges based upon edges pair and image characteristics of pixels between the edge pair |
US6976223B1 (en) * | 1999-10-04 | 2005-12-13 | Xerox Corporation | Method and system to establish dedicated interfaces for the manipulation of segmented images |
KR20020027332A (ko) * | 2000-03-31 | 2002-04-13 | 요트.게.아. 롤페즈 | 텍스트 검출 |
US6633670B1 (en) | 2000-03-31 | 2003-10-14 | Sharp Laboratories Of America, Inc. | Mask generation for multi-layer image decomposition |
US6704449B1 (en) * | 2000-10-19 | 2004-03-09 | The United States Of America As Represented By The National Security Agency | Method of extracting text from graphical images |
US7043080B1 (en) | 2000-11-21 | 2006-05-09 | Sharp Laboratories Of America, Inc. | Methods and systems for text detection in mixed-context documents using local geometric signatures |
US8438004B2 (en) * | 2001-10-03 | 2013-05-07 | Hewlett-Packard Development Company L.P. | System and methods for language translation printing |
US7356183B2 (en) * | 2002-07-01 | 2008-04-08 | Xerox Corporation | Segmentation method and system for multiple raster content (MRC) representation of documents |
US7382489B2 (en) * | 2002-07-01 | 2008-06-03 | Xerox Corporation | Efficient interpolation technique using programmable node spacing |
US7433084B2 (en) * | 2002-07-01 | 2008-10-07 | Xerox Corporation | Digital de-screening technique for scanned documents |
US7324120B2 (en) * | 2002-07-01 | 2008-01-29 | Xerox Corporation | Segmentation method and system for scanned documents |
US6987882B2 (en) * | 2002-07-01 | 2006-01-17 | Xerox Corporation | Separation system for Multiple Raster Content (MRC) representation of documents |
US7456982B2 (en) * | 2002-07-01 | 2008-11-25 | Xerox Corporation | Segmentation method and system for multiple raster content (MRC) representation of documents |
US7269294B2 (en) * | 2002-07-01 | 2007-09-11 | Xerox Corporation | Foreground erosion method and system for Multiple Raster Content (MRC) representation of documents |
US7308136B2 (en) * | 2002-07-01 | 2007-12-11 | Xerox Corporation | Weak edge repositioning in a MRC segmentor |
US6983076B2 (en) | 2002-07-01 | 2006-01-03 | Xerox Corporation | Control system for digital de-screening of documents |
US7031518B2 (en) * | 2002-07-01 | 2006-04-18 | Xerox Corporation | Segmentation method and system for Multiple Raster Content (MRC) representation of documents |
US7233695B2 (en) * | 2002-07-01 | 2007-06-19 | Xerox Corporation | Scan color conversion method |
US7236641B2 (en) * | 2002-07-01 | 2007-06-26 | Xerox Corporation | Page background detection and neutrality on scanned documents |
US7242802B2 (en) * | 2002-07-01 | 2007-07-10 | Xerox Corporation | Segmentation method and system for Multiple Raster Content (MRC) representation of documents |
US7375856B2 (en) * | 2002-07-01 | 2008-05-20 | Xerox Corporation | Halftone screen frequency and magnitude estimation for digital descreening of documents |
US7218418B2 (en) * | 2002-07-01 | 2007-05-15 | Xerox Corporation | Digital de-screening of documents |
US7227988B2 (en) * | 2002-07-01 | 2007-06-05 | Xerox Corporation | Prioritized PDL segmentation producing two bit selector |
US7200263B2 (en) * | 2002-07-01 | 2007-04-03 | Xerox Corporation | Background suppression and color adjustment method |
US8261184B2 (en) * | 2002-08-02 | 2012-09-04 | Ignatius Xavier Haase | Apparatus and method for encoding and displaying documents |
US20040096102A1 (en) * | 2002-11-18 | 2004-05-20 | Xerox Corporation | Methodology for scanned color document segmentation |
JP4538214B2 (ja) * | 2002-11-22 | 2010-09-08 | オセ−テクノロジーズ・ベー・ヴエー | グラフによる画像分割 |
US20040150858A1 (en) * | 2003-01-31 | 2004-08-05 | Cholewo Tomasz J. | Method, apparatus and system for image data correction |
US7532363B2 (en) * | 2003-07-01 | 2009-05-12 | Xerox Corporation | Apparatus and methods for de-screening scanned documents |
US7116374B2 (en) * | 2003-08-26 | 2006-10-03 | Koplar Interactive Systems International, L.L.C. | Method and system for enhanced modulation of video signals |
US7433535B2 (en) * | 2003-09-30 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | Enhancing text-like edges in digital images |
US7302116B2 (en) * | 2004-02-12 | 2007-11-27 | Xerox Corporation | Method and apparatus for reduced size image |
US7386166B2 (en) * | 2004-02-12 | 2008-06-10 | Xerox Corporation | Systems and methods for connecting regions image data having similar characteristics |
US7365882B2 (en) * | 2004-02-12 | 2008-04-29 | Xerox Corporation | Halftone screen frequency and magnitude estimation for digital descreening of documents |
US7366746B2 (en) * | 2004-02-12 | 2008-04-29 | Xerox Corporation | Finite impulse response filter method and apparatus |
US7379587B2 (en) * | 2004-02-12 | 2008-05-27 | Xerox Corporation | Systems and methods for identifying regions within an image having similar continuity values |
US7403661B2 (en) * | 2004-02-12 | 2008-07-22 | Xerox Corporation | Systems and methods for generating high compression image data files having multiple foreground planes |
US7366357B2 (en) * | 2004-02-12 | 2008-04-29 | Xerox Corporation | Systems and methods for adjusting image data to form highly compressible image planes |
US7343046B2 (en) * | 2004-02-12 | 2008-03-11 | Xerox Corporation | Systems and methods for organizing image data into regions |
US7664175B1 (en) | 2004-06-16 | 2010-02-16 | Koplar Interactive Systems International, L.L.C. | Mark-based content modulation and detection |
US7729546B2 (en) * | 2005-12-23 | 2010-06-01 | Lexmark International, Inc. | Document segmentation for mixed raster content representation |
US8798133B2 (en) * | 2007-11-29 | 2014-08-05 | Koplar Interactive Systems International L.L.C. | Dual channel encoding and detection |
US8339672B2 (en) * | 2009-03-30 | 2012-12-25 | Sharp Laboratories Of America, Inc. | Methods and systems for rendering data using graphic-list partitions and associated rendering processors |
US8339670B2 (en) * | 2009-03-30 | 2012-12-25 | Sharp Laboratories Of America, Inc. | Methods and systems for rendering data based on graphic-list partitioning |
US8339671B2 (en) * | 2009-03-30 | 2012-12-25 | Sharp Laboratories Of America, Inc. | Methods and systems for rendering data by partitioning a graphics list |
US8411319B2 (en) * | 2009-03-30 | 2013-04-02 | Sharp Laboratories Of America, Inc. | Methods and systems for concurrent rendering of graphic-list elements |
US20100245918A1 (en) * | 2009-03-30 | 2010-09-30 | Nguyen Uoc H | Methods and Systems for Rendering Data |
US20100245889A1 (en) * | 2009-03-30 | 2010-09-30 | Nguyen Uoc H | Methods and Systems for Rendering Data |
US8339653B2 (en) * | 2009-03-30 | 2012-12-25 | Sharp Laboratories Of America, Inc. | Methods and systems for rendering data based on overlap characteristics |
US20110026816A1 (en) * | 2009-07-29 | 2011-02-03 | Vaughn Robert L | Rapid image categorization |
US8345998B2 (en) | 2010-08-10 | 2013-01-01 | Xerox Corporation | Compression scheme selection based on image data type and user selections |
US9058539B2 (en) | 2013-04-16 | 2015-06-16 | Canon Kabushiki Kaisha | Systems and methods for quantifying graphics or text in an image |
US20140314314A1 (en) * | 2013-04-23 | 2014-10-23 | Canon Kabushiki Kaisha | Systems and methods for quantifying graphics or text in an image |
BR112016006860B8 (pt) | 2013-09-13 | 2023-01-10 | Arris Entpr Inc | Aparelho e método para criar um único fluxo de dados de informações combinadas para renderização em um dispositivo de computação do cliente |
US9445108B1 (en) | 2015-05-26 | 2016-09-13 | International Business Machines Corporation | Document compression with neighborhood biased pixel labeling |
WO2018208638A1 (en) * | 2017-05-07 | 2018-11-15 | Invexer Technology Inc. | A method of rendering visual presentations of data |
US11455762B2 (en) * | 2017-12-14 | 2022-09-27 | Adobe Inc. | Text border tool and enhanced corner options for background shading |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3107521A1 (de) * | 1981-02-27 | 1982-09-16 | Siemens AG, 1000 Berlin und 8000 München | Verfahren zum automatischen erkennen von bild- und text- oder graphikbereichen auf druckvorlagen |
DE3107655A1 (de) * | 1981-02-27 | 1982-09-16 | Siemens AG, 1000 Berlin und 8000 München | Verfahren zum auffinden und abgrenzen von textbereichen auf einer vorlage, die text-, graphik- und/oder bildbereiche enthalten kann |
US4562594A (en) * | 1983-09-29 | 1985-12-31 | International Business Machines Corp. (Ibm) | Method and apparatus for segmenting character images |
GB2153619B (en) * | 1983-12-26 | 1988-01-20 | Canon Kk | Image processing apparatus |
US5081689A (en) * | 1989-03-27 | 1992-01-14 | Hughes Aircraft Company | Apparatus and method for extracting edges and lines |
US5138465A (en) * | 1989-09-14 | 1992-08-11 | Eastman Kodak Company | Method and apparatus for highlighting nested information areas for selective editing |
US5202933A (en) * | 1989-12-08 | 1993-04-13 | Xerox Corporation | Segmentation of text and graphics |
US5131049A (en) * | 1989-12-08 | 1992-07-14 | Xerox Corporation | Identification, characterization, and segmentation of halftone or stippled regions of binary images by growing a seed to a clipping mask |
JPH04271662A (ja) * | 1991-02-27 | 1992-09-28 | Nec Corp | 画像領域判定装置 |
JP2616386B2 (ja) * | 1993-06-21 | 1997-06-04 | 日本電気株式会社 | 画像処理装置 |
DE69518467T2 (de) * | 1994-06-03 | 2001-01-04 | Riso Kagaku Corp | Bildverarbeitungsgerät |
-
1995
- 1995-05-01 US US08/432,215 patent/US5745596A/en not_active Expired - Lifetime
-
1996
- 1996-04-25 JP JP10578496A patent/JP3857746B2/ja not_active Expired - Fee Related
- 1996-05-01 DE DE69618068T patent/DE69618068T2/de not_active Expired - Lifetime
- 1996-05-01 EP EP96303093A patent/EP0741487B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP0741487A3 (en) | 1998-02-04 |
DE69618068T2 (de) | 2002-07-11 |
JPH08307665A (ja) | 1996-11-22 |
DE69618068D1 (de) | 2002-01-31 |
US5745596A (en) | 1998-04-28 |
EP0741487A2 (en) | 1996-11-06 |
EP0741487B1 (en) | 2001-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3857746B2 (ja) | テキスト領域をハイライトする方法 | |
US6151426A (en) | Click and select user interface for document scanning | |
US7330600B2 (en) | Image processing device estimating black character color and ground color according to character-area pixels classified into two classes | |
US20020081040A1 (en) | Image editing with block selection | |
JPH0675962A (ja) | 空マルチメディアデータオブジェクトの自動検出/処理方法及び装置 | |
GB2419252A (en) | Determining optimal resolutions for zones of an imaged object | |
US6807301B1 (en) | Image production controlling device, image producing device, image production controlling method, and a storage medium | |
JPH06130513A (ja) | フィルム形式を識別する方法 | |
JP3772262B2 (ja) | 画像の型を識別する方法 | |
US6813382B2 (en) | Image outline determination method, image outline determination apparatus, image outline determination program storage medium, image input apparatus and image input program storage medium | |
US6583897B1 (en) | Non-local approach to resolution enhancement | |
EP0991265A2 (en) | User interface high-lighter function to provide directed input for image processing | |
JP4761217B2 (ja) | 画像処理装置、画像形成装置、画像形成システム、および画像処理プログラム | |
US20230224421A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP3359377B2 (ja) | バックグラウンド濃度検出装置 | |
US5682250A (en) | Method and apparatus for reproducing an image without salt and pepper specks | |
JPH0490083A (ja) | 文字認識装置 | |
JP5825142B2 (ja) | 画像処理装置、画像処理方法およびコンピュータープログラム | |
JPH07334675A (ja) | 絵柄切り抜き方法および装置 | |
JP2004145634A (ja) | 画像処理装置及び画像処理方法 | |
JP2001078016A (ja) | 画像処理装置 | |
JPH0918702A (ja) | 画像処理装置及び方法 | |
JP2001052186A (ja) | 文字部検出方法および画像処理装置 | |
JP2009005400A (ja) | 画像処理装置及び画像処理方法 | |
JPH07273995A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060224 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060517 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060818 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060915 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110922 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130922 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |