(57)【特許請求の範囲】
【請求項１】
受け付けた文書画像を複数の領域に分割する分割部と、
該分割部が分割した複数の領域のそれぞれについて前記文書画像の縁に対する傾きを推定する推定部と、
複数の領域それぞれと、前記推定部が推定した傾きとを関連づけて出力する出力部と、
前記領域に対するユーザによる選択操作に基づいて前記領域の前記文書画像の縁に対する傾きを補正する補正部と
を備えることを特徴とする画像処理装置。
【請求項２】
前記出力部は、
前記領域それぞれに、該領域の前記傾きを表す直線を重畳させて出力することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記出力部は、
前記領域それぞれを回転して該領域の前記文書画像の縁に対する傾きを補正して出力することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
受け付けた文書画像を複数の領域に分割し、
分割した複数の領域のそれぞれについて前記文書画像の縁に対する傾きを推定し、
複数の領域それぞれと推定した傾きとを関連づけて出力し、
前記領域に対するユーザによる選択操作に基づいて前記領域の前記文書画像の縁に対する傾きを補正する
処理をコンピュータに実行させることを特徴とする画像処理プログラム。
【請求項５】
受け付けた文書画像を複数の領域に分割し、
分割した複数の領域のそれぞれについて前記文書画像の縁に対する傾きを推定し、
複数の領域それぞれと推定した傾きとを関連づけて出力し、
前記領域に対するユーザによる選択操作に基づいて前記領域の前記文書画像の縁に対する傾きを補正することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理プログラムおよび画像処理方法に関する。
【背景技術】
【０００２】
文書を入力する際に入力文書の傾きを検出し、補正する文書画像傾き検出方法が開示されている（特許文献１）。
【０００３】
文字、写真、絵、図形、表などが混在する文書画像からそれぞれの領域を識別する画像処理方法が開示されている（特許文献２）。
【０００４】
文字、写真、絵、図形、表などが混在する文書画像をそれぞれの領域に分割し、画素の白黒反転回数を基に算出した複雑度を指標として各領域の傾きを検出する傾き検出方法が開示されている（非特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０５−１７４１８３号公報
【特許文献２】特開平０９−１６７２３３号公報
【非特許文献】
【０００６】
【非特許文献１】石谷康人（Yasuto ISHITANI）、「領域の複雑度に基づく文書傾きの検出（Document Skew Detection Based on Local Region Complexity）」、文書の解析と認識１９９３年第２回国際会議録（Document Analysis and Recognition, 1993., Proceedings of the Second International Conference on）、１９９３年１０月、ｐ．４９−５２
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１、特許文献２および非特許文献１の方法で文書画像の傾きを検出して補正しても、適切な傾き補正結果が得られない場合がある。
【０００８】
一つの側面では、簡単な操作で適切な傾き補正結果を得ることのできる画像処理装置等を提供することを目的とする。
【課題を解決するための手段】
【０００９】
画像処理装置は、受け付けた文書画像を複数の領域に分割する分割部と、該分割部が分割した複数の領域のそれぞれについて前記文書画像の縁に対する傾きを推定する推定部と、複数の領域それぞれと、前記推定部が推定した傾きとを関連づけて出力する出力部と、前記領域に対するユーザによる選択操作に基づいて前記領域の前記文書画像の縁に対する傾きを補正する補正部とを備える。
【発明の効果】
【００１０】
一つの側面では、簡単な操作で適切な傾き補正結果を得ることのできる画像処理装置等を提供できる。
【図面の簡単な説明】
【００１１】
【図１】画像処理装置のハードウェア構成を示す装置構成図である。
【図２】処理対象の文書画像の例を示す説明図である。
【図３】文書画像を領域に分割した例を示す説明図である。
【図４】文書画像に傾き指標を重畳表示した例を示す説明図である。
【図５】領域の選択手順を説明する説明図である。
【図６】使用する領域以外を消去した文書画像の例を示す説明図である。
【図７】傾きを補正した文書画像の例を示す説明図である。
【図８】保存する文書画像の例を示す説明図である。
【図９】画像処理装置の処理手順を示すフローチャートである。
【図１０】文書画像全体の傾き推定の処理手順を示すフローチャートである。
【図１１】実施の形態３の文書画像全体の傾き推定の処理手順を示すフローチャートである。
【図１２】実施の形態４の文書画像に領域の傾きを表示した例を示す説明図である。
【図１３】実施の形態５の文書画像に傾き指標を重畳表示した例を示す説明図である。
【図１４】実施の形態６の画像処理装置の処理手順を示すフローチャートである。
【図１５】実施の形態７の画像処理装置の処理手順を示すフローチャートである。
【図１６】実施の形態７の文書画像に傾き指標を重畳表示した例を示す説明図である。
【図１７】実施の形態７の領域の選択手順を説明する説明図である。
【図１８】実施の形態８の文書画像に傾き指標を重畳表示した例を示す説明図である。
【図１９】画像処理装置の全体構成を示す機能構成図である。
【図２０】実施の形態１０の画像処理装置のハードウェア構成を示す装置構成図である。
【発明を実施するための形態】
【００１２】
［実施の形態１］
本実施の形態における画像処理装置１０は、文書画像の入力を受け付け、その文書画像の縁に沿う内部領域に含まれる画像の傾きを補正して出力する装置である。本実施の形態では、画像処理装置１０には汎用のパーソナルコンピューターを使用する。文書画像は、紙等に記録された文書をスキャナ、デジタルカメラなどの電子映像装置を用いて電子化した画像である。
【００１３】
図１は、画像処理装置１０のハードウェア構成を示す装置構成図である。本実施の形態の画像処理装置１０は、ＣＰＵ（Central Processing Unit）１１、主記憶装置１２、補助記憶装置１３、入力部１４、操作部１５、表示部１６、通信モジュール１７、バスを備える。
【００１４】
ＣＰＵ１１は、一または複数のＣＰＵまたはマルチコアＣＰＵ等を備えた演算制御装置である。ＣＰＵ１１は、バスを介してハードウェア各部と接続されている。ＣＰＵ１１は、補助記憶装置１３に保存された画像処理プログラムに従い、画像処理装置１０に必要な演算処理およびハードウェア各部の制御を行う。
【００１５】
主記憶装置１２は、ＳＲＡＭ（Static RAM）、ＤＲＡＭ（Dynamic RAM）またはフラッシュメモリ等の記憶装置である。主記憶装置１２には、ＣＰＵ１１が行う処理の途中で必要な情報およびＣＰＵ１１で実行中のプログラムが一時的に保存される。
【００１６】
補助記憶装置１３は、ハードディスクまたは半導体メモリディスク等の記憶装置である。補助記憶装置１３には、ＣＰＵ１１に実行させる画像処理プログラムおよび画像処理プログラムの実行に必要な各種データが保存される。
【００１７】
入力部１４は、たとえばスキャナ、デジタルカメラ等の電子映像機器である。入力部１４は文書画像が記録された可搬型記録媒体の読み取り装置でも良い。可搬型記録媒体は、ＳＤＨＣ（Secure Digital High Capacity）メモリカード、ＵＳＢ（Universal Serial Bus）メモリ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）ディスクまたはＤＶＤ（Digital Versatile Disc）ディスク等の光学ディスク等である。なお、後述の通信モジュール１７を介して文書画像が画像処理装置１０に入力されてもよい。また、文書画像は予め補助記憶装置１３に保存されていても良い。
【００１８】
操作部１５は、マウス、キーボード、タッチパネル、ペンタブレット、マイク等の機器であり、ユーザによる操作を画像処理装置１０が受け付ける際に使用する。表示部１６は、ディスプレイ、プリンタ等の機器であり、文書画像等を表示する。
【００１９】
通信モジュール１７は、インターネットまたはイントラネット等のネットワークとの通信を行う。通信モジュール１７は、ネットワーク上の保存領域に保存された文書画像の入力およびネットワーク上の保存領域への文書画像の出力に使用される。
【００２０】
図２は、処理対象の文書画像の例を示す説明図である。図３は、文書画像を領域に分割した例を示す説明図である。図４は、文書画像に傾き指標３５を重畳表示した例を示す説明図である。図５は、領域の選択手順を説明する説明図である。図６は、使用する領域以外を消去した文書画像の例を示す説明図である。図７は、傾きを補正した文書画像の例を示す説明図である。図８は、保存する文書画像の例を示す説明図である。
【００２１】
図２から図８を使用して、本実施の形態の画像処理の概要を説明する。ＣＰＵ１１は、入力部１４または通信モジュール１７を介して図２の文書画像を受け付ける。ＣＰＵ１１は受け付けた文書画像を補助記憶装置１３に保存する。ＣＰＵ１１は、保存した文書画像を読み出して表示部１６に表示する。
【００２２】
図２に示すように、文書画像は一定の大きさの画像である。文書画像縁３８は、受け付けた文書画像の縁を示す。図２は、文書の表示内容が文書画像縁３８に対して時計回りの向きに傾いた状態の文書画像を受け付けた例を示している。文書画像縁３８に沿う内側領域３９には、文書の表示内容の文字等が画像として表示されている。以下の説明では、内部領域３９に含まれる画像を文書画像全体という。
【００２３】
ＣＰＵ１１は、文書画像を図３に示すように第１領域３０１から第１０領域３１０の１０個の矩形の領域に分割する。説明のために図３では、各領域の境界を領域枠３６で示している。分割数はＣＰＵ１１が受け付けた文書画像および使用する分割方法によって変化する。なお、領域の形状は三角形、五角形以上の多角形または楕円形等でも良い。また、領域同士が一部分重複しても良い。
【００２４】
ＣＰＵ１１は、第１領域３０１から第１０領域３１０までのそれぞれの領域の文書画像縁３８に対する傾きを推定する。ＣＰＵ１１は、図４に示すように第１領域３０１から第１０領域３１０の各領域に、各々の領域の傾きを示す傾き指標３５および各領域の境界を示す領域枠３６を重畳した画像を、表示部１６に表示する。傾き指標３５は、第１領域３０１から第１０領域３１０の各々の傾きの推定結果に対応して表示される。図４では傾き指標３５は各領域内に表示された文字列の行方向であると推定された方向の平行線である。なお、たとえば第３領域３０３の様に文字が含まれていない領域であっても、ＣＰＵ１１は第１領域３０１に対するのと同様の処理を行って傾きを推定して、傾き指標３５を表示する。
【００２５】
ＣＰＵ１１は、どの領域を文書画像全体の傾き推定に使用するかの選択を操作部１５から受け付ける。図５では、使用しないという選択を受け付けた第３領域３０３、第４領域３０４、第５領域３０５、第８領域３０８および第９領域３０９に指差しマーク３７が表示され、これらの各領域内の傾き指標３５が破線で表示されている。
【００２６】
操作部１５にマウス等のポインティングデバイスが使用される場合を例にして説明する。初期状態では、すべての領域が使用する領域であると設定されている。領域がクリックされる事によりＣＰＵ１１は使用しないという選択を受け付け、その領域の周縁部に指差しマーク３７を表示し、傾き指標３５を破線にする。既に選択済の領域がクリックされた場合には、ＣＰＵ１１は使用しないという選択の解除を受け付け、その領域の周縁部に表示されていた指差しマーク３７を消去し、傾き指標３５を実線にする。なお、初期状態では、全ての領域が使用しない領域であると設定され、クリックされることにより使用するという選択を受け付けるユーザインターフェースを使用しても良い。この場合には、使用するという選択を受け付けた領域に指差しマーク３７を付けると良い。
【００２７】
図６に、文書画像全体の傾き推定に使用する領域のみを取り出した文書画像を示す。第１領域３０１、第２領域３０２、第６領域３０６、第７領域３０７および第１０領域３１０が表示されている。文書画像全体の傾き推定に使用しないという選択を受け付けた第３領域３０３、第４領域３０４、第５領域３０５、第８領域３０８および第９領域３０９の内側は消去され、文書画像の地の色と同じ色で表示されている。ＣＰＵ１１は、図６に示す文書画像の内側の画像の文書画像縁３８に対する傾きを推定する。図７に、図５の画像をＣＰＵ１１が推定した傾きで補正した画像を示す。ＣＰＵ１１が傾き推定に使用した、第１領域３０１、第２領域３０２、第６領域３０６、第７領域３０７および第１０領域３１０内の文字列が正しい向きになるように補正されている。
【００２８】
ＣＰＵ１１は、推定結果に基づいて図２に示す文書画像全体の傾きを補正する。ＣＰＵ１１は、たとえばＡ４判などの適切な文書サイズに設定して、図８に示す文書画像を出力する。出力は、表示部１６に文書画像を表示しても良いし、補助記憶装置１３に文書画像を保存しても良い。またＣＰＵ１１は、通信モジュール１７を介してネットワーク上の保存領域に文書画像を出力しても良い。
【００２９】
図９は、画像処理装置１０の処理手順を示すフローチャートである。図９を使用して本実施の形態のＣＰＵ１１が行う処理の流れを説明する。
【００３０】
ＣＰＵ１１は文書画像を受け付けて、補助記憶装置１３に保存する（ステップＳ４０１）。ここで文書画像はスキャナ等で読み取った文書画像を入力部１４から受け付けても良いし、読み取った後で可搬型記録媒体に保存されている文書画像を入力部１４から受け付けても良い。文書画像は補助記憶装置１３に予め保存されていても良い。また通信モジュール１７を介してネットワーク上の保存領域に保存された文書画像を受け付けても良い。
【００３１】
ＣＰＵ１１は文書画像をある大きさをもつ複数の二次元領域に分割する（ステップＳ４０２）。文書画像を領域に分割する方法は、非特許文献１に記載されている画像の複雑度を使う方法、特許文献２に記載されている白と黒の２値の画像データに変換して処理する方法等、種々の方法が公知であるので説明は省略する。
【００３２】
ＣＰＵ１１は、分割した各領域の文書画像縁３８に対する傾きを推定する（ステップＳ４０３）。傾きの推定方法は、特許文献１に記載されている画像の複雑度を使う方法、文書内の表罫線を使う方法等、種々の方法が公知であるので説明は省略する。
【００３３】
ＣＰＵ１１は、文書画像にＣＰＵ１１が推定した各領域の傾きを示す傾き指標３５および領域の境界を示す領域枠３６を重畳した画像を生成する。ここで、傾き指標３５は各領域の傾きの推定結果を示す平行線である。ＣＰＵ１１は、各領域についてステップＳ４０３で推定した傾き角度に沿う方向の長さを求め、傾き指標３５をこれに対応する長さの平行線にする。また、ＣＰＵ１１は、各領域について平行線と直交する方向に沿う方向の長さを求め、傾き指標３５をこれに対応する本数の平行線にする。その後、ＣＰＵ１１は、生成した画像を表示部１６に表示する（ステップＳ４０４）。
【００３４】
ＣＰＵ１１は、どの領域を文書画像全体の傾きの推定に使用するかの選択を受け付ける（ステップＳ４０５）。ここで、文書画像全体の傾きは、具体的には垂直方向または水平方向に対する傾き、すなわち文書画像縁３８の横辺または縦辺に対する内側領域３９に含まれる画像の傾きである。選択は、操作部１５より受け付ける。操作部１５にマウス等のポインティングデバイスが使用される場合を例にして説明する。図５では、操作部１５によりクリックされた領域は使用せず、それ以外の領域を使用するという選択を受け付けるユーザインターフェースを示す。図５とは逆に、クリックされた領域を使用してそれ以外の領域は使用しないという選択を受け付けるユーザインターフェースを採用することもできる。
【００３５】
ＣＰＵ１１は、表示部１６に表示された図示しない選択完了のボタンが操作部１５により操作されることにより、領域の選択が完了したことを受け付ける。なお、一定数以上の領域が選択された場合に、領域の選択が完了したとＣＰＵ１１が判定して次のステップに移行するユーザインターフェースを採用しても良い。
【００３６】
ＣＰＵ１１は、文書画像全体の傾き推定のサブルーチンを起動する（ステップＳ４０６）。文書画像全体の傾き推定のサブルーチンは、使用するという選択を受け付けた領域の情報を用いて文書画像全体の傾きを推定するサブルーチンである。サブルーチン内の処理については後述する。
【００３７】
ＣＰＵ１１は、文書画像を回転することにより、文書画像全体の傾きを補正する（ステップＳ４０７）。文書画像を回転するとは、具体的には傾き推定に使用する領域と使用しない領域の双方を含む内側領域３９内の画像を一体として、文書画像縁３８に対して相対的に回転することである。また、文書画像全体の傾きを補正するとは、具体的には推定した傾きを打ち消す角度および向きで文書画像を回転することである。ＣＰＵ１１は、補正後の文書画像をたとえばＡ４版などの適切な大きさに設定する。ＣＰＵ１１は、表示部１６に補正後の文書画像を表示する（ステップＳ４０８）。この際ＣＰＵ１１は、図７に示す様に傾き指標３５、領域枠３６および指差しマーク３７を重畳した文書画像を表示しても良いし、図８に示す様に補正結果のみを示す文書画像を表示しても良い。
【００３８】
ＣＰＵ１１は、文書画像の補正を終了するか否かの選択を受け付ける（ステップＳ４０９）。選択は、表示部１６に表示された図示しない選択完了のボタンが、操作部１５により操作されることにより受け付ける。
【００３９】
文書画像の補正を終了する場合（ステップＳ４０９でＹＥＳ）は、ＣＰＵ１１は補助記憶装置１３等に補正後の文書画像を保存する（ステップＳ４１０）。その後処理を終了する。文書画像の補正を終了しない場合（ステップＳ４０９でＮＯ）は、ＣＰＵ１１はステップＳ４０５に戻る。なお、ステップＳ４０８でＣＰＵ１１が図８に示す様な補正結果のみの文書画像を表示した場合には、ステップＳ４０５に戻る前にＣＰＵ１１は図７に示すような傾き指標３５、領域枠３６および指差しマーク３７を重畳した文書画像を表示する。
【００４０】
図１０は、文書画像全体の傾き推定の処理手順を示すフローチャートである。図１０を使用して、文書画像全体の傾き推定のサブルーチンの処理の流れを説明する。
【００４１】
ＣＰＵ１１は、文書画像の複製を作成して補助記憶装置１３に保存する（ステップＳ４２０）。以後の文書画像全体の傾き推定のサブルーチン内の処理は、文書画像の複製を用いて行う。ＣＰＵ１１は、１番目の領域に関する情報を取り出す（ステップＳ４２１）。ＣＰＵ１１は、調べている領域が文書画像全体の傾きの推定に使用する領域か否かを判定する（ステップＳ４２２）。調べている領域が文書画像全体の傾きの推定に使用する領域ではない場合は（ステップＳ４２２でＮＯ）、ＣＰＵ１１はその領域の内部を文書画像の地の色と同じ色に設定する事により消去する（ステップＳ４２３）。
【００４２】
調べている領域が文書画像全体の傾きの推定に使用する領域の場合（ステップＳ４２２でＹＥＳ）およびステップＳ４２３が終了した場合には、ＣＰＵ１１は全ての領域に対する処理が完了したか否かを判定する（ステップＳ４２４）。完了していない場合には（ステップＳ４２４でＮＯ）、ＣＰＵ１１は次の領域に関する情報を取り出し（ステップＳ４２５）、ステップＳ４２２に戻る。
【００４３】
全ての領域に対する処理が完了している場合は（ステップＳ４２４でＹＥＳ）、ＣＰＵ１１はステップＳ４２２からステップＳ４２５のループで処理した文書画像に基づいて文書画像全体の傾きを推定する（ステップＳ４２６）。すなわち、ステップＳ４２６で使用する文書画像は、文書画像全体の傾きの推定に使用する領域だけを残しそれ以外の領域を消去した文書画像である。ステップＳ４２６で使用する文書画像の例を図６に示す。前述の通り、傾きの推定方法は、特許文献１に記載されている画像の複雑度を使う方法、文書内の表罫線を使う方法等、種々の方法が公知であるので説明は省略する。ステップＳ４０３で領域の傾きを推定した際と同じ方法をステップＳ４２６でも使用しても良いし、異なる方法を用いても良い。以上で文書画像全体の傾き推定のサブルーチンを終了する。
【００４４】
本実施の形態によれば、傾き指標３５を表示する事により、ＣＰＵ１１は各領域の傾きをどのように推定したかをユーザに理解させる事ができる。また、本実施の形態によれば、簡単な操作で適切な傾き補正結果を得ることのできる画像処理装置１０を提供できる。
【００４５】
なお、文書画像全体の傾きの推定に使用する領域を１回選択すれば適切な傾き補正結果を得られる場合には、ステップＳ４０８およびステップＳ４０９を省略して、ステップＳ４０７で回転させた文書画像を保存（ステップＳ４１０）しても良い。
【００４６】
画像処理装置１０にはタブレット、携帯電話、スマートフォンなどのモバイル電子機器を使用しても良い。カメラ機能付きのモバイル電子機器の場合には、カメラ機能により文書画像を受け付けても良い。また、画像処理装置１０にはスキャナ、複合機、デジタルカメラなどの電子映像機器を使用しても良い。
【００４７】
［実施の形態２］
実施の形態２は、各領域の傾きを演算して、文書画像全体の傾きを推定する形態に関する。実施の形態２の文書全体の傾き推定の処理手順はフローチャートを省略して文章のみで説明する。なお、実施の形態１と共通する部分の説明は省略する。
【００４８】
ＣＰＵ１１は、文書全体の傾き推定に使用する各領域についての傾きの推定値の平均値を求める。更に詳細には、ステップＳ４０５で文書全体の傾き推定に使用すると選択した領域についての傾きの推定値の総和を求め、文書全体の傾き推定に使用する領域の数で割算する。
【００４９】
ＣＰＵ１１は求めた平均値を文書画像全体の傾きの推定値とする。以上で文書画像全体の傾き推定のサブルーチンを終了する。
【００５０】
本実施の形態によれば、ＣＰＵ１１が行う文書画像全体の傾き推定の処理は比較的単純な四則演算であるので、高速に行える。
【００５１】
なお、平均値の代わりに、中央値または最頻値を文書画像全体の傾きの推定値としても良い。これらの推定方法によると、文書全体の傾き推定に使用する領域が多い場合にも、ＣＰＵ１１が高速に処理を行える。
【００５２】
［実施の形態３］
実施の形態３は、各領域の傾きに領域ごとの重み付けを行って演算して、文書画像全体の傾きを推定する形態に関する。図１１は、実施の形態３の文書画像全体の傾き推定の処理手順を示すフローチャートである。図１１は図１０に示したサブルーチンの代わりに使用するサブルーチンである。図１１を使用して、本実施の形態の文書画像全体の傾き推定のサブルーチンの処理の流れを説明する。なお、実施の形態１と共通する部分の説明は省略する。
【００５３】
ＣＰＵ１１は、１番目の領域に関する情報を取り出す（ステップＳ５２８）。ＣＰＵ１１は、着目している領域の面積を文書画像全体の傾きの推定に使用する領域の面積の総和で割って、注目している領域についての重み付け係数を算出する（ステップＳ５２９）。文書画像全体の傾きの推定に使用する領域の重み付け係数の合計は１になる。ＣＰＵ１１は、算出した重み付け係数を補助記憶装置１３または主記憶装置１２に保存する。
【００５４】
ＣＰＵ１１は全ての領域に対する処理が完了したか否かを判定する（ステップＳ５３０）。完了していない場合には（ステップＳ５３０でＮＯ）、ＣＰＵ１１は次の領域に関する情報を取り出す（ステップＳ５３１）。ＣＰＵ１１はステップＳ５２９に戻る。
【００５５】
全ての領域に対する重み付け係数の算出が完了している場合は（ステップＳ５３０でＹＥＳ）、ＣＰＵ１１は文書画像全体の傾きを推定する（ステップＳ５３２）。ここでＣＰＵ１１は、文書画像全体の傾きの推定に使用する各領域の傾きの推定値とその領域についての重み付け係数の積を算出し、その総和を文書画像全体の傾きと推定する。以上で文書画像全体の傾き推定のサブルーチンを終了する。
【００５６】
本実施の形態によれば、面積が大きい領域ほど、文書画像全体の傾きの推定結果に大きな影響を与える。したがって、各領域の面積を加味して文書画像全体の傾きを推定できる。
【００５７】
図１１のフローチャートでは、全ての領域についての重み付け係数を算出したが、文書画像全体の傾きの推定に使用する領域についてのみ重み付け係数を算出しても良い。重み付け係数の算定に領域の複雑度（非特許文献１）を加味し、たとえば複雑度が高いほど重み付け係数が大きくなるように設定しても良い。
【００５８】
［実施の形態４］
実施の形態４は、第１領域３０１から第１０領域３１０までの領域ごとにＣＰＵ１１が推定した傾きを補正した画像を表示する形態に関する。図１２は、実施の形態４の文書画像に領域の傾きを表示した例を示す説明図である。
【００５９】
図１２は、ＣＰＵ１１が図４の代わりに表示する画像の例である。図１２では、ＣＰＵ１１は、第１領域３０１から第１０領域３１０までの各領域を、ステップＳ４０３で推定した傾きを補正するように文書画像縁３８に対して回転している。回転の中心は各領域の重心である。ＣＰＵ１１は、各領域の境界を示す領域枠３６を表示している。図１２において領域内の文字が自然な向きに見える第１領域３０１、第２領域３０２、第６領域３０６、第７領域３０７、第８領域３０８、第９領域３０９および第１０領域３１０は、ＣＰＵ１１により傾きが正しく推定されている。一方、図１２で傾いて見える第３領域３０３、第４領域３０４および第５領域３０５は、ＣＰＵ１１により傾きが正しく推定されていない。すなわち、本実施の形態においては、領域自体がその領域の傾きを示す傾き指標の役割を果たす。
【００６０】
ＣＰＵ１１は、図９に示すステップＳ４０４で図４の画像の代わりに図１２の画像を表示した後、どの領域を文書画像全体の傾き推定に使用するかの選択を受け付ける（ステップＳ４０５）。
【００６１】
本実施の形態によると、ユーザはＣＰＵ１１が傾きを正しく推定した領域と、誤って推定した領域を簡単に見分ける事ができる。
【００６２】
［実施の形態５］
実施の形態５は、ＣＰＵ１１が傾き指標３５に太い両端矢印を使用する形態に関する。図１３は、実施の形態５の文書画像に傾き指標３５を重畳表示した例を示す説明図である。
【００６３】
図１３は、ＣＰＵ１１が図４の代わりに表示する画像の例である。図１３では、ＣＰＵ１１は太い両端矢印形状の傾き指標３５を使用して、各領域の文書画像縁３８に対する傾きの推定結果を表示する。ＣＰＵ１１は、両端矢印を縁線のみで表示して、両端矢印の内部には領域内部の文書画像を表示する。
【００６４】
ＣＰＵ１１は、各領域についてステップＳ４０３で推定した傾き角度に沿う方向の長さを求め、傾き指標３５をこれに対応する長さの両端矢印にする。また、ＣＰＵ１１は、各領域について両端矢印の長さと直交する方向に沿う方向の長さを求め、傾き指標３５をこれに対応する太さの両端矢印にする。なお、傾き指標３５には、片側矢印を用いても良い。また、傾き指標の太さは領域のサイズにかかわらず一定としても良い。
【００６５】
ＣＰＵ１１は、図９に示すステップＳ４０４で図４の画像の代わりに図１３の画像を表示する。その後、どの領域を文書画像全体の傾き推定に使用するかの選択を受け付ける（ステップＳ４０５）。
【００６６】
本実施の形態によると、領域に重畳する傾き指標３５の線の数が少ないので、ユーザは領域内部とＣＰＵ１１が推定した傾きとを見比べやすい。
【００６７】
［実施の形態６］
実施の形態６は、最初に文書画像全体の傾きを推定して補正結果を表示し、補正結果が不適切な場合にのみ文書画像を領域に分割する形態に関する。図１４は、実施の形態６の画像処理装置１０の処理手順を示すフローチャートである。図１４を使用して、本実施の形態の画像処理装置１０の処理の流れを説明する。
【００６８】
ＣＰＵ１１は文書画像を受け付けて、補助記憶装置１３に保存する（ステップＳ４５１）。ＣＰＵ１１は、受け付けた文書画像全体を用いて文書画像全体の傾きを推定する（ステップＳ４５２）。前述の通り、傾きの推定方法は、特許文献１に記載されている画像の複雑度を使う方法、文書内の表罫線を使う方法等、種々の方法が公知であるので説明は省略する。
【００６９】
ＣＰＵ１１は、受け付けた文書画像を回転することにより、文書画像全体の傾きを補正する（ステップＳ４５３）。ＣＰＵ１１は、文書画像をたとえばＡ４版などの適切な大きさに設定する。ＣＰＵ１１は、表示部１６に補正後の文書画像を表示する（ステップＳ４５４）。
【００７０】
ＣＰＵ１１は、文書画像の補正を終了するか否かの選択を受け付ける（ステップＳ４５５）。選択は、表示部１６に表示された図示しない選択完了のボタンが、操作部１５により操作されることにより受け付ける。
【００７１】
文書画像の補正を終了する場合（ステップＳ４５５でＹＥＳ）は、ＣＰＵ１１は補助記憶装置１３等に補正後の文書画像を保存する（ステップＳ４５６）。ＣＰＵ１１は文書の画像処理を終了する。
【００７２】
文書画像の補正を終了しない場合（ステップＳ４５５でＮＯ）は、ＣＰＵ１１は、文書画像を領域に分割する（ステップＳ４５７）。前述の通り、文書画像を領域に分割する方法は、非特許文献１に記載されている画像の複雑度を使う方法、特許文献２に記載されている白と黒の２値の画像データに変換して処理する方法等、種々の方法が公知であるので説明は省略する。
【００７３】
ＣＰＵ１１は、分割した各領域の文書画像縁３８に対する傾きを推定する（ステップＳ４５８）。傾きの推定にはステップＳ４５２と同じ推定方法を使用しても良いし、異なる推定方法を使用しても良い。
【００７４】
ＣＰＵ１１は、文書画像にＣＰＵ１１が推定した各領域の傾きを示す傾き指標３５を重畳した画像を生成する。ＣＰＵ１１は、生成した画像を表示部１６を介してディスプレイ等に表示する（ステップＳ４５９）。傾き指標３５の表示形式は、図４、図１２または図１３に例示した形式のいずれかを使用しても良いし、例示した以外の形式を使用しても良い。 
【００７５】
ＣＰＵ１１は、どの領域を文書画像全体の傾きの推定に使用するかの選択を受け付ける（ステップＳ４６０）。選択は、操作部１５により受け付ける。
【００７６】
ＣＰＵ１１は、文書画像全体の傾き推定のサブルーチンを起動する（ステップＳ４６１）。ＣＰＵ１１は、図１０、図１１または実施の形態２に示したサブルーチンを使用できる。ＣＰＵ１１はステップＳ４５３に戻る。
【００７７】
本実施の形態によれば、領域に分割しなくても適切に傾き補正を行える文書画像については、領域に分割する処理を省略して短時間で処理を完了できる。
【００７８】
［実施の形態７］
実施の形態７は、領域を傾きの近いもの同士の群に分類し、文書画像全体の傾き推定に使用する領域の選択を群単位で受け付ける形態に関する。図１５は、実施の形態７の画像処理装置１０の処理手順を示すフローチャートである。図１６は、実施の形態７の文書画像に傾き指標を重畳表示した例を示す説明図である。図１７は、実施の形態７の領域の選択手順を説明する説明図である。
【００７９】
図１５を使用して本実施の形態のＣＰＵ１１が行う処理の流れを説明する。なお、実施の形態１と共通する部分の説明は省略する。ステップＳ４０３までは実施の形態１と同一である。
【００８０】
ＣＰＵ１１は傾きの推定値により領域を群に分類する（ステップＳ４７１）。分類は、傾きの推定値を予め定めたたとえば１０度刻み等の区切りごとに分けて行う。なお、最短距離法等の公知のクラスタ分析の手法を利用して分類を行っても良い。
【００８１】
ＣＰＵ１１は、文書画像にＣＰＵ１１が推定した各領域の傾きを示す傾き指標３５、領域の境界を示す領域枠３６および群の区別を重畳した画像を生成する。ＣＰＵ１１は、領域枠３６の線の種類を群ごとに異なるようにすることにより、群の区別を示す。その後、ＣＰＵ１１は、生成した画像を表示部１６に表示する（ステップＳ４７２）。表示の例を図１６に示す。
【００８２】
図１６を使用して更に詳しく説明する。本実施の形態においては、ＣＰＵ１１は１０個の領域を４個の群に分割している。第１の群には、第１領域３０１、第２領域３０２、第６領域３０６、第７領域３０７、第１０領域３１０の５個の領域が分類されている。第２の群には、第８領域３０８、第２領域３０９の２個の領域が分類されている。第３の群には、第３領域３０３、第４領域３０４の２個の領域が分類されている。第４の群には、第５領域３０５の１個の領域が分類されている。
【００８３】
図１６では、所属する領域の数が最も多い第１の群の領域枠３６を実線、第２の群の領域枠３６を長い破線、第３の群の領域枠３６を短い破線、第４の群の領域枠３６を点線で表示している。なお、群の区別は領域枠３６の色で示しても良いし、領域枠３６の内部を薄い色で着色して示しても良い。
【００８４】
ＣＰＵ１１は、どの群を文書画像全体の傾き推定に使用するかの選択を受け付ける（ステップＳ４７３）。選択は、操作部１５より受け付ける。
【００８５】
図１７を使用して更に詳しく説明する。図１７では指差しマーク３７で示す通り、第１の群に属する第１０領域３１０が選択されている。ＣＰＵ１１は、第１０の領域３１０と同じ第１の群に属する合計５個の領域に対して、第１０領域３１０に対する処理と同じ処理を行い、選択を受け付ける。ＣＰＵ１１は、これらの５個の領域の枠線を太く表示する。
【００８６】
なお、ＣＰＵ１１が一つの群のみの選択を受け付けるようにしても良いし、複数の群の選択を受け付けるようにしても良い。一つの群のみの選択を受け付ける場合には、ＣＰＵ１１は群が選択されると同時に選択が終了したと判定して次のステップに移動する。複数の群の選択を受け付ける場合には、表示部１６に表示された図示しない選択完了のボタンが、操作部１５により操作されることによりＣＰＵ１１は領域の選択が完了したことを受け付ける。
【００８７】
ＣＰＵ１１は、文書画像全体の傾き推定のサブルーチンを起動して、受け付けた群に属する領域の情報を用いて文書画像全体の傾きを推定する（ステップＳ４０６）。ＣＰＵ１１は、図１０、図１１または実施の形態２に示したサブルーチンを使用できる。
【００８８】
ＣＰＵ１１は、文書画像を回転することにより、文書全体の傾きを補正する（ステップＳ４０７）。ＣＰＵ１１は、文書画像を適切な大きさに設定する。ＣＰＵ１１は、表示部１６に補正後の文書画像を表示する（ステップＳ４０８）。
【００８９】
ＣＰＵ１１は、文書画像の補正を終了するか否かの選択を受け付ける（ステップＳ４０９）。選択は、表示部１６に表示された図示しない選択完了のボタンが、操作部１５により操作されることにより受け付ける。
【００９０】
文書画像の補正を終了する場合（ステップＳ４０９でＹＥＳ）は、ＣＰＵ１１は補助記憶装置１３等に補正後の文書画像を保存する（ステップＳ４１０）。その後処理を終了する。文書画像の補正を終了しない場合（ステップＳ４０９でＮＯ）は、ＣＰＵ１１はステップＳ４７３に戻る。
【００９１】
本実施の形態によれば、傾きの推定結果が近接している複数の領域を群として表示するので、ユーザは個々の領域の細かい傾きの相違を考慮する必要がなくなる。また、本実施の形態によれば、傾きの推定結果が近接している複数の領域を群としてまとめて１回の操作で選択の受付を行える。したがって、多くの領域の選択を速やかに受け付けることができる。
【００９２】
なお、傾き指標３５には、図１２または図１３に例示した形式を使用しても良いし、例示した以外の形式を使用しても良い。
【００９３】
［実施の形態８］
実施の形態８は、領域の群に番号を付け、領域の選択を番号で受け付ける形態に関する。図１８は、実施の形態８の文書画像に傾き指標を重畳表示した例を示す説明図である。実施の形態７と同じ部分については説明を省略する。
【００９４】
図１８は、図１６の代わりに表示する画像の例である。ＣＰＵ１１は、属する領域の数の多い群から順番に番号を付け、各領域の近傍に丸数字で表示する。ＣＰＵ１１は、操作部１５のマイクからの番号の音声入力により群の選択を受け付ける。ＣＰＵ１１は、操作部１５のキーボードからの番号の入力により群の選択を受け付けても良い。
【００９５】
本実施の形態によると、音声入力または文字入力により群の選択を受け付ける事ができるので、マウスなどのポインティングデバイスの操作が苦手な人でも簡単に操作できる画像処理装置１０を実現できる。
【００９６】
なお、領域を群に分類せずに、個々の領域に番号を付けて選択を受け付けても良い。また、番号の代わりにアルファベットなどの文字を使用しても良い。番号を各領域の内部に表示しても良い。属する領域の数の少ない群から順に番号を付けても良い。
【００９７】
［実施の形態９］
実施の形態９は、画像処理装置１０の機能ブロックの構成を示す形態に関する。図１９は、画像処理装置１０の全体構成を示す機能構成図である。本実施の形態の画像処理装置１０は、分割部２２、推定部２３、群分類部２４、出力部２５、選択受付部２６および補正部２８を備える。本実施の形態の画像処理装置１０では、補助記憶装置１３に保存されている画像処理プログラムをＣＰＵ１１が実行することにより、図１９の各機能が実現される。
分割部２２は、受け付けた文書画像を複数の領域に分割する。推定部２３は、分割した各領域の文書画像縁３８に対する傾きを推定する。群分類部２４は、推定した傾きに基づいて領域を複数の群に分類する。出力部２５は、複数の領域それぞれと、推定した傾きとを関連付けて表示部１６に出力する。選択受付部２６は、文書画像全体の傾き推定に使用する領域もしくは群、または使用しない領域もしくは群の選択を受け付ける。補正部２８は、領域に対する選択に基づいて領域の文書画像の縁に対する傾きを補正する
【００９８】
［実施の形態１０］
実施の形態１０は、汎用のコンピュータ４０と画像処理プログラム４１とを組み合わせて動作させることにより、画像処理装置１０を実現する形態に関する。図２０は、実施の形態１０の画像処理装置１０のハードウェア構成を示す装置構成図である。図２０を使用して、本実施の形態の構成を説明する。なお、実施の形態１と共通する部分の説明は省略する。
【００９９】
本実施の形態の画像処理装置１０は、ＣＰＵ（Central Processing Unit）１１、主記憶装置１２、補助記憶装置１３、入力部１４、操作部１５、表示部１６、通信モジュール１７およびバスを備える汎用のコンピュータ４０を使用する。
【０１００】
画像処理プログラム４１は、可搬型記録媒体４２に記録されている。ＣＰＵ１１は、入力部１４を介して画像処理プログラム４１を読み込み、補助記憶装置１３に保存する。またＣＰＵ１１は、コンピュータ４０内に実装されたフラッシュメモリ等の半導体メモリ４３に記憶された画像処理プログラム４１を読出しても良い。さらに、ＣＰＵ１１は、通信モジュール１７およびインターネット等の通信網を介して接続される図示しない他のサーバコンピュータから画像処理プログラム４１をダウンロードして補助記憶装置１３に保存しても良い。
【０１０１】
コンピュータ４０は、上述した各種ソフトウェア処理を実行する画像処理プログラム４１を、可搬型記録媒体４２もしくは半導体メモリ４３から読み取り、または通信網４４を介して他のサーバコンピュータ（図示せず）からダウンロードする。画像処理プログラム４１は、汎用のコンピュータ４０の制御プログラムとしてインストールされ、主記憶装置１２にロードして実行される。これにより、コンピュータ４０は上述した画像処理装置１０として機能する。
【０１０２】
以上の実施の形態に関し、更に以下の付記を開示する。
【０１０３】
［付記１］
受け付けた文書画像を複数の領域に分割する分割部と、
該分割部が分割した各領域について前記文書画像の縁に対する傾きを推定する推定部と、
複数の領域それぞれと、前記推定部が推定した傾きとを関連づけて出力する出力部と、
前記領域に対する選択に基づいて前記領域の前記文書画像の縁に対する傾きを補正する補正部と
を備えることを特徴とする画像処理装置。
【０１０４】
［付記２］
前記出力部は、
前記領域それぞれに、該領域の前記傾きを表す直線を重畳させて出力することを特徴とする付記１に記載の画像処理装置。
【０１０５】
［付記３］
前記出力部は、
前記領域それぞれを回転して該領域の前記文書画像の縁に対する傾きを補正して出力することを特徴とする付記１に記載の画像処理装置。
【０１０６】
［付記４］
前記補正部は、
選択を受け付けた前記領域または選択を受け付けていない前記領域を消去した文書画像に基づいて傾きを補正することを特徴とする付記１から付記３のいずれか一つに記載の画像処理装置。
【０１０７】
［付記５］
前記補正部は、
選択を受け付けた前記領域または選択を受け付けていない前記領域について前記推定部が推定した各領域の傾きに基づいて傾きを補正することを特徴とする付記１から付記３のいずれか一つに記載の画像処理装置。
【０１０８】
［付記６］
前記補正部は、
選択を受け付けた前記領域または選択を受け付けていない前記領域について前記推定部が推定した各領域の傾きの平均値、中央値または最頻値に基づいて傾きを補正することを特徴とする付記１から付記３のいずれか一つに記載の画像処理装置。
【０１０９】
［付記７］
前記補正部は、
選択を受け付けた前記領域または選択を受け付けていない前記領域について前記推定部が推定した傾きをそれぞれの領域の面積で重みづけした値に基づいて傾きを補正することを特徴とする付記１から付記３のいずれか一つに記載の画像処理装置。
【０１１０】
［付記８］
前記推定部が推定した傾きに基づいて前記領域を複数の群に分類する群分類部を備え、
前記出力部は、
前記群分類部が分けた群ごとに異なる形式で各領域を出力することを特徴とする付記１から付記７のいずれか一つに記載の画像処理装置。
【０１１１】
［付記９］
前記領域に対する選択を受け付けた場合に、選択を受け付けた領域と同じ群に属する領域に対する選択受付処理を実行する選択受付部を備えることを特徴とする、付記８に記載の画像処理装置。
【０１１２】
［付記１０］
前記出力部は前記領域それぞれに対応付けて文字を出力し、
前記文字により前記領域の選択を受け付ける選択受付部を備えることを特徴とする付記１から付記９のいずれか一つに記載の画像処理装置。
【０１１３】
［付記１１］
前記出力部は前記群それぞれに対応付けて文字を出力し、
前記文字により前記群の選択を受け付ける選択受付部を備えることを特徴とする付記８または付記９に記載の画像処理装置。
【０１１４】
［付記１２］
受け付けた文書画像を複数の領域に分割し、
分割した各領域について前記文書画像の縁に対する傾きを推定し、
複数の領域それぞれと推定した傾きとを関連づけて出力し、
前記領域に対する選択に基づいて前記領域の前記文書画像の縁に対する傾きを補正する
処理をコンピュータに実行させることを特徴とする画像処理プログラム。
【０１１５】
［付記１３］
受け付けた文書画像の内側領域の該文書画像の縁に対する傾きを補正して出力し、
傾き補正を終了するか否かの選択を受け付け、
傾き補正を終了するとの選択を受け付けた場合には処理を終了し、
傾き補正を終了しないとの選択を受け付けた場合には前記文書画像を複数の領域に分割し、
分割した各領域について前記文書画像の縁に対する傾きを推定し、
複数の領域それぞれと推定した傾きとを関連づけて出力し、
前記領域に対する選択に基づいて前記領域の前記文書画像の縁に対する傾きを補正する
処理をコンピュータに実行させることを特徴とする画像処理プログラム。
【０１１６】
［付記１４］
受け付けた文書画像を複数の領域に分割し、
分割した各領域について前記文書画像の縁に対する傾きを推定し、
複数の領域それぞれと推定した傾きとを関連づけて出力し、
前記領域に対する選択に基づいて前記領域の前記文書画像の縁に対する傾きを補正する
ことを特徴とする画像処理方法。
【０１１７】
［付記１５］
受け付けた文書画像の内側領域の該文書画像の縁に対する傾きを補正して出力し、
傾き補正を終了するか否かの選択を受け付け、
傾き補正を終了するとの選択を受け付けた場合には処理を終了し、
傾き補正を終了しないとの選択を受け付けた場合には前記文書画像を複数の領域に分割し、
分割した各領域について前記文書画像の縁に対する傾きを推定し、
複数の領域それぞれと推定した傾きとを関連づけて出力し、
前記領域に対する選択に基づいて前記領域の前記文書画像の縁に対する傾きを補正する
ことを特徴とする画像処理方法。
【０１１８】
各実施例で記載されている技術的特徴（構成要件）はお互いに組合せ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本発明の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１１９】
１０  画像処理装置
１１  ＣＰＵ
１４  入力部
１５  操作部
１６  表示部
１７  通信モジュール
２２  分割部
２３  推定部
２４  群分類部
２５  出力部
２６  選択受付部
２８  補正部
３５  傾き指標
３８  文書画像縁
３９  内側領域
【図１】
0006379980.tif 000002
【図２】
0006379980.tif 000003
【図３】
0006379980.tif 000004
【図４】
0006379980.tif 000005
【図５】
0006379980.tif 000006
【図６】
0006379980.tif 000007
【図７】
0006379980.tif 000008
【図８】
0006379980.tif 000009
【図９】
0006379980.tif 000010
【図１０】
0006379980.tif 000011
【図１１】
0006379980.tif 000012
【図１２】
0006379980.tif 000013
【図１３】
0006379980.tif 000014
【図１４】
0006379980.tif 000015
【図１５】
0006379980.tif 000016
【図１６】
0006379980.tif 000017
【図１７】
0006379980.tif 000018
【図１８】
0006379980.tif 000019
【図１９】
0006379980.tif 000020
【図２０】
0006379980.tif 000021