(57)【特許請求の範囲】
【請求項１】
原稿領域を含む画像データを入力する入力部と、
前記画像データの所定方向と平行なラインに沿って前記画像データの２値化画像を所定検出パターンで走査することにより、前記原稿領域の境界線を構成するエッジ点の第１候補を検出する第１候補検出部と、
前記ラインに沿って隣接する画素同士の微分値に基づいてエッジ点の第２候補を検出する第２候補検出部と、
前記第１候補よりも前記第２候補の方が前記原稿領域の内側に位置する場合に、前記第２候補をエッジ点と決定し、そうでない場合に前記第１候補をエッジ点と決定するエッジ点決定部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記エッジ点決定部は、前記第１候補よりも前記第２候補の方が前記原稿領域の内側に位置し、且つ前記第１候補と前記第２候補との間隔が所定長以下である場合に、前記第２候補をエッジ点と決定し、そうでない場合に前記第１候補をエッジ点と決定することを特徴とする、請求項１に記載の画像処理装置。
【請求項３】
第１のラインで決定されたエッジ点と、該第１のラインに隣接する第２のラインで決定されたエッジ点との間の距離が所定長より長い場合に、前記第２のラインで決定されたエッジ点をノイズであると判断し、前記ノイズであると判断したエッジ点を除去するノイズ判断部を備えることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
第１のラインで決定されたエッジ点及び該第１のラインに隣接する第２のラインで決定されたエッジ点を通る直線と、ラインに直交する方向とのなす角度が所定角度よりも大きい場合に、前記第２のラインで決定されたエッジ点をノイズであると判断し、前記ノイズであると判断したエッジ点を除去するノイズ判断部を備えることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項５】
複数のラインで決定されたエッジ点に基づいて定められる前記原稿領域の境界線の近似直線と、あるエッジ点との間の距離が所定長より長い場合に、前記あるエッジ点をノイズであると判断し、前記ノイズであると判断したエッジ点を除去するノイズ判断部を備えることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項６】
前記第２候補検出部は、注目画素を含み且つ前記ラインに沿って連続する複数画素中に含まれる画素について演算した前記微分値の合計値に基づいて、前記注目画素を第２候補として検出するか否かを判断することを特徴とする請求項１〜５のいずれか一項に記載の画像処理装置。
【請求項７】
前記第１候補検出部及び前記第２候補検出部がエッジ点を検出する複数のラインは１画素以上の間隔を隔てて配置され、
前記第１候補検出部及び前記第２候補検出部が各ラインにおいてエッジ点を検出する画素は、ラインに沿って連続して配置される画素である、
ことを特徴とする請求項１〜６のいずれか一項に記載の画像処理装置。
【請求項８】
原稿領域を含んだ画像データを取得する画像取得ステップと、
前記画像データの所定方向と平行なラインに沿って前記画像データの２値化画像を所定検出パターンで走査することにより、前記原稿領域の境界線を構成するエッジ点の第１候補を検出する第１候補検出ステップと、
前記ラインに沿って隣接する画素同士の微分値に基づいてエッジ点の第２候補を検出する第２候補検出ステップと、
前記第１候補よりも前記第２候補の方が前記原稿領域の内側に位置する場合に、前記第２候補をエッジ点と決定し、そうでない場合に前記第１候補をエッジ点と決定するエッジ点決定ステップと、
を含むことを特徴とする画像処理方法。
【請求項９】
制御部を備えた情報処理装置に実行させるための画像処理プログラムであって、
前記制御部に実行させるための、
原稿領域を含んだ画像データを取得する画像取得ステップと、
前記画像データの所定方向と平行なラインに沿って前記画像データの２値化画像を所定検出パターンで走査することにより、前記原稿領域の境界線を構成するエッジ点の第１候補を検出する第１候補検出ステップと、
前記ラインに沿って隣接する画素同士の微分値に基づいてエッジ点の第２候補を検出する第２候補検出ステップと、
前記第１候補よりも前記第２候補の方が前記原稿領域の内側に位置する場合に、前記第２候補をエッジ点と決定し、そうでない場合に前記第１候補をエッジ点と決定するエッジ点決定ステップと、
を含むことを特徴とする画像処理プログラム。
【請求項１０】
画像読取装置と、該画像読取装置との間の通信により該画像読取装置が読み込む画像を受信するコンピュータ装置とを有する画像処理システムであって、
前記画像読取装置により読み込まれる画像データの所定方向と平行なラインに沿って前記画像データの２値化画像を所定検出パターンで走査することにより、前記画像データに含まれる原稿領域の境界線を構成するエッジ点の第１候補を検出する第１候補検出部と、
前記ラインに沿って隣接する画素同士の微分値に基づいてエッジ点の第２候補を検出する第２候補検出部と、
前記第１候補よりも前記第２候補の方が前記原稿領域の内側に位置する場合に、前記第２候補をエッジ点と決定し、そうでない場合に前記第１候補をエッジ点と決定するエッジ点決定部と、
を備えることを特徴とする画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で論じられる実施態様は、画像処理装置、画像処理方法、画像処理プログラム、及び画像処理システムに関する。
【背景技術】
【０００２】
原稿を読み取って得られる画像データから原稿領域を検出する画像処理装置が知られている。例えば、画像処理装置は、原稿領域を含む画像を取得し、取得した画像に基づいてエッジ候補画素の座標値を検出し、検出したエッジ候補画素の座標値に基づいて原稿領域の傾きを算出し、検出したエッジ候補画素の座標値に基づいてエッジ端候補画素の座標値を抽出する。そして画像処理装置は、算出した原稿領域の傾きおよび抽出したエッジ端候補画素の座標値に基づいてエッジに対応する直線を算出し、算出したエッジに対応する直線に基づいて原稿領域の傾きを補正すると共に、当該直線に基づいて画像から原稿領域を切り出す。
【０００３】
他の例として、原稿領域を抽出する動作において、画素の微分値と閾値を比較して読み取り対象か否かを判定する画像処理装置が知られている。
【０００４】
また、イメージセンサより出力される画像データを処理する画像読取装置が知られている。画像読取装置は、濃度変化量が閾値より高い画素を原稿端点と推定される候補点として検出する原稿領域検出手段と、候補点の位置に基づいて原稿端の位置を示す原稿端点を認定する原稿領域補正手段とを備える。原稿領域検出手段は、対象画素の周辺画素の画像濃度に基づいて、対象画素の濃度変化量を演算する濃度変化量演算手段と、対象画素から走査方向、又は逆走査方向のいずれか一方向に連続する所定数画素の濃度を所定のスライスレベルで２値化したときの各画素の値が一致すると、当該対象画素を候補点として検出する判定手段を備える。判定手段は、濃度変化量が、閾値未満であり第二の閾値以上とみなされた対象画素において、当該対象画素から走査方向、又は逆走査方向のいずれか一方向に連続する所定数の画素の濃度を所定のスライスレベルで２値化したときに、当該各画素における２値化後の値が一致する場合、当該対象画素を仮候補点として検出する。
【０００５】
また、原稿エッジを検出する原稿サイズ検出装置が知られている。原稿サイズ検出装置は、注目画素と所定画素数前の画素から等間隔おいた複数の画素とのそれぞれの差分をとる第１の演算手段と、その第１の演算手段により得られた各差分と閾値とを比較し、すべての差分が閾値を越える場合を検出する第１の比較手段と、その第１の比較手段の比較の結果すべての差分が閾値を越えていた場合にその注目画素位置を仮エッジとし、その状態が所定回数続いた場合に前記仮エッジ位置を原稿エッジとして検出する第１のエッジ検出手段とを有する第１の原稿エッジ検出手段と、注目画素と前画素との差分をとる第２の演算手段と、その第２の演算手段により得られた差分が閾値を越える場合を検出する第２の比較手段と、注目画素から所定画素前までの範囲内で閾値を越えている回数が所定回数以上あった場合には、注目画素の位置を原稿エッジとし、この動作を主走査方向にわたって行い、最終的に原稿エッジ位置として更新された位置を原稿エッジとする第２のエッジ検出手段とを有する第２の原稿エッジ検出手段と、前記第１および第２の原稿エッジ検出手段により検出された２つの原稿エッジ位置の内大きいほうを原稿エッジとしてサイズ検出を行うサイズ判別手段とを備える。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２１８９５３号公報
【特許文献２】特開２０１０−２６３４３４号公報
【特許文献３】特開２００２−２５２７４７号公報
【特許文献４】特開平１０−２２４５６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
画像読取装置で原稿を読み取った画像データの中から原稿領域を検出する際、原稿領域とそれ以外の背景領域の間の境界で生じる明度変化を検出することにより、原稿領域と背景領域の境界であるエッジを検出することができる。
【０００８】
画像読取装置に設けられた原稿の裏当ての明度と原稿の明度との差が大きい場合は、原稿を読み取った画像データにおいてエッジの周辺にフレアが発生する場合がある。フレアとは、読み取り画像に明度差が大きい部分が存在すると、暗部又は明部内の明度が一定にならず、暗部からの距離に応じて明部の明度が漸減する、又は明部からの距離に応じて暗部の明度が漸増する現象である。フレアは、画像センサが本来読み取るべき位置からの反射光だけでなく、その他の位置からの反射光（迷光）も画像センサに入射するために生じる。フレアが発生すると、原稿領域と背景領域の境界が滲んで見えるため、フレア発生時に本来のエッジよりも外側の位置がエッジとして誤検出されることがある。
【０００９】
また、エッジの誤検出にはフレア以外の他の事象が原因となって生じるものがある。このような原因の一例として縦筋ノイズがある。縦筋ノイズとは、画像読取装置による原稿の副走査方向に沿って伸びる線状のノイズである。縦筋ノイズは、例えばＡＤＦ（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）ディスプレイ、有機エレクトロルミネッセンスディスプレイなどの表示装置であってよい。または、出力部３５は、音声信号を出力するスピーカやその駆動回路であってよい。
【００２９】
媒体読取部３６は、コンピュータに読み取り可能な可搬型記録媒体に記憶されたデータを読み取る入力装置である。媒体読取部３６は、例えばＣＤ−ＲＯＭドライブ装置やＤＶＤ−ＲＯＭドライブ装置、フレキシブルディスクドライブ装置、ＣＤ−Ｒドライブ装置や、ＤＶＤ−Ｒドライブ装置、ＭＯドライブ装置、フラッシュメモリ装置へのアクセス装置であってよい。
【００３０】
Ｉ／Ｆ３７は、画像読取装置１０とコンピュータ装置３０との間の有線及び／又は無線による通信インタフェースである。コンピュータ装置３０は、画像読取装置１０が読み取った原稿の画像データを、Ｉ／Ｆ３７を経由して受信することが可能である。コンピュータ装置３０は、画像読取装置１０の動作に関する設定情報や指示をＩ／Ｆ３７を介して画像読取装置１０へ送信する。ＣＰＵ３１、補助記憶装置３２、メモリ３３、入力部３４、出力部３５、媒体読取部３６及びＩ／Ｆ３７は、バス３８によって電気的に接続されている。
【００３１】
＜２．第１実施例＞
＜２．１．  概要説明＞
次に、図２の（Ａ）及び図２の（Ｂ）〜図１５を参照して、画像処理システム１により実施される処理の一例について説明する。以下、原稿領域と背景領域のエッジが検出される画像データについて説明する。図２の（Ａ）は原稿のエッジ部分の画像の模式図である。画像データ４０は、原稿領域ｒと背景領域ｂｋを含む。原稿領域ｒは、画像読取装置１０のイメージセンサ１３が読み取った原稿画像により占められる領域であり、背景領域ｂｋは、画像データ４０中の原稿領域ｒ以外の領域である。
【００３２】
符号ｅｇは原稿領域ｒと背景領域ｂｋとの間のエッジの位置を示す。図示する通り画像データ４０の原稿領域ｒと背景領域ｂｋとの間の明度差は大きく、原稿領域ｒ及び背景領域ｂｋはそれぞれ画像データ４０の暗部と明部となる。図４の（Ａ）及び図５の（Ａ）に示す原稿のエッジ部分の画像においても同様である。
【００３３】
図２の（Ｂ）は、図２の（Ａ）に示す画素ラインＬにおける画素の明度変化の説明図である。図２の（Ａ）の例では、エッジｅｇにおいてフレアは生じておらず、エッジｅｇ周辺の原稿領域ｒ内及び背景領域ｂｋ内においてそれぞれ明度はほぼ一定であり、エッジｅｇの位置で、背景領域ｂｋと原稿領域ｒとの間の明瞭な明度変化を生じる。なお、以下の説明において画素ラインを単に「ライン」と表記することがある。
【００３４】
図３は、微少ノイズ発生時の画素の明度変化の説明図である。図３の例は、図２の（Ａ）に示す画像データ４０が背景領域ｂｋにおいて微少ノイズを含む場合を示す。微少ノイズの存在によってラインＬの位置ｐ１の画素と周囲の画素との間の明度差が低減されている。
【００３５】
図４の（Ａ）はフレア発生時のエッジ部分の画像の模式図である。フレアの発生により原稿領域ｒと背景領域ｂｋとの境界が滲んでいる。図４の（Ｂ）は、図４の（Ａ）に示すラインＬにおける画素の明度変化の説明図である。原稿領域ｒと背景領域ｂｋとの境界が滲んでいるため、エッジｅｇの位置の周辺において背景領域ｂｋから原稿領域ｒへと移動するにつれて明度が漸減し、エッジｅｇの位置における明度変化が小さくなっている。
【００３６】
図５の（Ａ）は縦筋ノイズ発生時のエッジ部分の画像の模式図である。画像データ４０は、背景領域ｂｋにおいて縦筋ノイズｎを含む。図５の（Ｂ）は、図５の（Ａ）に示すラインＬにおける画素の明度変化の説明図である。縦筋ノイズｎは、ある程度の幅を持ち、ラインＬ上の画素ｐ１とｐ２との間の範囲を占めている。縦筋ノイズｎ部分とその外側の部分の間の明度差は大きいため、背景領域ｂｋにおいて発生した縦筋ノイズｎはエッジとして誤検出されることがある。
【００３７】
＜２．１．１  全体処理＞
続いて、画像処理システム１による全体処理の例を説明する。図６は、画像処理システムにより画像データから原稿領域の画像を切り出す処理の一例の説明図である。ステップＳ１００において画像処理システム１は、画像データを入力する。ステップＳ１０１において画像処理システム１は、画像データにおいてエッジ点を走査する走査方向を、画像読取装置１０による画像読み取り時の主走査方向に設定する。
【００３８】
ステップＳ１０２において画像処理システム１は、走査方向に沿う複数の走査ラインにおいてパターンマッチング処理によりエッジ点の第１候補を検出する。走査ラインは、画像データ中でエッジ点を検出するために、画素が走査される画素ラインである。走査ラインは１画素以上の間隔を隔てて配列されてもよく、または、間隔をあけずに連続して配列されてもよい。
【００３９】
また、画像処理システム１は、走査方向に沿う複数の走査ラインにおいて微分演算処理によりエッジ点の第２候補を検出する。パターンマッチング処理及び微分演算処理の内容は後述する。なお、パターンマッチング処理及び微分演算処理は、並列に実行されてもよく、また異なる時期にパターンマッチング処理及び微分演算処理を実行する場合には、どちらを先に実行してもよい。
【００４０】
図７の（Ａ）は、第１候補及び第２候補の検出例を示す。図７の（Ａ）において矩形ｒは画像データにおける原稿領域の範囲を示し、直線Ｌ１〜Ｌ８は走査ラインを示す。ｐ１１〜ｐ１８は走査ラインＬ１〜Ｌ８で検出される第１候補を示し、ｐ２１〜ｐ２８は走査ラインＬ１〜Ｌ８で検出される第２候補を示す。図７の（Ｂ）及び図７の（Ｃ）においても同様である。
【００４１】
図６のステップＳ１０３において画像処理システム１は、エッジ点決定処理を実行する。エッジ点決定処理において画像処理システム１は、各走査ラインで検出された第１候補及び第２候補のうちいずれか一方をエッジ点として決定する。エッジ点決定処理の内容は後述する。なお、画像処理システム１は、パターンマッチング処理及び微分演算処理を実行するのと並列して、検出済みの第１候補及び第２候補からエッジ点を決定するエッジ点決定処理を実行するパイプライン処理を行ってもよい。
【００４２】
図７の（Ｂ）は、エッジ点決定処理によるエッジ点の決定結果を示す。例えば、走査ラインＬ１で検出される第１候補ｐ１１及び第２候補ｐ２１のうち、第１候補ｐ１１がエッジ点として決定される。また、走査ラインＬ２で検出される第１候補ｐ１２及び第２候補ｐ２２のうち、第２候補ｐ２２がエッジ点として決定される。
【００４３】
図６のステップＳ１０４において画像処理システム１は、ノイズ除去処理を実行する。ノイズ除去処理において画像処理システム１は、エッジ点決定処理によって決定されたそれぞれのエッジ点がノイズであるか否かを判断し、ノイズと判断されたエッジ点を除去する。ノイズ除去処理は後述する。なお、画像処理システム１は、エッジ点決定処理によりエッジ点を決定するのと並列して、決定済みのエッジ点についてノイズ除去処理を実行するパイプライン処理を行ってもよい。図７の（Ｃ）は、ノイズ除去処理によるノイズの除去結果を示す。ノイズ除去処理によって、走査ラインＬ６上及びＬ７上のエッジ点ｐ１６及びｐ１７が除去される。
【００４４】
図６のステップＳ１０５において画像処理システム１は、画像読取装置１０による画像読み取り時の主走査方向及び副走査方向の両方で、エッジ点の走査を行ったか否かを判断する。両方の走査方向でエッジ点の走査を行った場合（ステップＳ１０５：Ｙ）には、処理はステップＳ１０７へ進む。副走査方向でエッジ点の走査を行っていない場合（ステップＳ１０５：Ｎ）には、処理はステップＳ１０６へ進む。ステップＳ１０６において画像処理システム１は、エッジ点の走査方向を、画像読取装置１０の副走査方向に設定する。その後、処理はＳ１０２に戻り、処理Ｓ１０２〜Ｓ１０５を繰り返す。
【００４５】
ステップＳ１０７において画像処理システム１は、境界線決定処理を実行する。境界線決定処理において画像処理システム１は、上記ステップＳ１００〜Ｓ１０６によって決定されたエッジ点に基づいて原稿領域のエッジを決定する。ステップＳ１０８において画像処理システム１は、画像切出処理を実行する。画像切出処理において画像処理システム１は、ステップＳ１０７の境界線決定処理で決定したエッジの位置で、画像データから原稿領域の画像を切り出す。その後に処理は終了する。
【００４６】
なお、図６の例では、画像読取装置１０の主走査方向に沿ってエッジ点の走査を行った後に副走査方向に沿ってエッジ点の走査を行った。これに代えて、副走査方向に沿ってエッジ点の走査を行った後に主走査方向に沿ってエッジ点の走査を行ってもよい。また、主走査方向に沿うエッジ点の走査と副走査方向に沿うエッジ点の走査とを並列して行ってもよい。
【００４７】
＜２．１．２  パターンマッチング処理＞
次に、図６のステップＳ１０２で実行されるパターンマッチング処理について説明する。パターンマッチング処理において画像処理システム１は、所定の２値化閾値Ｔ１で入力された画像データを２値化する。画像処理システム１は、走査ライン上において注目画素を移動させて走査ライン上の各画素を走査し、注目画素がエッジ点であるか否かを判断する。
【００４８】
注目画素がエッジ点であるか否かの判断において画像処理システム１は、注目画素を含む被検査画素群とエッジ検出用のフィルタパターンとを比較する。図８の（Ａ）は、被検査画素群の一例を示す図である。図８の（Ａ）において点線で区切られる方眼は画像データの各画素の位置を示し、方眼内の数値は走査ライン上の画素値の２値化信号を示す。画素ｐは注目画素を示し、一点鎖線で囲われた範囲にある画素群ｔｇは、注目画素ｐについて定めた被検査画素群である。
【００４９】
被検査画素群ｔｇは、注目画素ｐを含みかつ走査方向ｓｄに沿って複数個配列される画素の集合である。図示の例では、被検査画素群ｔｇは、注目画素ｐに連続して走査方向に沿って一列に配列される複数の画素の集合である。なお、図８の（Ａ）に示す被検査画素群ｔｇは説明のための例示である。したがって、実装される装置の仕様に応じて被検査画素群を変更してよい。
【００５０】
図８の（Ｂ）及び図８の（Ｃ）は、フィルタパターンの一例であり、それぞれ走査方向ｓｄが画像読取装置１０の主走査方向である場合の左辺検出用及び右辺検出用のパターンである。画像処理システム１は、被検査画素群ｔｇがフィルタパターンと一致した場合に、注目画素がエッジ点の第１候補として判断する。
【００５１】
＜２．１．３  微分演算処理＞
次に、図６のステップＳ１０２で実行される微分演算処理について説明する。図９は、微分演算処理の一例の説明図である。図９の矩形ｐ１〜ｐ７は、ある走査ライン上の画素を示し、矩形内の数値は各画素の画素値を示す。例えば、画素ｐ１〜ｐ７…の画素値は、それぞれ「２１８」、「２１０」、「２２４」、「５４」、「６１」、「５８」、「４７」…である。
【００５２】
画像処理システム１は、走査ライン上において注目画素を移動させて走査ライン上の各画素を走査し、注目画素がエッジ点であるか否かを判断する。注目画素がエッジ点であるか否かの判断において画像処理システム１は、注目画素を含んだ被検査画素群に含まれる隣接画素同士の差分を、被検査画素群に含まれる画素の微分値として算出する。
【００５３】
被検査画素群は、注目画素を含みかつ走査方向に沿って複数個配列される画素の集合である。図９に示す例においては、注目画素が画素ｐ４であるとき、画素ｐ１〜ｐ７からなる集合を被検査画素群として定めてよい。このような被検査画素群は、注目画素ｐ４に連続して走査方向に沿って一列に配列される複数の画素ｐ１〜ｐ７の集合である。なお、本例の被検査画素群は説明のための例示である。実装される装置の仕様に応じて被検査画素群を変更してよい。
【００５４】
図９に示す例の場合、画像処理システム１は、被検査画素群に含まれる隣接画素ｐ２及びｐ１の間の差分、ｐ３及びｐ２の間の差分、ｐ４及びｐ３の間の差分、ｐ５及びｐ４の間の差分、ｐ６及びｐ５の間の差分、ｐ７及びｐ６の間の差分を算出する。これらの差分値は、図９に示すとおり、それぞれ「−８」、「１４」、「−１７０」、「７」、「−３」及び「−１１」である。
【００５５】
次に、画像処理システム１は、被検査画素群に含まれる画素の微分値「−８」、「１４」、「−１７０」、「７」、「−３」及び「−１１」の合計値Σを算出する。図９に示す例の場合、これらの合計値Σは「−１７１」である。画像処理システム１は、注目画素ｐ４について算出した合計値の絶対値｜Σ｜が、所定の検出閾値Ｔ２を超えるとき注目画素ｐ４をエッジの第２候補として検出する。
【００５６】
＜２．１．４  第１候補及び第２候補の検出例＞
以下、図２の（Ｂ）、図３、図４の（Ｂ）及び図５の（Ｂ）を参照して説明した、エッジ部分の画像、ノイズ発生時の画像、フレア発生時の画像、及び縦筋ノイズ発生時の画像において、どのように第１候補及び第２候補が検出されるかを例示する。
【００５７】
図１０の（Ａ）は、図２の（Ｂ）と同様のエッジ部分の画素の明度変化を示す。図１０の（Ｂ）は、図１０の（Ａ）の画素値を２値化閾値Ｔ１によって２値化した２値化信号を示す。図１０の（Ａ）に示す明度変化では、背景領域と原稿領域との間のエッジｅｇの位置で明瞭な明度変化を生じるため、２値化信号の値はエッジｅｇの位置で変化する。このため、パターンマッチング処理ではエッジｅｇの位置がエッジ点の第１候補として検出される。
【００５８】
図１０の（Ｃ）は、図１０の（Ａ）の画素値について微分演算処理において演算される微分値を示す。図１０の（Ｄ）は被検査画素群に含まれる微分値の合計値の絶対値｜Σ｜を示す。図１０の（Ｃ）の微分値は、明瞭な明度変化が生じるエッジ位置ｅｇで顕著な極小値を生じる。このため、被検査画素群の中心画素の微分値が極小値となるとき、被検査画素群中の微分値の合計値の絶対値｜Σ｜はある程度の大きさを持つ極大値を生じる。したがって微分演算処理では、合計値の絶対値｜Σ｜と検出閾値Ｔ２との比較により、エッジｅｇの位置がエッジ点の第２候補として検出される。
【００５９】
図１１の（Ａ）は、図３と同様の微少ノイズ発生時の画素の明度変化を示す。図１１の（Ｂ）は、図１１の（Ａ）の画素値を２値化閾値Ｔ１によって２値化した２値化信号である。図１１の（Ａ）に示す明度変化では、微少ノイズが存在するｐ１及びｐ２間の画素と周囲の画素との間の明度差が大きいため、２値化信号の値は画素ｐ１及びｐ２において一時的に変化する。しかし、画素ｐ１及びｐ２間の長さがフィルタパターン長に比べて十分小さければ、ノイズ部分の２値化信号はフィルタパターンと一致しない。このため、このような微少ノイズの場合、パターンマッチング処理では誤検出が生じない。
【００６０】
図１１の（Ｃ）は、図１１の（Ａ）の画素値について微分演算処理において演算される微分値を示す。図１１の（Ｄ）は被検査画素群に含まれる微分値の合計値の絶対値｜Σ｜を示す。図１１の（Ｃ）の微分値は、画素ｐ１及びｐ２において極小値と極大値を生じる。しかし、画素ｐ１及びｐ２間の長さが被検査画素群の長さに比べて十分小さければ、被検査画素群内において極小値と極大値が互いに相殺し合う。このため、被検査画素群中の微分値の合計値の絶対値｜Σ｜の極大値は小さくなる。したがって、微少ノイズの場合には、微分演算処理でも誤検出が生じない。
【００６１】
図１２の（Ａ）は、図４の（Ｂ）と同様のフレア発生時の画素の明度変化を示す。図１２の（Ｂ）は、図１２の（Ａ）の画素値を２値化閾値Ｔ１によって２値化した２値化信号である。図１２の（Ａ）に示す明度変化では、エッジｅｇの位置の周辺において背景領域ｂｋから原稿領域ｒへと移動するにつれて明度が漸減する。このため、原稿領域ｒのエッジｅｇの位置よりも外側の位置ｐ１で明度が２値化閾値Ｔ１よりも低くなる。この結果、パターンマッチング処理では、位置ｐ１がエッジ点の第１候補として誤検出される。
【００６２】
図１２の（Ｃ）は、図１２の（Ａ）の画素値について微分演算処理において演算される微分値を示す。図１２の（Ｄ）は被検査画素群に含まれる微分値の合計値の絶対値｜Σ｜を示す。フレア発生時でも依然としてエッジ位置ｅｇにおける明度変化はその周囲と比べて顕著に大きい。したがって図１２の（Ｃ）の微分値は、明瞭な明度変化が生じるエッジｅｇの位置で顕著な極小値を生じる。このため微分演算処理では、フレア発生時でもエッジｅｇの位置がエッジ点の第２候補として検出される。
【００６３】
図１３の（Ａ）は、図５の（Ｂ）と同様の縦筋ノイズ発生時の画素の明度変化を示す。図１３の（Ｂ）は、図１３の（Ａ）の画素値を２値化閾値Ｔ１によって２値化した２値化信号である。図１３の（Ａ）に示す明度変化では、縦筋ノイズが存在するｐ１及びｐ２間の画素と周囲の画素との間の明度差が大きいため、２値化信号の値は画素ｐ１及びｐ２において変化する。しかし、画素ｐ１及びｐ２間の長さがフィルタパターン長に比べて十分小さければ、ノイズ部分の２値化信号はフィルタパターンと一致しない。このため、縦筋ノイズの場合、パターンマッチング処理では誤検出が生じない。
【００６４】
図１３の（Ｃ）は、図１３の（Ａ）の画素値について微分演算処理において演算される微分値を示す。図１３の（Ｄ）は被検査画素群に含まれる微分値の合計値の絶対値｜Σ｜を示す。図１３の（Ｃ）の微分値は、画素ｐ１及びｐ２において極小値と極大値を生じる。図１１の（Ｃ）に示す微少ノイズの場合と比べて、縦筋ノイズの場合には、極小値と極大値が生じる画素ｐ１とｐ２の間隔が大きい。したがって、画素ｐ１及びｐ２間の長さが被検査画素群の長さに比べて大きくなり、被検査画素群内において極小値と極大値が相殺しない。このため、被検査画素群中の微分値の合計値の絶対値｜Σ｜の極大値がある程度大きくなる。したがって、微分演算処理では、縦筋ノイズの画素ｐ１及びｐ２の位置を第２候補として誤検出してしまうことがある。
【００６５】
以上、第１候補を検出するパターンマッチング処理の特徴と第２候補を検出する微分演算処理の特徴を比較すると、以下の通りとなる。
（１）フレアが発生していない場合には、第１候補及び第２候補は正しいエッジ位置を示す。
（２）微少ノイズは、第１候補及び第２候補として誤検出されない。
（３）フレア発生時には、第２候補は正しいエッジ位置を示すが、第１候補は正しいエッジ位置よりも外側の位置を示すことがある。
（４）縦筋ノイズ発生時には、第１候補としては誤検出されないが第２候補として誤検出されることがある。
【００６６】
＜２．１．５  エッジ点決定処理＞
続いて、図６のステップＳ１０３において実行されるエッジ点決定処理を説明する。図１４の（Ａ）及び図１４の（Ｂ）は、エッジ点決定処理の第１例の説明図である。図１４の（Ａ）及び図１４の（Ｂ）において矩形ｒは画像データにおける原稿領域の範囲を示し、直線Ｌは画像読取装置１０の主走査方向に沿った走査ラインを示す。ｐ１１及びｐ１２は左辺及び右辺の第１候補を示し、ｐ２１及びｐ２２は左辺及び右辺の第２候補を示す。図１４の（Ｃ）においても同様である。なお、画像読取装置１０の副走査方向に沿う方向に走査ラインを設定した場合にも処理は同様である。
【００６７】
上記「２．１．４（３）」の通り、フレア発生時には、第１候補は第２候補よりも外側の位置を示すことがある。したがって、図１４の（Ａ）に示すように第２候補の位置が第１候補よりも外側の場合にはフレア発生時ではないため、画像処理システム１は、第１候補をエッジ点として決定する。一方、図１４の（Ｂ）に示すように第２候補の位置が第１候補よりも内側の場合にはフレア発生時と考えられるため、画像処理システム１は、第２候補をエッジ点として決定する。
【００６８】
このように、第２候補の位置が第１候補よりも内側の場合にのみ第２候補をエッジ点として選択することにより、例えば背景領域の縦筋ノイズ等の、フレア以外の要因によって誤検出された第２候補を、エッジ点として採用することが防止される。
【００６９】
図１４の（Ｃ）は、エッジ点決定処理の第２例の説明図である。フレア発生によって第１候補の位置が正しいエッジ位置を示す第２候補の位置よりも外側にずれても、そのズレ量は、ある程度の範囲以下であると考えられる。したがって、画像処理システム１は、第２候補の位置が第１候補よりも内側にあり、且つ第１候補と第２候補との間隔が所定距離Ｔｄ１以内である場合に、第２候補をエッジ点として決定し、そうでない場合には第１候補をエッジ点として決定する。例えば、図１４の（Ｃ）に示す場合では、左辺の第１候補ｐ１１と、その内側にある第２候補ｐ２１との間の間隔が所定距離Ｔｄ１以内であるため、第２候補ｐ２１がエッジ点として決定される。また右辺の第１候補ｐ１２と、その内側にある第２候補ｐ２２との間の間隔が所定距離Ｔｄ１を超えるため、第１候補ｐ１２がエッジ点として決定される。このように、エッジ点として採用される第２候補の位置の範囲をさらに限定することにより、フレア以外の要因によって誤検出された第２候補をエッジ点が判断される機会を低減できる。
【００７０】
なお、パターンマッチング処理及び微分演算処理における画素の走査が、一定の走査方向に向かって実行される場合がある。例えば、画像読取装置１０が原稿を走査しながら画素データを順次生成し、生成された部分から順次エッジの第１候補及び第２候補が検出される場合がある。
【００７１】
例えば主走査方向において、原稿の左側から右側に向けて画素データが順次生成される場合において、パターンマッチング処理及び微分演算処理は、原稿の走査により画素データが生成されるのに伴って、順次生成される画素を走査する場合がある。この場合、エッジ点決定処理において画像処理システム１は、左辺のエッジを決定する際に、先に検出した第１候補の後に、第１候補から所定距離Ｔｄ１以内の範囲で第２候補が検出される場合に、第２候補をエッジ点として決定してよい。第１候補から所定距離Ｔｄ１以上の画素を走査しても第２候補が検出されない場合には、第１候補をエッジ点として検出してよい。
【００７２】
右辺のエッジを決定する際に画像処理システム１は、先に検出した第２候補の後に、第２候補から所定距離Ｔｄ１以内の範囲で第１候補が検出される場合に、第２候補をエッジ点として決定する。第２候補から所定距離Ｔｄ１以内の範囲で第１候補が検出されなければ、第２候補を破棄し、その後に検出された第１候補をエッジ点として決定する。
【００７３】
＜２．１．６  ノイズ除去処理＞
続いて、図６のステップＳ１０４において実行されるノイズ除去処理を説明する。ノイズ除去処理において画像処理システム１は、各走査ラインで検出されたエッジ点をそれぞれ注目する。注目エッジ点の検出ラインに隣接する隣接ラインで検出された他のエッジ点と注目エッジ点との間の距離が所定距離Ｔｄ２よりも大きい場合には、画像処理システム１は、注目エッジ点がノイズであると判断し、原稿領域のエッジ点から注目エッジ点を除去する。
【００７４】
図１５は、ノイズ除去処理の第１例の説明図である。図１５において矩形ｒは画像データにおける原稿領域の範囲を示し、直線Ｌ１〜Ｌ５は走査ラインを示し、ｐ１〜ｐ５は走査ラインＬ１〜Ｌ５で検出されるエッジ点を示す。走査ラインＬ２は、走査ラインＬ１及びＬ３に隣接する。また、走査ラインＬ４は、走査ラインＬ３及びＬ５に隣接する。
【００７５】
いま、エッジ点ｐ１、ｐ２、ｐ３、ｐ４及びｐ５の順に注目する。注目エッジ点が、エッジ点ｐ２及びｐ５であるとき、これら注目エッジ点ｐ２及びｐ５は、直前に注目した隣接ラインのエッジ点ｐ１及びｐ４から所定距離Ｔｄ２の範囲内にあるため、ノイズとして除去されない。一方で、注目エッジ点が、エッジ点ｐ３及びｐ４であるとき、これら注目エッジ点ｐ３及びｐ４は、直前に注目した隣接ラインのエッジ点ｐ２及びｐ３から所定距離Ｔｄ２の範囲外にあるため、ノイズとして除去される。
【００７６】
＜２．２．  装置構成＞
続いて、画像処理制御部１７の構成について説明する。図１６は、画像処理制御部１７の構成例の一例を示す図である。画像処理制御部１７は、画像入力部５０、パターンマッチング処理部５１、微分演算処理部５２、エッジ点決定処理部５３、ノイズ除去処理部５４、境界線決定部５５、画像切出部５６を備える。なお、図１６は、以下の説明に関係する機能を中心として示している。このため、画像処理制御部１７は図示の構成要素以外の他の構成要素を含んでいてよい。エッジ点記憶部５７に格納されるエッジ点の座標データは、メモリ１２に格納される。
【００７７】
他の実施例では、画像入力部５０、パターンマッチング処理部５１、微分演算処理部５２、エッジ点決定処理部５３、ノイズ除去処理部５４、境界線決定部５５、画像切出部５６により行われる処理の一部又は全部を、画像処理制御部１７に代わってＣＰＵ１１が実行してもよい。また他の実施例では、これらの処理の一部又は全部をコンピュータ装置３０のＣＰＵ３１によって実行してもよい。コンピュータ装置３０は、エッジ点記憶部５７としてメモリ３３にエッジ点の座標データを記憶してもよい。
【００７８】
これらの情報処理をＣＰＵ３１に実行させるコンピュータプログラムは、機械可読記録媒体に記録され、媒体読取部３６がこれを読み取ることにより補助記憶装置３２にインストールされてもよい。また、このコンピュータプログラムは、図示しないネットワークインタフェースを介してネットワークからダウンロードされ、補助記憶装置３２にインストールされてもよい。
【００７９】
画像入力部５０は、画像データを入力する。パターンマッチング処理部５１は、上記「２．１．２」のパターンマッチング処理を実行することによりエッジ点の第１候補を検出する。微分演算処理部５２は、上記「２．１．３」の微分演算処理を実行することによりエッジ点の第２候補を検出する。
【００８０】
エッジ点決定処理部５３は、上記「２．１．５」のエッジ点決定処理を実行することにより、第１候補及び第２候補のうちいずれか一方を原稿領域のエッジ点として決定する。エッジ点決定処理部５３は、決定したエッジ点の座標データをエッジ点記憶部５７に保持する。ノイズ除去処理部５４は、上記「２．１．６」のノイズ除去処理を実行することにより、エッジ点決定処理部５３が決定した各エッジ点がノイズであるか否かを判断し、ノイズと判断されたエッジ点の座標データを、エッジ点記憶部５７から除去する。
【００８１】
境界線決定部５５は、ノイズ除去処理部５４によるノイズ除去処理後に残ったエッジ点に基づいて、原稿領域のエッジを決定する。画像切出部５６は、境界線決定部５５が決定したエッジの位置で、画像データから原稿領域の画像を切り出す。
【００８２】
続いて、パターンマッチング処理部５１、微分演算処理部５２、エッジ点決定処理部５３及びノイズ除去処理部５４による処理について説明する。なお、以下の説明では、画像読取装置１０の主走査方向に沿ってエッジ点の走査を行う場合について説明する。副走査方向に沿ってエッジ点の走査を行う場合の処理も同様である。
【００８３】
＜２．２．１  パターンマッチング処理部＞
図１７は、１本の走査ラインにおけるパターンマッチング処理部５１の処理の一例の説明図である。ステップＳ２００においてパターンマッチング処理部５１は、２値化閾値Ｔ１を決定する。ステップＳ２０１においてパターンマッチング処理部５１は、画像データを入力する。ステップＳ２０２においてパターンマッチング処理部５１は、２値化閾値Ｔ１で画像データを２値化する。
【００８４】
ステップＳ２０３においてパターンマッチング処理部５１は、走査ライン上の所定の走査開始位置へ注目画素の位置を設定する。ステップＳ２０４においてパターンマッチング処理部５１は、注目画素について定められる被検査画素群と比較するフィルタパターンを決定する。この場合、左辺検出用パターンを使用する。
【００８５】
ステップＳ２０５においてパターンマッチング処理部５１は、注目画素について定められる被検査画素群とフィルタパターンとが一致するか否かを判断する。被検査画素群とフィルタパターンが一致する場合（ステップＳ２０５：Ｙ）には、処理はステップＳ２０７へ進む。被検査画素群とフィルタパターンが一致しない場合（ステップＳ２０５：Ｎ）には、処理はステップＳ２０６へ進む。ステップＳ２０６においてパターンマッチング処理部５１は、注目画素の位置を右方向へ１画素ずらし、処理をステップＳ２０５に戻す。
【００８６】
ステップＳ２０７においてパターンマッチング処理部５１は、ステップＳ２０５におけるパターンの一致が、現在の走査ラインでの最初の一致であるか否かを判断する。ステップＳ２０５における一致が最初の一致である場合（ステップＳ２０７：Ｙ）には、処理はステップＳ２０８へ進む。ステップＳ２０５における一致が最初の一致でない場合（ステップＳ２０７：Ｎ）には、処理はステップＳ２０９へ進む。
【００８７】
ステップＳ２０８においてパターンマッチング処理部５１は、注目画素を左辺の第１候補ＰｔＬと判断し、第１候補ＰｔＬをメモリ１２に記憶する。その後、パターンマッチング処理部５１は、処理をステップＳ２０４に戻す。ステップＳ２０４においてパターンマッチング処理部５１は、使用するフィルタパターンを右辺検出用パターンに変更し、その後に処理をステップＳ２０５へ進める。
【００８８】
ステップＳ２０９においてパターンマッチング処理部５１は、ステップＳ２０５におけるパターンの一致が、現在の走査ラインでの最後の一致であるか否かを判断する。例えばパターンマッチング処理部５１は、ステップＳ２０５におけるパターンの一致が最後の一致であるか否かを以下のように判定してよい。ステップＳ２０５におけるパターンの一致の後に、被検査画素群とフィルタパターンが一致することなく注目画素が走査終了位置へ至った場合には、パターンマッチング処理部５１は最後の一致だと判断する。反対に、ステップＳ２０５におけるパターンの一致の後に、注目画素が走査終了位置へ至る途中で被検査画素群とフィルタパターンが再び一致した場合には、前者の一致は最後の一致でないと判断する。ステップＳ２０５における一致が最後の一致である場合（ステップＳ２０９：Ｙ）には、処理はステップＳ２１０へ進む。ステップＳ２０５における一致が最後の一致でない場合（ステップＳ２０９：Ｎ）には、処理はステップＳ２０６へ進む。
【００８９】
ステップＳ２１０においてパターンマッチング処理部５１は、注目画素を右辺の第１候補ＰｔＲと判断し、第１候補ＰｔＲをメモリ１２に記憶する。その後、処理が終了する。
【００９０】
＜２．２．２  微分演算処理部＞
次に、微分演算処理部５２の処理を説明する。図１８は、１本の走査ラインにおける微分演算処理部５２の処理の一例の説明図である。ステップＳ３００において微分演算処理部５２は、検出閾値Ｔ２を決定する。ステップＳ３０１において微分演算処理部５２は、画像データを入力する。ステップＳ３０２において微分演算処理部５２は、走査ライン上の所定の走査開始位置へ注目画素の位置を設定する。
【００９１】
ステップＳ３０３において変数ｉの値が「１」に設定される。ステップＳ３０４において微分演算処理部５２は、注目画素について定められる被検査画素群に含まれる画素の微分値を算出する。ステップＳ３０５において微分演算処理部５２は、被検査画素群に含まれる微分値の合計値Σを算出する。
【００９２】
ステップＳ３０６において微分演算処理部５２は、合計値の絶対値｜Σ｜が、検出閾値Ｔ２を超えるか否かを判断する。絶対値｜Σ｜が検出閾値Ｔ２を超える場合（ステップＳ３０６：Ｙ）には、処理はステップＳ３０７に進む。絶対値｜Σ｜が検出閾値Ｔ２を超えない場合（ステップＳ３０６：Ｎ）には、ステップＳ３０７がスキップされ、処理はステップＳ３０９へ進む。
【００９３】
ステップＳ３０７において微分演算処理部５２は、注目画素を第２候補と判断する。微分演算処理部５２は、第ｉ個目の第２候補Ｄｉをメモリ１２に記憶し、それまでに本走査ラインで検出及び記憶された第１個目〜第（ｉ−１）個目の第２候補Ｄ１〜Ｄ（ｉ−１）に追加する。ステップＳ３０８において微分演算処理部５２は変数ｉを１つ増加させた後に、処理をステップＳ３０９へ進める。ステップＳ３０９において微分演算処理部５２は、注目画素が走査ライン上の走査終了位置に至ったか否かを判断する。注目画素が走査終了位置に至った場合（ステップＳ３０９：Ｙ）には、処理が終了する。注目画素が走査終了位置に至っていない場合（ステップＳ３０９：Ｎ）には、処理はステップＳ３１０へ進む。ステップＳ３１０において微分演算処理部５２は、注目画素の位置を右方向へ１画素ずらし、処理をステップＳ３０４に戻す。
【００９４】
＜２．２．３  エッジ点決定処理部＞
次に、エッジ点決定処理部５３の処理を説明する。図１９は、１本の走査ラインにおけるエッジ点決定処理部５３の処理の一例の説明図である。ステップＳ４００においてエッジ点決定処理部５３は、所定距離Ｔｄ１を決定する。所定距離Ｔｄ１は、第１候補ＰｔＬ及びＰｔＲより内側の第２候補Ｄが第１候補ＰｔＬ及びＰｔＲにどの程度近ければエッジ点と判断するかを定める。
【００９５】
ステップＳ４０１においてエッジ点決定処理部５３は、左辺の第１候補ＰｔＬの内側かつ所定距離Ｔｄ１の範囲内に第２候補Ｄが存在するか否かを判断する。第１候補ＰｔＬの内側かつ所定距離Ｔｄ１の範囲内に第２候補Ｄが存在する場合（ステップＳ４０１：Ｙ）には、処理はＳ４０２へ進み、そうでない場合（ステップＳ４０１：Ｎ）には処理はＳ４０３に進む。
【００９６】
ステップＳ４０２においてエッジ点決定処理部５３は、第１候補ＰｔＬの内側かつ所定距離Ｔｄ１の範囲内に存在する第２候補Ｄを左辺のエッジ点に定める。エッジ点決定処理部５３は、決定した左辺のエッジ点をエッジ点記憶部５７に記憶する。その後処理はステップＳ４０４へ進む。ステップＳ４０３においてエッジ点決定処理部５３は、第１候補ＰｔＬを左辺のエッジ点に定める。エッジ点決定処理部５３は、決定した左辺のエッジ点をエッジ点記憶部５７に記憶する。その後処理はステップＳ４０４へ進む。
【００９７】
ステップＳ４０４においてエッジ点決定処理部５３は、右辺の第１候補ＰｔＲの内側かつ所定距離Ｔｄ１の範囲内に第２候補Ｄが存在するか否かを判断する。第１候補ＰｔＲの内側かつ所定距離Ｔｄ１の範囲内に第２候補Ｄが存在する場合（ステップＳ４０４：Ｙ）には、処理はＳ４０５へ進み、そうでない場合（ステップＳ４０４：Ｎ）には処理はＳ４０６に進む。
【００９８】
ステップＳ４０５においてエッジ点決定処理部５３は、第１候補ＰｔＲの内側かつ所定距離Ｔｄ１の範囲内に存在する第２候補Ｄを右辺のエッジ点に定める。エッジ点決定処理部５３は、決定した右辺のエッジ点をエッジ点記憶部５７に記憶する。その後処理は終了する。ステップＳ４０６においてエッジ点決定処理部５３は、第１候補ＰｔＲを右辺のエッジ点に定める。エッジ点決定処理部５３は、決定した右辺のエッジ点をエッジ点記憶部５７に記憶する。その後処理は終了する。
【００９９】
＜２．２．４  ノイズ除去処理部＞
次に、ノイズ除去処理部５４の処理を説明する。図２０は、ノイズ除去処理部５４の処理の一例の説明図である。ステップＳ５００においてノイズ除去処理部５４は、所定距離Ｔｄ２を決定する。所定距離Ｔｄ２は、隣接するラインで検出されたエッジ点間がどれだけ離れたらノイズと判断するかを定める。
【０１００】
ステップＳ５０１においてノイズ除去処理部５４は、エッジ点決定処理部５３が決定したエッジ点から注目エッジ点を選択する。ステップＳ５０２においてノイズ除去処理部５４は、注目エッジ点が検出された走査ラインの隣接ラインで検出された他のエッジ点と注目エッジ点との距離が所定距離Ｔｄ２よりも大きいか否かを判断する。他のエッジ点と注目エッジ点が所定距離Ｔｄ２よりも大きい場合（ステップＳ５０２：Ｙ）には、処理はステップＳ５０３へ進む。他のエッジ点と注目エッジ点が所定距離Ｔｄ２以下の場合（ステップＳ５０２：Ｎ）には、処理はステップＳ５０４へ戻る。
【０１０１】
ステップＳ５０３においてノイズ除去処理部５４は、注目エッジ点に関する座標データをエッジ点記憶部５７から除去する。その後処理はステップＳ５０５へ進む。ステップＳ５０４においてノイズ除去処理部５４は、注目エッジ点を原稿領域のエッジを構成するエッジ点として確定する。その後処理はステップＳ５０５へ進む。
【０１０２】
ステップＳ５０５においてノイズ除去処理部５４は、ステップＳ５０１〜Ｓ５０４で全てのエッジ点を処理したか否かを判断する。全てのエッジ点が処理された場合（ステップＳ５０５：Ｙ）には、処理は終了する。処理されていないエッジ点がある場合（ステップＳ５０５：Ｎ）には、処理はステップＳ５０６へ進む。ステップＳ５０６においてノイズ除去処理部５４は、未処理のエッジ点を注目画素として選択する。その後処理は、ステップＳ５０２へ進む。
【０１０３】
＜２．３．  実施例の効果＞
本実施例によれば、フレア発生時におけるエッジ検出に好適な微分演算処理が用いられることにより、フレア発生時におけるエッジの検出精度が向上する。さらに、本実施例によれば、微分演算処理で検出される第２候補と、他の検出処理（実施例ではパターンマッチング処理）で検出される第１候補の位置関係によって、フレアの発生を判定し、フレア発生時に微分演算処理による検出結果を使用する。このため、フレア以外の要因によって微分演算処理が誤検出を生じる可能性を低減する。
【０１０４】
また、本実施例によれば、第１候補及び第２候補から選んだエッジ点が誤検出された座標であっても、ノイズ除去処理が、エッジ点間の連続性を判断することでノイズとして除去する。これにより、エッジ点の誤検出数をさらに低減することが可能となる。
【０１０５】
なお、エッジ点の検出において走査する画素の密度をより高め、かつ走査対象の画素をより増やすことによって、エッジ点の検出精度を高めることができる。しかし走査対象画素が増大すると、画素情報を格納するメモリ容量、検出処理及び消費電力が増大する。これらの問題を避けるためには、走査対象の画素を間引くことが考えられる。
【０１０６】
図２１の（Ａ）及び図２１の（Ｂ）は、走査対象の画素が間引かれた場合の走査される対象画素の説明図である。点線で区切られる方眼は各画素の位置を示し、一点鎖線ｒは、画像データ中の原稿領域のエッジの位置を示す。また直線Ｌ１〜Ｌ７は、画素を走査してエッジ点を検出する走査ラインであり、走査ラインＬ１〜Ｌ４は主走査方向に沿って延び、走査ラインＬ５〜Ｌ７は副走査方向に沿って延びる。また実線の矩形は走査対象の画素を示す。
【０１０７】
図２１の（Ａ）の例では、走査ラインは複数の画素を隔てて配列され、１つの走査ライン内でも複数画素おきに離間した画素でエッジが検出される。このため例えば、走査ラインＬ２上の原稿領域ｒのエッジ点ｐ２は、走査対象画素ｐ３の位置で検出される。また、走査ラインＬ６及びＬ７上の原稿領域ｒのエッジ点ｐ１及びｐ４は、走査対象画素ｐ３及びｐ５の位置で検出される。このため図２１の（Ａ）の例では、間引かれた画素数に応じた大きさの位置誤差が生じる。
【０１０８】
図２１の（Ｂ）の例は、走査ラインは複数の画素を隔てて配列されるが、１つの走査ライン内では連続する画素でエッジが検出される。このため、例えば、走査ラインＬ２上の原稿領域ｒのエッジ点ｐ２、走査ラインＬ６及びＬ７上の原稿領域ｒのエッジ点ｐ１及びｐ４は、それぞれ元の位置ｐ２、ｐ１及びｐ４で検出される。このため図２１の（Ｂ）の例では、画像データの画素密度に応じた位置誤差しか生じない。したがって、図２１の（Ｂ）のように走査対象画素を間引くことによって、検出位置の精度を保ったまま、メモリ容量、検出処理及び消費電力を低減することができる。
【０１０９】
＜３．他の実施例＞
続いて、画像処理制御部１７の他の実施例について説明する。図２２の（Ａ）は、ノイズ除去処理部５４におけるノイズ除去処理の第２例の説明図である。ノイズ除去処理部５４は、注目エッジ点と隣接ラインのエッジ点とを通る直線と、走査ラインに直交する方向とのなす角度が所定角度よりも大きい場合に、注目エッジ点がノイズと判断する。例えばノイズ除去処理部５４は、注目画素ｐ２と直前に注目した隣接ラインのエッジ点ｐ１とを通る直線Ｌ１と、走査ラインに直交する方向ｒｄとのなす角度θ１が、所定角度よりも大きいか否かを判断する。角度θ１が所定角度以下であれば、ノイズ除去処理部５４は注目画素ｐ２をノイズとして除去せずに原稿領域のエッジ点として確定する。
【０１１０】
一方で、ノイズ除去処理部５４は、注目画素ｐ３と直前に注目した隣接ラインのエッジ点ｐ２とを通る直線Ｌ２と、方向ｒｄとのなす角度θ２が、所定角度よりも大きいか否かを判断する。角度θ２が所定角度よりも大きければ、ノイズ除去処理部５４は注目画素ｐ３をノイズとして除去する。
【０１１１】
本処理によってもノイズ除去処理部５４は、誤検出されたエッジ点を除去することができる。なお、走査ライン間の間隔が予め判っている場合には、走査ラインに沿った座標軸方向におけるエッジ点の座標値によって、隣接ラインのエッジ点を通る直線と方向ｒｄとのなす角度が所定角度を超えるか否かを判断してよい。
【０１１２】
図２２の（Ｂ）は、ノイズ除去処理部５４におけるノイズ除去処理の第３例の説明図である。ノイズ除去処理部５４は、複数の走査ラインで決定されたエッジ点ｐ１〜ｐ７に基づいて原稿領域ｒの境界線ＢＬの近似直線ＡＬを算出する。ノイズ除去処理部５４は、例えばハフ変換や最小二乗法により近似直線ＡＬを算出してよい。ノイズ除去処理部５４は、近似直線ＡＬと、注目エッジ点との間の距離が所定長より長い場合に、注目エッジ点をノイズであると判断する。例えばノイズ除去処理部５４は、近似直線ＡＬから所定長以下の距離ｄ１の位置にあるエッジ点ｐ２をノイズとして除去せずに原稿領域のエッジ点として確定する。一方でノイズ除去処理部５４は、近似直線ＡＬから所定長より大きい距離ｄ２の位置にあるエッジ点ｐ５をノイズとして除去する。
【０１１３】
本処理によってもノイズ除去処理部５４は、誤検出されたエッジ点を除去することができる。なお、図１５を参照して説明したノイズ除去処理の第１例では、注目エッジ点との間の距離が判断される隣接ラインのエッジ点がノイズであると、エッジ近くで検出された注目エッジ点もノイズとして除去されることがある。図１５に示すエッジ点ｐ４は、原稿領域ｒのエッジ近くで検出されているが、隣接ラインのエッジ点ｐ３がノイズであるためエッジ点ｐ３とｐ４の距離が大きくなりノイズとして検出される。ノイズ除去処理の第２例でも同様の現象が生じる。
【０１１４】
ノイズ除去処理の第３例によれば、隣接ラインのエッジ点との位置関係に関わらず注目エッジ点がノイズであるか否かを判断する。このため、隣接ラインのエッジ点ｐ３がノイズであることによって注目エッジ点がノイズと誤判定されることが防止される。
【符号の説明】
【０１１５】
１    画像処理システム
１０    画像読取装置
１７    画像処理制御部
３０    コンピュータ装置
５０    画像入力部
５１    パターンマッチング処理部
５２    微分演算処理部
５３    エッジ点決定処理部
５４    ノイズ除去処理部
【図１】
0005755089.tif 000002
【図２】
0005755089.tif 000003
【図３】
0005755089.tif 000004
【図５】
0005755089.tif 000005
【図６】
0005755089.tif 000006
【図７】
0005755089.tif 000007
【図８】
0005755089.tif 000008
【図９】
0005755089.tif 000009
【図１０】
0005755089.tif 000010
【図１１】
0005755089.tif 000011
【図１２】
0005755089.tif 000012
【図１３】
0005755089.tif 000013
【図１４】
0005755089.tif 000014
【図１５】
0005755089.tif 000015
【図１６】
0005755089.tif 000016
【図１７】
0005755089.tif 000017
【図１８】
0005755089.tif 000018
【図１９】
0005755089.tif 000019
【図２０】
0005755089.tif 000020
【図２１】
0005755089.tif 000021
【図２２】
0005755089.tif 000022
【図４】
0005755089.tif 000023