(57)【要約】【課題】本発明は、画像から歪んだ直線を抽出する方法及び装置を提供する。【解決手段】該方法は、画像に対して線分検出処理を行い；検出された各線分について、現在の線分との不共線程度が低い隣接線分を見つけ、それらを組み合わせて１つ又は複数の線分組み合わせを取得し；及び、線分組み合わせに基づいて、歪んだ直線を抽出するステップを含む。【選択図】図２
2015115067.tif 000002
【特許請求の範囲】
【請求項１】
画像から歪んだ直線を抽出する方法であって、
前記画像に対して線分検出処理を行い；
検出された各線分について、現在の線分との不共線程度が低い隣接線分を探し、前記現在の線分と、探された隣接線分とを組み合わせて、１つ又は複数の線分組み合わせを取得し；及び、
前記線分の組み合わせに基づいて、前記歪んだ直線を抽出するステップを含む、方法。
【請求項２】
請求項1に記載の方法であって、
前記抽出するステップの前に、更に、
前記線分組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うステップを含む、方法。
【請求項３】
請求項2に記載の方法であって、
前記勾配及び前記平滑度の両者を最適化するための平衡エネルギー関数を構築して解くことにより、前記最適化処理を行う、方法。
【請求項４】
請求項2又は3に記載の方法であって、
前記線分組み合わせ中に所定画素数よりも大きい不連続箇所が存在する時に、前記最適化処理を行う、方法。
【請求項５】
請求項1に記載の方法であって、
前記現在の線分との不共線程度が低い隣接線分を探すことは、更に、
前記現在の線分の傾斜方向に沿って１つの隣接矩形領域を定義し；及び
前記隣接矩形領域において、先に中間でその後は両辺で、近いから遠いへというルールで、前記現在の線分との不共線程度が所定閾値よりも低い他の線分を前記隣接線分とすることを含む、方法。
【請求項６】
請求項5に記載の方法であって、
次の式を用いて接続角を計算し、計算された前記接続角を以て前記不共線程度を表し、前記接続角が小さければ小さいほど、前記不共線程度が低く、
接続角=max(abs(a2-a1),abs(a2-a3))
そのうち、a1は、前記現在の線分と、所定基準線との夾角であり、a2は、前記現在の線分と前記他の線分との間の接続線と、前記所定基準線との夾角であり、a3は、前記他の線分と、前記所定基準線との夾角である、方法。
【請求項７】
請求項5に記載の方法であって、
ファイル類型のテキスト画像については、先に比較的小さい前記所定閾値及び比較的小さい前記矩形領域を設定し、探された線分に対して一回目の組み合わせを行い、そして、比較的大きい前記所定閾値及び比較的大きい前記矩形領域を設定し、探された線分に対して二回目の組み合わせを行う、方法。
【請求項８】
請求項4に記載の方法であって、
不連続箇所の長さが所定画素数よりも大きい２つの線分については、前記最適化処理後の前記２つ線分の端点の接続線を前記不連続箇所の線分として抽出する、方法。
【請求項９】
画像から歪んだ直線を抽出する装置であって、
前記画像に対して線分検出処理を行うための検出モジュール；
検出された各線分について、現在の線分との不共線程度が低い隣接線分を探し、前記現在の線分と、探された隣接線分とを組み合わせて、１つ又は複数の線分組み合わせを取得し；及び、
前記線分組み合わせに基づいて、前記歪んだ直線を抽出するための抽出モジュールを含む、装置。
【請求項１０】
請求項9に記載の装置であって、
前記抽出モジュールが前記歪んだ直線を抽出する前に、前記線分組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うための最適化処理モジュールを更に含む、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像から歪んだ（distorted）直線を抽出するための方法及び装置に関する。
【背景技術】
【０００２】
スキャナーやデジタルカメラにより取得されたテキスト画像には、通常、比較的大きな歪み（distortion）が存在する。このような歪みを矯正するためには、まず、テキスト画像中の歪んだ直線を抽出する必要がある。その後、このような歪んだ直線を矯正することによって、テキスト画像全体を矯正する。
【０００３】
テキスト画像中の歪んだ直線は、図1に示すようである。図1の上図に示すファイル類型のテキスト画像及び下図に示す書籍類型のテキスト画像では、ファイル又は書籍中の水平直線であるはずの線が、歪んだ直線L1及びL2になってしまう。
【０００４】
テキスト画像から歪んだ直線を抽出する従来方法としては、Hough変換やRANSACアルゴリズムがある。しかしながら、従来の抽出方法は、通常、歪んだ後の曲線の特定パラメーター形式に頼り、また、任意形状の曲線を抽出することができないので、正確度が低い。
【０００５】
本発明は、従来技術に存在する欠点に対してなされたものである。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
以下、本発明のいくつかの側面についての基本理解を提供するために、本発明の簡単な概説を述べる。なお、理解すべきは、このような概説は、本発明についての網羅的な概説ではないとのことである。それは、本発明のキー又は重要な部分を確定するためのものではなく、また、本発明の範囲を限定するためのものでもない。その目的は、簡略な形式で、いくつかの概念を挙げ、後述する更なる詳細な説明の前書きとするだけである。
【０００７】
本発明の１つの主な目的は、従来の抽出方法が歪み後の曲線の特定パラメーター形式に頼り、また、任意形状の曲線を抽出することができないと言った問題を克服するために、画像から歪んだ直線を抽出する方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一側面によれば、画像から歪んだ直線を抽出する方法が提供され、該方法は、画像に対して線分検出処理を行い；検出された各線分について、現在の線分との不共線（non-collinear）程度が低い隣接線分を見つけ、それらを組み合わせて、１つ又は複数の線分組み合わせを取得し；及び、前記線分組み合わせに基づいて歪んだ直線を抽出するステップを含む。
【０００９】
上述の画像から歪んだ直線を抽出する方法では、抽出ステップの前に、線分組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うステップを更に含む。
【００１０】
上述の画像から歪んだ直線を抽出する方法では、勾配及び平滑度の両者を最適化するための平衡エネルギー関数（balanced  energy  function）を構築して解くことによって、最適化処理を行う。
【００１１】
上述の画像から歪んだ直線を抽出する方法では、線分組み合わせ中に所定画素数よりも大きい不連続箇所（discontinuity）が存在する時に、最適化処理を行う。不連続箇所の長さが所定画素数よりも大きい２つの線分について、最適化処理後の２つの線分の端点の接続線（連線）を不連続箇所の線分として抽出する。
【００１２】
本発明の他の側面によれば、画像から歪んだ直線を抽出するための装置が提供され、該装置は、画像に対して線分検出処理を行うための検出モジュール；検出された各線分について、現在の線分との不共線程度が低い隣接線分を見つけ、それらを組み合わせて、１つ又は複数の線分組み合わせを取得するための組み合わせモジュール；及び、前記線分組み合わせに基づいて歪んだ直線を抽出するための抽出モジュールを含む。
【００１３】
また、本発明の実施例は、更に、上述の方法を実現するためのコンピュータプログラムをも提供する。
【００１４】
また、本発明の実施例は、更に、上述のコンピュータプログラムを記憶したコンピュータ可読記録媒体をも提供する。
【００１５】
本発明の実施例による方法及び装置は、歪んだ後の曲線の特定パラメーター形式に頼らず、また、任意形状の曲線を抽出することもできるので、歪んだ直線を抽出する正確率を向上させることができる。
【００１６】
また、本発明の実施例による方法及び装置は、比較的速い処理速度を有する。
【００１７】
以下、図面とともに本発明の最適な実施例を詳細に説明し、これにより、本発明のこれら及び他の利点がより明らかになる。
【図面の簡単な説明】
【００１８】
以下に図面とともに本発明の実施例を説明することにより、本発明の上述及び他の目的、特徴、利点をより容易に理解することができる。図面に示すのは、本発明の原理を示すためだけのものである。また、図面では、同じ又は類似する技術的特徴又は要素が同じ又は類似する符号により示される。
【図１】テキスト画像中の歪んだ直線を示す図である。
【図２】本発明の実施例による画像から歪んだ直線を抽出する方法のフローチャートである。
【図３】本発明の実施例による現在の線分の隣接線分を探す方式を示す図である。
【図４】書籍類型のテキスト画像に用いる接続角の値の分布を示す図である。
【図５】グレースケール画像中の明領域から暗領域への境界に位置する線分及び暗領域から明領域への境界に位置する線分を示す図である。
【図６】本発明の実施例による最適化処理後に抽出された歪んだ直線を示す図である。
【図７】本発明の一実施例による画像から歪んだ直線を抽出するための装置のブロック図である。
【図８】本発明の他の実施例による画像から歪んだ直線を抽出するための装置のブロック図である。
【図９】本発明による画像から歪んだ直線を抽出する方法及び装置の実施に用い得る計算装置の例の構成図である。
【発明を実施するための形態】
【００１９】
以下、添付した図面を参照しながら、本発明の実施例を詳細に説明する。本発明の１つの図面又は１つの実施例に説明する要素及び特徴は、１つ又は複数の他の図面又は実施例に示す要素又は特徴と組み合わせることができる。なお、明確にするために、図面及び説明では、本発明との関係がなく、当業者に既知の要素及び処理の図示及び記載が省略されている。
【００２０】
図2は、本発明の実施例による画像から歪んだ直線を抽出する方法のフローチャートである。以下、図2を参照しながら、本発明の実施例による画像から歪んだ直線を抽出する方法を説明する。
【００２１】
ステップS201では、画像に対して線分検出処理を行う。
【００２２】
画像に対して線分検出処理を行う前に、原始（オリジナル）画像に対して前処理を行っても良い。前処理は、次の処理のうちの１つ又は複数であっても良く、即ち：原始画像を比例縮小させる処理、例えば、原始画像に対してダウンサンプリングを行い、サンプリング後に得られた画像の長さ及び幅が原始画像の長さ及び幅の1/4になるようにさせる処理；原始画像がカラー画像である時に、原始画像をグレースケール画像に変換する処理；及び、原始画像に対して平滑化、例えば、Gaussian平滑化を行う処理である。なお、当業者が理解すべきは、画像に対して行う前処理はオプションであるとのことである。
【００２３】
その後、前処理後の画像に対して線分検出処理を行う。例えば、前処理後の画像上でGioiらが提案したLSDアルゴリズムを行ってもよい。LSDアルゴリズムの基本思想とは、相似な勾配方向及び大小（サイズ）を有する画素に対してクラスタリングを行うことで直線分を検出することである。しかし、LSDアルゴリズムなどの線分検出アルゴリズムは、いくつかの不連続な線分しか検出することができないので、画像中の各々の完全な歪んだ直線を得るために、これらの線分を更に組み合わせる必要がある。
【００２４】
ステップS202では、検出された各線分について、現在の線分との不共線程度が低い隣接線分を見つけ、それらを組み合わせて、１つ又は複数の線分の線分組み合わせを得る。上述の不共線程度とは、任意の２つの線分が接続により直線になる可能性を指し、２つの線分の不共線程度が低ければ低いほど、２つの線分が接続により直線になる可能性が大きい。
【００２５】
ステップS202を行う前に、先に、検出された、長さが比較的小さい線分に対してフィルタリングを行ってノイズを除去しても良い。例えば、まず、長さが6個の画素よりも小さい線分をフィルタリングする。また、画像から歪んだ水平直線を抽出する場合、更に、長さ対幅の比が比較的大きい線分、例えば、y/x>1.5の線分をフィルタリングしてもよく、そのうち、yは、線分の垂直のy軸方向における長さを示し、xは、線分の水平のx軸方向における線分の幅を示す。もちろん、画像から歪んだ垂直直線を抽出する場合、長さ対幅の比が比較的小さい線分をフィルタリングしても良い。
【００２６】
フィルタリング後に残された各線分について、現在の線分との不共線程度が低い隣接線分を探す。具体的には、現在の線分の傾斜（勾配）方向に沿って１つの隣接矩形領域を限定（定義）し、該隣接矩形領域内において、「先に中間でその後は両辺で」、「近いから遠いへ」という原則（ルール）に従って、現在の線分との不共線程度が所定閾値よりも低い他の線分を探して隣接線分としても良い。例えば、図3に示すように、現在の線分L31の傾斜（勾配）に基づいて、それに隣接する矩形領域Rectを定義し、例えば、該矩形の長さをXNEI、該矩形の高さをYNEIとする場合、YNEIを10個の画素、XNEIを60個の画素としても良い。矩形領域Rectの上下両辺は、現在の線分L31とは同じ傾斜を有し、また、現在の線分L31の、矩形領域に隣接する端点は、矩形領域の１つの側辺の中点であり、該中点から他の側辺の中点までの接続線（連線）は、矩形領域の中線である。矩形領域内において、先に中線上の位置でその後は該位置の両側の位置で、中線に沿って他の線分の端点を逐次捜索する。捜索された他の線分の端点が所在する線分と、現在の線分との不共線程度の値が所定閾値よりも小さい場合、該他の線分は、現在の線分の隣接線分であるとする。好ましくは、接続角の角度JOIN_ANGを以て不共線程度を表すことができ、接続角が小さければ小さいほど、不共線程度が低い。もちろん、当業者が理解すべきは、不共線程度を表すの他の方式もあるとのことである。また、下式（1）を用いて接続角の角度JOIN_ANGを計算することができる。
【００２７】
JOIN_ANG=max(abs(a2-a1),abs(a2-a3))  （1）
そのうち、a1は、現在の線分と、所定基準線（例えば、水平線）との夾角であり、a2は、現在の線分と上述の他の線分との間の接続線と、所定基準線との夾角であり、a3は、上述の他線分と、所定基準線との夾角である。上式により、図3では、現在の線分L31と、線分L32との不共線程度の値が所定閾値よりも小さいので、線分L32は、現在の線分L31の隣接線分となる。
【００２８】
見つけられた複数の線分を組み合わせて、１つ又は複数の線分の線分組み合わせを得る。
【００２９】
また、書籍類型のテキスト画像については、接続角の値の分布が図4に示すようであり、そのうち、xは、水平方向の座標を示し、spinexは、本の背の位置である。図4から分かるように、本の中線（背）の位置における直線は、通常、比較的大きな歪みを有する。本の背（中線）の位置を事前に把握することができるので、中線近傍の接続角の所定閾値を、比較的大きな値にしても良い。また、中線近傍の接続角JOIN_ANGは、下式（2）により計算することができる。
【００３０】
JOIN_ANG=Max(12,-280/w*abs(end_x-spinex)+40)  （2）
そのうち、wは画像の幅であり、end_xは、本の背に近い線分の端点の位置であり、spinexは、本の背の位置である。
【００３１】
また、ファイル類型のテキスト画像については、どの領域における直線の歪みが比較的大きいかが分からないので、２段法を採用して線分に対して組み合わせを行う。第一段：先に、比較的小さい所定閾値及び比較的小さい矩形領域を設定して隣接線分を捜索し、そして、捜索された線分に対して一回目の組み合わせを行ってノイズを除去し、例えば、YNEIを10、XNEIを60に設定し、接続角JOIN_ANGを8に設定する。第二段：次に、比較的大きな所定設閾値及び比較的大きな矩形領域を設定して隣接線分を捜索し、そして、捜索された線分に対して二回目の組み合わせを行い、例えば、YNEIを16、XNEIを80に設定し、接続角JOIN_ANGを15に設定する。
【００３２】
また、グレースケール画像については、グレースケール画像中の明領域から暗領域への境界に位置する線分及び暗領域から明領域への境界に位置する線分に対してそれぞれ単独で組み合わせを行っても良い。例えば、図5に示すように、グレースケール画像中の明領域から暗領域への境界に位置する複数の線分L3及び暗領域から明領域への境界に位置する複数の線分L3に対して分けて組み合わせを行っても良い。
【００３３】
再び図2のステップS203を参照するに、ステップS203では、上述の線分組み合わせに基づいて、画像中の歪んだ直線を抽出する。例えば、同一の線分組み合わせを構成する複数の線分を直接接続させて画像中の歪んだ直線を抽出しても良い。
【００３４】
本発明の一実施例による画像から歪んだ直線を抽出する方法によれば、任意形状の曲線を抽出することができるので、歪んだ直線を抽出する正確率を向上させることができる。
【００３５】
本発明の一実施例によれば、複数の線分を直接接続させて画像中の歪んだ直線を抽出することは、複数の折れ線を用いて曲線を近似することに相当する。
【００３６】
画像中の歪んだ直線をより正確に抽出するために、本発明による他の実施例が提供され、そのうち、画像中の歪んだ直線を抽出する前に、更に、直接接続の線分組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うことを含む。
【００３７】
最適化処理は、勾配及び平滑度の両者を最適化するための平衡エネルギー関数を構築して解くことによって行われても良い。例えば、下式（3）で該エネルギー関数を表すことができる。
【数１】
2015115067.tif 000003
【００３８】
そのうち、▽Iy(p)は、画素pのy方向における勾配であり、該勾配は、テンプレート[1  0  -1]T（即ち、[1  0  -1]の転置）により計算され；λパラメーターは、次のように設定され、即ち、λ2=100、λ3=1200、λ4=4であり、明領域から暗領域への境界にある線の場合、λ1=-2.5であり、暗領域から明領域への境界にある線の場合、λ1=2.5であり；Δyiは、-3乃至3の間の整数である。該エネルギー関数は、第一項が勾配の値を大きくさせ、第二項が曲線を円滑にさせる。第三項については、その絶対値が常識上の絶対値ではなく、それは、abs(a-b)≦1の場合、|a-b|=0であり、そうでない場合、|a-b|=abs(a-b)とのように定義される。上述のエネルギー関数により、１つの鎖状構造が構成され、Viterbiアルゴリズムを用いて該エネルギー関数の全局的最適解を求めることができる。このような全局的最適解により構成される曲線は、より高い正確度を有する。
【００３９】
もちろん、線分組み合わせ中に所定画素数よりも大きい不連続箇所が存在する時のみに、最適化処理を行っても良い。例えば、線分組み合わせ中に10個の画素よりも大きい不連続箇所が存在する時に最適化処理を行う。この場合、先に、不連続箇所が10個の画素よりも大きい線分に対してマーク付けを行い、直接接続の線分組み合わせに対して勾配及び平滑度を最適化するための最適化処理を行った後に、最適化処理後の、不連続箇所が10個の画素よりも大きい２つの線分の端点の接続線を、不連続箇所の線分として抽出してもよい。また、他の10個の画素よりも小さい不連続箇所の線分は、最適化処理の結果に基づいて抽出することもできる。
【００４０】
図6に示すように、図6の上図に示すように組み合わせた線分Liに対して直接接続を行って歪んだ直線を抽出する場合に比べ、図6の下図に示すように最適化処理後に抽出された歪んだ直線Lは、より正確になる。
【００４１】
本発明の実施例による画像から歪んだ直線を抽出する方法は、カラー画像又はグレースケール画像にも適用し得る。カラー画像又はグレースケール画像から歪んだ水平直線又は垂直直線を抽出することができる。
【００４２】
本発明の実施例による画像から歪んだ直線を抽出する方法は、任意形状の曲線を抽出することができ、且つ、正確性がより高い。
【００４３】
また、本発明の実施例による画像から歪んだ直線を抽出する方法は、処理速度が速く、解像度が3000dpiである4000×3000画素サイズの画像について、該方法の実行時間は、約500msである。
【００４４】
以下、図7を参照しながら、本発明の実施例による画像から歪んだ直線を抽出する装置700を説明する。
【００４５】
図7は、本発明の実施例による画像から歪んだ直線を抽出するため装置700のブロック図である。そのうち、便宜のため、本発明と密に関連する部分のみが示されている。画像から歪んだ直線を抽出するための装置700では、図2に基づいて説明した画像から歪んだ直線を抽出する方法を行うことができる。図7に示すように、画像から歪んだ直線を抽出するための装置700は、検出モジュール701、組み合わせモジュール702、及び抽出モジュール703を含んでも良い。
【００４６】
検出モジュール701は、画像に対して線分検出処理を行うように構成されても良い。組み合わせモジュール702は、検出された各線分について、現在の線分との不共線程度が低い隣接線分を見つけ、それらを組み合わせて、１つ又は複数の線分の線分組み合わせを得るように構成されても良い。抽出モジュール703は、前記線分組み合わせに基づいて、前記歪んだ直線を抽出するように構成されても良い。
【００４７】
具体的には、組み合わせモジュール702は、更に、現在の線分の傾斜方向に沿って１つの隣接矩形領域を定義し；及び、該隣接矩形領域内において、先に中間でその後は両辺で、近いから遠いへという原則に従って、現在の線分との不共線程度が所定閾値よりも低い他の線分を現在の線分の隣接線分として捜索し、現在の線分及び隣接線分を組み合わせて、１つ又は複数の線分の線分組み合わせを得るように構成されてもよい。また、接続角により不共線程度を表してもよく、接続角が小さければ小さいほど、不共線程度が低い。
【００４８】
書籍類型のテキスト画像における本の中線（背）の位置については、所定閾値が比較的大きく設定される。ファイル類型のテキスト画像については、先に、比較的小さい所定閾値及び比較的小さい矩形領域を設定し、捜索された線分に対して一回目の組み合わせを行い、次に、比較的大きい所定閾値及び比較的大きい矩形領域を設定し、捜索された線分に対して二回目の組み合わせを行う。
【００４９】
本発明の一実施例による画像から歪んだ直線を抽出する装置は、任意形状の曲線を抽出することができるので、歪んだ直線を抽出する正確率を向上させることができる。
【００５０】
以下、図8を参照しながら、本発明の他の実施例による画像から歪んだ直線を抽出するための装置を説明する。
【００５１】
図8は、本発明の他の実施例による画像から歪んだ直線を抽出するための装置800のブロック図である。図8に示すように、本発明の他の実施例による画像から歪んだ直線を抽出するための装置800は、図7に示すモジュール以外、最適化処理モジュール804を更に含む。
【００５２】
最適化処理モジュール804は、抽出モジュール703が歪んだ直線を抽出する前に、線分組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うように構成されても良い。
【００５３】
最適化処理モジュール804は、勾配及び平滑度の両者を最適化するための平衡エネルギー関数を構築して解くことによって、最適化処理を行っても良い。
【００５４】
最適化処理モジュール804は、更に、線分組み合わせ中に所定画素数よりも大きい不連続箇所が存在する時のみに最適化処理を行うように構成されても良い。不連続箇所の長さが所定画素値よりも大きい２つの線分については、最適化処理された後の２つの線分の端点の接続線を不連続箇所の線分として抽出しても良い。
【００５５】
本発明の実施例による画像から歪んだ直線を抽出するための装置は、カラー画像又はグレースケール画像にも適用することができ、カラー画像又はグレースケール画像から歪んだ水平直線又は垂直直線を抽出することができる。
【００５６】
本発明の実施例による画像から歪んだ直線を抽出するための装置は、任意形状の曲線を抽出することができ、且つ、正確性がより高い。
【００５７】
また、本発明の実施例による画像から歪んだ直線を抽出するための装置は、処理速度が速く、解像度が3000dpiである4000×3000画素サイズの画像については、処理時間が約500msである。
【００５８】
以上、具体的な実施例を基に本発明の基本原理を説明した。なお、当業者が理解すべきは、本発明の方法及び装置の全部又は任意のステップ或いはコンポーネントが、任意の計算装置（処理ユニットや記憶媒体などを含む）又は計算装置のネットワークで、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせにより実現され得るとのことである。これは、当業者が本発明の説明を読んだ上で基本的なプログラミング能力を用いて実現することができる。
【００５９】
よって、本発明の目的は、更に、任意の計算装置に、１つのプログラム又は一組のプログラムを実行させることにより実現することができる。計算装置は、周知の汎用装置であっても良い。よって、本発明の目的は、更に、方法又は装置を実現し得るプログラムコードを含むプログラムプロダクトのみにより実現することもできる。言い換えると、このようなプログラムプロダクトも本発明に属し、且つ、このようなプログラムプロダクトのコードを記憶した記憶媒体も本発明に属する。もちろん、記憶媒体は、任意の周知の記憶媒体又は将来に開発される任意の記憶媒体であっても良い。
【００６０】
ソフトウェア及び／又はファームウェアにより本発明の実施例を実現する場合、記憶媒体又はネットワークから、専用ハードウェア構造を有するコンピュータ、例えば、図9に示す汎用コンピュータ900に、該ソフトウェアを構成するプログラムをインストールする。該コンピュータは、各種プログラムがインストールされている時に、各種機能などを実現することができる。
【００６１】
図9では、CPU  901は、ROM  902に記憶されているプログラム又は記憶部908からRAM  903にロードされているプログラムに基づいて各種処理を行う。RAM  903は、ニーズに応じて、CPU  901が各種処理などを行う時に必要なデータをも記憶する。CPU  901、ROM  902及びRAM  903は、バス904を経由して互いに接続される。入力／出力インターフェース905もバス904に接続される。
【００６２】
入力／出力インターフェース905には、入力部906（キーボードやマウスなどを含む）、出力部907（表示器、例えばＣＲＴ、ＬＣＤ、スピーカーなどを含む）、記憶部908（ハードディスクなどを含む）、及び通信部909（ネットワーク接続カード、例えばＬＡＮカード、モデムなどを含む）が接続される。通信部909は、ネットワーク、例えばインターネットを経由して通信処理を行う。また、ドライブ910がニーズに応じて入力／出力インターフェース905に接続されても良い。また、ニーズに応じて、取り外し可能な媒体911、例えば磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどをドライブ910にセットすることにより、その中から読み出したコンピュータプログラムを記憶部908にインストールしても良い。
【００６３】
ソフトウェアにより上述の処理を実現する場合は、ネットワーク、例えばインターネット、又は記憶媒体、例えば取り外し可能な媒体911から、このソフトウェアを構成すプログラムをインストールしても良い。
【００６４】
なお、当業者が理解すべきは、このような記憶媒体は、中にプログラムが記憶されており、ユーザにプログラムを提供するよう装置と独立して配られる図9に示すような取り外し可能な媒体911に限定されない。取り外し可能な媒体911の例としては、磁気ディスク（フロッピー（登録商標）ディスクを含む）、光ディスク（ＣＤ−ＲＯＭ及びＤＶＤを含む）、光磁気ディスク（ＭＤ（登録商標）を含む）、及び半導体メモリを含む。或いは、記憶媒体はＲＯＭ902、記憶部908に含まれるハードディスクなどであってもよく、それらにはプログラムが記憶されており、且つそれらを含む装置とともにユーザに配られても良い。
【００６５】
また、本発明は、マシン（例えば、コンピュータ）読取可能な命令コードからなるプログラムプロダクトにも関する。この命令コードは、マシンに読み取られて実行される時に、上述の実施例による方法を実行させることができる。
【００６６】
さらに、上述のマシン読取可能な命令コードからなるプログラムプロダクトを記憶している記憶媒体も本開示に含まれている。このような記憶媒体は、磁気ディスク（フロッピーディスク）、光ディスク、光磁気ディスク、メモリカード、メモリスティックなどを含むが、これらに限定されない。
【００６７】
また、もちろん、本発明の上述の方法の各処理プロセスは、各種のマシン可読記憶媒体に保存のコンピュータ実行可能なプログラムの方式により実現されても良い。
【００６８】
また、本発明の目的は、上述の実行可能なプログラムコードを記憶している記憶媒体を直接又は間接にシステム又は装置に提供し、且つ、該システム又は装置中のコンピュータ又は中央処理ユニット（CPU）が上述のプログラムコードを読み出して実行させる方式で実現されても良い。
【００６９】
また、該システム又は装置はプログラムを実行する機能を有すれば、本発明の実施方式はプログラムに限定されず、また、該プログラムは他の任意の形式、例えば、オブジェクトプログラム、インタープリター実行用プログラム、又は、オペレーティングシステム操作システムに提供するスクリプトプログラムなどであっても良い。
【００７０】
上述のマシン可読記憶媒体は、各種の記憶装置及び記憶ユニット、半導体装置、ディスユニット例えば光、磁気及び光磁気ディス、及び他の任意の使用可能な情報記憶媒体などであっても良い。
【００７１】
また、クライントコンピュータが、インターネットに接続されている所定のウェブサイトを経由して、本発明の上述の実施例によるコンピュータプログラムコードをダウンロードし、コンピュータにインストールした後に、該プログラムを実行することにより、本発明を実現することもできる。
【００７２】
また、「有する／含む」のような語は、本文に使用される時に、要素、ステップ又はアセンブルの存在を指すが、１つ又は複数の他の特徴、要素、ステップ又はアセンブルの存在又は付加を排除しないことをも指す。
【００７３】
また、本発明の上述の実施例による方法は、明細書に記載の又は図面に図示の時間順序に従って実行することに限定されず、他の時間順序に従って、並列に又は独立して実行しても良い。よって、本明細書又は図面に記載の方法の実行順序は、本発明の技術的範囲を限定しない。
【００７４】
また、上述の各実施例を含む実施形態に関し、更に以下の付記を開示する。
【００７５】
（付記1）
画像から歪んだ直線を抽出する方法であって、
前記画像に対して線分検出処理を行い；
検出された各線分について、現在の線分との不共線程度が低い隣接線分を見つけ、それらを組み合わせて、１つ又は複数の線分の線分組み合わせを取得し；及び
前記線分組み合わせに基づいて、前記歪んだ直線を抽出するステップを含む、方法。
【００７６】
（付記2）
付記1に記載の方法であって、
そのうち、前記抽出するステップの前に、更に、
前記線分組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うステップを含む、方法。
【００７７】
（付記3）
付記2に記載の方法であって、
そのうち、勾配及び平滑度の両方を最適化するための平衡エネルギー関数を構築して解くことにより、前記最適化処理を行う、方法。
【００７８】
（付記4）
付記2又は3に記載の方法であって、
そのうち、前記線分組み合わせ中に所定画素数よりも大きい不連続箇所が存在する時に、前記最適化処理を行う、方法。
【００７９】
（付記5）
付記1に記載の方法であって、
そのうち、現在の線分との不共線程度が低い隣接線分を見つけることは、更に、
前記現在の線分の傾斜（勾配）方向に沿って、１つの隣接矩形領域を限定（定義）し；及び、
前記隣接矩形領域において、先に中間でその後は両辺で、近いから遠いへという原則で、現在の線分との不共線程度が所定閾値よりも低い他の線分を前記隣接線分として捜索することを含む、方法。
【００８０】
（付記6）
付記5に記載の方法であって、
そのうち、次の式を用いて接続角を計算して前記不共線程度を表し、前記接続角が小さければ小さいほど、前記不共線程度が低く、
接続角度=max(abs(a2-a1),abs(a2-a3))
そのうち、a1は、前記現在の線分と、所定基準線との夾角であり、a2は、前記現在の線分と前記他の線分との間の接続線と、前記所定基準線との夾角であり、a3は、前記他の線分と、前記所定基準線との夾角である、方法。
【００８１】
（付記7）
付記1に記載の方法であって、
そのうち、前記線分組み合わせを得るための線分の組みわせを行う前に、更に、
検出された、長さが比較的小さい線分に対してフィルタリングを行うことを含む、方法。
【００８２】
（付記8）
付記1に記載の方法であって、
そのうち、前記画像に対して線分検出処理を行うステップは、更に、
相似な勾配方向及び大小（サイズ）を有する画素に対してクラスタリングを行って線分を検出することを含む、方法。
【００８３】
（付記9）
付記5に記載の方法であって、
そのうち、書籍類型のテキスト画像については、本の背の位置についての前記所定閾値が比較的に大きい、方法。
【００８４】
（付記10）
付記5に記載の方法であって、
そのうち、ファイル類型のテキスト画像については、先に比較的小さい所定閾値及び比較的小さい矩形領域を設定し、捜索された線分に対して一回目の組み合わせを行い、そして、比較的大きい所定閾値及び比較的大きい矩形領域を設定し、捜索された線分に対して二回目の組み合わせを行う、方法。
【００８５】
（付記11）
付記4に記載の方法であって、
そのうち、不連続箇所の長さが所定画素数よりも大きい２つの線分については、最適化処理後の前記２つの線分の端点の接続線を前記不連続箇所の線分として抽出する、方法。
【００８６】
（付記12）
付記1又は2に記載の方法であって、
そのうち、前記画像がグレースケール画像である場合、前記グレースケール画像中の明領域から暗領域への境界に位置する線分及び暗領域から明領域への境界に位置する線分を分けて組み合わせを行う、方法。
【００８７】
(付記13)
付記1に記載の方法であって、
そのうち、前記画像に対して線分検出処理を行う前に、更に、前記画像に対して前処理を行うことを含み、
前記前処理は、
画像を比例縮小し；
画像がカラー画像である時に、画像をグレースケール画像に変換し；及び、
画像に対して平滑化を行う、ことのうちの少なくとも１つを含む、方法。
【００８８】
（付記14）
画像から歪んだ直線を抽出する装置であって、
前記画像に対して線分検出処理を行うための検出モジュール；
検出された各線分について、現在の線分との不共線程度が低い隣接線分を捜索し、それらを組み合わせて、１つ又は複数の線分組み合わせを得るための組み合わせモジュール；及び、
前記線分の組み合わせに基づいて、前記歪んだ直線を抽出するための抽出モジュールを含む、装置。
【００８９】
（付記15）
付記14に記載の装置であって、更に、
前記抽出モジュールが前記歪んだ直線を抽出する前に、前記線分の組み合わせに対して、勾配及び平滑度を最適化するための最適化処理を行うための最適化処理モジュールを含む、装置。
【００９０】
以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の技術的範囲に属する。
【図１】
2015115067.tif 000004
【図２】
2015115067.tif 000005
【図３】
2015115067.tif 000006
【図４】
2015115067.tif 000007
【図５】
2015115067.tif 000008
【図６】
2015115067.tif 000009
【図７】
2015115067.tif 000010
【図８】
2015115067.tif 000011
【図９】
2015115067.tif 000012
【外国語明細書】
2015115067000001.pdf