(57)【要約】【課題】原稿の流し読み時に発生する異常画素の補正と回転補正を併用した際の読取画像の品質を向上させることができる読取装置を提供する。【解決手段】読取装置（１０）は、読取ガラス（１１８）上に搬送された原稿に対して光源（１１９，１２０）から光を照射して原稿の画像を読み取り、読み取りにより得られた画像データから読取ガラス上に付着した異物による異常画素を検知して異常画素情報を生成する。また、搬送された原稿の斜行量を検知し、検知された斜行量に基づいて画像データを回転補正する。また、生成された異常画素情報を斜行量に応じて補正する。さらに、回転補正された画像データに含まれる異常画素を補正後の異常画素情報に基づいて補正する。【選択図】図３
2017201755.tif 000002
【特許請求の範囲】
【請求項１】
原稿を搬送する搬送手段と、
読取ガラス上に搬送された原稿に対して光源から光を照射して、当該原稿の画像を読み取る読取手段と、
前記読取手段の読み取りにより得られた画像データから前記読取ガラス上に付着した異物による異常画素を検知して異常画素情報を生成する異常画素検知手段と、 
前記搬送手段によって搬送された原稿の斜行量を検知する斜行量検知手段と、
前記斜行量検知手段により検知された斜行量に基づいて画像データを回転補正する回転補正手段と、 
前記生成された異常画素情報を、前記斜行量検知手段が検知した斜行量に応じて補正する異常画素情報補正手段と、 
前記回転補正手段により回転補正された画像データに含まれる異常画素を、前記異常画素情報補正手段による補正後の異常画素情報に基づいて補正する異常画素補正手段と、を有することを特徴とする、
読取装置。
【請求項２】
前記異常画素情報補正手段による異常画素情報の補正により、前記異常画素補正手段による補正対象画素の範囲が拡張されることを特徴とする、
請求項１に記載の読取装置。
【請求項３】
前記異常画素情報は、前記画像データにおける各画素位置に対応した異常画素であるか否かを表す情報であり、
前記異常画素情報補正手段による補正は、前記異常画素情報のうち異常画素を表すものを前記原稿が搬送される方向に直交する方向に拡張する補正を含む補正であることを特徴とする、
請求項１又は２に記載の読取装置。
【請求項４】
前記異常画素情報補正手段による前記異常画素情報の補正は、前記原稿が搬送される方向において、前記斜行量に基づいて決定された一定の周期で変更されることを特徴とする、
請求項３に記載の読取装置。
【請求項５】
前記異常画素検知手段は、前記読取手段が所定の読取位置で読み取りを行った画像データから前記搬送される原稿の先端を基準に前後両方の領域において異常画素を検知した場合、前記読取ガラス上に付着した異物による異常画素として前記異常画素情報を生成することを特徴とする、
請求項１乃至４いずれか一項に記載の読取装置。
【請求項６】
前記異常画素検知手段は、前記搬送される原稿の先端を基準に前方の領域においてのみ異常画素を検知した場合には前記異常画素情報を生成しないことを特徴とする、
請求項５に記載の読取装置。
【請求項７】
前記異常画素検知手段が生成した異常画素情報を記憶する記憶手段を有することを特徴とする、
請求項１乃至６いずれか一項に記載の読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿に記録された画像情報を読み取る読取装置の技術に関する。
【背景技術】
【０００２】
自動原稿搬送装置を有する原稿画像を読み取る読取装置には、当該原稿表面に光を照射する光走査部を所定の原稿読取位置に停止させて原稿を１枚ずつ移動させながら読み取る、いわゆる流し読み機能を有するものがある。
このような装置で流し読みを行う際に、読取ガラス上の原稿読取位置にゴミや汚れなどの異物が付着していると、読み取り画像にスジ状の異常画像が発生してしまう。このため、流し読み機能を有する画像読取装置には、スジ状の異常画像の連続性を基に異常画像を検出し、周囲の画素を用いて異常画素を補正する機能を有するものがある（特許文献１）。
【０００３】
一方、原稿の流し読みを行う際には、原稿の状態などによって原稿が原稿読取位置に対して斜めに搬送され、読み取り画像が傾いてしまうことがある。この対策として、流し読み機能を有する読取装置には、原稿の斜行量を検出してこの斜行量に基づいて画像を回転して補正する機能を有するものがある（特許文献２）。また、回転後の画素値は、バイリニア法やバイキュービック法などを用いて回転前の注目画素の周囲画素から補完するなどしている。
【０００４】
また、特許文献３に開示された装置は、異常画素の補正機能と回転補正機能の両方を有する。この装置は、原稿を斜行搬送させて読み取り、スジ状の異常画素と現行の区別をつきやすくした状態で異常画素の検知を行う。そして、異常画素であるか否かを示した異常画素情報と画像の両方を回転させた後に異常画素情報に基づいて異常画素の補正を行っている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２３９３５８号公報
【特許文献２】特開２０１３−１２３１１９号公報
【特許文献３】特開２０１０−１１４５６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
図２０は、従来の読取装置が行う異常画素情報に基づいた異常画素の補正を説明するための図である。図２０（ａ）は回転前の異常画像を示し、（ｂ）は、回転前の異常画素情報を示し、（ｃ）は、回転補正後の異常画像を示し、（ｄ）は、回転後の異常画素情報、（ｅ）は、異常画素補正後の画像を示している。
図２０（ａ）に示すような異常画像における異常画素情報は、図２０（ｂ）に示すように各画素位置に対応した異常画素であるか否かを表す２値情報である。また、回転補正を行った後の異常画素情報は、図２０（ｄ）に示すように階段状になる。
【０００７】
一方、画像の回転補正に際して補完処理を行うと、図２０（ａ）の異常画像は図２０（ｃ）に示すように、原稿の搬送方向（以下、副走査方向と称す）に直交する方向（以下、主走査方向と称す）の複数画素に渡って輝度値が徐々に変化する滑らかな斜線になる。
そのため、回転補正後の異常画像（図２０（ｃ））を回転させた異常画素情報（図２０（ｄ））を用いて補正を行った場合、主走査方向の段差付近での異常画素と異常画素情報の位置ずれが大きくなる。その結果、図２０（ｅ）に示すように異常画素の補正が不完全になってしまう、という課題が残る。
【０００８】
本発明は、原稿の流し読み時に発生する異常画素の補正と回転補正を併用した際の読取画像の品質を向上させることができる読取装置を提供することを、主たる課題とする。
【課題を解決するための手段】
【０００９】
本発明の読取装置は、原稿を搬送する搬送手段と、読取ガラス上に搬送された原稿に対して光源から光を照射して、当該原稿の画像を読み取る読取手段と、前記読取手段の読み取りにより得られた画像データから前記読取ガラス上に付着した異物による異常画素を検知して異常画素情報を生成する異常画素検知手段と、前記搬送手段によって搬送された原稿の斜行量を検知する斜行量検知手段と、前記斜行量検知手段により検知された斜行量に基づいて画像データを回転補正する回転補正手段と、前記生成された異常画素情報を、前記斜行量検知手段が検知した斜行量に応じて補正する異常画素情報補正手段と、前記回転補正手段により回転補正された画像データに含まれる異常画素を、前記異常画素情報補正手段による補正後の異常画素情報に基づいて補正する異常画素補正手段と、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、原稿の流し読み時に発生する異常画素の補正と回転補正を併用した際の読取画像の品質を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態に係る読取装置の構成の一例を示す概略縦断面図。
【図２】信号処理基板の主たる機能構成の一例を示すブロック図。
【図３】図２に示す画像処理部の機能構成の一例を示すブロック図。
【図４】読取装置による原稿の読み取り動作の一例を示すフローチャート。
【図５】図４に示すステップＳ４０３の処理の詳細を説明するためのフローチャート。
【図６】（ａ）、（ｂ）は、図５に示すステップＳ５０２の処理の詳細を説明するための図。
【図７】図５に示すステップＳ５０２の処理の詳細を説明するためのフローチャート。
【図８】図７に示すステップＳ７０４の処理の詳細を説明するためのフローチャート。
【図９】図７に示すステップＳ７０５の処理の詳細を説明するためのフローチャート。
【図１０】異常画素情報の変換の一例を説明するための図。
【図１１】斜行量検知部の機能構成の一例を示すブロック図。
【図１２】（ａ）、（ｂ）は、エッジ検出部によるエッジ検出の一例を説明するための図。
【図１３】斜行量検出の動作の一例を説明するための図。
【図１４】（ａ）〜（ｆ）は、異常画素情報に基づいた異常画素の補正を説明するための図。
【図１５】異常画像の補正処理を説明するための図。
【図１６】異常画素補正部による異常画素の補正を説明するための図。
【図１７】（ａ）、（ｂ）は、第２実施形態に係る異常画素情報の拡張補正動作を説明するための図。
【図１８】（ａ）〜（ｄ）は、異常画素情報に基づいた異常画素の補正を説明するための図。
【図１９】異常画素情報の拡張補正動作の一例を示すフローチャート。
【図２０】従来の読取装置が行う異常画素情報に基づいた異常画素の補正を説明するための図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。なお、本発明を原稿画像を読み取る読取装置に適用した場合を例に挙げて説明する。また、この読取装置は画像形成装置に接続可能に構成される。また、読取装置を複写機やファクシミリ、あるいは他の複合機の一部として構成することもできる。
【００１３】
［第１実施形態］
図１は、本実施形態に係る読取装置の構成の一例を示す概略縦断面図である。
図１に示す読取装置１０は、原稿を読み取るリーダーユニット１０１、原稿を搬送するＡＤＦ１０２、原稿トレイ１０４、幅規制板１０５、ピックアップローラ１０６、分離パッド１０７、分離ローラ１０８、第１レジストローラ１０９、第２レジストローラ１１０を有する。
読取装置１０は、また、第１搬送ローラ１１１、第２搬送ローラ１１２、第３搬送ローラ１１３、白色対向部材１１４、第４搬送ローラ１１５、排紙ローラ１１６、原稿排紙トレイ１１７、読取ガラス１１８、読取ユニット１２７を有する。
【００１４】
原稿束１０３は、原稿トレイ１０４に載置される。幅規制板１０５は、原稿束１０３に当接して配備される。これにより原稿の斜行搬送を抑制することができる。なお、原稿束１０３は、ピックアップローラ１０６を介して分離部に向けて搬送される。
【００１５】
分離部では、分離パッド１０７、分離ローラ１０８により原稿束１０３の最上紙から１枚ずつ分離され、分離された１枚の原稿は、第１レジストローラ１０９を介して当該原稿の斜め搬送が修正される。その後、第２レジストローラ１１０、第１搬送ローラ１１１、第２搬送ローラ１１２、第３搬送ローラ１１３を介してさらに搬送される。
【００１６】
搬送された原稿はその後、第２搬送ローラ１１２を通過し、対向して配備された白色対向部材１１４と読取ガラス１１８の間の読取位置Ｔを通過して、さらに第３搬送ローラ１１３を通過する。原稿が読取位置Ｔを通過する際に原稿画像を読み取って画像情報を取得する。
【００１７】
第３搬送ローラ１１３を通過した原稿は、第４搬送ローラ１１５、排紙ローラ１１６を介してさらに搬送され、その後原稿排紙トレイ１１７に排紙される。以下、読取装置１０による原稿の読み取り動作について説明する。
【００１８】
読取ユニット１２７は、原稿が読取位置Ｔを通過する際に光源１１９、１２０を介して当該原稿に光を照射し、その反射光が反射ミラー１２１、１２２、１２３を介して結像レンズ１２４へ導かれるように構成される。結像レンズ１２４で収束された光は、ＣＣＤ（Charge Coupled Device）などの撮像素子をライン上に配置したラインセンサ１２５に結像される。結像された光信号はラインセンサ１２５を介して電気信号（アナログ信号）に変換される。また、この電気信号を信号処理基板１２６を介してデジタル信号に変換した後に画像処理が行われる。
【００１９】
図２は、信号処理基板１２６の主たる機能構成の一例を示すブロック図である。
信号処理基板１２６は、Ａ／Ｄコンバータ（アナログ／デジタル変換回路）２０１、ＣＰＵ（Central Processing Unit）２０２、ＲＡＭ（Random Access Memory）２０３、画像処理部２０６を含んで構成される。信号処理基板１２６は、また、ラインセンサ１２５、操作パネル２０４、搬送制御部２０５と接続される。
【００２０】
Ａ／Ｄコンバータ２０１は、ラインセンサ１２５から出力された電気信号（アナログ信号）をデジタル信号に変換する。Ａ／Ｄコンバータ２０１は、また、変換後のデータを画像データとして画像処理部２０６に送信する。ＣＰＵ２０２は、主としてラインセンサ１２５、操作パネル２０４、搬送制御部２０５、画像処理部２０６などを制御する制御手段として機能する。ＲＡＭ２０３は、画像処理部２０６における回転補正処理などの画像処理に必要な画像データを記憶する記憶手段として機能する。操作パネル２０４は、ユーザからの操作の受け付け、ユーザに向けてメッセージを通知するなどユーザインタフェースとして機能する。搬送制御部２０５は、ＣＰＵ２０２と協働して、原稿を搬送する各ローラの動作を制御する。
【００２１】
図３は、図２に示す画像処理部２０６の機能構成の一例を示すブロック図である。
画像処理部２０６は、ＲＡＭ制御部３０１、斜行量検知部３０２、異常画素検知部３０３、回転補正部３０４、異常画素補正部３０５、異常画素情報補正部３０６、異常画素情報記憶部３０７を含んで構成される。
【００２２】
ＲＡＭ制御部３０１は、ＣＰＵ２０２と協働して、Ａ／Ｄコンバータ２０１から出力された画像データをＲＡＭ２０３に記憶したり、回転補正部３０４からの要求にしたがってＲＡＭ２０３から画像データを読み出すための制御を行う。
斜行量検知部３０２は、画像データから原稿の斜行量を検知し、検知結果を斜行量情報として回転補正部３０４、異常画素情報補正部３０６に送信する。
異常画素検知部３０３は、画像データから異常画素を検知し、検知結果を異常画素情報として異常画素情報記憶部３０７へ格納する。異常画素情報は、画像データの各画素位置に対応した異常画素であるか否かを表す２値情報である。詳細は、後述する。
【００２３】
回転補正部３０４は、斜行量情報に基づいてＲＡＭ制御部３０１に画像データ要求を行い、送られてきた画像データに対して回転補正を行う。異常画素情報記憶部３０７は、異常画素検知部３０３で生成された異常画素情報を記憶する。
異常画素情報補正部３０６は、斜行量情報に基づいて異常画素情報記憶部３０７から読み出した異常画素情報を補正し、補正された異常画素情報を異常画素補正部３０５に送る。
異常画素補正部３０５は、回転補正部３０４により回転補正された補正後の画像データと、異常画素情報補正部３０６により補正された補正後の異常画素情報に基づいて異常画素の補正を行う。
【００２４】
図４は、読取装置１０による原稿の読み取り動作の一例を示すフローチャートである。なお、図４に示す各処理は、主としてＣＰＵ２０２により行われる。
ＣＰＵ２０２は、操作パネル２０４を介して、ユーザからの読み取り開始を指示する読取開始信号を検知する（Ｓ４０１）。ＣＰＵ２０２は、原稿の読み取りを開始する（Ｓ４０２）。読取位置Ｔにおいて読み取られた画像データは、画像処理部２０６に送信される。
ＣＰＵ２０２は、画像処理部２０６を介して、受け付けた画像データに対して異常画素の検知、異常画素の補正、回転補正などの画像処理を行う（Ｓ４０３）。以下、画像処理部２０６で行われる画像処理の詳細について説明する。
【００２５】
図５は、図４に示すステップＳ４０３の処理（画像処理）の詳細を説明するためのフローチャートである。なお、図５に示す各処理は、主としてＣＰＵ２０２の制御に基づいて行われる。また、図５に示すステップＳ５０１、ステップＳ５０２、ステップＳ５０３の各処理は並行して行われる処理である。
【００２６】
ＣＰＵ２０２は、ＲＡＭ制御部３０１を介して、受け付けた画像データをＲＡＭ２０３に格納する（Ｓ５０１）。
ＣＰＵ２０２は、異常画素検知部３０３を介して、受け付けた画像データが異常画素であるか否かを検知し、検知結果に応じた異常画素情報を生成する（Ｓ５０２）。詳細については後述する。
【００２７】
ＣＰＵ２０２は、斜行量検知部３０２を介して、受け付けた画像データに基づいて原稿の斜行量を検知し、検知結果に応じた斜行量情報を生成する（Ｓ５０３）。詳細については後述する。
ＣＰＵ２０２は、異常画素情報補正部３０６を介して、ステップＳ５０３の処理において生成された斜行量情報に基づいて、ステップＳ５０２の処理において生成された異常画素情報を補正する（Ｓ５０４）。詳細については後述する。
【００２８】
ＣＰＵ２０２は、回転補正部３０４を介して、ステップＳ５０３の処理において生成された斜行量情報に基づいて回転補正を行う（Ｓ５０５）。以下、その手順の一例について説明する。
ＣＰＵ２０２は、斜行量情報に基づいて、アフィン変換により出力座標に対応するＲＡＭ２０３からの読出座標を算出する。次に、算出した読出座標の周囲８画素四方のデータに基づいてバイキュービック法による補完処理を行って出力画素値を確定させる。なお、本実形態においては補完方法に参照範囲が８画素四方のバイキュービック法を用いているが、参照範囲や補完方法は別の方法であっても良い。
【００２９】
ＣＰＵ２０２は、異常画素補正部３０５を介して、ステップＳ５０４の処理において補正された補正後の異常画素情報に基づいて異常画素の補正を行う（Ｓ５０６）。詳細については後述する。
以下、図５に示すステップＳ５０２の処理内容である異常画素検知の詳細について説明する。
【００３０】
図６は、図５に示すステップＳ５０２の処理の詳細を説明するための図である。
ここで、原稿の搬送方向を副走査方向とし、副走査方向に直交する方向を主走査方向と称す。図６（ａ）はゴミや汚れなどの異物の有無による輝度値の差を説明するためのグラフであり、縦軸を輝度値とし、横軸を主走査位置としている。また、図６（ｂ）は異物の付着先を説明するための図である。
【００３１】
図６（ａ）上段のグラフに示すように、異物が付着していない場合に白色対向部材１１４を読み取った際の輝度値６０１は、ほぼ一定の高い値になる。一方、異物が付着していた場合には光源１１９、１２０から照射された光が異物によって遮られる。そのため、図６（ａ）下段のグラフに示すように、白色対向部材１１４からの反射光は異物が付着していない場合と比べて弱くなる。そのため、輝度値６０２では、光が異物によって遮られた画素の輝度値はそうでない画素の輝度値と比べて相対的に低い値になっている。
そこで、予め異物が付着していない場合の白色対向部材１１４の輝度値６０１を取得しておき、これにマージンを持たせて所定の輝度値６０３を決定しておく。そして、検知した輝度値が所定の輝度値６０３以下の輝度値である場合には異常画素候補とし、所定の輝度値６０３より高い輝度値である場合には正常画素と判断することが可能になる。
【００３２】
また、原稿は読取ガラス１１８と白色対向部材１１４の間を通過するため、白色対向部材１１４に付着した異物は原稿によって遮られ、スジ状の異常画像発生の原因とはならない。一方、読取ガラス上に異物が付着している場合、流し読みモードで読み取られる画像データには副走査方向にスジ状の異常画像が発生する。このため、白色対向部材１１４に付着した異物による異常画素候補は補正の対象外とし、正常画素として扱う。つまり、読取ガラス上に付着した異物による異常画素候補のみを補正対象画素（異常画素）として扱う。
【００３３】
また、図６（ｂ）に示すように、読取ガラス１１８面上に異物が付着している場合、原稿先端位置が読み取られた後も途切れることの無いスジ状の異常画像（実線６０４）が生じる。これに対し、白色対向部材１１４上に異物が付着している場合、読み取り開始位置から原稿先端位置までのスジ状の異常画像（実線６０５）が生じ、原稿先端位置から後にはスジ状の異常画像が現れない。つまり、原稿の先端を基準に前方の領域においてのみスジ状の異常画像が現れる。このため、検知された異常画素候補の主走査位置を原稿先端位置を基準にして前後の領域で比較し、比較結果から異常画素候補が原稿先端の前後両方の領域において存在するか否かを判断する。これにより、異物が読取ガラス１１８と白色対向部材１１４のどちらに付着したものであるかを判断することが可能になる。
【００３４】
図７は、図５に示すステップＳ５０２の処理（異常画素情報の生成）の詳細を説明するためのフローチャートである。なお、図６（ｂ）を参照しながら説明を進める。
ＣＰＵ２０２は、副走査カウンタｙの値を初期化（ｙ＝０）する（Ｓ７０１）。ＣＰＵ２０２は、副走査カウンタｙの値が原稿先端より前の領域にあらかじめ設定したラインｙ０（図６（ｂ）参照）であるか否かを判断する（Ｓ７０２）。ｙ＝ｙ０の場合（Ｓ７０２：Ｙｅｓ）、ＣＰＵ２０２は、ステップＳ７０４の処理に進む。また、そうでない場合（Ｓ７０２：Ｎｏ）、ステップＳ７０３の処理に進む。
ＣＰＵ２０２は、原稿先端より前の領域であるｙ＝ｙ０のラインにおける、１ライン分の異常画素候補判定（第１の異常画素候補判定）を行う（Ｓ７０４）。詳細について後述する。
【００３５】
ＣＰＵ２０２は、ステップＳ７０３では副走査カウンタｙの値がｙ１の値より大きく、且つ、ｙ２の値未満の範囲にあるか否かを判断する（Ｓ７０３）。範囲内であると判断した場合（Ｓ７０３：Ｙｅｓ）、ＣＰＵ２０２は、ステップＳ７０５の処理に進む。また、そうでない場合（Ｓ７０３：Ｎｏ）、ステップＳ７０６の処理に進む。ここで、ｙ２の値はｙ１の値より相対的に大きな値であり、両者とも原稿先端位置よりも後の原稿領域にある位置を設定する。
【００３６】
ＣＰＵ２０２は、原稿先端より後の領域（ｙ１＜ｙ＜ｙ２）における複数ラインに対する異常画素判定を行い、ステップＳ７０４の処理における異常画素候補判定の結果と比較して、最終的に異常画素であるか否かを判定（第２の異常画素候補判定）する（Ｓ７０５）。詳細については後述する。
【００３７】
ＣＰＵ２０２は、副走査カウンタｙの値が画像読取領域の副走査サイズｈｅｉｇｈｔの値未満であるか否かを判断する（Ｓ７０６）。ｙ＜ｈｅｉｇｈｔである場合（Ｓ７０６：Ｙｅｓ）、ＣＰＵ２０２は、副走査カウンタｙの値をインクリメント（ｙ＝ｙ＋１）してその後、ステップＳ７０２の処理に戻る（Ｓ７０７）。また、そうでない場合（Ｓ７０６：Ｎｏ）、一連の処理を終了する。
以下、図７に示すステップＳ７０４の処理（第１の異常画素候補判定）について説明する。
【００３８】
図８は、図７に示すステップＳ７０４の処理（第１の異常画素候補判定）の詳細を説明するためのフローチャートである。
ＣＰＵ２０２は、主走査カウンタｘの値を初期化（ｘ＝０）する（Ｓ８０１）。ＣＰＵ２０２は、注目画素が所定の輝度値以下であるか否かを判断する（Ｓ８０２）。所定の輝度値以下である場合（Ｓ８０２：Ｙｅｓ）、ＣＰＵ２０２は、第１判定値に異常画素を示す値を設定する（Ｓ８０３）。ここでは、異常画素を示す値として第１判定値＝１を設定するものとする。また、そうでない場合（Ｓ８０２：Ｎｏ）、第１判定値に正常画素を示す値を設定する。ここでは、正常画素を示す値として第１判定値＝０を設定するものとする。
【００３９】
ＣＰＵ２０２は、ステップＳ８０３、あるいはステップＳ８０４の処理において設定された第１判定値を主走査位置毎に異常画素情報記憶部３０７に格納する（Ｓ８０５）。
ＣＰＵ２０２は、主走査カウンタｘの値が主走査サイズｗｉｄｔｈの値未満であるか否かを判断する（Ｓ８０６）。主走査サイズｗｉｄｔｈの値未満である場合（Ｓ８０６：Ｙｅｓ）、ＣＰＵ２０２は、主走査カウンタｘの値をインクリメント（ｘ＝ｘ＋１）し、ステップＳ８０２に戻る（Ｓ８０７）。また、そうでない場合（Ｓ８０７：Ｎｏ）、一連の処理を終了する。
以下、図７に示すステップＳ７０５の処理（第２の異常画素候補判定）について説明する。
【００４０】
図９は、図７に示すステップＳ７０５の処理（第２の異常画素候補判定）の詳細を説明するためのフローチャートである。また、図１０は、異常画素情報記憶部３０７に格納された異常画素情報の変換の一例を説明するための図である。
なお、図９に示すステップＳ９０１、Ｓ９０２、Ｓ９０９、Ｓ９１０の各処理は、図８に示すステップＳ８０１、Ｓ８０２、Ｓ８０６、Ｓ８０７の各処理と同様であるため、その説明を省略する。
【００４１】
ＣＰＵ２０２は、異常画素候補が副走査方向に連続する画素数を計数し、その長さが所定の長さ以上であるか否かを判断する（Ｓ９０３）。これは原稿画像内の罫線や文字を表す正常画素と異物の影響を受けた異常画素とを切り分けるための処理であり、異常画素は読取画像の全域に現れる。そのため、判定領域全域における副走査方向において異常と判定されるものを異常画素候補、そうではないものを正常画素として扱う。
【００４２】
ＣＰＵ２０２は、所定の長さより長い場合（Ｓ９０３：Ｙｅｓ）、第２判定値に異常画素を示す値を設定する（Ｓ９０４）。ここでは、異常画素を示す値として第２判定値＝１を設定する。また、そうではない場合（Ｓ９０３：Ｎｏ）、ステップＳ９０７の処理に進む。
ＣＰＵ２０２は、ステップＳ８０５の処理において主走査位置毎に異常画素情報記憶部３０７に格納された第１判定値の中から主走査位置ｘに対応する第１判定値を取得する（Ｓ９０５）。
【００４３】
ＣＰＵ２０２は、取得した第１判定値と第２判定値が等しいか否かを判断する（Ｓ９０６）。等しいと判断した場合（Ｓ９０６：Ｙｅｓ）、ＣＰＵ２０２は、主走査位置毎に、異常画素情報記憶部３０７の情報を第２判定値に書き換えて格納する（Ｓ９０８）。また、そうでない場合（Ｓ９０６：Ｎｏ）、第２判定値に正常画素を示す値を設定する（Ｓ９０７）。ここでは、正常画素を示す値として第２判定値＝０を設定する。
【００４４】
ＣＰＵ２０２は、ステップＳ９０８の処理において異常画素情報記憶部３０７に格納された異常画素情報を、図１０に示すような異常画素の主走査開始位置ｓと連続幅ｗで表す形式の情報に変換する（Ｓ９１１）。
以下、図５に示すステップＳ５０３の処理内容である斜行量検知の詳細について説明する。
【００４５】
図１１は、斜行量検知部３０２の機能構成の一例を示すブロック図である。
斜行量検知部３０２は、エッジ検出部１１０１、エッジ検出データ用メモリ１１０２、斜行量検出部１１０３を含んで構成される。
エッジ検出部１１０１は、画像データにエッジ検出処理を行い画像のエッジを検出し、その結果をエッジ検出データ用メモリ１１０２に転送して保持するように構成される。
【００４６】
図１２は、エッジ検出部１１０１によるエッジ検出の一例を説明するための図である。図１２（ａ）は、読み取られた原稿の画像データ及びエッジ検出の範囲設定の一例であり、（ｂ）は、この原稿のエッジ検出結果（エッジ検出された画像データ）の一例である。また、図１３は、斜行量検出の動作の一例を説明するための図である。
【００４７】
エッジ検出部１１０１は、エッジ検出された画像データをエッジ検出後データとしてエッジ検出データ用メモリ１１０２に出力する。
斜行量検出部１１０３は、エッジ検出部１１０１が生成したエッジ検出後データをエッジ検出データ用メモリ１１０２から読み出して、原稿の左上座標と斜行角を求める演算処理を受け持つ。以下、図１２（ｂ）に示すエッジ検出結果に基づいて、斜行量検出部１１０３が原稿の左上座標と斜行角を導出する処理の詳細について説明する。
【００４８】
斜行量検出部１１０３は、エッジ検出された画像データに対し図１３の矢印（１）に示すようにエッジ検出範囲のｘ座標最小ポジションから所定座標プラス側にオフセットしたｘ座標にてｙ方向にエッジデータが最初に見つかるｙ座標をサーチする。例えばここで、ｙ座標が最大となってもエッジデータが見つからない場合には、更に所定座標プラス側にオフセットしたｘ座標にてエッジデータが最初に見つかるｙ座標をサーチする。ここでエッジデータが見つかった場合はこの座標を座標Ｌ（１）ｔｅｍｐ（ｘ、ｙ）として一旦保持する。なお、所定ｘ座標までオフセットしてもエッジデータが見つからなかった場合はエラーとして処理する。
【００４９】
次に斜行量検出部１１０３は、エッジ検出範囲のｘ座標最大ポジションから所定座標マイナス側にオフセットしたｘ座標にてｙ方向にエッジデータが最初に見つかるｙ座標をサーチする。例えばここで、ｙ座標が最大となってもエッジデータが見つからない場合、更に所定座標マイナス側にオフセットしたｘ座標にてエッジデータが最初に見つかるｙ座標をサーチする。なお、エッジデータが見つかった場合はこの座標を座標Ｒ（２）ｔｅｍｐ（ｘ、ｙ）として一旦保持する。また、所定ｘ座標までオフセットしてもエッジデータが見つからなかった場合はエラーとして処理する。
斜行量検出部１１０３は、座標Ｌ（１）ｔｅｍｐ（ｘ、ｙ）、座標Ｒ（２）ｔｅｍｐ（ｘ、ｙ）に基づいて、図１３に示す直線Ｆを表す一次式：ｙ＝ａｘ＋ｂを導出する。
【００５０】
斜行量検出部１１０３は、座標Ｌ（１）ｔｅｍｐ（ｘ、ｙ）を検出したｙ座標から所定ｙ座標進んだ位置のエッジ検出範囲のｘ座標最小ポジションからｘ方向にエッジデータが最初に見つかるｘ座標をサーチする。ここでエッジデータが見つかった場合にはこの座標を座標Ｌ（３）ｔｅｍｐ（ｘ、ｙ）として一旦保持する。また、エッジデータが見つからなかった場合はエラーとして処理する。
【００５１】
斜行量検出部１１０３は、座標Ｌ（３）ｔｅｍｐ（ｘ、ｙ）を導出したｙ座標から更に所定ｙ座標進んだ位置のエッジ検出範囲のｘ座標最小ポジションからｘ方向にエッジデータが最初に見つかるｘ座標をサーチする。ここでエッジデータが見つかった場合、この座標を座標Ｌ（４）ｔｅｍｐ（ｘ、ｙ）として一旦保持する。また、エッジデータが見つからなかった場合にはエラーとして処理する。この座標Ｌ（３）ｔｅｍｐ（ｘ、ｙ）、座標Ｌ（４）ｔｅｍｐ（ｘ、ｙ）に基づいて図１３に示す直線Ｌを示す一次式：ｙ＝ａｘ＋ｂを導出する。
【００５２】
斜行量検出部１１０３は、直線Ｆ、直線Ｌの交点を導出して、図１３に示す原稿左上座標Ｌ（ｘ、ｙ）を導出する。斜行量検出部１１０３は、導出した座標データを回転中心座標（ｘｏｆｓｔ, ｙｏｆｓｔ）、直線Ｆの傾きａを回転角度θに対応するｔａｎθとして回転補正部３０４及び異常画素情報補正部３０６に出力する。なお、エラーの際はエラー情報をＣＰＵ２０２に出力する。
次に、図５中ステップＳ５０４において、異常画素情報補正部３０６内で行われる異常画素情報補正動作について説明する。
【００５３】
図１４は、読取装置１０が行う異常画素情報に基づいた異常画素の補正を説明するための図である。図１４（ａ）は回転前の異常画素情報を示し、（ｂ）は、回転させた異常画素情報を示し、（ｃ）は、補正した異常画素情報を示し、（ｄ）は、回転前の異常画像、（ｅ）は、回転補正後の異常画像を示し、（ｆ）は、異常画素補正後の画像を示している。
図１４（ｄ）に示すような異常画像に対応する異常画素情報（図１４（ａ））に対して、斜行量情報に基づいて回転補正を行う。回転補正により図１４（ｂ）に示すような階段状のデータとなる。これに対してさらに異常画素情報の２値情報のうち異常画素を表す画素に対して左右に１画素分拡張させる補正を行う（図１４（ｃ））。
１画素分拡張させる補正が行われた異常画素情報に基づいて、図１４（ｅ）に示すような回転補正された異常画像を補正する。これにより図１４（ｆ）に示すように異常画素を完全に補正することができる。以下、異常画素情報に基づいた異常画像補正の処理の詳細について図１５を用いて説明する。
【００５４】
図１５は、異常画像の補正処理を説明するための図である。
最初に回転補正について説明する。図１５に示すように、主走査方向に角度θ傾いた原稿を回転補正した場合、副走査方向に沿った直線１５０１であった異常画素は、回転補正後には副走査方向に対して角度θだけ傾いた斜線１５０２となる。
したがって、回転補正後の異常画素は、副走査方向に１ライン進むとｔａｎθ画素だけ主走査方向にずれることになる。また、回転補正後の先頭ラインにおける主走査開始位置ｓ’は、回転前の主走査開始位置をｓ、回転角度をθ、回転中心のｘ座標をｘｏｆｓｔとしたときに以下の式（１）で表すことができる。
【００５５】
【数１】
2017201755.tif 000003
【００５６】
従って、ｙｏライン目における回転補正した異常画素の主走査開始位置ｓ’は、下記式（２）で求めることができる。
【００５７】
【数２】
2017201755.tif 000004
【００５８】
なお、下記数３は、ｘを超えない最大の整数を表すものとし、式（２）における＋０．５の項と組み合わせて演算結果を小数第１位で四捨五入している。また、この演算は単に演算結果を整数に丸めるためのものであり、切り捨てでも切り上げでもよい。
【００５９】
【数３】
2017201755.tif 000005
【００６０】
ここで、異常画素情報の拡張補正（図１４（ｃ）参照）について説明する。異常画素情報を左右に１画素分拡張した場合、主走査開始位置ｓ’は１画素左にずれることになる。従って、式（１）の回転補正と合わせて異常画素の主走査開始位置ｓ’は最終的に以下の式（３）により導出することができる。
【００６１】
【数４】
2017201755.tif 000006
【００６２】
また、拡張補正後の異常画素連続幅ｗ’は、左右の計２画素分拡張されるため、異常画素連続幅ｗ’は、拡張前の異常画素連続幅をｗとしたときに下記式（４）により導出することができる。
【００６３】
【数５】
2017201755.tif 000007
【００６４】
このようにして異常画素情報の回転補正、及び、拡張補正が行われる。
なお、斜行量検知部３０２から送られてくる斜行量情報はｔａｎθに相当する情報であるため、ｔａｎθから式中のｃｏｓθ及びｓｉｎθは演算によって求めるか、予め演算した結果を格納したルックアップテーブルを参照するように構成してもよい。
【００６５】
次に、図５に示すステップＳ５０６の処理において、異常画素補正部３０５が行う異常画素補正動作について説明する。本実施形態では、補正領域の境界画素を用いて補正領域全体の画素を線形補完するものとする。なお、ステップＳ５０４の処理において異常画素情報補正が行われている。そのため、境界画素の値は正常な範囲になっていることから補正処理に用いることができる。
【００６６】
図１６は、異常画素補正部３０５による異常画素補正の動作を説明するための図である。
図１６に示すように、補正領域がＸ０画素目からＸＬ画素目にあり、Ｘ０画素目の輝度値をＢ０、ＸＬ画素目の輝度値をＢＬとする。この際、主走査位置ＸＫにおける補正値ＢＫは下記式（５）によって求めることが出来る。
【００６７】
【数６】
2017201755.tif 000008
【００６８】
異常画素補正部３０５は、式（５）に基づいてＸ０画素目からＸＬ画素目までのすべての画素の輝度値を補正する。
【００６９】
このように、本実施系形態に係る読取装置１０は、原稿の流し読み時に発生する異常画素の補正と回転補正を併用した際の読取画像の品質を向上させることができる。
【００７０】
［第２実施形態］
本実施形態では、第１実施形態における図５に示すステップＳ５０４の処理における異常画素情報に対する補正動作のうち拡張補正の方法が異なる場合を挙げて説明する。
なお、第１実施形態において既に説明した機能構成と同じものは、同一の符号を付すとともにその説明を省略する。
【００７１】
図１７は、本実施形態に係る異常画素情報の拡張補正の動作を説明するための図である。  図１８は、本実施形態における異常画素情報に基づいた異常画素の補正を説明するための図である。図１８（ａ）は回転させた異常画素情報を示し、（ｂ）は、補正した異常画素情報を示し、（ｃ）は、回転補正後の異常画像を示し、（ｄ）は、異常画素補正後の画像を示している。
【００７２】
図１７（ａ）に示す異常画素に隣接する画素（主走査位置１７０１）における副走査方向の輝度値は、図１７（ｂ）に示すグラフのようになる。図１７（ｂ）に示すように正常画素の範囲から異常画素の範囲へと徐々に輝度値が変化していくことが見て取れる。また、異常画素の主走査開始位置が１画素シフトしたラインから次に１画素シフトするラインまでの周期は、斜行角度をθとしたとき１／ｔａｎθである。そのため、異常画素情報を左右に一律に拡張することなく、図１８に示すように、異常画素であるか否かを識別するための閾値Ｌｔｈを下回った部分のみを拡張補正するように構成する。詳細は後述する。
【００７３】
図１９は、本実施形態における異常画素情報の拡張補正動作の一例を示すフローチャートである。
なお、図１９に示す各処理では、主走査方向へ１画素シフトしたラインを起点として、閾値Ｌｔｈを下回る画素までの距離を距離ｙｔｈとすると１／ｔａｎθ周期で増減する副走査部分カウンタｙ’の値が距離ｙｔｈの値を超えたラインは異常画素情報を拡張補正する。また、それ以下の部分では拡張補正を行わない。
【００７４】
また、この時の距離ｙｔｈの値は斜行量に応じて変更する。本実施形態では、輝度値の変化が線形であると仮定し、白地部の輝度値をＬｗスジ画像の輝度値をＬｂ、異常画素と判定する閾値をＬｔｈとする。この場合、距離ｙｔｈは下記式（６）により導出することができる。
【００７５】
【数７】
2017201755.tif 000009
【００７６】
以下、図１９に示す各処理について説明する。
ＣＰＵ２０２は、副走査全体カウンタｙ及び副走査部分カウンタ値ｙ’の値を０に初期化する（Ｓ１９０１）。
ＣＰＵ２０２は、ｙ’の値が１／ｔａｎθより大きいか否かを判断する（Ｓ１９０２）。大きいと判断した場合（Ｓ１９０２：Ｙｅｓ）、ステップＳ１９０３の処理に進む。また、そうでない場合（Ｓ１９０２：Ｎｏ）、ステップＳ１９０４に進む。
【００７７】
ＣＰＵ２０２は、ｙ’の値を０に初期化する（Ｓ１９０３）。ＣＰＵ２０２は、ｙ’の値が距離ｙｔｈの値より大きいか否かを判断する（Ｓ１９０４）。大きいと判断した場合（Ｓ１９０４：Ｙｅｓ）、ＣＰＵ２０２は、異常画素情報の回転補正、及び、拡張補正を行う（Ｓ１９０５）。また、そうでない場合（Ｓ１９０４：Ｎｏ）、異常画素情報の回転補正のみを行う（Ｓ１９０６）。
【００７８】
ＣＰＵ２０２は、ｙの値、及び、ｙ’の値に１加算する（Ｓ１９０７）。ＣＰＵ２０２は、ｙの値が画像読取領域の副走査サイズｈｅｉｇｈｔ未満であるか否かを判断する（Ｓ１９０８）。ｙ＜ｈｅｉｇｈｔであると判断した場合（Ｓ１９０８：Ｎｏ）、ステップＳ１９０２の処理に戻る。また、そうでない場合（Ｓ１９０８：Ｙｅｓ）、異常画素情報補正動作を終了する。つまり、この場合の異常画素情報の補正は、斜行量に基づいて決定された一定の周期で変更されることになる。
【００７９】
上記説明した実施形態は、本発明をより具体的に説明するためのものであり、本発明の範囲が、これらの例に限定されるものではない。
【符号の説明】
【００８０】
１０１・・・リーダーユニット、１０２・・・ＡＤＦ、１１８・・・読取ガラス、１１９、１２０・・・光源、１２５・・・ラインセンサ、１２６・・・信号処理基板、３０２・・・斜行量検知部、３０３・・・異常画素検知部、３０４・・・回転補正部、３０５・・・異常画素補正部、３０６・・・異常画素情報補正部。
【図１】
2017201755.tif 000010
【図２】
2017201755.tif 000011
【図３】
2017201755.tif 000012
【図４】
2017201755.tif 000013
【図５】
2017201755.tif 000014
【図６】
2017201755.tif 000015
【図７】
2017201755.tif 000016
【図８】
2017201755.tif 000017
【図９】
2017201755.tif 000018
【図１０】
2017201755.tif 000019
【図１１】
2017201755.tif 000020
【図１２】
2017201755.tif 000021
【図１３】
2017201755.tif 000022
【図１４】
2017201755.tif 000023
【図１５】
2017201755.tif 000024
【図１６】
2017201755.tif 000025
【図１７】
2017201755.tif 000026
【図１８】
2017201755.tif 000027
【図１９】
2017201755.tif 000028
【図２０】
2017201755.tif 000029