(57)【要約】【課題】原稿領域と背景領域との境界線を誤って検出した場合に、誤検出を判定する画像処理装置及び画像処理方法を提供する。【解決手段】画像処理装置１０は、画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出部６１と、候補画素の座標を複数の座標グループに分類する分類部６３と、複数の座標グループ毎に属する座標に基づいて境界線の複数の近似直線を算出する近似直線算出部６４と、各近似直線から所定距離の範囲内に存在する候補画素の数に基づいて複数の近似直線のいずれかを選択し、選択した近似直線に基づいて境界線の仮直線を決定する仮直線決定部６５と、仮直線から所定距離の範囲内において原稿の縁の影画像を検出する影検出部６６と、影部分の検出結果に応じて仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定部６７を備える。【選択図】図７
2014072626.tif 000002
【特許請求の範囲】
【請求項１】
画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出部と、
前記候補画素の座標を複数の座標グループに分類する分類部と、
前記複数の座標グループ毎に属する座標に基づいて、前記境界線の複数の近似直線を算出する近似直線算出部と、
各前記近似直線から所定距離の範囲内に存在する前記候補画素の数に基づいて前記複数の近似直線のいずれかを選択し、選択した近似直線に基づいて前記境界線の仮直線を決定する仮直線決定部と、
前記仮直線から所定距離の範囲内において前記原稿の縁の影画像を検出する影検出部と、
前記影部分の検出結果に応じて前記仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定部と、
を備える画像処理装置。
【請求項２】
前記影画像の検出位置に応じて前記仮直線の位置を補正することにより前記境界線を決定する補正部を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記影検出部は、
前記仮直線から前記原稿領域の内側に向かう第１方向と直交する第２方向の複数の座標毎に、第１方向に沿う画素の微分が最大値となる最大値点を検出する最大値点検出部と、
第２方向の前記複数の座標についてそれぞれ検出された最大値点毎に、各前記最大値点の第１方向の座標とこの最大値点を通り第１方向に伸びる直線と前記仮直線と交点の第１方向の座標との間の差の度数分布を算出する分布算出部と、
前記度数分布に応じて前記影画像の有無を判定する判定部と、
を備えることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記判定部は、前記度数分布に現れるピークの高さと幅に基づいて前記影画像の有無を判定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記影検出部は、前記度数分布に現れるピークの位置に応じて前記影画像の位置を特定することを特徴とする請求項３又は４に記載の画像処理装置。
【請求項６】
前記仮直線から所定距離の範囲内に境界線がないと前記境界線判定部が判定した場合に、前記仮直線決定部は、前記選択した近似直線以外の近似直線を前記複数の近似直線の中から再選択し、再選択された近似直線に基づいて仮直線を再決定することを特徴とする請求項１〜５のいずれか一項に記載の画像処理装置。
【請求項７】
前記近似直線算出部は、
前記座標グループのいずれかと前記近似直線との間の距離が所定の閾値以下となるように前記複数の近似直線を算出し、
前記複数の近似直線のいずれについても所定距離の範囲内に境界線がないと前記境界線判定部が判定した場合に、前記所定の閾値を変えて前記複数の近似直線を再算出する、
ことを特徴とする請求項１〜６のいずれか一項に記載の画像処理装置。
【請求項８】
前記分類部は、
連続する候補画素同士を結ぶ直線の方向の変化量が所定の第２閾値以下か否かに基づき、前記候補画素を同じ前記座標グループに分類するか否かを決定し、
前記近似直線算出部が再算出した前記近似直線のいずれについても所定距離の範囲内に境界線がないと前記境界線判定部が判定した場合に、前記所定の第２閾値を変えて前記候補画素を再分類する、
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記候補画素検出部は、前記分類部が再分類した前記座標グループに基づいて算出した近似直線についても前記所定の範囲内に境界線がないと前記境界線判定部が判定した場合に、検出閾値を変えて候補画素を再検出することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
画像読取装置と、該画像読取装置との間の通信により該画像読取装置が読み込む画像を受信するコンピュータ装置とを有する画像処理システムであって、
前記画像読取装置により読み込まれる画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出部と、
前記候補画素の座標を複数の座標グループに分類する分類部と、
前記複数の座標グループ毎に属する座標に基づいて、前記境界線の複数の近似直線を算出する近似直線算出部と、
各前記近似直線から所定距離の範囲内に存在する前記候補画素の数に基づいて前記複数の近似直線のいずれかを選択し、選択した近似直線に基づいて前記境界線の仮直線を決定する仮直線決定部と、
前記仮直線から所定距離の範囲内において前記原稿の縁の影画像を検出する影検出部と、
前記影部分の検出結果に応じて前記仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定部と、
を備える画像処理システム。
【請求項１１】
画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出ステップと、
前記候補画素の座標を複数の座標グループに分類する分類ステップと、
前記複数の座標グループ毎に属する座標に基づいて、前記境界線の複数の近似直線を算出する近似直線算出ステップと、
各前記近似直線から所定距離の範囲内に存在する前記候補画素の数に基づいて前記複数の近似直線のいずれかを選択し、選択した近似直線に基づいて前記境界線の仮直線を決定する仮直線決定ステップと、
前記仮直線から所定距離の範囲内において前記原稿の縁の影画像を検出する影検出ステップと、
前記影部分の検出結果に応じて前記仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定ステップと、
を含むことを特徴とする画像処理方法。
【請求項１２】
画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出ステップと、
前記候補画素の座標を複数の座標グループに分類する分類ステップと、
前記複数の座標グループ毎に属する座標に基づいて、前記境界線の複数の近似直線を算出する近似直線算出ステップと、
各前記近似直線から所定距離の範囲内に存在する前記候補画素の数に基づいて前記複数の近似直線のいずれかを選択し、選択した近似直線に基づいて前記境界線の仮直線を決定する仮直線決定ステップと、
前記仮直線から所定距離の範囲内において前記原稿の縁の影画像を検出する影検出ステップと、
前記影部分の検出結果に応じて前記仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定ステップと、
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理システム、画像処理方法、及び画像処理プログラムに関し、特に、画像データに含まれる原稿領域と背景領域との境界線の検出に関する。
【背景技術】
【０００２】
原稿を読み取って得られる画像データから原稿領域の画像を切り出す画像処理装置が知られている。例えば、画像処理装置は、原稿領域を含む画像を取得し、取得した画像に基づいてエッジ候補画素の座標値を検出し、検出したエッジ候補画素の座標値に基づいて原稿領域の傾きを算出し、検出したエッジ候補画素の座標値に基づいてエッジ端候補画素の座標値を抽出する。そして画像処理装置は、算出した原稿領域の傾きおよび抽出したエッジ端候補画素の座標値に基づいてエッジに対応する直線を算出し、算出したエッジに対応する直線に基づいて原稿領域の傾きを補正すると共に、当該直線に基づいて画像から原稿領域を切り出す（特許文献１を参照）。
【０００３】
関連する技術として、紙葉類上に貼り付けられた切手の厚みによって紙葉類の読取り画像上に現れる陰影を検出し、検出した陰影に基づいて切手全体の位置を検出する切手検出装置が知られている（特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２１８９５３号公報
【特許文献２】特開２００４−５０５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
原稿領域と背景領域との境界線の誤検出の原因の一例として縦筋ノイズがある。縦筋ノイズとは、画像読取装置による原稿の副走査方向に沿って伸びる線状のノイズである。縦筋ノイズは、例えばＡＤＦ（automatic document feeder）装置が搭載されたスキャナにおいて、読み取り部や裏当て部の汚れによって生じることがある。
【０００６】
また、例えば原稿と画像読取装置の裏当て部との明度差が小さい等の場合には、画像データ内の原稿領域と背景領域の明度差が小さくなる場合がある。図１は、原稿領域と背景領域の明度差が小さい画像データの模式図である。画像データ９００は、原稿領域９０１と背景領域９０２を含み、原稿領域９０１と背景領域９０２の明度差が比較的小さい。
【０００７】
このため、原稿領域９０１内における明度変化が、原稿領域９０１と背景領域９０２との境界と誤検出されることがある。画素９０３は、原稿領域９０１と背景領域９０２との境界を検出した候補画素であり、画素９０４は、原稿領域９０１内における明度変化を境界と誤検出した候補画素である。これらの候補画素９０３及び９０４に基づいて辺の境界線２０５を近似した場合にも誤差が生じることがある。
【０００８】
本発明は、原稿領域と背景領域との境界線を誤って検出した場合に、誤検出を判定する画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面に係る画像処理装置は、画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出部と、候補画素の座標を複数の座標グループに分類する分類部と、複数の座標グループ毎に属する座標に基づいて境界線の複数の近似直線を算出する近似直線算出部と、各近似直線から所定距離の範囲内に存在する候補画素の数に基づいて複数の近似直線のいずれかを選択し、選択した近似直線に基づいて境界線の仮直線を決定する仮直線決定部と、仮直線から所定距離の範囲内において原稿の縁の影画像を検出する影検出部と、影部分の検出結果に応じて仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定部を備える。
【００１０】
本発明の一側面に係る画像処理システムは、画像読取装置と、この画像読取装置との間の通信により画像読取装置が読み込む画像を受信するコンピュータ装置とを有する。画像処理システムは、画像読取装置により読み込まれる画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出部と、候補画素の座標を複数の座標グループに分類する分類部と、複数の座標グループ毎に属する座標に基づいて境界線の複数の近似直線を算出する近似直線算出部と、各近似直線から所定距離の範囲内に存在する候補画素の数に基づいて複数の近似直線のいずれかを選択し、選択した近似直線に基づいて境界線の仮直線を決定する仮直線決定部と、仮直線から所定距離の範囲内において原稿の縁の影画像を検出する影検出部と、影部分の検出結果に応じて仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定部を備える。
【００１１】
本発明の一側面に係る画像処理方法は、画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出ステップと、候補画素の座標を複数の座標グループに分類する分類ステップと、複数の座標グループ毎に属する座標に基づいて境界線の複数の近似直線を算出する近似直線算出ステップと、各近似直線から所定距離の範囲内に存在する候補画素の数に基づいて複数の近似直線のいずれかを選択し、選択した近似直線に基づいて境界線の仮直線を決定する仮直線決定ステップと、仮直線から所定距離の範囲内において原稿の縁の影画像を検出する影検出ステップと、影部分の検出結果に応じて前記仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定ステップを含む。
【００１２】
本発明の一側面に係るコンピュータプログラムは、画像データから原稿領域の辺の境界線を構成する画素の候補となる候補画素を検出する候補画素検出ステップと、候補画素の座標を複数の座標グループに分類する分類ステップと、複数の座標グループ毎に属する座標に基づいて境界線の複数の近似直線を算出する近似直線算出ステップと、各近似直線から所定距離の範囲内に存在する候補画素の数に基づいて複数の近似直線のいずれかを選択し、選択した近似直線に基づいて境界線の仮直線を決定する仮直線決定ステップと、仮直線から所定距離の範囲内において原稿の縁の影画像を検出する影検出ステップと、影部分の検出結果に応じて仮直線の所定距離の範囲内に境界線があるか否かを判定する境界線判定ステップをコンピュータに実行させる。
【発明の効果】
【００１３】
本明細書に開示される装置又は方法によれば、原稿領域と背景領域との境界線を誤って検出した場合に、誤検出を判定する画像処理装置及び画像処理方法が提供される。
【図面の簡単な説明】
【００１４】
【図１】原稿領域と背景領域の明度差が小さい画像データの模式図である。
【図２】画像処理システム１のハードウエア構成図である。
【図３】画像処理システム１の処理の第１例の説明図である。
【図４】（Ａ）〜（Ｃ）は、図３に示す処理の説明図である。
【図５】（Ａ）及び（Ｂ）は、図３に示す処理の説明図である。
【図６】（Ａ）〜（Ｃ）は、仮直線と原稿の縁の影画像の説明図である。
【図７】画像処理制御部１７の構成例の第１例を示す図である。
【図８】候補画素検出部６１により検出された候補画素の説明図である。
【図９】座標グループ生成処理の一例の説明図である。
【図１０】（Ａ）及び（Ｂ）は、座標グループ生成処理を説明するための図である。
【図１１】（Ａ）〜（Ｃ）は、候補画素間を結ぶ直線の傾きθが４５°を超える場合の説明図である。
【図１２】（Ａ）及び（Ｂ）は、イメージスキャナに対して原稿が４５°傾いた状態で読み取られた際の候補画素の状態を示す図である。
【図１３】（Ａ）〜（Ｃ）は、イメージスキャナに対して原稿が４５°傾いた場合の処理の説明図である。
【図１４】直線グループ生成処理の説明図である。
【図１５】（Ａ）及び（Ｂ）は、直線グループの説明図である。
【図１６】直線グループの説明図である。
【図１７】仮直線決定処理の一例の説明図である。
【図１８】採否判定処理の一例の説明図（その１）である。
【図１９】採否判定処理の一例の説明図（その２）である。
【図２０】（Ａ）及び（Ｂ）は最大値点の検出処理を説明するための図である。
【図２１】（Ａ）及び（Ｃ）は画像データ中の明度変化を説明するための図であり、（Ｂ）及び（Ｄ）は、明度の微分値を説明するための図である。
【図２２】（Ａ）は最大値点と仮直線との間の位置ずれ量を説明するための図であり、（Ｂ）は最大値点と仮直線の位置ずれ量の度数分布の説明図である。
【図２３】（Ａ）は仮直線が影画像から離れている状態の模式図であり、（Ｂ）はこのとき算出される度数分布の模式図である。
【図２４】（Ａ）は縦筋ノイズを仮直線として検出した状態の模式図であり、（Ｂ）はこのとき算出される度数分布の模式図である。
【図２５】（Ａ）は比較的小さな角度で仮直線が傾いている状態の模式図であり、（Ｂ）はこのとき算出される度数分布の模式図である。
【図２６】（Ａ）は比較的大きな角度で仮直線が傾いている状態の模式図であり、（Ｂ）はこのとき算出される度数分布の模式図である。
【図２７】画像処理システム１の処理の第２例の説明図である。
【図２８】画像処理制御部１７の構成例の第２例を示す図である。
【図２９】境界線選択処理の一例の説明図（その１）である。
【図３０】境界線選択処理の一例の説明図（その２）である。
【図３１】第２実施例における探索範囲を説明するための図である。
【発明を実施するための形態】
【００１５】
＜１．ハードウエア構成＞
以下、本発明の一側面に係る画像読取装置及び画像処理システムについて図を参照しつつ説明する。図２は、画像処理システムのハードウエア構成図である。但し、本発明の技術的範囲はそれらの実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
【００１６】
画像処理システム１は、画像読取装置１０及びコンピュータ装置３０を備える。画像読取装置１０は、２次元の原稿を読み取って、この原稿に対応する画像信号を生成する。画像読取装置１０は、例えば、複数の光源で露光された２次元原稿を走査して読み取る画像読取装置であってよい。このような、例えば画像読取装置の例として、例えばフィーダスキャナ、フラットベッドスキャナ、ハンディスキャナ等の各種スキャナ装置が挙げられる。画像読取装置１０は画像処理装置の一例である。
【００１７】
コンピュータ装置３０は、有線又は無線の通信回線を介して画像読取装置１０との間で通信が可能であり、この通信回線を経由して画像読取装置１０が読み取った原稿の画像信号を画像読取装置１０から受信する。
【００１８】
画像読取装置１０は、ＣＰＵ（Central Processing Unit: 中央処理ユニット）１１、メモリ１２、イメージセンサ１３、ＡＦＥ（Analog Front-End Processor）１４と、シェーディング処理部１５と、ブロックバッファ１６を備える。また、画像読取装置１０は、画像処理制御部１７と、画像メモリ１８と、調停部１９と、入力部２０と、出力部２１と、インタフェース（Ｉ／Ｆ）２２とバス２３を備える。
【００１９】
ＣＰＵ１１は、メモリ１２に格納されたコンピュータプログラムに従い画像読取装置１０の動作を制御する。ある実施例では、ＣＰＵ１１は、画像読取装置１０が読み取る原稿画像の画像処理を行ってもよい。メモリ１２にはこのような画像処理用のコンピュータプログラムが格納されてもよい。メモリ１２には、ＣＰＵ１１により実行されるコンピュータプログラムや、このコンピュータプログラムの実行の際に使用されるデータが格納される。メモリ１２は、プログラムを記憶するための非揮発性記憶装置や、データを一次的に記憶するための揮発性メモリを含んでいてよい。
【００２０】
イメージセンサ１３は、２次元の原稿を撮像して、原稿に対応する画像信号を出力する。イメージセンサ１３は、例えば、１次元又は２次元に配列されたＣＣＤ（Charge Coupled Device）センサやＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサ等の撮像素子と、この撮像素子に原稿の像を結像する光学系を備える。ＡＦＥ１４は、イメージセンサ１３から出力される画像信号に対して増幅やその他の信号処理を施した後、処理された画像信号をシェーディング処理部１５へ入力する。
【００２１】
シェーディング処理部１５は、ＡＦＥ１４から受信した画像信号を、画像データとしてブロックバッファに収容し、この画像データにシェーディング処理を施した後に、画像処理制御部１７に出力する。画像処理制御部１７は、シェーディング処理が施された後の画像データに所定の画像処理を施し、画像データを画像メモリ１８に格納する。他の実施例においてシェーディング処理部１５は、シェーディング処理が施された後の画像データを画像メモリ１８に格納し、画像処理制御部１７は、画像メモリ１８から画像データを入力してもよい。調停部１９は、画像処理制御部１７が画像処理の際に行うメモリ１２に対するアクセスと、ＣＰＵ１１によるメモリ１２へのアクセスとが競合しないように、これらのアクセスを調停する。
【００２２】
ある実施例では、シェーディング処理部１５、画像処理制御部１７及び調停部１９は、論理回路として画像読取装置１０に実装されてよい。論理回路は、例えば、LSI（large scale integration）やASIC（Application Specific Integrated Circuit）、FPGA（Field-Programming Gate Array）等であってよい。他の実施例では、シェーディング処理部１５、画像処理制御部１７及び調停部１９は、ＣＰＵやＤＳＰ（digital signal processor）等のプロセッサと、このプロセッサが実行するプログラムを格納するメモリを含む電子回路として画像読取装置１０に実装されてよい。
【００２３】
入力部２０は、ユーザによる入力操作を受け付ける入力装置である。入力部２０は、例えば、ボタン、スクロールホイール、キーパッド、キーボード、ポインティングデバイス、タッチパネル等であってよい。出力部２１は、画像読取装置１０から各種情報をユーザに提示するための出力装置である。例えば、出力部２１は、ユーザに提示する情報を利用者に可視的に表示する表示デバイスであってよい。出力部２１は、発光素子や、液晶ディスプレイ、有機エレクトロルミネッセンスディスプレイ等の表示装置であってよい。または、出力部２１は、音声信号を出力するスピーカやその駆動回路であってよい。
【００２４】
Ｉ／Ｆ２２は、画像読取装置１０とコンピュータ装置３０との間の有線及び／又は無線による通信インタフェースである。画像読取装置１０は、読み取った原稿の画像データをＩ／Ｆ２２を介してコンピュータ装置３０へ送信することが可能である。画像読取装置１０は、画像読取装置１０の動作に関する設定情報や指示をＩ／Ｆ２２を介してコンピュータ装置３０から受信する。ある実施例では、画像読取装置１０は、コンピュータ装置３０により処理が施された画像データをＩ／Ｆ２２を介して受信してよい。ＣＰＵ１１、シェーディング処理部１５、画像処理制御部１７、画像メモリ１８、調停部１９、入力部２０、出力部２１及びＩ／Ｆ２２は、バス２３によって電気的に接続されている。
【００２５】
一方、コンピュータ装置３０は、ＣＰＵ３１と、補助記憶装置３２と、メモリ３３と、入力部３４と、出力部３５と、媒体読取部３６と、Ｉ／Ｆ３７とバス３８を備える。ＣＰＵ３１は、補助記憶装置３２に格納されたコンピュータプログラムを実行することにより、コンピュータプログラムに応じた情報処理を実行する。ある実施例では、ＣＰＵ３１は、画像読取装置１０により読み取られた原稿画像の画像処理を行ってもよい。補助記憶装置３２にはこのような画像処理用のコンピュータプログラムが格納されてもよい。補助記憶装置３２は、コンピュータプログラムを記憶するための、不揮発性記憶装置や、読み出し専用メモリ（ROM: Read Only Memory）やハードディスクなどを含んでいてもよい。
【００２６】
メモリ３３には、ＣＰＵ３１が現在実行中のプログラムや、このプログラムによって一時的に使用されるデータが記憶される。メモリ３３は、ランダムアクセスメモリ（RAM: Random Access Memory）を含んでいてよい。入力部３４は、ユーザによる入力操作を受け付ける入力装置である。入力部３４は、例えば、キーパッド、キーボード、ポインティングデバイス、タッチパネル等であってよい。
【００２７】
出力部３５は、コンピュータ装置３０によって処理された信号を出力する出力装置である。例えば、出力部３５は、コンピュータ装置３０によって処理された情報を利用者に可視的に表示する表示デバイスであってよい。出力部３５は、例えば、液晶ディプレイ、ＣＲＴ（Cathode Ray Tube）ディスプレイ、有機エレクトロルミネッセンスディスプレイなどの表示装置であってよい。または、出力部３５は、音声信号を出力するスピーカやその駆動回路であってよい。
【００２８】
媒体読取部３６は、コンピュータに読み取り可能な可搬型記録媒体に記憶されたデータを読み取る入力装置である。媒体読取部３６は、例えばＣＤ−ＲＯＭドライブ装置やＤＶＤ−ＲＯＭドライブ装置、フレキシブルディスクドライブ装置、ＣＤ−Ｒドライブ装置や、ＤＶＤ−Ｒドライブ装置、ＭＯドライブ装置、フラッシュメモリ装置へのアクセス装置であってよい。
【００２９】
Ｉ／Ｆ３７は、画像読取装置１０とコンピュータ装置３０との間の有線及び／又は無線による通信インタフェースである。コンピュータ装置３０は、画像読取装置１０が読み取った原稿の画像データを、Ｉ／Ｆ３７を経由して受信することが可能である。コンピュータ装置３０は、画像読取装置１０の動作に関する設定情報や指示をＩ／Ｆ３７を介して画像読取装置１０へ送信する。ＣＰＵ３１、補助記憶装置３２、メモリ３３、入力部３４、出力部３５、媒体読取部３６及びＩ／Ｆ３７は、バス３８によって電気的に接続されている。
【００３０】
＜２．第１実施例＞
＜２．１．  概要説明＞
図３は、画像処理システム１の処理の第１例の説明図である。ステップＳ１０１において画像処理システム１は、画像データを入力する。図４の（Ａ）は入力される画像データを示す。画像データ５０は、画像読取装置１０により読み取られた原稿に対応する原稿領域５１を含む。ステップＳ１０２において画像処理システム１は、原稿領域の辺のそれぞれについて、各辺での原稿領域とその外側との境界線を構成する画素の候補となる候補画素を検出する。図４の（Ａ）〜図４の（Ｃ）及び図５の（Ａ）及び図５の（Ｂ）において、例として辺５２の境界線５３で検出した候補画素を黒ドットで示す。
【００３１】
ステップＳ１０３において画像処理システム１は、原稿領域の辺のいずれかを選択する。以下のステップＳ１０４〜Ｓ１０６は、原稿領域の辺毎に実行される。
【００３２】
ステップＳ１０４において画像処理システム１は、境界線５３の複数の部位においてそれぞれ検出された候補画素毎に異なるグループに分類することにより、複数の座標グループを生成する。図４の（Ｂ）は、座標グループｃｇ１〜ｃｇ４に分類された候補画素を示す。
【００３３】
ステップＳ１０５において画像処理システム１は、複数の座標グループに属する候補画素の集合により形成される直線グループを決定する。このとき、画像処理システム１は、各座標グループｃｇ１〜ｃｇ４に属する候補画素に基づいて、境界線５３の近似直線をそれぞれ算出する。候補画素の座標から近似直線を算出するために、最小二乗法やハフ変換などの様々な算出法を利用することができる。図４の（Ｃ）において、近似直線ａｌ１〜ａｌ４は、それぞれ各座標グループｃｇ１〜ｃｇ４に属する候補画素に基づいて算出される近似直線である。
【００３４】
次に、画像処理システム１は、近似直線ａｌ１〜ａｌ４のそれぞれについて、各近似直線から所定の距離の範囲にある候補画素の集合を形成し、それぞれの集合を１つの直線グループとして決定する。図５の（Ａ）は、近似直線ａｌ１から所定の距離の範囲にある候補画素の集合により形成される直線グループｌｇ１の説明図である。直線グループｌｇ１には、座標グループｃｇ１、ｃｇ２及びｃｇ４に属する候補画素が含まれる。これら座標グループｃｇ１、ｃｇ２及びｃｇ４に属する候補画素は、近似直線ａｌ１から所定の距離の範囲にある。他の近似直線ａｌ２〜ａｌ４についても同様に直線グループを決定する。
【００３５】
ステップＳ１０６において画像処理システム１は、境界線５３の仮直線を決定する。画像処理システム１は、ステップＳ１０５で生成した直線グループのうち、最も所属する候補画素が多い直線グループを選択する。本例では、最も所属する候補画素が多い直線グループとして、図５の（Ａ）に示す直線グループｌｇ１が選択される。
【００３６】
画像処理システム１は、選択された直線グループに含まれる候補画素に基づいて境界線５３の仮直線を決定する。候補画素の座標から仮直線を決定するために、最小二乗法やハフ変換などの様々な算出法を利用することができる。図５の（Ｂ）に示す例では、画像処理システム１は、座標グループｃｇ１、ｃｇ２及びｃｇ４に属する候補画素に基づいて、境界線５３の仮直線ｔｌを決定する。
【００３７】
ステップＳ１０７において画像処理システム１は、全ての辺において仮直線を決定したか判断する。いずれかの辺において仮直線を決定していない場合（ステップＳ１０７：Ｎ）には、処理はステップＳ１０８へ進む。全ての辺において仮直線を決定した場合（ステップＳ１０７：Ｙ）には、処理はＳ１０９へ進む。ステップＳ１０８において画像処理システム１は、未だ仮直線を決定していない辺を選択し、処理をステップＳ１０４に戻す。
【００３８】
ステップＳ１０９において画像処理システム１は、画像データに現れる原稿の縁の影画像の検出結果に応じて仮直線を境界線として採用するか否かを判断する。図６の（Ａ）〜図６の（Ｃ）は、仮直線と原稿の縁の影画像の説明図である。原稿の縁では、照明光に照明された原稿の影が画像読取装置の原稿裏当てに映るため、画像データには原稿の縁に影画像が生じる。なお、図６の（Ａ）〜図６の（Ｃ）の例示では、簡単のため左辺についてのみ影画像が描かれているが、右辺、上辺及び下辺についても影画像は生じる。
【００３９】
図６の（Ａ）に示すように、仮直線が原稿領域の辺の境界を正しく示す場合には、仮直線ｔｌから所定距離Ｄの範囲内に影画像があり、原稿の縁に沿って発生する影の線の延伸方向と仮直線の方向との差が少ないことが期待できる。しかし、仮直線が原稿領域の辺の境界を正しく示さない場合には、図６の（Ｂ）に示すように仮直線から所定距離Ｄの範囲内に影画像がないことが考えられる。または、図６の（Ｃ）に示すように原稿の縁に沿って発生する影の線の延伸方向と仮直線の方向とが大きく異なることが考えられる。
【００４０】
画像処理システム１は、仮直線から所定距離Ｄの範囲内に影画像があるか否かに応じて、仮直線を境界線として採用できるか否かを判断する。これに加えて又は代えて、画像処理システム１は、原稿の縁に沿って発生する影の線の延伸方向と仮直線の方向との差に応じて、仮直線を境界線として採用できるか否かを判断する。
【００４１】
ステップＳ１１０において画像処理システム１は、影画像の検出位置に応じて仮直線の位置を補正することにより境界線を決定する。ステップＳ１１１において画像処理システム１は、ステップＳ１１０で決定した境界線の位置で、入力した画像データから原稿領域の画像を切り出す。その後に処理が終了する。
【００４２】
＜２．２．  装置構成＞
続いて、画像処理制御部１７の構成について説明する。図７は画像処理制御部１７の構成例の第１例を示す図である。画像処理制御部１７は、画像入力部６０、候補画素検出部６１、候補画素記憶部６２、分類部６３、近似直線算出部６４、仮直線決定部６５、影検出部６６、境界線判定部６７、補正部６８及び画像切出部６９を備える。なお、図７は、以下の説明に関係する機能を中心として示している。このため、画像処理制御部１７は図示の構成要素以外の他の構成要素を含んでいてよい。候補画素記憶部６２に格納される候補画素は、メモリ１２に格納される。
【００４３】
変形例では、画像入力部６０、候補画素検出部６１、候補画素記憶部６２、分類部６３、近似直線算出部６４、仮直線決定部６５、影検出部６６、境界線判定部６７、補正部６８及び画像切出部６９により行われる処理の一部又は全部を、画像処理制御部１７に代わってＣＰＵ１１が実行してもよい。また、これらの処理の一部又は全部が、コンピュータ装置３０のＣＰＵ３１によって実行してもよい。コンピュータ装置３０は、候補画素記憶部６２としてメモリ３３に候補画素を記憶してもよい。
【００４４】
ＣＰＵ３１にこれらの情報処理を実行させるコンピュータプログラムは、機械可読記録媒体に記録されて、媒体読取部３６により読み取られて補助記憶装置３２にインストールされてもよい。また、ＣＰＵ３１にこれらの情報処理を実行させるコンピュータプログラムは、図示しないネットワークインタフェースを介してネットワークからダウンロードされ、補助記憶装置３２にインストールされてもよい。
【００４５】
画像入力部６０は、画像データ５０を入力する。候補画素検出部６１は、原稿領域の辺のそれぞれについて候補画素を検出する。候補画素検出部６１は、検出した画素を候補画素記憶部６２に格納する。分類部６３は、候補画素を異なる複数の座標グループに分類する。
【００４６】
近似直線算出部６４は、各座標グループに属する候補画素に基づいて、境界線５３の近似直線をそれぞれ算出する。仮直線決定部６５は、近似直線のそれぞれについて直線グループを生成する。仮直線決定部６５は、原稿領域の辺毎に、生成した直線グループのうち最も所属する候補画素が多い直線グループを選択して、選択した直線グループに基づいて仮直線を決定する。
【００４７】
影検出部６６は、仮直線から所定距離Ｄの範囲内において原稿の縁の影画像を探索する。このため、影検出部６６は、最大値点検出部８０と、分布算出部８１と、判定部８２を備える。最大値点検出部８０、分布算出部８１、及び判定部８２の各々の処理については後述する。
【００４８】
境界線判定部６７は、原稿領域の辺毎に、仮直線から所定距離Ｄの範囲内に原稿の縁の影画像があるか否かに応じて、仮直線を境界線として採用するか否かを判断する。補正部６８は、境界線として採用された仮直線の位置を影画像の検出位置に応じて補正することにより境界線を決定する。画像切出部６９は、補正部６８が決定した境界線の位置で、入力した画像データから原稿領域の画像を切り出す。画像切出部６９により切り出された画像は、コンピュータ装置３０に出力される。
【００４９】
＜２．３．  画像処理＞
＜２．３．１．  座標グループ生成処理＞
続いて、画像処理制御部１７の各構成要素により実行される処理について説明する。なお、以下の説明では、原稿領域の左辺の境界線を決定する場合の処理を例として説明するが、右辺についても同様に境界線を決定することができる。また、座標グループを生成する際に候補画素を走査する方向を９０°変えることによって、上辺及び下辺の境界線についても同様に決定することができる。
【００５０】
分類部６３は、候補画素検出部６１により検出された候補画素を異なる複数のグループに分類することによって座標グループを生成する。図８は、候補画素検出部６１により検出された候補画素の説明図である。候補画素検出部６１は、検出ラインＬ１〜Ｌ６、…においてそれぞれ境界線１１０の候補画素Ｐ１〜Ｐ６、…を検出する。検出ラインＬ１〜Ｌ６、…は、画像データの上から下へ向かう方向である走査方向ＳＤに並べて、所定画素数ｄｙ毎に配列される。
【００５１】
なお、以下の説明において画像データの上から下に向かう方向をＹ軸方向と表記し、左から右に向かう方向をＸ軸方向と表記することがある。またＸ軸方向及びＹ軸方向における各点の座標を、それぞれＸ座標及びＹ座標と表記することがある。
【００５２】
分類部６３は、処理対象として注目する候補画素（以下「注目候補画素」と表記する）を、走査方向ＳＤの方向に向かって、連続する候補画素Ｐ１、Ｐ２、…、Ｐ（ｉ−１）、Ｐｉ、Ｐ（ｉ＋１）、…に順次変化させる。すなわち分類部６３は、走査方向ＳＤの方向に向かって注目候補画素を走査する。分類部６３は、注目候補画素を順次変化させながら、一つ上の検出ラインの候補画素と同じ座標グループに注目候補画素を入れるか否かを判断する。
【００５３】
図９は、座標グループ生成処理の一例の説明図である。図９の座標グループ生成処理は、図３の座標グループ生成処理Ｓ１０４に相当する。ステップＳ２０１において分類部６３は、処理を開始する最初の注目候補画素を選択する。例えば分類部６３は、上から２番目以下の候補画素を最初の注目候補画素を選択してよい。これは、後述のステップＳ２０５及びＳ２０６において、注目候補画素と一つ上の検出ラインで検出された候補画素との相対位置関係を判断するためである。
【００５４】
ステップＳ２０２において分類部６３は、第１個目の座標グループｃｇ１を生成する。ステップＳ２０３において分類部６３は、注目候補画素の検出ラインを示す変数「ｉ」にステップＳ２０１で選択した注目候補画素の検出ラインを代入する。分類部６３は、現在形成中の座標グループｃｇｊを参照するインデックス「ｊ」に「１」を代入する。
【００５５】
ステップＳ２０４において分類部６３は、第（ｉ−１）番目の検出ラインの候補画素Ｐ（ｉ−１）から注目候補画素Ｐｉへ向かう方向の傾きθを決定する。図１０の（Ａ）を参照して候補画素Ｐ（ｉ−１）から候補画素Ｐｉへ向かう方向の傾きθを説明する。図１０の（Ａ）及び図１０の（Ｂ）において一点鎖線は検出ラインを示す。
【００５６】
傾きθは、候補画素Ｐ（ｉ−１）と候補画素Ｐｉとを結ぶ直線Ｌと走査方向ＳＤとのなす角として定められる。ここで原稿は、画像読取装置１０のイメージセンサ１３に対して、最大４５°傾いた状態で読み取られることが想定される。このため、１本の境界線上にある候補画素間を結ぶ直線は、最大で４５°傾くことが予定される。もし、候補画素間を結ぶ直線の傾きが４５°以上傾いている場合には、これらの候補画素は１本の境界線上にないと判断できる。
【００５７】
このため、ステップＳ２０５において分類部６３は、傾きθが４５°よりも大きいか否かを判断する。傾きθが４５°以下である場合には、図１０の（Ａ）に示すように、注目候補画素Ｐｉを、１つ上の検出ライン上の候補画素Ｐ（ｉ−１）と同じ座標グループｃｇに含める。一方で、図１０の（Ｂ）に示すように傾きθが４５°を超える場合には、注目候補画素Ｐｉを、１つ上の検出ライン上の候補画素Ｐ（ｉ−１）と同じ座標グループｃｇ１に含めない。なお、検出ライン間のＹ軸方向の間隔は一定値ｄｙであるため、分類部６３は、候補画素間のＸ座標の大きさがｄｙを超えるか否かによって、傾きθが４５°を超えるか否かを判断してもよい。
【００５８】
図９を参照する。傾きθが４５°よりも大きい場合（ステップＳ２０５：Ｙ）には、処理はオペレーションＳ２０６へ進む。傾きθが４５°以下の場合（ステップＳ２０５：Ｎ）には、処理はオペレーションＳ２０９へ進む。ステップＳ２０６において分類部６３は、現在形成中の座標グループｃｇｊが空であるか否かを判断する。ｃｇｊが空の場合（ステップＳ２０６：Ｙ）には、分類部６３は新たな座標グループを生成せずに、処理はステップＳ２１５へ進む。ｃｇｊが空でない場合（ステップＳ２０６：Ｎ）には、分類部６３は、ステップＳ２０７でインデックスｊを１つ増加させ、ステップＳ２０８で新たな座標グループｃｇｊを生成する。その後、処理はステップＳ２１５へ進む。
【００５９】
なお、本実施例では、ステップＳ２０８で生成した新たな座標グループｃｇｊに、注目候補画素Ｐｉを含めない。このため図１０の（Ｂ）に示すように、傾きθが４５°よりも大きい場合には、注目候補画素Ｐｉは新たな座標グループｃｇ２にも、候補画素Ｐ（ｉ−１）が属する座標グループｃｇ１にも属さない。変形例では、分類部６３は、ステップＳ２０８で生成した新たな座標グループｃｇｊに注目候補画素Ｐｉを含めてもよい。
【００６０】
隣接する候補画素間を結ぶ直線の傾きθが４５°を超える場合として、例えば以下の２つの場合が想定される。
【００６１】
（１）ノイズにより候補画素を誤検出した場合である。この場合、誤検出した候補画素の位置は本来の境界線から離れた位置で検出される。図１１の（Ａ）に示す例では、候補画素Ｐ１〜Ｐ６のうち、候補画素Ｐ４が本来の境界線ＢＬから離れた位置で検出される。
【００６２】
このような誤検出が生じやすい場合の例として、原稿領域と画像データの背景領域の明度差が小さい場合がある。図１１の（Ｂ）は、原稿領域と背景領域の明度差が小さい画像データの模式図である。画像データ１００は、原稿領域１０１と背景領域１０２を含み、原稿領域１０１と背景領域１０２の明度差が比較的小さい。このような場合には原稿領域１００１と背景領域１０２との境界における明度変化と、原稿領域１０１内における明度変化の違いを峻別しにくくなる。このため、例えば図１１の（Ｂ）に示すように、参照符号１０３で示す部分では正常に境界線の位置で候補画素が検出される一方で、参照符号１０４で示す部分では境界線から離れた位置で候補画素が誤検出されることが生じることがある。
【００６３】
境界線の近似直線を算出する際に、誤検出した候補画素を使用すると、近似直線の傾きに誤差が生じる原因となる。分類部６３が、誤検出された候補画素を他の候補画素と同じ座標グループに含めないことで、座標グループに属する候補画素に基づいて算出される近似直線の傾きに、誤検出した候補画素による誤差が生じることを防止する。
【００６４】
（２）辺にタブが存在し、タブ部分で候補画素の一方が検出され、タブでない部分で候補画素の他方が検出された場合である。この場合、これらの候補画素は同一直線の境界線上に存在しない。図１１の（Ｃ）は、タブ部分及びタブでない部分で検出される候補画素の模式図である。候補画素Ｐ１〜Ｐ３はタブでない部分の境界線ＢＬ１上で検出される一方で、候補画素Ｐ４〜Ｐ６はタブ部分の境界線ＢＬ２上で検出される。
【００６５】
候補画素Ｐ１〜Ｐ６はそもそも同一直線上で検出された点でないため、これらの候補画素に基づいて境界線の近似直線を算出すると、近似直線の傾きに誤差が生じる原因となる。分類部６３が、タブ部分で検出された候補画素とタブ部分以外の候補画素とを同じ座標グループに含めないことで、これらの候補画素を混ぜて近似直線を算出した場合に生じる傾きの誤差を防止する。
【００６６】
図９を参照する。ステップＳ２０９において分類部６３は、注目候補画素Ｐｉが境界線の変曲点であるか否かを判断する。すなわち分類部６３は、注目候補画素Ｐｉの前後において境界線が曲折するか否かを判断する。
【００６７】
上述の通り、画像読取装置１０のイメージセンサ１３に対して、原稿が最大４５°傾いた状態で読み取られる場合がある。原稿が最大４５°傾いた状態で読み取られた場合の候補画素の状態を図１２の（Ａ）に示す。点Ｐ１は、原稿のいずれかの辺の境界ＢＬ１上で検出された候補画素である。点Ｐ３は、原稿の他の辺の境界ＢＬ２上で検出された候補画素である。候補画素Ｐ２は、境界ＢＬ１及びＢＬ２が交わるコーナーで検出された候補画素である。
【００６８】
候補画素Ｐ１からＰ２に向かう直線の傾きは４５°である。このため、注目候補画素がＰ２である場合のステップＳ２０５の判断は「いいえ（Ｎ）」となり、分類部６３は、候補画素Ｐ１とＰ２を異なる座標グループに分離しない。また、候補画素Ｐ２からＰ３に向かう直線の傾きも４５°であるため、注目候補画素がＰ３である場合のステップＳ２０５の判断では、分類部６３は、候補画素Ｐ２及びＰ３と異なる座標グループに分類しない。したがって、ステップＳ２０５の判断では、候補画素Ｐ１とＰ３は異なる座標グループに分類されない。
【００６９】
候補画素Ｐ１及びＰ３は同一直線上で検出された点でないため、これらの候補画素に基づいて境界線の近似直線を算出すると、近似直線の傾きに誤差が生じる原因となる。したがって分類部６３は、注目候補画素Ｐｉが境界線の変曲点であるか否かを判断し、変曲点の前後で座標グループを分割する。
【００７０】
図１２の（Ｂ）は、変曲点の検出方法の一例の説明図である。点Ｐｉ、Ｐ（ｉ−１）及びＰ（ｉ＋１）は、それぞれ注目候補画素、注目候補画素よりも１つ上の検出ラインの候補画素、及び注目候補画素よりも１つ下の検出ラインの候補画素である。注目候補画素Ｐｉの座標を（ｘｉ，ｙｉ）とし、候補画素Ｐ（ｉ−１）の座標を（ｘ（ｉ−１），ｙ（ｉ−１））とし、注目候補画素Ｐ（ｉ＋１）の座標を（ｘ（ｉ＋１），ｙ（ｉ＋１））とする。
【００７１】
分類部６３は、次式（１）により、候補画素の軌跡の２回微分値Ａを算出する。
Ａ＝（ｄｘ２／ｄｙ２）−（ｄｘ１／ｄｙ１）                  …（１）
ｄｘ１＝ｘｉ−ｘ（ｉ−１），  ｄｙ１＝ｙｉ−ｙ（ｉ−１）
ｄｘ２＝ｘ（ｉ＋１）−ｘｉ，  ｄｙ２＝ｙ（ｉ＋１）−ｙｉ
【００７２】
注目候補画素が変曲点でない場合、境界線の傾きｄｘ１／ｄｙ１、ｄｘ２／ｄｙ２は一定であるから２回微分値Ａの絶対値｜Ａ｜は比較的小さく、注目候補画素が変曲点の場合には絶対値｜Ａ｜が比較的大きくなる。分類部６３は、絶対値｜Ａ｜が所定閾値Ｔｈ１よりも大きいか否かを判断することによって注目候補画素が変曲点であるか否かを判断する。
【００７３】
ここで式（１）の右辺第１項（ｄｘ２／ｄｙ２）は、注目候補画素Ｐｉと候補画素Ｐ（ｉ＋１）とを結ぶ直線の傾き、すなわち直線の方向に相当する。右辺第２項（ｄｘ１／ｄｙ１）は、候補画素Ｐ（ｉ−１）と注目候補画素Ｐｉとを結ぶ直線の方向に相当する。したがって２回微分値Ａの絶対値｜Ａ｜は、候補画素Ｐ（ｉ−１）及びＰｉを結ぶ直線の方向と候補画素Ｐｉ及びＰ（ｉ＋１）を結ぶ直線の方向との間の変化量に相当する。また、所定閾値Ｔｈ１は第２閾値の一例である。
【００７４】
図９及び図１３の（Ａ）〜図１３の（Ｃ）を参照し、変曲点の前後で座標グループを分割する処理を説明する。注目候補画素Ｐｉが変曲点でない場合（ステップＳ２０９：Ｎ）には、処理はステップＳ２１０へ進む。ステップＳ２１０において分類部６３は、現在形成中の座標グループｃｇ１に注目候補画素Ｐｉを追加する。その後、処理はステップＳ２１５へ進む。
【００７５】
変曲点が検出される前の状態を図１３の（Ａ）に示す。点Ｐ１〜Ｐ４は、原稿のコーナー部で検出された候補画素である。候補画素の座標Ｐ１〜Ｐ４は、それぞれ（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）及び（ｘ４，ｙ４）である。いま、注目候補画素Ｐｉは候補画素Ｐ２であり、１つ上の検出ラインの候補画素Ｐ１は、座標グループｃｇｍに所属する。注目候補画素Ｐ２は変曲点でないため、次式にて算出される２回微分の絶対値｜Ａ｜が比較的小さく、変曲点の検出閾値Ｔｈ１を超えない。
｜Ａ｜＝｜（ｘ３−ｘ２）／（ｙ３−ｙ２）−（ｘ２−ｘ１）／（ｙ２−ｙ１）｜
【００７６】
その結果、処理はステップＳ２１０へ進む。ステップＳ２１０において注目候補画素Ｐ２は、座標グループｃｇｍに加えられる。
【００７７】
その後、注目候補画素Ｐｉは候補画素Ｐ２からＰ３に変わる。図１３の（Ｂ）は、注目候補画素Ｐｉが候補画素Ｐ３である場合における２回微分の説明図である。注目候補画素Ｐ３は変曲点であるため、次式にて算出される２回微分の絶対値｜Ａ｜が比較的大きくなり、変曲点の検出閾値Ｔｈ１を超える。
｜Ａ｜＝｜（ｘ４−ｘ３）／（ｙ４−ｙ３）−（ｘ３−ｘ２）／（ｙ３−ｙ２）｜
【００７８】
図９において、注目候補画素Ｐｉが変曲点である場合（ステップＳ２０９：Ｙ）には、処理はステップＳ２１１に進む。ステップＳ２１１において分類部６３は、現在形成中の座標グループｃｇｊが空であるか否かを判断する。ｃｇｊが空の場合（ステップＳ２１１：Ｙ）には、分類部６３は新たな座標グループを生成せずに、処理はステップＳ２１４へ進む。ｃｇｊが空でない場合（ステップＳ２１１：Ｎ）には、分類部６３は、ステップＳ２１２でインデックスｊを１つ増加させ、ステップＳ２１３で新たな座標グループｃｇｊを生成する。ステップＳ２１４において分類部６３は、変曲点の前後の座標グループｃｇ（ｊ−１）及びｃｇｊの両方に変曲点の候補画素Ｐｉを追加する。その後、処理はステップＳ２１５へ進む。
【００７９】
図１３の（Ｃ）は、変曲点Ｐ３が検出された結果、座標グループｃｇｍに加えて新たな座標グループが生成された状態を示す。座標グループｃｇｍ及びｃｇｍ＋１の両方に、変曲点の候補画素Ｐ３が加えられている。
【００８０】
図９を参照する。ステップＳ２１５において分類部６３は、注目候補画素Ｐｉの検出ラインが最後の検出ラインであるか否かを判定する。注目候補画素Ｐｉの検出ラインが最後の検出ラインである場合（ステップＳ２１５：Ｙ）には、座標グループ生成処理が終了する。注目候補画素Ｐｉの検出ラインが最後の検出ラインでない場合（ステップＳ２１５：Ｎ）には、処理はステップＳ２１６へ進む。ステップＳ２１６において分類部６３は、注目候補画素Ｐｉを次の検出ラインの候補画素に進めて処理をステップＳ２０４に戻す。
【００８１】
＜２．３．２．  直線グループ生成処理＞
図１４は、直線グループ生成処理の説明図である。図１４の直線グループ生成処理は、図３の直線グループ生成処理Ｓ１０５に相当する。ステップＳ３０１において近似直線算出部６４は、処理対象として注目する座標グループｃｇｊを参照するインデックス「ｊ」に「１」を代入する。以下、画素グループｃｇｊを「注目座標グループｃｇｊ」と表記することがある。ステップＳ３０２において近似直線算出部６４は、注目座標グループｃｇｊに属する候補画素に基づいて、境界線５３の近似直線ａｌｊを算出する。ステップＳ３０３において仮直線決定部６５は、注目座標グループｃｇｊに属する候補画素を含む直線グループｌｇｊを生成する。
【００８２】
ステップＳ３０４において仮直線決定部６５は、座標グループを参照するインデックス「ｋ」に「１」を代入する。ステップＳ３０５において仮直線決定部６５は、座標グループｃｇｋが注目座標グループｃｇｊと等しいか否かを判断する。座標グループｃｇｋが注目座標グループｃｇｊと異なる場合（ステップＳ３０５：Ｙ）には、処理はステップＳ３０６へ進む。座標グループｃｇｋが注目座標グループｃｇｊと同じ場合（ステップＳ３０５：Ｎ）には、ステップＳ３０６〜Ｓ３０８がスキップされて、処理はステップＳ３０９へ進む。
【００８３】
ステップＳ３０６において仮直線決定部６５は、近似直線ａｌｊと座標グループｃｇｋとの間の距離ｄを判定する。距離ｄの算出には様々な算出方法を使用することができる。図１５の（Ａ）は、近似直線ａｌｊと座標グループｃｇｋの距離ｄの算出方法の例示の説明図である。仮直線決定部６５は、座標グループｃｇｋの両端の端点と近似直線ａｌｊとのそれぞれの距離ｄ１及びｄ２の平均を、距離ｄとして算出してよい。仮直線決定部６５は、距離ｄ１及びｄ２のうちいずれか長い方又は短い方を距離ｄとして算出してもよい。仮直線決定部６５は、座標グループｃｇｋに含まれるいずれかの候補画素と近似直線ａｌｊとの距離を、距離ｄとして算出してよい。
【００８４】
図１５の（Ｂ）は、近似直線ａｌｊと座標グループｃｇｋの距離ｄの算出方法の例示の他の説明図である。仮直線決定部６５は、座標グループｃｇｋに基づいて算出される近似直線ａｌｋと近似直線ａｌｊとの間の距離を、距離ｄとして算出してもよい。
【００８５】
ステップＳ３０７において仮直線決定部６５は、距離ｄが所定の閾値Ｔｈ２以下であるか否かを判断する。距離ｄが閾値Ｔｈ２以下である場合（ステップＳ３０７：Ｙ）には、処理はステップＳ３０８へ進む。距離ｄが閾値Ｔｈ２を超える場合（ステップＳ３０７：Ｎ）には、ステップＳ３０８がスキップされて、処理はステップＳ３０９へ進む。ステップＳ３０８において仮直線決定部６５は、座標グループｃｇｋの候補画素を、直線グループｌｇｊに追加する。
【００８６】
ステップＳ３０９において仮直線決定部６５は、インデックスｋの値を１つ増加する。ステップＳ３１０において仮直線決定部６５は、インデックスｋの値が、座標グループの総数ＣＧＮを超えるか否かを判断する。ｋの値がＣＧＮを超える場合（ステップＳ３１０：Ｙ）には、処理はステップＳ３１１へ進む。ｋの値がＣＧＮを超えない場合（ステップＳ３１０：Ｎ）には、処理はステップＳ３０５へ戻る。
【００８７】
ステップＳ３１１において仮直線決定部６５は、注目座標グループｃｇｊのインデックスｊの値を１つ増加する。ステップＳ３１２において仮直線決定部６５は、インデックスｊの値が、座標グループの総数ＣＧＮを超えるか否かを判断する。ｊの値がＣＧＮを超える場合（ステップＳ３１２：Ｙ）には直線グループ生成処理が終了する。ｊの値がＣＧＮを超えない場合（ステップＳ３１２：Ｎ）には、処理はステップＳ３０２へ戻る。
【００８８】
上記のステップＳ３０１〜Ｓ３１２により形成される直線グループｌｇｊについて説明する。図１６は、直線グループの説明図である。図１６において点線１２０は原稿領域を示し、黒ドットは候補画素を示す。図１６の例において、複数の座標グループｃｇ１〜ｃｇ４が形成され、近似直線ａｌは座標グループｃｇ１に基づいて算出された原稿領域の境界線の近似直線である。また、直線グループｌｇは、近似直線ａｌｊから所定の距離の範囲にある座標グループｃｇ１、ｃｇ２及びｃｇ４の候補画素の集合である。
【００８９】
直線グループｌｇは、１つの座標グループｃｇ１に属する候補画素だけでなく、この候補画素に基づき算出された境界線の近似直線ａｌから所定の距離の範囲にある他の座標グループｃｇ２及びｃｇ４の候補画素も含む。したがって、仮直線決定部６５は、同一直線上に位置する境界線を検出した候補画素でありながら異なる座標グループに分類された候補画素同士を１つの集合として識別する。
【００９０】
＜２．３．３．  仮直線決定処理＞
図１７は、仮直線決定処理の一例の説明図である。図１７の仮直線決定処理は、図３の仮直線決定処理Ｓ１０６に相当する。ステップＳ４０１において仮直線決定部６５は、生成された直線グループの中からいずれかの直線グループを選択する。ステップＳ４０２において仮直線決定部６５は、ステップＳ４０１で選択した直線グループに含まれる候補画素に基づいて、原稿領域の境界線の仮直線を算出する。
【００９１】
後述の通り、仮直線決定部６５により決定された仮直線を境界線判定部６７が原稿領域の辺の境界線として採用しない場合には、仮直線決定部６５は仮直線決定処理を再実行して他の仮直線決定部６５を決定する。ステップＳ４０１において仮直線決定部６５は、それまでに仮直線決定処理の仮直線算出に使用された直線グループ以外の直線グループのうち、最も多い候補画素を含む直線グループを選択する。
【００９２】
＜２．３．４．  採否判定処理＞
図１８及び図１９は、採否判定処理の一例の説明図である。図１８及び図１９の採否判定処理は、図３の採否判定処理Ｓ１０９に相当する。ステップＳ５０１において影検出部６６は、原稿領域の辺のいずれかを選択する。以下のステップＳ５０２〜Ｓ５０５及びＳ５０８〜５２２は、原稿領域の辺毎に実行される。
【００９３】
ステップＳ５０２において最大値点検出部８０は、仮直線上の複数の座標毎に、各座標から原稿領域の内側に向かう第１方向に沿う画素の明度の微分の絶対値が最大となる点を、各座標から所定距離の範囲において検出する。以下の説明及び添付図面においてこの点を「最大値点」と表記することがある。
【００９４】
図２０の（Ａ）及び図２０の（Ｂ）は最大値点の検出処理を説明するための図である。仮直線が原稿領域の左辺及び右辺の仮直線である場合、第１方向及びこれに直交する第２方向の一例は、それぞれＸ軸方向及びＹ軸方向である。仮直線が原稿領域の上辺及び下辺の仮直線である場合、第１方向及び第２方向の一例は、それぞれＹ軸方向及びＸ軸方向である。
【００９５】
最大値点検出部８０は、最大値点を探す第２方向の画素範囲を決定する。以下の説明及び添付図面において最大値点を探す第２方向の画素範囲を「探索範囲」と表記することがある。例えば、最大値点検出部８０は、仮直線決定部６５が原稿領域の四辺についてそれぞれ決定した仮直線の交点に挟まれた範囲を探索範囲として決定してよい。図２０の（Ａ）の例では、左辺の仮直線ｔｌｌについて最大値点を探す探索範囲は、仮直線ｔｌｌと上辺の仮直線ｔｌｕとの交点ｐ１と、仮直線ｔｌｌと下辺の仮直線ｔｌｂとの交点ｐ２との間に挟まれた範囲である。
【００９６】
最大値点検出部８０は、探索範囲内の複数の第２方向の座標毎に最大値点を探索する。図２０の（Ｂ）の例では、最大値点検出部８０は、第２方向の座標ｃ１、ｃ２…ｃｎについて最大値点が検出される。範囲Ｒは、最大値点を探す第１方向の画素範囲である。以下の説明及び添付図面において最大値点を探す第１方向の画素範囲を「注目範囲」と表記することがある。
【００９７】
注目範囲は、仮直線ｔｌｌよりも外側の範囲を含んでもよい。例えば、ある実施例では、仮直線ｔｌｌよりも画素１個分外側にずれた座標から、内側に画素６２個分ずれた座標までの６４画素の範囲である。最大値点検出部８０は、探索範囲内の複数の座標ｃ１、ｃ２…ｃｎ毎に、注目範囲内における第１方向に沿った画素の明度の微分値を算出する。
【００９８】
例えば、最大値点検出部８０は、第１方向に沿った隣接画素同士の明度の差分を微分値として算出してよい。最大値点検出部８０は、第２方向に沿って並ぶ複数画素の明度を平均化し、平均化された明度の微分値を算出してもよい。
【００９９】
図２１の（Ａ）は、画像データ中の画素の第１方向における明度変化を示す。図２１の（Ａ）は、地色が明るい原稿を撮像した画像データの例であり、原稿領域の明度は背景領域の明度よりも高い。原稿領域の縁では、縁で生じる影により背景領域の本来の明度よりも明度が低くなり原稿領域と影との間で急な明度変化が生じる。その後、原稿領域から離れるにつれて漸次高くなる。
【０１００】
図２１の（Ｂ）は、図２１の（Ａ）の明度の微分の絶対値を示す。原稿領域の縁における明度変化により原稿の縁で微分の絶対値が大きくなるが、原稿領域内は地色が一定であるため微分の絶対値は縁での値よりも小さい。また、背景領域では影による明度変化があるが変化が緩やかであるため微分の絶対値は縁での値よりも小さくなる。したがって、原稿の縁の位置は、微分の絶対値が最大値となる最大値点となる。
【０１０１】
図２１の（Ｃ）は、地色が暗い原稿を撮像した画像データにおける画素の第１方向における明度変化を示す。原稿領域の明度は背景領域の明度よりも低い。原稿領域の縁では、図２１の（Ａ）の例と同様に、縁で生じる影により背景領域の本来の明度よりも明度が低くなり原稿領域と影との間で急な明度変化が生じる。その後、原稿領域から離れるにつれて漸次高くなる。
【０１０２】
図２１の（Ｄ）は、図２１の（Ｂ）の明度の微分の絶対値を示す。原稿領域の縁における明度変化により原稿の縁で微分の絶対値が大きくなり、原稿領域内及び背景領域では微分の絶対値は縁での値よりも小さくなる。したがって、原稿の縁の位置は、微分の絶対値が最大値となる最大値点となる。
【０１０３】
図１８を参照する。ステップＳ５０３において分布算出部８１は、各座標ｃ１、ｃ２…ｃｎで検出した最大値点と仮直線との間の位置ずれ量の度数分布を算出する。図２２の（Ａ）は、最大値点と仮直線との間の位置ずれ量を説明するための図である。点ｐｔ１、ｐｔ２…ｐｔｎは、第２方向の座標がそれぞれ座標ｃ１、ｃ２…ｃｎである仮直線ｔｌ上の点である。
【０１０４】
最大値点ｐｍ１、ｐｍ２…ｐｍｎと仮直線ｔｌとの間の位置ずれ量Ｄ１、Ｄ２…Ｄｎは、座標ｃ１、ｃ２…ｃｎの最大値点ｐｍ１、ｐｍ２…ｐｍｎの第１方向の座標と、点ｐｔ１、ｐｔ２…ｐｔｎの第１方向の座標との間の差である。
【０１０５】
図２２の（Ｂ）は、最大値点と仮直線との間の位置ずれ量Ｄ１、Ｄ２…Ｄｎの度数分布を説明するための図である。注目範囲に影画像があると最大値点は原稿の縁で検出されるため、仮直線の方向と原稿の縁の方向とが同じならば、位置ずれ量Ｄ１、Ｄ２…Ｄｎは互いにほぼ等しくなる。しかし、影画像の明度のムラにより最大値点の検出位置のバラツキが生じ、位置ずれ量Ｄ１、Ｄ２…Ｄｎがある程度分散する。このため、注目範囲に影画像がある場合の位置ずれ量Ｄ１、Ｄ２…Ｄｎの度数分布には、ある範囲の幅Ｗを持つピークが現れる。
【０１０６】
一方で、注目範囲に影画像がない場合にはピークが現れないか、ピークの幅Ｗが予定の範囲から逸脱する。図２３の（Ａ）は仮直線ｔｌが影画像から離れている状態の模式図であり、図２３の（Ｂ）はこのとき算出される度数分布の模式図である。仮直線が影画像から離れて影画像が注目範囲に入らないと、原稿の縁で発生する明度変化で最大値点を検出しないため、座標ｃ１、ｃ２…ｃｎの間で最大値点がばらつくことになる。このため、度数分布にピークが現れない。
【０１０７】
図２４の（Ａ）は縦筋ノイズを仮直線ｔｌとして検出した状態の模式図であり、図２４の（Ｂ）はこのとき算出される度数分布の模式図である。縦筋ノイズが仮直線ｔｌとして検出された場合は、縦筋ノイズ自身と隣接画素との間の明度変化で最大値点が検出される。このため、最大値点と仮直線との間の位置ずれ量が常に非常に小さくなるため、度数分布にピークが現れる。しかし、縦筋ノイズの発生位置のＸ軸方向（第１方向）の座標は変動せず、また影画像のような幅や明度ムラがないため、注目範囲に影画像がある場合と比べてピークの幅が狭くなる。
【０１０８】
図２５の（Ａ）は、比較的小さな角度で仮直線ｔｌが傾いている状態の模式図であり、図２５の（Ｂ）はこのとき算出される度数分布の模式図である。仮直線ｔｌが原稿の縁に対して傾いていると、最大値点が検出される原稿の縁と仮直線ｔｌとの距離が変動するので、位置ずれ量Ｄ１、Ｄ２…Ｄｎのバラツキが増加する。この結果、度数分布に現れるピークの幅Ｗが広がる。しかし傾きがある程度小さければ、ピークの幅Ｗの広がりは抑えられる。
【０１０９】
図２６の（Ａ）は、比較的大きな角度で仮直線ｔｌが傾いている状態の模式図であり、図２６の（Ｂ）はこのとき算出される度数分布の模式図である。仮直線ｔｌの傾きが過度に大きい場合には、仮直線ｔｌの傾きと原稿の縁と距離の変化量が大きくなるため、位置ずれ量Ｄ１、Ｄ２…Ｄｎは広範囲に分散する。このため、度数分布にピークが現れなくなる。
【０１１０】
判定部８２は、注目範囲に影画像があるか否かをピークの幅Ｗに基づいて判断する。例えば判定部８２は、所定の閾値Ｔｈｆよりも頻度が大きい範囲をピークの幅Ｗとし、この幅Ｗが所定の数値範囲内のときに注目範囲に影画像があると判断する。なお、この結果、注目範囲に影画像があっても、仮直線ｔｌの傾きが過度に大きい場合には注目範囲に影画像があると判断されない。
【０１１１】
例えば、ある実施例において、閾値Ｔｈｆが全体の全度数の３％であり、判定部８２は幅Ｗが２画素から６画素であるときに注目範囲に影画像があると判断する。
【０１１２】
他の実施例では、判定部８２は、ピークの幅Ｗと高さＨに基づいて注目範囲に影画像があるか否かを判断する。例えば判定部８２は、高さＨの所定割合ｒの頻度よりも頻度が大きい範囲をピークの幅Ｗとしてよい。例えば判定部８２は、高さＨの３０％となる頻度の範囲をピークの幅Ｗとしてよい。また判定部８２は、所定割合ｒを高さＨに応じて変動させてもよい。例えば判定部８２は、高さＨが全体度数の７割を超える場合に、高さＨの３０％となる頻度の範囲をピークの幅Ｗとしてよい。高さＨが全体度数の７割以下の場合に、高さＨの３５０％となる頻度の範囲をピークの幅Ｗとしてよい。
【０１１３】
判定部８２は、ピークの頂点が生じる位置ずれ量Ｄを、影画像の検出位置として決定する。影画像の検出位置は、補正部６８による仮直線の位置の補正に使用される。なお、図２５の（Ａ）、図２５の（Ｂ）、図２６の（Ａ）及び図２６の（Ｂ）を参照して説明したとおり仮直線ｔｌの傾きに応じてピークの幅Ｗが変化する。このため変形例では、補正部６８は、ピークの幅Ｗに応じて仮直線の傾きを補正してもよい。
【０１１４】
図１８を参照する。ステップＳ５０４において境界線判定部６７は、判定部８２が注目範囲に影画像があると判断したか否かに応じて、仮直線を辺の境界線として採用できるか否かを判断する。判定部８２は、仮直線ｔｌの傾きが過度に大きい場合も注目範囲に影画像がないと判断するため、この場合も境界線判定部６７は、仮直線を採用できないと判断する。境界線として採用できる場合（ステップＳ５０４：Ｙ）に処理はステップＳ５０５に進む。仮直線を境界線として採用できない場合（ステップＳ５０４：Ｎ）に処理はステップＳ５０８に進む。ステップＳ５０５において境界線判定部６７は、仮直線を境界線として採用する。
【０１１５】
ステップＳ５０６において影検出部６６は、全ての辺において境界線を決定したか判断する。いずれかの辺において境界線を決定していない場合（ステップＳ５０６：Ｎ）には、処理はステップＳ５０７へ進む。全ての辺において仮直線を決定した場合（ステップＳ５０６：Ｙ）に採否判定処理が終了する。ステップＳ５０７において影検出部６６は、未だ境界線を決定していない辺を選択し、処理をステップＳ５０２に戻す。
【０１１６】
仮直線を境界線として採用できない場合には、図１７の仮直線決定処理を再度実行することにより仮直線を決定し直す。ステップＳ５０８において仮直線決定部６５は、仮直線算出に使用されていない直線グループ、すなわちステップＳ４０１でまだ選択されていない直線グループが残っているか否かを判断する。直線グループが残っている場合（ステップＳ５０８：Ｙ）に処理はステップＳ５０９へ進む。直線グループが残っていない場合（ステップＳ５０８：Ｎ）に処理はステップＳ５１１へ進む。
【０１１７】
ステップＳ５０９において仮直線決定部６５は、仮直線算出に使用した直線グループを破棄する。ステップＳ５１０において仮直線決定部６５は、仮直線決定処理を再度実行し仮直線を決定し直す。その後に処理はステップＳ５０２に戻り、決定し直した仮直線が境界線として採用できるか否かが判定される。
【０１１８】
仮直線決定部６５が直線グループを選択し尽くしても採用できる仮直線が見つからない場合には、図１４の直線グループ生成処理を再度実行することにより直線グループを生成し直す。ステップＳ５１１において近似直線算出部６４は、同じ座標グループについて直線グループ生成処理をＮ１回繰り返したか否かを判断する。Ｎ１は正の整数である。すでに直線グループ生成処理がＮ１回繰り返し実行されている場合（ステップＳ５１１：Ｙ）に処理はステップＳ５１４へ進む。まだ直線グループ生成処理がＮ１回繰り返し実行されていない場合（ステップＳ５１１：Ｎ）に処理はステップＳ５１２へ進む。
【０１１９】
ステップＳ５１２において仮直線決定部６５は、ステップＳ３０７の判定で使用される閾値Ｔｈ２を変更する。閾値Ｔｈ２を変更することによって生成される直線グループが変化する。ステップＳ５１３において近似直線算出部６４及び仮直線決定部６５は、直線グループ生成処理を再度実行する。その後、ステップＳ５１０において仮直線決定部６５は、再生成された直線グループに対して仮直線決定処理を実行し仮直線を決定し直す。その後に処理はステップＳ５０２に戻る。
【０１２０】
同じ座標グループについて直線グループ生成処理をＮ１回繰り返しても採用できる仮直線が見つからない場合には、図９の座標グループ生成処理を再度実行することにより座標グループを生成し直す。ステップＳ５１４において分類部６３は、同じ候補画素について座標グループ生成処理をＮ２回繰り返したか否かを判断する。Ｎ２は正の整数である。すでに座標グループ生成処理がＮ２回繰り返し実行されている場合（ステップＳ５１４：Ｙ）に処理はステップＳ５１８へ進む。まだ座標グループ生成処理がＮ２回繰り返し実行されていない場合（ステップＳ５１４：Ｎ）に処理はステップＳ５１５へ進む。
【０１２１】
ステップＳ５１５において分類部６３はステップＳ２０９の変曲点の検出で使用される閾値Ｔｈ１を変更する。閾値Ｔｈ１を変更することによって生成される座標グループが変化する。ステップＳ５１６において分類部６３は、直線グループ生成処理の繰り返し回数のカウント数を「０」にリセットする。この結果、座標グループの再生成後に採用できる仮直線が見つからない場合には、直線グループ生成処理がＮ１回まで繰り返し実行可能になる。
【０１２２】
ステップＳ５１７において分類部６３は、座標グループ生成処理を再度実行する。その後にステップＳ５１３において近似直線算出部６４及び仮直線決定部６５は、再生成された直線グループに対して直線グループ生成処理を再度実行し、直線グループを決定し直す。その後、ステップＳ５１０において仮直線決定部６５は仮直線を決定し直す。その後に処理はステップＳ５０２に戻る。
【０１２３】
同じ候補画素について座標グループ生成処理をＮ２回繰り返しても採用できる仮直線が見つからない場合には、図３の候補画素検出処理Ｓ１０２を再度実行することにより候補画素を検出し直す。ステップＳ５１８において候補画素検出部６１は、同じ辺について候補画素検出処理をＮ３回繰り返したか否かを判断する。Ｎ３は正の整数である。すでに候補画素検出処理がＮ３回繰り返し実行されている場合（ステップＳ５１８：Ｙ）に処理はステップＳ５２２へ進む。まだ候補画素検出処理がＮ３回繰り返し実行されていない場合（ステップＳ５１８：Ｎ）に処理はステップＳ５１９へ進む。
【０１２４】
ステップＳ５１９において候補画素検出部６１は、候補画素の検出に使用する検出閾値を変更する。例えば候補画素検出部６１は、注目画素と隣接画素の明度差とこの検出閾値の比較結果に応じて注目画素を候補画素として検出する。検出画素を変更することにより検出される候補画素が変化する。
【０１２５】
ステップＳ５２０において候補画素検出部６１は、直線グループ生成処理及び座標グループ生成処理の繰り返し回数のカウント数を「０」にリセットする。この結果、候補画素の再検出後に採用できる仮直線が見つからない場合には、直線グループ生成処理及び座標グループ生成処理がそれぞれ（Ｎ１×Ｎ２）回及びＮ２回まで繰り返し実行可能になる。
【０１２６】
ステップＳ５２１において候補画素検出部６１は、候補画素検出処理を再度実行する。その後にステップＳ５１７において分類部６３は、再検出された候補画素に対して座標グループ生成処理を再度実行し、座標グループを決定し直す。その後、ステップＳ５１３において近似直線算出部６４及び仮直線決定部６５は、直線グループを決定し直し、ステップＳ５１０において仮直線決定部６５は仮直線を決定し直す。その後に処理はステップＳ５０２に戻る。
【０１２７】
同じ辺について候補画素検出処理をＮ３回繰り返しても採用できる仮直線が見つからない場合には境界線の検出に失敗したと判断され、ステップＳ５２２において処理が異常終了される。この場合は、図３の境界線補正処理Ｓ１１０と画像切出処理Ｓ１１１が中止される。
【０１２８】
＜２．４．  実施例の効果＞
本実施例によれば、原稿領域の辺の境界線の候補として算出した仮直線の適否を原稿の縁の影画像を用いて判断することができるので、境界線の算出精度が向上する。また、適切な仮直線が見つかるまで、候補座標検出処理、座標グループ生成処理、直線グループ生成処理及び仮直線決定処理を反復するので、精度の高い境界線を算出する可能性を向上することができる。
【０１２９】
また、検出した影画像に基づいて仮直線の位置や角度を補正するため、境界線の算出精度が向上する。
【０１３０】
＜３．第２実施例＞
続いて、画像処理システム１の他の実施例について説明する。本実施例では、原稿の縁の影画像を用いて、座標グループに属する候補画素に基づき算出される複数の近似直線の中から境界線を選択する。このため、仮直線決定処理を省いてもよい。
【０１３１】
図２７は、画像処理システム１の処理の第２例の説明図である。ステップＳ６０１において画像処理システム１は、画像データを入力する。ステップＳ６０２において画像処理システム１は、原稿領域の辺のそれぞれについて、各辺での原稿領域とその外側との境界線を構成する画素の候補となる候補画素を検出する。
【０１３２】
ステップＳ６０３において画像処理システム１は、原稿領域の辺のいずれかを選択する。ステップＳ６０４は、原稿領域の辺毎に実行される。ステップＳ６０４において画像処理システム１は、境界線５３の複数の部位においてそれぞれ検出された候補画素毎に異なるグループに分類することにより、複数の座標グループを生成する。ステップＳ６０４の座標グループ生成処理は、図３の座標グループ生成処理Ｓ１０４と同じ処理であってよい。
【０１３３】
ステップＳ６０５において画像処理システム１は、全ての辺において座標グループを生成したか判断する。いずれかの辺において座標グループを生成していない場合（ステップＳ６０５：Ｎ）には、処理はステップＳ６０６へ進む。全ての辺において座標グループを生成した場合（ステップＳ６０５：Ｙ）には、処理はＳ６０７へ進む。ステップＳ６０６において画像処理システム１は、未だ座標グループを生成していない辺を選択し、処理をステップＳ６０４に戻す。
【０１３４】
ステップＳ６０７において画像処理システム１は、座標グループ毎にそれぞれのグループに属する候補画素に基づき、各辺毎に境界線の近似直線を算出する。画像処理システム１は、各近似直線から所定距離の範囲における原稿の縁の影画像を検出結果に応じて、近似直線のいずれかを境界線として選択する。
【０１３５】
ステップＳ６０８において画像処理システム１は、影画像の検出位置に応じて境界線の位置を補正する。ステップＳ６０９において画像処理システム１は、ステップＳ６０８で決定した境界線の位置で、入力した画像データから原稿領域の画像を切り出す。その後に処理が終了する。
【０１３６】
図２８は、画像処理制御部１７の構成例の第２例を示す図である。図７に示す構成要素と同一の構成要素については同一の参照符号を生成する。特に説明しない限り、同一の参照符号が付された構成要素の動作は同じである。境界線選択部９０を備える。なお、図２８は、以下の説明に関係する機能を中心として示している。このため、画像処理制御部１７は図示の構成要素以外の他の構成要素を含んでいてよい。
【０１３７】
近似直線算出部６４は、各座標グループに属する候補画素に基づいて、境界線５３の近似直線をそれぞれ算出する。影検出部６６は、近似直線算出部６４が算出した近似直線から所定距離Ｄの範囲内において原稿の縁の影画像を探索する。境界線選択部９０は、原稿領域の辺毎に、影画像の検出結果に応じて近似直線のいずれかを境界線として選択する。
【０１３８】
補正部６８は、境界線選択部９０が選択した境界線の位置を影画像の検出位置に応じて補正する。補正部６８は、第１実施例の仮直線の補正と同様に境界線の角度を補正してもよい。画像切出部６９は、補正部６８が補正した境界線の位置で、入力した画像データから原稿領域の画像を切り出す。
【０１３９】
図２９及び図３０は、境界線選択処理の一例の説明図である。図２９及び図３０の境界線選択処理は、図２７の境界線選択処理Ｓ６０７に相当する。ステップＳ７０１において影検出部６６は、原稿領域の辺のいずれかを選択する。以下のステップＳ７０２〜Ｓ７１０及びＳ７１２〜７１９は、原稿領域の辺毎に実行される。
【０１４０】
ステップＳ７０２において近似直線算出部６４は、選択された辺について生成された座標グループのいずれかを選択する。ステップＳ７０３において近似直線算出部６４は、選択した座標グループに属する候補画素に基づいて、辺の境界線の近似直線を算出する。
【０１４１】
ステップＳ７０４において最大値点検出部８０は、近似直線上の複数の座標毎に最大値点を検出する。図３１は、第２実施例における最大値点の探索範囲を説明するための図である。いま、座標グループｃｇ１の属する候補座標に基づいて算出された近似直線ａｌから所定距離Ｄの範囲内において影画像を探索する場合を想定する。
【０１４２】
座標グループｃｇ１〜ｃｇ６は、いずれも左辺について検出された候補画素の座標グループである。探索範囲は、例えば、座標グループｃｇ１が生成された辺と同一の辺について検出された候補画素の第２方向の座標の最小値から最大値までの範囲であってよい。
【０１４３】
ステップＳ７０５において分布算出部８１は、近似直線上の複数の座標毎に検出した最大値点と近似直線との間の位置ずれ量の度数分布を算出する。ステップＳ７０６において影検出部６６は、全ての座標グループにおいて度数分布を算出したか判断する。いずれかの座標グループにおいて度数分布を算出していない場合（ステップＳ７０６：Ｎ）には、処理はステップＳ７０７へ進む。全ての座標グループにおいて度数分布を算出した場合（ステップＳ７０６：Ｙ）に処理はステップＳ７０８に進む。ステップＳ７０７において影検出部６６は、未だ度数分布を算出していない座標グループを選択し、処理をステップＳ７０３に戻す。
【０１４４】
ステップＳ７０８において境界線選択部９０は、注目範囲に影画像があるか否かを判断することにより、各近似直線が境界線として採用可能か否かを判断する。採用可能な近似直線がある場合（ステップＳ７０８：Ｙ）に処理はステップＳ７０９へ進む。採用可能な近似直線がない場合（ステップＳ７０８：Ｎ）に処理はステップＳ７１２へ進む。
【０１４５】
ステップＳ７０９において境界線選択部９０は、近似直線を境界線として採用する。ステップＳ７１０において影検出部６６は、全ての辺において境界線を選択したか判断する。いずれかの辺において境界線を選択していない場合（ステップＳ７１０：Ｎ）には、処理はステップＳ７１１へ進む。全ての辺において仮直線を決定した場合（ステップＳ７１０：Ｙ）に境界線選択処理が終了する。ステップＳ７１１において影検出部６６は、未だ境界線を選択していない辺を選択し、処理をステップＳ７０２に戻す。
【０１４６】
境界線として採用できる近似直線がない場合には、図９の座標グループ生成処理を再度実行する。ステップＳ７１２において分類部６３は、同じ候補画素について座標グループ生成処理をＮ２回繰り返したか否かを判断する。すでに座標グループ生成処理がＮ２回繰り返し実行されている場合（ステップＳ７１２：Ｙ）に処理はステップＳ７１５へ進む。まだ座標グループ生成処理がＮ２回繰り返し実行されていない場合（ステップＳ７１２：Ｎ）に処理はステップＳ７１３へ進む。
【０１４７】
ステップＳ７１３において分類部６３は閾値Ｔｈ１を変更する。ステップＳ７１４において分類部６３は、座標グループ生成処理を再度実行する。その後に処理はステップＳ７０２に戻る。
【０１４８】
同じ候補画素について座標グループ生成処理をＮ２回繰り返しても採用できる近似直線が見つからない場合には、図３の候補画素検出処理Ｓ１０２を再度実行する。ステップ７１５において候補画素検出部６１は、同じ辺について候補画素検出処理をＮ３回繰り返したか否かを判断する。すでに候補画素検出処理がＮ３回繰り返し実行されている場合（ステップＳ７１５：Ｙ）に処理はステップＳ７１９へ進む。まだ候補画素検出処理がＮ３回繰り返し実行されていない場合（ステップＳ７１５：Ｎ）に処理はステップＳ７１６へ進む。
【０１４９】
ステップＳ７１６において候補画素検出部６１は、候補画素の検出に使用する検出閾値を変更する。ステップＳ７１７において候補画素検出部６１は、座標グループ生成処理の繰り返し回数のカウント数を「０」にリセットする。ステップＳ７１８において候補画素検出部６１は、候補画素検出処理を再度実行する。その後にステップＳ７１４において分類部６３は座標グループ生成処理を再度実行し、処理はステップＳ７０２に戻る。
【０１５０】
同じ辺について候補画素検出処理をＮ３回繰り返しても採用できる仮直線が見つからない場合には境界線の検出に失敗したと判断され、ステップＳ７１９において処理が異常終了される。この場合は、図２７の境界線補正処理Ｓ６０８と画像切出処理Ｓ６０９が中止される。
【０１５１】
本実施例によれば、原稿領域の辺の境界線の候補として算出した近似直線の適否を原稿の縁の影画像を用いて判断することができるので、境界線の算出精度が向上する。また、適切な近似直線が見つかるまで、候補座標検出処理及び座標グループ生成処理を反復するので、精度の高い境界線を算出する可能性を向上することができる。
【０１５２】
また、検出した影画像に基づいて境界線の位置や角度を補正するため、境界線の算出精度が向上する。
【符号の説明】
【０１５３】
１    画像処理システム
１０    画像読取装置
３０    コンピュータ装置
６０    画像入力部
６１    候補画素検出部
６３    分類部
６４    近似直線算出部
６５    仮直線決定部
６６    影検出部
６７    境界線判定部
６８    補正部
８０    最大値点検出部
８１    分布算出部
８２    判定部
【図１】
2014072626.tif 000003
【図２】
2014072626.tif 000004
【図３】
2014072626.tif 000005
【図４】
2014072626.tif 000006
【図５】
2014072626.tif 000007
【図６】
2014072626.tif 000008
【図７】
2014072626.tif 000009
【図８】
2014072626.tif 000010
【図９】
2014072626.tif 000011
【図１０】
2014072626.tif 000012
【図１１】
2014072626.tif 000013
【図１２】
2014072626.tif 000014
【図１３】
2014072626.tif 000015
【図１４】
2014072626.tif 000016
【図１５】
2014072626.tif 000017
【図１６】
2014072626.tif 000018
【図１７】
2014072626.tif 000019
【図１８】
2014072626.tif 000020
【図１９】
2014072626.tif 000021
【図２０】
2014072626.tif 000022
【図２１】
2014072626.tif 000023
【図２２】
2014072626.tif 000024
【図２３】
2014072626.tif 000025
【図２４】
2014072626.tif 000026
【図２５】
2014072626.tif 000027
【図２６】
2014072626.tif 000028
【図２７】
2014072626.tif 000029
【図２８】
2014072626.tif 000030
【図２９】
2014072626.tif 000031
【図３０】
2014072626.tif 000032
【図３１】
2014072626.tif 000033