(57)【要約】【課題】副走査シフトに用いるメモリの記憶容量を低減するとともに、メモリの消費電力及び発熱量を低減することである。【解決手段】複数のメモリモジュールを有し、主走査シフト処理が施された画像データを記憶し、当該画像データの副走査シフトについて多くのシフト量を担当するメモリモジュールほど合計記憶容量が多い構成の記憶部３２５０と、画像データの傾きに応じて記憶部３２５０の読み出し及び書き込みが必要なメモリモジュールを選択し、当該選択したメモリモジュールに画像データの読み出し及び書き込みを行う制御部３２４０と、を備える。【選択図】図４
2008028542.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリモジュールを有し、主走査シフトが施された画像データを当該メモリモジュールに記憶し、当該画像データの副走査シフトについて多くのシフト量を担当するメモリモジュールほど合計記憶容量が多い構成の記憶部と、
画像データの傾きに応じて前記記憶部の読み出し及び書き込みが必要なメモリモジュールを選択し、当該選択したメモリモジュールに画像データの読み出し及び書き込みを行う制御部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記記憶部は、前記メモリモジュールが主走査方向の複数領域に分けて配置され、当該複数領域のうちの一つが選択されて駆動し、
前記制御部は、前記主走査方向の複数領域のうちの一つを順に選択して前記画像データの読み出し及び書き込みを行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御部は、前記画像データの読み出し及び書き込みを行う前記メモリモジュールを、副走査シフト量に従って循環して選択することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記制御部は、
前記記憶部の読み出し及び書き込みのための一方向のアドレスを出力する副走査シフト制御部と、
副走査シフト量に従って循環量を示すカウント値をカウントするカウンタ部と、
前記カウント値を選択して前記記憶部の読み出し及び書き込みのための他の方向のアドレスとして出力する第１セレクタと、を備えることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記カウンタ部は、前記主走査方向の位置に応じて配置され、当該主走査方向の位置に応じた副走査シフト量に従ってカウント値を出力する複数のカウンタを備えることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記主走査シフト処理が施されて入力された画像データと、前記記憶部から読み出された画像データとを切替えて出力する第２セレクタを備えることを特徴とする請求項１から５のいずれか一項に記載の画像処理装置。
【請求項７】
原稿の画像を読み取り画像データを出力するスキャナと、
前記読み取られた画像データに主走査シフトを施す主走査シフト処理部と、
複数のメモリモジュールを有し、前記主走査シフトが施された画像データを記憶し、当該画像データの副走査シフトについて多くのシフト量を担当するメモリモジュールほど合計記憶容量が多い構成の記憶部と、
画像データの傾きに応じて前記記憶部の読み出し及び書き込みが必要なメモリモジュールを選択し、当該選択したメモリモジュールに画像データの読み出し及び書き込みを行う制御部と、
を備えることを特徴とする画像読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像読取装置に関する。
【背景技術】
【０００２】
従来、複写機において、主走査方向及び副走査方向に原稿を走査して、画像を読み取る際に、傾いた原稿を読み取って得られた画像データを補正して、傾きのない画像を記録用紙上に形成する技術が考えられている。
【０００３】
上記原稿傾き補正処理の一つの方法として、画像データを主走査方向に線状のデータの集まり、あるいは副走査方向に線状のデータの集まりとしてとらえ、画像を構成している主走査方向の線状のデータを主走査方向（横方向）にシフトさせる主走査シフト処理と、副走査方向の線データを副走査方向（縦方向）にシフトさせる副走査シフト処理とを組み合わせることによってなされるものがある（例えば、特許文献１参照）。
【０００４】
また、副走査シフト処理において、最低限必要な矩形のメモリ領域を入力バッファとして確保し、傾き角に応じて入力バッファ内のデータを選択して補正する構成が考えられている（例えば、特許文献２参照）。
【０００５】
図１９に、従来の副走査シフト処理の概略を示す。図１９に示すように、主走査シフト処理後の傾いた画像データ２００を副走査シフトする場合を考える。所定ライン分の矩形のメモリ領域２３０に対応する画像データをＦＩＦＯ（First In First Out）メモリに記憶し、その記憶した画像データからメモリ領域２３０中の読み出し領域２３１の画像データを読み出す。読み出し領域２３１の傾きは、画像データ２００の傾きに対応している。読み出し領域２３１の画像データの読み出し後、メモリ領域２３０を副走査方向（図の下方向）に１画素分シフトさせる。この工程を繰り返すことにより、傾きの補正された１枚の画像データを得る。
【０００６】
主走査シフト処理、副走査シフト処理では、１画素単位で補正する。このため、各シフト処理後の補間処理により、１画素以下の誤差を補間していた。
【特許文献１】特開２０００−５９６１１号公報
【特許文献２】特開平７−７９３２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記従来の画像データの傾き補正において、副走査シフト処理に用いるＦＩＦＯメモリの記憶容量のさらなる低減の要請がある。
【０００８】
図１９に示すように、矩形のメモリ領域２３０は、読み出し領域２３１を境として、読み出し済領域２３２と、遅延領域２３３と、を有する。遅延領域２３３は、読み出し前の画像データを有する。読み出し済領域２３２は、読み出し領域２３１の読み出し済みの画像データを有する。このため、ＦＩＦＯメモリは、不必要な読み出し済領域２３２を含むメモリ領域２３０を記憶するだけの記憶容量を有していた。このため、ＦＩＦＯメモリの記憶容量を低減して、ＦＩＦＯメモリのコストを低減する要請があった。
【０００９】
また、従来、ＦＩＦＯメモリの記憶容量が大きくなるのを防ぐため、副走査シフト処理より前に多値化処理を行い、画像データのビット数を削減して誤差拡散等の処理を行っていた。このため、同じ記憶容量のＦＩＦＯメモリを用いても、誤差拡散のパターンを正確に再現すること等のために、副走査シフト処理時に多値化処理を行わない要請がある。
【００１０】
上記の問題を解決するために、副走査シフト処理に用いるＦＩＦＯメモリに読み出し領域２３１及び遅延領域２３３のみを記憶させて、その記憶容量を低減し、副走査シフト処理後に多値化処理を行う構成も考えられている。この場合、画像データの階調数や傾き補正能力に応じてＦＩＦＯメモリの容量も増大する。
【００１１】
ＦＩＦＯメモリは、常に全メモリが駆動されているので、メモリ容量増大に応じてメモリの消費電力も増大するため、消費電力を低減する要請がある。これに関し、メモリの消費電力が増大すると発熱量も多くなるため、ＡＳＩＣ（Application Specific Integrated Circuit）に搭載することが難しくなるという面もある。
【００１２】
本発明の課題は、副走査シフトに用いるメモリの記憶容量を低減するとともに、メモリの消費電力及び発熱量を低減することである。
【課題を解決するための手段】
【００１３】
上記の課題を解決するために、請求項１に記載の発明の画像処理装置は、
複数のメモリモジュールを有し、主走査シフトが施された画像データを当該メモリモジュールに記憶し、当該画像データの副走査シフトについて多くのシフト量を担当するメモリモジュールほど合計記憶容量が多い構成の記憶部と、
画像データの傾きに応じて前記記憶部の読み出し及び書き込みが必要なメモリモジュールを選択し、当該選択したメモリモジュールに画像データの読み出し及び書き込みを行う制御部と、
を備えることを特徴とする。
【００１４】
請求項２に記載の発明は、請求項１に記載の画像処理装置において、
前記記憶部は、前記メモリモジュールが主走査方向の複数領域に分けて配置され、当該複数領域のうちの一つが選択されて駆動し、
前記制御部は、前記主走査方向の複数領域のうちの一つを順に選択して前記画像データの読み出し及び書き込みを行うことを特徴とする。
【００１５】
請求項３に記載の発明は、請求項１又は２に記載の画像処理装置において、
前記制御部は、前記画像データの読み出し及び書き込みを行う前記メモリモジュールを、副走査シフト量に従って循環して選択することを特徴とする。
【００１６】
請求項４に記載の発明は、請求項３に記載の画像処理装置において、
前記制御部は、
前記記憶部の読み出し及び書き込みのための一方向のアドレスを出力する副走査シフト制御部と、
副走査シフト量に従って循環量を示すカウント値をカウントするカウンタ部と、
前記カウント値を選択して前記記憶部の読み出し及び書き込みのための他の方向のアドレスとして出力する第１セレクタと、を備えることを特徴とする。
【００１７】
請求項５に記載の発明は、請求項４に記載の画像処理装置において、
前記カウンタ部は、前記主走査方向の位置に応じて配置され、当該主走査方向の位置に応じた副走査シフト量に従ってカウント値を出力する複数のカウンタを備えることを特徴とする。
【００１８】
請求項６に記載の発明は、請求項１から５のいずれか一項に記載の画像処理装置において、
前記主走査シフト処理が施されて入力された画像データと、前記記憶部から読み出された画像データとを切替えて出力する第２セレクタを備えることを特徴とする。
【００１９】
請求項７に記載の発明の画像読取装置は、
原稿の画像を読み取り画像データを出力するスキャナと、
前記読み取られた画像データに主走査シフトを施す主走査シフト処理部と、
複数のメモリモジュールを有し、前記主走査シフトが施された画像データを記憶し、当該画像データの副走査シフトについて多くのシフト量を担当するメモリモジュールほど合計記憶容量が多い構成の記憶部と、
画像データの傾きに応じて前記記憶部の読み出し及び書き込みが必要なメモリモジュールを選択し、当該選択したメモリモジュールに画像データの読み出し及び書き込みを行う制御部と、
を備えることを特徴とする。
【発明の効果】
【００２０】
請求項１に記載の発明によれば、副走査シフトに用いるメモリの記憶容量を低減できるとともに、メモリの消費電力及び発熱量を低減できる。
【００２１】
請求項２に記載の発明によれば、主走査方向の複数領域を順に駆動してメモリの消費電力及び発熱量を低減できる。
【００２２】
請求項３に記載の発明によれば、画像データの読み出し及び書き込みを行うメモリ領域を容易に選択できる。
【００２３】
請求項４、５に記載の発明によれば、記憶部のアドレスを容易に指定できるとともに、カウンタ部により副走査シフト量に応じた循環量を容易に生成できる。
【００２４】
請求項６に記載の発明によれば、副走査シフト量がない領域の画像データを記憶せずに出力でき、副走査シフトに用いるメモリの記憶容量を低減できる。
【００２５】
請求項７に記載の発明によれば、画像データを読み取って主走査シフト及び副走査シフトを施すことができるとともに、副走査シフトに用いるメモリの記憶容量を低減でき、メモリの消費電力及び発熱量を低減できる。
【発明を実施するための最良の形態】
【００２６】
以下、図面を参照して本発明に係る実施の形態を詳細に説明する。ただし、発明の範囲は、図示例に限定されない。
【００２７】
先ず、図１〜図４を参照して、本実施の形態のデジタル複写機１の装置構成を説明する。図１に、本実施の形態のデジタル複写機１の機械的構成を示す。
【００２８】
デジタル複写機１は、複写機本体１Ａと、原稿搬送部２０と、を備えて構成される。複写機本体１Ａに対して、原稿搬送部２０は、複写機本体１Ａとは別ユニットとして形成されて取り付けられるものとする。
【００２９】
複写機本体１Ａは、画像読取装置としてのスキャナ１０を備える。スキャナ１０は、原稿載置台１１と、原稿光源１２と、ミラー１３と、結像レンズ１４と、ラインセンサ１５と、を備えて構成される。また、複写機本体１Ａは、後述するように、本体制御部６０、操作部７０、プリンタ部５０等を備えて構成される。
【００３０】
原稿載置台１１は、画像読み取り対象の原稿が載置され、また、移動する原稿を読み取る場合に、原稿の通路及び原稿の照明位置を形成している。原稿光源１２は、原稿載置台１１に沿って移動自在に光を出力する。ミラー１３は、原稿光源１２とともに移動自在である。結像レンズ１４は、入射光をラインセンサ１５に結像する。ラインセンサ１５は、ＣＣＤ（Charge Coupled Devices）等で構成され、入射された光信号を電気信号に変換して出力する。
【００３１】
原稿光源１２から出力された光は、原稿で反射されて、ミラー１３及び結像レンズ１４を経てラインセンサ１５上に入射される。
【００３２】
原稿搬送部２０は、給紙トレイ２１と、給紙ローラ２２と、ローラ２３と、排紙ローラ２４と、排紙トレイ２５と、センサ２６ａ，２６ｂと、を備える。
【００３３】
給紙トレイ２１は、画像読み取り対象の原稿を載置する。給紙ローラ２２は、給紙トレイ２１上に載置された原稿を１枚づつ搬送する。ローラ２３は、給紙ローラ２２により搬送された原稿を読取位置に搬送し、読取位置において一定方向に搬送する。排紙ローラ２４は、ローラ２３により搬送された原稿を排出する。排紙トレイ２５は、排出された原稿を載置させる。
【００３４】
センサ２６ａ，２６ｂは、それぞれ、投光器と受光器とから構成され、原稿の通過を検知する。センサ２６ａ，２６ｂは、給紙ローラ２２の直後に、原稿搬送路を挟んで原稿搬送方向に直角に設けられている。
【００３５】
給紙トレイ２１上の原稿は給紙ローラ２２により一枚づつ分離されて、ローラ２３、排紙ローラ２４を通過して排紙トレイ２５に送信される。
【００３６】
原稿載置台１１とローラ２３で形成される読取位置を通過する原稿をラインセンサ１５がそのラインの方向である主走査方向、及び原稿の移動方向である副走査方向に走査して、原稿移動方式による画像読取が行われる。
【００３７】
デジタル複写機１は、原稿静止方式による画像読取も行うことができる。即ち、原稿載置台１１に載置された原稿を原稿光源１２及びミラー１３を移動しつつ画像読取を行うこともできる。
【００３８】
センサ２６ａ，２６ｂは、原稿搬送路を搬送される原稿の先端の角度、即ち、原稿が原稿搬送部２０内における原稿の走行中の傾きを検知する。なお、原稿の傾きを検知するセンサとしては、周知の任意のものを使用することができる。
【００３９】
図２に、画像読取装置２の電気的構成を示す。図２に示すように、画像読取装置２は、原稿画像を読み取る装置であり、デジタル複写機１に設けられる。
【００４０】
図２に示すように、画像読取装置２は、スキャナ１０と、原稿搬送部２０と、画像処理部３０と、傾き検出ＲＯＭ（Read Only Memory）４０と、を備えて構成される。また、デジタル複写機１は、画像読取装置２とは別に、プリンタ部５０と、本体制御部６０と、操作部７０と、を備えて構成される。
【００４１】
スキャナ１０は、原稿の画像を読み取りその画像データを出力する。スキャナ１０は、ラインセンサ１５等の他に、アンプ１６と、Ａ／Ｄコンバータ１７と、備えて構成される。アンプ１６は、ラインセンサ１５から出力される電気信号を増幅する。Ａ／Ｄコンバータ１７は、アンプ１６から出力されるアナログの電気信号をデジタルの画像データに変換して出力する。
【００４２】
原稿搬送部２０は、センサ２６ａ，２６ｂ等の他に、アンプ２７ａ，２７ｂと、コンパレータ２８ａ，２８ｂと、時間差計測部２９と、を備えて構成される。アンプ２７ａ，２７ｂは、センサ２６ａ，２６ｂの出力を増幅する。コンパレータ２８ａ，２８ｂは、アンプ２７ａ，２７ｂの出力を閾値と比較し、原稿の先端の通過時間に対応した信号を出力する。時間差計測部２９は、コンパレータ２８ａ，２８ｂの出力間の時間差を算出して出力する。
【００４３】
原稿搬送部２０において、搬送される原稿の主走査方向の傾き角度θの情報は、センサ２６ａ，２６ｂにより検知され、時間差計測部２９において、時間差ｓが計算される。センサ２６ａ，２６ｂ間の距離をｄ、原稿の搬送速度をｖとすれば、傾き角度θは、次式（１）で表される。
θ＝ｔａｎ−１（ｓ・ｖ／ｄ）  …（１）
【００４４】
傾き検出ＲＯＭ４０には、時間差ｓと、傾き角度θと、次式（２），（３）で表されるｓｔａｉｒＨ及びｓｔａｉｒＶとの関係が傾き検出ＲＯＭ４０に蓄えられている。
ｓｔａｉｒＨ＝（ｉｎｔ）（１／ｔａｎθ）  …（２）
ｓｔａｉｒＶ＝（ｉｎｔ）（１／ｔａｎδ）  …（３）
式（１），（２）において、（ｉｎｔ）は小数点以下を切り捨てる整数化を意味し、δは後に説明する主走査シフト処理によって、原稿の傾き角度θが変換された角度であり、次式（４）で表される。
δ＝ｔａｎ−１｛１／（ｔａｎθ＋１／ｔａｎθ）｝  …（４）
【００４５】
ｓｔａｉｒＨは、ある画素を原点としたとき、画像の傾きをなくするために、該原点から副走査方向に何画素離れた画素を主走査方向に１画素シフトする必要があるかを表す画素数である。ｓｔａｉｒＶは、ある画素を原点としたとき、画像の傾きをなくするために、該原点から主走査方向に何画素離れた画素を副走査方向に１画素シフトする必要があるかを表す画素数である。
【００４６】
画像処理部３０は、スキャナ１０から出力された画像データに各種画像処理を施す。画像処理部３０は、画像処理実行部３１と、傾き補正処理部３２と、画像処理制御部３３と、を備えて構成される。画像処理実行部３１は、画像処理制御部３３の制御に基づいて、スキャナ１０から、画素毎に主走査１ライン分のデータを副走査方向に連ねてシリアルに出力される画像データに対して、フィルタ処理、変倍処理などを行う。傾き補正処理部３２は、画像処理制御部３３の制御に基づいて、画像処理実行部３１から出力された画像処理後の画像データに、主走査方向及び副走査方向の傾き補正処理及び補間処理を施して出力する。
【００４７】
画像処理制御部３３は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭを備える。画像処理制御部３３において、ＲＯＭから読み出された各種プログラムがＲＡＭに展開され、ＲＡＭ上のプログラムとＣＰＵとの協働で各種処理が実行される。
【００４８】
画像処理制御部３３は、本体制御部６０の制御に基づいて、画像処理実行部３１、傾き補正処理部３２を制御する。また、画像処理制御部３３は、原稿搬送部２０から出力される時間差ｓ及び角度θと、傾き検出ＲＯＭ４０に記憶された情報と、に基づいて、ｓｔａｉｒＨ，ｓｔａｉｒＶを算出する。画像処理制御部３３は、ｓｔａｉｒＨ，ｓｔａｉｒＶを用いて、傾き補正処理部３２を制御する。
【００４９】
プリンタ部５０は、画像処理部３０から出力される画像データに基づいて、記録用紙等の記録媒体にプリント（画像形成）する。プリンタ部５０のプリント方式は、電子写真方式、インクジェット方式、熱転写方式等である。
【００５０】
操作部７０は、各種キーを備えて、ユーザの操作入力を受け付け、その入力情報を本体制御部６０に出力する。また、操作部７０は、ＬＣＤ（Liquid Crystal Display）等の表示部を備え、本体制御部６０から入力される表示情報に基づいて表示を行う。操作部７０は、表示部と一体にタッチパネルを構成することとしてもよい。操作部７０は、画像データの変倍、画質等のプリント条件の設定入力が受け付けられる。
【００５１】
本体制御部６０は、ＣＰＵ、ＲＡＭ、ＲＯＭを備える。本体制御部６０において、ＲＯＭから読み出されてＲＡＭに展開された各種プログラムとＣＰＵとの協働で各種処理が実行される。本体制御部６０は、画像処理制御部３３等のデジタル複写機１内部の各部を中央制御する。特に、本体制御部６０は、複写プログラムに基づいて後述する複写処理を行う。
【００５２】
図３に、傾き補正処理部３２の内部構成を示す。図３に示すように、傾き補正処理部３２は、主走査補間処理部３２１と、主走査シフト処理部３２２と、副走査補間処理部３２３と、副走査シフト処理部３２４と、を備えて構成される。
【００５３】
主走査補間処理部３２１は、画像処理実行部３１から出力される画像データに主走査補間処理を施して出力する。主走査シフト処理部３２２は、主走査補間処理部３２１から出力される画像データに主走査シフト処理を施して出力する。主走査シフト処理部３２２は、図示しないラインメモリを備え、画像データの各ラインデータをラインメモリに格納し、そのラインメモリ内のラインデータの位置調整により、各ラインの主走査方向のシフトを行う。
【００５４】
副走査補間処理部３２３は、主走査シフト処理部３２２から出力される画像データに副走査補間処理を施して出力する。副走査シフト処理部３２４は、副走査補間処理部３２３から出力される画像データに副走査シフト処理を施して出力する。
【００５５】
図４に、副走査シフト処理部３２４の内部構成を示す。本実施の形態では、副走査シフト処理部３２４が副走査シフト処理において副走査方向に最大６画素分のシフトが可能な構成を考えるものとする。しかし、このシフト量の構成に限定されるものではない。
【００５６】
図４に示すように、副走査シフト処理部３２４は、制御部３２４０と、比較器３２４９と、記憶部３２５０と、第２セレクタとしてのセレクタ３２５１と、を備えて構成される。制御部３２４０は、副走査シフト制御部３２４１と、カウンタ３２４２〜３２４７と、第１セレクタとしてのセレクタ３２４８と、を備えて構成される。
【００５７】
また、図４には示していないが、副走査シフト処理部３２４は、画像処理制御部３３の制御により、後述する主走査有効信号ＨＶＩ、副走査有効信号ＶＶＩ、主走査同期信号ＩＮＤＩを出力する信号発生部を有する。
【００５８】
副走査シフト制御部３２４１は、クロック信号（図示せず）に基づいて動作し、上記信号発生部から入力される主走査有効信号ＨＶＩ及び画像処理制御部３３から入力される係数ｓｔａｉｒＶに基づいて、選択信号ｓｅｌ及びアドレス信号ａｄｒを生成し、選択信号ｓｅｌをセレクタ３２４８及び比較器３２４９に出力し、アドレス信号ａｄｒを記憶部３２５０に出力する。
【００５９】
主走査有効信号ＨＶＩは、正論理の２値信号であり、画像処理実行部３１から出力されるデータ信号ＤＩが有効であるか否かを示す信号である。選択信号ｓｅｌは、セレクタ３２４８の入力切替の制御信号である。アドレス信号ａｄｒは、記憶部３２５０のアドレスを指定する信号である。アドレス信号ａｄｒの下位ビットは、記憶部３２５０のＸ方向のアドレスを示すアドレス信号Ｘとして記憶部３２５０に入力される。アドレス信号ａｄｒの上位ビットは、記憶部３２５０の選択信号ＣＳとして記憶部３２５０に入力される。
【００６０】
カウンタ３２４２〜３２４７は、それぞれ、副走査有効信号ＶＶＩ及び主走査同期信号ＩＮＤＩが入力され、信号ＣＮＴ２〜ＣＮＴ７が出力される。副走査有効信号ＶＶＩは、正論理で副走査シフトが有効であるか否かを示す副走査有効信号である。主走査同期信号ＩＮＤＩは、主走査ラインの１ラインごとに所定時間ハイとなる信号である。カウンタ信号ＣＮＴ２〜ＣＮＴ７は、記憶部３２５０の各メモリ領域のＹ方向のアドレスを示す信号であり、副走査方向のシフト量の範囲内で循環するカウント値となる。つまり、カウンタ３２４２〜３２４７は、それぞれ、主走査同期信号ＩＮＤＩのハイの回数をカウントし、副走査方向のシフト量の範囲内で循環してカウンタ信号ＣＮＴ２〜ＣＮＴ７として出力する。
【００６１】
セレクタ３２４８は、選択信号ｓｅｌに基づいて、カウンタ３２４２〜３２４７から入力されるカウンタ信号ＣＮＴ２〜ＣＮＴ７を選択し、記憶部３２５０のＹ方向のアドレスを示すアドレス信号Ｙとして出力する。具体的には、セレクタ３２４８は、選択信号ｓｅｌ＝０の場合に０を出力し、選択信号ｓｅｌ＝１の場合に各カウンタ信号ＣＮＴ１（＝０固定）、ＣＮＴ２〜ＣＮＴ７を出力する。
【００６２】
比較器３２４９は、選択信号ｓｅｌと、０と、を比較し、選択信号ｓｅｌ≠０である場合に０となり、選択信号ｓｅｌ＝０である場合に１となる選択信号ｓを出力する。記憶部３２５０は、複数のメモリモジュールを有し、駆動するメモリモジュールを指定できるメモリであり、ＲＡＭ等により構成される。記憶部３２５０は、副走査シフト制御部３２４１から入力されるアドレス信号Ｘ及び選択信号ＣＳと、クロック信号ＣＬＫと、データ信号ＤＩと、に基づいて、データ信号ＤＯを出力する。
【００６３】
セレクタ３２５１は、比較器３２４９から入力される選択信号ｓと、記憶部３２５０から入力されるデータ信号ＤＯと、データ信号ＤＩと、に基づいて、最終的なデータ信号ＤＯを出力する。具体的には、セレクタ３２５１は、選択信号ｓ＝０の場合に記憶部３２５０からのデータ信号ＤＯを出力し、選択信号ｓ＝１の場合にデータ信号ＤＩをデータ信号ＤＯとして出力する。また、データ信号ＤＯは、傾き補正処理部３２から出力されるデータ信号である。
【００６４】
図５に、記憶部３２５０内のメモリモジュール配置及びその選択を示す。図５に示すように、記憶部３２５０の各メモリモジュールにアドレスＸ及びアドレスＹがとられる。また、図５で正方形で示した各メモリ単位は、一画素に対応するものとする。各メモリモジュールは、図５で実線で示され、主走査方向の２画素を一組としたメモリ領域である。図５の記憶部３２５０の各メモリモジュールは、傾き角度δが負で係数ｓｔａｉｒＶが２である場合のものである。また、図５の記憶部３２５０の各メモリ領域は、アドレスＸ及びアドレスＹに対応して配列したものであり、物理的な配置ではない。このため、図５に示される全ての正方形のメモリ単位が、記憶部３２５０のメモリとなる。
【００６５】
記憶部３２５０は、主走査方向に選択信号ＣＳ単位で分割され、副走査方向に１画素単位で分割されたメモリモジュール群を有し、選択信号ＣＳに対応するメモリモジュールのみが駆動される。つまり、同時に駆動するメモリモジュールは、主走査方向に選択信号ＣＳ単位で分割されたメモリモジュール群のうちの一つである。例えば、図５に示すように、選択信号ＣＳ＝５の場合に、記憶部３２５０の各メモリのうち、ＣＳ＝５に対応するメモリモジュール（グレーで示したメモリモジュール）のみが駆動する。このため、記憶部３２５０の全メモリモジュールを駆動する場合に比べて、消費電力を低減でき、その発熱量も低減できる。図５において、駆動するメモリモジュールが最大（選択信号ＣＳ＝７）の場合でも、消費電力は、全メモリモジュールを駆動する場合に比べて１／４となる。
【００６６】
次に、デジタル複写機１の動作を説明する。先ず、主走査シフト処理、副走査シフト処理の概略を説明する。図６に、主走査シフト処理及び副走査シフト処理の概念を示す。図６（ａ）に、画像読み取り後の画像データ１００を示す。図６（ｂ）に、主走査シフト処理後の画像データ２００を示す。図６（ｃ）に、副走査シフト処理後の画像データ３００を示す。
【００６７】
図６（ａ）に示すように、スキャナ１０において、傾いた原稿が読み取られ、横線状のデータの集まりとしての画像データ１００が取得される。以下、主走査方向にｘ軸を取り、副走査方向にｙ軸をとるものとする。画像データ１００と、ｘ軸との間の角度を角度θとする。
【００６８】
主走査シフト処理は、画像データ１００の画素を行毎に主走査方向にシフトする処理であり、画像データ１００の縦線の傾きをなくする補正処理である。そのシフト量は、ｙ軸上の位置によって異なる。図６（ｂ）に示すように、矩形の画像データ１００は、主走査シフト処理部３２２により主走査処理が施されて、平行四辺形の画像データ２００に変換される。画像データ２００と、ｘ軸との間の角度を角度δとする。
【００６９】
副走査シフト処理は、主走査シフト処理において画素をシフトさせた方向（主走査方向）に直角な方向（副走査方向）に画像データ２００の画素をシフトさせる処理であり、ｘ軸に対して角度δ傾いた画像データの角度δを０にする補正処理である。図６（ｃ）に示すように、画像データ２００は、副走査シフト処理部３２４により副走査処理が施されて、角度δ＝０の画像データ３００に変換される。
【００７０】
次いで、主走査補間処理、主走査シフト処理、副走査補間処理、副走査シフト処理を順に詳細に説明する。
【００７１】
主走査補間処理は、主走査補間処理部３２１によって、スキャナ１０により読み出されて画像処理実行部３１から出力された画像データに施される処理である。主走査シフト処理が施された画像データの縦線は、巨視的には、縦に一本の線が繋がっているように見える。しかし、画素単位では、２画素にまたがって傾いた線が、シフト量が異なった箇所で途切れている。このような不連続が原因して、画像全体において、輪郭がギザギザに見えるものとなる。これは上述のように、主走査シフトが整数単位で行われることに原因がある。
【００７２】
主走査補間処理は、このような画質の劣化を補正する処理である。主走査補間処理は、例えば、主走査シフト処理で切り捨てられた小数点以下のシフト量に応じた重みづけをもって注目画素の画素値と隣接画素の画素値とを重みづけ平均して、注目画素の画素値を補正する処理とする。主走査補間処理では、ｓｔａｉｒＨを用いて主走査補間量が算出され、その主走査補間量に基づいて補間処理が実行される。
【００７３】
主走査シフト処理は、主走査シフト処理部３２２によって、主走査シフト処理部３２２から出力された画像データに施される処理である。図７（ａ）に、画像データ１００の構成を示す。図７（ｂ）に、画像データ２００の構成を示す。図７（ａ），（ｂ）に示すように、画像データ１００に主走査シフト処理を施して画像データ２００にする場合を考える。
【００７４】
主走査シフト処理では、主走査シフト処理部３２２によりラインメモリ上に画像データ１００の各ラインが格納されるとともに主走査方向にシフトされて読み出されることが繰り返される。図７（ａ）の矢印に示すように、画像データ１００の画素の集まりをｓｈｘで示すように主走査方向へシフトするために、主走査シフト処理部３２２内のラインメモリ上で画素値を主走査方向にシフトすることが行われる。
【００７５】
原稿の傾きをθとしたとき、ｙライン目を主走査方向に何画素分シフトすればよいかと言う値をｓｈｘとすれば、ｓｈｘは次式（５）で表される。
ｓｈｘ＝ｙ・ｔａｎθ  …（５）
ちなみにシフトの右か左かは符号で区別する。
【００７６】
実際に、シフトは画素単位でしかできないので端数が切り捨てられた次式（６）のように定義した画素単位表示の主走査シフト量ｉｓｈｘと言う形で使われる。
ｉｓｈｘ＝（ｉｎｔ）ｓｈｘ  …（６）
ここで（ｉｎｔ）は整数化することを意味する。
【００７７】
図２における画像処理制御部３３（傾き検出ＲＯＭ４０）から供給される係数ｓｔａｉｒＨを使うと、式（６）は次式（７）のように表される。
ｉｓｈｘ＝（ｉｎｔ）（ｙ／ｓｔａｉｒＨ）  …（７）
式（７）に従って、ラインメモリ上で画素値をシフトすることによって、図７（ａ）に示す画像データ１００は、図７（ｂ）に示す画像データ２００に変化して、主走査方向の傾きが補正され、例えば、縦線の傾きがなくなる。
【００７８】
副走査補間処理は、副走査シフト処理によって連続性が切断された画像データの画素値を補正する処理であり、重みづけ係数を使って注目画素の画素値と隣接画素の画素値とを重みづけ平均して、注目画素の画素値を補正する処理である。副走査補間処理では、ｓｔａｉｒＶを用いて副走査補間量が算出され、その副走査補間量に基づいて補間処理が実行される。
【００７９】
副走査シフト処理は、画像データ２００の画素を副走査方向にシフトさせ、ｙ軸に対して角度δ傾いた画像データ２００を角度δ＝０にする補正である。副走査シフト処理のシフト量はｘ軸上の位置によって異なる値となる。
【００８０】
副走査シフト処理のためのデータ処理は、複数ライン分の矩形領域内のメモリ領域の画像データを記憶部３２５０に蓄えておき、ｘ軸上の位置に応じた遅延を以て、画像データを出力して、１ライン分の画像データを得るものである。
【００８１】
図８（ａ）に、副走査シフト処理における矩形領域２０１を示す。図８（ｂ）に、矩形領域２０１内の読み出し領域２０２を示す。図８（ｃ）に、読み出し領域２０２における読み出し手順を示す。図８（ｄ）に、読み出しデータ３０１を示す。なお、図８の例では、矩形領域２０１を３ラインとして表している。
【００８２】
例えば、図８（ａ）に示すように、画像データ２００に矩形領域２０１が設定される。そして、図８（ｂ）に示すように、３ラインの矩形領域２０１内から、副走査方向の傾きに対応する読み出し領域２０２が特定される。そして、読み出し領域２０２の各ラインは、ｘ軸の値が小さいほど遅延量を大きくして読み出される。すると、図８（ｄ）に示すように、傾きのない１ラインの読み出しデータ３０１として読み出される。矩形領域２０１は、読み出し領域２０２（読み出しデータ３０１）の読み出しごとに、１画素ずつ下方向に移動する。このため、全ラインの読み出しデータ３０１が集められて、図６（ｃ）に示す画像データ３００が構成される。
【００８３】
画像データ２００のｘ軸に対する傾きを角度δとするとき、ｘカラム目の画素については、注目ラインからｓｈｙライン上にある画素の画素値を出力する。注目ラインとは、読み出し領域２１１の一番下の主走査ラインとする。ｓｈｙは副走査方向のシフト量である。座標値ｘとシフト量ｓｈｙの関係は次式（８）で表される。
【００８４】
ｓｈｙ＝（ｘ０−ｘ）・ｔａｎδ（δ：正）
＝ｘ・ｔａｎ（−δ）（δ：負）  …（８）
但し、ｘ０：画像データ２００の主走査ラインの長さである。ここでも処理は整数単位で行われる。従って、シフト量にはｓｈｙを整数化したｉｓｈｙが使われ、ｉｓｈｙは次式（９）で表される。主走査シフト量ｉｓｈｙは、正の値をとる。
【００８５】
ｉｓｈｙ＝（ｉｎｔ）（（ｘ０−ｘ）／ｓｔａｉｒＶ）（δ：正）
＝（ｉｎｔ）（ｘ／ｓｔａｉｒＶ）（δ：負）  …（９）
この副走査シフト処理によって、図６（ｃ）に示すように原稿の傾きが補正されて、正しい画像が再現される。
【００８６】
図９（ａ）〜（ｃ）に、メモリ領域２１０の移動の様子を示す。図９（ａ）〜（ｃ）に示すように、矩形領域２０３は、読み出し領域２１１の読み出しごとに、１画素ずつ下方向に移動される。矩形領域２０３は、読み出し領域２１１と、遅延領域２１２と、読み出し済領域２０４と、を有する。本実施の形態では、読み出し領域２１１及びこれより下側の遅延領域２１２のみを記憶部３２５０に記憶する。読み出し領域２１１及び遅延領域２１２を、メモリ領域２１０とする。但し、後述するように、正確には、傾き角度δが正の場合、画像データ２００の一番右の係数ｓｔａｉｒＶ分の領域は、記憶部３２５０に記憶されない。
【００８７】
読み出し済領域２０４の画像データは、読み出し後に不要のデータとなるためである。よって、矩形領域２０３の画像データ全てを記憶する場合に比べて、メモリ領域２１０の画像データを記憶する場合の記憶部３２５０に必要な記憶容量は、約半分になる。このようにメモリモジュールの記憶容量は実用的な装置に組み込むのに適したものに押さえることが可能となる。
【００８８】
また、メモリ領域２１０が小さいため、副走査シフト処理の前工程で、画像データのビット数を減らすための多値化処理は実行されない。多値化処理は、例えば、８ビット画像データを２又は４ビット画像データに変換するように、画素値のビット数を減らす処理であり、誤差拡散法、ディザ法など周知の処理法により行う。このため、多値化処理を施すことによる画像データの劣化を防ぐことができる。
【００８９】
また、特開平１０−３３６４２５号公報に記載されているように、主走査シフト処理及び副走査シフト処理によって、画像は主走査方向と副走査方向とに、異なった倍率の変倍を受ける。原稿の像を、角度のみならず形状に関しても忠実に再現するには、理論的には変倍補正を行う必要がある。しかしながら、実際上は読取において生ずる原稿の傾きは小さいので、前記のシフト処理において受ける変倍は極めて僅かであり、この補正をしなくてもよい。
【００９０】
次に、図１０及び図１１を参照して、画像データ２００の傾き角度δで場合分けした記憶部３２５０のメモリモジュールの配置を説明する。図１０（ａ）に、傾き角度δが正の場合のメモリ領域２１０を示す。図１０（ｂ）に、傾き角度δが正の場合の記憶部３２５０のメモリモジュールを示す。図１１（ａ）に、傾き角度δが負の場合のメモリ領域２２０を示す。図１１（ｂ）に、傾き角度δが負の場合の記憶部３２５０のメモリモジュールを示す。
【００９１】
先ず、角度δが正の場合を考える。図１０（ａ）に示すように、矩形領域２０３内に、傾き角度δが正の場合の読み出し領域２１１及び遅延領域２１２を含むメモリ領域２１０を有する。図１０（ａ）のメモリ領域２１０を記憶するために、図１０（ｂ）に示す記憶部３２５０のメモリモジュールが配置される。図１０（ｂ）に示す記憶部３２５０のメモリモジュールの配置は、メモリ領域２１０の形状に対応し、副走査シフト量が大きいほどメモリモジュールの数が多く、従って合計記憶容量が大きく設定される。
【００９２】
次いで、角度δが負の場合を考える。図１１（ａ）に示すように、矩形領域２０３内に、傾き角度δが負の場合の読み出し領域２２１及び遅延領域２２２を含むメモリ領域２２０を有する。図１１（ａ）のメモリ領域２２０を記憶するために、図１１（ｂ）に示す記憶部３２５０のメモリモジュールが配置される。図１１（ｂ）に示す記憶部３２５０のメモリモジュールの配置は、メモリ領域２２０の形状に対応し、副走査シフト量が大きいほどメモリモジュールの数が多く、従って合計記憶容量が大きく設定される。
【００９３】
次に、図１２及び図１３を参照して、画像データ２００の傾き角度δが負で、係数ｓｔａｉｒＶに応じた記憶部３２５０のメモリモジュールの配置とカウンタ信号ＣＮＴ２〜ＣＮＴ７との関係を説明する。図１２に、傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合の記憶部３２５０のメモリモジュール及びカウンタ信号を示す。図１３に、傾き角度δが負で係数ｓｔａｉｒＶ＝３の場合の記憶部３２５０のメモリモジュール及びカウンタ信号を示す。
【００９４】
先ず、角度δが負で係数ｓｔａｉｒＶ＝２の場合の記憶部３２５０のメモリモジュールを考える。図１２に示すように、係数ｓｔａｉｒＶ＝２の場合に、アドレスＸの各メモリモジュールが選択信号ｓｅｌの値（０〜７）に対応付けられている。選択信号ｓｅｌに対応付けられるメモリモジュールは、主走査方向に２画素ずつのブロック単位である。つまり、選択信号ＣＳのメモリモジュール単位と、選択信号ｓｅｌのメモリモジュール単位とが一致する例である。選択信号ｓｅｌの値は、画像データの副走査方向へのシフト量（カウンタ３２４２〜３２４７のカウント値）に対応する。
【００９５】
具体的には、選択信号ｓｅｌ＝０に対応するメモリモジュールは無く、副走査シフト処理部３２４においては、データ信号ＤＩがそのままデータ信号ＤＯとして出力される。選択信号ｓｅｌ＝１に対応するメモリモジュールでは、常に０となるアドレスＹが記憶部３２５０へ入力され、主走査ラインの画像データ読み込みごとに、画像データの読み出し及び書き込みが行われる。
【００９６】
選択信号ｓｅｌ＝２に対応するメモリモジュールでは、カウンタ信号ＣＮＴ２に対応するアドレスＹが記憶部３２５０へ入力され、主走査ラインの移動ごとに、カウンタ信号ＣＮＴ２に対応するカウント値（０〜１の循環）に対応するメモリモジュールで画像データの読み出し及び書き込みが行われる。同様に、選択信号ｓｅｌ＝３に対応するメモリモジュールでは、カウンタ信号ＣＮＴ３に対応するアドレスＹが記憶部３２５０に入力され、主走査ラインの移動ごとに、カウンタ信号ＣＮＴ３に対応するカウント値（０〜２の循環）に対応するメモリモジュールにおいて、画像データの読み出し及び書き込みが行われる。
【００９７】
同様に、選択信号ｓｅｌ＝４〜７に対応するメモリモジュールでは、カウンタ信号ＣＮＴ４〜ＣＮＴ７に対応するアドレスＹが記憶部３２５０に入力され、主走査ラインの移動ごとに、カウンタ信号ＣＮＴ４〜ＣＮＴ７に対応するカウント値（０〜３、…、０〜６の循環）に対応するメモリモジュールにおいて、画像データの読み出し及び書き込みが行われる。
【００９８】
角度δが負で係数ｓｔａｉｒＶ＝３の場合の記憶部３２５０のメモリ領域を考える。図１３に示すように、係数ｓｔａｉｒＶ＝３の場合に、アドレスＸの各メモリモジュールが選択信号ｓｅｌの値（０〜５）に対応付けられている。選択信号ｓｅｌに対応付けられるメモリモジュールは、主走査方向に３画素ずつのブロック単位である。つまり、選択信号ＣＳのメモリモジュール単位と、選択信号ｓｅｌのメモリモジュール単位とが一致しない例である。選択信号ｓｅｌの値は、画像データの副走査方向へのシフト量（カウンタ３２４２〜３２４７のカウント値）に対応する。
【００９９】
具体的には、選択信号ｓｅｌ＝０に対応するメモリモジュールは無く、副走査シフト処理部３２４においては、データ信号ＤＩがそのままデータ信号ＤＯとして出力される。選択信号ｓｅｌ＝１に対応するメモリモジュールでは、常に０となるアドレスＹの記憶部３２５０への入力に応じて、主走査ラインの移動ごとに、画像データの読み出し及び書き込みが行われる。
【０１００】
選択信号ｓｅｌ＝２〜５に対応するメモリモジュールでは、カウンタ信号ＣＮＴ２〜ＣＮＴ５に対応するアドレスＹが記憶部３２５０に入力され、主走査ラインの移動ごとに、カウンタ信号ＣＮＴ２〜ＣＮＴ５に対応するカウント値（０〜１、…、０〜４の循環）に対応するメモリモジュールにおいて、画像データの読み出し及び書き込みが行われる。
【０１０１】
角度δが正の場合も同様に、係数ｓｔａｉｒＶに応じて、記憶部３２５０のメモリモジュールが設定される。
【０１０２】
次に、図１４を参照して、デジタル複写機１で実行される複写処理を説明する。図１４に、複写処理の流れを示す。
【０１０３】
予め、原稿が原稿搬送部２０にセットされる。また、操作部７０を介してユーザからの変倍等の設定入力が受け付けられるものとする。例えば、ユーザから操作部７０を介して複写指示が入力されたことをトリガとして、本体制御部６０により複写処理が実行される。本体制御部６０において、ＲＯＭから読み出されてＲＡＭに展開された複写プログラムと、ＣＰＵとの協働で複写処理が実行される。
【０１０４】
先ず、本体制御部６０によりスキャナ１０が制御される。この制御でスキャナ１０により原稿が読み取られて画像データが取得される（ステップＳ１１）。このとき、同様に本体制御部６０により原稿搬送部２０が制御され、時間差計測部２９により時間差ｓが算出される。
【０１０５】
そして、本体制御部６０により画像処理制御部３３が制御される。画像処理制御部３３により画像処理実行部３１が制御される。この制御で画像処理実行部３１によりスキャナ１０から出力された画像データに、フィルタリング、変倍等の画像処理が施される（ステップＳ１２）。
【０１０６】
ステップＳ１２と並行して、画像処理制御部３３により、上記式（１）と原稿搬送部２０から出力された時間差ｓとに基づいて、原稿の傾き角度θが検出される（ステップＳ１３）。
【０１０７】
そして、画像処理制御部３３により、傾き検出ＲＯＭ４０から上記式（２）〜（４）が読み出され、この関係式と角度θとに基づいて、主走査シフト後の傾き角度δ、ｓｔａｉｒＨ，ｓｔａｉｒＶが算出される。そして、主走査補間処理部３２１により、画像処理実行部３１から出力された画像データに、ｓｔａｉｒＨを用いて主走査補間処理が施される（ステップＳ１４）。
【０１０８】
そして、主走査シフト処理部３２２により、上記式（５）〜（７）に基づいて主走査シフト量ｉｓｈｘが算出され、主走査補間処理部３２１から出力された画像データに、主走査シフト量ｉｓｈｘを用いて主走査シフト処理が施される（ステップＳ１５）。
【０１０９】
そして、副走査補間処理部３２３により、主走査シフト処理部３２２から出力された画像データに、ｓｔａｉｒＶを用いて副走査補間処理が施される（ステップＳ１６）。そして、副走査シフト処理部３２４により、副走査補間処理部３２３から出力された画像データに、係数ｓｔａｉｒＶを用いて副走査シフト量ｉｓｈｙの副走査シフト処理が施される（ステップＳ１７）。
【０１１０】
そして、本体制御部６０によりプリンタ部５０が制御される。プリンタ部５０により、副走査シフト処理部３２４から出力された画像データの画像が、記録用紙に記録される（ステップＳ１８）。そして、複写処理が終了する。
【０１１１】
次に、図１５〜図１７を参照して、複写処理におけるステップＳ１７の副走査シフト処理を具体的に説明する。図１５に、傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合の副走査シフト処理部３２４で用いる信号のタイミングの流れを示す。図１６（ａ）〜（ｈ）に、傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合の記憶部３２５０のメモリモジュールのデータ読み出し及び書き込みの遷移を示す。また、記憶部３２５０のメモリモジュールは、画像データ２００の入力ごとにリセットされるものとする。
【０１１２】
先ず、傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合を考える。副走査シフト処理では、図１５に示すように、主走査有効信号ＨＶＩのハイの入力ごとに、係数ｓｔａｉｒＶ（＝２）に対応するアドレス信号ａｄｒ及び選択信号ｓｅｌが出力される。また、カウンタ３２４２〜３２４７に、副走査有効信号ＶＶＩ及び主走査同期信号ＩＮＤＩが入力され、現在の読み出し領域に応じたカウント値が出力される。
【０１１３】
図１６（ａ）では図示しないが、主走査ラインの一番左では、選択信号ｓｅｌが０であり、データ信号ＤＩがセレクタ３２５１を介してそのままデータ信号ＤＯとして出力される。このため、傾き角度δが負の場合、画像データ２００の一番左の係数ｓｔａｉｒＶ分の領域は、記憶部３２５０に記憶されない構成となる。また、傾き角度δが正の場合、画像データ２００の一番右の係数ｓｔａｉｒＶ分の領域は、記憶部３２５０に記憶されない構成となる。
【０１１４】
次いで、図１６（ａ）に示すように、選択信号ｓｅｌが１となり、セレクタ３２４８から“０”がアドレス信号Ｙとして記憶部３２５０に出力される。記憶部３２５０では、一番左のメモリモジュールのアドレス信号Ｘ及び選択信号ＣＳと、アドレス信号Ｙと、が入力され、アドレスＸ、Ｙに基づき、一番左でカウント値０のメモリモジュールに対し、記憶されているデータがデータ信号ＤＯとして読み出されるとともに、そのメモリ領域にデータ信号ＤＩが書き込まれる。
【０１１５】
次いで、選択信号ｓｅｌが２となり、セレクタ３２４８からカウンタ信号ＣＮＴ２がアドレス信号Ｙとして記憶部３２５０に出力される。記憶部３２５０では、左から２番目のメモリモジュールのアドレス信号Ｘ及び選択信号ＣＳと、アドレス信号Ｙ＝ＣＮＴ２と、が入力され、アドレスＸ、Ｙに基づき、左から２番目でカウント値０のメモリモジュールに対し、記憶されているデータが読み出されてデータ信号ＤＯとしてセレクタ３２５１を介して出力されるとともに、そのメモリ領域にデータ信号ＤＩが書き込まれる。
【０１１６】
同様にして、選択信号ｓｅｌが順に３〜７となり、それぞれ、セレクタ３２４８からカウンタ信号ＣＮＴ３〜ＣＮＴ７がアドレス信号Ｙとして記憶部３２５０に出力される。記憶部３２５０では、左から３〜７番目のメモリモジュールのアドレス信号Ｘ及び選択信号ＣＳと、アドレス信号Ｙ＝ＣＮＴ３〜ＣＮＴ７と、が入力され、順にそれぞれ、アドレスＸ、Ｙに基づき、左から３〜７番目でカウント値０の各メモリモジュールに対し、記憶されているデータが読み出されてデータ信号ＤＯとしてセレクタ３２５１を介して出力されるとともに、そのメモリ領域にデータ信号ＤＩが書き込まれる。こうして、副走査シフト後の１つの主走査ラインのデータ信号ＤＯが出力される。
【０１１７】
そして、図１６（ｂ）に示すように、次の主走査ラインに移行する。先ず、選択信号ｓｅｌが０であり、データ信号ＤＩがセレクタ３２５１を介してそのままデータ信号ＤＯとして出力される。
【０１１８】
次いで、選択信号ｓｅｌが１となり、セレクタ３２４８から“０”がアドレス信号Ｙとして記憶部３２５０に出力される。記憶部３２５０では、一番左のメモリモジュールのアドレス信号Ｘ及び選択信号ＣＳと、アドレス信号Ｙと、が入力され、アドレスＸ、Ｙに基づき、一番左でカウント値０のメモリモジュールに対し、記憶されているデータが読み出されてデータ信号ＤＯとしてセレクタ３２５１を介してデータ信号ＤＯとして読み出されるとともに、そのメモリ領域にデータ信号ＤＩが書き込まれる。
【０１１９】
次いで、選択信号ｓｅｌが２となり、セレクタ３２４８からカウンタ信号ＣＮＴ２がアドレス信号Ｙとして記憶部３２５０に出力される。記憶部３２５０では、左から２番目のメモリモジュールのアドレス信号Ｘ及び選択信号ＣＳと、アドレス信号Ｙ＝ＣＮＴ２と、が入力され、アドレスＸ、Ｙに基づき、左から２番目でカウント値１のメモリモジュールに対し、記憶されているデータが読み出されてデータ信号ＤＯとしてセレクタ３２５１を介して出力されるとともに、そのメモリ領域にデータ信号ＤＩが書き込まれる。
【０１２０】
同様にして、選択信号ｓｅｌが順に３〜７となり、それぞれ、セレクタ３２４８からカウンタ信号ＣＮＴ３〜ＣＮＴ７がアドレス信号Ｙとして記憶部３２５０に出力される。記憶部３２５０では、左から３〜７番目のメモリモジュールのアドレス信号Ｘ及び選択信号ＣＳと、アドレス信号Ｙ＝ＣＮＴ３〜ＣＮＴ７と、が入力され、順にそれぞれ、アドレスＸ、Ｙに基づき、左から３〜７番目でカウント値１の各メモリモジュールに対し、記憶されているデータが読み出されてデータ信号ＤＯとしてセレクタ３２５１を介して出力されるとともに、そのメモリ領域にデータ信号ＤＩが書き込まれる。こうして、副走査シフト後の次の１つの主走査ラインのデータ信号ＤＯが出力される。
【０１２１】
このようにして、図１６（ａ）〜（ｈ）に示すように、記憶部３２５０の各メモリモジュールについて、主走査ラインの移行ごとに、順次、読み出し領域２２１のデータが読み出し及び書き込みされ、副走査シフト後の主走査ラインの画像データとして出力されていく。但し、副走査シフト後の主走査ラインの画像データが出力開始されるのは、主走査ラインの一番左に対応する部分に画像データ値が現れてから以後である。図１５及び図１６に示すように、各カウンタ信号ＣＮＴ２〜ＣＮＴ７が、順に、０〜１、０〜２、０〜３、０〜４、０〜５、０〜６、０〜７で循環するように、記憶部３２５０のデータ読み出し及び書き込みするメモリモジュール（２画素分）が選択される。
【０１２２】
図１７（ａ）〜（ｆ）に、傾き角度δが負で係数ｓｔａｉｒＶ＝３の場合の記憶部３２５０のメモリモジュールのデータ読み出し及び書き込みの遷移を示す。同様に、傾き角度δが負で係数ｓｔａｉｒＶ＝３の場合を考える。副走査シフト処理では、図１７（ａ）〜（ｆ）に示すように、各カウンタ信号ＣＮＴ２〜ＣＮＴ５が、順に、０〜１、０〜２、０〜３、０〜４、０〜５で循環するように、記憶部３２５０のデータ読み出し及び書き込みするメモリモジュール（３画素分）が選択される。
【０１２３】
ここでは、係数ｓｔａｉｒＶ＝２，３の場合を説明したが、これに限定されるものではなく、係数ｓｔａｉｒＶが他の値でも同様である。副走査シフト量は、画像データ２００の角度δの傾きに応じて変更される。また、傾き角度δが負の場合を説明したが、これに限定されるものではなく、正の場合も同様な処理で実現される。
【０１２４】
図１８に、記憶部３２５０のメモリモジュールの配置の別の一例を示す。上記説明では、副走査方向に１画素、主走査方向に２画素のメモリモジュールの選択を行う実装をした場合を示しているが、実際はメモリモジュールをある程度の大きさ以下にすることは現実的でない。ＡＳＩＣに記憶部３２５０を内蔵する場合でも、記憶部３２５０の駆動指定可能なメモリモジュールごとに制御部領域や電源部領域が必要となるので、各選択するメモリモジュールはできるだけ大きくして数を少なくする方が、ＡＳＩＣ内の領域が少なくて済むからである。
【０１２５】
従って、例えば、図１８に示すように、選択するメモリモジュール単位をメモリモジュール４０１のように大きくすれば、分割数に応じて多少のメモリ未使用領域４０２が発生する。しかし、従来のＦＩＦＯメモリを用いて副走査シフト処理を行う場合等とて同様である。
【０１２６】
以上、本実施の形態によれば、記憶部３２５０の記憶容量を、矩形領域２０３でなくmeメモリ領域２１０，２２０に対応させ、さらに、選択信号ＣＳにより駆動するメモリモジュールを選択して駆動するので、副走査シフトに用いる記憶部３２５０の記憶容量を低減するとともに、メモリの消費電力及び発熱量を低減することができる。
【０１２７】
また、傾き補正処理部３２（副走査シフト処理部３２４）を容易にＡＳＩＣに搭載でき、そのＡＳＩＣのパッケージを小さくでき、その端子数も削減できる。また、メモリの発熱量を低減することで、基板や筐体の放熱対策も不要にできる。
【０１２８】
また、スキャナ１０により原稿から画像データを取得して、画像処理部３０により主走査方向及び副走査方向のシフト処理及び補間処理を施すことができる。
【０１２９】
また、記憶部３２５０の主走査方向の複数領域を選択信号ＣＳに応じて一つずつ順に駆動するので、メモリの消費電力及び発熱量を容易に低減できる。
【０１３０】
また、副走査シフト制御部３２４１、カウンタ３２４２〜３２４７、セレクタ３２４８により、記憶部３２５０のアドレスを容易に指定できるとともに、カウンタ３２４２〜３２４７により、副走査シフト量に応じた循環量（カウント値）を容易に生成できる。
【０１３１】
また、比較器３２４９、セレクタ３２５１により、画像データ２００の主走査ラインの副走査シフト量がない領域の画像データを記憶せずデータ信号ＤＯとしてそのまま出力するので、副走査シフトに用いるメモリの記憶容量をより低減できる。
【０１３２】
なお、上記実施の形態における記述は、本発明に係る好適な画像処理装置の一例であり、これに限定されるものではない。
【０１３３】
例えば、上記実施の形態における副走査シフト処理における記憶部３２５０のメモリモジュールの最大のカウント値が６となる場合を説明したが、これに限定されるものではなく、５以下又は７以上としてもよい。メモリモジュールの最大のカウント数を増大すると、最大の傾き角度δが大きい画像データに副走査シフト処理を施すことができる。メモリモジュールの最大のカウント数を低減すると、記憶部３２５０の記憶容量をさらに低減できる。
【０１３４】
また、上記実施の形態において、画像読取装置としてのスキャナ１０を有するデジタル複写機１を説明したが、これに限定されるものではない。画像読取装置としてのスキャナ装置、画像読取装置を有するファクシミリ装置、ＭＦＰ（Multi Function Printer）等としてもよい。また、別体の画像読取装置で読み取られた画像データに副走査シフト処理を含む画像処理を施す機能のみを有する画像処理装置としてもよい。また、本発明は、ＬＥＤ（Light Emitting Diode）アレイ、ＰＬＺＴ光シャッタアレイ等の固体走査型プリンタヘッドを有するプリンタ装置における、プリンタヘッドの副走査方向に対する設置傾きの補正にも利用可能である。
【０１３５】
また、以上の実施の形態におけるデジタル複写機１を構成する各部の細部構成及び細部動作に関して本発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【図面の簡単な説明】
【０１３６】
【図１】本発明に係る実施の形態のデジタル複写機１の機械的構成を示す図である。
【図２】画像読取装置２の電気的構成を示すブロック図である。
【図３】傾き補正処理部３２の内部構成を示すブロック図である。
【図４】副走査シフト処理部３２４の内部構成を示す図である。
【図５】記憶部３２５０内のメモリモジュール配置及びその選択を示す図である。
【図６】（ａ）は、画像読み取り後の画像データ１００を示す図である。（ｂ）は、主走査シフト処理後の画像データ２００を示す図である。（ｃ）は、副走査シフト処理後の画像データ３００を示す図である。
【図７】（ａ）は、画像データ１００の構成を示す図である。（ｂ）は、画像データ２００の構成を示す図である。
【図８】（ａ）は、副走査シフト処理における矩形領域２０１を示す図である。（ｂ）は、矩形領域２０１内の読み出し領域２０２を示す図である。（ｃ）は、読み出し領域２０２における読み出し手順を示す図である。（ｄ）は、読み出しデータ３０１を示す図である。
【図９】（ａ）〜（ｃ）は、メモリ領域２１０の移動の様子を示す図である。
【図１０】（ａ）は、傾き角度δが正の場合のメモリ領域２１０を示す図である。（ｂ）は、傾き角度δが正の場合の記憶部３２５０のメモリモジュールを示す図である。
【図１１】（ａ）は、傾き角度δが負の場合のメモリ領域２２０を示す図である。（ｂ）は、傾き角度δが負の場合の記憶部３２５０のメモリモジュールを示す図である。
【図１２】傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合の記憶部３２５０のメモリモジュール及びカウンタ信号を示す図である。
【図１３】傾き角度δが負で係数ｓｔａｉｒＶ＝３の場合の記憶部３２５０のメモリモジュール及びカウンタ信号を示す図である。
【図１４】複写処理を示すフローチャートである。
【図１５】傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合の副走査シフト処理部３２４で用いる信号のタイミングチャートである。
【図１６】（ａ）〜（ｈ）は、傾き角度δが負で係数ｓｔａｉｒＶ＝２の場合の記憶部３２５０のメモリモジュールのデータ読み出し及び書き込みの遷移を示す図である。
【図１７】（ａ）〜（ｆ）は、傾き角度δが負で係数ｓｔａｉｒＶ＝３の場合の記憶部３２５０のメモリモジュールのデータ読み出し及び書き込みの遷移を示す図である。
【図１８】記憶部３２５０のメモリモジュールの配置の別の一例を示す図である。
【図１９】従来の副走査シフト処理を示す概略図である。
【符号の説明】
【０１３７】
１  デジタル複写機
１Ａ  複写機本体
２  画像読取装置
１０  スキャナ
１１  原稿載置台
１２  原稿光源
１３  ミラー
１４  結像レンズ
１５  ラインセンサ
１６  アンプ
１７  Ａ／Ｄコンバータ
２０  原稿搬送部
２１  給紙トレイ
２２  給紙ローラ
２３  ローラ
２４  排紙ローラ
２５  排紙トレイ
２６ａ，２６ｂ  センサ
２７ａ，２７ｂ  アンプ
２８ａ，２８ｂ  コンパレータ
２９  時間差計測部
３０  画像処理部
３１  画像処理実行部
３２  傾き補正処理部
３２１  主走査補間処理部
３２２  主走査シフト処理部
３２３  副走査補間処理部
３２４  副走査シフト処理部
３２４０  制御部
３２４１  副走査シフト制御部
３２４２〜３２４７  カウンタ
３２４８，３２５１  セレクタ
３２４９  比較器
３２５０  記憶部
３３  画像処理制御部
４０  傾き検出ＲＯＭ
５０  プリンタ部
６０  本体制御部
７０  操作部
【図１】
2008028542.tif 000003
【図２】
2008028542.tif 000004
【図３】
2008028542.tif 000005
【図４】
2008028542.tif 000006
【図５】
2008028542.tif 000007
【図６】
2008028542.tif 000008
【図７】
2008028542.tif 000009
【図８】
2008028542.tif 000010
【図９】
2008028542.tif 000011
【図１０】
2008028542.tif 000012
【図１１】
2008028542.tif 000013
【図１２】
2008028542.tif 000014
【図１３】
2008028542.tif 000015
【図１４】
2008028542.tif 000016
【図１５】
2008028542.tif 000017
【図１６】
2008028542.tif 000018
【図１７】
2008028542.tif 000019
【図１８】
2008028542.tif 000020
【図１９】
2008028542.tif 000021