(57)【要約】【課題】原稿画像の傾きを正確に検出する。【解決手段】文字上に第一探索点と第一探索円を設定し、第一探索円と文字が重なり合う点に第一の印をつける。第一の印の分布に基づいて行間領域に第二探索点及び第二探索円を設定する。更に、第二探索円と文字が重なり合う点に第二の印をつけ、この第二の印の分布に基づいて行間方向を求める。その行間方向を用いて第二探索点をクラスタリングし、各クラスについて第二探索点を結ぶ近似直線を求める。この近似直線の真上に位置する複数の文字のうち第二探索円と重なる文字の全画素を用いて当該文字により構成される行の方向を示す直線を求め、更に近似直線の真下に位置する複数の文字のうち第二探索円と重なる文字の全画素を用いて当該文字により構成される行の方向を示す直線を求める。これらの直線の傾きに基づいて、画像読取部９１が読み取った画像の傾き角度を決定する。【選択図】図３
2020144460.tif 000002
【特許請求の範囲】
【請求項１】
原稿の画像を読み取る画像読取部と、
前記画像読取部による原稿読取で得られた画像に含まれる複数の文字を検出し、当該それぞれの文字上の一点に第一探索点を設定する第一探索点設定部と、
前記第一探索点設定部によって設定された各第一探索点について、第一探索点を中心として、半径の異なる複数の第一探索円を設定して、前記複数の第一探索円の中心である第一探索点及び当該複数の第一探索円からなる第一探索枠を作成する第一探索枠作成部と、
前記第一探索枠作成部によって作成された各第一探索枠において、前記複数の第一探索円と前記画像に含まれる文字が交差する点に第一の印を付ける第一マーキング部と、
前記各第一探索枠において、当該第一探索円の中心である第一探索点から見たときの前記第一の印がない範囲を扇形状に抽出し、最も中心角の大きい範囲の方向を、行間のある領域として検出する行間領域検出部と、
前記各第一探索枠における前記行間領域検出部が検出した領域であって、前記複数の第一探索円のいずれかの探索円上に第二探索点を設定する第二探索点設定部と、
前記第二探索点設定部によって設定された各第二探索点について、前記第二探索点を中心とし、半径の異なる複数の第二探索円を設定して、第二探索点及び当該複数の第二探索円からなる第二探索枠を作成する第二探索枠作成部と、
前記第二探索枠作成部によって作成された前記各第二探索枠において、前記第二探索円と前記画像に含まれる文字が交差する点に第二の印を付ける第二マーキング部と、
前記各第二探索枠において、前記複数の第二探索円の中心である第二探索点から見たときの前記第二の印がない範囲を扇形状に抽出し、当該範囲の中心部と前記第二探索点を通る直線の延びる方向を行間方向として設定する行間方向設定部と、
前記行間方向設定部によって設定された行間方向に並ぶ前記各第二探索枠の前記第二探索点を同一クラスとするクラスタリングを行うクラスタリング部と、
前記クラスタリング部により作成されたクラス毎に、クラス内の前記各第二探索枠の前記第二探索点を結ぶ近似直線を算出する近似直線算出部と、
前記近似直線算出部により算出された近似直線毎に、近似直線の真上に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求め、更に前記近似直線の真下に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求める行方向算出部と、
前記行方向算出部によって算出された前記行の方向を示すそれぞれの直線の傾きから、前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾き角度を決定する傾き角度決定部と、
を備えた画像傾き角度検出装置。
【請求項２】
前記画像から文字の多い領域を切り出して切出画像を取得する画像切出部を更に備え、
前記第一探索点設定部は、前記切出画像を前記画像として前記第一探索点の設定を行う請求項１に記載の画像傾き角度検出装置。
【請求項３】
前記第一探索点設定部は、前記画像を予め定められた数の領域に区切り、当該区切られた各領域において予め定められた数の文字を選択して、当該選択された文字上の一点を前記第一探索点とする請求項１又は請求項２に記載の画像傾き角度検出装置。
【請求項４】
前記第一探索枠作成部は、最も小さい前記第一探索円の直径を当該第一探索円の中心とする第一探索点の周辺にある文字のサイズの約１．４倍とし、最も大きい前記第一探索円の直径を前記周辺にある文字のサイズの約３倍とする請求項１乃至請求項３のいずれかに記載の画像傾き角度検出装置。
【請求項５】
前記行間方向設定部は、
前記各第二探索枠において、前記複数の第二探索円のそれぞれについての前記第二の印と、当該第二の印を前記第二探索点を中心に１８０°回転移動させた第二の印とを重ね合わせ、当該重ね合わせた第二の印について、前記第二探索点から見たときに前記第二の印がない範囲を扇形状に抽出し、
当該抽出した範囲のうち、前記第二探索点を通る直線を軸に線対称となる位置にある範囲を２つ選択し、当該選択された範囲の中心部と前記第二探索点とを通る直線が延びる方向を、行間方向として設定する請求項１乃至請求項４のいずれかに記載の画像傾き角度検出装置。
【請求項６】
前記近似直線算出部は、同一の前記クラス内における前記各第二探索枠の前記第二探索点の座標を入力として主成分分析を行って前記近似直線を求める請求項１乃至請求項５のいずれかに記載の画像傾き角度検出装置。
【請求項７】
前記行方向算出部は、前記近似直線の真上に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の座標を入力として主成分分析を行って前記真上に位置する複数の文字により構成される行方向を示す直線を求め、更に前記近似直線の真下に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の座標を入力として主成分分析を行って前記真下に位置する複数の文字により構成される行方向を示す直線を求める請求項１乃至請求項６のいずれかに記載の画像傾き角度検出装置。
【請求項８】
前記傾き角度決定部は、前記行方向算出部が算出した直線の傾きの平均値を算出し、当該平均値から予め定められた値以上差のある直線の傾きは除外して、前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾きの傾き角度を決定する請求項１乃至請求項７のいずれかに記載の画像傾き角度検出装置。
【請求項９】
同一の前記クラスについて、最も離れた二つの前記第二探索枠の前記第二探索点について当該第二探索点間の距離をクラス長として算出するクラス長算出部を更に備え、
前記傾き角度決定部は、前記行方向算出部が算出した直線の傾きについて、前記クラス長が長いクラスから算出された当該直線の傾きから順に一定数を抽出し、当該抽出された傾きから、前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾き角度を決定する請求項１乃至請求項８のいずれかに記載の画像傾き角度検出装置。
【請求項１０】
前記傾き角度決定部は、前記抽出された直線の傾きについて、当該直線が属するクラスの前記クラス長が長いほど重要度を高くして加重平均を算出し、その算出結果を前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾きの傾き角度とする請求項９に記載の画像傾き角度検出装置。
【請求項１１】
請求項１乃至請求項１０のいずれかに記載の画像傾き角度検出装置を備え、
前記画像読取部によって読み取られた画像を用いて記録媒体に画像形成を行う画像形成装置。
【請求項１２】
コンピューターを、
画像読取部による原稿読取で得られた画像に含まれる複数の文字を検出し、当該それぞれの文字上の一点に第一探索点を設定する第一探索点設定部と、
前記第一探索点設定部によって設定された各第一探索点について、第一探索点を中心として、半径の異なる複数の第一探索円を設定して、前記複数の第一探索円の中心である第一探索点及び当該複数の第一探索円からなる第一探索枠を作成する第一探索枠作成部と、
前記第一探索枠作成部によって作成された各第一探索枠において、前記複数の第一探索円と前記画像に含まれる文字が交差する点に第一の印を付ける第一マーキング部と、
前記各第一探索枠において、当該第一探索円の中心である第一探索点から見たときの前記第一の印がない範囲を扇形状に抽出し、最も中心角の大きい範囲の方向を、行間のある領域として検出する行間領域検出部と、
前記各第一探索枠における前記行間領域検出部が検出した領域であって、前記複数の第一探索円のいずれかの探索円上に第二探索点を設定する第二探索点設定部と、
前記第二探索点設定部によって設定された各第二探索点について、前記第二探索点を中心とし、半径の異なる複数の第二探索円を設定して、第二探索点及び当該複数の第二探索円からなる第二探索枠を作成する第二探索枠作成部と、
前記第二探索枠作成部によって作成された前記各第二探索枠において、前記第二探索円と前記画像に含まれる文字が交差する点に第二の印を付ける第二マーキング部と、
前記各第二探索枠において、前記複数の第二探索円の中心である第二探索点から見たときの前記第二の印がない範囲を扇形状に抽出し、当該範囲の中心部と前記第二探索点を通る直線の延びる方向を行間方向として設定する行間方向設定部と、
前記行間方向設定部によって設定された行間方向に並ぶ前記各第二探索枠の前記第二探索点を同一クラスとするクラスタリングを行うクラスタリング部と、
前記クラスタリング部により作成されたクラス毎に、クラス内の前記各第二探索枠の前記第二探索点を結ぶ近似直線を算出する近似直線算出部と、
前記近似直線算出部により算出された近似直線毎に、近似直線の真上に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求め、更に前記近似直線の真下に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求める行方向算出部と、
前記行方向算出部によって算出された前記行の方向を示すそれぞれの直線の傾きから、前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾き角度を決定する傾き角度決定部と、して機能させる画像傾き角度検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の傾き角度を検出する装置及びプログラムに関する。
【背景技術】
【０００２】
スキャナー等の原稿読取装置に原稿を読み取らせる際、原稿の置き方が原因で原稿の内容が斜めに読み取られてしまう場合がある。斜めに読み取られた原稿画像を元に印刷を行うと印字品質が悪化するため、傾き角度を検出して原稿画像の向きを補正し、補正後の画像を用いて印刷することが望ましい。原稿画像の向きを補正するには原稿（コンテンツ）の範囲を正確に知る必要があり、そのためには原稿画像の傾き角度が必要となってくる。
【０００３】
特許文献１には、各文字の上端のエッジ画素の座標を入力として最小二乗法により回帰直線を求め、その直線の傾きを画像の傾き角度とする方法が記載されている。
【０００４】
特許文献２には、画像内の文字画素周辺を膨張させて文字色で塗りつぶしたような画像を作成し、その画像からエッジ抽出処理を行い、細線化処理をかけて、抽出された直線から原稿画像の傾きを推定する方法が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−００５０６２号公報
【特許文献２】特開２０１４−２３０１１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１に記載の方法は、各文字の上端のエッジ情報を利用しているため、アルファベット等の高さの異なる文字を処理する場合は精度が落ちてしまう。また、推定手段に最小二乗法を利用しているため、文字が縦組で並んでいる場合に精度が落ちる。
【０００７】
更に、特許文献２に記載の方法は、膨張、細分化、エッジ抽出の順に処理を行い、抽出されたエッジから傾き角度を推定するが、この過程で抽出される情報は文字の最外部の画素のみであり、文字の形が推定精度に影響する。特にアルファベット等の高さの異なる文字の場合に精度が落ちてしまう。
【０００８】
本発明は、画像の傾き角度を正確に検出することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一局面に係る画像傾き角度検出装置は、原稿の画像を読み取る画像読取部と、前記画像読取部による原稿読取で得られた画像に含まれる複数の文字を検出し、当該それぞれの文字上の一点に第一探索点を設定する第一探索点設定部と、前記第一探索点設定部によって設定された各第一探索点について、第一探索点を中心として、半径の異なる複数の第一探索円を設定して、前記複数の第一探索円の中心である第一探索点及び当該複数の第一探索円からなる第一探索枠を作成する第一探索枠作成部と、前記第一探索枠作成部によって作成された各第一探索枠において、前記複数の第一探索円と前記画像に含まれる文字が交差する点に第一の印を付ける第一マーキング部と、前記各第一探索枠において、当該第一探索円の中心である第一探索点から見たときの前記第一の印がない範囲を扇形状に抽出し、最も中心角の大きい範囲の方向を、行間のある領域として検出する行間領域検出部と、前記各第一探索枠における前記行間領域検出部が検出した領域であって、前記複数の第一探索円のいずれかの探索円上に第二探索点を設定する第二探索点設定部と、前記第二探索点設定部によって設定された各第二探索点について、前記第二探索点を中心とし、半径の異なる複数の第二探索円を設定して、第二探索点及び当該複数の第二探索円からなる第二探索枠を作成する第二探索枠作成部と、前記第二探索枠作成部によって作成された前記各第二探索枠において、前記第二探索円と前記画像に含まれる文字が交差する点に第二の印を付ける第二マーキング部と、前記各第二探索枠において、前記複数の第二探索円の中心である第二探索点から見たときの前記第二の印がない範囲を扇形状に抽出し、当該範囲の中心部と前記第二探索点を通る直線の延びる方向を行間方向として設定する行間方向設定部と、前記行間方向設定部によって設定された行間方向に並ぶ前記各第二探索枠の前記第二探索点を同一クラスとするクラスタリングを行うクラスタリング部と、前記クラスタリング部により作成されたクラス毎に、クラス内の前記各第二探索枠の前記第二探索点を結ぶ近似直線を算出する近似直線算出部と、前記近似直線算出部により算出された近似直線毎に、近似直線の真上に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求め、更に前記近似直線の真下に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求める行方向算出部と、前記行方向算出部によって算出された前記行の方向を示すそれぞれの直線の傾きから、前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾き角度を決定する傾き角度決定部と、を備えたものである。
【００１０】
本発明の一局面に係る画像傾き角度検出プログラムは、コンピューターを、  画像読取部による原稿読取で得られた画像に含まれる複数の文字を検出し、当該それぞれの文字上の一点に第一探索点を設定する第一探索点設定部と、
前記第一探索点設定部によって設定された各第一探索点について、第一探索点を中心として、半径の異なる複数の第一探索円を設定して、前記複数の第一探索円の中心である第一探索点及び当該複数の第一探索円からなる第一探索枠を作成する第一探索枠作成部と、前記第一探索枠作成部によって作成された各第一探索枠において、前記複数の第一探索円と前記画像に含まれる文字が交差する点に第一の印を付ける第一マーキング部と、前記各第一探索枠において、当該第一探索円の中心である第一探索点から見たときの前記第一の印がない範囲を扇形状に抽出し、最も中心角の大きい範囲の方向を、行間のある領域として検出する行間領域検出部と、前記各第一探索枠における前記行間領域検出部が検出した領域であって、前記複数の第一探索円のいずれかの探索円上に第二探索点を設定する第二探索点設定部と、前記第二探索点設定部によって設定された各第二探索点について、前記第二探索点を中心とし、半径の異なる複数の第二探索円を設定して、第二探索点及び当該複数の第二探索円からなる第二探索枠を作成する第二探索枠作成部と、前記第二探索枠作成部によって作成された前記各第二探索枠において、前記第二探索円と前記画像に含まれる文字が交差する点に第二の印を付ける第二マーキング部と、前記各第二探索枠において、前記複数の第二探索円の中心である第二探索点から見たときの前記第二の印がない範囲を扇形状に抽出し、当該範囲の中心部と前記第二探索点を通る直線の延びる方向を行間方向として設定する行間方向設定部と、前記行間方向設定部によって設定された行間方向に並ぶ前記各第二探索枠の前記第二探索点を同一クラスとするクラスタリングを行うクラスタリング部と、前記クラスタリング部により作成されたクラス毎に、クラス内の前記各第二探索枠の前記第二探索点を結ぶ近似直線を算出する近似直線算出部と、前記近似直線算出部により算出された近似直線毎に、近似直線の真上に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求め、更に前記近似直線の真下に位置する複数の文字のうち前記第二探索円と重なる文字の全画素の位置に基づいて、当該複数の文字により構成される行の方向を示す直線を求める行方向算出部と、前記行方向算出部によって算出された前記行の方向を示すそれぞれの直線の傾きから、前記画像読取部による原稿読取で得られた画像の前記原稿に対する傾き角度を決定する傾き角度決定部と、して機能させるものである。
【発明の効果】
【００１１】
本発明は、高い精度で画像の傾き角度を算出することができる。従って、本発明によれば、画像読取装置が傾いた原稿を読み取っても、当該原稿読取で取得した画像の傾き角度を求めて、画像補正を行うことにより、正しい向きの画像を得ることが可能になる。
【図面の簡単な説明】
【００１２】
【図１】画像傾き角度検出装置の内部構成を簡単に示したブロック図である。
【図２】画像傾き角度検出装置の具体的な機能構成を示すブロック図である。
【図３】画像傾き角度検出処理の流れを示したフローチャートである。
【図４】元の画像及び切出し画像を示す図である。
【図５】第一探索点を設定すべき複数の文字及び第一探索点を示す図である。
【図６】文字と第一探索円とが重なる位置に第一の印を付けた状態を示す図である。
【図７】第一探索枠において行間のある領域を示す図である。
【図８】行間領域において第二探索点を設定した状態を示す図である。
【図９】第二探索点を中心に第二探索円を設定した状態を示す図である。
【図１０】文字と第二探索円とが重なる位置に第二の印を付けた状態を示す図である。
【図１１】行間方向が設定される状態を示す図である。
【図１２】クラスタリングされた各第二探索点を示す図である。
【図１３】各クラスにおいて最も離れた第二探索点が選択される状態を示す図である。
【図１４】近似直線算出部による主成分分析によって得られた直線を示す図である。
【図１５】主成分分析によって得られた直線を切出画像に配置した状態を示す図である。
【図１６】近似直線の真上及び真下に位置する複数の文字であって第二探索円と重なる各文字を示す図である。
【図１７】第二探索円と重なる各文字を構成する全画素の座標を入力とする主成分分析により求められた直線を示す図である。
【図１８】図１７に示される直線についての情報を示す図である。
【図１９】原稿を−４°〜＋４°の範囲で一度ずつ傾かせて画像読取装置に読み取らせたときの原稿画像を示した図である。
【図２０】画像の傾き角度を求めた結果を示した図である。
【発明を実施するための形態】
【００１３】
＜１．構成＞
以下、本発明の一実施形態にかかる画像傾き角度検出装置、画像形成装置及び画像傾き角度検出プログラムについて図面を参照して説明する。
【００１４】
図１は、本発明の実施の形態における画像傾き角度検出装置１００の内部構成を簡単に示したブロック図である。画像傾き角度検出装置１００は、汎用のコンピューター等で実現可能である。
【００１５】
図１に示すように、画像傾き角度検出装置１００は、制御ユニット１と、画像傾き角度検出プログラム３１やデータを記憶するための記憶部３と、外部装置とデータ通信を行うためのデータ入出力Ｉ／Ｆ（インターフェース）４と、画像読取部９１とを備える。そして画像傾き角度検出装置１００は、データ入出力Ｉ／Ｆ４を介して、画像形成部９２と接続されている。なお、画像傾き角度検出装置１００及び画像形成部９２を備える装置は画像形成装置を構成する。
【００１６】
制御ユニット１は、プロセッサー、ＲＡＭ(Random Access Memory）、及びＲＯＭ（Read Only Memory）などから構成される。プロセッサーは、例えばＣＰＵ（Central Processing Unit）、ＡＳＩＣ（Application Specific Integrated Circuit）、又はＭＰＵ（Micro Processing Unit）等である。制御ユニット１は、記憶部３に記憶される画像傾き角度検出プログラム３１が上記のプロセッサーで実行されることにより、画像切出部１１、第一探索点設定部１２、第一探索枠作成部１３、第一マーキング部１４、行間領域検出部１５、第二探索点設定部１６、第二探索枠作成部１７、第二マーキング部１８、行間方向設定部１９、クラスタリング部２０、クラス長算出部２１、近似直線算出部２２、行方向算出部２３及び傾き角度決定部２４として機能する。尚、上記各部は、画像傾き角度検出プログラム３１に基づく動作によらず、それぞれハード回路により構成されてもよい。
【００１７】
画像読取部９１は、例えばスキャナー機構等であり、原稿から画像を読み取る。画像形成部９２は、例えば電子写真方式の画像形成機構であり、画像読取部９１が原稿読取により取得した画像に基づいて用紙に画像を印刷する。本実施形態では、画像形成部９２は、画像読取部９１が読み取った画像が傾いている場合、その傾き角度の情報を画像傾き角度検出装置１００から取得し、制御ユニット１の処理により当該画像の傾きを補正して用紙に画像を印刷する。
【００１８】
図２は、画像傾き角度検出装置１００の具体的な機能構成を示すブロック図である。上記画像切出部１１〜傾き角度決定部２４は、以下に示す処理を行う。画像切出部１１は、画像読取部９１による原稿読取で取得された画像から予め定められたサイズの切出画像を切り出す。第一探索点設定部１２は、画像切出部１１が切り出した切出画像に含まれる複数の文字について、当該それぞれの文字上の一点に第一探索点を設定する。第一探索枠作成部１３は、上記各第一探索点について、上記第一探索点を中心として半径の異なる複数の第一探索円を設定し、当該第一探索点及び当該複数の第一探索円からなる第一探索枠を作成する。第一マーキング部１４は、第一探索枠作成部１３によって作成された各第一探索枠において、複数の第一探索円のそれぞれと切出画像に含まれる文字が交差する点に第一の印を付けてマーキングする。行間領域検出部１５は、行間が存在する領域を検出する。
【００１９】
第二探索点設定部１６は、上記各第一探索枠における行間領域検出部１５が検出した領域であって、上記複数の第一探索円のいずれかの探索円上に第二探索点を設定する。第二探索枠作成部１７は、上記第二探索点設定部１６によって設定された各第二探索点について、上記各第一探索枠において、上記第二探索点を中心とし、半径の異なる第二探索円のグループを設定して、当該第二探索点及び当該複数の第二探索円からなる第二探索枠を作成する。第二マーキング部１８は、上記第二探索枠作成部によって作成された上記各第二探索枠において、上記複数の第二探索円と上記切出画像に含まれる文字が交差する点に第二の印をつけてマーキングする。行間方向設定部１９は、第二マーキング部１８による第二の印のマーキング結果を用いて行間方向を設定する。
【００２０】
クラスタリング部２０は、各第二探索点の座標（位置）と、行間方向設定部１９が設定した行間方向とを用いて、各第二探索点のクラスタリングを行う。近似直線算出部２２は、クラスタリング部２０が設定したクラス毎に行方向を示す近似直線を算出する。クラス長算出部２１は、各クラスの長さを算出する。行方向算出部２３は、当該算出された近似直線の上下に存在する文字のうち、第二探索円と交わっている文字を構成する全画素について主成分分析を行って直線を求める。傾き角度決定部２４は、行方向算出部２３によって求められた当該直線の傾き角度から、画像読取部９１による原稿読取で得られた画像の原稿に対する傾き角度を決定する。
【００２１】
＜２．処理の流れ＞
次に、図面を用いて、画像傾き角度検出装置の処理動作について説明する。図３は、画像傾き角度検出処理の流れを示したフローチャートである。まず、画像切出部１１が、画像読取部９１による原稿読取で取得された画像から予め定められたサイズの画像を切り出す（ステップＳ１）。
【００２２】
図４は、ステップＳ１を説明するための図である。例えば、ユーザーが画像読取部９１の原稿載置台に原稿を斜めにセットした場合、画像読取部９１は傾いた原稿をそのまま読み込む。従って、原稿画像５０に示すように、画像読取部９１が読み取った画像は傾いたものとなる。
【００２３】
このため、画像切出部１１は、上記取得された画像から、予め定められたサイズ（例えば、画像全体の４分の１の面積となる大きさ）の画像を切り出して、切出画像５１として取得する。画像切出部１１は、上記取得された画像から文字が多い領域（例えば画素密度が高い領域）を切出画像として採用することが望ましい。
【００２４】
そして、第一探索点設定部１２が、切出画像５１に含まれる文字の中から第一探索点を設定すべき複数の文字を選択し、その複数の文字の画素上に第一探索点を設定する（ステップＳ２）。
【００２５】
図５は、ステップＳ２を説明するための図である。第一探索点設定部１２は、例えばＯＣＲ機能を用いて切出画像５１から複数の文字を検出し、当該検出した複数の文字の中から、第一探索点を設定する文字を複数選択する。例えば、第一探索点設定部１２は、第一探索点を設定する文字を均等に選択するために、切出画像５１を予め定められた数の領域に分割し（図５の場合は９つに等分）、それぞれの区画から１つの文字を選択する。第一探索点設定部１２は、このようにして選択した各文字上に第一探索点を設定する。図５では、１つの区画である区画Ｓｐの中においては、「よ」という文字上に第一探索点６１が設定される例を示している。
【００２６】
次に、第一探索枠作成部１３が、上記のようにして設定された各第一探索点に対して、第一探索点を中心として半径の異なる複数の第一探索円を設定する（ステップＳ３）。図５を用いて説明する。第一探索枠作成部１３は、第一探索点６１を中心に半径が異なる第一探索円６２１、６２２及び６２３（以下、まとめて「第一探索円６２」という）を設定する。第一探索枠作成部１３は、このように、各第一探索点について複数の第一探索円を設定することで、当該第一探索点及び当該複数の第一探索円からなる第一探索枠を、第一探索点毎に作成する。
【００２７】
例えば、最も小さい第一探索円６２３は、第一探索点６１が置かれた文字（図５の領域Ｓｐの場合は「よ」）のフォントサイズの約１．４倍の直径とし、最も大きい第一探索円６２１は、第一探索点６１が置かれた文字のフォントサイズの約３倍の直径とする。理由は、最も小さい第一探索円６２１は第一探索点６１が置かれた文字（「よ」）と交差しないようにし、最も大きい第一探索円６２１は第一探索点６１が置かれた文字（「よ」）の両隣（「い」、「う」）や行間を挟んだ位置にある文字（「ボ」）と交差させるためである。
【００２８】
次に、第一マーキング部１４は、第一探索円６２１、６２２及び６２３の全てと文字が交差する点に第一の印を付けてマーキングする（ステップＳ４）。図６は、ステップＳ４を説明するための図である。以下、図面を見やすくするために、２つの第一探索枠６Ａ，６Ｂについての第一探索点６１Ａと第一探索点６１Ｂ、これらの点を中心とした第一探索円６２Ａと第一探索円６２Ｂを取り上げて説明する。なお、実際には図５に示した全ての第一探索円について以下に説明する処理が行われる。
【００２９】
第一マーキング部１４は、第一探索円６２Ａと重なり合う文字（「新」、「鮮」、「な」、「空」、「医」、「師」、「の」）との交点に第一の印６３Ａを付ける。更に、第一マーキング部１４は、第一探索円６２Ｂと重なり合う文字（「動」、「し」、「、（読点）」、「く」、「さ」）との交点に第一の印６３Ｂを付ける。
【００３０】
次に、行間領域検出部１５は、各第一探索枠における第一探索円それぞれについて、当該第一探索円の中心である第一探索点から見たときの第一の印がない範囲を扇形状に抽出し、当該範囲の中心角を求め、当該求められた中心角のうち、最も中心角の大きい範囲の方向を、行間のある領域として検出する（ステップＳ５）。
【００３１】
図７は、ステップＳ５を説明するための図である。行間領域検出部１５は、第一探索枠６Ａの場合、第一探索点６１Ａから見て、第一の印６３Ａがない範囲として、領域６３１Ａ、６３２Ａ及び６３３Ａを抽出する。また、行間領域検出部１５は、第一探索枠６Ｂの場合、領域６３１Ｂ、６３２Ｂ及び６３３Ｂを第一の印６３Ｂのない範囲として抽出する。
【００３２】
そして、行間領域検出部１５は、上記抽出した領域のうち、最も中心角の大きい領域を選択する。第一探索円６２Ａの場合、行間領域検出部１５は領域６３２Ａを選択する。また第一探索円６２Ｂの場合、行間領域検出部１５は領域６３２Ｂを選択する。
【００３３】
領域６３２Ａ及び６３２Ｂは、行間のある領域を示すことになる。つまり、行間領域検出部１５は、第一探索点が置かれた文字から見たときに行間があることになる行間領域を検出する。
【００３４】
次に、第二探索点設定部１６は、各第一探索枠の上記行間領域において、第一探索円のグループの何れかの探索円上に第二探索点を設定する（ステップＳ６）。第二探索点設定部１６は、設定した各第二探索点の位置（画像における座標）を記憶しておく。
【００３５】
図８は、ステップＳ６を説明するための図である。第二探索点設定部１６は、上記各第一探索枠における、行間領域検出部１５が検出した行間領域において、複数の第一探索円のいずれかの上に第二探索点を設定する。本実施の形態の場合は、第二探索点設定部１６は、領域６３２Ａ及び領域６３２Ｂの中心付近であって、二番目に直径が大きい探索円上に第二探索点６５Ａ及び６５Ｂを設定する。
【００３６】
次に、第二探索枠作成部１７が、上記のようにして設定された各第二探索点に対して、第二探索点を中心として半径の異なる複数の第二探索円を設定する（ステップＳ７）。図９には、第二探索枠作成部１７が、第二探索点６５Ａ、６５Ｂを中心に半径が異なる３つの第二探索円のグループ６６Ａ、６６Ｂを設定する例を示している。各第二探索円の大きさは、図５で説明した第一探索円６２と同様である。第二探索枠作成部１７は、このように、各第二探索点について上記複数の第二探索円を設定することで、当該第二探索点及び当該複数の第二探索円からなる第二探索枠を、第二探索点毎に作成する。
【００３７】
次に、第二マーキング部１８は、各第二探索枠について、全ての第二探索円と文字が交差する点に第二の印を付けてマーキングする（ステップＳ８）。図１０は、ステップＳ８を説明するための図である。第二マーキング部１８は、第二探索円６６Ａと重なり合う文字（「「医」、「師」、「の」、「の」、「中」、「を」）との交点に第二の印６７Ａを付ける。更に、第二マーキング部１８は、第二探索円６６Ｂと重なり合う文字（「く」、「だ」、「さ」、「プ」、「１」、「、（読点）」）との交点に第二の印６７Ｂを付ける。
【００３８】
次に、行間方向設定部１９が、上記のようにして作成された各第二探索枠において、第二探索円の中心である第二探索点から見たときの上記第二の印がない範囲を扇形状に抽出し、当該範囲の中心部と上記第二探索点とを通る直線の延びる方向を行間方向として設定する。例えば、行間方向設定部１９は、図１１に示すように、第二の印と、第二探索点を中心に第二の印を１８０°回転移動させたものとを重ね合わせる。そして、行間方向設定部１９は、重ね合わせた印について、中心である第二探索点から見たときの第二の印がない範囲を扇形状に抽出し、抽出された範囲と第二探索点を結んだ直線を行間方向として設定する（ステップＳ９）。
【００３９】
図１１は、ステップＳ９を説明するための図である。行間方向設定部１９は、第二探索円６６Ａ上に付けられた第二の印６７Ａ（図１１中の（１））を、第二探索点６５Ａを中心として１８０°回転移動させて、（２）に示す第二の印６７Ａを作成する。
【００４０】
そして、行間方向設定部１９は、（１）と（２）に示した第二の印６７Ａを重ね合わせて、（３）に示す第二の印６７Ａを作成する。更に、行間方向設定部１９は、（３）について第二探索点６５Ａから見たときに第二の印６７Ａがない範囲である領域Ｒ１及びＲ２を抽出する。行間方向設定部１９は、この領域Ｒ１及びＲ２の中心部及び第二探索点６５Ａを通る直線Ｙが延びる方向を行間方向とする。なお、行間方向設定部１９は、第二の印６７Ａがない領域が３つ以上ある場合、第二探索点６５Ａを通る直線を軸に線対称の位置にある領域を２つ選択し、選択された範囲が示す領域の中心部及び第二探索点６５Ａを通る直線が延びる方向を行間方向として設定する。
【００４１】
次に、クラスタリング部２０が、各第二探索枠の第二探索点の位置と、行間方向設定部１９が設定した行間方向とを用いて、上記各第二探索点に対してクラスタリングを行う（ステップＳ１０）。例えば、クラスタリング部２０は、第二探索点の位置が、第二探索点を通る上記直線に直交する方向において予め定められた一定範囲内にある、という基準を用いて、この基準を満たす複数の第二探索点を同一クラスとしてクラスタリングする。なお、クラスタリング部２０は、第二探索点設定部１６から各第二探索点の位置を取得する。
【００４２】
図１２は、ステップＳ１０を説明するための図である。図１２に例を示すように、クラスタリング部２０は、上記基準を用いて、第二探索点６７１Ａと６７１ＢをクラスＣ１、第二探索点６７２Ａ、６７２Ｂ及び６７２ＣをクラスＣ２、第二探索点６７３Ａ、６７３Ｂ及び６７３ＣをクラスＣ３、という具合に、行間方向設定部１９が設定した行間方向に基づいて、同じ行間にある第二探索点毎にクラスタリングする。
【００４３】
次に、クラス長算出部２１が、クラスタリング部２０が設定した各クラスにおいて、最も離れた第二探索点を二点選択し、その二点間の距離を算出してクラス長とする（ステップＳ１１）。
【００４４】
図１３は、ステップＳ１１を説明するための図である。図１３に示した図の場合、クラスＣ１のクラス長は矢印７１、クラスＣ２のクラス長は矢印７２、クラスＣ３のクラス長は矢印７３の長さとなる。
【００４５】
次に、近似直線算出部２２は、上記クラス毎に、第二探索点の座標を用いて主成分分析を行い、行間の方向に相当する近似直線を求める（ステップＳ１２）。
【００４６】
図１４及び図１５は、ステップＳ１２を説明するための図である。近似直線算出部２２は、同じクラスの全ての第二探索点の座標を入力として主成分分析を行う。近似直線算出部２２は、主成分分析として既知の分析手法を用いる。図１４の直線Ｌ１は近似直線算出部２２による主成分分析によって得られた直線であり、各第二探索点の座標に基づいて、直線Ｌ１を図１５に示す切出画像５１に配置したものが点線Ｌ１である。
【００４７】
次に、行方向算出部２３が、ステップＳ１２で求めた近似直線の真上に位置する複数の文字のうち、第二探索円と重なる各文字を構成する全画素の座標（位置）を入力として主成分分析を行う。これにより、近似直線の真上にある文字により構成される行の方向を示す直線を得る。更に、行方向算出部２３は、ステップＳ１２で求めた近似直線の真下に位置する複数の文字のうち、第二探索円と重なる各文字を構成する全画素の座標を入力として主成分分析を行う。これにより、近似直線の真下にある文字により構成される行の方向を示す直線を得る（ステップＳ１３）。
【００４８】
図１６は、ステップＳ１３を説明するための図である。行方向算出部２３は、近似直線Ｌ１の真上にある行Ｒ１に含まれる文字のうち、第二探索円８１Ａ、８１Ｂ及び８１Ｃと重なる文字（四角で囲まれた文字。「医」、「師」、「の」、「察」、「を」、「受」、「く」、「だ」、「さ」）を構成する全画素の座標について主成分分析を行う。これにより得られる直線が、図１７に示す直線Ｌ１０１である。
【００４９】
更に、行方向算出部２３は、近似直線Ｌ１の真下にある行Ｒ２に含まれる文字のうち、第二探索円８１Ａ、８１Ｂ及び８１Ｃと重なる文字（「の」、「中」、「を」、「す」、「ぎ」、「、（読点）」、「プ」、「１」、「、（読点）」）を構成する全画素の座標について主成分分析を行う。当該主成分分析によって得られる直線が、図１７に示す直線Ｌ１０２である。図１７において、直線Ｌ１０１は行Ｒ１の方向を示し、直線Ｌ１０２は、行Ｒ２の方向を示す。
【００５０】
次に、傾き角度決定部２４が、ステップＳ１３で求めた行の方向を示す直線の傾き、すなわち、画像読取部９１による読取で得られた原稿画像５０の縦２つの辺及び横２つの辺の各辺に対する、ステップＳ１３で求めた行の方向を示す直線の傾きを算出し、当該傾きが最も小さくなる２つの辺のいずれかの辺に対する傾きに基づいて、画像読取部９１が読み取った画像の原稿に対する傾き角度を決定する（ステップＳ１４）。図１８は、ステップＳ１３で求められた各直線の情報を示した図である。
【００５１】
画像読取部９１が読み取った画像の傾き角度の決定方法について詳しく説明する。
（１）まず、傾き角度決定部２４は、ステップＳ１３で求められた行の方向を示す直線の傾きを求め、各行についての直線の傾きの平均値を算出する。なお、傾き角度決定部２４は、その平均値から予め定められた値以上差のある直線の傾きをデータから除外する。傾き角度決定部２４は、期待値から大きく外れた傾きを除外することで、求められる上記画像の傾き角度の精度を高める。
【００５２】
（２）次に、傾き角度決定部２４は、上記除外後の行の方向を示す直線の傾きについて、クラス長が長いクラスから求められた直線の傾きから順に予め定められた一定数を抽出する。クラス長が長いほど、行方向算出部２３が求めた直線の傾きと実際の傾きとの誤差が小さいと考えられる。従って、クラス長の長いクラスから導き出された直線の傾きを考慮することで、求められる傾き角度の精度を高めることができる。
【００５３】
（３）最後に、傾き角度決定部２４は、（２）で抽出された直線の傾きについて、当該直線が属するクラスのクラス長が長いほど重要度を高くして加重平均を算出し、その算出結果を、画像読取部９１が読み取った画像の傾き角度とする。
＜３．実験結果＞
【００５４】
以上で説明した手法を用いて、実際に原稿を傾かせて読み取らせた後、画像読取部９１が読み取った画像の傾き角度を算出した。図１９は、原稿を−４°〜＋４°の範囲で一度ずつ傾かせて画像読取部９１に読み取らせたときの原稿画像を示している。傾き角度は反時計方向を＋、時計方向を−とする。
【００５５】
図２０は、上記の手法を用いて、原稿画像から上記画像の傾き角度を求めた結果を示している。原稿として、英文の資料（英文１〜３）と日本語の資料（和文１〜３）の合計６種類を用いた。どの資料においても、実際の傾き角度と算出結果の誤差が−０．２°〜＋０．２°となっており、高い精度で上記画像の傾き角度を求められることが分かった。
【００５６】
そして、原稿に含まれる文字がアルファベットのような高さや幅にばらつきのある文字であっても、傾き角度を精度良く検出することができることが分かった。
【００５７】
また、画像読取部９１に原稿を設置する際に、原稿の向きを９０°回転させ、更に＋４°程度傾けてセットして読み取らせた場合でも、十分な精度で上記画像の傾き角度を算出した。従って、原稿の向きに関係なく、傾き角度を正確に算出することができる。
＜４．効果＞
【００５８】
上記実施形態によれば、従来よりも高い精度で、画像読取部９１が読み取った画像の傾き角度を求めることができる。そして、画像読取部９１が傾いた原稿を読み取っても、取得した原稿画像から画像の傾き角度を求めて、画像補正を行うことにより、正しい向きの画像を得ることが可能である。更に、画像形成部９２が用紙に印刷する際も正しい向きの画像を印刷することができる。
【００５９】
なお、本発明は上記実施の形態の構成に限られず種々の変形が可能である。また、図１乃至図２０を用いて説明した上記実施形態の構成及び処理は、本発明の一例に過ぎず、本発明を当該構成及び処理に限定する趣旨ではない。
【符号の説明】
【００６０】
１００  画像傾き角度検出装置
１      制御ユニット
３      記憶部
３１    画像傾き角度検出プログラム
４      データ入出力Ｉ／Ｆ
９１    画像読取装置
９２    画像形成装置
【図１】
2020144460.tif 000003
【図２】
2020144460.tif 000004
【図３】
2020144460.tif 000005
【図４】
2020144460.tif 000006
【図５】
2020144460.tif 000007
【図６】
2020144460.tif 000008
【図７】
2020144460.tif 000009
【図８】
2020144460.tif 000010
【図９】
2020144460.tif 000011
【図１０】
2020144460.tif 000012
【図１１】
2020144460.tif 000013
【図１２】
2020144460.tif 000014
【図１３】
2020144460.tif 000015
【図１４】
2020144460.tif 000016
【図１５】
2020144460.tif 000017
【図１６】
2020144460.tif 000018
【図１７】
2020144460.tif 000019
【図１８】
2020144460.tif 000020
【図１９】
2020144460.tif 000021
【図２０】
2020144460.tif 000022