(57)【要約】【課題】バースト転送可能なメモリを用いて回転処理時のデータ転送を効率的に行う。【解決手段】同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、画素毎に複数Ｌチャンネルの画像データを前記メモリに書き込み、前記メモリ上で回転させる記憶制御部とを備え、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込み、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の、同一行アドレスで隣接する異なる列アドレスに書き込まれた前記画像データを前記メモリから連続して読み出し、前記メモリから読み出された各チャンネルＮ×Ｎ画素単位の画像データをそれぞれ９０°回転させ、回転されたＮ×Ｎ画素単位のＬチャンネル分の画像データをメモリに対して同一行アドレスで隣接する異なる列アドレスに書き込む。【選択図】図１
2011188050.tif 000002
【特許請求の範囲】
【請求項１】
画素毎に複数の色もしくは属性の複数Ｌチャンネルの画像データを、同一行アドレス内の列アドレス方向にバースト転送可能なメモリを用いて画像処理する画像処理方法であって、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込み、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の、同一行アドレスで隣接する異なる列アドレスに書き込まれた前記画像データを、前記メモリから連続して読み出し、
前記メモリから読み出された、各チャンネルあたりＮ×Ｎ画素単位の画像データを、それぞれ９０°あるいは２７０°回転させ、
前記回転された、Ｎ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込む、
ことを特徴とする画像処理方法。
【請求項２】
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して書き込む際に、バースト転送長をＢとして、列アドレス方向の空き容量がＢ×Ｌ以上であるかを確認し、
列アドレス方向の空き容量がＢ×Ｌより小さくなった時点で、次の行アドレスにて前記メモリに対して書き込む、
ことを特徴とする請求項１記載の画像処理方法。
【請求項３】
同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、
画素毎に複数の色もしくは属性の複数Ｌチャンネルの画像データを前記メモリに書き込むと共に、前記メモリ上で回転させる記憶制御部と、を備え、
前記記憶制御部は、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込み、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の、同一行アドレスで隣接する異なる列アドレスに書き込まれた前記画像データを、前記メモリから連続して読み出し、
前記メモリから読み出された、各チャンネルあたりＮ×Ｎ画素単位の画像データを、それぞれ９０°あるいは２７０°回転させ、
前記回転された、Ｎ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込む、
ことを特徴とする画像処理装置。
【請求項４】
前記記憶制御部は、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して書き込む際に、バースト転送長をＢとして、列アドレス方向の空き容量がＢ×Ｌ以上であるかを確認し、
列アドレス方向の空き容量がＢ×Ｌより小さくなった時点で、次の行アドレスにて前記メモリに対して書き込む、
ことを特徴とする請求項３記載の画像処理装置。
【請求項５】
同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、
画素毎に複数の色もしくは属性の複数Ｌチャンネルの画像データを前記メモリに書き込むと共に、前記メモリ上で回転させる記憶制御部と、
前記記憶制御部を介して前記メモリから読み出された画像データに基づいて画像形成を実行するプリントエンジンと、を備え、
前記記憶制御部は、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込み、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の、同一行アドレスで隣接する異なる列アドレスに書き込まれた前記画像データを、前記メモリから連続して読み出し、
前記メモリから読み出された、各チャンネルあたりＮ×Ｎ画素単位の画像データを、それぞれ９０°あるいは２７０°回転させ、
前記回転された、Ｎ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込む、
ことを特徴とする画像形成装置。
【請求項６】
前記記憶制御部は、
同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して書き込む際に、バースト転送長をＢとして、列アドレス方向の空き容量がＢ×Ｌ以上であるかを確認し、
列アドレス方向の空き容量がＢ×Ｌより小さくなった時点で、次の行アドレスにて前記メモリに対して書き込む、
ことを特徴とする請求項５記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置および画像形成装置に関し、特に、効率よく画像回転を行える技術に関する。
【背景技術】
【０００２】
画像処理装置や画像形成装置において、画像を９０度回転させる画像回転処理が要求されることがある。
たとえば、原稿と記録紙の縦横の向きが異なる場合には、スキャナで得た画像データを画像回転処理してからプリンタで画像形成している。また、原稿と記録紙の縦横の向きが同じであっても、２in１処理を伴う画像形成を実行する場合には、スキャナで得た画像データを画像回転処理したうえで２in１の合成を行ってからプリンタで画像形成している。
【０００３】
なお、このような画像回転処理は、高速処理が要求されるため、半導体メモリを使用した画像メモリ上で実行されることが多い。
なお、半導体メモリを用いた画像処理装置における画像回転処理の改善については、以下の特許文献などに提案がなされている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１１９３９７号公報
【特許文献２】特開平５−３４２３３９号公報
【特許文献３】特開平１０−２１０２５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
以上の特許文献１では、カラー画像処理の際にＲＧＢあるいはＹＭＣＫといった複数のチャンネルについて、画像メモリのバンクを切り替えることで連続した高速処理を実現しようとしている。しかし、バンク数とチャンネル数とが一致しない場合には、画像メモリに無駄な使用されない領域が生じることで、使用可能なメモリ領域が限定されてしまうことがある。
【０００６】
また、以上の特許文献２では、バースト転送が可能なDDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)などの半導体メモリを使用することで、一度に転送できるメモリ量を増大させ、高速化を図ろうとしている。
【０００７】
ここで、このDDR SDRAMを用いてバースト転送を行いつつ、画像回転処理を実行する場合について説明する。
なお、DDR SDRAMとしては、DDR,DDR2,DDR3などのように、バースト転送できるデータ量（バースト転送長Ｂ）がSDRAMと比較して、２倍，４倍，８倍と、増大する方向に進歩している。
【０００８】
図５（ａ）は回転前の画像データであり、１−８の８つのブロックに分けて処理される。ここで、各ブロックは図５（ｂ）に示されるよう、８×８画素（Ｎ×Ｎ画素）の集合体である。
【０００９】
なお、この場合、バースト転送長Ｂにおいて、Ｂ＝８として、８バースト（Ｂバースト）転送が可能な画像メモリを使用した場合を想定して説明する。ここでバースト転送長Ｂとは、一度のバースト転送を行う際のデータ量を意味する。
【００１０】
ここでは、図５（ａ）（ｂ）のように行方向８画素（Ｎ画素）を列方向に８列バースト（Ｂ＝８として、Ｂバースト）転送により連続して読み出し、図５（ｃ）のように画素の並べ替えにより９０°回転させた上で、再び図５（ｃ）（ｄ）のように、行方向８画素を列方向に８列バースト転送により連続して画像メモリに書き込むようにする。
【００１１】
ところで、バースト転送できるデータ量を更に大きくして高速化を図る場合について、図６を用いて説明する。
この場合、各ブロックは図６（ｂ）に示されるよう、８×８画素（Ｎ×Ｎ画素）の集合体である。この場合に、１６バースト（Ｂ＝８として、２Ｂバースト）転送が可能な画像メモリを使用した場合を想定して説明する。
【００１２】
ここでは、図６（ａ）のように行方向８画素を列方向に１６列バースト（２Ｂバースト）転送により連続して読み出し、図６（ｂ）のように画素の並べ替えにより９０°回転させる。ただし、図６（ｃ）に示すごとく、画像回転後のブロック１，２の位置が回転前と異なるため、行方向８画素を列方向に８列バースト転送の書き込みを、２回に分けて画像メモリに書き込むようにする。この場合、回転後の行アドレスが異なるため、連続して一度に書き込むことができなくなり、バースト転送量を大きくしたにもかかわらず、高速な処理を実現することができない状態になる。
【００１３】
なお、この様子を図７に示す。ここでは、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロー）、Ｋ（黒）、Ａ（タグデータ）の５チャンネルで構成された画像データの一例を示す。
【００１４】
ここで、図７（ａ）は回転前と回転後の画像データが格納される画像メモリの様子を模式的に示しており、Ｃ１，Ｃ２，…はシアンＣについての８×８画素のブロックであり、Ｍ１，Ｍ２，…はマゼンタＭについての８×８画素のブロックであり、Ａ１，Ａ２，…はタグデータＡについての８×８画素のブロックである。
【００１５】
この図７では、図５同様に、シアンＣのブロックＣ１についての回転処理の様子を示している。この図７で明らかなように、回転前のＣ１にはＣ２が隣接しているが、回転後のＣ１にはＣ３８が隣接している。
【００１６】
すなわち、８×８画素（Ｎ×Ｎ画素）のブロックの場合には、行方向８画素（Ｎ画素）を列方向に８列バースト（Ｂ＝８としてＢバースト）転送により連続して扱うことは可能であるが、バースト転送のＢをＮより大きくしても、効率が良くならない問題がある。
【００１７】
なお、以上の場合に、１つのブロックを構成するＮそのものを大きくすると、一度に扱えるデータ量が大きくなるが、画像回転処理に必要な内部メモリが大量に必要になり、実用的ではない。
【００１８】
本発明は、バースト転送が可能な画像メモリを用いた場合に画像回転処理実行時のデータ転送を効率的に行える画像処理方法および画像処理装置ならびに画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上述した課題を解決する本願発明は、以下に述べる通りである。
本発明は、同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、画素毎に複数の色もしくは属性の複数Ｌチャンネルの画像データを前記メモリに書き込むと共に、前記メモリ上で回転させる記憶制御部と、を備え、前記記憶制御部は、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込み、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の、同一行アドレスで隣接する異なる列アドレスに書き込まれた前記画像データを、前記メモリから連続して読み出し、前記メモリから読み出された、各チャンネルあたりＮ×Ｎ画素単位の画像データを、それぞれ９０°あるいは２７０°回転させ、前記回転された、Ｎ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込む、ことを特徴とする。
【００２０】
なお、記憶制御部は、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、前記メモリに対して書き込む際に、バースト転送長をＢとして、列アドレス方向の空き容量がＢ×Ｌ以上であるかを確認し、列アドレス方向の空き容量がＢ×Ｌより小さくなった時点で、次の行アドレスにて前記メモリに対して書き込む、ことを特徴とする。
【００２１】
この場合、１アドレスのデータ量としてデータバス幅をｉ、バースト転送長Ｂを幾つ連続させるかを意味するバースト数をｊとすると、Ｎ×Ｎ＝ｉ×ｊ×Ｂが成り立つ。すなわち、Ｎ×Ｎ画素単位のＬチャンネル分のデータを、ｉ×ｊ×Ｂ×Ｌ単位でバースト転送しつつ高速に扱うことを意味している。
【発明の効果】
【００２２】
以上の発明では、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込んでおき、Ｎ×Ｎ画素単位のＬチャンネル分の同一行アドレスで隣接する異なる列アドレスに書き込まれた画像データをメモリから連続して読み出し、メモリから読み出された各チャンネルあたりＮ×Ｎ画素単位の画像データをそれぞれ回転させ、回転されたＮ×Ｎ画素単位のＬチャンネル分の画像データをメモリに対して同一行アドレスで隣接する異なる列アドレスに連続して書き込むようにしているため、バースト転送長であるＢ毎にＢ×Ｌバースト転送による連続した読み書きが可能になり、バースト転送が可能な画像メモリを用いた場合に画像回転処理実行時のデータ転送を効率的に行える画像処理方法および画像処理装置ならびに画像形成装置を実現できる。
【００２３】
また、この発明によれば、連続した効率的な読み書きが可能になるため、処理回路を従来より低クロックで動作させても結果として十分な処理が可能になり、低電力化を図ることができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態の概略構成を示す構成図である
【図２】本発明の実施形態の動作を示すフローチャートである。
【図３】本発明の実施形態のデータ処理の様子を示す説明図である
【図４】本発明の実施形態のデータ処理の様子を示す説明図である
【図５】従来のデータ処理の様子を示す説明図である
【図６】従来のデータ処理の様子を示す説明図である
【図７】従来のデータ処理の様子を示す説明図である
【発明を実施するための形態】
【００２５】
以下、図面を参照して本発明の画像処理方法、画像処理装置、画像形成装置を実施するための形態（実施形態）を詳細に説明する。ここでは、画像処理装置を含む画像形成装置、画像処理方法を実行する画像処理装置を含む画像形成装置を具体例にして、実施形態の説明を行う。
【００２６】
〔画像形成装置の構成〕
ここで、第一実施形態の電子写真方式の画像形成装置１００の構成を、図１に基づいて詳細に説明する。なお、画像形成装置１００として既知であって、本実施形態の特徴的な動作や制御に直接に関係しない一般的な部分についての説明は省略してある。
【００２７】
図１に示す画像形成装置１００は、各部を制御する全体制御部１０１、操作者が各種操作入力を行うと共に各種表示を行う操作表示部１０５、外部からの画像データの供給を受けるプリンタコントローラ１１０、原稿を読み取って画像データを生成するスキャナ１２０、入力画像データに対して入力画像処理を施す入力画像処理部１３０、画像データや各種データを記憶する記憶部１４０、記憶部１４０で記憶された画像データに対して出力画像処理を施す出力画像処理部１５０、画像データに基づいて記録紙上に画像を形成するプリントエンジン１６０、を備えて構成されている。
【００２８】
ここで、全体制御部１０１は、図示しないＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等を備える。ここで、ＣＰＵは、ＲＡＭの所定領域をワークエリアとし、ＲＯＭに記憶されている各種プログラムを実行して、画像形成装置１００の各部を統括的に制御する。
【００２９】
ここで、操作表示部１０５は、キーボード、マウス、タッチパネル等の入力デバイスを備え、入力される各種指示信号を全体制御部１０１に送信する。また、操作表示部１０５は、ＬＣＤ（Liquid Crystal Display）やＣＲＴ（Cathode Ray Tube）等の表示手段を備え、全体制御部１０１から入力される各種画像データを表示する。なお、この操作表示部は操作部と表示部が別であってもよいが、表示されたアイコンあるいはキー（以下、「キー」と呼ぶ）を押下するタッチパネルであってもよい。
【００３０】
入力画像処理部１３０は、スキャナ１２０で得られた入力画像データに対して、シェーディング補正、変倍処理、傾き補正処理、色変換（ＲＧＢ→ＹＭＣＫ）などの入力画像処理を施す。なお、入力画像処理部１３０は、プリンタコントローラ１１０経由で得られた入力画像データに対しても、必要に応じて入力画像処理を施す。
【００３１】
出力画像処理部１５０は、記憶部１４０で記憶された画像データに対して、画像形成に必要なプリンタガンマ変換、誤差拡散処理、微笑変倍処理などの出力画像処理を施す。
プリントエンジン１６０は、電子写真方式や各種方式の画像形成部や印刷装置であり、複写機やプリンタやファクシミリ装置などにおいて所定の記録紙上に画像を形成して出力するものである。
【００３２】
また、記憶部１４０は、記憶に関する各種制御を実行する記憶制御部１４１、バースト転送が可能なDDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)などの半導体メモリを使用して一度に転送できるメモリ量を増大させた状態で画像データを記憶する画像メモリ１４２、画像データなどを不揮発性記憶するＨＤＤ(Hard Disc Drive)１４３、を備えて構成される。なお、画像回転処理については、記憶制御部１４１が画像メモリ１４２上の画像データについて、ブロックごとに画素の並べ替えを行うことで実現される。
【００３３】
なお、この実施形態において、バースト転送長Ｂとは、一度のバースト転送を行う際のデータ量を意味する。
〔画像処理装置、画像形成装置の動作〕
ここで、第一実施形態の画像形成装置１００の動作（画像処理方法）について説明する。
【００３４】
ここでは、画素毎に複数の色もしくは属性の複数Ｌチャンネルの画像データを、同一行アドレス内の列アドレス方向にバースト転送可能な画像メモリ１４２を用いて画像処理する場合について説明する。
【００３５】
操作部１０５でのユーザの操作、もしくはプリンタコントローラ１１０経由で図外の端末から画像回転処理の要求が発生したとする（図２中のステップＳ１０１）。または、画像形成の際の原稿と記録紙との関係、２in１処理などによる画像回転処理の必要性を、全体制御部が判断したとする（図２中のステップＳ１０１）。
【００３６】
なお、この画像回転処理は、ＨＤＤ１４３に格納されている画像データを画像形成する際に必要になる場合について想定する。
これを受けた全体制御部１０１は、記憶部１４０内の記憶制御部１４１に画像回転処理の指示を与える。
【００３７】
記憶制御部１４１は、ＨＤＤ１４３から該当する画像データを読み出し、同一画素についての各チャンネルあたりＮ×Ｎ画素単位（ブロック単位）の、ＣＭＹＫＡの合計Ｌチャンネル分の画像データを、画像メモリ１４２に対して、同一行アドレスで隣接する異なる列アドレスに書き込む（図２中のステップＳ１０２）。
【００３８】
ここでは、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロー）、Ｋ（黒）、Ａ（タグデータ）の場合、すなわち、チャネル数Ｌ＝５を具体例とする。さらに、ブロックの画素数Ｎ＝８として、８×８画素のブロック単位の画像データを具体例とする。また、バースト転送長Ｂ＝８を具体例にして説明を行う。
【００３９】
なお、DDR SDRAMとしては、DDR,DDR2,DDR3などのように、バースト転送できるデータ量（バースト転送長Ｂ）がSDRAMと比較して、２倍，４倍，８倍と、増大する方向に進歩しているが、ここではＢ＝８として説明を行う。
【００４０】
また、１アドレスのデータ量としてデータバス幅をｉ、バースト転送長Ｂを幾つ連続させるかを意味するバースト数をｊとすると、Ｎ×Ｎ＝ｉ×ｊ×Ｂが成り立つ。ここでは、ｉ＝８，ｊ＝１を具体例とするが、Ｎ，ｉ，ｊの数値はこれに限定されるものではない。
【００４１】
この場合、図示されないラインメモリ等を用いて、画像データの副走査方向の８画素を１つにパッキングする。そして、パッキングした状態の画素群を更に８個まとめてひとかたまりのブロックとする。ここで、行アドレスをセットし、先頭の列アドレスをセットして、シアンＣの８×８画素を８バースト転送により画像メモリ１４２に書き込む。次に８アドレス進んだ列アドレスをセットして、マゼンダＭの８×８画素を８バースト転送により画像メモリ１４２に書き込む。この次に８アドレス進んだ列アドレスをセットして、イエローＹの８×８画素を８バースト転送により画像メモリ１４２に書き込む。またこの次に８アドレス進んだ列アドレスをセットして、黒Ｋの８×８画素を８バースト転送により画像メモリ１４２に書き込む。更にこの次に８アドレス進んだ列アドレスをセットして、タグデータＡの８×８画素を８画素・８バースト転送により画像メモリ１４２に書き込む。このようにして、Ｌ＝５チャンネル分の８×８画素の画像データを、画像メモリ１４３４２において同一行アドレスの隣接する列アドレスに書き込む。
【００４２】
また、ここで、図３（ａ）は回転前と回転後の画像データが格納される画像メモリ１４２の様子を模式的に示しており、Ｃ１はシアンＣについての８×８画素のブロックであり（図３（ｃ）参照）、Ｍ１はマゼンタＣについての前記Ｃ１と同一画素位置の８×８画素のブロックであり、Ｙ１はイエローＹについての前記Ｃ１，Ｍ１と同一画素位置の８×８画素のブロックであり、Ｋ１は黒Ｋについての前記Ｃ１，Ｍ１，Ｙ１と同一画素位置の８×８画素のブロックであり、Ａ１はタグデータＡについての前記Ｃ１，Ｍ１，Ｙ１，Ｋ１と同一画素位置の８×８画素のブロックである。
【００４３】
このように、本実施形態では、同一画素位置である、Ｃ１，Ｍ１，Ｙ１，Ｋ１，Ａ１の８×８画素のブロックについて、Ｌ＝５チャンネル分の画像データを、画像メモリ１４２に対して、同一行アドレスで隣接する異なる列アドレスに書き込む。
【００４４】
したがって、次の８×８画素のブロックＣ２，Ｍ２，Ｙ２，Ｋ２，Ａ２、また、それ以降の画素についても同様である。
なお、記憶制御部１４１は、Ｎ×Ｎ画素単位のＬチャンネル分の画像データを画像メモリ１４２に対して書き込む際に、バースト転送長をＢとして、列アドレス方向の空き容量がＢ×Ｌ以上であるかを確認し、列アドレス方向の空き容量がＢ×Ｌより小さくなった時点で、次の行アドレスに移行して画像メモリ１４２に対して書き込みを続行する。たとえば、列アドレスが１０ビットの場合、１０２４画素分の容量を有するが、Ｌ＝５チャンネル分の画像データを画像メモリ１４２上の同一行アドレスで隣接する異なる列アドレスに書き込む、という観点から、１０００画素分の書き込みが完了した時点で、次の書き込みの容量が足りないと、記憶制御部１４１が判断する。これにより、記憶制御部１４１は、行アドレスを変更し、列アドレスをリセットして０から開始する。
【００４５】
画像を９０°あるいは２７０°回転させる場合、さきほど書き込みを行った画像メモリ１４２の先頭位置からＬ＝５チャンネル分の８×８画素を、記憶制御部１４１の指示により８画素・８×５バースト転送により読み出す（図２中のステップＳ１０３）。読み出した画像データを、記憶制御部１４１内の内部メモリ上で各チャンネルごとに画素並べ替えを行って、各８×８画素内で回転を行う（図２中のステップＳ１０４，図３（ｂ）（ｃ）（ｄ）（ｅ））。
【００４６】
そして、記憶制御部１４１は、並べ替えを行ったＮ×Ｎ画素単位（ブロック単位）のＬチャンネル分の画像データを、画像メモリ１４２に対して、同一行アドレスで隣接する異なる列アドレスに書き込む（図３中のステップＳ１０５）。この際は、さきほど読み出した画像メモリ１４２の領域（回転前画像領域）とは異なる領域（回転後画像領域）に書き込む。
【００４７】
この書き込みの際には、画像メモリ１４２の先頭アドレス位置、画像サイズ、画像メモリのアドレス長などから判断し、回転後画像領域の先頭から順に読み出しを行った場合に回転画像が得られる位置に書き込みを行うよう、記憶制御部１４１が制御している。
【００４８】
また、このとき、ＣＭＹＫＡのＬチャンネル分の画像データについては、画像メモリ１４２に対して、同一行アドレスで隣接する異なる列アドレスに書き込むため、効率が落ちることはない（図３（ｅ）（ａ））。
【００４９】
以上のＮ×Ｎ画素単位のＬチャンネル分の処理を画像データの全画素について実行する（図２中のステップＳ１０６）と、記憶制御部１４１は、プリントエンジン１６０側での水平方向画像有効領域信号と垂直方向画像有効領域信号とのタイミングに合わせて画像データを画像形成に使用できるように、画像メモリ１４２上の回転後画像領域の先頭位置から順番に読み出して図示されないラインバッファに書き込んでいく。そして、ラインバッファから１ラインずつ画像データを取り出して、水平方向画像有効領域信号と垂直方向画像有効領域信号とのタイミングに合わせて画像データをプリントエンジン１６０に供給する（図２中のステップＳ１０７）。
【００５０】
以上の実施形態では、同一画素についての各チャンネルあたりＮ×Ｎ画素単位のＬチャンネル分の画像データを、画像メモリに対して、同一行アドレスで隣接する異なる列アドレスに書き込んでおき、Ｎ×Ｎ画素単位のＬチャンネル分の同一行アドレスで隣接する異なる列アドレスに書き込まれた画像データをメモリから連続して読み出し、メモリから読み出された各チャンネルあたりＮ×Ｎ画素単位の画像データをそれぞれ回転させ、回転されたＮ×Ｎ画素単位のＬチャンネル分の画像データをメモリに対して同一行アドレスで隣接する異なる列アドレスに連続して書き込むようにしているため、バースト転送長であるＢ毎にＢ×Ｌバースト転送による連続した読み書きが可能になり、バースト転送が可能な画像メモリを用いた場合に画像回転処理実行時のデータ転送を効率的に行えるようになる。
【００５１】
そして、この実施形態によれば、連続した効率的な読み書きが可能になるため、処理回路を従来より低クロックで動作させても結果として十分な処理が可能になり、低電力化を図ることができる。また、従来より低速な制御回路やメモリを使用することが可能になるため、装置の低価格化を実現することも可能になる。
【００５２】
図４は、従来動作（図７参照）と本実施形態動作（図３参照）とにおける、クロックとコマンドとデータ転送の様子を模式的に示すタイムチャートである。
図４上段は従来動作（図７参照）におけるデータ転送の様子を示すタイムチャートであり、８画素・８バースト転送によるリードサイクルでの読み出しと、８画素・８バースト転送によるライトサイクルでの書き込みとが行える様子を示している。この場合、データ転送を実行している以外の期間が多く、改善の余地がある。
【００５３】
これに対し、図４中段は本実施形態動作（図３参照）におけるデータ転送の様子を示すタイムチャートであり、８画素・８×５バースト転送によるリードサイクルでの読み出しが行える様子を示している。この場合、従来の場合と比較して、データ転送を連続して行える期間が長くなり、無駄時間が小さくなっている。同様に、図４下段は本実施形態動作（図３参照）におけるデータ転送の様子を示すタイムチャートであり、８画素・８×５バースト転送によるライトサイクルでの書き込みが行える様子を示している。この場合、従来の場合と比較して、データ転送を連続して行える期間が長くなり、無駄時間が小さくなっている。
【００５４】
なお、以上の実施形態の説明では、Ｎ×Ｎ画素単位のＬチャンネル分の同一行アドレスで隣接する異なる列アドレスに書き込まれた画像データをメモリから連続して読み出し、メモリから読み出された各チャンネルあたりＮ×Ｎ画素単位の画像データをそれぞれ回転させ、回転されたＮ×Ｎ画素単位のＬチャンネル分の画像データをメモリに対して同一行アドレスで隣接する異なる列アドレスに連続して書き込むようにしているため、バースト転送長であるＢ毎にＢ×Ｌバースト転送による連続した読み書きが可能である具体例で説明を行っていた。
【００５５】
この場合、１アドレスのデータ量としてデータバス幅をｉ、バースト転送長Ｂを幾つ連続させるかを意味するバースト数をｊとすると、Ｎ×Ｎ＝ｉ×ｊ×Ｂが成り立つ。すなわち、Ｎ×Ｎ画素単位のＬチャンネル分のデータを、ｉ×ｊ×Ｂ×Ｌ単位でバースト転送しつつ高速に扱うことを意味している。
【００５６】
ここで、Ｎ＝８として８×８単位，Ｌ＝５のデータを、ｉ＝８，ｊ＝１，Ｂ＝８，Ｌ＝５の単位でバースト転送しつつ高速に扱うことが可能であり、同様にして、ｉ＝４，ｊ＝２，Ｂ＝８，Ｌ＝５の単位でバースト転送しつつ高速に扱うことも可能である。
【００５７】
そして、このＮ，Ｌ，ｉ，ｊ，Ｂには各種の任意の数値を割り当てることが可能であり、本実施形態の条件を満たす範囲であれば、バースト転送が可能な画像メモリを用いた場合に画像回転処理実行時のデータ転送を効率的に行えるという良好な効果を得ることができる。
【００５８】
〔その他の実施形態（１）〕
なお、以上の実施形態はスキャナやプリントエンジンを有する画像形成装置を具体例にして説明してきたが、これに限定されるものではない。たとえば、スキャナやプリントエンジンを備えず、バースト転送による効率の良い画像回転処理を実行する画像処理装置も本発明の実施形態の一態様である。
【００５９】
〔その他の実施形態（２）〕
なお、以上の実施形態はカラー画像形成を行う画像処理装置や画像形成装置を想定していたが、これに限定されるものではない。たとえば、モノクロの画像処理装置や画像形成装置であっても、画像データとタグデータとの２チャンネルについて、連続して読み出しと書き込みとがバースト転送により実現できる。すなわち、Ｌ＝２として、バースト転送長であるＢ毎にＢ×Ｌバースト転送による連続した読み書きが可能になり、バースト転送が可能な画像メモリを用いた場合に画像回転処理実行時のデータ転送を効率的に行えるようになる。
【符号の説明】
【００６０】
１００  画像形成装置
１０１  全体制御部
１０５  操作部
１１０  プリントコントローラ
１２０  スキャナ
１３０  入力画像処理部
１４０  記憶部
１４１  記憶制御部
１４２  画像メモリ
１４３  ＨＤＤ
１５０  出力画像処理部
１６０  プリントエンジン
【図１】
2011188050.tif 000003
【図２】
2011188050.tif 000004
【図３】
2011188050.tif 000005
【図４】
2011188050.tif 000006
【図５】
2011188050.tif 000007
【図６】
2011188050.tif 000008
【図７】
2011188050.tif 000009