JP3876531B2 - 文書画像の傾き補正方法 - Google Patents
文書画像の傾き補正方法 Download PDFInfo
- Publication number
- JP3876531B2 JP3876531B2 JP14782298A JP14782298A JP3876531B2 JP 3876531 B2 JP3876531 B2 JP 3876531B2 JP 14782298 A JP14782298 A JP 14782298A JP 14782298 A JP14782298 A JP 14782298A JP 3876531 B2 JP3876531 B2 JP 3876531B2
- Authority
- JP
- Japan
- Prior art keywords
- document image
- inclination
- image
- inclination angle
- correction method
- 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
- 238000000034 method Methods 0.000 title claims description 63
- 238000012937 correction Methods 0.000 title claims description 11
- 239000000284 extract Substances 0.000 claims description 2
- 238000003702 image correction Methods 0.000 claims 8
- 239000000470 constituent Substances 0.000 claims 1
- 238000012545 processing Methods 0.000 description 15
- 238000001514 detection method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000000605 extraction Methods 0.000 description 4
- 206010034719 Personality change Diseases 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
- G06T3/608—Rotation of whole images or parts thereof by skew deformation, e.g. two-pass or three-pass rotation
-
- 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/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/3877—Image rotation
- H04N1/3878—Skew detection or correction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Facsimile Scanning Arrangements (AREA)
- Editing Of Facsimile Originals (AREA)
- Character Input (AREA)
Description
【発明の属する技術分野】
本発明は、イメージスキャナなどの画像入力装置から入力された画像(特に文書画像)の傾きを補正する文書画像の傾き補正方法に関する。
【0002】
【従来の技術】
従来より、文書画像を入力するための装置として、イメージスキャナが利用されている。これまでのイメージスキャナとしては、据え置き型のいわゆるフラットベッド型のスキャナが使用されているが、近年持ち運びが容易で手動で操作される小型のハンドヘルドスキャナの開発・製品化が進んでいる。
【0003】
このようなハンドヘルドスキャナでは特に、利用者の操作の仕方によって文書画像が傾いて入力される可能性が非常に高い。理想的には、スキャナの操作方向が文書の向きに対して平行あるいは垂直であることが望ましい。この場合には、入力される文書画像は傾かないはずである。
しかし、ハンドヘルドスキャナでは操作者の操作の自由度が高いため、文書の向きに対してスキャナを傾けて読取が行われる可能性が非常に高い。これは、利用者が意識する、しないに関わらない。そして、スキャナが文書に対して斜め方向に操作された場合、文書画像も斜めに入力されることとなる。
【0004】
このような問題点を解決するための従来技術として、以下のようなものが存在する。
特開昭63−180180号公報に開示される発明では、文書画像の文書部分に外接する矩形の各辺を、読み取られた文書画像に基づいて直線近似により求める技術が開示される。そして、求められた直線(辺)と画像の外郭との角度を求め、これを文書画像の傾きとしている。
【0005】
特開平7−192086号公報には、画像上の黒画素と白画素との境界となる点を複数個読み取られた文書画像から抽出し、これらの抽出された回帰直線を求める技術が開示される。文書画像の傾き角度は、求められた回帰直線の回帰計数の値から求めることができる。
特開平7−282195号公報には、入力された文書画像の各ライン毎に、黒画素の個数をルイ的した投影プロフィールを作成する技術が開示される。傾き角度は、作成された投影プロフィールの分散値により求めることができる。
【0006】
これらの技術はそして、算出された文書の傾き角度に基づいて、この傾きを打ち消す方向に入力された文書画像を回転させることにより、文書の傾きを補正している。
【0007】
【発明が解決しようとする課題】
しかし、これらの技術では以下のような問題が出てくる。
例えば、スキャナで文書の一部分をスキャンした場合などは、スキャンされた画像全体に文字が存在することとなる。特にハンドヘルドスキャナの場合には、装置の小型化を図っているため、一度に読取ができる範囲が狭く、文書の一部分しか読取ができないといった事態が発生する可能性は非常に高い。このような場合、画像中の文書部分に外接する矩形領域は読み取られた画像の外郭と同じになる。そのため、特開昭63−180180号公報に開示された技術では、このような読取が行われた場合には、文書に外接する矩形の各辺と画像の外郭の角度に基づいて文書画像の傾き画像を求めることはできない。
【0008】
一方、文書画像が文字のみから構成されてはおらず、線画や写真等の図が存在する場合、図の画像部分の黒画素と白画素との境界は直線的にはならない。従って、この境界の回帰直線の傾き角度は文書画像の傾き角度を示していない。そのため、画像部分の白画素と黒画素の境界点の回帰直線の傾きに基づいて文書画像の傾きを算出する特開平7−192086号公報に開示される技術では、このような図が混在している場合には、誤った傾き角度を算出してしまう可能性が非常に高くなる。
【0009】
また、図を含んでいる文書画像の投影プロフィールを作成して文書の傾き角度を算出する場合、文書画像(文字部分)と濃さの異なる図面が存在すると、この図を含んだ全体的な投影プロフィールの分布は文書画像の投影プロフィールとは異なることが予想される。そのため、特開平7−282195号公報に開示される技術では、このような問題に対処することができない。
【0010】
本発明はこのような問題に鑑み、文書画像の一部分や、図を含む文書画像であっても、文書の傾き角度を高い精度で検出できる文書画像の傾き検出方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
上記した目的を達成するために、本発明は、文書画像の傾きを検出して、これに基づいて文書画像の傾きを補正する文書画像の傾き補正方法において、入力された文書画像を、所定の幅を有する領域に分割し、分割された領域から、黒画素が存在するラインを検出し、検出された黒画素を含むラインが連続している領域を、部分画像として抽出し、前記部分画像の傾き角度を検出し、 検出された部分画像の傾き角度に基づいて、前記文書画像の傾き角度を判別し、前記判別された文書画像の傾き角度により、前記入力された文書画像の傾きを補正する文書画像の補正方法であることを特徴とする。
【0012】
更には、本発明は、前記部分画像に対して座標軸を設定して、部分画像内に存在する黒画素の座標を直線近似し、近似直線の傾きを当該部分画像の傾きとすることを特徴とする。
更にまた、本発明は、前記部分画像内の画素数に対する黒画素数の割合を算出し、前記黒画素数が予め設定された範囲内にある部分画像について、当該部分画像の傾き角度を検出することを特徴とする。
【0013】
また、本発明は、前記部分画像の高さが予め設定された高さの範囲内にあるか否かを判別し、前記部分画像の高さが当該範囲内にあると判定された場合に、当該部分画像の傾き角度を検出することを特徴とする。
更に、本発明は、前記部分画像の中で、前記ライン方向に連続して黒画素が存在しない領域の幅を求め、前記黒画素が存在しない領域の幅と予め設定された幅とを比較し、前記比較の結果当該領域の幅が予め設定された幅よりも小さい場合のみ、当該部分画像の傾き角度を検出することを特徴とする。
【0014】
また、本発明は、複数の部分画像を抽出し、前記複数の部分画像のそれぞれについて傾き角度を算出し、前記検出された複数の傾き角度に基づいて当該文書画像の傾き角度を算出することを特徴とする。
更に、本発明は、前記複数の部分画像のそれぞれについて算出した傾き角度の符号毎に、傾き角度情報の個数を計数し、前記計数の結果数が多い符号を有する傾き角度情報に基づいて、当該文書画像の傾き角度を検出することを特徴とする。
【0015】
また、本発明は、前記複数の部分画像の傾き角度の平均値を求め、当該平均値を当該文書の傾き角度として決定することを特徴とする。
そして、本発明は、前記抽出された部分画像の対角線の角度を算出し、当該部分画像の傾き角度と前記対角線の角度とを比較し、前記部分画像の傾き角度が前記対角線の角度よりも小さい場合に、当該部分画像の傾き角度に基づいた文書画像の傾き角度を検出することを特徴とする。
【0016】
【実施の形態】
以下、図面を用いて本発明の実施形態について説明する。
図1は、イメージスキャナにより読み取られた文書画像の模式図であり、図中丸印で示されているのは一つの文字である。図1に図示された文書画像は横書きであり、一つの行が右上がりに傾いて入力されたものとする。
【0017】
ここで、傾いている文書画像内の文字が、文書画像の傾き角度と同じ傾きを持つ直線上に並んでいる、すなわち文書を構成する行の傾き角が文書画像の傾き角と同じであることが判る。本実施形態はこの点に着目し、文書画像の中から行の一部を部分画像として抽出、この部分画像の傾きを求めることによって文書画像の傾き角度を検出するという構成を採用したことを特徴とする。
【0018】
より具体的に説明すると、文書画像を所定の分割幅Wを持つ領域に分割する。ここで、図1の例では文書が横書きであるため、領域の分割方向は縦方向としている。この理由等については、詳細後述する。
次いで、分割幅Wを持つ領域の中から、黒画素を含むラインが連続する領域を検出する(この場合行方向)。そして、特定の条件を満たしている領域を、行の一部の画像であると判別し、図1の(b)に図示されるように部分画像として抽出する。なお、ここでは文字を構成する画素を「黒画素」と想定しており、実際の画素の色は問題にはしていない。従って、黒地に白い字で印刷されているような文書についても、文字の領域は「黒画素」であるものと考える。また、カラースキャナを用いて着色原稿を読み取った場合、RGBの三色に分解されて読み取られるが、この場合についても文字を構成する領域が「黒画素」であると考えることとする。
【0019】
抽出された部分画像の水平方向をx軸、垂直方向をy軸に取り、部分画像内の黒画素の座標を直線で近似する。そして、近似した直線の傾きmを算出する。近似直線mの傾きは、例えば黒画素の座標の回帰直線の傾きとして、次式により算出することができる。
ここで、Σはi=0からN−1までを加算することを意味するものとする。ただし、Nは部分画像内の黒画素の個数を、xi 及びyi はそれぞれi番目の黒画素のx座標とy座標である。
【0020】
そして、上記して求めた近似直線の傾きmから、この直線の傾き角度θを
θ=tan-1m ...(2)
の関係より求めることができるのである。
なお、利用する部分領域を一つのみとしてしまうと、直線近似の誤差等の影響を受けてしまい、正しい文書の傾きを求めることができなくなる可能性もある。そのため、複数の部分画像を抽出し、これらについてそれぞれ直線の傾きを求めるようにすることが望ましい。そして、全ての抽出された部分画像の傾き角度に基づいて、文書画像の傾きを算出するようにすれば、文書傾きの様子を高い精度で判別することができる。
【0021】
図2は、本実施形態による傾き角度検出の処理手順を示したフローチャートである。ここでは、全体的な処理の流れを示している。
まずスキャナ等から入力された文書画像をメモリ内に一旦格納する(S101)。続いて、入力され文書画像の分割幅Wを、設定されているスキャナの解像度等から決定する(S102)。
【0022】
文書画像を分割する幅Wは、図3に示された関係により算出する。分割幅をW、文書画像の行間の画素数をD、傾きを検出しようとする場合の最大角度をθ1 としたときに、次式
W×sinθ<D ...(3)
を満たすWを分割幅として選択する。
【0023】
例えばθとDを同一条件として、分割幅を図3に図示されるW’としようとした場合、上下の行の黒画素が連続して検出されてしまうこととなり、上下の行を水平方向には分割できなくなる。従って、上記の式により求められた分割幅Wで文書を分割することは、非常に重要なこととなる。
ここで、行間を同一とすれば、最大の検出角度を大きくしようとした場合、分割幅Wは小さくなる。しかし、分割幅Wが小さいと、傾きを検出するための直線の長さが短くなる。そのため、直線近似を行う上で、近似して求められた直線の傾きと実際の行の傾きとの誤差が大きくなってしまい、傾き検出の精度が低下する可能性がある。
【0024】
一方、分割幅Wを広く取れば、近似された直線の傾きと実際の行の傾きとの誤差が小さくなる。しかし、上下の行を分割できなくなる可能性があるため、分割幅Wをあまり大きくし過ぎると、検出できる傾きの最大角度が非常に小さくなってしまう可能性が出てくる。
ここで、手動操作のハンドヘルドスキャナを考慮した場合、文書と装置との傾きはほぼ10度以内の傾きとなると考えられる。そのため、上記した分割幅Wは、10度程度の傾きが検出できるように設定されれば、傾き検出の精度と、検出できる最大傾き角とのバランスがうまくとれるようになる。
【0025】
また、同一の文書画像を読み取った場合の行間の画素数は、スキャナ等の解像度により異なる。例えば、400dpiで読み取られた場合の行間の画素数は、200dpiで読み取られた場合の行間の画素数の2倍となる。そのため、上記した分割幅Wの大きさを設定する際には、スキャナの解像度を考慮する必要がある。
【0026】
実際にスキャナを用いて画像読取を行う場合には、スキャナの解像度が予め設定される。そのため、分割幅Wを設定する際には、この事前に設定されているスキャナ解像度に基づいて、分割幅Wを求める。具体的には、分割幅Wを解像度に比例して変更するようにする。これによって、解像度によらず適切な幅で入力画像を分割することが可能となる。
【0027】
このように決定された分割幅Wにより、文書画像が画素幅Wにより分割される(S103)。
続いて、分割幅Wで分割された領域の中で、黒画素を含むラインが連続している領域を検出する(S104)。
S104のステップの詳細は、図4に図示されるので、これを用いて領域検出の処理を説明する。なお、図4において、Rは検出した領域の個数を示し、mは図2のS103により分割された領域の中で選択した領域の番号を示している。また、nは分割した領域内における先頭からのライン番号を、Sは黒画素を含むラインの開始位置を示すものとする。
【0028】
処理が開始されると、先ずR=0、m=1に設定する(S201)。そして、m番目の分割領域を選択する(S202)。初期段階では、1番目の分割領域が選択されることとなる。続いて、n=1を設定、つまりm番目の領域の最初のライン番号を設定する(S203)。
ライン番号が設定された後、n番目のライン中に黒画素があるか否かを検出する(S204)。黒画素が存在する場合にはS209の処理を実行し、黒画素が存在しない場合にはS205の処理を実行する。
【0029】
S204にて黒画素が検出されない場合には、n=n+1とする(S205)。そして、m番目の分割領域の最終ラインを超えたか否かが判別される(S206)。最終ラインを超えていない場合には、S204の処理を繰り返す。
一方、S206にて最終ラインを超えたと判断された場合には、m=m+1とする(S207)。そして、最終の分割領域を超えたか否かが判別される(S208)。最終の分割領域を超えていない場合には、S202以下の処理を繰り返す。一方、S208にて最終分割領域を超えていると判断された場合には、処理を終了する。
【0030】
S204にてn番目のラインが黒画素を含むと判断された場合、S209にてS=nと設定される。続いて、n=n+1と設定される(S210)。この後、S211にて最終ラインを超えたか否かが判別される。最終ラインを超えた場合には、S207の処理を実行する。一方、最終ラインを超えていないと判断されている場合、S212でn番目のラインが黒画素を含むか否かが判定される。黒画素を含むと判断された場合、S210以降の処理を繰り返す。一方、S212でn番目のラインが黒画素を含まないと判断された場合、S番目からn−1番目のラインを、一つの領域として検出するとともに、R=R+1とする(S213)。そして、S205以降の処理を実行する。
【0031】
このような処理を全ての分割領域について繰り返すことによって、黒画素を含むラインが連続する領域とその個数Rを求めることができる。
S104の処理が実行されると、次いで所定の条件を満たす領域を部分画像として抽出する処理が実行される(S105)。図5は、S105の処理をさらに詳細に図示したフローチャートである。なお、図5において符号Kは図4の処理で抽出された部分画像の個数、mはS104の処理により検出した領域の中で選択した領域の番号、RはS104の処理で検出した領域の個数を示している。
【0032】
S105の処理が実行されると、まずK=0、m=1が設定される。続いて、S302ではm番目の領域が選択される。そして、S303で選択されたm番目の領域の高さが所定の範囲内であるか否かが判別される。これは、図6のように高さが非常に低い領域や高い領域を除外するための処理である。
例えば図6aのような画像上のノイズのように高さの小さい領域や、図6bのように図の一部分のように部分領域の高さが高い領域は、文字を含む領域ではない。従って、文書画像の傾きの判別対象からは除外する方が望ましい。そのために、一般的な文字の高さに基づいて、抽出する領域の最大高さと最小高さを設定、この範囲内の高さを有する領域のみを部分画像として抽出することにより、文字ではないと思われる画像を抽出しないようにすることができる。
【0033】
なお、同じ文字であっても文書画像の読取解像度に比例してその大きさが変化する。そのため、抽出する領域の高さを解像度に比例して変化させることによって、解像度によらず適切な高さの領域を部分画像として抽出することができるようになる。
S303で選択された領域の高さが所定の範囲内であると判別された場合、続いて選択されたm番目の領域内に存在する画素に対する黒画素の割合、つまり黒画素率を算出する(S304)。
【0034】
このようにしてm番目の領域の黒画素率が算出された後、算出された黒画素率が所定の範囲内であるか否かが判別される(S305)。これは、図7aのように黒画素率が非常に大きい領域や、図7bのように黒画素率が非常に小さい領域を除外するための処理である。
文書画像の傾き検出に使用する画像は文字を含む行の一部である。これに対して、図7aのように領域内全体が黒画素である領域や、逆に図7bのようにその領域内に黒画素が少ない領域は、文字画像の部分ではないと考えられるので、文書画像の傾き検出のために抽出することは好ましくない。
【0035】
そこで、通常考えられる文字画像の黒画素率などを参考にして、抽出される領域の黒画素率に最大値と最小値を設定する。抽出される領域の黒画素率が設定された黒画素率の範囲内にあれば、その領域は文字領域であると考えることができる。これに対して、ある領域の黒画素率が設定された黒画素率の範囲を外れる場合には、その領域は文字領域ではないと考えられるので、この領域は抽出しないようにする。
【0036】
黒画素率が所定の範囲内であると判別された場合には、続いてその領域内の空白領域の幅が所定の範囲内であるか否かが判別される(S306)。これは、図8のように空白領域が占める割合が高い領域を除外するために行われる処理である。
図8のように文字間に空白部分が多い領域は、黒画素の分布に偏りがある。そのため、この領域を用いても正しく傾き角度を検出することができない可能性がある。そのため、このような領域についても、文書画像の傾き角度を検出することに用いるのは好ましくない。そこで、図8の例では行方向に黒画素が存在しない部分の幅W’を求め、分割領域の幅WとW’の割合を算出する。この割合が予め設定された割合よりも大きい場合には、その領域を抽出しないようにする。なお、分割領域幅Wは予め定められているので、これに対して所定割合となるW’も予め定めることは可能である。そこで、W’の大きさから直接その領域を抽出するか否かを判定することも可能である。
【0037】
S306の処理の結果、その領域内の空白領域の幅が所定の範囲内であると判別された場合には、続いてm番目の領域を部分画像として抽出し、K=K+1と設定する(S307)。この後、S307でm=m+1を設定する。これにより、次の領域が選択される。
一方、m番目の領域がS303、S305あるいはS306のいずれかで、それぞれ設定された条件を満たさなかった場合にも、S308の処理が実行される。
【0038】
S308の処理に引き続き、S309でmがRに等しいか否かが判定される。つまり、S104で検出された領域の全てについて図5の処理が終了したか否かが判定されることとなる。mがRに等しくない場合、つまり未処理の領域が残っている場合には、S302以降の処理を実行して、部分画像抽出の処理が繰り返される。
【0039】
このように、図5の処理が実行されることによって、S104の処理で選択された領域の中から、文書の行の一部分と思われる度合いが高い領域が、部分画像として選択的に抽出されていく。
S105で抽出された部分画像に対しては次に、傾き角度が算出される(S106)。これは式(1)に示された通りに算出できる。
【0040】
S106で部分画像の傾き角度が算出されると、続いてS107で文書画像の傾き角度が決定される。図9は、S107の処理を詳細に説明したフローチャートである。
図9において、処理が開始されるとまずm=1が設定される(S401)。ここで、mはS104で抽出された部分画像の中で選択した部分画像とその傾き角度を示す。なお、図9においてKはS104で抽出した部分画像の個数を示すための記号である。
【0041】
S401に続いて、m番目の部分画像の対角線の角度を算出する(S402)。そして、S102で算出された部分画像の対角線の角度と部分画像の傾き角度の大小関係が判別される(S403)。
図10 に図示されるように、通常の文字領域が抽出されているのであれば、抽出した部分画像の傾き角度は、その部分画像の対角線の角度よりも常に小さくなると考えられる。逆に、算出された部分画像の傾き角度が、その部分画像の対角線の角度よりも大きい場合には、算出された部分画像の傾き角度は誤りであると判断することも可能である。このような誤りであると思われる部分画像の傾き角度を捨てるようにすることで、傾き角度の検出精度を向上させることができる。
【0042】
S403での判別の結果、対角線角度が傾き角度よりも小さい場合には、傾き角度を誤りとしてm番目の部分画像の傾き角度を削除し(S404)、次の部分画像を指し示すためにm=m+1を設定する(S405)。一方、S403で対角線角度が部分画像の傾き角度よりも大きいと判断された場合には、S405の処理を続いて実行する。
【0043】
S405に続いて、抽出した全ての部分画像に対してS402からS405までの処理を完了したかどうかを判別するために、m=Kであるか否かが判別される(S406)。mがKに等しくない場合には、未処理の部分画像が残っているので、S402以降の処理を繰り返す。一方、m=Kの場合には、全ての部分画像に対する処理が終了したことを示している。
【0044】
この場合には、S406に続き部分画像の傾き角度の中で、正の値を持つ傾き角度の個数と、負の値を持つ傾き角度の個数とが、それぞれ計数される(S407)。
複数の部分画像についてその傾き角度を算出した場合、算出結果に誤差がある程度生じたとしても、本来の正しい角度の符号と同符号を持つ傾き角度の個数の方が、逆符号を持つ傾き角度の数よりも多いと考えることができる。そのため、算出された傾き角度の中から、正の符号を持つ傾き角度の数と、負の符号を持つ傾き角度の数とをそれぞれ計数し、個数が多い傾き角度のみを残し、個数が少ない傾き角度を捨てることで、傾き角度の検出精度を上げることができる。
【0045】
この傾き角度の計数結果に基づいて、正負の個数の多い方の符号を持つ傾き角度が選択される(S408)。
この後、選択された傾き角度の平均値と標準偏差を算出し(S409)、平均値から+/−標準偏差以内の傾き角度を選択する(S410)。そして、S410で選択された傾き角度の平均値を算出して、これを文書画像の傾き角度に決定する(S411)。
【0046】
複数の傾き角度の平均値を元の文書画像の傾き角度とすることによって、単一の部分画像の傾き角度のみから文書画像の傾きを判断する場合と比較して、より正確に傾き角度を算出することができるようになる。
また、検出された部分画像の傾き角度が平均角度から大きく外れている場合、この角度は正しい傾き角度ではないと考えられる。そのため、算出された傾き角度の分布から標準偏差を求め、平均傾き角度を中心に+/−標準偏差の範囲内にある角度を選択して、選択された角度の平均値を文書画像の傾き角度とすることで、更に文書画像の傾き角度の検出精度を向上させることができる。
このような処理を行うことで、文書画像傾き角度を求めることができる。文書画像の補正は、求められた傾き角度とは逆符号で、同じ角度だけ文書画像を回転させることで行われる。
以上の説明は、文書が横書きである場合について説明している。しかし、文書画像が縦書き文書であった場合や、90度回転している文書画像であった場合には画像を図11のように縦方向に分割した領域の中から行の一部分を部分画像として抽出することはできない。このような場合、図11に図示されるように、文書画像の分割を横方向に行い、分割された部分画像の中から黒画素が連続する領域を検出するようにすれば後は上記した方法で傾き補正を行うことができる。
【0047】
また、文書画像が横書きか縦書きかが判らない場合には、傾き角度の検出を縦方向と横方向との両方について行う。そして、抽出できた部分画像の個数が多い方向の傾き角度を文書画像の傾き角度とすればよい。
ある分割幅で文書画像を分割して、分割された画像の中から黒画素が連続する領域を検出する場合に、行方向と直交する方向に文書画像を分割すれば、図11のように各行の一部分を独立した領域として検出することができる。これに対し、行方向と同じ方向に文書画像を分割すると、図11の破線で示したように、複数の行が一つの領域として検出されてしまう。そこで、行方向に対して直交する方向に文書画像を分割することで、より多くの部分画像を抽出することができる。
【0048】
図12は、縦方向及び横方向から文書画像の傾き角度を検出する手順を示したフローチャートである。
処理が開始されると、まずある方向(例えば縦方向)について、入力された文書画像の傾き角度検出の処理を行う(S501)。続いて、入力されている文書画像に対して、90度回転の処理を施す(S502)。続いて、90度回転された文書画像に対して傾き角度検出の処理を行う(S503)。S501で縦方向の角度検出が行われたのであれば、S503では横方向の角度検出が行われることとなる。なお、S501、S503の処理は、これまで説明してきた文書画像の傾き角度検出の処理を行えばよい。また、S501とS503とでの文書画像の分割の方向は、互いに同一方向である。
【0049】
そして、縦横それぞれの方向について、抽出された部分画像の個数が多い方向が正しい文書方向であると判断し、この方向について算出された傾き角度をその文書方向として決定する(S504)。
なお、文書によっては縦書きと横書きとが混在しているケースもあるが、このような場合主に一方向(例えば横書き)に文書が記載され、部分的に他方向(例えば縦書き)に文書が記載されるケースが殆どであり、縦書きと横書きの割合が半々程度である文書は実際には非常に少ないと考えられる。そのため、図 のような処理を行うことで、一方の文書方向についての部分画像の方が、他方よりも多くなることが予想されるので、文書方向を高い確率で判別することが可能である。
【0050】
また、図12の例では文書画像を回転させ、文書画像の分割方向を同じくしているが、文書画像の回転処理を行わず、S501とS503とでの文書画像の分割方向を、互いに直交する方法とするように処理しても構わない。
【0051】
【発明の効果】
以上述べた通り、本発明によれば、文書画像の傾き角度の検出を、高精度で行うことが可能となる。特に、抽出された文書画像の中から、文字らしいものが含まれている部分を部分画像として複数個抽出し、抽出した各部分画像から傾き角度を求め、これらの傾き角度により文書画像の傾き角度を求めるようにしているため、傾き角度の検出をより高精度に行うことが可能である。
【0052】
このため、ハンドヘルドスキャナにより任意の方向からスキャンして入力した文書画像の傾き角度を検出して、文書画像の傾きを自動的に正立補正することができるので、文書画像の傾き補正の操作性およびユーザインタフェースの改善に寄与するところが大きい。
【図面の簡単な説明】
【図1】 読み取られた文書画像の模式図と、本発明の一実施形態による文書画像傾き検出方法を図示した図面。
【図2】 本発明の一実施形態による文書画像傾き判別の処理手順を示したフローチャート。
【図3】 分割幅Wの算出の仕方を図示した図面。
【図4】 黒画素を含むラインが連続する領域を検出する手順を示したフローチャート。
【図5】 部分画像抽出手順を示したフローチャート。
【図6】 高さが低い領域や高い領域の例を図示する図面。
【図7】 黒画素率が高い高い領域や低い領域の例を図示する図面。
【図8】 空白領域が占める割合が高い領域の例を図示する図面。
【図9】 文書画像の傾きを算出する手順を示すフローチャート。
【図10】部分領域の対角線と傾きとの関係を示す図面。
【図11】縦書き文書画像から部分画像を抽出する例を説明する図面。
【図12】縦横両方向について文書画像の傾きを検出する場合の手順を示すフローチャート。
Claims (7)
- 文書画像の傾きを検出して、これに基づいて文書画像の傾きを補正する文書画像の傾き補正方法において、
入力された文書画像を、所定の幅を有する領域に分割し、
前記領域内の画素数に対する表示を線や点を使って形作られた記号の構成要素となる記号画素数の割合を算出し、
前記割合が予め設定された範囲内にある場合に、前記領域を傾きを算出する対象とする矩形の部分画像と設定し、
前記部分画像に対して座標軸を設定し、
前記部分画像内に存在する各記号画素の座標から近似直線を算出し、
前記近似直線の傾きを
前記部分画像の傾きの角度として検出し、
前記座標から前記部分画像の矩形の対角線の傾き角度を算出し、
前記近似直線の傾き角度と、前記対角線の矩形の対角線の傾き角度とを比較し、
前記近似直線の傾き角度が前記対角線の矩形の対角線の傾き角度よりも小さい場合に、該近似直線の傾き角度に基づいて、前記文書画像の傾き角度を判別し、
前記判別された文書画像の傾き角度により、前記入力された文書画像の傾きを補正する
ことを特徴とする、文書画像の傾き補正方法。 - 前記文書画像の傾き補正方法において、
前記部分画像に対する座標軸は、当該部分画像の水平方向をx軸、垂直方向をy軸とする
ことを特徴とする、請求項1に記載の文書画像補正方法。 - 前記文書画像の傾き補正方法において、
前記部分画像の高さが、予め設定された高さの範囲内にあるか否かを判別し、
前記部分画像の高さが当該範囲内にあると判定された場合に、当該部分画像の傾き角度を検出する
ことを特徴とする、請求項1に記載の文書画像補正方法。 - 前記文書画像の傾き補正方法において、
前記部分画像の中で、前記ライン方向に連続して前記記号画素が存在しない領域の幅を求め、
前記記号画素が存在しない領域の幅と予め設定された幅とを比較し、
前記比較の結果当該領域の幅が予め設定された幅よりも小さい場合のみ、当該部分画像の傾き角度を検出する
ことを特徴とする、請求項1に記載の文書画像補正方法。 - 前記文書画像の傾き補正方法において、
複数の部分画像を抽出し、
前記複数の部分画像のそれぞれについて傾き角度を算出し、
前記検出された複数の傾き角度に基づいて当該文書画像の傾き角度を算出する
ことを特徴とする、請求項1に記載の文書画像補正方法。 - 前記文書画像の補正方法において、
前記複数の部分画像のそれぞれについて算出した傾き角度の符号毎に、傾き角度情報の個数を計数し、
前記計数の結果数が多い符号を有する傾き角度情報に基づいて、当該文書画像の傾き角度を検出する
ことを特徴とする、請求項5に記載の文書画像補正方法。 - 前記文書画像の補正方法において、
前記複数の部分画像の傾き角度の平均値を求め、
当該平均値を当該文書の傾き角度として決定する
ことを特徴とする、請求項5に記載の文書画像補正方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14782298A JP3876531B2 (ja) | 1998-05-28 | 1998-05-28 | 文書画像の傾き補正方法 |
US09/665,158 US6771842B1 (en) | 1998-05-28 | 2000-09-19 | Document image skew detection method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14782298A JP3876531B2 (ja) | 1998-05-28 | 1998-05-28 | 文書画像の傾き補正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11341259A JPH11341259A (ja) | 1999-12-10 |
JP3876531B2 true JP3876531B2 (ja) | 2007-01-31 |
Family
ID=15439024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14782298A Expired - Fee Related JP3876531B2 (ja) | 1998-05-28 | 1998-05-28 | 文書画像の傾き補正方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6771842B1 (ja) |
JP (1) | JP3876531B2 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4610687B2 (ja) * | 1999-11-15 | 2011-01-12 | コニカミノルタホールディングス株式会社 | 原稿読み取り装置 |
JP3938859B2 (ja) | 2001-03-23 | 2007-06-27 | 富士通株式会社 | 画像処理装置および画像処理プログラム |
US7411593B2 (en) * | 2001-03-28 | 2008-08-12 | International Business Machines Corporation | Image rotation with substantially no aliasing error |
US7457012B2 (en) * | 2001-11-09 | 2008-11-25 | Po-Hua Fang | Detecting the alignment of a document in an automatic document feeder |
TW200403598A (en) * | 2002-03-29 | 2004-03-01 | Olympus Optical Co | Test figure, geometric feature analyzing system, geometric feature analyzing-method, printer, and inkjet printer |
US7215444B2 (en) * | 2002-07-16 | 2007-05-08 | Xerox Corporation | Systems and methods for designing zero-shift supercell halftone screens |
US20040012818A1 (en) * | 2002-07-19 | 2004-01-22 | Bauer Stephen W. | Reducing artifacts in printing |
JP3903932B2 (ja) * | 2003-03-06 | 2007-04-11 | セイコーエプソン株式会社 | 画像読み取り制御装置およびプログラム |
JP2007336143A (ja) * | 2006-06-14 | 2007-12-27 | Ricoh Co Ltd | 画像処理装置 |
TWI425444B (zh) * | 2009-02-20 | 2014-02-01 | Avermedia Information Inc | 影像資料歪斜偵測校正方法與裝置 |
WO2011001439A2 (en) * | 2009-07-02 | 2011-01-06 | Hewlett-Packard Development Company, L.P. | Skew detection |
TW201242333A (en) * | 2011-04-06 | 2012-10-16 | Hon Hai Prec Ind Co Ltd | Image processing apparatus and method for controlling image processing apparatus |
JP6626344B2 (ja) * | 2015-09-29 | 2019-12-25 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法およびプログラム |
JP6805552B2 (ja) * | 2016-05-26 | 2020-12-23 | コニカミノルタ株式会社 | 情報処理装置及びプログラム |
JP6642833B2 (ja) * | 2016-10-28 | 2020-02-12 | 京セラドキュメントソリューションズ株式会社 | 画像処理装置 |
CN107918935B (zh) * | 2017-12-05 | 2022-03-08 | 深圳市北电仪表有限公司 | 嵌入式系统的图像匹配切割装置及切割方法 |
CN111031188B (zh) * | 2019-11-28 | 2021-07-06 | 宁波华高信息科技有限公司 | 基于cis传感器的扫描仪的纸张歪斜检测方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58123169A (ja) | 1982-01-14 | 1983-07-22 | Nippon Telegr & Teleph Corp <Ntt> | 文字行切出し方式 |
US4558461A (en) * | 1983-06-17 | 1985-12-10 | Litton Systems, Inc. | Text line bounding system |
JPS6428791A (en) | 1987-07-24 | 1989-01-31 | Fujitsu Ltd | Character row detector |
US4866784A (en) * | 1987-12-02 | 1989-09-12 | Eastman Kodak Company | Skew detector for digital image processing system |
US5001766A (en) * | 1988-05-16 | 1991-03-19 | At&T Bell Laboratories | Apparatus and method for skew control of document images |
JP2939985B2 (ja) | 1989-03-27 | 1999-08-25 | 松下電器産業株式会社 | 画像処理装置 |
DE69223850T2 (de) * | 1991-05-30 | 1998-05-14 | Canon Information Syst Res | Kompressionssteigerung bei graphischen Systemen |
JP3320759B2 (ja) * | 1991-12-26 | 2002-09-03 | 株式会社東芝 | 文書画像傾き検出装置およびその方法 |
US5594815A (en) * | 1992-10-19 | 1997-01-14 | Fast; Bruce B. | OCR image preprocessing method for image enhancement of scanned documents |
JP3281469B2 (ja) | 1993-11-18 | 2002-05-13 | 株式会社リコー | 文書画像の傾き検出方法および装置 |
JP3338537B2 (ja) | 1993-12-27 | 2002-10-28 | 株式会社リコー | 画像傾き検出装置 |
-
1998
- 1998-05-28 JP JP14782298A patent/JP3876531B2/ja not_active Expired - Fee Related
-
2000
- 2000-09-19 US US09/665,158 patent/US6771842B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11341259A (ja) | 1999-12-10 |
US6771842B1 (en) | 2004-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3876531B2 (ja) | 文書画像の傾き補正方法 | |
US6898316B2 (en) | Multiple image area detection in a digital image | |
JP3883696B2 (ja) | 多数の写真をスキャンしかつ検出するとともに人工エッジを除去するための方法 | |
US20010014183A1 (en) | Image processing system with image cropping and skew correction | |
JP4758461B2 (ja) | デジタル画像におけるテキスト方向判定方法およびシステム、ならびに、制御プログラムおよび記録媒体 | |
JP2009003937A (ja) | デジタル画像におけるテキスト方向判定方法およびシステム、ならびに、制御プログラムおよび記録媒体 | |
JP4419269B2 (ja) | 二次元コード抽出方法 | |
JP3698136B2 (ja) | 画像処理装置および画像処理プログラム | |
JP4114959B2 (ja) | 画像処理方法及び装置 | |
JP2010160640A (ja) | 画像処理装置、プリンター、画像処理方法および画像処理プログラム | |
JP2017161969A (ja) | 文字認識装置、方法およびプログラム | |
JP4140519B2 (ja) | 画像処理装置、プログラムおよび記録媒体 | |
US20200288040A1 (en) | Image inclination angle detection apparatus that detects inclination angle of image with respect to document, image forming apparatus, and computer-readable non-transitory recording medium storing image inclination angle detection program | |
US7151859B2 (en) | Method and system for correcting direction or orientation of document image | |
JP3983721B2 (ja) | 画像歪み補正装置、画像読取装置、画像形成装置及びプログラム | |
JP2006222878A (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
US6661535B1 (en) | Moire fringe eliminating apparatus and a method for eliminating moire fringes | |
JP2010186268A (ja) | 画像処理装置、プリンター、画像処理方法および画像処理プログラム | |
JP3303246B2 (ja) | 画像処理装置 | |
JP4070486B2 (ja) | 画像処理装置、画像処理方法及び同方法の実行に用いるプログラム | |
US8260057B2 (en) | Image processing apparatus that obtains a ruled line from a multi-value image | |
JPH1153539A (ja) | 円形パターン判定方法および記録媒体 | |
JP2009272714A (ja) | 画像処理装置、画像処理方法、プログラム及びプログラムを記録した記録媒体 | |
JP3915974B2 (ja) | 画像処理装置、画像処理方法、プログラム及び記録媒体 | |
JP2002236925A (ja) | 画像検査装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060418 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060607 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060704 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060901 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060913 |
|
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: 20061010 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061023 |
|
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: 20101110 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101110 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111110 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111110 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121110 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121110 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131110 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |