(57)【特許請求の範囲】
【請求項１】
ラインイメージセンサにより原稿画像を走査して読み取られた画像データと、前記画像データに対応する走査位置とを順次入力し、走査位置に基づいて前記画像データを画像メモリに格納する画像処理装置であって、
重複して走査する重なり走査領域内の、前記画像データと前記画像メモリに格納された格納データとから前記走査位置の位置ずれを所定の間引かれたライン位置で検出し、前記位置ずれを補正する補正値をラインごとに逐次出力する位置ずれ検出手段と、前記補正値に基づいて前記走査位置を補正する補正手段と、補正された走査位置に基づいて前記画像データを前記画像メモリに格納する写像手段とを少なくとも備えたことを特徴とする画像処理装置。
【請求項２】
補正値を所定の割合で可変する補正制御手段がさらに備わり、補正手段は、所定の割合で可変された前記補正値に基づいて走査位置を補正する請求項１に記載の画像処理装置。
【請求項３】
補正制御手段は、位置ずれ検出手段からの補正値を分割した値を可変制御量とし、走査位置が異なるごとに段階的に前記補正値を所定の割合で可変する請求項２に記載の画像処理装置。
【請求項４】
補正手段は、位置ずれ検出手段から出力される補正値を累積した累積補正値を生成する保持手段を備え、前記累積補正値によって走査位置を補正する請求項１に記載の画像処理装置。
【請求項５】
原稿画像を走査して読み取られた画像データと、前記画像データに対応する走査位置とを順次入力し、走査位置に基づいて前記画像データを画像メモリに格納する画像処理装置であって、
重複して走査する重なり走査領域内の、前記画像データと前記画像メモリに格納された格納データとから前記走査位置の位置ずれを検出し、前記位置ずれを補正する補正値を出力する位置ずれ検出手段と、前記補正値に基づいて前記走査位置を補正する補正手段と、補正された走査位置に基づいて前記画像データを前記画像メモリに格納する写像手段とを少なくとも備え、かつ、
前記写像手段は、隣接する画素から補間によって画像データを高密度化する画素密度変換手段と、走査位置に基づいて、高密度化した前記画像データ中の各画素の原稿上における実数座標値を、前記所定の画素密度を単位として算出する手段と、前記原稿上における実数座標値を、前記所定の画素密度を単位とする整数座標値に変換する整数化手段と、前記座標値の整数化の際に生じる座標誤差値を算出する手段と、前記整数座標値を前記画像メモリのアドレスに変換する手段と、前記座標誤差値の大きさと予め決められた所定の値とを比較する手段とを備え、前記座標誤差値の大きさが前記所定の値以下である画素のみを前記画像メモリのアドレスに格納することを特徴とする画像処理装置。
【請求項６】
画素密度変換手段は、被処理画素とその周辺の隣接画素を用いて補間画素を生成する手段を備え、当該手段によって画像データを２倍の画素密度に変換する請求項５に記載の画像処理装置。
【請求項７】
被処理画素Ｐi,j （但し、画像データ中、ｉライン目の画像データのｊ番目の画素データを示す。）とその周辺の隣接画素Ｐi,j+1 、Ｐi-1,j 、Ｐi-1,j+1 を用いて、下記（数１）より補間画素Ｑi,j 、Ｒi,j 、Ｓi,j を算出する請求項６に記載の画像処理装置。
［数１］
Ｑi,j ＝（Ｐi,j ＋Ｐi,j+1 ）／２
Ｒi,j ＝（Ｐi,j ＋Ｐi-1,j ）／２
Ｓi,j ＝（Ｐi,j ＋Ｐi,j+1 ＋Ｐi-1,j ＋Ｐi-1,j+1 ）／４
【請求項８】
所定の値は、所定の画素密度を単位として０．３〜０．３５である請求項５に記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、原稿画像を走査して読み取られた画像データを、画像データに対応する走査位置に基づいて画像メモリに格納するための画像処理装置に関する。
【０００２】
【従来の技術】
従来、手動によって原稿上を自由走査して原稿画像を読み取るハンドスキャナにおいては、読み取りセンサの原稿上の走査位置を逐次検出し、検出された走査位置に基づいて画像データを画像メモリに格納していた。
【０００３】
読み取りセンサの原稿上の走査位置を検出する方法としては、補助装置として基準格子が印刷されたシートを用い、原稿上に置かれたシートの上を、基準格子を検出する読み取りセンサと一体になった光感知素子によって走査することにより、光感知素子の出力から基準格子に対する画像データの位置を算出する方法がある（例えば、米国特許第４、２６０、９７９号）。
【０００４】
また、補助装置としてタブレットを用い、タブレット上に載置された原稿の上を、読み取りセンサと一体になった検出コイルによって走査することにより、検出コイルの出力からタブレット上の座標位置を検出し、検出された座標位置に基づいて画像データの位置を算出する方法がある（例えば、米国特許第４、５８１、７６１号）
また、読み取りセンサと一体に移動する車輪に取り付けられ、車輪の回転に伴ってパルスを発生するエンコーダの出力から読み取りセンサの位置を検出し、検出された位置に基づいて画像データの位置を算出する方法がある（例えば、特開昭６２−１５９６４号公報）。
【０００５】
これら従来の検出方法によって検出された走査位置に基づいて画像データの座標上の位置を算出し、画像メモリの所定のアドレスに格納する画像処理装置を用いれば、手動走査による手ぶれや蛇行の影響を排除することができるので、画像メモリ上の格納データに画像歪みが生じることはない。
【０００６】
【発明が解決しようとする課題】
しかし、上記した従来の構成では、以下のような問題がある。
基準格子が印刷されたシートやタブレットなどの補助装置を用いる場合、走査位置の検出精度を高め、絶対位置誤差を小さくするには、精密な加工と高価な補正回路が必要となり、通常、コストが高くなる。また、精度の低い補助装置を用いると、検出する走査位置に大きな絶対位置誤差が生じる。
【０００７】
一方、読み取りセンサと一体に移動する車輪に取り付けられ、車輪の回転に伴ってパルスを発生するエンコーダを用いる場合には、走査開始位置を基準点として逐次検出されるエンコーダのパルスをカウントして走査位置を算出するので、機械精度、車輪の滑りなどによって大きな累積位置誤差が生じる。
【０００８】
検出される走査位置の絶対位置誤差、あるいは累積位置誤差が大きくなると、読み取りセンサが実際に走査している原稿上の正規の走査位置との間で大きな位置誤差が生じる（以下、この位置誤差を「位置ずれ」という。）。
【０００９】
この位置ずれした走査位置に基づいて画像データの座標上の位置を算出し、画像メモリの所定のアドレスに格納すると、画像メモリ上で再現された平面画像に大きな画像歪みが生じるといった問題がある。この位置ずれによる平面画像の画像歪みについて、図１９（ｂ）〜（ｄ）を用いて説明する。
【００１０】
図１９（ｂ）に示すように、ハンドスキャナ１００４によって原稿１０００の上を自由に走査する場合について説明する。図１９（ｃ）に示すように、一方向のみを読み取る小型のハンドスキャナでは、原稿１０００の上の大画面を読み取ることはできない。しかし、一方向に対してセンサの読み取り範囲だけ画像メモリ上に画像データが格納されるので、接続ずれは発生しない。図１９（ｄ）に示すように、一筆書きの往復走査によって原稿１０００の上の大画面を読み取るハンドスキャナでは、位置ずれした走査位置に基づいて画像データを画像メモリに格納すると、画像の接続部が位置ずれを起こし、画像が歪んでしまう。特に、累積位置誤差を発生させるスキャナでは、走査する範囲が広くなればなるほど位置ずれがひどくなり、画像自体を判読することができなくなる。
【００１１】
次に、画像メモリに画像データを格納する場合の問題点について説明する。
図２２に示すように、画像メモリ２００１内に画像データが格納される箇所（画像データ格納画素）２００２と、画像データが格納されない箇所（以下「写像抜け領域」という。）２００３があると、黒ベタ領域ではかなりよく目立つ白筋となり、画質品位が著しく劣化する。また、図２３に示すように、この写像抜け領域が文字領域で発生した場合には、文字に白筋が入るなど、文字の品質が著しく劣化する。
【００１２】
本発明は、従来技術における前記課題を解決するため、検出される走査位置に誤差が含まれていても、位置ずれを補正し、かつ、位置ずれの補正によって起こる写像抜け領域の発生を防止することにより、接続ずれのない高品位な接続画像を生成することのできる画像処理装置を提供することを目的とする。
【００１３】
【課題を解決するための手段】
前記目的を達成するため、本発明に係る画像処理装置の第１の構成は、ラインイメージセンサにより原稿画像を走査して読み取られた画像データと、前記画像データに対応する走査位置とを順次入力し、走査位置に基づいて前記画像データを画像メモリに格納する画像処理装置であって、重複して走査する重なり走査領域内の、前記画像データと前記画像メモリに格納された格納データとから前記走査位置の位置ずれを所定の間引かれたライン位置で検出し、前記位置ずれを補正する補正値をラインごとに逐次出力する位置ずれ検出手段と、前記補正値に基づいて前記走査位置を補正する補正手段と、補正された走査位置に基づいて前記画像データを前記画像メモリに格納する写像手段とを少なくとも備えたことを特徴とする。
【００１４】
前記本発明の画像処理装置の第１の構成においては、補正値を所定の割合で可変する補正制御手段がさらに備わり、補正手段は、所定の割合で可変された前記補正値に基づいて走査位置を補正するのが好ましい。また、この場合には、補正制御手段は、位置ずれ検出手段からの補正値を分割した値を可変制御量とし、走査位置が異なるごとに段階的に前記補正値を所定の割合で可変するのが好ましい。
【００１８】
また、前記本発明の画像処理装置の第１の構成においては、補正手段は、位置ずれ検出手段から出力される補正値を累積した累積補正値を生成する保持手段を備え、前記累積補正値によって走査位置を補正するのが好ましい。
【００１９】
また、本発明に係る画像処理装置の第２の構成は、原稿画像を走査して読み取られた画像データと、前記画像データに対応する走査位置とを順次入力し、走査位置に基づいて前記画像データを画像メモリに格納する画像処理装置であって、重複して走査する重なり走査領域内の、前記画像データと前記画像メモリに格納された格納データとから前記走査位置の位置ずれを検出し、前記位置ずれを補正する補正値を出力する位置ずれ検出手段と、前記補正値に基づいて前記走査位置を補正する補正手段と、補正された走査位置に基づいて前記画像データを前記画像メモリに格納する写像手段とを少なくとも備え、かつ、前記写像手段は、隣接する画素から補間によって画像データを高密度化する画素密度変換手段と、走査位置に基づいて、高密度化した前記画像データ中の各画素の原稿上における実数座標値を、前記所定の画素密度を単位として算出する手段と、前記原稿上における実数座標値を、前記所定の画素密度を単位とする整数座標値に変換する整数化手段と、前記座標値の整数化の際に生じる座標誤差値を算出する手段と、前記整数座標値を前記画像メモリのアドレスに変換する手段と、前記座標誤差値の大きさと予め決められた所定の値とを比較する手段とを備え、前記座標誤差値の大きさが前記所定の値以下である画素のみを前記画像メモリのアドレスに格納することを特徴とする。
また、前記本発明の画像処理装置の第２の構成においては、画素密度変換手段は、被処理画素とその周辺の隣接画素を用いて補間画素を生成する手段を備え、当該手段によって画像データを２倍の画素密度に変換するのが好ましく、さらには、被処理画素Ｐi,j （但し、画像データ中、ｉライン目の画像データのｊ番目の画素データを示す。）とその周辺の隣接画素Ｐi,j+1 、Ｐi-1,j 、Ｐi-1,j+1 を用いて、上記（数１）より補間画素Ｑi,j 、Ｒi,j 、Ｓi,j を算出するのが好ましい。
また、前記本発明の画像処理装置の第２の構成においては、所定の値は、所定の画素密度を単位として０．３〜０．３５であるのが好ましい。
【００２２】
【作用】
前記本発明の画像処理装置の第１の構成によれば、ラインイメージセンサにより原稿画像を走査して読み取られた画像データと、前記画像データに対応する走査位置とを順次入力し、走査位置に基づいて前記画像データを画像メモリに格納する画像処理装置であって、重複して走査する重なり走査領域内の、前記画像データと前記画像メモリに格納された格納データとから前記走査位置の位置ずれを所定の間引かれたライン位置で検出し、前記位置ずれを補正する補正値をラインごとに逐次出力する位置ずれ検出手段と、前記補正値に基づいて前記走査位置を補正する補正手段と、補正された走査位置に基づいて前記画像データを前記画像メモリに格納する写像手段とを少なくとも備えていることにより、入力した走査位置に位置誤差が含まれていても、重複して走査する重なり走査領域内の画像データと格納データとの画像情報から走査位置の位置ずれを検出して、位置ずれを補正することができる。そして、この補正した走査位置に基づいて画像データを画像メモリに格納することにより、走査位置に位置誤差によって生じる画像の接続ずれを防止し、画像メモリ内で接続された平面画像の画像歪みを低減することができる。
【００２３】
前記本発明の画像処理装置の第１の構成において、補正値を所定の割合で可変する補正制御手段がさらに備わり、補正手段は、所定の割合で可変された前記補正値に基づいて走査位置を補正するという好ましい例によれば、位置ずれを補正する補正値を所定の割合で可変制御し、補正された走査位置に基づいて画像データを画像メモリに格納することができるので、走査位置の補正によって生じる画像メモリ内の画像データが格納されない領域の発生が抑制される。また、走査位置が急激に補正されないことから、画像データと格納データとの画像情報から位置ずれを検出する場合の相関値の検出範囲を小さくすることができるので、回路の小型化が図られる。さらには、画像メモリ内の画像データが格納されない領域の発生（写像抜け）が防止されることから、重複した走査領域内の画像データと格納データとの画像情報から位置ずれを検出する際の相関値の誤差を小さくすることができるので、位置ずれ検出の精度が向上する。
【００２７】
また、前記本発明の画像処理装置の第１の構成において、補正手段は、位置ずれ検出手段から出力される補正値を累積した累積補正値を生成する保持手段を備え、前記累積補正値によって走査位置を補正するという好ましい例によれば、位置ずれを無くす補正値を累積させることにより、累積誤差を含む走査位置の補正処理を小さい回路で実現することができる。なぜなら、累積された補正位置を中心に位置ずれを検出するため、位置ずれの検出範囲を小さくすることができるからである。
【００２８】
また、本発明に係る画像処理装置の第２の構成によれば、原稿画像を走査して読み取られた画像データと、前記画像データに対応する走査位置とを順次入力し、走査位置に基づいて前記画像データを画像メモリに格納する画像処理装置であって、重複して走査する重なり走査領域内の、前記画像データと前記画像メモリに格納された格納データとから前記走査位置の位置ずれを検出し、前記位置ずれを補正する補正値を出力する位置ずれ検出手段と、前記補正値に基づいて前記走査位置を補正する補正手段と、補正された走査位置に基づいて前記画像データを前記画像メモリに格納する写像手段とを少なくとも備え、かつ、前記写像手段は、隣接する画素から補間によって画像データを高密度化する画素密度変換手段と、走査位置に基づいて、高密度化した前記画像データ中の各画素の原稿上における実数座標値を、前記所定の画素密度を単位として算出する手段と、前記原稿上における実数座標値を、前記所定の画素密度を単位とする整数座標値に変換する整数化手段と、前記座標値の整数化の際に生じる座標誤差値を算出する手段と、前記整数座標値を前記画像メモリのアドレスに変換する手段と、前記座標誤差値の大きさと予め決められた所定の値とを比較する手段とを備え、前記座標誤差値の大きさが前記所定の値以下である画素のみを前記画像メモリのアドレスに格納するようにしたことにより、格納アドレスに対して誤差の小さい画素データを選択して画像メモリに格納することができるので、格納した画像の再現品位が向上する。そして、この格納データを位置ずれ検出に用いれば、歪みの小さい接続合成画像が得られ、平面画像の品位が向上する。
また、前記本発明の画像処理装置の第２の構成において、画素密度変換手段は、被処理画素とその周辺の隣接画素を用いて補間画素を生成する手段を備え、当該手段によって画像データを２倍の画素密度に変換するという好ましい例によれば、画素密度を上げることにより、画像の再現品位が向上する。さらには、補間処理を２のべき乗（２n ）で実現することができることから、回路をビットシフトで構成することができるので、回路の簡素化が図られる。そして、この場合、被処理画素Ｐi,j （但し、画像データ中、ｉライン目の画像データのｊ番目の画素データを示す。）とその周辺の隣接画素Ｐi,j+1 、Ｐi-1,j 、Ｐi-1,j+1 を用いて、上記（数１）より補間画素Ｑi,j 、Ｒi,j 、Ｓi,j を算出するという好ましい例によれば、所定の補間画素を容易に生成することができる。
また、前記本発明の画像処理装置の第２の構成において、所定の値は、所定の画素密度を単位として０．３〜０．３５であるという好ましい例によれば、写像抜け画素を無くすことができる。
【００３１】
【実施例】
以下、実施例を用いて本発明をさらに具体的に説明する。
＜第１の実施例＞
まず、本発明の第１の実施例の画像処理装置について、図面を参照しながら説明する。図１は本発明の第１の実施例における画像処理装置及び原稿画像を読み取り走査する画像読み取り部を示すブロック図である。図１中、Ａは画像処理装置を示し、Ｂは画像読み取り部を示す。
【００３２】
図１に示すように、原稿９の上を手動によって走査し、原稿画像を読み取ることにより、ラインイメージセンサ１が画像データを生成する。そして、生成された画像データは、画像バッファ４に出力される。
【００３３】
図１６に示すように、原稿画像を読み取り走査する画像読み取り部Ｂは、ラインイメージセンサ１が取り付けられたハンドスキャナ本体の匡体１０４と、ラインイメージセンサ１の両端位置に装備された２個の車輪３１、３２と、各車輪３１、３２にそれぞれ取り付けられ、車輪３１、３２の回転を検出するエンコーダ２ａ、２ｂとを備えている。各エンコーダ２ａ、２ｂは、車輪３１、３２の回転角度に応じて９０度だけ位相の異なる２相のＡ相パルスとＢ相パルスを発生させる。そして、このＡ相パルスとＢ相パルスを用いて、車輪３１、３２の回転方向が検出される。Ａ相パルスとＢ相パルスは９０度だけ位相が異なるため、Ｂ相パルスの立ち上がりによって検出されるＡ相パルスのレベルは、車輪３１、３２の回転方向によって「Ｈ」レベルと「Ｌ」レベルとに識別される。識別された信号３４１、３６１の「Ｌ」レベルを車輪３１、３２の前進方向（ＵＰ方向）とすれば、「Ｈ」レベルは車輪３１、３２の後進方向（ＤＯＷＮ方向）となる。位置カウンタ３３、３５は、信号３４１、３６１が「Ｌ」レベルの場合に、Ｂ相パルス数に従ってカウント値を増加させ、信号３４１、３６１が「Ｈ」レベルの場合に、Ｂ相パルス数に従ってカウント値を減少させる。位置座標検出回路３７は、位置カウンタ３３、３５からのカウント値３３１、３５１を入力し、車輪３１、３２の回転方向を考慮した各車輪３１、３２の移動距離を検出する。
【００３４】
次に、図１に示すように、走査位置検出回路３は、車輪３１、３２の移動距離に基づいて各車輪３１、３２の原稿９上における座標を算出する。さらに、走査位置検出回路３は、各車輪３１、３２の座標をラインイメージセンサ１の両端の各読み取り画素の座標に変換し、走査位置座標３００として位置ずれ検出回路７に出力する。図１６に示すように、走査位置検出回路３は、位置座標検出回路３７、位置カウンタ３３、３５、により構成されるが、その動作の詳細については後述する。
【００３５】
写像回路５は、画像バッファ４から出力される画像データ４００を画素密度変換し、高密度化画像データ５００を出力する。位置ずれ検出回路７は、写像回路５から出力される高密度化画像データ５００と、画像メモリ６に格納された格納データの相関値を算出する。さらに、位置ずれ検出回路７は、この相関値に基づいて算出される位置補正量を用いて走査位置座標３００を補正し、補正位置座標７１０として写像回路５に出力する。さらに、写像回路５は、位置ずれ検出回路７から出力される補正位置座標７１０を用いて、画像メモリ６のアドレスを生成する。そして、写像回路５は、高密度化画像データ５００の各画素データを、バス６００を介して画像メモリ６に格納する。写像回路５及び位置ずれ検出回路７の動作の詳細については後述する。
【００３６】
次に、走査位置検出回路３の動作について、さらに詳細に説明する。
図２は走査位置検出回路の動作説明図である。図２において、太線は２個の車輪３１、３２の移動軌跡を示している。ラインイメージセンサ１（図１）がｉライン目の画素データを読み取ったときの２個の車輪３１、３２の位置を示す座標を、それぞれＰ０ｉ  （Ｘ０ｉ  ，Ｙ０ｉ  ）、Ｐ１ｉ  （Ｘ１ｉ  ，Ｙ１ｉ  ）とする。今、Ｐ０ｉ−１  、Ｐ１ｉ−１  の座標が既知であるとすれば、Ｐ０ｉ  及びＰ１ｉ  の座標は、下記（数２）を用いて近似的に算出される。
【００３７】
【数２】
0003602884.tif 000002
【００３８】
ここで、・は乗算を行う演算であり、／は除算を行う演算である。以後、・は乗算を示す演算子、／は除算を示す演算子として用いる。Ｌ０ｉ−１  は、読み取り開始時から（ｉ−１）ライン目の読み取りを行った時までに車輪３１、３２が移動した距離である。△Ｌ０ｉ  は、（ｉ−１）ライン目の読み取り開始時からｉライン目の読み取を行った時までに車輪３１、３２が移動した距離である。移動距離は、車輪３１、３２の回転方向を考慮するので、マイナスの値にもなり得る。また、車輪３１、３２の原稿９上における移動距離は、図１６に示すエンコーダ２ａ、２ｂのパルス数Ｎと１パルス当たりの分解能Ｐ（インチ／１パルス）を用い、Ｐ×Ｎを計算することによって得られる。位置座標検出回路３７は、位置カウンタ３３、３５のカウント値３３１、３５１をラインイメージセンサ１の読み取り周期に同期して読み取り、ｉライン目と（ｉ−１）ライン目で検出したカウント値の差分から、車輪３１、３２の回転方向を含む原稿９上における移動距離△Ｌ０ｉ  を検出する。Ｄは、車輪３１と車輪３２との間の距離である。上記（数１）は、△θ＝｜θｉ  −θｉ−１  ｜＝｜△Ｌ０ｉ  −△Ｌ１ｉ  ｜／Ｄを０とした近似計算である。△θは、ラインイメージセンサ１の１ライン走査時間の間におけるラインイメージセンサ１の変化角度である。上記（数１）を用いることにより、読み取り開始時における２つの車輪３１、３２の座標を決めておけば、２つの車輪３１、３２の移動距離からそれらの座標を算出することができる。
【００３９】
図３はラインイメージセンサの両端部の読み取り画素の座標を算出する場合の説明図である。車輪３１の座標をＰ０（Ｘ０，Ｙ０）、車輪３２の座標をＰ１（Ｘ１，Ｙ１）とする。ラインイメージセンサ１の両端部の画素の座標Ｐｓ（Ｘｓ，Ｙｓ）及びＰｅ（Ｘｅ，Ｙｅ）は、下記（数３）によって算出される。
【００４０】
【数３】
0003602884.tif 000003
【００４１】
ここで、Ｄは車輪３１と車輪３２との間の距離、ｄ１は車輪３１から読み取り画素Ｐｓまでの距離、ｄ２は車輪３１から読み取り画素Ｐｅまでの距離である。
走査位置検出回路３は、エンコーダ２ａ、２ｂが発生させる２相パルスから得られる車輪３１、３２の移動距離を用いて、上記（数２）及び（数３）の演算を行い、ラインイメージセンサ１の両端部の読み取り画素の座標Ｐｓ（Ｘｓ，Ｙｓ）、Ｐｅ（Ｘｅ，Ｙｅ）を、走査位置座標３００として位置ずれ検出回路７に出力する。
【００４２】
図４はラインイメージセンサの走査領域の説明図である。図４を用いて、原稿９の読み取り領域幅がラインイメージセンサ１の長さよりも大きい場合の、ラインイメージセンサ１の手動走査による動きについて説明する。原稿９を読み取るために、操作者は、ハンドスキャナ本体を原稿９に接触させ、原稿９の上を往復運動させながら手動走査する。このとき、ハンドスキャナ本体に取り付けられた２個の車輪３１、３２が回転し、エンコーダ２ａ、２ｂから２相パルスが出力される。図４は、ラインイメージセンサ１によって読み取られる原稿９上の読み取り領域を示している。
【００４３】
ラインイメージセンサ１は原稿９の全幅を走査することができないため、画像読み取り部Ｂ（図１）は、ラインイメージセンサ１の往復運動によって原稿９の全体を読み取る。図４には、ラインイメージセンサ１の両端画素のみの位置が記載されているが、ラインイメージセンサ１は両端画素を結ぶライン上の画像を読み取る。例えば、ラインイメージセンサ１の両端画素がそれぞれＡ点とＢ点である場合、ラインイメージセンサ１はＡ点とＢ点を結ぶライン上を読み取っている（以後、これを「読み取り位置Ａ−Ｂ」と記す。）。
【００４４】
図４において、ラインイメージセンサ１は、読み取り位置Ａ−Ｂを走査開始位置として、読み取り位置Ｃ−Ｄまで走査する。Ａ点、Ｂ点、Ｄ点、Ｃ点によって囲まれる領域ＡＢＤＣを読み取った画像データ中の各画素は、走査位置検出回路３（図１）から出力される走査位置座標３００に基づき、写像回路５（図１）によって画像メモリ６に新規に格納される。以後、このような領域を「新規走査領域」と称する。
【００４５】
次に、ラインイメージセンサ１は、戻り方向に移動し、読み取り位置Ｃ−Ｄから読み取り位置Ｅ−Ｆまで走査する。Ｃ点、Ｄ点、Ｇ点、Ｅ点によって囲まれる領域ＣＤＧＥは、重複して画像が読み取られる領域である。以後、この重複して読み取られる領域を「重なり走査領域」と称する。Ｄ点、Ｇ点、Ｆ点によって囲まれる領域ＤＧＦは、新規走査領域である。このように、重なり走査領域ＣＤＧＥ、新規走査領域ＡＢＧＥＣ及び新規走査領域ＤＦＧの３つの走査領域が存在する。
【００４６】
走査位置座標３００に位置誤差がなければ、この走査位置座標３００に基づいて、読み取り画像データ中の各画素を画像メモリ６に写像して格納することができる。すなわち、重なり走査領域ＣＤＧＥの読み取り画像データが画像メモリ６にオーバーライトされても、新規走査領域ＡＢＧＥＣと重なり走査領域ＣＤＧＥの継ぎ目部分において、画像メモリ６中の読み取り画像にずれが生じることはない。しかし、ハンドスキャナの機構設計精度、車輪３１、３２と原稿９との間のスリップ、車輪３１、３２の原稿９への沈み込み、曲線手動走査時における車輪３１と車輪３２との間の幅の影響などによって、走査位置座標３００には位置誤差が含まれる。また、走査位置検出回路３は、エンコーダ２ａ、２ｂから出力される２相パルスをカウントしてエンコーダ２ａ、２ｂの移動距離を得るので、前記位置誤差が累積される。このため、走査位置座標３００を用いて画像データ４００を画像メモリ６に写像すると、前記継ぎ目部分に画像のずれが生じてしまう。ここで、「写像」とは、読み取り画像データを画像メモリ６の所定のアドレスに格納する動作のことである。
【００４７】
この画像のずれを無くすため、位置ずれ検出回路７は、重なり走査領域ＣＤＧＥの画像メモリ６に格納された画像データと高密度化画像データ５００とを用いて、それらの相関度合いを示す相関値を算出する。さらに、位置ずれ検出回路７は、この相関値に基づいて、走査位置座標３００を補正するための位置補正量を算出する。位置ずれ検出回路７は、この位置補正量に従って走査位置座標３００を補正し、補正位置座標７１０として写像回路５に出力する。写像回路５は、補正位置座標７１０に従って、高密度化画像データ５００中の各画素を画像メモリ６に写像するためのアドレスを生成し、これを画像メモリ６に格納する。尚、重なり走査領域ＣＤＧＥの抽出については後述する。
【００４８】
図７は画像メモリの説明図である。画像メモリ６の各画素のビットは、走査確認情報を保持する書き込みフラグの記憶ビット（ビット７）と、画像データの記憶ビット（ビット０〜６）とにより構成されている。ここで、画像データの記憶ビット数は特定されるものではなく、必要な階調数に応じて設計することができる。本実施例では１２８階調の画像を扱うものとし、０から１２７の値を有する濃淡データを格納するために、１画素当たり７ビットが画像メモリ６に確保される。ビット７の書き込みフラグは、画像データが画像メモリ６に書き込まれていない場合（すなわち、未格納状態の場合）に「０」であり、画像データがすでに書き込まれている場合（すなわち、格納状態の場合）には「１」となる。このように画像データを格納するメモリと走査確認情報を格納するメモリとを共用すれば、アドレスの生成及びメモリ制御部を簡素化することができ、さらには、同時にアクセスすることも可能となるので、アクセス速度の高速化が図られる。尚、画像データを格納するメモリと走査確認情報を格納するメモリを個別に構成することもでき、また、走査確認情報を画素単位ではなく、ブロック単位で格納するようにしてもよい。画像データの格納位置を特定できる走査確認情報を記憶させることができればよい。
【００４９】
次に、位置ずれ検出回路７について、その動作を説明する。
図５は位置ずれ検出回路を示すブロック図である。ラインイメージセンサ１の読み取り走査が開始される前に、画像メモリ６の全てのデータ、補正量算出回路７３の位置補正量７０３及び画像相関回路７２内の相関テーブルは、「０」に初期化される。この初期化の後、ラインイメージセンサ１のラインの読み取り走査ごとに、走査位置座標３００が位置補正回路７４によって補正され、補正位置座標７１０として写像回路５に出力される。ラインイメージセンサ１の読み取り走査が開始された時点においては、位置補正量７０３は「０」であるため、走査位置座標３００と補正位置座標７１０は同じ座標値になる。
【００５０】
写像回路５は、画素密度変換処理によって画像データ４００を高密度化し、高密度化画像データ５００を生成する。さらに、写像回路５は、入力される補正位置座標７１０を用いて、高密度化画像データ５００の各画素データＰｎの画像メモリ６への格納アドレスＡＤＲｎを算出する。写像回路５は、アドレスＡＤＲｎに従って、バス６００を経由して画像メモリ６のアドレスＡＤＲｎに格納されている画素データＰｎを読み出し、この画素データＰｎをバス６００を介して重なり領域検出回路７１に出力する。尚、写像回路５の動作の詳細については後述する。
【００５１】
重なり領域検出回路７１は、画素データＰｎの書き込みフラグ（ビット７）をチェックし、この画素データＰｎのアドレスＡＤＲｎに画像データが格納済みかどうかを判定する。画素データＰｎの書き込みフラグ（ビット７）が１の場合には、ラインイメージセンサ１の読み取り走査によって画像データがすでにアドレスＡＤＲｎに格納されていることを示しているので、画素データＰｎは重なり走査領域に含まれていると判定される。また、画素データＰｎの書き込みフラグ（ビット７）が０の場合には、画素データＰｎは新規走査領域に含まれていると判定される。重なり領域検出回路７１は、判定信号７０１を画像相関回路７２と写像回路５に出力する。ここで、判定信号７０１は、画素データＰｎが新規走査領域に含まれる場合に「０」、重なり走査領域に含まれる場合に「１」となる信号である。
【００５２】
画像相関回路７２は、判定信号７０１が「１」の場合に画素データＰｎについての相関値算出処理を行い、判定信号７０１が「０」の場合には画素データＰｎについての相関値算出処理を行わない。写像回路５は、判定信号７０１が「０」の場合に高密度化画素データＰｎを画像メモリ６に格納し、判定信号７０１が「１」の場合には高密度化画素データＰｎを画像メモリ６に格納しない。この１画素単位の一連の処理動作を、高密度化画像データ５００の１ラインの全ての画素データについて行う。
【００５３】
１ライン分の高密度化画像データ５００の上記処理が終了した時点で、画像相関回路７２は、重なり走査領域に含まれる画素についてのみ相関値計算処理を行うことによって作成した相関テーブルを用いて、走査位置座標３００の位置ずれ方向を検出する。さらに、画像相関回路７２は、位置ずれをキャンセルするためのオフセット値７０２を補正量算出回路７３に出力する。１ライン全ての高密度化画素が新規走査領域に含まれる場合には、画像相関回路７２の相関テーブルは初期値「０」のままである。この場合、オフセット値７０２は「０」（位置ずれ無し）となる。
【００５４】
補正量算出回路７３は、オフセット値７０２を、内部に保持している補正量の累積値に加算し、位置補正量７０３として位置補正回路７４に出力する。位置補正回路７４は、次に処理する１ラインの画像データの走査位置座標３００と位置補正量７０３とを加算し、補正位置座標７１０として写像回路５に出力する。以後、上述した一連の処理を順次ラインごとに繰り返し行う。
【００５５】
次に、写像回路５の動作について、図６、図７、図９を用いて説明する。図６は写像回路を示すブロック図、図７は画像メモリの説明図、図９は画素密度変換の説明図である。
【００５６】
図６に示すように、画素密度変換回路５１は、画像データ４００中の１画素データにつき３つの補間画素を生成し、２倍に高密度化された高密度化画像データ５００を出力する。
【００５７】
まず、補間画素の生成方法について、図９を用いて説明する。図９中、Ｐｉ，ｊ  は、画像データ４００におけるｉライン目の画像データのｊ番目の画素データを示す。黒ドットは各画素データの座標点である。図９（ａ）は画像データ４００中の隣接する４つの画素を示している。図９（ｂ）において、Ｑｉ，ｊ  、Ｒｉ，ｊ  及びＳｉ，ｊ  は、画像データ４００中の画素データＰｉ，ｊ  に対する補間画素データである。各補間画素データＱｉ，ｊ  、Ｒｉ，ｊ  、Ｓｉ，ｊ  は、上記（数１）によって算出される。
【００５８】
次に、座標値算出回路５２について説明する。図６に示すように、座標値算出回路５２には、ラインイメージセンサ１の両端画素の補正後の座標値である補正位置座標７１０が入力される。座標値算出回路５２は、入力された補正位置座標７１０を用いて高密度化画像データ５００の各画素の座標値５２０を計算する。図７に示すようにラインイメージセンサ１の両端画素Ｐｓｉ  、Ｐｅｉ  の座標（補正位置座標７１０）がそれぞれ（Ｘｓｉ  ，Ｙｓｉ  ）、（Ｘｅｉ  ，Ｙｅｉ  ）である場合の、座標値算出回路５２の動作について説明する。サフィックスｉは、画像データ４００のｉライン目の補正位置座標であることを示す。ここで、ラインイメージセンサ１の読み取り画素密度を８画素／ｍｍ、画像メモリ６に格納する画像の画素密度を８画素／ｍｍとする。Ｘｓｉ  、Ｙｓｉ  、Ｘｅｉ  及びＹｅｉ  は、１／８ｍｍを単位とする実数値である。
【００５９】
ラインイメージセンサ１の１ラインの読み取り画素数をＮｄ、１ライン中の画素番号をｊとした場合、画素データＰｉ，ｊ  の座標（ＸＰｉ，ｊ  ，ＹＰｉ，ｊ  ）は、下記（数４）を用いて算出される。
【００６０】
【数４】
0003602884.tif 000004
【００６１】
画素データＰｉ，ｊ  に対応する３つの補間画素データＱｉ，ｊ  、Ｒｉ，ｊ  及びＳｉ，ｊ  の座標（ＸＱｉ，ｊ  ，ＹＱｉ，ｊ  ）、（ＸＲｉ，ｊ  ，ＹＲｉ，ｊ  ）及び（ＸＳｉ，ｊ  ，ＹＳｉ，ｊ  ）は、下記（数５）を用いて算出される。
【００６２】
【数５】
0003602884.tif 000005
【００６３】
座標値算出回路５２は、上記（数４）及び（数５）に示す演算処理を行うことにより、高密度化画像データ５００中の各画素の座標値５２０を算出する。
整数化回路５３は、実数値である座標値５２０を整数化し、整数化座標値５３０を出力する。実数の座標値５２０を（Ｘｒｅａｌ，Ｙｒｅａｌ）、整数化座標値５３０を（Ｘｉｎｔ  ，Ｙｉｎｔ  ）とすれば、整数化座標値は、下記（数６）を用いて算出される。
【００６４】
【数６】
0003602884.tif 000006
【００６５】
（数６）において、［  ］は、小数点以下を四捨五入する演算を示す。０．５を加算した後に小数部切り捨て処理を行うことは、四捨五入することと等価である。
【００６６】
アドレス生成回路５４は、整数化回路５３から出力された整数化座標値５３０を画像メモリ６のアドレス５４０に変換する。図１０に、画像メモリのアドレス配置を示す。画像メモリ６は、Ｘ方向にＭ画素、Ｙ方向にＮ画素のページメモリである。画像メモリ６の左上の画素のアドレスは０、右上の画素のアドレスは（Ｍ−１）、右下の画素のアドレスは（ＭＮ−１）である。整数化座標値５３０を（Ｘｉｎｔ  ，Ｙｉｎｔ  ）とすれば、画像メモリ６のアドレスＡＤＲは、下記（数７）によって算出される。
【００６７】
【数７】
0003602884.tif 000007
【００６８】
誤差算出回路５５には、実数の座標値５２０と整数化座標値５３０が入力され、実数の座標値５２０が整数化されたために生じる座標誤差５５０を比較回路５６に出力する。Ｘ方向の座標誤差をＥｘ、Ｙ方向の座標誤差をＥｙとすれば、座標誤差（Ｅｘ，Ｅｙ）は、下記（数８）によって算出される。
【００６９】
【数８】
0003602884.tif 000008
【００７０】
ここで、｜  ｜は絶対値をとる演算を示す。以後、｜  ｜を、絶対値をとる演算子として用いる。Ｅｘ及びＥｙは、０〜０．５の値をとる。
比較回路５６は、座標誤差Ｅｘ、Ｅｙと予め決められた所定の値とを比較する。比較回路５６は、座標誤差Ｅｘ及びＥｙが共に前記所定の値よりも小さい場合に「１」となる信号５６０をアクセス回路５７に出力する。
【００７１】
アクセス回路５７は、バス６００を介して画像メモリ６（図５）をアクセスする。画像メモリ６のアドレスは、アドレス生成回路５４からアクセス回路５７に出力されるアドレス５４０によって指定される。アクセス回路５７による高密度化画像データ５００の画像メモリ６への格納は、判定信号７０１が「０」でかつ信号５６０が「１」である場合にのみ行われる。すなわち、高密度化画像データ５００内の任意の画素の画像メモリ６への写像は、その画素が新規走査領域に含まれる画素でかつ座標誤差Ｅｘ及びＥｙが共に前記所定の値よりも小さいという条件を満たす場合にのみ行われる。この条件を満たさない画素は、画像メモリ６へ写像されない。この画像メモリ６上の格納済み領域に新規な画像データを格納しないメモリ制御を行うことにより、累積位置誤差を含む走査位置が入力されても、手動で往復した一筆書き走査によって順次重ねて読み取る際に、累積位置誤差の小さい状態の画像データが優先して画像メモリ６に格納されるので、画像メモリ６上には常に走査位置誤差の小さい画像が格納される。この格納データを位置ずれ検出に用いれば、歪みの小さい接続合成画像が得られ、平面画像の品位が向上する。
【００７２】
図１１は高密度化画像データの画像メモリへの写像動作の説明図である。図１１（ａ）は、高密度化画像データ５００を示す。図１１（ａ）において、黒ドットは各画素Ｐ、Ｑ、Ｒ、Ｓの座標値である。高密度化画像データ５００の画素密度は、最小で１６画素／ｍｍである。図１１（ｂ）は、画像メモリ６の画素を示す。図１１（ｂ）において、黒ドットは画素Ｗの座標値である。距離Ｕは、写像回路５の比較回路５６において用いられる所定の値を示している。画像メモリ６は、画素密度が８画素／ｍｍの画像データを格納する。図１１（ｃ）は、高密度化画像データ５００（図１１（ａ））と画像メモリ６の画素（図１１（ｂ））を同一の座標系で重ねた場合の例である。図１１（ｃ）の場合、高密度画像データ５００の各画素Ｐ、Ｑ、Ｒ、Ｓの各座標値は、領域Ｔの外側にあるため、画素Ｐ、Ｑ、Ｒ、Ｓのいずれも画像メモリ６の画素Ｗには写像されない。すなわち、画像メモリ６の中に、原稿読み取り領域であるにも関わらず写像されない画素（写像抜け画素）が存在することになる。写像抜け画素は、領域Ｔを広げることによって無くすことができる。しかし、領域Ｔを広げると写像時の座標誤差が大きくなるので、画像メモリ６に写像された画像の歪みが大きくなる。画像の歪みの点からすると、領域Ｔは狭いほど良い。
【００７３】
写像抜け画素を無くすための距離Ｕの上限値Ｕｍａｘ  は、画像メモリ６の画素ピッチを単位として下記（数９）によって表される。
【００７４】
【数９】
0003602884.tif 000009
【００７５】
本実施例の場合、画像メモリ６の画素密度は８画素／ｍｍであるので、単位は１／８ｍｍとなる。距離Ｕを０．３５とすることにより、写像抜け画素を無くすことができる。ある程度の写像抜け画素の発生を許容して、画像ひずみを低減することに重点を置く場合には、距離Ｕは０．３〜０．３５の範囲に設定すればよい。距離Ｕを０．３以下にすると、写像抜け画素が多発し、再現画像の画質が著しく低下する。
【００７６】
図５に示す位置ずれ検出回路７の動作説明に戻る。図８は相関テーブルの説明図である。画像相関回路７２について、主に図８を用いて説明する。図８（ａ）は相関処理の対象となる相関位置の説明図、図８（ｂ）は相関テーブルの説明図である。位置補正回路７４に入力されるｉライン目の走査位置座標３００をＰ１０（Ｘ１，Ｙ１）、Ｐ２０（Ｘ２，Ｙ２）とし、位置補正量７０３を△Ｘｏｆｆｓｅｔｉ  、△Ｙｏｆｆｓｅｔｉ  とする。位置補正回路７４は、走査位置座標３００及び位置補正量７０３を用い、下記（数１０）によって補正位置座標７１０のＰ１１（Ｘ３，Ｙ３）、Ｐ２１（Ｘ４，Ｙ４）を算出する。
【００７７】
【数１０】
0003602884.tif 000010
【００７８】
画像相関回路７２は、重なり領域検出回路７１からの判定信号７０１が「１」の場合（すなわち、被処理画素が重なり走査領域に含まれている場合）にのみ、被処理画素について相関値を算出し、相関テーブルの更新を行う。被処理画素の座標に対応する画像メモリ６中の画素Ｐｎを着目画素とする。相関値の算出は、被処理画素の座標を微小値だけ増減した座標に対応する画像メモリ６中の画素データと被処理画素の画素データとの差分値を算出することによって行われる。
【００７９】
着目画素Ｐｎの座標を（Ｘｎ，Ｙｎ）、微小座標値を△ｈｘ、△ｈｙとした場合、被処理画素の相関値算出の対象となる画素データＰｈの座標（Ｘｈｍｎ，Ｙｈｍｎ）は、下記（数１１）によって算出される。
【００８０】
【数１１】
0003602884.tif 000011
【００８１】
ここで、ｍ、ｎは、それぞれ−１、０、１の値をとる。また、［  ］は、小数点以下を四捨五入する演算を示す。
図８（ａ）において、Ｐ１２→Ｐ２２は、ｍ＝１、ｎ＝１の場合の相関値を算出する１ラインの位置を示している。この相関値算出の対象座標に対応する相関テーブルの値をｈ（ｍ，ｎ）とすると、図８（ｂ）に示す相関テーブルが作成される。
【００８２】
高密度化画像データ５００の１ライン中の画素番号をｊ、データ値をＤｎｊ  、画像メモリ６中の相関値算出の対象となる画素データをＤｈｊｍｎ  とすれば、各相関テーブルの値ｈ（ｍ，ｎ）は、下記（数１２）によって算出される。
【００８３】
【数１２】
0003602884.tif 000012
【００８４】
ここで、ｈｏ（ｍ，ｎ）は、画素番号（ｊ−１）までの相関値計算によって生成された相関値テーブルの値である。１ラインの相関値計算を開始する前に、相関テーブルの値は全て「０」に初期化される。
【００８５】
画像相関回路７２は、上記の相関値計算を、高密度化画像データ５００中の１ラインの全ての画素について行うことにより、相関テーブルを完成させる。また、相関値算出の対象座標は、上記（数１０）によって算出される補正位置座標７１０である。
【００８６】
画像相関回路７２は、１ラインの相関値の計算が終了した時点で、ｈ（ｍ，ｎ）の最小値を保持する（ｍｍｉｎ  ，ｎｍｉｎ  ）を検索し、オフセット値７０２として補正量算出回路７３に出力する。相関テーブル中に複数の最小値が存在し、その最小値に（ｍｍｉｎ  ，ｎｍｉｎ  ）＝（０，０）が含まれる場合には、（０，０）の最小値が優先して用いられる。相関テーブル中の相関値ｈ（ｍｍｉｎ  ，ｎｍｉｎ  ）が最も小さいということは、（△ｈｘ×ｍｍｉｎ  ，△ｈｙ×ｎｍｉｎ  ）の微小値を各画素の座標に加算して写像した場合に、画像メモリ６中の画像とこれから写像しようとするラインの画像とが最もよく一致することを示している。また、複数の最小値が存在し、その最小値に相関窓の中心が含まれる場合には、オフセット値７０２は「０」とする。例えば、３×３の相関窓を設定すれば、ｈ（０，０）が相関窓の中心となる。ここで、ｍ、ｎは、それぞれ−１、０、１の値をとるものとする。
【００８７】
補正量算出回路７３は、オフセット値７０２（ｍｍｉｎ  ，ｎｍｉｎ  ）を用いて下記（数１３）に示す演算を行う。ここで、オフセット値７０２を、△Ｘ＝△ｈｘ×ｍｍｉｎ  、△Ｙ＝△ｈｙ×ｎｍｉｎ  とする。
【００８８】
【数１３】
0003602884.tif 000013
【００８９】
上記（数１３）において、サフィックスｉは、高密度化画像データ５００のｉライン目の相関テーブル完成時における位置補正量７０３を表わす。位置補正回路７４は、走査位置座標３００に（△Ｘｏｆｆｓｅｔｉ  ，△Ｙｏｆｆｓｅｔｉ  ）を加算することによって走査位置座標３００の補正を行い、補正位置座標７１０として出力する。
【００９０】
以上のように、本実施例の画像処理装置の構成によれば、入力した走査位置に位置誤差が含まれていても、重複して走査する重なり走査領域内の画像データと格納データとの画像情報から走査位置の位置ずれを検出して、位置ずれを補正することができる。そして、この補正した走査位置に基づいて画像データを画像メモリ６に格納することにより、走査位置の位置誤差によって生じる画像の接続ずれを防止し、画像メモリ６内で接続された平面画像の画像歪みを低減することができる。
【００９１】
尚、本実施例においては、相関対象画素位置を９箇所としているが、必ずしも９箇所に限定されるものではない。位置ずれ量が大きい場合には、相関対象画素位置をより多くして、相関範囲を広げてもよい。また、相関テーブルの作成をＮ（Ｎ＞１）走査ライン間隔で行い、Ｎ（Ｎ＞１）走査ライン間隔で位置ずれの補正を行ってもよい。例えば、Ｎ＝８としてもよい。
【００９２】
＜第２の実施例＞
次に、本発明の第２の実施例として、画像相関回路７２（図５）で検出される位置ずれに対応したオフセット値７０２が大きい場合の処理について説明する。
【００９３】
画像相関回路７２で検出される位置ずれに対応したオフセット値７０２が大きい場合、位置補正量７０３はオフセット値７０２が加算される位置で大きく変化し、その結果、補正位置座標７１０は補正される位置で大きく変化する。
【００９４】
補正位置座標７１０が大きく変化したときの画像メモリ６におけるデータの格納状態を、図１５を用いて説明する。図１５は画像メモリにおけるデータの格納状態を示す説明図である。図１５では、（ｉ−１）ライン目を画像相関検出を行うラインとし、ｉライン目を位置補正を行うラインとする。また、（ｉ−１）ライン目の両端画素をＰｓｉ−１  、Ｐｅｉ−１  、ｉライン目の両端画素をＰｓｉ  、Ｐｅｉ  として記載している。
【００９５】
図１５に示すように、補正される量が大きく変化する位置における補正位置座標７１０に従って、写像回路５が画像メモリ６に画像データを格納すると、（ｉ−１）ライン目とｉライン目のライン間にはデータが格納されない領域（位置補正による写像抜け領域）が発生する。
【００９６】
このデータが格納されない領域の発生を抑える方法について、図１２、図１３、図１４を用いて説明する。図１２は分割制御回路を含む位置ずれ検出回路のブロック図、図１３は分割制御回路のタイミングチャート図、図１４は位置補正量と分割位置補正量との違いを説明するための図である。
【００９７】
図１２において、図５の位置ずれ検出回路７のブロック図と異なる点は、画像相関回路７２のオフセット値７０２が補正量算出回路７３に直接入力されていない点である。オフセット値７０２は、分割制御回路７５によってデータが格納されない領域（位置補正による写像抜け領域）の発生を抑える分割オフセット値７０４に変換された後、補正量算出回路７３に入力される。
【００９８】
位置補正による写像抜け領域の発生を抑えるために、レジスタ７５４にはオフセット値７０２を分割するパラメータＮＢが保持されている。オフセット値７０２は、レジスタ７５４に保持されている分割パラメータＮＢによって除算器７５１で除算され、スイッチ７５２はスイッチ制御７５３の制御出力によって除算器７５１の出力をＯＮ／ＯＦＦする。「ＯＮ」の場合は、除算器７５１から分割オフセット値７０４が出力され、「ＯＦＦ」の場合には、分割オフセット値７０４は出力されない（オフセット値無し）。分割パラメータＮＢが２ｎ  であれば、除算器７５１はｎビットシフトで構成することができる。尚、分割パラメータＮＢは特定されるものではなく、オフセット値７０２のとり得る最大値に応じて任意に設定することができる。
【００９９】
図１３を用いて、分割制御回路７５の動作をタイミングチャートに従って説明する。ここでは、分割パラメータＮＢを４として説明する。また、画像相関を最初に行うライン位置をｉ番目とし、８走査ライン間隔で画像相関検出を行うものとする。図１３においては、ｉライン目を０（ライン位置）、（ｉ＋８）ライン目を８（ライン位置）というように、数のみが記載されている。
【０１００】
写像回路５は、ラインセンサ１が読み取った１ラインの画像信号をすべて写像した時点で、１ラインのライン同期信号をバス６００を経由して分割制御回路７５、画像相関回路７２に出力する。
【０１０１】
画像相関回路７２は、走査が開始される最初のライン位置を初期化ライン位置（ｉ＝０のライン位置）とし、初期化ライン位置からライン同期信号をカウントする。そして、カウント数ｉを８で割った余りが０の場合に、画像相関検出を行い（ｉ＝０の初期化ライン位置は除く。）、次のライン位置の読み取りが開始される前に、オフセット値７０２をライン同期信号に同期して更新する。画像相関検出が終了すると、画像相関回路７２は、相関終了信号をバス６００を経由して分割制御回路７５のスイッチ制御７５３に出力する。スイッチ制御７５３は、画像相関回路７２の相関終了信号を受信した次のライン位置を、カウント値で１とし、次のライン位置からライン同期信号のカウントを開始する。レジスタ７５４に保持されている分割パラメータＮＢに対応して、スイッチ制御７５３は、「１≦カウント値≦４」の場合にスイッチ７５２をＯＮにし、「カウント値＞４」の場合にスイッチ７５２をＯＦＦにする。
【０１０２】
補正量算出回路７３は、分割した分割オフセット値７０４を入力し、１ライン前の位置補正量７０５を格納したレジスタ７３１の累積値と分割オフセット値７０４を加算器７３２で加算し、分割制御された位置補正量（以下「分割位置補正量」という。）７０５として位置補正回路７４に出力する。
【０１０３】
次に、補正量算出回路７３において、オフセット値７０２を入力して生成する位置補正量７０３（分割制御なし、図５）と、分割オフセット値７０４を入力して生成する分割位置補正量７０５（分割制御あり）との違いについて、図１４を用いて説明する。
【０１０４】
図１３と同様に、画像相関を最初に行うライン位置をｉ番目とし、８走査ライン間隔で画像相関検出を行うものとする。図１４においては、ｉライン目を０（ライン位置）、（ｉ＋８）ライン目を８（ライン位置）というように、数のみが記載されている。また、位置ずれのキャンセルを行うオフセット値７０２は、Ｘ方向、Ｙ方向ともに同じ処理であるため、Ｘ方向の一方だけが記載されている。また、ｉ番目のライン位置では、補正量算出回路７３のレジスタ７３１の累積値は「０」、分割制御回路７５のレジスタ７５４の分割数は４として説明する。尚、３×３の相関窓を設定した場合には、このように分割数は４で十分であり、５×５の相関窓を設定した場合には、分割数は８で十分である。本発明の特許請求の範囲の請求項３に記載した「可変制御量」とは、分割オフセット値７０４のことである。
【０１０５】
図１４において、ｉライン目と（ｉ＋８）ライン目で画像相関検出を行うことから、画像相関回路７２からのオフセット値７０２は、（ｉ＋１）ライン目（オフセット値＝△ｈｘ×ｍ）と（ｉ＋９）ライン目（オフセット値＝−△ｈｘ×ｍ）で出力される。
【０１０６】
分割制御を行わない場合（図５）、補正量算出回路７３は、オフセット値７０２を入力し、次の（ｉ＋１）ライン目において、レジスタ７３１の累積値（累積値＝０）とオフセット値の△ｈｘ×ｍを加算した位置補正量７０３を得る。また同様に、補正量算出回路７３は、（ｉ＋９）ライン目において、レジスタ７３１の累積値（累積値＝△ｈｘ×ｍ）とオフセット値の−△ｈｘ×ｍを加算した位置補正量７０３を得る。
【０１０７】
分割制御を行う場合、補正量算出回路７３は、分割オフセット値７０４を入力し、次の（ｉ＋１）ライン目において、レジスタ７３１の累積値（累積値＝０）とオフセット値の△ｈｘ×（ｍ／４）を加算した分割位置補正量７０５を得る。また、補正量算出回路７３は、（ｉ＋２）ライン目において、レジスタ７３１の累積値（累積値＝△ｈｘ×（ｍ／４））とオフセット値の△ｈｘ×（ｍ／４）を加算した分割位置補正量７０５を得る。以降、（ｉ＋４）ライン目まで、順次△ｈｘ×（ｍ／４）だけ増加する分割位置補正量７０５を得る。（ｉ＋４）ライン目から（ｉ＋８）ライン目までは、分割オフセット値７０４が０となるために変化しない。また、補正量算出回路７３は、（ｉ＋９）ライン目において、レジスタ７３１の累積値（累積値＝△ｈｘ×ｍ）とオフセット値の−△ｈｘ×（ｍ／４）を加算した分割位置補正量７０５を得る。以降、（ｉ＋９）ライン目から（ｉ＋１２）ライン目まで、順次−△ｈｘ×（ｍ／４）だけ減少する分割位置補正量７０５を得る。（ｉ＋１３）ライン目からは、分割オフセット値７０４が０となるために変化しない。
【０１０８】
分割制御を行わない場合、大きなオフセット値７０２が検出されると、そのまま画像相関検出を行う（ｉ−１）ライン目と次のｉライン目で、位置補正量７０３が大きく増加又は減少する。このため、図１５に示すように、（ｉ−１）ライン目とｉライン目のライン間には、データが格納されない領域（補正による写像抜け領域）が発生する。
【０１０９】
一方、分割制御を行う場合には、大きなオフセット値７０２が検出されても、分割制御回路７５がオフセット値７０２をラインごとに分割するので、画像相関検出を行う（ｉ−１）ライン目と次のｉライン目で、分割位置補正量７０５は徐々に増加又は減少する。このため、図１６に示すように、（ｉ−１）ライン目と「分割制御なし」の場合のｉライン目との間に、分割制御によって設定されるｈｉライン目が設定され、（ｉ−１）ライン目とｉライン目のライン間におけるデータが格納されない領域（補正による写像抜け領域）の発生が抑えられる。ここで、ｈｉライン目は両端画素をＰｓｈｉ、Ｐｅｈｉとして記載されている。
【０１１０】
また、相関対象範囲を広げた場合には、大きなオフセット値によって走査位置が補正されることとなるので、データが格納されない領域（補正による写像抜け領域）が多発する。この場合、分割制御を行うことにより、画像メモリ６にデータが格納されない領域（補正による写像抜け領域）の発生が抑えられ、画像相関検出を行う場合の位置ずれ検出精度が向上する。その結果、画像メモリ６上に再現される画像品位が向上する。
【０１１１】
また、入力画像データを高密度化することにより画素数を増大させた上で、写像時の座標誤差の少ない画素のみを画像メモリへ写像し、かつ、分割制御を行うことにより、画像メモリ６中の写像されない画素が大幅に減少する。さらに、写像時の座標変換誤差に起因する読み取り再現画像の歪みが大幅に低減する。加えて、ラインイメージセンサ１の画素数を増やしたり、最大手動走査速度を小さくする必要もないので、画像メモリ６上における画像品位がさらに向上する。
【０１１２】
以上のように、本実施例の画像処理装置の構成によれば、位置ずれを補正する補正値を所定の割合で可変制御し、段階的に可変された補正値に基づいて走査位置を補正し、補正された走査位置のデータに基づいて画像データを画像メモリ６に格納することができるので、走査位置の補正によって生じる画像メモリ６内の画像データが格納されない領域の発生が抑制される。また、走査位置が急激に補正されないことから、画像データと格納データとの画像情報から位置ずれを検出する場合の相関値の検出範囲を小さくすることができるので、回路の小型化が図られる。さらには、画像メモリ６内の画像データが格納されない領域の発生（写像抜け）が防止されることから、重複した走査領域内の画像データと格納データとの画像情報から位置ずれを検出する際の相関値の誤差を小さくすることができるので、位置ずれ検出の精度が向上する。その結果、画像メモリ６内で再現される画像品位が向上する。また、本発明の画像処理装置をハードウェア構成すれば、１ラインごとに順次処理することができるので、回路の小型化が図られ、さらにリアルタイムで処理することが可能となる。
【０１１３】
尚、本実施例においては、入力画像データ４００を高密度化した高密度化画像データ５００を用い、画素数を増大させた上で、写像時の座標誤差の少ない画素のみを画像メモリ６へ写像しているが、高密度化しない画像データ４００を用いてもよい。この場合には、分割制御を行うことにより、写像されない領域の発生が抑えられる。また、写像時の座標誤差の判定を０．５にする場合（すなわち、写像時の座標誤差を四捨五入する場合）、入力画像データ４００（Ｐｉ，ｊ  ）と高密度化画像データ５００のうち、走査ライン間に生成されるＲｉ，ｊ  を常時格納するようにして（図９参照）、画像メモリ６へ写像してもよい。これにより、走査ラインに許容以上の間隔が生じた場合にも、画像データが格納されない領域（写像抜け領域）の発生が抑えられる。
【０１１４】
＜第３の実施例＞
以上、第１及び第２の実施例においては、走査位置のＸ方向、Ｙ方向に対する位置ずれ検出について説明したが、本実施例においては、走査位置の回転方向に対する位置ずれ検出をさらに追加した場合について、図１６、図１７、図１８を用いて説明する。
【０１１５】
図３に示す構成において、位置誤差が生じる要因として、車輪３１、３２の原稿上での滑り、車輪３１の径と車輪３２の径の精度誤差、車輪３１、３２間の距離Ｄの精度誤差、車輪３１、３２の原稿への沈み込み、手動走査によって回転する際に回転中心が車輪３１、３２間の幅に影響されること、などを挙げることができる。従って、回転方向に対する位置誤差を補正の対象に加えることにより、位置ずれを精度良く補正することができる。
【０１１６】
図１６に示す画像読み取り部Ｂは、第１の実施例と同様のものである。図１６において、第１の実施例と異なる点は、回転方向に対する位置ずれ検出を行うために座標回転変換回路８が追加されている点と、位置ずれ検出の精度を向上させるために遅延回路９が追加されている点である。尚、この遅延回路９は、第１及び第２の実施例においても、位置ずれの補正精度を向上させる効果を有する。この効果については後述する。
【０１１７】
図１６に示す画像処理装置は、ライン単位で得られる走査位置座標３００と、走査位置に対応する画像データ４００とを画像読み取り部Ｂから順次入力する。ラインイメージセンサ１のアナログ出力はアンプ１０２で増幅され、Ａ／Ｄ変換器１０３でデジタル画像データに変換される。デジタル画像データは、画像バッファ４に一時記憶される。画像バッファ４は、走査位置座標３００と同期して対応する画像データ４００を出力する。
【０１１８】
補正量算出回路７３は、画像相関回路７２から出力されるオフセット値７０２を累積して保持する。
位置補正回路７４は、位置誤差を累積して保持している補正量算出回路７３から出力される位置補正量７０３によって走査位置座標３００の位置ずれを補正し、補正走査位置座標７１０として出力する。
【０１１９】
遅延回路９は、走査ライン単位で、補正走査位置座標７１０と補正走査位置座標７１０に対応する走査ラインの画像データ４００とを遅延させる。
写像回路５は、遅延された補正走査位置座標７１０の座標データ９２から、１走査ラインの各画素データ６１（Ｐｎ）のメモリアドレス６２（ＡＤＲｎ）を生成し、画像メモリ６の平面画像データの格納領域（メモリ６５）に、遅延された画像データ９１のうち写像対象となる画素データ６１（Ｐｎ）を格納する。
【０１２０】
ここで、第１の実施例と同様に、画像メモリ６を図７に示すような構成にすると、画像データの走査確認情報を保持する書き込みフラグの記憶ビット（ビット７）がメモリ６６に相当し、画像データの記憶ビット（ビット０〜６）がメモリ６５に相当する。従って、重なり領域検出回路７１は、メモリ６６のメモリアドレス６２（ＡＤＲｎ）に格納されている走査確認情報から、重複して走査する重なり領域を判定し、重なり走査領域の判定信号７０１を出力する。
【０１２１】
判定信号７０１は、画素Ｐｎの書き込みフラグ（ビット７）をチェックし、この画素データ６１（Ｐｎ）のアドレス６２（ＡＤＲｎ）に画像データが格納済みかどうかを判定する。画素データ６１（Ｐｎ）のビット７が１の場合には、ラインイメージセンサ１の読み取り走査によって画像データがすでにメモリアドレス６２（ＡＤＲｎ）に格納されていることを示しているので、画素データ６１（Ｐｎ）は重なり走査領域に含まれると判定される。また、画素データ６１（Ｐｎ）のビット７が０の場合には、画素データ６１（Ｐｎ）は新規走査領域に含まれると判定される。重なり領域検出回路７１は、判定信号７０１を画像相関回路７２と写像回路５に出力する。ここで、判定信号７０１は、画素データ６１（Ｐｎ）が新規走査領域に含まれる場合に「０」となり、重なり走査領域に含まれる場合に「１」となる信号である。
【０１２２】
写像回路５は、判定信号７０１が「０」の場合に、画素データ６１（Ｐｎ）をメモリ６５に格納する。また、写像回路５は、判定信号７０１が「１」の場合には画素データ６１（Ｐｎ）をメモリ６５に格納しない。この１画素単位の一連の処理動作を、１走査ラインの画像データ９１の全画素について行う。
【０１２３】
座標回転変換回路８は、補正走査位置座標７１０［Ｐｓ−Ｐｅ］に対して微小角△φを振った傾き方向の相関座標８００を、画像相関回路７２に１走査ライン単位で出力する。
【０１２４】
画像相関回路７２は、相関座標８００の座標データから、１走査ラインの各相関検出の対象画素Ｐｎの相関検出アドレス６３を生成し、画像メモリ６の平面画像データの格納領域（メモリ６５）から格納済みデータ６４を読み出し、同時に、格納済みデータ６４に対応する走査確認情報をメモリ６６から読み出し、重なり領域検出回路７１に出力する。
【０１２５】
重なり領域検出回路７１は、メモリ６６の走査確認情報から、重複して走査する重なり領域を判定し、重なり走査領域の判定信号７０１を出力する。
画像相関回路７２は、判定信号７０１が「１」の場合に画素Ｐｎについての相関値算出処理を行い、判定信号７０１が「０」の場合には画素Ｐｎについての相関値算出処理を行わない。
【０１２６】
図１７に示すように、画像相関回路７２において、走査位置座標３００［Ｐｓ−Ｐｅ］に対して微小角△φを振った傾き方向の相関座標［Ｐｓ−Ｐｅ（±△φ）］又は相関座標［Ｐｓ（±△φ）−Ｐｅ］の相関検出処理を加えて行うことにより、回転方向の位置ずれが検出され、さらに精度の高い位置ずれ補正が実現される。この場合、上記第１の実施例の相関テーブル値ｈ（ｍ，ｎ）と組み合わせれば、相関テーブル値はｈ（ｌ，ｍ，ｎ）となる。ここで、ｌは、−１、０、１の値をとるものとする。角度方向（回転方向）に３通り、位置方向（Ｘ、Ｙ方向）に９通りの計２７通りの相関テーブルが作成される。相関テーブルの最小値がｈ（ｌ，ｍ，ｎ）の場合、角度の補正量△φｏｆｆｓｅｔｉ  はｌ・△φという計算を行うことによって生成される。ここで、△φは、例えば０．２度である。尚、ｌ、ｍ、ｎの値は特定されるものではなく、要求される位置ずれの補正精度によって設定される値である。ｌ、ｍ、ｎの値を大きくすれば、相関を行う領域が広くなり、補正精度が向上する。
【０１２７】
図１６に示すように、位置ずれの回転方向を検出するために、補正走査位置座標７１０の座標を座標上で座標回転変換回路８により回転変換し、走査位置座標３００［Ｐｓ−Ｐｅ］に対して微小角△φを振った傾き方向の相関座標８００［Ｐｓ−Ｐｅ（±△φ）］又は相関座標８００［Ｐｓ（±△φ）−Ｐｅ］を出力する。
【０１２８】
画像相関回路７２は、回転変換によって微小角△φを振った傾き方向のそれぞれの相関座標８００に従って、上記（数１０）〜（数１２）の演算を繰り返すことにより、２７通りの相関テーブル６７を作成する。ここで、ｌ、ｍ、ｎは、それぞれ−１、０、１の値をとるものとする。
【０１２９】
この相関テーブル６７から、位置ずれを補正するオフセット値７０２が検出される。
画像相関回路７２は、１走査ラインの各角度に対して相関値の計算が終了した時点で、ｈ（ｌ，ｍ，ｎ）の最小値を保持する（ｌｍｉｎ  ，ｍｍｉｎ  ，ｎｍｉｎ  ）を検索し、オフセット値７０２として補正量算出回路７３に出力する。相関テーブル６７中に複数の最小値が存在し、その最小値に（ｌｍｉｎ  ，ｍｍｉｎ  ，ｎｍｉｎ  ）＝（０，０，０）が含まれる場合には、（０，０，０）の最小値が優先して用いられる。相関テーブル６７中の相関値ｈ（ｌｍｉｎ  ，ｍｍｉｎ  ，ｎｍｉｎ  ）が最も小さいということは、（△φ×ｌｍｉｎ  ，△ｈｘ×ｍｍｉｎ  ，△ｈｙ×ｎｍｉｎ  ）の微小値を各画素の座標に加算して写像した場合に、画像メモリ６中の格納データとこれから写像しようとするラインの画像データとの画像情報が最もよく一致することを示している。また、複数の最小値が存在し、その最小値に相関窓の中心が含まれる場合には、オフセット値７０２のＸ方向、Ｙ方向は０とする。例えば、３×３の相関窓を設定すれば、ｈ（ｌ，０，０）が相関窓の中心となる。
【０１３０】
補正量算出回路７３は、オフセット値７０２（ｌｍｉｎ  ，ｍｍｉｎ  ，ｎｍｉｎ  ）を用いて下記（数１４）に示す演算を行う。ここで、オフセット値７０２を、△Ｘ＝△ｈｘ×ｍｍｉｎ  、△Ｙ＝ｈｙ×ｎｍｉｎ  、△Ψ＝△φ×ｌｍｉｎ  とする。
【０１３１】
【数１４】
0003602884.tif 000014
【０１３２】
上記（数１４）において、サフィックスｉは、画像データ４００のｉライン目の相関テーブル完成時における位置補正量７０３を表わす。
位置補正回路７４は、走査位置座標３００に（△Ｘｏｆｆｓｅｔｉ  ，△Ｙｏｆｆｓｅｔｉ  ，△φｏｆｆｓｅｔｉ  ）を加算することにより、走査位置座標３００の補正を行い、補正走査位置座標７１０として出力する。
【０１３３】
位置補正回路７４に入力されるｉライン目の走査位置座標３００をＰｓ（Ｘｓ，Ｙｓ）、Ｐｅ（Ｘｅ，Ｙｅ）とし、位置補正量７０３を△Ｘｏｆｆｓｅｔｉ  、△Ｙｏｆｆｓｅｔｉ  、△φｏｆｆｓｅｔｉ  とする。位置補正回路７４は、走査位置座標３００を用い、下記（数１５）によって補正走査位置座標７１０のＰｓｈ（Ｘｓｈ，Ｙｓｈ）、Ｐｅｈ（Ｘｅｈ，Ｙｅｈ）を算出する。
【０１３４】
【数１５】
0003602884.tif 000015
【０１３５】
ここで、座標上の回転中心を常に座標Ｐｓとする。また、ａｒｃｓｉｎ［  ］は、アークサインの演算を行う関数である。また、Ｎｄは、ラインイメージセンサ１の１ラインの読み取り画素数である。尚、座標上の回転中心を座標Ｐｅとしてもよい。また、座標上の回転中心を座標Ｐｓとする回転変換と、座標上の回転中心を座標Ｐｅとする回転変換との両方を行ってもよい。両方を行うことにより、両車輪３１、３２に対応した位置ずれを検出することができる。
【０１３６】
次に、遅延回路９によって位置ずれの補正精度を向上させる方法について、図１４、図１６、図１８を用いて説明する。図１８は図１６に示す遅延回路の動作説明図である。
【０１３７】
図１４に示す分割位置補正量（分割制御あり）７０５は、位置補正量（分割制御なし）７０３と異なり、オフセット値７０２に相当する補正値が段階的に変化するため、画像相関の検出位置から可変制御される間の走査ライン数に相当する走査領域において必要な補正量が不足してしまう。そして、このように補正量が不足すると、位置誤差をキャンセルするための補正値が不足するため、位置ずれ検出位置で接続ずれが残ってしまう。
【０１３８】
このような補正量が不足する状態を回避するために、遅延回路９において、補正走査位置座標７１０と画像データ４００を、分割位置補正量７０５が可変制御される間の走査ライン数に相当する分だけ遅延させ、写像回路５において、写像位置と画像相関回路７２で検出される位置ずれの検出位置とを異ならせる。
【０１３９】
図１４においては、位置ずれの検出位置と、分割位置補正量７０５が位置補正量７０３と同じになる位置とが４ラインずれているので、遅延回路９は補正走査位置座標７１０と画像データ４００を４ライン分だけ遅延させる。この遅延によって、写像回路５における写像位置では、位置補正量７０３と同じ分割位置補正量７０５が得られる。これにより、位置誤差をキャンセルするための補正値が確保され、位置ずれの補正精度がさらに向上する。
【０１４０】
また、図１８に示すように、ラインイメージセンサ１の読み取り領域には、手動走査される位置において、領域ａ、領域ｂ、領域ａと領域ｂとの混在という３つの状態が発生する。新規走査領域では常に領域ｂの状態であり、重なり走査領域と新規走査領域とが混在する領域では領域ａと領域ｂとが混在し、重なり走査領域だけでは領域ａのみとなる。
【０１４１】
ここで、領域ａでは、位置ずれ検出を行う場合の相関検出ウインド内の位置で、メモリ６５（図１６）の平面画像データの格納状態は状態１となる。この状態１においては、着目画素位置の周辺にすべて格納データが存在することから、位置ずれ検出を行うための相関値を検出することができる。
【０１４２】
一方、領域ｂでは、位置ずれ検出を行う場合の相関検出ウインド内の位置で、メモリ６５の平面画像データの格納状態は状態２となる。この状態２においては、着目画素位置の周辺に格納データが存在する位置と存在しない位置とが混在している。このため、この相関検出ウインド内で位置ずれ検出を行った場合には、相関値に偏りが発生してしまう。なぜなら、格納データが存在する位置では、平面画像データと格納データの画像情報から相関値を生成することができるが、格納データが存在しない位置では、格納データがないために、初期化されているデータと平面画像データとから相関値を生成することとなるからである。この異なるデータに基づいて生成された相関値から位置ずれを検出すると、検出誤差が生じてしまう。
【０１４３】
検出誤差をなくすために、メモリ６６の走査確認情報を用いる。走査確認情報によって相関検出ウインド内の位置で１箇所でも未格納画素があると判定された場合（すなわち、状態２である場合）には、相関値を生成しない。未格納画素があるかどうかの判定は、重なり領域検出回路７１で検出される判定信号７０１を用いて行われる。これにより、相関値の偏りをなくすことができるので、位置ずれ検出の精度が向上する。
【０１４４】
図１６に示す遅延回路９を用いて、写像位置と位置ずれの検出位置とを異ならせ、位置ずれの検出位置をラインイメージセンサ１の移動方向に対して先行させることにより、リアルタイム処理で位置ずれの補正精度を向上させることができる。
【０１４５】
ところで、リアルタイム処理においては、写像処理と位置ずれ検出とを平行して行った場合に、着目画素周辺に新規に写像して格納される画素が頻繁に発生するので、相関値が新規写像画素の影響を受ける。また、手動走査時の手ぶれなどによって検出位置が前後すると、さらに新規写像画素の影響が大きくなり、位置ずれの検出精度が低下する。このため、写像位置と位置ずれの検出位置とを異ならせ、位置ずれの検出位置をラインイメージセンサ１の移動方向に対して先行させることにより、新規写像画素の影響を抑えて位置ずれの検出精度を向上させることができる。
【０１４６】
以上のように、本実施例の画像処理装置の構成によれば、車輪の滑り、車輪間の径の精度誤差、車輪間の距離の精度誤差、車輪の原稿への沈み込みなどの要因によって起こる回転方向に対する位置ずれの補正を加えることにより、走査位置座標３００の位置誤差が精度良く補正される。
【０１４７】
さらに、遅延回路９によって補正走査位置座標７１０と画像データ４００を遅延させ、写像位置と位置ずれの検出位置とを異ならせることにより、写像位置で位置誤差をキャンセルするための補正値が確保されるので、位置ずれの補正精度がさらに向上する。また、直前に写像したラインのデータが相関値に影響するのを防ぐことができるので、位置ずれの補正精度が向上する。
【０１４８】
尚、上記第１〜第３の実施例においては、入力画像データ及び走査位置座標を、ラインイメージセンサ１の両端位置に装備された２個の車輪３１、３２の回転に伴ってパルスを発生させる２つのエンコーダ２ａ、２ｂを用いるハンドスキャナから入力することとしているが、必ずしもこの構成に限定されるものではない。例えば、タブレット若しくは基準格子が印刷されたシートを補助装置として用い、ラインイメージセンサ１の両端位置を検出することによって走査位置座標と画像データとを得るハンドスキャナから入力する構成としてもよい（例えば、米国特許第４、２６０、９７９号、米国特許第４，５８１，７６１号）。
【０１４９】
また、上記第１〜第３の実施例においては、ラインイメージセンサ１を用いたハンドスキャナから入力される画像信号を処理する画像処理装置を例に挙げて説明しているが、画像入力装置としては必ずしもハンドスキャナに限定されるものではない。例えば、エリアイメージセンサを用いた画像入力装置からの画像信号を処理するものであってもよい。
【０１５０】
また、上記第１〜第３の実施例と同様の処理を、パーソナルコンピュータ、ＭＰＵ（マイクロプロセッサユニット）やＤＳＰ（ディジタルシグナルプロセッサ）を用い、ソフトウエアによって実現してもよい。
【０１５１】
また、図１９（ａ）に示すように、本発明の画像処理装置は、読み取り範囲の限定された小型の入力装置１００４によって画像を入力し、原稿１０００上の部分画像を接続合成して大画面の平面画像を作成する。従って、本発明の画像処理装置を携帯型情報機器の本体１００１に搭載すれば、小型の入力装置１００４を有する携帯型情報機器であっても大きな原稿の画像入力を行うことが可能となる。例えば、携帯ＦＡＸ、携帯情報端末、携帯スキャナなどに最適である。尚、図１９中、１００２は表示装置であり、液晶パネル、ＣＲＴなどによって構成される。そして、入力装置１００４によって読み取られた画像データは、内部の画像メモリ６に格納され、画像メモリ６上で接続合成された画像を表示する。また、図２０に示すように、入力装置１００４を小型化できることから、携帯端末の本体１００１と一体にして使用することもできる。また、図２０に示す入力装置１００４は、図２２に示すように、携帯端末の本体１００１から自由に着脱可能な構成としてもよい。入力装置１００４には、標準的なＩ／Ｆ（インタフェース）仕様を満足するＩＣカード１００３が備えられており、本体１００１のＩＣカードスロット１００７に挿入することにより、データの転送、制御が可能となる。さらに、入力装置１００４にはロックピン１００８ａ、１００８ｂが設けられており、このロックピン１００８ａ、１００８ｂを本体１００１のピン挿入穴１００９ａ、１００９ｂにそれぞれ差し込むことにより、入力装置１００４が携帯端末の本体１００１に固定される。ここで、入力装置１００４には、図１６に示したラインイメージセンサ１と車輪３１、３２が装着されている。これにより、タブレットなどの補助装置が不要となり、小型で、操作性に優れた入力装置が実現される。また、携帯端末の本体１００１の代わりにパーソナルコンピュータを用いれば、小型で、操作性に優れ、しかも大画面の入力が可能な入力装置が実現される。
【０１５２】
また、図１９（ｅ）に示すように、本発明の画像処理装置は、検出した走査位置座標の位置ずれを累積しながら補正を行うものであるため、累積位置誤差の大きい入力装置１００４を用いても、位置ずれを補正して接続ずれのない画像を生成することができる。従って、上記第１〜第３の実施例で用いたように、ラインイメージセンサ１の両端位置に装備された２個の車輪３１、３２の回転に伴ってパルスを発生させる２つのエンコーダ２ａ、２ｂを用いるハンドスキャナに搭載すれば、一層大きな効果が得られる。タブレット若しくは基準格子が印刷されたシートを補助装置として用いるハンドスキャナに比較して、高価な補助装置を必要としないので、小型で、携帯性、操作性などに優れた画像処理装置を実現することができる。さらには、厚い書籍を読み取ることもできる。ここで、入力装置１００４は、例えば、図１６に示す画像読取り部Ｂを有するスキャナである。
【０１５３】
【発明の効果】
以上説明したように、本発明に係る画像処理装置の第１の構成によれば、入力した走査位置に位置誤差が含まれていても、重複して走査する重なり走査領域内の画像データと格納データとの画像情報から走査位置の位置ずれを検出して、位置ずれを補正することができる。そして、この補正した走査位置に基づいて画像データを画像メモリに格納することにより、走査位置に位置誤差によって生じる画像の接続ずれを防止し、画像メモリ内で接続された平面画像の画像歪みを低減することができる。
【０１５４】
また、前記本発明の画像処理装置の第１の構成において、補正値を所定の割合で可変する補正制御手段がさらに備わり、補正手段は、所定の割合で可変された前記補正値に基づいて走査位置を補正するという好ましい例によれば、位置ずれを補正する補正値を所定の割合で可変制御し、補正された走査位置に基づいて画像データを画像メモリに格納することができるので、走査位置の補正によって生じる画像メモリ内の画像データが格納されない領域の発生が抑制される。また、走査位置が急激に補正されないことから、画像データと格納データとの画像情報から位置ずれを検出する場合の相関値の検出範囲を小さくすることができるので、回路の小型化が図られる。さらには、画像メモリ内の画像データが格納されない領域の発生（写像抜け）が防止されることから、重複した走査領域内の画像データと格納データとの画像情報から位置ずれを検出する際の相関値の誤差を小さくすることができるので、位置ずれ検出の精度が向上する。
【図面の簡単な説明】
【図１】本発明の第１の実施例における画像処理装置及び原稿画像を読み取り走査する画像読み取り部を示すブロック図である。
【図２】本発明の第１の実施例における位置検出回路の動作説明図である。
【図３】本発明の第１の実施例におけるラインイメージセンサの両端部読み取り画素の座標算出を示す説明図である。
【図４】本発明の第１の実施例におけるラインイメージセンサの走査領域の説明図である。
【図５】本発明の第１の実施例における位置ずれ検出回路を示すブロック図である。
【図６】本発明の第１の実施例における写像回路を示すブロック図である。
【図７】本発明の第１の実施例における画像メモリの説明図である。
【図８】本発明の第１の実施例における相関テーブルの説明図である。
【図９】本発明の第１の実施例における画素密度変換の説明図である。
【図１０】本発明の第１の実施例における画像メモリのアドレス配置図である。
【図１１】本発明の第１の実施例における高密度化画像データの画像メモリへの写像動作の説明図である。
【図１２】本発明の第２の実施例における分割制御回路を含む位置ずれ検出回路のブロック図である。
【図１３】本発明の第２の実施例における分割制御回路のタイミングチャート図である。
【図１４】本発明の第２の実施例における位置補正量と分割位置補正量との違いを示す説明図である。
【図１５】本発明の第２の実施例における画像メモリのデータの格納状態の説明図である。
【図１６】本発明の第３の実施例における画像処理装置及び原稿画像を読み取り走査する画像読み取り部を示すブロック図である。
【図１７】本発明の第３の実施例における角度補正の説明図である。
【図１８】本発明の第３の実施例における遅延回路の動作説明図である。
【図１９】走査位置の位置ずれによる読み取り画像の接続ずれの説明図である。
【図２０】本発明の第３の実施例における携帯端末機器の一実施例を示す斜視図である。
【図２１】本発明の第３の実施例における携帯端末機器の他の実施例を示す分解斜視図である。
【図２２】従来技術における写像抜け状態の一例を示す説明図である。
【図２３】従来技術における写像抜け状態の他の例を示す説明図である。
【符号の説明】
１  ラインイメージセンサ
２ａ、２ｂ  エンコーダ
３  走査位置検出回路
４  画像バッファ
５  写像回路
６  画像メモリ
７  位置ずれ検出回路
８  座標回転変換回路
９  遅延回路
３１、３２  車輪
３３、３５  位置カウンタ
３７  位置座標検出回路
５１  画素密度変換回路
５２  座標値算出回路
５３  整数化回路
５４  アドレス生成回路
５５  誤差算出回路
６５、６６  メモリ
６７  相関テーブル
７１  重なり領域検出回路
７２  画像相関回路
７３  補正量算出回路
７４  位置補正回路
７５  分割制御回路
１００１  携帯端末の本体
１００４  入力装置
１００７  ＩＣカードスロット
１００８ａ、１００８ｂ  ロックピン
１００９ａ、１００９ｂ  ピン挿入穴
【図１】
0003602884.tif 000016
【図２】
0003602884.tif 000017
【図３】
0003602884.tif 000018
【図４】
0003602884.tif 000019
【図５】
0003602884.tif 000020
【図６】
0003602884.tif 000021
【図７】
0003602884.tif 000022
【図８】
0003602884.tif 000023
【図９】
0003602884.tif 000024
【図１０】
0003602884.tif 000025
【図１１】
0003602884.tif 000026
【図１２】
0003602884.tif 000027
【図１３】
0003602884.tif 000028
【図１４】
0003602884.tif 000029
【図１５】
0003602884.tif 000030
【図１６】
0003602884.tif 000031
【図１７】
0003602884.tif 000032
【図１８】
0003602884.tif 000033
【図１９】
0003602884.tif 000034
【図２０】
0003602884.tif 000035
【図２１】
0003602884.tif 000036
【図２２】
0003602884.tif 000037
【図２３】
0003602884.tif 000038