画像処理装置および画像処理方法
【課題】従来、文書画像の傾き検出には文字ごとの特性を用いていたため、文字の大きさやコピー時等に生じた文字上のノイズの影響により、傾きの検出精度が低下する場合があった。
【解決手段】文書領域を含んだ文書画像データIに対し、縮小処理を施すことによって文書領域を抽出した文書縮小画像Isを生成する。そして文書縮小画像Isに対するフィルタ処理によって文書領域のエッジを抽出したエッジ画像Ieを生成する。そして、エッジ画像Ieにおけるエッジに接する直線をハフ変換により検出し、該直線の傾きにより文書画像の傾きを決定する。これにより、文書領域の特性に基づいた、精度の良い傾き検出を行うことができる。
【解決手段】文書領域を含んだ文書画像データIに対し、縮小処理を施すことによって文書領域を抽出した文書縮小画像Isを生成する。そして文書縮小画像Isに対するフィルタ処理によって文書領域のエッジを抽出したエッジ画像Ieを生成する。そして、エッジ画像Ieにおけるエッジに接する直線をハフ変換により検出し、該直線の傾きにより文書画像の傾きを決定する。これにより、文書領域の特性に基づいた、精度の良い傾き検出を行うことができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書の傾きを検出する画像処理装置および画像処理方法に関する。
【背景技術】
【0002】
文字認識や文書に埋め込まれた情報を検出する場合、文書画像の傾きを検出する処理が必要となる。従来、画像の傾きを検出する方法として、図12に示すような方法がある。この方法によれば、文書の文字列から文字矩形を抽出し、各文字矩形の特徴点(重心または文字矩形の左下点または右下点)を算出する。そして、各特徴点に対してハフ(Hough)変換を施すことによって直線を算出し、該直線から傾き角度検出を行う(例えば、特許文献1参照)。
【特許文献1】特開平3-213053号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上記従来の傾き検出方法においては、各文字の特徴に基づいて傾き角度を検出しているため、以下のような不具合があった。
【0004】
例えば図13に示すように、文字列が大きさ(重心)の異なる文字で構成されている場合、各文字矩形の大きさや位置が異なるため特徴点の位置にバラツキが生じ、直線の傾きに誤差が発生してしまうため、結果として傾き検出精度が低下する場合がある。
【0005】
また図14に示すように、コピーやスキャン等によって文字上にノイズが発生した場合、文字矩形の大きさが本来のサイズとは異なって検出され、結果として傾き検出精度が低下するおそれがある。
【0006】
また、ハフ変換は、仮想した一本の直線上に載る点をカウントし、その個数が所定の閾値を超えた直線を検出するため、点がランダムに配置されると、多数の直線が検出されてしまう。例えば図15に示すような文書の場合、対角上にも多数の点があるため、文書の傾きを示すはずの直線として文書の対角線を検出してしまうという誤検出のおそれがある。
【0007】
本発明は上述した問題を解決するためになされたものであり、文書画像の傾きを文書領域の特性に基づいて検出することにより、高精度な傾き検出を可能とする画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するための一手段として、本発明の画像処理装置は以下の構成を備える。
【0009】
すなわち、文書領域を含んだ文書画像を入力する画像入力手段と、前記文書画像を縮小することによって文書縮小画像を生成する縮小手段と、前記文書縮小画像から前記文書領域のエッジを抽出したエッジ画像を生成するエッジ画像生成手段と、前記エッジ画像において前記文書領域のエッジに接する直線に基づき、前記文書画像の傾きを検出する傾き検出手段と、を有することを特徴とする。
【0010】
例えば、前記縮小手段は、前記文書画像に対し、予め定められた縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定するように、単純縮小画像を生成する単純縮小手段と、前記単純縮小画像に対し、予め定められた範囲内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰すことによって、前記文書縮小画像を生成する塗潰し手段と、を有することを特徴とする。
【発明の効果】
【0011】
上記構成からなる本発明によれば、文書画像の傾きを文書領域の特性に基づいて検出することにより、高精度な傾き検出が可能となる。
【発明を実施するための最良の形態】
【0012】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0013】
<第1実施形態>
●概要
まず、第1実施形態における文書画像の傾き検出処理の概念を、図1を用いて簡単に説明する。
【0014】
まず、入力された文書画像Iに対して縮小を施し、文書縮小画像Isを生成する。この縮小処理は、文字を縮小させることで連結させ、最終的に文書領域のエッジから傾きを検出するために行う。ここで文書領域とは、文字が書かれている領域つまり、複数の文字で構成された領域を示しており、章節や段落、または1行であってもよい。なお、この段階で文書領域が1つのオブジェクトとなることが望ましく、縮小時に文書領域の内側を塗潰す処理を行う。
【0015】
次に、塗潰された文書縮小画像Isに対して、文書領域のエッジを抽出し、エッジ画像Ieを生成する。このエッジ抽出処理としては、ラプラシアンフィルタやソーベルフィルタ等を用いれば良い。
【0016】
そしてエッジ画像Ieに対してハフ変換を施すことによって、文書領域のエッジに接する直線を検出する。ここで検出された直線の傾きがすなわち、文書画像の傾きを示していることになる。
【0017】
以上、第1実施形態における文書画像の傾き検出処理について簡単に説明したが、以下では、その詳細を説明する。
【0018】
●装置構成
図2は、本実施形態における画像処理装置の機能構成を示すブロック図である。図2に示すように、本実施形態における画像処理装置61は、文書画像の傾きを検出することが可能な装置であって、画像入力部601、画像縮小部602、エッジ画像生成部603、傾き検出部604、から構成される。
【0019】
画像入力部601は、文書画像を電子化した画像データを読み取るまたは生成することによって、本実施形態の処理対象となる画像データ(文書画像600)を入力する。画像縮小部602は、入力された文書画像を縮小する機能を有し、エッジ画像生成部603は、文書縮小画像から文字領域のエッジ部分の画像を生成する機能を有し、傾き検出部604は、文字領域のエッジ画像から傾きを検出する機能を有する。
【0020】
●傾き検出処理
以下、本実施形態における傾き検出処理を、図3のフローチャートを用いて詳細に説明する。
【0021】
まずステップS701において、画像処理装置61に文書画像600が入力されると、画像入力部601はこれを読み取り、文書画像データIとして、画像縮小部602に供給する。ここで文書画像データIとは、画素単位での扱いが可能な画像である。例えば文書画像が紙原稿である場合、画像入力部601は電荷結合素子CCDまたは光学センサーを有するものとし、画像入力指示に応じて文書画像の撮影、電気信号処理、デジタル信号処理等を行って文書画像データIを生成する。また、文書画像がページ記述言語で記述されたデータであったり、特有のデータ形式を扱うアプリケーションで作成されたデータである場合には、そのデータ形式を一般的な画像の形式(ビットマップ形式等)に変換し、文書画像データIとする。
【0022】
次にステップS702において画像縮小部602は、画像入力部601より供給された文書画像データIを縮小し、文書縮小画像Isを生成する。
【0023】
ここで図4を用いて、本実施形態における縮小処理について説明する。例えば縮小率R=1/(5×5)とする。この場合、文書画像データIにおいて、該縮小率Rに応じた縮小単位領域である5×5画素内に1画素でも黒画素が存在していれば、該縮小単位領域が黒色の1画素となるように、縮小処理を行う。このように、文書画像データIに対し、所定の縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定していく。このような縮小領域単位による縮小処理を文書画像データIの全範囲に施すことにより、単純縮小画像Ispが生成される。
【0024】
そしてステップS703において画像縮小部602はさらに、単純縮小画像Ispに対し、文字または行を連結させるための塗潰し処理を行って、文書縮小画像Isを生成する。すなわち、単純縮小画像Ispにおいて、既定の範囲L内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰す。具体的には、規定の範囲L内に黒画素が存在している場合に、該既定の範囲内にある全ての画素を黒とする。図4では、既定の範囲L=3画素として塗潰しを行った例を示している。
【0025】
ここで、本実施形態における縮小率Rと既定の範囲Lの数値選定について説明する。
【0026】
本実施形態における塗潰し処理は、文字または行を連結させて文書領域のエッジを抽出することが目的である。したがって、文字間隔をcs画素、行間隔をls画素とすると、以下の式(1)または式(2)を満たすように、縮小率Rと既定の範囲Lを選定すれば良い。なお以下において、"√R"の表記によりRの平方根を示すとする。
【0027】
L×1/√R>cs ・・・(1)
L×1/√R>ls ・・・(2)
例えば用紙がA4サイズとすると、一般的に用いられる文字サイズは8ポイントから28ポイントであるので、600dpiの場合、文字間隔は約20画素から約60画素、行間は約90画素から約250画素、となる。したがってこの場合、上記式(1),(2)はそれぞれ下式(3),(4)となり、すなわち、式(3)または式(4)を満たすように、縮小率Rと既定の範囲Lを決定すれば良い。
【0028】
L×1/√R>60 ・・・(3)
L×1/√R>250 ・・・(4)
更に具体例を示す。図6は、図5に示す文書画像(A4サイズ、600dpi、10.5ポイント)を、1/(40×40)で縮小し、既定の範囲を5画素として塗潰しを行うことによって得られた文書縮小画像Isを示す。図5に示す文書画像の文字サイズは10.5ポイントであるから、文字間隔は約20画素、行間隔は約80画素である。したがって、以下の式(5),(6)に示すように条件を満たしているため、その縮小画像は図6に示すように、文字と行が塗潰しにより連結されて、1つのオブジェクトとなっていることが分かる。
【0029】
L×1/√R=5×40=200>60 ・・・(5)
L×1/√R=5×40=200>80 ・・・(6)
以上のように、画像縮小部602で縮小されて塗潰された文書縮小画像Isが、エッジ画像生成部603に供給される。
【0030】
図3に戻り、次にステップS704ではエッジ画像生成部603において、画像縮小部602より供給された文書縮小画像Isから、文書領域のエッジを抽出したエッジ画像Ieを生成し、傾き検出部604へ送る。図7に、図6に示す文書縮小画像Isに基づいて生成されたエッジ画像Ieを示す。本実施形態におけるエッジ画像Ieの生成は、文書縮小画像Isに対してラプラシアンフィルタをかけることによって行う。ラプラシアンフィルタは、エッジ強調や先鋭化を行う際に一般的に用いられるフィルタであり、そのフィルタ係数は以下のように表すことができる。
【0031】
【数1】
【0032】
なお、エッジ抽出処理はラプラシアンフィルタの使用に限らず、例えば、ハイパスフィルタやソーベルフィルタ、プレウィットフィルタ等、エッジを強調するフィルタであれば適用可能である。
【0033】
次にステップS705では傾き検出部604において、エッジ画像生成部603より供給されたエッジ画像Ieに対し、ハフ変換を施すことによって文書領域のエッジに接する直線を検出する。そしてステップS706で傾き検出部604は、該検出された直線に基づき、文書領域の傾き角度Angを決定する。
【0034】
ここで、ハフ変換について、図8を用いて簡単に説明する。ハフ変換は、画像から直線や円弧の検出を行うことで知られている技術である。
【0035】
例えば図8に示すように、点P1(x1,y1)を通る任意の直線は、その直線に対する原点Oからの垂線の長さρと、その垂線の成す角度θを用いて、以下の式(7)によって表すことができる。
【0036】
ρ=x・cosθ+y・sinθ
ここでもし、該直線上に、P2(x2,y2)のような別の点があるとすると、点P2に対するθとρは、点P1に対するものと同じになる。したがって文書画像の平面上において、θとρが同じである点をカウントし、その個数が所定の閾値以上であれば、そこに直線が存在する、と導出することができる。図9に、図7に示すエッジ画像Ieに対し、ハフ変換を用いて算出した、文書領域のエッジに接する直線の描画例を示す。
【0037】
以上のように、ハフ変換によって検出された文書領域のエッジに接する直線について、その傾き角度Aがすなわち、文書領域の傾き角度Angである。
【0038】
●複数傾きからの選択処理
なお、文書領域のエッジに接する直線の傾き角度Aとしては、算出される値は1つに限らず、例えば2つの傾き角度A1およびA2が算出される場合がある。これはすなわち、文書領域の上面部と側面部にそれぞれ接する直線を検出したことによる。本実施形態ではこのように、傾きの異なる複数本の直線が検出された場合に、最終的な傾き角度Angを以下のように選択する。
【0039】
例えば、算出された直線の傾き角度Aとして、以下の2つが検出されたとする。なお、傾き角度におけるプラス/マイナスの値はそれぞれ、時計回り/反時計回りである旨を示している。
【0040】
A1=30[deg]
A2=−60[deg]
本実施形態では、以上の2つの傾き角度A1,A2が検出された場合、傾き角度の大きさが小さい方、すなわちA1=30[deg]を、傾き角度Angとして決定する。
【0041】
また、ノイズの影響により、文書領域のエッジに接する直線以外にも、複数本の直線が検出される場合がある。例えば、ハフ変換により、以下のような複数の傾き角度候補が算出されたとする。
【0042】
A1=30[deg]
A2=−15[deg]
A3=30[deg]
A4=−60[deg]
A5=30[deg]
これらの直線の例を図10に示す。本実施形態ではこのような場合、傾き角度の検出精度を上げるため、以下に示す2つの処理(処理a,処理b)のいずれか一方、もしくは組み合わせた処理を行う。
【0043】
処理a;複数検出された直線を選択
図10の(a)に示すように、1行ごとの文書領域のエッジに接する直線が検出されている場合があるので、頻度が多い直線の角度、つまりA1,A3,A5の30[deg]を、傾き角度として決定する。
【0044】
処理b;直交する直線を選択
また、一般に文書領域の上面部に接する直線と側面部に接する直線とは直交する、という性質を用いて、検出された直線から互いに直交する2本を選択して、傾き角度を決定する。この場合、図10の(b)に示すように、A1(またはA3またはA5)とA4の直線が直交しているため、傾き角度は30[deg]または−60[deg]のいずれかであると考えられる。したがって、傾き角度の小さい方、すなわちA1=30[deg]を、傾き角度Angとして決定する。
【0045】
なお、頻度が多い直線が無く、直交する直線も無いような場合には、最も点の数が多い直線を選択する方法を用いても良い。
【0046】
以上説明したように本実施形態によれば、文書画像を縮小し、該縮小された文書領域の特性に基づいて傾きを検出するため、文字の大きさによらず、また、文字上にノイズが発生した場合においても、文書画像の傾きを精度良く検出することができる。
【0047】
なお、本実施形態では、入力される文書画像として白黒の2値画像を例示したが、本発明はこれに限定されることなく、カラー画像に対しても適用可能である。例えばカラー画像の場合、所定の閾値に基づく大小判定により2値の縮小画像を生成し、以降は本実施形態と同様の処理を行えば良い。
【0048】
<第2実施形態>
以下、本発明に係る第2実施形態について説明する。第2実施形態においては、上述した第1実施形態に係る夫々の処理を、コンピュータによって実現することを特徴とする。
【0049】
図11は、第2実施形態におけるコンピュータの基本構成を示すブロック図である。例えばこのコンピュータにおいて、上述した第1実施形態の全ての機能を実行する場合、各機能構成をプログラムにより表現し、このコンピュータに読み込ませれば良い。
【0050】
同図において、1501はCPUであり、RAM1502やROM1503に格納されているプログラムやデータを用いて、コンピュータ全体の制御を行うと共に、上記第1実施形態で説明した各処理を行う。
【0051】
1502はRAMであり、例えば外部記憶装置1508からロードされたプログラムやデータを一時的に記憶するエリアを備えると共に、CPU1501が各種の処理を行うために必要とするエリアを備える。なお、他のコンピュータシステム1514からI/F(インターフェース)1515を介してダウンロードしたプログラムやデータについても、一時記憶対象となる。
【0052】
1503はROMであり、コンピュータの機能プログラムや設定データ等を記憶する。1504はディスプレイ制御装置であり、画像や文字等をディスプレイ1505に表示させるための制御処理を行う。1505はディスプレイであり、画像や文字などを表示する。なおディスプレイ1505としては、CRTや液晶画面などが適用可能である。
【0053】
1506は操作入力デバイスであり、キーボードやマウスなど、CPU1501に各種の指示を入力可能なデバイスにより構成されている。1507は、操作入力デバイス1506を介して入力された各種の指示等をCPU1501に通知するためのI/Oである。
【0054】
1508は、ハードディスクなどの大容量情報記憶装置として機能する外部記憶装置であり、OS(オペレーティングシステム)や、上記第1実施形態に係る処理をCPU1501に実行させるためのプログラム、入出力原稿画像、等を記憶する。外部記憶装置1508への情報の書き込みおよび読み出しはI/O1509を介して行われる。
【0055】
1510は、文書や画像を出力するためのプリンタであり、出力データはI/O1511を介してRAM1502、もしくは外部記憶装置1508から送られる。なお、文書や画像を出力するためのプリンタとしては、例えばインクジェットプリンタ、レーザビームプリンタ、熱転写型プリンタ、ドットインパクトプリンタなどが挙げられる。
【0056】
1512は文書や画像を読み取るためのスキャナであり、入力データはI/O1513を介して、RAM1502もしくは外部記憶装置1508に送られる。
【0057】
1516は、CPU1501、ROM1503、RAM1502、I/O1511、I/O1509、ディスプレイ制御装置1504、I/F1515、I/O1507、I/O1513、を繋ぐバスである。
【0058】
なお第2実施形態においては、スキャンやプリントを除く処理をコンピュータにより行う例を示したが、スキャナ1512やプリンタ1510内部の専用のハードウェア回路を用いて、コンピュータで行う処理を代行しても良い。
【0059】
以上説明したように第2実施形態によれば、コンピュータによって上述した第1実施形態の機能を実現することができる。
【0060】
<他の実施形態>
上述した第1および第2実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。例えば、上記第2実施形態において、本発明をコンピュータによって実現する例を示したが、以下に、本発明の範疇となる技術範囲について、さらに詳細に説明する。
【0061】
本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮影装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0062】
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、実施形態において図に示したフローチャートに対応したコンピュータ可読のプログラムである。
【0063】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0064】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0065】
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM,DVD-R)などである。
【0066】
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0067】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
【0068】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0069】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
【図面の簡単な説明】
【0070】
【図1】本発明に係る第1実施形態における傾き検出処理の概念を示す図である。
【図2】本実施形態における画像処理装置の機能構成を示すブロック図である。
【図3】本実施形態における傾き検出処理を示すフローチャートである。
【図4】本実施形態における縮小処理を説明する図である。
【図5】本実施形態の処理対象となる、30[deg]の傾きを有する文書画像例を示す図である。
【図6】本実施形態における文書縮小画像例を示す図である。
【図7】本実施形態におけるエッジ画像例を示す図である。
【図8】本実施形態におけるハフ変換を説明する図である。
【図9】本実施形態で検出された文書領域のエッジに接する直線例を示す図である。
【図10】本実施形態における傾き角度の決定方法を示す図である。
【図11】第2実施形態におけるコンピュータシステムの構成を示すブロック図である。
【図12】従来の傾き検出方法を説明する図である。
【図13】従来の動き検出方法において発生する不具合例を示す図である。
【図14】従来の動き検出方法において発生する不具合例を示す図である。
【図15】従来の動き検出方法において発生する不具合例を示す図である。
【技術分野】
【0001】
本発明は、文書の傾きを検出する画像処理装置および画像処理方法に関する。
【背景技術】
【0002】
文字認識や文書に埋め込まれた情報を検出する場合、文書画像の傾きを検出する処理が必要となる。従来、画像の傾きを検出する方法として、図12に示すような方法がある。この方法によれば、文書の文字列から文字矩形を抽出し、各文字矩形の特徴点(重心または文字矩形の左下点または右下点)を算出する。そして、各特徴点に対してハフ(Hough)変換を施すことによって直線を算出し、該直線から傾き角度検出を行う(例えば、特許文献1参照)。
【特許文献1】特開平3-213053号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上記従来の傾き検出方法においては、各文字の特徴に基づいて傾き角度を検出しているため、以下のような不具合があった。
【0004】
例えば図13に示すように、文字列が大きさ(重心)の異なる文字で構成されている場合、各文字矩形の大きさや位置が異なるため特徴点の位置にバラツキが生じ、直線の傾きに誤差が発生してしまうため、結果として傾き検出精度が低下する場合がある。
【0005】
また図14に示すように、コピーやスキャン等によって文字上にノイズが発生した場合、文字矩形の大きさが本来のサイズとは異なって検出され、結果として傾き検出精度が低下するおそれがある。
【0006】
また、ハフ変換は、仮想した一本の直線上に載る点をカウントし、その個数が所定の閾値を超えた直線を検出するため、点がランダムに配置されると、多数の直線が検出されてしまう。例えば図15に示すような文書の場合、対角上にも多数の点があるため、文書の傾きを示すはずの直線として文書の対角線を検出してしまうという誤検出のおそれがある。
【0007】
本発明は上述した問題を解決するためになされたものであり、文書画像の傾きを文書領域の特性に基づいて検出することにより、高精度な傾き検出を可能とする画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するための一手段として、本発明の画像処理装置は以下の構成を備える。
【0009】
すなわち、文書領域を含んだ文書画像を入力する画像入力手段と、前記文書画像を縮小することによって文書縮小画像を生成する縮小手段と、前記文書縮小画像から前記文書領域のエッジを抽出したエッジ画像を生成するエッジ画像生成手段と、前記エッジ画像において前記文書領域のエッジに接する直線に基づき、前記文書画像の傾きを検出する傾き検出手段と、を有することを特徴とする。
【0010】
例えば、前記縮小手段は、前記文書画像に対し、予め定められた縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定するように、単純縮小画像を生成する単純縮小手段と、前記単純縮小画像に対し、予め定められた範囲内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰すことによって、前記文書縮小画像を生成する塗潰し手段と、を有することを特徴とする。
【発明の効果】
【0011】
上記構成からなる本発明によれば、文書画像の傾きを文書領域の特性に基づいて検出することにより、高精度な傾き検出が可能となる。
【発明を実施するための最良の形態】
【0012】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0013】
<第1実施形態>
●概要
まず、第1実施形態における文書画像の傾き検出処理の概念を、図1を用いて簡単に説明する。
【0014】
まず、入力された文書画像Iに対して縮小を施し、文書縮小画像Isを生成する。この縮小処理は、文字を縮小させることで連結させ、最終的に文書領域のエッジから傾きを検出するために行う。ここで文書領域とは、文字が書かれている領域つまり、複数の文字で構成された領域を示しており、章節や段落、または1行であってもよい。なお、この段階で文書領域が1つのオブジェクトとなることが望ましく、縮小時に文書領域の内側を塗潰す処理を行う。
【0015】
次に、塗潰された文書縮小画像Isに対して、文書領域のエッジを抽出し、エッジ画像Ieを生成する。このエッジ抽出処理としては、ラプラシアンフィルタやソーベルフィルタ等を用いれば良い。
【0016】
そしてエッジ画像Ieに対してハフ変換を施すことによって、文書領域のエッジに接する直線を検出する。ここで検出された直線の傾きがすなわち、文書画像の傾きを示していることになる。
【0017】
以上、第1実施形態における文書画像の傾き検出処理について簡単に説明したが、以下では、その詳細を説明する。
【0018】
●装置構成
図2は、本実施形態における画像処理装置の機能構成を示すブロック図である。図2に示すように、本実施形態における画像処理装置61は、文書画像の傾きを検出することが可能な装置であって、画像入力部601、画像縮小部602、エッジ画像生成部603、傾き検出部604、から構成される。
【0019】
画像入力部601は、文書画像を電子化した画像データを読み取るまたは生成することによって、本実施形態の処理対象となる画像データ(文書画像600)を入力する。画像縮小部602は、入力された文書画像を縮小する機能を有し、エッジ画像生成部603は、文書縮小画像から文字領域のエッジ部分の画像を生成する機能を有し、傾き検出部604は、文字領域のエッジ画像から傾きを検出する機能を有する。
【0020】
●傾き検出処理
以下、本実施形態における傾き検出処理を、図3のフローチャートを用いて詳細に説明する。
【0021】
まずステップS701において、画像処理装置61に文書画像600が入力されると、画像入力部601はこれを読み取り、文書画像データIとして、画像縮小部602に供給する。ここで文書画像データIとは、画素単位での扱いが可能な画像である。例えば文書画像が紙原稿である場合、画像入力部601は電荷結合素子CCDまたは光学センサーを有するものとし、画像入力指示に応じて文書画像の撮影、電気信号処理、デジタル信号処理等を行って文書画像データIを生成する。また、文書画像がページ記述言語で記述されたデータであったり、特有のデータ形式を扱うアプリケーションで作成されたデータである場合には、そのデータ形式を一般的な画像の形式(ビットマップ形式等)に変換し、文書画像データIとする。
【0022】
次にステップS702において画像縮小部602は、画像入力部601より供給された文書画像データIを縮小し、文書縮小画像Isを生成する。
【0023】
ここで図4を用いて、本実施形態における縮小処理について説明する。例えば縮小率R=1/(5×5)とする。この場合、文書画像データIにおいて、該縮小率Rに応じた縮小単位領域である5×5画素内に1画素でも黒画素が存在していれば、該縮小単位領域が黒色の1画素となるように、縮小処理を行う。このように、文書画像データIに対し、所定の縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定していく。このような縮小領域単位による縮小処理を文書画像データIの全範囲に施すことにより、単純縮小画像Ispが生成される。
【0024】
そしてステップS703において画像縮小部602はさらに、単純縮小画像Ispに対し、文字または行を連結させるための塗潰し処理を行って、文書縮小画像Isを生成する。すなわち、単純縮小画像Ispにおいて、既定の範囲L内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰す。具体的には、規定の範囲L内に黒画素が存在している場合に、該既定の範囲内にある全ての画素を黒とする。図4では、既定の範囲L=3画素として塗潰しを行った例を示している。
【0025】
ここで、本実施形態における縮小率Rと既定の範囲Lの数値選定について説明する。
【0026】
本実施形態における塗潰し処理は、文字または行を連結させて文書領域のエッジを抽出することが目的である。したがって、文字間隔をcs画素、行間隔をls画素とすると、以下の式(1)または式(2)を満たすように、縮小率Rと既定の範囲Lを選定すれば良い。なお以下において、"√R"の表記によりRの平方根を示すとする。
【0027】
L×1/√R>cs ・・・(1)
L×1/√R>ls ・・・(2)
例えば用紙がA4サイズとすると、一般的に用いられる文字サイズは8ポイントから28ポイントであるので、600dpiの場合、文字間隔は約20画素から約60画素、行間は約90画素から約250画素、となる。したがってこの場合、上記式(1),(2)はそれぞれ下式(3),(4)となり、すなわち、式(3)または式(4)を満たすように、縮小率Rと既定の範囲Lを決定すれば良い。
【0028】
L×1/√R>60 ・・・(3)
L×1/√R>250 ・・・(4)
更に具体例を示す。図6は、図5に示す文書画像(A4サイズ、600dpi、10.5ポイント)を、1/(40×40)で縮小し、既定の範囲を5画素として塗潰しを行うことによって得られた文書縮小画像Isを示す。図5に示す文書画像の文字サイズは10.5ポイントであるから、文字間隔は約20画素、行間隔は約80画素である。したがって、以下の式(5),(6)に示すように条件を満たしているため、その縮小画像は図6に示すように、文字と行が塗潰しにより連結されて、1つのオブジェクトとなっていることが分かる。
【0029】
L×1/√R=5×40=200>60 ・・・(5)
L×1/√R=5×40=200>80 ・・・(6)
以上のように、画像縮小部602で縮小されて塗潰された文書縮小画像Isが、エッジ画像生成部603に供給される。
【0030】
図3に戻り、次にステップS704ではエッジ画像生成部603において、画像縮小部602より供給された文書縮小画像Isから、文書領域のエッジを抽出したエッジ画像Ieを生成し、傾き検出部604へ送る。図7に、図6に示す文書縮小画像Isに基づいて生成されたエッジ画像Ieを示す。本実施形態におけるエッジ画像Ieの生成は、文書縮小画像Isに対してラプラシアンフィルタをかけることによって行う。ラプラシアンフィルタは、エッジ強調や先鋭化を行う際に一般的に用いられるフィルタであり、そのフィルタ係数は以下のように表すことができる。
【0031】
【数1】
【0032】
なお、エッジ抽出処理はラプラシアンフィルタの使用に限らず、例えば、ハイパスフィルタやソーベルフィルタ、プレウィットフィルタ等、エッジを強調するフィルタであれば適用可能である。
【0033】
次にステップS705では傾き検出部604において、エッジ画像生成部603より供給されたエッジ画像Ieに対し、ハフ変換を施すことによって文書領域のエッジに接する直線を検出する。そしてステップS706で傾き検出部604は、該検出された直線に基づき、文書領域の傾き角度Angを決定する。
【0034】
ここで、ハフ変換について、図8を用いて簡単に説明する。ハフ変換は、画像から直線や円弧の検出を行うことで知られている技術である。
【0035】
例えば図8に示すように、点P1(x1,y1)を通る任意の直線は、その直線に対する原点Oからの垂線の長さρと、その垂線の成す角度θを用いて、以下の式(7)によって表すことができる。
【0036】
ρ=x・cosθ+y・sinθ
ここでもし、該直線上に、P2(x2,y2)のような別の点があるとすると、点P2に対するθとρは、点P1に対するものと同じになる。したがって文書画像の平面上において、θとρが同じである点をカウントし、その個数が所定の閾値以上であれば、そこに直線が存在する、と導出することができる。図9に、図7に示すエッジ画像Ieに対し、ハフ変換を用いて算出した、文書領域のエッジに接する直線の描画例を示す。
【0037】
以上のように、ハフ変換によって検出された文書領域のエッジに接する直線について、その傾き角度Aがすなわち、文書領域の傾き角度Angである。
【0038】
●複数傾きからの選択処理
なお、文書領域のエッジに接する直線の傾き角度Aとしては、算出される値は1つに限らず、例えば2つの傾き角度A1およびA2が算出される場合がある。これはすなわち、文書領域の上面部と側面部にそれぞれ接する直線を検出したことによる。本実施形態ではこのように、傾きの異なる複数本の直線が検出された場合に、最終的な傾き角度Angを以下のように選択する。
【0039】
例えば、算出された直線の傾き角度Aとして、以下の2つが検出されたとする。なお、傾き角度におけるプラス/マイナスの値はそれぞれ、時計回り/反時計回りである旨を示している。
【0040】
A1=30[deg]
A2=−60[deg]
本実施形態では、以上の2つの傾き角度A1,A2が検出された場合、傾き角度の大きさが小さい方、すなわちA1=30[deg]を、傾き角度Angとして決定する。
【0041】
また、ノイズの影響により、文書領域のエッジに接する直線以外にも、複数本の直線が検出される場合がある。例えば、ハフ変換により、以下のような複数の傾き角度候補が算出されたとする。
【0042】
A1=30[deg]
A2=−15[deg]
A3=30[deg]
A4=−60[deg]
A5=30[deg]
これらの直線の例を図10に示す。本実施形態ではこのような場合、傾き角度の検出精度を上げるため、以下に示す2つの処理(処理a,処理b)のいずれか一方、もしくは組み合わせた処理を行う。
【0043】
処理a;複数検出された直線を選択
図10の(a)に示すように、1行ごとの文書領域のエッジに接する直線が検出されている場合があるので、頻度が多い直線の角度、つまりA1,A3,A5の30[deg]を、傾き角度として決定する。
【0044】
処理b;直交する直線を選択
また、一般に文書領域の上面部に接する直線と側面部に接する直線とは直交する、という性質を用いて、検出された直線から互いに直交する2本を選択して、傾き角度を決定する。この場合、図10の(b)に示すように、A1(またはA3またはA5)とA4の直線が直交しているため、傾き角度は30[deg]または−60[deg]のいずれかであると考えられる。したがって、傾き角度の小さい方、すなわちA1=30[deg]を、傾き角度Angとして決定する。
【0045】
なお、頻度が多い直線が無く、直交する直線も無いような場合には、最も点の数が多い直線を選択する方法を用いても良い。
【0046】
以上説明したように本実施形態によれば、文書画像を縮小し、該縮小された文書領域の特性に基づいて傾きを検出するため、文字の大きさによらず、また、文字上にノイズが発生した場合においても、文書画像の傾きを精度良く検出することができる。
【0047】
なお、本実施形態では、入力される文書画像として白黒の2値画像を例示したが、本発明はこれに限定されることなく、カラー画像に対しても適用可能である。例えばカラー画像の場合、所定の閾値に基づく大小判定により2値の縮小画像を生成し、以降は本実施形態と同様の処理を行えば良い。
【0048】
<第2実施形態>
以下、本発明に係る第2実施形態について説明する。第2実施形態においては、上述した第1実施形態に係る夫々の処理を、コンピュータによって実現することを特徴とする。
【0049】
図11は、第2実施形態におけるコンピュータの基本構成を示すブロック図である。例えばこのコンピュータにおいて、上述した第1実施形態の全ての機能を実行する場合、各機能構成をプログラムにより表現し、このコンピュータに読み込ませれば良い。
【0050】
同図において、1501はCPUであり、RAM1502やROM1503に格納されているプログラムやデータを用いて、コンピュータ全体の制御を行うと共に、上記第1実施形態で説明した各処理を行う。
【0051】
1502はRAMであり、例えば外部記憶装置1508からロードされたプログラムやデータを一時的に記憶するエリアを備えると共に、CPU1501が各種の処理を行うために必要とするエリアを備える。なお、他のコンピュータシステム1514からI/F(インターフェース)1515を介してダウンロードしたプログラムやデータについても、一時記憶対象となる。
【0052】
1503はROMであり、コンピュータの機能プログラムや設定データ等を記憶する。1504はディスプレイ制御装置であり、画像や文字等をディスプレイ1505に表示させるための制御処理を行う。1505はディスプレイであり、画像や文字などを表示する。なおディスプレイ1505としては、CRTや液晶画面などが適用可能である。
【0053】
1506は操作入力デバイスであり、キーボードやマウスなど、CPU1501に各種の指示を入力可能なデバイスにより構成されている。1507は、操作入力デバイス1506を介して入力された各種の指示等をCPU1501に通知するためのI/Oである。
【0054】
1508は、ハードディスクなどの大容量情報記憶装置として機能する外部記憶装置であり、OS(オペレーティングシステム)や、上記第1実施形態に係る処理をCPU1501に実行させるためのプログラム、入出力原稿画像、等を記憶する。外部記憶装置1508への情報の書き込みおよび読み出しはI/O1509を介して行われる。
【0055】
1510は、文書や画像を出力するためのプリンタであり、出力データはI/O1511を介してRAM1502、もしくは外部記憶装置1508から送られる。なお、文書や画像を出力するためのプリンタとしては、例えばインクジェットプリンタ、レーザビームプリンタ、熱転写型プリンタ、ドットインパクトプリンタなどが挙げられる。
【0056】
1512は文書や画像を読み取るためのスキャナであり、入力データはI/O1513を介して、RAM1502もしくは外部記憶装置1508に送られる。
【0057】
1516は、CPU1501、ROM1503、RAM1502、I/O1511、I/O1509、ディスプレイ制御装置1504、I/F1515、I/O1507、I/O1513、を繋ぐバスである。
【0058】
なお第2実施形態においては、スキャンやプリントを除く処理をコンピュータにより行う例を示したが、スキャナ1512やプリンタ1510内部の専用のハードウェア回路を用いて、コンピュータで行う処理を代行しても良い。
【0059】
以上説明したように第2実施形態によれば、コンピュータによって上述した第1実施形態の機能を実現することができる。
【0060】
<他の実施形態>
上述した第1および第2実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。例えば、上記第2実施形態において、本発明をコンピュータによって実現する例を示したが、以下に、本発明の範疇となる技術範囲について、さらに詳細に説明する。
【0061】
本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮影装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0062】
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、実施形態において図に示したフローチャートに対応したコンピュータ可読のプログラムである。
【0063】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0064】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0065】
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM,DVD-R)などである。
【0066】
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0067】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
【0068】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0069】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
【図面の簡単な説明】
【0070】
【図1】本発明に係る第1実施形態における傾き検出処理の概念を示す図である。
【図2】本実施形態における画像処理装置の機能構成を示すブロック図である。
【図3】本実施形態における傾き検出処理を示すフローチャートである。
【図4】本実施形態における縮小処理を説明する図である。
【図5】本実施形態の処理対象となる、30[deg]の傾きを有する文書画像例を示す図である。
【図6】本実施形態における文書縮小画像例を示す図である。
【図7】本実施形態におけるエッジ画像例を示す図である。
【図8】本実施形態におけるハフ変換を説明する図である。
【図9】本実施形態で検出された文書領域のエッジに接する直線例を示す図である。
【図10】本実施形態における傾き角度の決定方法を示す図である。
【図11】第2実施形態におけるコンピュータシステムの構成を示すブロック図である。
【図12】従来の傾き検出方法を説明する図である。
【図13】従来の動き検出方法において発生する不具合例を示す図である。
【図14】従来の動き検出方法において発生する不具合例を示す図である。
【図15】従来の動き検出方法において発生する不具合例を示す図である。
【特許請求の範囲】
【請求項1】
文書領域を含んだ文書画像を入力する画像入力手段と、
前記文書画像を縮小することによって文書縮小画像を生成する縮小手段と、
前記文書縮小画像から前記文書領域のエッジを抽出したエッジ画像を生成するエッジ画像生成手段と、
前記エッジ画像において前記文書領域のエッジに接する直線に基づき、前記文書画像の傾きを検出する傾き検出手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記縮小手段は、
前記文書画像に対し、予め定められた縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定するように、単純縮小画像を生成する単純縮小手段と、
前記単純縮小画像に対し、予め定められた範囲内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰すことによって、前記文書縮小画像を生成する塗潰し手段と、
を有することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記エッジ画像生成手段は、ラプラシアンフィルタによるエッジ抽出を行うことを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記エッジ画像生成手段は、ハイパスフィルタによるエッジ抽出を行うことを特徴とする請求項1または2に記載の画像処理装置。
【請求項5】
前記傾き検出手段は、前記エッジ画像において前記文書領域のエッジに接する直線をハフ変換により検出し、該直線の傾きに基づいて前記文書画像の傾きを検出することを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
【請求項6】
前記傾き検出手段は、傾きの異なる複数の直線が検出された場合に、該複数の直線において最も小さい傾きを前記文書画像の傾きとすることを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記傾き検出手段は、傾きの異なる複数の直線が検出された場合に、該複数の直線において最も多い傾きを前記文書画像の傾きとすることを特徴とする請求項5に記載の画像処理装置。
【請求項8】
前記傾き検出手段は、傾きの異なる複数の直線が検出された場合に、互いに直交する2本を選択し、該2本の直線のうち小さいほうの傾きを前記文書画像の傾きとすることを特徴とする請求項5に記載の画像処理装置。
【請求項9】
文書領域を含んだ文書画像を入力する画像入力ステップと、
前記文書画像を縮小することによって文書縮小画像を生成する縮小ステップと、
前記文書縮小画像から前記文書領域のエッジを抽出したエッジ画像を生成するエッジ画像生成ステップと、
前記エッジ画像において前記文書領域のエッジに接する直線に基づき、前記文書画像の傾きを検出する傾き検出ステップと、
を有することを特徴とする画像処理方法。
【請求項10】
前記縮小ステップはさらに、
前記文書画像に対し、予め定められた縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定するように、単純縮小画像を生成する単純縮小ステップと、
前記単純縮小画像に対し、予め定められた範囲内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰すことによって、前記文書縮小画像を生成する塗潰しステップと、
を有することを特徴とする請求項9に記載の画像処理方法。
【請求項11】
コンピュータを請求項1乃至8のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
【請求項12】
請求項11に記載のプログラムを記憶したコンピュータ可読な記憶媒体。
【請求項1】
文書領域を含んだ文書画像を入力する画像入力手段と、
前記文書画像を縮小することによって文書縮小画像を生成する縮小手段と、
前記文書縮小画像から前記文書領域のエッジを抽出したエッジ画像を生成するエッジ画像生成手段と、
前記エッジ画像において前記文書領域のエッジに接する直線に基づき、前記文書画像の傾きを検出する傾き検出手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記縮小手段は、
前記文書画像に対し、予め定められた縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定するように、単純縮小画像を生成する単純縮小手段と、
前記単純縮小画像に対し、予め定められた範囲内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰すことによって、前記文書縮小画像を生成する塗潰し手段と、
を有することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記エッジ画像生成手段は、ラプラシアンフィルタによるエッジ抽出を行うことを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記エッジ画像生成手段は、ハイパスフィルタによるエッジ抽出を行うことを特徴とする請求項1または2に記載の画像処理装置。
【請求項5】
前記傾き検出手段は、前記エッジ画像において前記文書領域のエッジに接する直線をハフ変換により検出し、該直線の傾きに基づいて前記文書画像の傾きを検出することを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
【請求項6】
前記傾き検出手段は、傾きの異なる複数の直線が検出された場合に、該複数の直線において最も小さい傾きを前記文書画像の傾きとすることを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記傾き検出手段は、傾きの異なる複数の直線が検出された場合に、該複数の直線において最も多い傾きを前記文書画像の傾きとすることを特徴とする請求項5に記載の画像処理装置。
【請求項8】
前記傾き検出手段は、傾きの異なる複数の直線が検出された場合に、互いに直交する2本を選択し、該2本の直線のうち小さいほうの傾きを前記文書画像の傾きとすることを特徴とする請求項5に記載の画像処理装置。
【請求項9】
文書領域を含んだ文書画像を入力する画像入力ステップと、
前記文書画像を縮小することによって文書縮小画像を生成する縮小ステップと、
前記文書縮小画像から前記文書領域のエッジを抽出したエッジ画像を生成するエッジ画像生成ステップと、
前記エッジ画像において前記文書領域のエッジに接する直線に基づき、前記文書画像の傾きを検出する傾き検出ステップと、
を有することを特徴とする画像処理方法。
【請求項10】
前記縮小ステップはさらに、
前記文書画像に対し、予め定められた縮小単位領域内にある複数画素の値に基づいて、該縮小単位領域が対応する1画素の値を決定するように、単純縮小画像を生成する単純縮小ステップと、
前記単純縮小画像に対し、予め定められた範囲内にある複数画素の値に基づいて、該範囲内を同一の画素値で塗潰すことによって、前記文書縮小画像を生成する塗潰しステップと、
を有することを特徴とする請求項9に記載の画像処理方法。
【請求項11】
コンピュータを請求項1乃至8のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
【請求項12】
請求項11に記載のプログラムを記憶したコンピュータ可読な記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2010−3087(P2010−3087A)
【公開日】平成22年1月7日(2010.1.7)
【国際特許分類】
【出願番号】特願2008−160949(P2008−160949)
【出願日】平成20年6月19日(2008.6.19)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成22年1月7日(2010.1.7)
【国際特許分類】
【出願日】平成20年6月19日(2008.6.19)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]