JP2008136125A - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP2008136125A JP2008136125A JP2006322185A JP2006322185A JP2008136125A JP 2008136125 A JP2008136125 A JP 2008136125A JP 2006322185 A JP2006322185 A JP 2006322185A JP 2006322185 A JP2006322185 A JP 2006322185A JP 2008136125 A JP2008136125 A JP 2008136125A
- Authority
- JP
- Japan
- Prior art keywords
- data
- image data
- image
- unit
- rotation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000004913 activation Effects 0.000 description 13
- 239000000872 buffer Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Image Input (AREA)
- Image Processing (AREA)
- Storing Facsimile Image Data (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】回転処理用の回路規模を増大させることなく、回転処理の前と後の画像データの読出しと書込みの際のメモリアクセスで、バーストアクセスのサイズを大きくして回転処理速度を向上させた画像処理装置を提供する。
【解決手段】単位サイズの矩形画像データを回転させる画像回転処理手段を備え、回転後の単位サイズの矩形画像データを再度画像メモリに書込み、前記の読出しと書込みを繰り返して回転画像データを取得する画像処理装置である。前記の画像回転処理手段で回転させる単位サイズの矩形画像データを列状に複数並べて、単位サイズの矩形画像データの1辺のデータを超えるデータを連続するアドレス領域とし、回転させる単位サイズの矩形画像データより長いバースト長となるようにメモリアクセスして、単位サイズの矩形画像データの読出し及び書込みを行う。
【選択図】図12
【解決手段】単位サイズの矩形画像データを回転させる画像回転処理手段を備え、回転後の単位サイズの矩形画像データを再度画像メモリに書込み、前記の読出しと書込みを繰り返して回転画像データを取得する画像処理装置である。前記の画像回転処理手段で回転させる単位サイズの矩形画像データを列状に複数並べて、単位サイズの矩形画像データの1辺のデータを超えるデータを連続するアドレス領域とし、回転させる単位サイズの矩形画像データより長いバースト長となるようにメモリアクセスして、単位サイズの矩形画像データの読出し及び書込みを行う。
【選択図】図12
Description
本発明は、画像メモリ上の画像データを読出して回転処理する画像処理装置に関する。
プリンタや複写機などの画像処理装置において、入力された画像データ又は装置内に格納されている画像データを、例えば、90度回転或いは270度回転させて、出力することがある。この画像データの回転としては、例えば、A4用紙の長短方向を切り替えて印刷するような例が考えられるが、この場合、画像データを90度回転させることにより用紙の収納状態を入れ変えずに印刷することができる。このような画像の回転処理を高速で行うのに、今までにも種々の提案がなされている。
例えば、特許文献1には、画像回転処理部と画像メモリのデータ転送で、メモリアクセスを、画像読出し時にはバーストアクセスで行い、画像書込み時にはシングルアクセスで行うことにより、高速な回転画像処理を実現する画像回転装置が開示されている。また、特許文献2には、画像データをメモリ上に格納する際に、1ラインのデータの最後に適切な量の無効データを追加することにより、現在のライン先頭データと、次のライン先頭データのバンクアドレスが連続するように調整している。これにより、通常のライン方向に順次データを読出してもバンクアドレスの連続性が保たれ、バンクインターリーブアクセスが可能となって、高速で回転画像を得ることができる装置が開示されている。
特開2000−79723号公報
特開2005−174140号公報
しかしながら、特許文献1に開示のように、回転処理前の画像データの読出しをバーストアクセスで行うことにより処理速度を速めることはできるが、回転処理後の書込みにはシングルアクセスで行うため、処理速度が十分図られているとは言えない。また、特許文献2に開示のように、画像データの構成を工夫することによりバンクインターリーブによるメモリへのアクセス速度を向上させることはできても、バーストサイズを大きくすると、回転回路規模も増大するということまでは考慮されていない。
メモリ上のデータの読出し及び書込みの際のメモリアクセスには、一般的に連続するアドレス領域に対して、バーストメモリアクセスで処理するのが効率的である。しかし、メモリ上にある画像データが90度回転されて再書込みされる画像データは、不連続なアドレスとなり、シングルメモリアクセスすることとなるため効率的でない。このため、処理速度を向上させるには、回転処理前の読出し時だけでなく、回転処理後の書込み時に対してもバーストメモリアクセスで処理することが望ましいが、これには回転処理用のバッファと回転処理回路が巨大化するという問題がある。
本発明は上述した実情に鑑みてなされたもので、回転処理用の回路規模を増大させることなく、回転処理の前と後の画像データの読出しと書込みの際のメモリアクセスで、バーストアクセスのサイズを大きくして回転処理速度を向上させた画像処理装置の提供を目的する。
本発明による画像処理装置は、画像データを格納する画像メモリと、画像メモリへのデータ書込み及び読出しを制御するメモリコントローラと、画像メモリに格納された画像データから所定の単位サイズの矩形画像データを読出し、単位サイズの矩形画像データを回転させる画像回転処理手段を備え、回転後の単位サイズの矩形画像データを再度画像メモリに書込み、前記の読出しと書込みを繰り返して回転画像データを取得する画像処理装置である。前記の画像回転処理手段で回転させる単位サイズの矩形画像データを列状に複数並べて、単位サイズの矩形画像データの1辺のデータを超えるデータを連続するアドレス領域とし、回転させる単位サイズの矩形画像データより長いバースト長となるようにメモリアクセスして、単位サイズの矩形画像データの読出し及び書込みを行う。
また、列状に並べられる単位サイズの矩形画像データは、1つの画像データから抽出され、複数のプレーンに割り当てることができる。そして、画像データがカラー画像データである場合、複数の単位サイズの矩形画像データは、色成分で複数のプレーンに割り当てることができる。
また、列状に並べられる単位サイズの矩形画像データは、1つの画像データから抽出され、複数のプレーンに割り当てることができる。そして、画像データがカラー画像データである場合、複数の単位サイズの矩形画像データは、色成分で複数のプレーンに割り当てることができる。
本発明によれば、回転処理回路の回路規模を同じとすると、メモリアクセスの時間を短縮することができ、バーストアクセスを効率良く実行して、回転処理速度を速めることができる。
図により本発明の概略を説明する。図1は本発明の対象とする画像処理装置の概略を説明する図である。図中、1は画像処理装置、2は画像入力装置、3は画像出力装置、4は画像入力部、5は画像メモリ、6はメモリコントローラ、7は画像出力部、8は制御部(CPU)、9,10はその他の画像処理部、11は画像回転処理部を示す。
本発明による画像データを回転処理機能を備える画像処理装置1は、例えば、デジタル複合機等の画像形成装置に適用することができる。この画像処理装置1は、少なくとも、画像データが入力される画像入力部2と入力された画像を出力する出力装置3を有している。画像入力装置2は、FD,CD、USBメモリ等の記録媒体を介しての入力、ネットワーク接続されたパソコン端末やファクシミリ等からの入力、原稿画像を直接読取るCCDスキャナ等からの入力など各種の入力手段を用いることができ、画像入力部4を介して入力画像処理装置内に入力される。
これらの入力された画像データは、CPUを含む制御部8による制御によって、画像処理装置1内の画像処理部9,10及び後述する画像回転処理手段としての画像回転処理部11により回転処理され、画像出力部7を介して画像出力装置3により出力される。画像出力装置3は、用紙に印刷して出力する以外に、ディスプレイで表示したり、通信回線を通じて外部装置や、その他FD,CD、USBメモリ等の記録媒体に格納して出力することができる。
画像入力装置2から入力された画像は、一旦、メモリコントローラ6により画像メモリ5に書込まれる。また、画像メモリ5に既に書込まれている画像データは、メモリコントローラ6により所定の画素数を回転の単位サイズとして読出し、画像回転処理部11で所定の方向に回転させた後、再度、画像メモリ5の別の場所等に回転画像データとして書込まれる。なお、画像回転処理部11では、単位サイズの画像を回転処理するための回転バッファ(図11参照)を備える。画像メモリ5には、この回転した後の回転画像データを書込む領域を設定するようにしてもよいが、別途、他にメモリを設けるようにしてもよい。
図2は、画像回転の概略を説明する図で、画像メモリ上にある画像の回転状態をイメージで示したものである。図2(A)に示すように、左側の画像Aを反時計方向に90回転させるとする。画像Aの画像データは図2(B)に示すように、画像メモリの複数のメモリ領域にマトリックス状に分割されたデータで格納され、それぞれのメモリ領域に格納されたデータはX方向に読込まれて、90度回転された後にY方向に書込まれる。したがって、回転後の画像データを読出す場合、回転前の画像データと読出し方向が異なる。
画像Aの画像データは、例えば、図2(B)の左側の図に示すように、マトリックス状に配されたそれぞれメモリ領域のX方向に、分割されたデータ00,01,02,・・0X、・・・・・・、Y0,Y1,Y2・・・YXの順で格納される。そして、前記のメモリ領域のY方向には、データ00,10,・・・Y0、・・・・・・、0X,1X,・・・YXの順で格納されるとする。このような配列で格納されたメモリ上の画像データを、図2(A)のように90度回転すると、図2(B)の右側の図に示すように分割されたデータの格納状態が変換される。すなわち、X方向には、分割されたデータ0X,1X,・・・YX、・・・・・・、00,10,・・・Y0の順で並ぶように格納され、Y方向には、画像データのデータ0X,・・・02,01,00、・・・・・・、YX・・・,Y2,Y1,Y0の順で並ぶように格納される。
また、図2(C)に示すように、各メモリ領域は多数のマトリックス状に配列された画素からなり、分割されたデータは、複数の単位データ(bit)データで構成されている。例えば、図2(C)の左側の図示すように、例えば、分割されたデータY0内の各単位データは、当該メモリ領域内の複数画素のX方向に、単位データ00,01,02,・・0N、・・・・・・、M0,M1,M2・・・MNの順で格納され、Y方向に単位データ00,10,20,・・・M0、・・・・・・、0N,1N,2N・・・MNの順で格納されているとする。このように配列されたメモリ上の画像データを90度回転すると、図2(C)の右側の図に示すように配列された単位データに変換される。すなわち、X方向に、単位データ0N,1N,2N,・・・MN、・・・・・・、00,10,・・・M0の順で格納され、Y方向に単位データ0N,・・・02,01,00、・・・・・・、MN,・・・M2,M1,M0の順で格納される。
図3は、入力されているメモリ上の画像を回転処理するために、メモリから画像データを読出すときのメモリアクセスについて説明する図である。図3(A)は、シングルリードアクセス、図3(B)は4バーストリードアクセス、図3(C)は8バーストアクセスの例を示している。なお、メモリには、例えば、データのバーストモード転送に適したSDRAM(Synchronous Dynamic Random Access Memory)を用いた例で説明する。
図において、クロック(CLK))に同期して、t=0のタイミングで立ち上げ用のアクティブコマンド(ACT)とローアドレスが入力され、次いで、t=2のタイミングでリードコマンド(READ)とカラムアドレスが入力され、t=4のタイミングで、リードデータが戻ってデータ(D1,D2・・・)の読出しが可能となる。この後、順次、新たなACTコマンドとREADコマンドで、指定アドレスデータの読出しが行われる。
図3(A)のシングルリードアクセスでは、読出し可能な単位サイズのデータD1をアクセスして読出すのに、t=0〜4の合計5サイクル分で行われる。すなわち、5サイクルのタイミング時間毎に、ACTコマンドとREADコマンドが入力され、順次、1つの単位データをアクセスして転送する。
これに対し、図3(B)の4バーストリードアクセスの場合は、読出し可能な単位サイズのデータD1をアクセスして読出し、これに引続いてアドレスが連続する次の単位サイズのデータD2,D3,D4を、1つのACTコマンドとREADコマンドの入力で連続するアクセス領域として読出し、4つのデータD1〜D4をまとめて転送することができる。この場合、4つの単位サイズのデータ(D1〜D4)のそれぞれのアクセスに1サイクルを要するとして、ACTコマンドの入力から、合計8サイクル分のタイミング時間で読出すことができる。
また、図3(C)の8バーストリードアクセスの場合は、読出し可能な単位サイズのデータD1をアクセスし、これに引続いてアドレスが連続する次の単位サイズのデータD2〜D8を1つのACTコマンドとREADコマンドの入力で連続するアクセス領域として読出し、この8つのデータD1〜D8をまとめて転送することができる。この場合、8つの単位サイズのデータ(D1〜D8)のそれぞれのアクセスに1サイクルを要するとして、ACTコマンドの入力から、合計12サイクル分のタイミング時間で読出すことができる。
図4は、図3で読出したメモリ上の画像を90度回転処理した後、回転後の画像を再度メモリに書込むときのメモリアクセスについて説明する図である。図4(A)は、シングルライトアクセス、図4(B)は4バーストライトアクセス、図4(C)は8バーストライトアクセスの例を示している。
図3で説明したのと同様に、クロック(CLK))に同期して、まず、t=0のタイミングで立ち上げ用のアクティブコマンド(ACT)とローアドレスが入力され、次いで、t=2のタイミングでライトコマンド(WRITE)の入力と同時に書込まれるデータが入力される。この後、順次、ACTコマンドとWRITEコマンドで、指定アドレスからのデータの書込みが行われる。
図4(A)のシングルライトアクセスでは、書込み可能な単位サイズのデータD1をアクセスして書込むのに、例えば、t=0〜4の合計5サイクル分で行われるとする。すなわち、5サイクルのタイミング時間毎にACTコマンドとWRITEコマンドを入力し、順次、単位データをアクセスして書込みが行われる。
これに対し、図4(B)の4バーストライトアクセスの場合は、書込み可能な単位サイズのデータD1をアクセスして書込み、これに引続いてアドレスが連続する次の単位サイズのデータD2,D3,D4を連続アクセスして入力し、4つのデータを連続して書込むことができる。この場合、4つの単位サイズのデータ(D1〜D4)のそれぞれのアクセスに1サイクルを要するとして、ACTコマンドの入力から、合計8サイクル分のタイミング時間でアクセスすることができる。
また、図4(C)の8バーストリードアクセスの場合は、書込み可能な単位サイズのデータD1をアクセスして書込み、これに引続いてアドレスが連続する次の単位サイズのデータD2〜D8を連続アクセスして入力し、この8つのデータを連続して書込むことができる。この場合、8つの単位サイズのデータ(D1〜D8)のそれぞれのアクセスに1サイクルを要するとして、ACTコマンドの入力から、合計12サイクル分のタイミング時間でアクセスすることができる。
図5〜図10は、回転される単位サイズの画像データ領域の回転前と回転後のデータアクセス量を説明する図で、本発明の説明に先だって参考例として例示するものである。
図5〜図10の左側の図は、画像メモリから読出す回転される単位サイズの画像データ領域(以下、回転単位画像データという)の画素データの配列を示し、右側の図は90度回転後の回転単位画像データの画素データの配列を示している。
図5〜図10の左側の図は、画像メモリから読出す回転される単位サイズの画像データ領域(以下、回転単位画像データという)の画素データの配列を示し、右側の図は90度回転後の回転単位画像データの画素データの配列を示している。
図5は、通常のデジタルデータの単位データとされている8画素(8bit=1byte)×1ラインの画素配列状態を、回転単位画像データとした例である。このデータ読出しのライン方向(横方向)に、8画素に対応する画像データが一列に格納されている状態を示している。この回転単位画像データは、回転前の読出し時はアドレス付与のライン方向に沿って1ライン分(1回)のアクセスで読出すことができる。この回転単位画像データが90度回転されると、1画素分のデータが上下方向(図の縦方向)に8ライン分並んで、1画素×8ラインの画素配列状態となる。この結果、回転後の回転単位画像データを書込むには、1画素のデータを8ライン分(8回)アクセスして書込むこととなる。
図6は、8画素(1byte)×8ラインの正方形状に配列した矩形の画素配列状態を、回転単位画像データとした例である。この回転単位画像データは、ライン方向に1byte分の画素データが縦方向に8ライン分配列されているので、回転前の読出し時は1byteのデータをライン方向(図の横方向)に沿って8回アクセして読出される。この回転単位画像データが90度回転されると、ライン方向には回転前と同様に1byte分のデータが並び、縦方向にも8ライン分の画素が並ぶ。この結果、回転後の回転単位画像データを書込むには、回転前と同様に、1byteのデータを8ライン分(8回)アクセスして書込むこととなる。
図7は、図6の回転単位画像データの8倍分のデータに相当する64画素(8byte)×8ラインの長方形状に配列した矩形の画素配列状態を、回転単位画像データとした例である。この回転単位画像データは、ライン方向に8byte分の画素データが縦方向に8ライン分配列されているので、回転前の読出し時は8byteのデータをライン方向に沿って8回アクセスして読出される。この回転単位画像データが90度回転されると、ライン方向には1byte分の画素データが並び、縦方向には64ライン分の画素が並ぶ。この結果、回転後の回転単位画像データを書込むには、回転前の8回のアクセスに対して、1byteのデータを8倍の64ライン分(64回)アクセスして書込むこととなる。
図8は、図7の回転単位画像データの8倍分のデータに相当する64画素(8byte)×64画素(8byte)の正方形状に配列した矩形の画像配列状態を、回転単位画像データとした例である。この回転単位画像データは、ライン方向に8byte分の画素データが縦方向に64ライン分配列されているので、回転前の読出し時は8byteのデータをライン方向に沿って64回アクセスして読出される。この回転単位画像データが90度回転されると、ライン方向には8byte分のデータが並び、縦方向には64ライン分の画素が並ぶこととなる。この結果、回転後の画像データを書込むには、回転前と同様に、8byteのデータを64ライン分(64回)アクセスして書込むこととなる。
図9は、図8の回転単位画像データの8倍分のデータに相当する256画素(32byte)×64ラインの長方形状に配列した矩形の画素配列状態を、回転単位画像データとした例である。この回転単位画像データは、ライン方向に32byte分の画素データが縦方向に64ライン分配列されているので、回転前の読出し時は32byteのデータをライン方向に沿って64回アクセスして読出される。この回転単位画像データが90度回転されると、ライン方向には8byte分のデータが並び、縦方向には256ライン分の画素が並ぶこととなる。この結果、回転後の画像データを書込むには、回転前の64回のアクセス対して、8byteのデータを8倍の256ライン分(256回)アクセスして書込むこととなる。
図10は、図9の回転単位画像データの4倍分のデータに相当する256画素(64byte)×256ラインの正方形状に配列した矩形の画素配列状態を、回転単位画像データとした例である。この回転単位画像データは、ライン方向に32byte分の画素データが縦方向に256ライン分配列されているので、回転前の読出し時は32byteのデータをライン方向に沿って256回アクセスして読出される。この回転単位画像データが90度回転されると、ライン方向には32byte分のデータが並び、縦方向にも256ライン分の画素が並ぶこととなる。この結果、回転後の画像データを書込むには、回転前と同様、32byteのデータを256ライン分(256回)アクセスして書込むこととなる。
上述した図5〜図10に示した回転単位画像データは、その回転処理には回転単位画像データの画素数に等しい記憶素子を持つ回転バッファが必要となる。図11は、回転バッファの一例を示す図で、マトリクス状に配された複数の記憶素子によって構成される回転バッファと、回転バッファに入力される回転前の画像データおよび回転バッファから出力される回転後の画像データの配列を示している。各記憶素子は、格子状に走るワード線とビット線の交差点に配置され、例えば、各記憶素子はフリップフロップよって構成される。図に示す回転バッファは、図6で説明した8画素×8ライン用の例で、合計64個の記憶素子を有している。
すなわち、回転単位画像データのサイズが大きいと、回転処理のためのバッファ容量も大きくなるが、回転処理の操作回数も少なくて回転処理速度が早くなる。一方、回転単位画像データのサイズを小さくすると、回転処理のためのバッファ容量は小さくてすむが、回転処理の操作回数が多くなるとともに、画像データの読取り書込みの際のデータアクセスにも時間がかかるという問題が生じる。
したがって、本発明においては、上述のようなことから回転処理のためのメモリ容量をあまり大きくすることなく、しかも、画像データの読取り書込み時におけるデータアクセスの時間を少なくして、効率よく画像の回転処理を実現することにある。以下に、本発明の概略を説明する。
図12は、本発明の実施形態の一例を説明する図である。本実施形態では、上述した回転単位画像データは、図8において説明したのと同様な一辺を8byteの画素数として64画素(8byte)×64ラインの正方形状に配列した矩形の回転単位画像データを4組で形成している。なお、4組の回転単位画像データ(以下、画像A、画像B,画像C,画像Dという)で、一頁分の画像を形成するものとする。
この場合、4つの画像A、画像B,画像C,画像Dは、それぞれの画像を個別に格納するプレーンメモリを用いて処理することができ、したがって、4つのプレーンで構成される個別の回転単位画像データで処理することができる。また、画像データがカラー画像である場合、4つの画像A、画像B,画像C,画像Dは、例えば、カラー画像のY(イエロー)、M(マゼンダ)、C(シアン)、K(黒)を想定したプレーンで処理することができる。メモリから読み出された4つのプレーン画像A,画像B,画像C,画像Dは、図11で説明したような回転バッファでそれぞれ個別に90度回転処理される。このため、本実施形態では、4つの回転バッファを備え、同時に回転処理されることとなる。なお、1頁分の画像領域を4分割した画像データとしてもよい。
上記の画像A、画像B,画像C,画像Dの4つのプレーン画像は、それぞれがライン方向に8byteで、縦方向に64ライン分の画素が配列されている。したがって、回転処理のためにそれぞれのプレーン画像毎にデータアクセスして読出すとすれば、8byteのデータをライン方向に沿って(64×4=265)回アクセスして読出すこととなる。しかし、画像A,画像B,画像C,画像Dの4つのプレーン画像をライン方向に一列に並べて連続したアドレス領域としておくことにより、4つのプレーン画像はライン方向に(8byte×4プレーン=32byte)で、縦方向に64ライン分の画素が配列されていることになる。このため、画像回転前の読出し時には、32byteのデータをライン方向(図の横方向)に沿って64回アクセスして読出すことができる。
前記のようにして読出され回転処理された画像A,画像B,画像C,画像Dのプレーン画像は、例えば、読出された画像メモリの別の領域に書込まれる。本発明では、それぞれが回転された4つの画像A、画像B,画像C,画像Dが、ライン方向に連続してアクセス可能なようにアドレスを与える。これにより、回転された4つのプレーン画像A、画像B,画像C,画像Dは、ライン方向に(8byte×4プレーン=32byte)で縦方向に64ライン分の画素が配列される。この結果、画像回転後の画像データを書込むには、回転前と同じように、32byteのデータをライン方向に沿って64回アクセスして書込むことができる。
次に、図13により、メモリにアクセスする単位データとアクセス時間との関係について説明する。データの読出し書込みに際して、メモリの単位データに付与されるアドレスをアクセスするが、このためのメモリアクセス時間が必要となる。なお、図13には、64bit(8byte)のデータ量以下を1アクセスの単位データとし、32byte分(4単位データ分)をアクセスするときのサイクル数が示されている。このサイクル数は、図3又は図4のメモリアクセスに関するタイミングチャートで例示したサイクル数である。
アクセス単位が「1bit」の場合は、最少単位データ毎のアクセスで、図3(A)又は図4(A)のシングルアクセスとなる。この場合、単位データD1をアクセスするのに5サイクルを要し、32byte分のデータをアクセスするには、1280サイクルのアクセスタイムを要する。
アクセス単位が「1byte」の場合は、8bitの単位データで、64bit以下の単位データであるので、この場合も、図3(A)又は図4(A)のシングルアクセスとなる。この場合、単位データD1をアクセスするのに5サイクルを要し、32byte分のデータをアクセスするには、160サイクルのアクセスタイムを要する。
アクセス単位が「8byte」の場合は、64bitの単位データであるので、この場合も、図3(A)又は図4(A)のシングルアクセスとなる。この場合、単位データD1をアクセスするのに5サイクルを要し、32byte分のデータをアクセスするには、20サイクルのアクセスタイムを要する。
アクセス単位が「32byte」の場合は、64bit×4のデータ量で、メモリが64bitを1単位としているので、4単位のアクセスデータとなる。したがって、この場合は、図3(B)又は図4(B)の4バースアクセスとなる。この場合、4つの単位データD1〜D4を連続してアクセスするので8サイクルを要し、32byte分のデータをアクセスするには、8サイクルのアクセスタイムを要する。
アクセス単位が「64byte」の場合は、64bit×8のデータ量となるが、メモリが64bitを1単位としているので、8単位のアクセスデータとなる。したがって、この場合は、図3(C)又は図4(C)の8バースアクセスとなる。この場合、8つの単位データD1〜D8を連続してアクセスするので12サイクルを要し、32byte分のデータをアクセスするには、6サイクルのアクセスタイムを要する。
次に、図14により、上述した図5〜図10、図12で説明した各回転単位画像データに対するメモリアクセス時間と回転回路規模について説明する。
まず、図5に示した8画素(1byte)×1ラインの回転単位画像データの場合について説明する。この回転単位画像データは、図13で示したように、リードアクセス単位(1byte)で256画素(32byte)分のメモリアクセス時間が160サイクル、ライトアクセス単位(1bit)で同1280サイクル、両者の合計のメモリアクセス時間は、1440サイクルである。これに要する回転回路規模は8記憶素子である。
まず、図5に示した8画素(1byte)×1ラインの回転単位画像データの場合について説明する。この回転単位画像データは、図13で示したように、リードアクセス単位(1byte)で256画素(32byte)分のメモリアクセス時間が160サイクル、ライトアクセス単位(1bit)で同1280サイクル、両者の合計のメモリアクセス時間は、1440サイクルである。これに要する回転回路規模は8記憶素子である。
図6の8画素(1byte)×8ラインの回転単位画像データの例について説明する。この回転単位画像データは、リードアクセス単位(1byte)で256画素(32byte)分のメモリアクセス時間が160サイクル、ライトアクセス単位(1byte)で同160サイクル、両者の合計のメモリアクセス時間は、320サイクルである。これに要する回転回路規模は8×8の64記憶素子である。
図7の64画素(8byte)×8ラインの回転単位画像データの例について説明する。この回転単位画像データは、リードアクセス単位(8byte)で256画素(32byte)分のメモリアクセス時間が20サイクル、ライトアクセス単位(1byte)で同160サイクル、両者の合計のメモリアクセス時間は、180サイクルである。これに要する回転回路規模は64×8の512記憶素子である。
図8の64画素(8byte)×64ラインの回転単位画像データの例について説明する。この回転単位画像データは、リードアクセス単位(8byte)で256画素(32byte)分のメモリアクセス時間が20サイクル、ライトアクセス単位(8byte)で同20サイクル、両者の合計のメモリアクセス時間は、40サイクルである。これに要する回転回路規模は64×64の4096記憶素子である。
図9の256画素(32byte)×64ラインの回転単位画像データの例について説明する。この回転単位画像データは、リードアクセス単位(32byte)で256画素(32byte)分のメモリアクセス時間が8サイクル、ライトアクセス単位(8byte)で同20サイクル、両者の合計のメモリアクセス時間は、28サイクルである。これに要する回転回路規模は256×64の16384記憶素子である。
図10の256画素(32byte)×256ラインの回転単位画像データの例について説明する。この回転単位画像データは、リードアクセス単位(32byte)で256画素(32byte)分のメモリアクセス時間が8サイクル、ライトアクセス単位(32byte)で同8サイクル、両者の合計のメモリアクセス時間は、16サイクルである。これに要する回転回路規模は256×256の65536記憶素子となり、極めて大きなメモリ容量が必要となる。
上記の図5〜図10の回転単位画像データを回転領域とする例に対して、本発明に係る図12の例は、64画素(8byte)×64ライン×4プレーンとしている。この回転領域は、リードアクセス単位(32byte)で32byte分のメモリアクセス時間が8サイクル、ライトアクセス単位(32byte)で同8サイクルで、両者の合計のメモリアクセス時間は、16サイクルである。これに要する回転回路規模は64×64×4の16384記憶素子である。
図14に示すように、回転単位画像データのサイズを大きくすると、メモリアクセス時間は少なくなるが、回転回路規模は次第に大きくなり回転バッファの容量を大きくする必要があることがわかる。また、回転単位画像データが図6、図8、図10のように、正方形状の矩形画像データである場合は、メモリアクセス時間は、リードアクセスとライトアクセスで同じであり、アクセス時間に関しては効率的であると言える。しかし、回転回路規模が大きくなり、実際的ではない。
しかし、本発明による図12の回転領域(64画素×64ライン×4プレーン)と、参考例の図9の回転領域(256画素×64ライン)とを比較すると、回転処理に必要とする回転回路規模は、共に16384記憶素子で同じである。また、メモリの32byte分のメモリアクセス時間において、リードアクセス時間は共に8サイクルと同じである。しかし、ライトアクセス時間は、本発明の図12図の場合は、8サイクルでリードとライトの合計で16サイクルを要するのに対し、参考例の図9の場合は20サイクルでリードとライトの合計で28サイクルを要している。
本発明は、図12に示すような形態で画像回転できるように、画像メモリ上の画像データのアドレスを、回転させる単位サイズの複数の矩形画像データ(例えば、4つの画像A〜画像D)に付し、データ読出し方向に列状に並べる。そして、列状に並べられた複数の矩形画像データをライン方向で連続するアクセス領域として画像データを読出し、回転処理部にデータを転送する。すなわち、単位サイズ矩形画像データの1辺のデータより長い整数倍(単位サイズ1辺のデータ長の整数倍)のデータ分のメモリを連続してアクセスする。これは、図3で説明したメモリアクセスにおいて、4バーストリードアクセスに該当するもので、回転させる単位サイズの矩形画像データより長いバースト長でメモリにアクセスして読出す、と言いかえることができる。
そして、回転処理により回転された後の単位サイズの複数の矩形画像データは、回転前と同様の順序でデータ読出し方向のライン方向に列状に並べられる。この回転された後の列状に並べられた複数の矩形画像データは、再度画像メモリに書込むためにライン方向に連続アクセスされ、画像回転処理部からデータを転送して画像メモリに書込まれる。すなわち、この回転後のデータ書込みに際しても、読出し時と同様に、単位サイズ矩形画像データの1辺のデータより長い整数倍のデータ分のメモリに連続してアクセス可能とする。これは、図4で説明したメモリアクセスで、4バーストライトアクセスに該当するもので、回転された単位サイズの矩形画像データより長いバースト長でメモリにアクセスして書込む、と言いかえることができる。
上述のように画像処理装置の画像回転処理を実行するように構成することにより、回転処理部の回路規模を大きくすることなく、画像データの読取り書込み時のメモリアクセス時間を効率よく短縮して、画像の回転処理速度を向上させることができる。
1…画像処理装置、2…画像入力装置、3…画像出力装置、4…画像入力部、5…メモリ、6…メモリコントローラ、7…画像出力部、8…制御部、9,10…その他の画像処理部、11…画像回転処理部。
Claims (3)
- 画像データを格納する画像メモリと、画像メモリへのデータ書込み及び読出しを制御するメモリコントローラと、前記画像メモリに格納された画像データから所定の単位サイズの矩形画像データを読出し、前記単位サイズの矩形画像データを回転させる画像回転処理手段を備え、回転後の前記単位サイズの矩形画像データを再度前記画像メモリに書込み、前記読出しと書込みを繰り返して回転画像データを取得する画像処理装置であって、
前記画像回転処理手段で回転させる前記単位サイズの矩形画像データを列状に複数並べて、前記単位サイズの矩形画像データの1辺のデータを超えるデータを連続するアドレス領域とし、前記回転させる単位サイズの矩形画像データより長いバースト長となるようにメモリアクセスして、前記単位サイズの矩形画像データを読出し及び書込むことを特徴とする画像処理装置。 - 列状に並べられる前記単位サイズの矩形画像データは、前記画像データから抽出され、複数のプレーンに割り当てられていることを特徴とする請求項1に記載の画像処理装置。
- 前記画像データがカラー画像データである場合、前記複数の単位サイズの矩形画像データは、色成分で複数のプレーンに割り当てられていることを特徴とする請求項2に記載の画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006322185A JP2008136125A (ja) | 2006-11-29 | 2006-11-29 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006322185A JP2008136125A (ja) | 2006-11-29 | 2006-11-29 | 画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008136125A true JP2008136125A (ja) | 2008-06-12 |
Family
ID=39560626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006322185A Pending JP2008136125A (ja) | 2006-11-29 | 2006-11-29 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008136125A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011188050A (ja) * | 2010-03-05 | 2011-09-22 | Konica Minolta Business Technologies Inc | 画像処理方法、画像処理装置および画像形成装置 |
JP2014174898A (ja) * | 2013-03-12 | 2014-09-22 | Pfu Ltd | 画像データ処理装置、画像データ処理方法及び画像データ処理プログラム |
CN111329513A (zh) * | 2018-12-18 | 2020-06-26 | 无锡触典科技有限公司 | 超声电压匹配方法及系统 |
-
2006
- 2006-11-29 JP JP2006322185A patent/JP2008136125A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011188050A (ja) * | 2010-03-05 | 2011-09-22 | Konica Minolta Business Technologies Inc | 画像処理方法、画像処理装置および画像形成装置 |
JP2014174898A (ja) * | 2013-03-12 | 2014-09-22 | Pfu Ltd | 画像データ処理装置、画像データ処理方法及び画像データ処理プログラム |
CN111329513A (zh) * | 2018-12-18 | 2020-06-26 | 无锡触典科技有限公司 | 超声电压匹配方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008136125A (ja) | 画像処理装置 | |
US7979153B2 (en) | Exposure data generating apparatus | |
JP2005332292A (ja) | 画像データ回転処理装置 | |
JPH11306343A (ja) | 2次元データ回転処理装置 | |
JP2012146032A (ja) | 画像メモリ制御装置および画像処理装置 | |
JP3948152B2 (ja) | 画像情報回転装置 | |
JP2008033488A (ja) | 画像処理装置 | |
JP2011188050A (ja) | 画像処理方法、画像処理装置および画像形成装置 | |
JP2005109856A (ja) | 画像回転回路及びそれを有する画像処理装置 | |
JP2008236085A (ja) | 画像処理装置 | |
JP2003178300A (ja) | 画像処理方法及び画像処理装置 | |
JP3706726B2 (ja) | 記録装置 | |
JP2008282135A (ja) | 画像処理装置、画像読取り装置、画像形成装置および画像処理方法 | |
JP4165391B2 (ja) | 画像処理方法及び画像処理装置 | |
JP4821410B2 (ja) | メモリ制御方法、メモリ制御装置、画像処理装置およびプログラム | |
JP4158695B2 (ja) | 画像処理方法及び画像処理装置 | |
JP2000231631A (ja) | 画像回転装置 | |
JP2787958B2 (ja) | 文字パターン発生器 | |
JP2002064701A (ja) | 画像回転処理装置 | |
JP3016372B2 (ja) | 画像処理装置 | |
JP2002117397A (ja) | カラーデータの画像メモリへのアクセス方法 | |
JP2002007206A (ja) | メモリ制御装置及び画像処理装置 | |
JP2005176125A (ja) | 画像処理方法及び画像処理装置 | |
JP2005174141A (ja) | メモリアドレス管理方法及び画像処理装置 | |
JP2011010213A (ja) | 画像処理装置 |