(57)【特許請求の範囲】
【請求項１】
読取デバイスと、
前記読取デバイスによって読み取られた白基準部材の読取画像を表す画像データである白画像データ、及び、前記読取デバイスによって読み取られた原稿の読取画像を表す画像データである原稿画像データを取得する取得ユニットと、
前記取得ユニットにより取得された前記原稿画像データが示す各画素の濃度値を、前記白画像データに基づきシェーディング補正することによって、前記各画素の濃度値を所定階調数の階調値で表した補正画像データを生成する第一補正ユニットであって、前記原稿画像データが示す各画素の濃度値を、前記所定階調数の階調値の範囲内で前記濃度値に比例した階調値で表し、前記白画像データにおける同一画素の濃度値と一致する濃度値を示す前記原稿画像データ内の画素の濃度値を、前記濃度値に比例した階調値であって前記範囲における最大階調値より低い目標階調値で表した前記補正画像データを生成する第一補正ユニットと、
前記第一補正ユニットにより生成された前記補正画像データにおける原稿エッジを検出するエッジ検出ユニットと、
前記第一補正ユニットにより生成された前記補正画像データをガンマ補正することにより、ガンマ補正後の前記補正画像データとして、各画素の階調値を前記所定階調数の階調値で表した多階調画像データを生成する第二補正ユニットであって、ガンマ補正前の前記補正画像データにおける前記目標階調値を、前記ガンマ補正後において前記目標階調値より高い特定階調値で表し、前記ガンマ補正前において前記範囲における最小階調値以上且つ前記目標階調値未満の階調値を、前記ガンマ補正後において前記最小階調値以上且つ前記特定階調値未満の階調値で表し、前記ガンマ補正前において前記目標階調値より大きい階調値を、前記ガンマ補正後において前記特定階調値以上且つ前記最大階調値以下の階調値で表すように、前記補正画像データが示す前記各画素の階調値を補正して、前記多階調画像データを生成する第二補正ユニットと、
を備え、
前記エッジ検出ユニットは、前記第一補正ユニットにより生成された前記補正画像データに対して第二のガンマ補正を実行し、前記第二のガンマ補正後の前記補正画像データにおいて前記原稿エッジを検出し、前記第二のガンマ補正では、前記第二のガンマ補正前の前記補正画像データにおける前記目標階調値を、前記第二のガンマ補正後において前記目標階調値より低い第二の特定階調値で表し、前記第二のガンマ補正前において前記最小階調値以上且つ前記目標階調値未満の階調値を、前記第二のガンマ補正後において前記最小階調値以上且つ前記第二の特定階調値未満の階調値で表し、前記第二のガンマ補正前において前記目標階調値より大きい且つ前記最大階調値以下の階調値を、前記第二のガンマ補正後において前記第二の特定階調値より大きい且つ前記最大階調値以下の階調値で表すように、前記補正画像データが示す前記各画素の階調値を補正する画像読取システム。
【請求項２】
前記第一補正ユニットは、前記原稿画像データが示す各画素の濃度値Ｃを、この濃度値Ｃに前記白画像データにおける同一画素の濃度値Ｃ１と前記目標階調値Ｃ２との比Ｃ２／Ｃ１を掛けた値Ｃ・Ｃ２／Ｃ１に対応した階調値に補正するように構成され、
前記目標階調値Ｃ２は、前記原稿画像データにおいて最も大きい濃度値を示す画素の当該濃度値に前記比Ｃ２／Ｃ１を掛けた値が、前記最大階調値以下となる階調値である請求項１記載の画像読取システム。
【請求項３】
前記特定階調値は、前記最大階調値であり、
前記第二補正ユニットは、前記第一補正ユニットにより生成された前記補正画像データにおいて前記目標階調値より大きい階調値を前記最大階調値に補正し、前記目標階調値以下の階調値を、前記最小階調値から前記最大階調値までの範囲内の階調値に補正することにより、前記多階調画像データを生成する請求項１又は請求項２記載の画像読取システム。
【請求項４】
前記エッジ検出ユニットは、前記第二のガンマ補正後の前記補正画像データにおける各画素の階調値を、隣接画素との平均値に補正することにより、前記補正画像データを移動平均処理し、移動平均処理後の前記補正画像データを、更に微分処理し、微分処理後の前記補正画像データに基づき、前記原稿エッジの位置を検出する請求項１〜請求項３のいずれか一項記載の画像読取システム。
【請求項５】
前記エッジ検出ユニットは、前記微分処理後の前記補正画像データを二値化処理し、二値化処理後の前記補正画像データにおいて前記原稿エッジに対応する画素であると推定されるエッジ画素の一群を検出し、検出された前記エッジ画素の一群の近似直線を算出することにより、前記原稿エッジを検出する請求項４記載の画像読取システム。
【請求項６】
前記第二補正ユニットにより生成された前記多階調画像データにおける原稿の傾きを補正する処理、及び、前記多階調画像データから前記原稿に対応する領域の画像データを抽出する処理の少なくとも一方を、前記エッジ検出ユニットにより検出された前記原稿エッジに基づき実行するように構成された画像処理ユニットを更に備える請求項１〜請求項５のいずれか一項記載の画像読取システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像読取システムに関する。
【背景技術】
【０００２】
従来、読取デバイスを用いて原稿を読み取り、原稿の読取画像を表す画像データを生成する画像読取システムが知られている。画像データにおいて原稿エッジを検出し、原稿の傾きを補正する画像読取システムもまた知られている。
【０００３】
画像読取システムの一例である特許文献１記載の原稿読取装置は、原稿外側から原稿エッジに向けて光を照射可能な光源と、原稿内側から原稿エッジに向けて光を照射可能な光源とを備える。この原稿読取装置は、原稿エッジとして原稿の先端及び後端を検出するときに、検出対象の原稿エッジにおいて短い影が生じるように、上記二つの光源の一方を選択的に点灯させる。原稿読取装置は、点灯により形成される短い影を読み取ることにより、原稿エッジを検出する。
【０００４】
読取デバイスとしては、特許文献１に記載されるような原稿に対して異なる向きで光を照射可能な複数光源を備える読取デバイスだけではなく、光源が原稿に対して単一方向を向く読取デバイスもまた知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３２８１５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
光源が単一方向を向く読取デバイスによれば、原稿エッジの検出に際して、短い影が発生するような向きで光を照射することができないケースが生じ得る。このケースでは、原稿の読取画像を表す画像データにおいて、原稿エッジが白く明るい領域として現れる。以下、画像データにおいて白く明るい領域として現れる原稿エッジのことを白エッジとも表現する。
【０００７】
白エッジが発生する場合、従来技術によれば、画像データから精度よく原稿エッジを検出することができない。このことは、原稿の傾き補正等において好ましくない影響を与える。白エッジの発生は、特許文献１記載の技術を用いて抑制することができる。しかしながら、製造コストや生産性等を考慮すると、光源が原稿に対して単一方向を向く読取デバイスを用いて原稿を読み取るケースのような白エッジが発生し得る状況でも、原稿の読取画像データから精度よく原稿エッジを検出できるのが好ましい。
【０００８】
従って、本開示の一側面では、白エッジを含む画像データから原稿エッジを精度よく検出可能な技術を提供できることが望ましい。
【課題を解決するための手段】
【０００９】
原稿の読取画像を表す画像データには、白エッジを境界に、原稿が存在する原稿領域と、原稿が存在しない非原稿領域とが隣接する。原稿が存在しない非原稿領域は、原稿の背景に位置する部材に起因して通常白い。しかしながら、白エッジは、非原稿領域よりも更に明るい領域（換言すれば高い濃度又は輝度を示す領域）として現れる。白エッジが周囲より明るい領域として現れるのは、原稿エッジの影ができる現象とは逆に、読取デバイスが光源から光を照射して受光部で反射光を受光することにより原稿エッジを読み取るときに、原稿の影響で反射光が一時的に受光部に集まりやすくなることが一因であると考えられる。本発明者らは、このように白エッジが周囲よりも明るく現れることを利用して、原稿エッジを精度よく検出することを想到するに至った。
【００１０】
この白エッジの特徴を利用して原稿エッジを検出する本開示の一側面に係る画像読取システムは、読取デバイスと、取得ユニットと、第一補正ユニットと、エッジ検出ユニットと、第二補正ユニットと、を備える。
【００１１】
取得ユニットは、読取デバイスによって読み取られた白基準部材の読取画像を表す画像データである白画像データ、及び、読取デバイスによって読み取られた原稿の読取画像を表す画像データである原稿画像データを取得する。
【００１２】
第一補正ユニットは、取得ユニットにより取得された原稿画像データが示す各画素の濃度値を、白画像データに基づきシェーディング補正することによって、各画素の濃度値を所定階調数の階調値で表した補正画像データを生成する。第一補正ユニットは、原稿画像データが示す各画素の濃度値を、所定階調数の階調値の範囲内で濃度値に比例した階調値で表した上記補正画像データを生成する。原稿画像データにおいて、白画像データにおける同一画素の濃度値と一致する濃度値を示す画素の濃度値は、上記補正画像データにおいて、上記濃度値に比例した階調値であって最大階調値より低い目標階調値で表される。シェーディング補正に用いられる上記原稿画像データ及び白画像データは、黒基準データに基づく黒補正後のデータであり得る。
【００１３】
エッジ検出ユニットは、上述した第一補正ユニットにより生成された補正画像データにおける原稿エッジを検出するように構成される。
第二補正ユニットは、第一補正ユニットにより生成された補正画像データをガンマ補正することにより、ガンマ補正後の補正画像データとして、各画素の階調値を所定階調数の階調値で表した多階調画像データを生成するように構成される。
【００１４】
第二補正ユニットは、ガンマ補正時、上記補正画像データにおける目標階調値を、目標階調値より高い階調値に補正する。このようにして、第二補正ユニットは、ガンマ補正前の補正画像データにおける目標階調値を、ガンマ補正後において目標階調値より高い特定階調値で表し、ガンマ補正前において最小階調値以上且つ目標階調値未満の階調値を、ガンマ補正後において最小階調値以上且つ特定階調値未満の階調値で表し、ガンマ補正前において目標階調値より大きい階調値を、ガンマ補正後において特定階調値以上且つ最大階調値以下の階調値で表すように、補正画像データが示す各画素の階調値を補正し、上記多階調画像データを生成する。
【００１５】
従来技術によれば、シェーディング補正時、原稿の読取画像を表す画像データにおける各画素の濃度値を、白画像データにおける同一画素の濃度値と一致するときに最大階調値に補正するように、所定階調数の階調値に補正する。これにより、シェーディング補正後の画像データとして、各画素の階調値を所定ビットで表した所定階調数の補正画像データを生成し、更にこれをガンマ補正して、原稿の多階調画像データを生成する。
【００１６】
このようなシェーディング補正は、原稿の多階調画像データを高画質に生成することに貢献する。しかしながら、このシェーディング補正によれば、シェーディング補正後の画像データにおいて白エッジの階調値が非原稿領域と同じく最大階調値（白）を示すことになる。即ち、従来のシェーディング補正によれば、白エッジの特徴（周囲より明るい特徴）が失われることから、補正後の画像データにおいて原稿エッジを高精度に検出することが難しくなる。
【００１７】
そこで、本開示の一側面に係る画像読取システムでは、シェーディング補正時に、白画像データにおける同一画素の濃度値と一致する濃度値を示す画素の当該濃度値を、最大階調値より低い目標階調値に変換するように、原稿画像データが示す各画素の濃度値を階調値に変換する。これにより、白エッジの特徴が補正画像データにおいて失われるのを抑制する。そして、この補正画像データに基づき、原稿エッジを検出する。
【００１８】
更に、上記補正画像データから原稿の多階調画像データを生成する際、最小階調値から目標階調値までの範囲で表される階調値を、より広い範囲の階調値で表すように、各画素の階調値をガンマ補正する。
【００１９】
従って、本開示の一側面に係る画像読取システムでは、原稿画像データを、第一補正ユニットにより、原稿エッジの検出に適した画像データに補正することができると共に、このような補正によって原稿の画質が低下しないように、第二補正ユニットにより、補正画像データを適切にガンマ補正し、高品質な原稿の多階調画像データを生成することができる。よって、本開示の一側面に係る画像読取システムによれば、白エッジが発生し得る状況でも、高画質な原稿の画像データを生成しつつ、原稿エッジを精度よく検出できる。
【００２０】
ところで、第一補正ユニットは、原稿画像データが示す各画素の濃度値Ｃを、この濃度値Ｃに、白画像データにおける同一画素の濃度値Ｃ１と目標階調値Ｃ２との比Ｃ２／Ｃ１を掛けた値Ｃ・Ｃ２／Ｃ１に対応した階調値に補正するように構成され得る。この目標階調値Ｃ２は、原稿画像データにおいて最も大きい濃度値を示す画素の当該濃度値に比Ｃ２／Ｃ１を掛けた値が、最大階調値以下となる階調値に定められ得る。このような目標階調値Ｃ２は、試験により求めることが可能である。
【００２１】
この目標階調値Ｃ２を用いて原稿画像データをシェーディング補正し、原稿エッジの検出に用いる補正画像データを生成すれば、補正画像データにおいて、白エッジ周辺の階調値が最大階調値で飽和しない。即ち、白エッジが周辺画素に対して目立たなくなるのを抑えることができる。従って、補正画像データに基づき、高精度に原稿エッジを検出することができる。
【００２２】
この他、上記特定階調値は、最大階調値であってもよい。即ち、第二補正ユニットは、第一補正ユニットにより生成された補正画像データにおいて目標階調値より大きい階調値を最大階調値に補正し、目標階調値以下の階調値を、最小階調値から最大階調値までの範囲内の階調値に補正することにより、原稿の多階調画像データを生成するように構成されてもよい。この場合には、多階調画像データにおいて、原稿の読取画像を採り得る階調値の全範囲を用いて表現することができ、高画質な原稿の多階調画像データを生成することができる。
【００２３】
また、エッジ検出ユニットは、第一補正ユニットにより生成された補正画像データに対して第二のガンマ補正を実行し、第二のガンマ補正後の補正画像データにおいて原稿エッジを検出するように構成されてもよい。例えば、エッジ検出ユニットは、補正画像データを、目標階調値より大きい階調値を示す画素が強調されるようにガンマ補正して、原稿エッジを検出するように構成され得る。
【００２４】
エッジ検出ユニットは、第二のガンマ補正前の補正画像データにおける目標階調値を、第二のガンマ補正後において目標階調値より低い第二の特定階調値で表し、第二のガンマ補正前において最小階調値以上且つ目標階調値未満の階調値を、第二のガンマ補正後において最小階調値以上且つ第二の特定階調値未満の階調値で表し、第二のガンマ補正前において目標階調値より大きい且つ最大階調値以下の階調値を、第二のガンマ補正後において第二の特定階調値より大きい且つ最大階調値以下の階調値で表すように、補正画像データが示す各画素の階調値を補正する処理を、上記第二のガンマ補正として実行する構成にされ得る。このようにガンマ補正された補正画像データに基づけば、高精度に原稿エッジを検出することができる。
【００２５】
エッジ検出ユニットは、上記第二のガンマ補正後の補正画像データ又は第一補正ユニットにより生成された補正画像データにおける各画素の階調値を、隣接画素との平均値に補正することにより、補正画像データを移動平均処理し、移動平均処理後の補正画像データを、更に微分処理し、微分処理後の補正画像データに基づき、原稿エッジを検出するように構成されてもよい。
【００２６】
エッジ検出ユニットは、微分処理後の補正画像データを二値化処理し、二値化処理後の補正画像データにおいて原稿エッジに対応する画素であると推定されるエッジ画素の一群を検出し、検出されたエッジ画素の一群の近似直線を算出することにより、原稿エッジを検出するように構成されてもよい。
【００２７】
上述した画像読取システムは、第二補正ユニットにより生成された多階調画像データにおける原稿の傾きを補正する処理、及び、多階調画像データから原稿に対応する領域の画像データを抽出する処理の少なくとも一方を、エッジ検出ユニットにより検出された原稿エッジに基づき実行する画像処理ユニットを更に備えた構成にされてもよい。
【図面の簡単な説明】
【００２８】
【図１】本開示の例示的実施形態における複合機の一部構成を表す断面図である。
【図２】複合機が備える原稿押さえ部材の周囲を拡大した断面図である。
【図３】白エッジの発生原理を、原稿押さえ部材の角度に基づいて説明した図である。
【図４】白エッジの発生原理を、光源と受光部との関係から説明した図である。
【図５】副走査方向の画素に対する濃度値の変化を示したグラフである。
【図６】複合機の電気的構成を表すブロック図である。
【図７】ＣＰＵが実行するＡＤＦ読取処理を表すフローチャートである。
【図８】スキャン回路及びスキャンバイパス回路の構成を表すブロック図である。
【図９】スキャン回路が備えるガンマ補正回路の入出力特性を示すグラフである。
【図１０】図１０Ａ及び図１０Ｂは、スキャンバイパス回路が備えるガンマ補正回路の入出力特性の第一例及び第二例を示すグラフである。
【図１１】原稿エッジ検出回路の構成を表すブロック図である。
【図１２】移動平均処理回路、微分処理回路、及び二値化回路で実行される処理を説明した図である。
【図１３】図１３Ａ及び図１３Ｂは、微分フィルタの構成を表す図である。
【図１４】エッジ抽出回路で生成されるエッジ位置データの構成を表す図である。
【図１５】図１５Ａは、エッジ検出用画像データにおける原稿エッジの配置を例示した図であり、図１５Ｂは、近似直線を用いた原稿エッジの検出方法を説明した図である。
【図１６】エッジ位置データに基づきＣＰＵが実行する処理を説明した図である。
【発明を実施するための形態】
【００２９】
以下に本開示の例示的実施形態を、図面と共に説明する。
図１に示す本実施形態の複合機１は、スキャナ装置、プリンタ装置及びコピー装置としての機能を有する。図１に示される複合機１の構成は、複合機１の上部構成である。複合機１は、上部に、スキャナ装置に対応する機械的構造を備える。プリンタ装置に対応する機械的構造は、図１に示されない複合機１の下部に設けられる。以下の説明では、複合機１の各部の相対的な位置関係を、図１及び図２に示す上下及び前後の各方向を利用して説明する。
【００３０】
複合機１は、スキャナ装置に対応する構造として、フラットベッド部３Ａと、カバー部３Ｂと、を有する。カバー部３Ｂは、フラットベッド部３Ａに対して開閉可能に取り付けられる。カバー部３Ｂが閉じられた状態において、フラットベッド部３Ａの上面は、カバー部３Ｂによって覆われる。
【００３１】
カバー部３Ｂは、図１において破線で示される搬送経路に沿って原稿Ｑを搬送する搬送部１０を備える。搬送部１０は、供給ローラ１１、分離ローラ１２、中継ローラ対１３、Ｕターン搬送ローラ１４、排出ローラ対１５などを備える。カバー部３Ｂは更に、供給トレイ１６、及び排出トレイ１７を備える。
【００３２】
供給トレイ１６に載置される原稿Ｑは、破線で示される搬送経路に沿って搬送されて、排出トレイ１７へと排出される。供給ローラ１１によって供給トレイ１６から搬送方向下流へと送り出される原稿は、分離ローラ１２によって１枚ずつに分離される。この原稿Ｑは、中継ローラ対１３やＵターン搬送ローラ１４によって更に下流に搬送されて、排出ローラ対１５によって排出トレイ１７上に排出される。
【００３３】
カバー部３Ｂは更に、中継ローラ対１３とＵターン搬送ローラ１４との間に、原稿押さえ部材１９を備える。原稿押さえ部材１９は、プラテンガラス１８に対向配置されて、搬送経路を通過する原稿Ｑを、プラテンガラス１８に押さえつける。プラテンガラス１８は、透明部材としてフラットベッド部３Ａの開口部を閉塞するように設けられる。
【００３４】
上記搬送経路に沿って搬送される原稿Ｑは、中継ローラ対１３とＵターン搬送ローラ１４との間において、プラテンガラス１８の上面に接触しながら、原稿押さえ部材１９の下方を通過する。原稿押さえ部材１９は、ばね２０によって付勢され、下方を通過する原稿Ｑがプラテンガラス１８から浮き上がるのを抑制する。
【００３５】
フラットベッド部３Ａには、図１に示すように、ガイド部２１、キャリッジ２２、ラインセンサ２３、ばね２４、及び、スペーサー２５などが配設されている。ガイド部２１は、前後方向に延在する。キャリッジ２２は、前後方向へ往復移動可能な状態でガイド部２１に支持される。キャリッジ２２は、図示しないタイミングベルトに連結され、タイミングベルトが循環駆動されるのに追従して、ガイド部２１に沿って前後方向、即ち、図１の矢印Ｓ１で示される方向へ往復移動する。
【００３６】
このキャリッジ２２に搭載されるラインセンサ２３は、図１において紙面法線方向に受光素子がライン状に配列されたコンタクトイメージセンサ（ＣＩＳ）である。以下、この受光素子の配列方向のことを主走査方向とも称する。
【００３７】
ラインセンサ２３は、キャリッジ２２と共に前後方向へ往復移動する。図１では、一つのキャリッジ２２及びラインセンサ２３を、最も前方へ移動した状態、及び、最も後方へ移動した状態のキャリッジ２２及びラインセンサ２３として重複表示している。図１に示される二つのキャリッジ２２及びラインセンサ２３の実体は、一つのキャリッジ２２及びラインセンサ２３であることに留意されたい。
【００３８】
ラインセンサ２３とキャリッジ２２との間には、ばね２４が介装されており、ラインセンサ２３は、上向きに付勢されている。ラインセンサ２３には、スペーサー２５が更に取り付けられている。ラインセンサ２３と共に上向きに付勢されるスペーサー２５は、プラテンガラス１８の下面に接触する。これにより、ラインセンサ２３がキャリッジ２２と共に往復移動する際、スペーサー２５はプラテンガラス１８の下面に接触する状態を維持し、ラインセンサ２３は、プラテンガラス１８との間の距離を一定に維持して前後に移動する。
【００３９】
複合機１は、フラットベッド読取モード及びＡＤＦ読取モードを有する。フラットベッド読取モードは、プラテンガラス１８の上面に載置された原稿Ｑの画像を読み取るための読取モードである。フラットベッド読取モードにおいて、キャリッジ２２は前後に搬送される。ラインセンサ２３は、キャリッジ２２と共に移動しながら、プラテンガラス１８の上面に載置された原稿Ｑを読み取る。
【００４０】
ＡＤＦ読取モードは、搬送部１０によって原稿Ｑを搬送しながら、原稿Ｑを読み取るための読取モードである。ＡＤＦ読取モードにおいて、ラインセンサ２３は、原稿押さえ部材１９と対向する地点で静止する。ラインセンサ２３は、この地点で、搬送部１０によって搬送される原稿Ｑを読み取る。即ち、複合機１は、上述の主走査方向とは直交する方向へ原稿Ｑとラインセンサ２３との相対位置を変化させつつ、原稿Ｑを読み取る。以下、この主走査方向とは直交する相対移動方向のことを副走査方向とも称する。
【００４１】
付言すると、原稿押さえ部材１９は、プラテンガラス１８と対向する面として白い面を有する。即ち、原稿押さえ部材１９の下方を通過する原稿Ｑがラインセンサ２３により読み取られるとき、原稿Ｑの背景色は白である。
【００４２】
図２に示す原稿押さえ部材１９周辺の拡大図からも理解できるように、原稿押さえ部材１９から少し離れたプラテンガラス１８上の位置には、白基準部材２７、及び、白基準部材２７を固定配置するための白基準押さえ部材２８が設けられる。ラインセンサ２３は、原稿Ｑを読み取る前に、白基準部材２７を読み取ることにより、シェーディング補正に必要な白基準データ及び黒基準データを生成する。
【００４３】
このラインセンサ２３は、図３に示すように光源２３Ａと、受光部２３Ｂと、その他の光学系２３Ｃとを備える。受光部２３Ｂは、画素毎の受光素子が上述したように主走査方向に配列された構成にされる。光源２３Ａは、受光部２３Ｂよりも原稿Ｑの搬送経路下流に配置されて、下流から上流に向けて斜め上の角度で光を照射して、原稿押さえ部材１９の下方を通過する原稿Ｑを、プラテンガラス１８を介して照らすように構成される。
【００４４】
ラインセンサ２３が光源２３Ａから光を照射して原稿Ｑを読み取るとき、ラインセンサ２３による読取動作により生成される原稿Ｑの読取画像データには、原稿エッジが含まれる。ここで、ＡＤＦ読取モードでの原稿読取時に読取画像データに含まれる原稿エッジの特徴を説明する。
【００４５】
本実施形態においては、光源２３Ａが原稿Ｑの搬送経路下流から原稿Ｑを照らすように配置されていることから、原稿エッジは、原稿Ｑの読取画像データにおいて白エッジとして現れる。また、この読取画像データには、白エッジを境界に、原稿Ｑが存在する原稿領域と、原稿Ｑが存在しない非原稿領域とが隣接するが、白エッジは、非原稿領域よりも更に明るい領域（換言すれば高い濃度又は輝度を示す領域）として現れる。
【００４６】
正確な原因ははっきりとしないが、白エッジが周囲画素より明るく現れることの一因は、原稿エッジが原稿押さえ部材１９の下方を通過する際、反射光が受光部２３Ｂに集まる方向に、光源２３Ａからの光路が変化することにあると考えられる。例えば、図３上段に示すように、原稿押さえ部材１９下方への原稿Ｑの侵入初期には、原稿押さえ部材１９が、原稿Ｑの厚みにより浮き上がり、原稿押さえ部材１９の下面が、プラテンガラス１８に対して傾斜した状態になる。しかしながら、原稿Ｑが原稿押さえ部材１９に一定程度侵入すると、原稿押さえ部材１９の浮き上がりは、図３下段に示すように解消され、下面の傾斜も解消される。この傾斜の解消前後においては、受光部２３Ｂに侵入する反射光の光量が大きく変化し、一時的に受光部２３Ｂでの受光量が増えることが原因で、白エッジが周囲より明るく現れると考えられる。
【００４７】
別の要因は、原稿押さえ部材１９から作用する力によって、原稿の側壁が図４に示すように、プラテンガラス１８に対して垂直ではなく傾斜した状態になり、傾斜した側壁からの反射光で受光部２３Ｂでの受光量が増えて、白エッジが周囲より明るく現れることが考えられる。
【００４８】
図５には、読取画像データにおける濃度（換言すれば輝度）の変化を、読取画像データにおける副走査方向の画素を横軸に示し、濃度を縦軸に示すグラフで例示する。図５における位置Ｘａは、原稿Ｑの先端エッジに対応し、位置Ｘｂは、原稿Ｑの後端エッジに対応する。位置Ｘａと位置Ｘｂとの間は、原稿領域であり、その他は、非原稿領域である。非原稿領域の濃度は、原稿押さえ部材１９の下面の濃度に対応する。
【００４９】
図５に示す一点鎖線は、ラインセンサ２３が光源２３Ａで白基準部材２７を照らして白基準部材２７を読み取ったときの白基準部材２７の濃度、即ち、白基準データの濃度に対応し、図５に示す二点鎖線は、ラインセンサ２３が光源２３Ａを点灯させずに白基準部材２７を読み取ったときの白基準部材２７の濃度、即ち、黒基準データの濃度に対応する。
【００５０】
シェーディング補正では、原稿Ｑの読取画像データが表す各画素の濃度値を、所定ビット（例えば８ビット）の階調値に変換する。このとき、従来のシェーディング補正では、白基準データの濃度で最大階調値を採り、黒基準データの濃度で最小階調値（ゼロ）を採るように、原稿Ｑの読取画像データが表す各画素の濃度値を、階調値に変換する。
【００５１】
このような従来のシェーディング補正は、読取画像データにおいて原稿Ｑを階調豊かに表現するのには有効である一方、位置Ｘａに示される白エッジの濃度値が周囲画素と同様に最大階調値に変更されてしまうため、白エッジが周囲画素より明るいという特徴がシェーディング補正により失われてしまう。このことが原因で、シェーディング補正後の読取画像データにおいては、白エッジを原稿エッジとして検出することが難しくなる。
【００５２】
本実施形態の複合機１は、このようなシェーディング補正による原稿エッジの検出精度の劣化を抑えるため、図５において破線で示されるような白エッジのピーク以上の濃度値を、最大階調値に変換するように、シェーディング補正を行う。そして、このシェーディング補正後の読取画像データに基づき、原稿エッジを検出する。以下では、このような特徴を含む複合機１の構成を、更に詳細に説明する。
【００５３】
本実施形態の複合機１は、図６に示されるように、ＣＰＵ３１と、ＲＯＭ３３と、ＲＡＭ３５と、ＮＶＲＡＭ３７と、通信インタフェース３９と、読取部４０と、読取制御回路５０と、スキャン回路７０と、スキャンバイパス回路８０と、原稿エッジ検出回路９０と、原稿補正回路１００と、画像処理回路１１０と、記録部１２０とを備える。
【００５４】
ＣＰＵ３１は、ＲＯＭ３３に記録されたプログラムに従う処理を実行し、複合機１全体を統括制御する。ＲＯＭ３３は、プログラムと共に、プログラムに供されるデータを記憶する。ＲＡＭ３５は、ＣＰＵ３１による処理実行時に、作業用メモリとして使用される。ＮＶＲＡＭ３７は、電気的にデータ書換可能なメモリであり、例えば、フラッシュメモリとして構成される。通信インタフェース３９は、外部装置と通信可能な構成にされ、外部装置から指示を受信したり、読取動作により生成された原稿の多階調画像データを外部装置に送信したりする。
【００５５】
読取部４０は、ラインセンサ２３、及び搬送機構４１を備える。この搬送機構４１は、上述したキャリッジ２２を副走査（前後）方向に搬送する機構、及び、原稿Ｑを副走査方向に搬送する機構（搬送部１０）を含む。
【００５６】
読取制御回路５０は、ＣＰＵ３１からの指示に従って、ラインセンサ２３及び搬送機構４１を制御する。スキャン回路７０は、ラインセンサ２３から入力される原稿Ｑの読取画像データを、アナログ信号からディジタル信号に変換し、変換後の読取画像データに対してシェーディング補正及びガンマ補正を施すことにより、原稿Ｑの多階調画像データを生成し、これをＲＡＭ３５に記録するように構成される。
【００５７】
スキャンバイパス回路８０は、スキャン回路７０から入力されるシェーディング補正後の読取画像データに対し、原稿エッジの検出に適したガンマ補正を施して、ガンマ補正後の読取画像データを、エッジ検出用画像データとしてＲＡＭ３５に記録するように構成される。
【００５８】
原稿エッジ検出回路９０は、スキャンバイパス回路８０が生成したエッジ検出用画像データをＲＡＭ３５から読み出し、このエッジ検出用画像データに対して移動平均処理、微分処理、及び、二値化処理を順に実行する。原稿エッジ検出回路９０は、この二値化処理後のエッジ検出用画像データから原稿エッジと推定される画素であるエッジ画素の一群を抽出し、エッジ画素の一群の位置を表すエッジ位置データを、ＲＡＭ３５に記録するように構成される。
【００５９】
ＣＰＵ３１は、このエッジ位置データに基づき、エッジ画素の一群の近似直線を算出することで、近似直線を原稿エッジとして検出する。更に、この原稿エッジの位置情報に基づき、原稿補正回路１００に対して動作パラメータを設定する。例えば、ＣＰＵ３１は、原稿Ｑの傾きを補正する処理の動作パラメータ、及び、原稿Ｑを抽出する処理の動作パラメータを設定する。
【００６０】
原稿補正回路１００は、ＲＡＭ３５に記録された原稿Ｑの多階調画像データを読み出し、ＣＰＵ３１からの指示に従って、この多階調画像データに対し原稿Ｑの傾きを補正する処理、及び、多階調画像データから原稿Ｑに対応する領域の画像データを抽出する処理の少なくとも一方を実行し、処理後の多階調画像データを、ＲＡＭ３５に記録するように構成される。
【００６１】
画像処理回路１１０は、原稿補正回路１００によりＲＡＭ３５に記録された上記処理後の多階調画像データに対する圧縮処理を実行し、これにより、例えば上記多階調画像データを、ＪＰＥＧ圧縮方式の画像データに変換して、変換後の多階調画像データをＲＡＭ３５に記録する。画像処理回路１１０は、上記変換後の多階調画像データをＮＶＲＡＭ３７に記録するように構成されてもよい。
【００６２】
記録部１２０は、ＣＰＵ３１からの指示に従って、ＲＡＭ３５又はＮＶＲＡＭ３７に記録された多階調画像データや、通信インタフェース３９を通じて外部装置から入力された画像データを、用紙に印刷するように構成される。この記録部１２０は、例えばインクジェットプリンタ又はレーザプリンタとして構成される。
【００６３】
続いて、ＣＰＵ３１が実行するＡＤＦ読取処理を、図７を用いて説明する。ＡＤＦ読取処理は、上述したＡＤＦ読取モードで原稿Ｑを読み取る際に、ＣＰＵ３１により実行される。ＣＰＵ３１は、通信インタフェース３９を通じて外部装置から入力される指示、又は、図示しないユーザインタフェースを通じてユーザから入力される指示に基づいて、このＡＤＦ読取処理を実行する。
【００６４】
ＡＤＦ読取処理を開始すると、ＣＰＵ３１は、読取制御回路５０を通じて搬送部１０を制御し、搬送部１０に供給トレイ１６からの原稿Ｑの搬送動作を開始させる（Ｓ１１０）。その後、ラインセンサ２３を白基準部材２７の下方に配置し、ラインセンサ２３に光源２３Ａを点灯させた状態で白基準部材２７を読み取る処理、及び、光源２３Ａを点灯させずに白基準部材２７を読み取る処理を実行させるように、読取制御回路５０を通じてラインセンサ２３を制御する（Ｓ１２０）。この読取処理によりラインセンサ２３は、白基準データ及び黒基準データを生成する。ラインセンサ２３により生成された白基準データ及び黒基準データは、シェーディング補正のために、スキャン回路７０で保持される。
【００６５】
その後、ＣＰＵ３１は、読取制御回路５０を通じて、ラインセンサ２３を原稿押さえ部材１９の下方に配置し（Ｓ１３０）、原稿センサＤＳがオン信号を出力するまで待機する（Ｓ１４０）。
【００６６】
原稿センサＤＳは、原稿押さえ部材１９下方の読取地点よりも原稿Ｑの搬送経路上流に設けられる。原稿センサＤＳは、原稿Ｑの先端が通過すると、出力信号をオフ信号からオン信号に切り替え、その後原稿Ｑの後端が通過するまでの期間、出力信号としてオン信号を出力し、原稿Ｑの後端が通過すると、出力信号としてオフ信号を出力するように構成される。
【００６７】
ＣＰＵ３１は、原稿センサＤＳからの出力信号がオフ信号からオン信号に切り替わると（Ｓ１４０でＹｅｓ）、原稿Ｑの先端がラインセンサ２３による読取地点に近づいてきていると判断して、読取開始までの原稿Ｑの残り搬送量を設定する（Ｓ１５０）。ＣＰＵ３１は、この残り搬送量だけ原稿Ｑが搬送された時点で（Ｓ１６０でＹｅｓ）、読取制御回路５０を通じてラインセンサ２３を制御し、ラインセンサ２３に読取動作を開始させる（Ｓ１７０）。読取動作の開始時、ＣＰＵ３１は、スキャン回路７０、スキャンバイパス回路８０及び原稿エッジ検出回路９０を作動させる。
【００６８】
その後、ＣＰＵ３１は、原稿エッジ検出回路９０によって上記エッジ位置データがＲＡＭ３５に記録されるまで待機し（Ｓ１８０）、エッジ位置データが記録されると（Ｓ１８０でＹｅｓ）、このエッジ位置データに基づく近似直線の算出により、原稿エッジとして原稿Ｑの上辺及び左右辺を検出する（Ｓ１９０）。更に、原稿Ｑの上辺及び左右辺に基づき、原稿Ｑの位置及び傾きを検出して、原稿補正回路１００に対し、原稿の傾きを補正する処理の動作パラメータを設定する（Ｓ２００）。事前のユーザからの指示に基づき、ユーザが原稿Ｑの抽出を所望している場合には、原稿補正回路１００に対し、原稿Ｑを抽出する処理の動作パラメータを更に設定する。動作パラメータとしては、例えば、画像回転量を表すパラメータ、及び、抽出対象の画像領域を表すパラメータを一例に挙げることができる。
【００６９】
更に、ＣＰＵ３１は、原稿補正回路１００及び画像処理回路１１０を作動させ（Ｓ２１０）、その後、原稿センサＤＳの出力信号がオフ信号に切り替わるまで待機する（Ｓ２２０）。そして、原稿センサＤＳの出力信号がオフ信号に切り替わると（Ｓ２２０でＹｅｓ）、原稿Ｑの後端がラインセンサ２３による読取地点に近づいてきていると判断して、読取終了までの原稿Ｑの残り搬送量を設定する（Ｓ２３０）。
【００７０】
ＣＰＵ３１は、この残り搬送量だけ更に原稿Ｑが搬送された時点で（Ｓ２４０でＹｅｓ）、読取制御回路５０を通じてラインセンサ２３を制御し、ラインセンサ２３に読取動作を終了させる（Ｓ２５０）。
【００７１】
更に、ＣＰＵ３１は、読取制御回路５０を通じて搬送部１０を制御し、搬送部１０に原稿Ｑの排出動作を実行させる。その後、ＡＤＦ読取処理を終了する。ここでは、説明を簡単にするために、原稿Ｑが１枚であるときのＡＤＦ読取処理を説明した。ＣＰＵ３１は、原稿Ｑを複数枚連続読み取りする場合、Ｓ２５０で、原稿Ｑの排出動作と共に、新たな原稿Ｑの搬送動作を開始し、その後、Ｓ１４０に移行して、一枚目の原稿と同様の処理を実行することができる。
【００７２】
続いて、図８を用いて、スキャン回路７０及びスキャンバイパス回路８０の構成及び動作を詳細説明する。スキャン回路７０は、図８に示すように、ＡＤサンプリング回路７１、黒補正回路７３、シェーディング補正回路７５、主走査処理回路７７、及び、ガンマ補正回路７９を備える。ＡＤサンプリング回路７１は、ラインセンサ２３から入力されるアナログ信号としての原稿Ｑの読取画像データをディジタル信号に変換する。ＡＤサンプリング回路７１によってディジタル信号に変換された読取画像データは、黒補正回路７３に入力される。ＡＤサンプリング回路７１は、アナログ信号に対する各種処理回路を含んでいてもよい。
【００７３】
黒補正回路７３は、入力される読取画像データが示す各画素の濃度値を、黒基準データが示す各画素の濃度値で補正する。黒基準データは、主走査方向における各画素の濃度値として、光源２３Ａの点灯なしで受光部２３Ｂにより読み取られた白基準部材２７の濃度値を示す。即ち、黒補正回路７３は、読取画像データが示す各画素の濃度値を上記黒基準データが示す主走査方向において同一画素の濃度値で減算するように補正する。黒補正回路７３による黒補正後の読取画像データは、シェーディング補正回路７５に入力される。
【００７４】
シェーディング補正回路７５は、上記黒補正後の読取画像データを、白画像データに基づきシェーディング補正する。白画像データは、白基準データを黒基準データに基づき黒補正したデータに対応する。白画像データは、主走査方向における各画素の濃度値を、白基準データが示す濃度値から、黒基準データが示す同一画素の濃度値を減算した値で示す。
【００７５】
シェーディング補正回路７５は、この白画像データに基づくシェーディング補正により、上記黒補正後の読取画像データが示す各画素の濃度値を、所定ビットの階調値に変換した補正画像データを生成する。このシェーディング補正によって、読取画像データが示す各画素の濃度値は、採り得る階調値の範囲内で濃度値に比例した階調値に変換される。
【００７６】
付言すると、本実施形態のシェーディング補正回路７５は、黒補正後の読取画像データにおいて、白画像データにおける同一画素の濃度値と一致する濃度値を示す画素の濃度値を、濃度値に比例した階調値として、最大階調値より低い目標階調値Ｇｔに変換する。このようにして、シェーディング補正回路７５は、白画像データにおける同一画素の濃度値と一致する濃度値が最大階調値未満の階調値に変換されるように、上記黒補正後の読取画像データが示す各画素の濃度値を、採り得る階調値の範囲内で濃度値に比例した階調値に変換する。従来技術は、白画像データの濃度値と一致する読取画像データの濃度値を最大階調値に変換するように、読取画像データの各画素の濃度値を階調値に変換する点で、本実施形態は、従来技術とは異なる。
【００７７】
上記目標階調値Ｇｔは、黒補正後の読取画像データにおける白エッジの濃度のピーク値Ｃｐと白画像データの濃度値Ｃｗとの比Ｃｐ／Ｃｗと、最大階調値Ｇｐとに基づき、不等式Ｇｔ×（Ｃｐ／Ｃｗ）≦Ｇｐを満足するように予め定められる。この不等式を満足する目標階調値Ｇｔによれば、シェーディング補正後の読取画像データにおいて、白エッジが最大階調値で飽和するのを抑制することができる。
【００７８】
読取画像データにおける白エッジの濃度のピーク値Ｃｐは、原稿Ｑの読取毎に変動する。このため、試験によりピーク値Ｃｐの統計を採り、この統計から白エッジの濃度値が最大階調値Ｇｐで飽和する確率を一定以下に抑えるように目標階調値Ｇｔを設定することができる。経験則によれば、目標階調値Ｇｔは、最大階調値Ｇｐの１０％ほど低い値に設定することができる。
【００７９】
このように設定される目標階調値Ｇｔに基づき、シェーディング補正回路７５は、各画素の濃度値Ｃを、関係式Ｇ＝Ｃ×（Ｇｔ／Ｃｗ）に従う、濃度値Ｃに比例した階調値Ｇに変換する。用いられる濃度値Ｃｗは、白画像データが示す変換対象と同一画素の濃度値である。この関係式によれば、読取画像データにおいて最も大きい濃度値を示す画素の濃度値Ｃｐに係数（Ｇｔ／Ｃｗ）を掛けた値、即ち、上記関係式に濃度値Ｃｐを代入した値が基本的に最大階調値以下となり、シェーディング補正後の読取画像データにおいて、白エッジは最大階調値で飽和せず、白エッジが周囲画素より明るいという情報は失われない。
【００８０】
シェーディング補正回路７５から出力されるシェーディング補正後の読取画像データである補正画像データは、スキャン回路７０の主走査処理回路７７に入力されると共に、スキャンバイパス回路８０の主走査処理回路８１に入力される。図８に示すように、スキャンバイパス回路８０は、主走査処理回路８１と、ガンマ補正回路８３とを備える。
【００８１】
スキャン回路７０の主走査処理回路７７は、シェーディング補正回路７５から入力される補正画像データに対し、主走査方向のノイズ抑制処理及び間引き処理を実行し、処理後の補正画像データを、ガンマ補正回路７９に入力する。上記ノイズ抑制処理は、例えばモアレを抑制する処理に対応する。間引き処理は、補正画像データを指定解像度の画像データに変換するために、補正画像データにおける画素データを間引く処理に対応する。
【００８２】
ガンマ補正回路７９は、主走査処理回路７７から入力される補正画像データをガンマ補正する。ガンマ補正回路７９は、図９に示す入出力特性を示すガンマテーブルに従って、補正画像データをガンマ補正する。図９は、階調値が８ビットで表される例を示している。８ビットで表される階調値の最大値、即ち、最大階調値は、２５５であり、最小階調値は、０である。付言すれば、図９は、目標階調値Ｇｔが値２３０である例を示す。
【００８３】
図９に示される入出力特性によれば、入力値としての補正画像データにおける各画素の階調値は、次のように補正される。即ち、補正画像データにおいて目標階調値Ｇｔより大きい各階調値（２３１から２５５）は、最大階調値（２５５）に補正される。補正画像データにおいて、目標階調値Ｇｔ以下の各階調値（０から２３０）は、大小関係が補正前後で変化しないように、最小階調値（ゼロ）から最大階調値（２５５）までの範囲の階調値に補正される。
【００８４】
この補正により、図９に示す例によれば、補正画像データにおける目標階調値（２３０）は、それより大きい最大階調値（２５５）に補正される。そして、ガンマ補正前において最小階調値から目標階調値までの範囲（０から２３０）で表される階調値は、ガンマ補正前より広い範囲（０から２５５）の階調値に補正され、ガンマ補正前において目標階調値から最大階調値までの範囲（２３０から２５５）の階調値は、ガンマ補正前より狭い範囲（２５５）の階調値に補正される。
【００８５】
このガンマ補正によって、白画像データの濃度値より大きかった原稿Ｑの読取画像データの濃度値は、最大階調値に補正され、原稿画像は、全範囲の階調値を用いて、階調豊かに表現される。ガンマ補正回路７９は、このようにして生成したガンマ補正後の補正画像データを、各画素を所定ビット数の階調値で表す原稿Ｑの多階調画像データとしてＲＡＭ３５に記録する。
【００８６】
スキャンバイパス回路８０では、上記スキャン回路７０から入力された補正画像データが、主走査処理回路８１で処理された後、ガンマ補正回路８３に入力される。スキャンバイパス回路８０の主走査処理回路８１は、スキャン回路７０の主走査処理回路７７と同様、補正画像データに対してノイズ抑制処理及び間引き処理を実行するように構成される。
【００８７】
ガンマ補正回路８３は、スキャン回路７０から主走査処理回路８１を介して入力される補正画像データを、スキャン回路７０とは異なるガンマテーブルに従ってガンマ補正する。具体的に、ガンマ補正回路８３は、図１０Ａに示される入出力特性を有するガンマテーブルに従って、補正画像データをガンマ補正する。図１０Ａに示される階調値２３５は、補正画像データにおける非原稿領域の階調値に対応し、図５においてフラットな領域、換言すれば原稿押さえ部材１９下面の階調値に対応する。以下では、この階調値２３５のことを背景階調値とも表現する。図１０Ａは、図９と同様、目標階調値Ｇｔが２３０である例である。
【００８８】
図１０Ａに示される入出力特性によれば、補正画像データにおける各画素の階調値は、次のように補正される。即ち、目標階調値Ｇｔ及び背景階調値（２３５）は、より低い階調値に補正される。例えば、目標階調値Ｇｔは、階調値１２５に補正され、背景階調値（２３５）は、階調値１２８に補正される。これにより、ガンマ補正前において最小階調値から背景階調値までの範囲（０から２３５）の各階調値は、より狭い範囲の階調値（０から１２８）に補正され、ガンマ補正前において背景階調値から最大階調値までの範囲（２３５から２５５）の各階調値は、より広い範囲（１２８から２５５）の階調値に補正される。但し、全範囲の各階調値（０から２５５）は、大小関係が補正前後で変化しないように補正される。
【００８９】
図１０Ａによれば、２３５から２５５までの入力値に対応する出力値は、急峻に増加する。これにより、補正画像データにおける白エッジに対応する画素は、ガンマ補正回路８３において、周囲に対してより強調されるようにガンマ補正される。このガンマ補正により、ガンマ補正回路８３は、入力された補正画像データを、原稿エッジの検出に適した画像データに変換する。以下では、ガンマ補正回路８３によるガンマ補正後の補正画像データのことを、エッジ検出用画像データと表現する。ガンマ補正回路８３は、このエッジ検出用画像データをＲＡＭ３５に記録するように動作する。
【００９０】
但し、ガンマ補正回路８３は、図１０Ｂに示す入出力特性に従って、入力された補正画像データに対応するエッジ検出用画像データを生成する構成にされてもよい。図１０Ｂに示す例によれば、補正画像データにおける各画素の階調値は、実質的に変更されずに、エッジ検出用画像データとして、ガンマ補正回路８３から出力される。
【００９１】
続いて、ＲＡＭ３５に記録されたエッジ検出用画像データに基づき、エッジ位置データを生成する原稿エッジ検出回路９０の詳細を、図１１を用いて説明する。原稿エッジ検出回路９０は、図１１に示されるように、移動平均処理回路９１と、微分処理回路９５と、二値化回路９７と、エッジ抽出回路９９とを備える。
【００９２】
移動平均処理回路９１は、エッジ検出用画像データに対し、３×３の移動平均処理を実行する回路である。周知のように、３×３の移動平均処理では、注目画素を中心画素とする３×３画素の階調値の平均値を算出し、移動平均処理後の画像データとして、中心画素の階調値を上記平均値に変更した画像データを出力する。図１２の一段目に示されるエッジ検出用画像データＤ１を移動平均処理すると、移動平均処理後のエッジ検出用画像データＤ２は、図１２の二段目に示されるように構成される。図１２の一段目において太線で囲まれた３×３画素の平均値が、図１２の二段目に示される移動平均処理後のエッジ検出用画像データＤ２において、太線で囲まれた画素の階調値として表される。図１２の二段目では、左端の画素に対する数値が記載されていない。これは、図１２の一段目に示されるエッジ検出用画像データＤ１の部分が主走査方向先頭部分であるために、該当する数値が存在しないことを示している。これに対して、図１２の二段目では、上端及び下端の画素に対する数値が記載されている。これは、図１２の一段目に示されるエッジ検出用画像データＤ１の部分が副走査方向の中間部分であることを示している。図１２の二段目における上端及び下端の画素に対する数値は、図１２の一段目に示されないエッジ検出用画像データＤ１の部分に基づく移動平均処理後の値を表す。
【００９３】
付言すると、ラインセンサ２３がカラー読取可能である場合には、カラー読取によって、ラインセンサ２３からスキャン回路７０に色毎の読取画像データが入力される。そして、色毎の読取画像データが上述した方法で個別に処理されて、スキャン回路７０からは色毎の多階調画像データがＲＡＭ３５に記録され、スキャンバイパス回路８０からは色毎のエッジ検出用画像データがＲＡＭ３５に記録される。
【００９４】
この場合、移動平均処理回路９１は、移動平均処理に先立って、色毎のエッジ検出用画像データを統合して、各画素の輝度値を階調表現してなるエッジ検出用画像データを生成することができる。このエッジ検出用画像データは、色毎のエッジ検出用画像データにおける各画素の階調値を重み付けして合算することにより生成することができる。移動平均処理回路９１は、このエッジ検出用画像データに対して上記移動平均処理を実行し、移動平均処理後のエッジ検出用画像データを出力することができる。
【００９５】
移動平均処理回路９１による移動平均処理後のエッジ検出用画像データＤ２は、微分処理回路９５に入力される。微分処理回路９５は、入力されるエッジ検出用画像データＤ２を微分処理し、微分処理後のエッジ検出用画像データＤ３を、二値化回路９７に入力する。
【００９６】
微分処理回路９５は、具体的に、微分フィルタとしてカーネルサイズ３×３のソベル（ｓｏｂｅｌ）フィルタを用いて、エッジ検出用画像データＤ２を微分処理することができる。ソベルフィルタを用いた微分処理では、図１３Ａに示す主走査方向ソベルフィルタ及び図１３Ｂに示す副走査方向ソベルフィルタを用いることができる。主走査方向ソベルフィルタは、エッジ検出用画像データＤ２を、主走査方向に微分するためのソベルフィルタであり、副走査方向ソベルフィルタは、エッジ検出用画像データＤ２を、副走査方向に微分するためのソベルフィルタである。主走査方向ソベルフィルタは、原稿Ｑの左右辺を検出するのに役立ち、副走査方向ソベルフィルタは、原稿Ｑの上辺を検出するのに役立つ。
【００９７】
微分処理回路９５は、図１２の二段目に示すエッジ検出用画像データＤ２の破線部分を微分処理するとき、破線部分の３×３画素と主走査方向ソベルフィルタとを畳み込み演算して得られる値Ｉと、破線部分の３×３画素と副走査方向ソベルフィルタとを畳み込み演算して得られる値Ｊとの二乗和平方根（Ｉ2＋Ｊ2）1/2を、中心画素の微分処理後の値として算出する。図１２の三段目に示すエッジ検出用画像データＤ３は、二段目に示すエッジ検出用画像データＤ２を微分処理したものであり、図１２の三段目の破線部分は、図１２の破線部分に対応する微分処理後の値に対応する。
【００９８】
二値化回路９７は、微分処理回路９５による微分処理後のエッジ検出用画像データＤ３を二値化処理して、二値化処理後のエッジ検出用画像データＤ４を、エッジ抽出回路９９に入力する。二値化回路９７は、具体的に、エッジ検出用画像データＤ３が示す各画素の階調値を、閾値と比較し、閾値以上の階調値を１に変換し、閾値未満の階調値をゼロに変換するようにして、エッジ検出用画像データＤ３を二値化処理することができる。図１２三段目に示す微分処理後のエッジ検出用画像データＤ３に対する二値化処理後のエッジ検出用画像データＤ４を、図１２の四段目に示す。図１２に示す例によれば、閾値は１００である。閾値は、この例に限定されるものではなく、試験により適切な値に定められ得る。
【００９９】
エッジ抽出回路９９は、この二値化処理後のエッジ検出用画像データＤ４に基づき、原稿の先端エッジと推定されるエッジ画素の一群を抽出し、これらエッジ画素の夫々の位置を表すエッジ位置データを、ＲＡＭ３５に記録する。
【０１００】
具体的に、エッジ抽出回路９９は、エッジ検出用画像データＤ４の主走査方向の先頭ライン（図１４上段で一点鎖線により囲まれた第０ライン）に位置する各画素を基点に、これらの画素から副走査方向（図１４上段に示す黒矢印方向）に最も近い値１の画素（図１４上段で太線により囲まれた画素）をエッジ画素として抽出し、これら各エッジ画素のライン番号をエッジ位置として記述したエッジ位置データＤ５を図１４下段に示すように生成する。
【０１０１】
図１４上段において、ライン番号Ｅのラインは、エッジ検出用画像データＤ４の最終ラインを示す。この最終ラインは、原稿の終端ではない。図１５Ａに示すようにエッジ検出用画像データＤ４は、原稿Ｑの先頭を含む読取開始から所定ラインまでの読取画像データを上述した方法で加工したものに対応する。図１５Ａは、エッジ検出用画像データＤ４が表す二値画像をモデル化して表したものであり、細い線で囲まれた領域全体がエッジ検出用画像データに対応し、太線上の画素がエッジ画素に対応する。ライン番号Ｅは、読取開始から所定ラインまでのエッジ検出用画像データにおける最終ラインのライン番号を示す。
【０１０２】
エッジ位置データＤ５において、値Ｍで示される画素は、二値化処理後のエッジ検出用画像データＤ４において最終ラインまでエッジ画素に対応する値１の画素が見つからなかった画素に対応する。値Ｍは、エッジ検出用画像データにおける最終ラインのライン番号Ｅよりも大きな値として示される。このようにして生成されＲＡＭ３５に記録されたエッジ位置データＤ５は、ＣＰＵ３１により読み出されてＳ１９０において原稿エッジの検出に用いられる。
【０１０３】
Ｓ１９０において、ＣＰＵ３１は、エッジ位置データＤ５を、図１６の一段目に示すように、中心画素（図１６の一段目において一点鎖線で囲まれる画素）から主走査方向の両端に向かう方向に、値Ｍの画素が所定数連続して表れる画素まで参照する。値Ｍの画素が所定数連続して表れた場合には、その画素領域に原稿エッジが写っていないと判定できる。
【０１０４】
従って、ＣＰＵ３１は、値Ｍの画素が所定数連続して表れた場合には、その連続した値Ｍの画素群に対して中心画素側で隣接する画素（図１６の二段目において太線で囲まれた画素）を、原稿エッジの終端画素として検出する。エッジ位置データＤ５において中心画素から左側に位置する原稿エッジの終端画素ＰＬは、図１５Ｂに示すように、エッジ検出用画像データにおける原稿左辺の終端画素ＰＬに対応し、エッジ位置データＤ５において中心画素から右側に位置する原稿エッジの終端画素ＰＲは、図１５Ｂに示すように、エッジ検出用画像データにおける原稿右辺の終端画素ＰＲに対応する。
【０１０５】
ＣＰＵ３１は、これら終端画素ＰＬ及び終端画素ＰＲの夫々から中心画素側に所定画素数分離れた画素を両端とする主走査方向中央エリア（図１６二段目で破線により囲まれたエリア）内のエッジ画素群を、原稿上辺のエッジ画素として推定する。そして、これらのエッジ画素群を所定単位で分割したグループ（図１６三段目で破線により示されるグループ）毎に、グループの中で、副走査方向の位置（ライン番号）が中心に位置する画素（図１６三段目で太線により囲まれる画素）を検出し、これらの検出画素を、中心画素（図１６三段目で一点鎖線により囲まれる画素）と共に、近似直線の算出に用いる画素として選択する。
【０１０６】
そして、ＣＰＵ３１は、選択した画素の配置に基づく近似直線を、最小二乗法により算出し、算出した近似直線を原稿の上辺として検出する。更に、この近似直線が図１５Ｂに示すように、左から右に下がる近似直線である場合には、原稿左辺の終端画素ＰＬから、上記近似直線と直交する直線を延ばしたときに、近似直線と交わる地点（図１５Ｂにおける交点ＰＣ）を、原稿上辺の左端として検出し、交点ＰＣから画素ＰＬを結ぶ辺を、原稿左辺として検出する。また、原稿左辺に平行で画素ＰＲから延びる辺を、原稿右辺として検出する。
【０１０７】
このようにして、ＣＰＵ３１は、Ｓ１９０で原稿エッジとして原稿の上辺及び左右辺を検出する。上記算出した近似直線が、右から左に下がる近似直線である場合には、上述した手順において左右が逆である処理を実行することにより、原稿エッジとして原稿の上辺及び左右辺を検出する。
【０１０８】
検出された原稿Ｑの上辺及び左右辺の情報は、上述したようにＳ２００で原稿Ｑの位置及び傾きを検出し、原稿補正回路１００の動作パラメータを設定するのに利用される。付言すると、上述した原稿Ｑの上辺及び左右辺の検出方法では、ノイズにより誤って抽出されたエッジ画素が近似直線の算出に用いられる可能性を抑えるために、主走査方向中央エリア内のエッジ画素群の一部を近似直線の算出に用いたが、主走査方向中央エリア内のエッジ画素群の全てを用いて近似直線が算出されてもよい。
【０１０９】
以上、本実施形態の複合機１について説明した。この複合機１によれば、原稿Ｑの読取に先立って、ラインセンサ２３に白基準部材２７を読み取らせて、ラインセンサ２３による白基準部材２７の読取画像を表す白基準データ及び黒基準データを取得する。その後に、ラインセンサ２３に原稿Ｑを読み取らせて、ラインセンサ２３による原稿Ｑの読取画像データを取得する。
【０１１０】
黒補正回路７３は、この原稿の読取画像データを黒補正して、原稿画像データとして黒補正後の読取画像データを生成する。シェーディング補正回路７５は、この黒補正後の読取画像データと、白基準データを黒基準データで補正してなる白画像データとに基づき、黒補正後の読取画像データが示す各画素の濃度値をシェーディング補正する。この際、シェーディング補正回路７５は、白エッジの情報が失われないように、白画像データの濃度値を最大階調値とするようには、シェーディング補正を行わず、白画像データの濃度値より高い濃度値を最大階調値とするように、シェーディング補正を行う。これにより、シェーディング補正回路７５は、シェーディング補正後の読取画像データとして、各画素の濃度値を所定階調数の階調値で表した白エッジが周囲画素に対して明るい補正画像データを生成する。
【０１１１】
そして、シェーディング補正回路７５は、この補正画像データを、出力用の多階調画像データの基礎として、主走査処理回路７７を介しスキャン回路７０のガンマ補正回路７９に入力すると共に、エッジ検出用画像データの基礎として、スキャンバイパス回路８０の主走査処理回路８１を介しガンマ補正回路８３に入力する。
【０１１２】
スキャン回路７０のガンマ補正回路７９は、出力用の多階調画像データとして高画質な画像データを生成するために、補正画像データの最小階調値から目標階調値までの各階調値を、最小階調値から最大階調値までの階調値に変換し、補正画像データの目標階調値より大きい階調値を一律に最大階調値に変換するように、補正画像データをガンマ補正して、上記所定階調数の多階調画像データを生成する。一方、スキャンバイパス回路８０のガンマ補正回路８３は、白エッジを強調するように、補正画像データをガンマ補正してエッジ検出用画像データを生成する。
【０１１３】
また、原稿エッジ検出回路９０は、このエッジ検出用画像データに対する移動平均処理、微分処理、及び、二値化処理により、原稿エッジと推定される画素の一群であるエッジ画素群を抽出し、この位置情報であるエッジ位置データをＣＰＵ３１に提供する。ＣＰＵ３１は、このエッジ位置データに基づき、原稿エッジとして、原稿Ｑの上辺及び左右辺を検出し、原稿Ｑの傾き及び位置を検出する。更には、原稿Ｑの傾き補正及び抽出処理のための動作パラメータを、原稿補正回路１００に設定する。
【０１１４】
従って、本実施形態によれば、図５に示されるように、白基準データの濃度値を超える濃度値を示す白エッジが発生したときに、白エッジの情報が失われないようにして、エッジ検出用画像データを生成することができ、このエッジ検出用画像データから高精度に原稿エッジを検出することができる。一方、出力用の多階調画像データにおいて原稿Ｑの画質が低下しないようにガンマ補正を行う。従って、本実施形態の複合機１によれば、白エッジが発生し得る状況でも、高画質な原稿Ｑの画像データを生成しつつ、原稿エッジを精度よく検出でき、原稿Ｑの傾き補正等を適切に行うことができる。
【０１１５】
以上、本開示の例示的実施形態を説明したが、本発明は、上述した実施形態に限定されることなく、種々の態様を採ることができる。例えば、本開示の技術的思想は、コピー機能やプリンタ機能を備えないスキャナ装置に適用することができる。また、本開示の技術的思想は、原稿Ｑを読み取るために、原稿Ｑの両面にラインセンサを備えたスキャナ装置に適用することができる。
【０１１６】
上記実施形態における１つの構成要素が有する機能は、複数の構成要素に分散して設けられてもよい。複数の構成要素が有する機能は、１つの構成要素に統合されてもよい。上記実施形態の構成の一部は、省略されてもよい。特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。
【０１１７】
最後に対応関係を説明する。複合機１が備えるラインセンサ２３は、読取デバイスの一例に対応し、ＡＤサンプリング回路７１は、取得ユニットの一例に対応する。スキャン回路７０のシェーディング補正回路７５は、第一補正ユニットの一例に対応し、ガンマ補正回路７９は、第二補正ユニットの一例に対応する。スキャンバイパス回路８０のガンマ補正回路８３及び原稿エッジ検出回路９０によって実現される処理、及び、ＣＰＵ３１がＳ１９０で実行する処理は、エッジ検出ユニットにより実現される処理の一例に対応し、原稿補正回路１００は、画像処理ユニットの一例に対応する。
【符号の説明】
【０１１８】
１…複合機、３Ａ…フラットベッド部、３Ｂ…カバー部、１０…搬送部、１８…プラテンガラス、１９…原稿押さえ部材、２０…ばね、２１…ガイド部、２２…キャリッジ、２３…ラインセンサ、２３Ａ…光源、２３Ｂ…受光部、２７…白基準部材、３１…ＣＰＵ、３３…ＲＯＭ、３５…ＲＡＭ、３７…ＮＶＲＡＭ、４０…読取部、４１…搬送機構、５０…読取制御回路、７０…スキャン回路、７１…ＡＤサンプリング回路、７３…黒補正回路、７５…シェーディング補正回路、７７…主走査処理回路、７９…ガンマ補正回路、８０…スキャンバイパス回路、８１…主走査処理回路、８３…ガンマ補正回路、９０…原稿エッジ検出回路、９１…移動平均処理回路、９５…微分処理回路、９７…二値化回路、９９…エッジ抽出回路、１００…原稿補正回路、１１０…画像処理回路、１２０…記録部、ＤＳ…原稿センサ。
【図１】
0006547606.tif 000002
【図２】
0006547606.tif 000003
【図３】
0006547606.tif 000004
【図４】
0006547606.tif 000005
【図５】
0006547606.tif 000006
【図６】
0006547606.tif 000007
【図７】
0006547606.tif 000008
【図８】
0006547606.tif 000009
【図９】
0006547606.tif 000010
【図１０】
0006547606.tif 000011
【図１１】
0006547606.tif 000012
【図１２】
0006547606.tif 000013
【図１３】
0006547606.tif 000014
【図１４】
0006547606.tif 000015
【図１５】
0006547606.tif 000016
【図１６】
0006547606.tif 000017