(57)【要約】【課題】  画像データの回転処理を容易に実行することができる画像処理装置を提供する。【解決手段】  メモリコントローラ１７は、入力用ラインバッファ７０と、出力用ラインバッファ８０と、第１画像変換部６５と、第２画像変換部６６と、を有している。中間画像データ１６ａの生成手順では、まず、入力画像データのうち４ライン分のラインデータが入力用ラインバッファ７０に読み込まれる。各ラインデータから１６ビットの部分画像データが抽出される。そして、抽出された６４ビット分の部分画像データは、記憶データとして同期型ＤＲＡＭ１６に記憶される。一方、出力画像データの生成手順では、最小アクセス単位からデータを読み出す。読み出されたデータに含まれる各部分画像データから４ビット分の画素データを抽出する。抽出された４ビット×４（＝１６ビット）分の画素データは、回転処理が施された後、出力用ラインバッファ８０に格納される。【選択図】図１
2008033488.tif 000002
【特許請求の範囲】
【請求項１】
各画素１ビットの情報量を有する入力画像データを９０度回転させ、出力画像データを取得可能な画像処理装置であって、
(a)  最小アクセス単位のデータ量が２のｋ乗ビットである同期型ＤＲＡＭと、  
(b)  前記入力画像データを４ライン毎に格納可能な入力用ラインバッファと、
(c)  前記入力用ラインバッファに格納された前記入力画像データに基づいて中間画像データを生成するとともに、生成された前記中間画像データを前記同期型ＤＲＡＭに記憶させる第１画像変換部と、
(d)  ４つのラインメモリ要素を有しており、前記出力画像データを４ライン毎に格納可能な出力用ラインバッファと、
(e)  前記同期型ＤＲＡＭに記憶された前記中間画像データに基づいて４ライン分の前記出力画像データを生成するとともに、４ライン毎に前記出力用ラインバッファから出力させる第２画像変換部と、
を備え、
前記第１画像変換部は、
(1)  前記入力画像データのうち前記入力用ラインバッファに格納された４ライン分のラインデータにつき、各ラインデータから２の（ｋ−２）乗ビットずつ取り出して４つの部分画像データを取得する処理と、
(2)  前記処理(1)によって取得された各部分画像データを、前記入力用ラインバッファに入力された順に並び替える処理と、
(3)  並び替えられた各部分画像データを最小アクセス単位として前記同期型ＤＲＡＭに記憶させる処理と、
を実行可能とされており、
前記第２画像変換部は、
(4)  前記同期型ＤＲＡＭに格納された前記中間画像データを最小アクセス単位ずつ読み出す処理と、
(5)  前記処理(4)によって読み出されたデータを構成する４つの部分画像データにつき、各部分画像データから抽出された４画素分のデータを対応する前記ラインメモリ要素に格納することにより、前記入力画像データを９０度回転させる処理と、
(6)  前記処理(4)および処理(5)を繰り返すことによって取得された４ライン分のラインデータを、前記出力画像データの一部として出力させる処理と、
を実行可能とされていることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記同期型ＤＲＡＭは、ＤＤＲ ＳＤＲＡＭであり、
前記最小アクセス単位のデータ量は、２の６乗ビットであることを特徴とする画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置において、
前記装置は、出力用ラインバッファを２つ有しており、
前記出力用ラインバッファのうち一方にデータが書き込まれているとき、他方はデータ出力可能とされていることを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各画素１ビットの情報量を有する入力画像データを９０度回転させ、出力画像データを取得可能な画像処理装置であって、特に、出力画像データを取得する手法の改良に関する。
【背景技術】
【０００２】
従来より、画像データに対して回転処理を施すことができる装置が知られている（例えば、特許文献１〜３）。ここで、特許文献１に記載された技術では、画像データを回転させる処理において、既に読み込まれたデータを再利用することにより、メモリにアクセスする回数を低減させることができる。また、特許文献２に記載された技術では、１ライン毎に順次ＲＡＭの選択をローテーションさせることにより、ＲＡＭにアクセスする回数を低減させることができる。さらに、特許文献３に記載された技術では、イメージメモリを２つ備えることにより、データ量の多い原稿のイメージデータについてもイメージメモリに確実に記憶させることができる。
【０００３】
【特許文献１】特開２００４−２１４８９２号公報
【特許文献２】特開平０８−１３０６３３号公報
【特許文献３】特開２００２−１８５７７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１ないし３に記載された技術では、画像の回転処理のためにメモリをさらに確保することが必要となる。例えば、特許文献１では、回転処理を施すために、５１２×５１２の高速メモリと、６４×６４のフリップフロップ群と、を設けることが必要となる。その結果、装置の製造コストが増大するという問題が生じていた。
【０００５】
そこで、本発明では、画像データの回転処理を容易に実行することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するため、請求項１の発明は、各画素１ビットの情報量を有する入力画像データを９０度回転させ、出力画像データを取得可能な画像処理装置であって、最小アクセス単位のデータ量が２のｋ乗ビットである同期型ＤＲＡＭと、前記入力画像データを４ライン毎に格納可能な入力用ラインバッファと、前記入力用ラインバッファに格納された前記入力画像データに基づいて中間画像データを生成するとともに、生成された前記中間画像データを前記同期型ＤＲＡＭに記憶させる第１画像変換部と、４つのラインメモリ要素を有しており、前記出力画像データを４ライン毎に格納可能な出力用ラインバッファと、前記同期型ＤＲＡＭに記憶された前記中間画像データに基づいて４ライン分の前記出力画像データを生成するとともに、４ライン毎に前記出力用ラインバッファから出力させる第２画像変換部とを備え、前記第１画像変換部は、(1)前記入力画像データのうち前記入力用ラインバッファに格納された４ライン分のラインデータにつき、各ラインデータから２の（ｋ−２）乗ビットずつ取り出して４つの部分画像データを取得する処理と、(2)前記処理(1)によって取得された各部分画像データを、前記入力用ラインバッファに入力された順に並び替える処理と、(3)並び替えられた各部分画像データを最小アクセス単位として前記同期型ＤＲＡＭに記憶させる処理とを実行可能とされており、前記第２画像変換部は、(4)前記同期型ＤＲＡＭに格納された前記中間画像データを最小アクセス単位ずつ読み出す処理と、(5)前記処理(4)によって読み出されたデータを構成する４つの部分画像データにつき、各部分画像データから抽出された４画素分のデータを対応する前記ラインメモリ要素に格納することにより、前記入力画像データを９０度回転させる処理と、(6)前記処理(4)および処理(5)を繰り返すことによって取得された４ライン分のラインデータを、前記出力画像データの一部として出力させる処理とを実行可能とされていることを特徴とする。
【０００７】
また、請求項２の発明は、請求項１に記載の画像処理装置において、前記同期型ＤＲＡＭは、ＤＤＲＳＤＲＡＭであり、前記最小アクセス単位のデータ量は、２の６乗ビットであることを特徴とする。
【０００８】
また、請求項３の発明は、請求項１または請求項２に記載の画像処理装置において、前記装置は、出力用ラインバッファを２つ有しており、前記出力用ラインバッファのうち一方にデータが書き込まれているとき、他方はデータ出力可能とされていることを特徴とする。
【発明の効果】
【０００９】
請求項１ないし請求項３に記載の発明によれば、第１画像変換部は、入力画像データのうち入力用ラインバッファに格納された４ライン分のラインデータにつき、各ラインデータからデータ量が２の（ｋ−２）乗ビットの部分画像データを取得する。続いて、第１画像変換部は、取得された部分画像データを最小アクセス単位として同期型ＤＲＡＭに記憶させる。これにより、第１画像変換部は、入力画像データに基づいて生成された中間画像データを同期型ＤＲＡＭに記憶させることができる。
【００１０】
一方、第２画像変換部は、同期型ＤＲＡＭに格納された中間画像データを最小アクセス単位ずつ読み出す。このとき、読み出されたデータには、４つの部分画像データが含まれる。続いて、第２画像変換部は、４本のラインメモリ要素を使用し、読み出された各部分画像データから抽出された４画素分（４ビット）のデータに基づいて、回転処理を実行する。
【００１１】
これにより、請求項１ないし請求項３に記載の発明によれば、回転処理時において同期型ＤＲＡＭから読み出された２のｋ乗ビットのデータうち、４ビット×４（＝１６ビット）を有効に回転処理に利用することができ、読み出されたデータの利用効率を向上させることができる。また、回転処理に必要とされるメモリ容量を抑制することができる。
【００１２】
そのため、装置の製造コスト増大を抑制しつつ、同一の最小アクセス単位から読み出されるデータの読み出し回数を低減させることができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しつつ本発明の実施の形態について詳細に説明する。
【００１４】
＜１．画像処理装置の構成＞
図１は、本実施の形態における画像処理装置１の構成の一例を示す図である。ここで、画像処理装置１は、スキャナ、プリンタ、複写機、ファクシミリ、またはこれらの機能を複合させた複合機である。また、画像処理装置１は、各画素１ビットの情報量を有する入力画像データ（２値画像データ）を９０度回転させ、出力画像データを取得可能とされている。
【００１５】
図１に示すように、画像処理装置１は、主として、ＭＰＵ（Micro Processing Unit）１１と、同期型ＤＲＡＭ１６と、メモリコントローラ１７と、ＣＯＤＥＣ３１と、スキャナ部４１と、記録部５１と、画像編集回路６１と、を備えている。
【００１６】
モデム２２は、デジタルデータ（画像データ）を音声信号に変換したり、画像処理装置１の外部から送信されて画像処理装置１で受信された音声信号をデジタルデータに変換する。また、ＮＣＵ２１は、公衆電話交換回線網に画像処理装置１を接続する際に必要となる機器であり、発着信やダイヤル制御を行う。さらに、通信部２５は、ネットワークを介して接続された情報処理装置（図示省略）等との間でデータ通信を実行するＬＡＮインタフェースである。
【００１７】
ＣＯＤＥＣ３１は、ファクシミリ通信で送信される画像の可逆圧縮処理に使用される。ＣＯＤＥＣ３１は、例えば、スキャナ部４１によって原稿から読み取られ、２値化された画像データを符号化する。そして、符号化された画像データは、中間画像データ１６ａとして同期型ＤＲＡＭ１６に記憶される。また、ＣＯＤＥＣ３１は、他の画像処理装置から送信されたファクシミリデータ（２値データ）を復号する。そして、復号された２値データは同期型ＤＲＡＭ１６に記憶される。
【００１８】
なお、ＣＯＤＥＣ３１による符号化としては、ＭＨ（Modified Huffman）、ＭＲ（Modified Read）、ＭＭＲ（Modified MR）、および、ＪＢＩＧ（Joint Bi-level Image experts Group）のいずれかの方式が採用される。
【００１９】
スキャナ部４１は、原稿から画像データを読み取る読取部である。スキャナ部４１によって読み取られた画像データは、例えばＪＰＥＧ方式にて圧縮され、同期型ＤＲＡＭ１６に記憶される。
【００２０】
記録部５１は、電子写真方式により、静電潜像に基づいたトナー画像を記録紙に記録する画像形成部である。例えば、記録部５１は、スキャナ部４１によって読み取られた画像データに基づいたトナー画像を感光体ドラム（図示省略）に形成し、このトナー画像を記録紙に転写する。
【００２１】
画像編集回路６１は、同期型ＤＲＡＭ１６に格納された未圧縮の画像データ（２値のビットマップデータ）に対してスムージングや解像度変換等の処理を施す。そして、これら処理が施された画像データは、シリアルのデータ列として記録部５１に出力される。
【００２２】
表示部６３は、いわゆる液晶ディスプレイによって構成されており、指や専用のペンで画面に触れることによって画面上の位置を指定できる「タッチパネル」としての機能を有している。したがって、画像処理装置１の使用者（以下、単に「使用者」と呼ぶ）は、表示部６３に表示された内容に基づき、表示部６３の「タッチパネル」機能を使用した指示を行うことによって、画像処理装置１に対して所定の動作を実行させることができる。このように、表示部６３は入力部としても使用される。
【００２３】
操作部６４は、いわゆるキーパッドによって構成される入力部である。使用者は、表示部６３の表示内容に基づいた入力作業を行うことにより、画像処理装置１に対して所定の動作を実行させることができる。
【００２４】
ＳＲＡＭ（Static Random Access Memory ）１２は、記憶素子としてフリップフロップ回路を使用した記憶部であり、例えば、ユーザ登録情報（ワンタッチダイヤル情報等）を記憶するメモリとして使用される。ＳＲＡＭ１２は、高速に動作可能であり、また、記憶保持のための動作を必要としない。
【００２５】
同期型ＤＲＡＭ１６は、読み書き自在の揮発性メモリ（記憶部）であり、一定周期のクロック信号に同期してデータ転送する。同期型ＤＲＡＭ１６の一転送あたりのデータ量は、２のｋ乗ビット（ｋは自然数）とされている。すなわち、同期型ＤＲＡＭ１６の最小アクセス単位のデータ量は２のｋ乗ビットである。
【００２６】
また、同期型ＤＲＡＭ１６は、複数（本実施の形態では４つ）のバンクＢ１〜Ｂ４を有しており、入力画像データに基づいて生成された中間画像データ１６ａを記憶可能とされている。
【００２７】
なお、本実施の形態では、同期型ＤＲＡＭ１６としてＤＤＲ（Double Data Rate）  ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）が使用されており、一転送あたりデータ量は、２の６乗ビット（すなわち、ｋ＝「６」）となる。
【００２８】
メモリコントローラ１７は、例えば、画像データに対して所定の処理を施すデータ処理部（例えば、ＣＯＤＥＣ３１や画像編集回路６１等）と、同期型ＤＲＡＭ１６との間で行われるデータ転送を制御する。図１に示すように、メモリコントローラ１７は、主として、入力用ラインバッファ７０と、出力用ラインバッファ８０と、第１画像変換部６５と、第２画像変換部６６と、を有している。
【００２９】
ここで、本実施の形態の画像処理装置１は、同様なハードウェア構成を有する出力用ラインバッファ８０（８０ａ、８０ｂ）を２つ有している。出力用ラインバッファ８０のうち一方にデータが書き込まれているとき、他方はデータ出力可能とされている。なお、入力用ラインバッファ７０および出力用ラインバッファ８０の詳細については、後述する。
【００３０】
第１画像変換部６５は、入力用ラインバッファ７０に格納された入力画像データに基づき中間画像データ１６ａを生成する。また、第１画像変換部６５は、生成された中間画像データ１６ａを同期型ＤＲＡＭ１６に記憶させる。
【００３１】
第２画像変換部６６は、同期型ＤＲＡＭ１６に記憶された中間画像データ１６ａに基づいて４ライン分の出力画像データを生成するとともに、４ライン毎に前記出力用ラインバッファから出力させる。
【００３２】
なお、第１画像変換部６５によって入力画像データから中間画像データを生成する手順、および、第２画像変換部６６によって中間画像データから出力画像データを生成する手順については、後述する。
【００３３】
ＲＯＭ１３は、読出し専用メモリーであり、ＭＰＵ１１は、ＲＯＭ１３に格納されたプログラムに従った制御を実行する。また、ＭＰＵ１１、ＲＯＭ１３、メモリコントローラ１７、ＣＯＤＥＣ３１、および画像編集回路６１等のそれぞれは、信号線１５を介して電気的に接続されている。したがって、ＭＰＵ１１は、例えば、ＣＯＤＥＣ３１による符号化処理、およびメモリコントローラ１７によるデータの転送処理等を所定のタイミングで実行させることができる。
【００３４】
＜２．画像データの回転処理＞
図２および図３は、記録紙９０に記録された画像データを模式的に表した図である。記録紙９０上に設けられた各矩形領域は、それぞれ記録部５１によって記録紙９０に記録された各ドット９１と対応する。また、各矩形領域内に示された座標（ｘ、ｙ）について、これら「ｘ」および「ｙ」は、それぞれ回転処理が施される前における各ドット９１の上下方向（行方向）ＡＲ２、および左右方向（列方向）ＡＲ１の位置を示す。
【００３５】
さらに、本実施の形態において、記録紙９０に記録される各ドット９１と対応する２値の画像データ（出力画像データ）は、（０，０）〜（０，ｍ）〜（１，０）〜（ｎ，０）〜（ｎ，ｍ）の順にシリアルのデータ列として記録部５１に出力される。
【００３６】
ここで、図２の破線および図３の実線は、図２の実線の記録紙９０が回転軸Ａ１を中心に回転方向Ｒ１（時計回り）に９０度回転させられたときの記録紙９０の姿勢を示す。すなわち、図２の実線の記録紙９０が時計回りに９０度回転させられると、ドット９１ａは左上端から右上端に、ドット９１ｂは右上端から右下端に、ドット９１ｃは右下端から左下端に、ドット９１ｄは左下端から左上端に、それぞれ移動する（図３参照）。
【００３７】
したがって、時計回りに９０度回転させられた記録紙９０（図３参照）に、図２と同様な出力画像データを記録する場合、例えば、図３に示すように、（ｎ，０）〜（０，０）〜（ｎ，１）〜（０，１）〜（ｎ，ｍ）〜（０、ｍ）の順にシリアルのデータ列として、出力画像データの各画素データ（データ量：１ビット）を記録部５１に出力することが必要となる。すなわち、各画素データが、このような順番で出力できるように、出力画像データに回転処理を施すことが必要となる。
【００３８】
なお、本実施の形態では、（１）入力画像データから中間画像データを生成し、続いて、（２）この中間画像データから出力画像データを生成することにより、入力画像データを９０度回転させた出力画像データを取得している。そこで、以下の説明では、この２つの生成手順について説明する。
【００３９】
＜２．１．入力画像データから中間画像データを生成する手順＞
図４は、入力画像データから中間画像データを生成する手順を説明するためのフローチャートである。図５および図７のそれぞれは、入力用ラインバッファ７０に格納されたラインデータの一例を示す図である。図６および図８のそれぞれは、同期型ＤＲＡＭ１６の最小アクセス単位に記憶させる記憶データ７３（７３ａ、７３ｂ）の一例を示す図である。
【００４０】
本手順では、第１画像変換部６５によって入力画像データを並び替えることにより、中間画像データが生成される。具体的には、まず、第１画像変換部６５は、複数のラインデータによって構成される入力画像データのうち隣接する３ライン分を、入力用ラインバッファ７０に読み込ませる（ステップＳ１０１）。
【００４１】
ここで、図５に示すように、入力用ラインバッファ７０は、少なくとも３つのラインメモリ要素７１ａ〜７１ｃを有している。各ラインメモリ要素７１ａは、いわゆるＦＩＦＯ（First In First Out）メモリによって構成されている。また、ラインメモリ要素７１ｃの出力側７０ｂは、ラインメモリ要素７１ｂの入力側７０ａとも接続されている。同様にラインメモリ要素７１ｂの出力側７０ｂは、ラインメモリ要素７１ａの入力側７０ａとも接続されている。
【００４２】
また、図５に示すように、入力用ラインバッファ７０は、さらに、１６ビット分の記憶容量を持つレジスタ７５を有している。レジスタ７５に格納されたデータは、入力用ラインバッファ７０の外部にだけでなく、ラインメモリ要素７１ｃの入力側７０ａにも出力可能とされている。
【００４３】
したがって、入力用ラインバッファ７０に入力されてレジスタ７５に格納されたデータは、レジスタ７５、ラインメモリ要素７１ｃ、７１ｂ、７１ａの順に先送りされる。また、各ラインメモリ要素７１ａ、７１ｂ、７１ｃに入力されたデータは、それぞれの出力側７０ｂから出力可能とされている。
【００４４】
なお、入力用ラインバッファ７０には、例えば、ＣＯＤＥＣ３１によって復号された２値の画像データが、入力画像データとして読み込まれる。
【００４５】
続いて、第１画像変換部６５は、入力用ラインバッファ７０に入力画像データを、さらに２の（ｋ−２）乗ビット分読み込ませる（Ｓ１０２）。これにより、ラインメモリ要素７１ｃに格納されたラインデータと隣接するラインデータがレジスタ７５に格納される。すなわち、入力用ラインバッファ７０には、４ライン目のラインデータの一部が読み込まれる。
【００４６】
ここで、本実施の形態において、同期型ＤＲＡＭ１６としてＤＤＲ  ＳＤＲＡＭが使用されており、ｋ値は「６」となる。したがって、ステップＳ１０２において、入力用ラインバッファ７０には、さらに１６ビット分の入力画像データが読み込まれ、レジスタ７５に格納される。
【００４７】
続いて、第１画像変換部６５は、ラインメモリ要素７１ａ〜７１ｃ、およびレジスタ７５に格納された隣接する４ライン分のラインデータにつき、各ラインデータから１６ビット（２の（ｋ−２）乗ビット）ずつ取り出して、４つの部分画像データ７２（７２ａ〜７２ｄ）を取得する。例えば、ラインメモリ要素７１ａから取り出された部分画像データ７２ａには、図２に示すドット９１のうち左上端から左右方向ＡＲ１に沿った１６個分のドットにつき、これらドットに対応する画素データが含まれている。
【００４８】
続いて、第１画像変換部６５は、ステップＳ１０３によって取得された各部分画像データ７２ａ〜７２ｄを、入力用ラインバッファ７０に入力された順に並び替え、記憶データ７３（７３ａ）を生成する（ステップＳ１０４）。すなわち、図６に示すように、記憶データ７３ａは、部分画像データ７２ａ、７２ｂ、７２ｃ、７２ｄの順番に並び替えられる。
【００４９】
続いて、第１画像変換部６５は、並び替えられた各部分画像データ７２ａ〜７２ｄ（すなわち、記憶データ７３）を同期型ＤＲＡＭ１６に記憶させる（Ｓ１０５）。図９は、同期型ＤＲＡＭ１６の論理アドレス空間の一例を示す図である。図９に示すように、記憶データ７３ａは、最小アクセス単位１８ａに記憶される。
【００５０】
なお、第１画像変換部６５は、各記憶データ７３を同期型ＤＲＡＭ１６に記憶させる場合、後述する出力画像データ生成時の読み出し順を考慮して、記憶対象となるバンクＢ１〜Ｂ４を選択する。これにより、プリチャージ処理による読み出し処理の遅延を抑制することができる。
【００５１】
そして、入力用ラインバッファ７０の各ラインメモリ要素７１ａ〜７１ｃに格納されたすべてのラインデータについて、並び替え処理が終了するまでステップＳ１０２〜Ｓ１０５の処理が繰り返し実行される（Ｓ１０６）。
【００５２】
このように、ステップＳ１０２からＳ１０５の処理が繰り返し実行されることにより、入力用ラインバッファ７０の各ラインメモリ要素７１ａ〜７１ｃに格納されている３ライン分のラインデータ、および順次レジスタ７５に格納される４ライン目のラインデータについて、並べ替え処理が施される。
【００５３】
一方、各ラインメモリ要素７１ａ〜７１ｃに格納されたすべてのラインデータについて、並び替え処理が終了すると、ステップＳ１０１に戻り、次の３ライン分のラインデータが入力用ラインバッファ７０に読み込まれ、ラインメモリ要素７１ａ〜７１ｃに対応するラインデータが格納される。続いて、ステップＳ１０２において、入力用ラインバッファ７０に、さらに２の（ｋ−２）乗ビット分のデータが読み込まれる（図７参照）。続いて、入力用ラインバッファ７０から取得された記憶データ７３ｂ（図８参照）が、同期型ＤＲＡＭ１６の最小アクセス単位１８ｂ（図９参照）に記憶される（Ｓ１０５）。これらステップＳ１０２〜Ｓ１０５の処理は、入力用ラインバッファ７０の各ラインメモリ要素７１ａ〜７１ｃに格納されたすべてのラインデータについて、並び替え処理が終了するまで繰り返し実行される（Ｓ１０６）。
【００５４】
そして、入力画像データのすべてのラインについてステップＳ１０１〜Ｓ１０６の処理が完了すると（Ｓ１０７）、中間画像データ１６ａを生成する処理が完了する。
【００５５】
＜２．２．中間画像データから出力画像データを生成する手順＞
図１０は、中間画像データから出力画像データを生成する手順を説明するためのフローチャートである。図１１および図１３のそれぞれは、同期型ＤＲＡＭ１６から読み出された読出データ８１（８１ａ、８１ｂ）の一例を示す図である。図１２および図１４のそれぞれは、出力用ラインバッファ８０に格納されたラインデータの一例を示す図である。
【００５６】
本手順では、同期型ＤＲＡＭ１６に格納された中間画像データ１６ａが第２画像変換部６６によって並び替えられることにより、出力画像データが生成される。具体的には、まず、第２画像変換部６６は、同期型ＤＲＡＭ１６に格納された中間画像データ１６ａを最小アクセス単位１８（図９参照）ずつ読み出す（Ｓ２０１）。例えば、第２画像変換部６６は、最小アクセス単位１８ａ（図９参照）から読出データ８１ａ（図１１参照）を読み出す。
【００５７】
続いて、第２画像変換部６６は、ステップＳ２０１によって読み出された読出データ８１ａを構成する４つの部分画像データ８２ａ〜８２ｄにつき、各部分画像データ８２ａ〜８２ｄから４画素分の画素データを抽出する（Ｓ２０２）。
【００５８】
例えば、中間画像データ１６ａに基づき図３の最上段のドット９１群（（ｎ，０）〜（０，０））と対応するラインデータが生成される場合、各部分画像データ８２（８２ａ〜８２ｄ）の画素データのうち破線で囲まれる部分のデータが抽出される。
【００５９】
ここで、図１２に示すように、出力用ラインバッファ８０は、４つのラインメモリ要素８３（８３ａ〜８３ｄ）を有している。第２画像変換部６６は、ステップＳ２０２において抽出された４画素分の画素データを、対応するラインメモリ要素８３に格納することにより、入力画像データを９０度回転させる（Ｓ２０３）。
【００６０】
例えば、第２画像変換部６６は、読出方向ＡＲ３に沿って読み出された画素データを、各ラインメモリ要素８３（８３ａ〜８３ｄ）の書込方向ＡＲ４に沿って格納することにより、入力画像データを９０度回転させる。
【００６１】
すなわち、第２画像変換部６６は、各ドット（０，０）、（１，０）、（２，０）、（３，０）に対応する画素データをラインメモリ要素８３ａに格納する。また同様に、第２画像変換部６６は、ドット（０，１）、（１，１）、（２，１）、（３，１）に対応する画素データをラインメモリ要素８３ｂに、ドット（０，２）、（１，２）、（２，２）、（３，２）に対応する画素データをラインメモリ要素８３ｃに、ドット（０，３）、（１，３）、（２，３）、（３，３）に対応する画素データをラインメモリ要素８３ｄに、それぞれ格納する。
【００６２】
これらステップＳ２０１〜Ｓ２０３の処理が繰り返されることにより、各読出データ８１について４ライン分の回転処理が施される（Ｓ２０４）。例えば、読出データ８１ａに関する回転処理が完了すると、第２画像変換部６６は、同期型ＤＲＡＭ１６の最小アクセス単位１８ｃ（図９参照）から読出データ８１ｂを読み出す（Ｓ２０１）。続いて、第２画像変換部６６は、各部分画像データ８２ｅ〜８２ｈから４画素分の画素データを抽出する（Ｓ２０２：図１３の破線内）。そして、第２画像変換部６６は、抽出された画素データを対応するラインメモリ要素８３ａ〜８３ｄに格納することにより、画像データの回転処理を施す（Ｓ２０３：図１４参照）。
【００６３】
出力用ラインバッファ８０に４ライン分の出力画像データが格納されると、第２画像変換部６６は、取得された４ライン分のラインデータを出力画像データの一部として出力する（Ｓ２０５）。記録部５１によって記録処理が実行される場合、出力用ラインバッファ８０のラインメモリ要素８３ａ〜８３ｄに格納された画素データは、（ｎ，０）〜（０，０）〜（ｎ，１）〜（０，１）〜（０，２）〜（０、３）の順に、シリアルのデータ列として記録部５１に出力される。
【００６４】
そして、中間画像データ１６ａのすべてのラインについてステップＳ２０１〜Ｓ２０５の処理が完了すると（Ｓ２０６）、出力画像データを生成する処理が完了する。
【００６５】
ここで、画像データの回転処理について、本実施の形態の手法と、従来手法と、を比較する。従来手法において入力画像データが同期型ＤＲＡＭ１６に格納される場合、入力画像データは、そのデータ列に基づいて記憶され、入力画像データに対して並べ替えは実行されない。そのため、出力用ラインバッファ８０に４本のラインメモリ要素８３が設けらており、この４本のラインメモリ要素８３を使用した回転処理が実行される場合、最小アクセス単位１８から読み出された読出データ８１（データ量：６４ビット）は、４ビットしか有効に利用することができなかった。すなわち、同一の最小アクセス単位１８に対して１６回アクセスしてデータ読み出しを実行することが必要であった。
【００６６】
これに対して、本実施の形態の手法において、入力画像データは、同期型ＤＲＡＭ１６に記憶されることに先立って並び替えられ、中間画像データ１６ａとして同期型ＤＲＡＭ１６に記憶される。
【００６７】
これにより、中間画像データ１６ａから出力画像データが生成される場合、各読出データ８１（６４ビット）のうち１６ビット分が、並べ替えに使用される。その結果、読み出された読出データ８１の利用効率を向上させることができる。例えば、本実施の形態の手法では、同一の最小アクセス単位１８から４回だけデータ読み出しをすることにより、画像データの回転処理を実行することができる。
【００６８】
また、回転処理に必要とされる入力用ラインバッファ７０および出力用ラインバッファ８０のメモリ容量が抑制される。そのため、画像処理装置の製造コスト増大を抑制することができる。
【００６９】
＜３．変形例＞
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
【００７０】
（１）本実施の形態において、同期型ＤＲＡＭ１６としてＤＤＲ ＳＤＲＡＭが使用されているが、これに限定されるものでない。例えば、最小アクセス単位が３２ビットのＳＤＲＡＭが、または、最小アクセス単位が１２８ビットのＤＤＲ２  ＳＤＲＡＭが、同期型ＤＲＡＭ１６として使用されてもよい。
【００７１】
（２）本実施の形態において、入力用ラインバッファ７０は、３つのラインメモリ要素７１ａ〜７１ｃと、レジスタ７５と、を有するものとして説明したが、これに限定されるものではない。例えば、ラインメモリ要素７１ａ〜７１ｃと略同一のラインメモリ要素をレジスタ７５の代わりに使用してもよい。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施の形態における画像処理装置の構成の一例を示す図である。
【図２】記録紙に記録される画像データを模式的に表した図である。
【図３】記録紙に記録される画像データを模式的に表した図である。
【図４】入力画像データから中間画像データを生成する手順を説明するためのフローチャートである。
【図５】入力用ラインバッファに格納されたラインデータの一例を示す図である。
【図６】同期型ＤＲＡＭの最小アクセス単位に記憶させる記憶データの一例を示す図である。
【図７】入力用ラインバッファに格納されたラインデータの一例を示す図である。
【図８】同期型ＤＲＡＭの最小アクセス単位に記憶させる記憶データの一例を示す図である。
【図９】同期型ＤＲＡＭの論理アドレス空間の一例を示す図である。
【図１０】中間画像データから出力画像データを生成する手順を説明するためのフローチャートである。
【図１１】同期型ＤＲＡＭから読み出された読出データの一例を示す図である。
【図１２】出力用ラインバッファに格納されたラインデータの一例を示す図である。
【図１３】同期型ＤＲＡＭから読み出された読出データの一例を示す図である。
【図１４】出力用ラインバッファに格納されたラインデータの一例を示す図である。
【符号の説明】
【００７３】
１  画像処理装置
１６  同期型ＤＲＡＭ
１６ａ  中間画像データ
１８  最小アクセス単位
３１  ＣＯＤＥＣ
４１  スキャナ部
５１  記録部
６１  画像編集回路
６５  第１画像変換部
６６  第２画像変換部
７０  入力用ラインバッファ
７１（７１ａ〜７１ｃ）  ラインメモリ要素
７２、８２  部分画像データ
７３（７３ａ、７３ｂ）  記憶データ
８０  出力用ラインバッファ
８１（８１ａ、８１ｂ）  読出データ
８３（８３ａ〜８３ｄ）  ラインメモリ要素
９０  記録紙
【図１】
2008033488.tif 000003
【図２】
2008033488.tif 000004
【図３】
2008033488.tif 000005
【図４】
2008033488.tif 000006
【図５】
2008033488.tif 000007
【図６】
2008033488.tif 000008
【図７】
2008033488.tif 000009
【図８】
2008033488.tif 000010
【図９】
2008033488.tif 000011
【図１０】
2008033488.tif 000012
【図１１】
2008033488.tif 000013
【図１２】
2008033488.tif 000014
【図１３】
2008033488.tif 000015
【図１４】
2008033488.tif 000016