JP2012226463A - Image rotation device and image formation device - Google Patents

Image rotation device and image formation device Download PDF

Info

Publication number
JP2012226463A
JP2012226463A JP2011091851A JP2011091851A JP2012226463A JP 2012226463 A JP2012226463 A JP 2012226463A JP 2011091851 A JP2011091851 A JP 2011091851A JP 2011091851 A JP2011091851 A JP 2011091851A JP 2012226463 A JP2012226463 A JP 2012226463A
Authority
JP
Japan
Prior art keywords
storage unit
pixels
image
data
read
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
Application number
JP2011091851A
Other languages
Japanese (ja)
Inventor
Yoshihiro Osada
嘉浩 長田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2011091851A priority Critical patent/JP2012226463A/en
Publication of JP2012226463A publication Critical patent/JP2012226463A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide an image rotation device and an image formation device that can suppress the capacity of a storage part used to rotate an image small.SOLUTION: An image rotation device 1 includes a first storage part 11 where image data is read and written in the same direction, and the number of pixels, corresponding to a predetermined burst length, in a first direction is equal to the number of pixels in a second direction orthogonal to the first direction; a second storage part 12 where the number of pixels in a third direction is equal to the number of pixels in the first direction in the first storage part 11 and the number of pixels in a fourth direction orthogonal to the third direction is less than the number of pixels in the second direction in the first storage part 11; and a read/write part 20 which reads out image data stored in the first storage part 11 by data of the number of pixels corresponding to the predetermined burst length and writes them to the second storage part 12, and reads out the data stored in the second storage part 12 by data of the number of pixels corresponding to the predetermined burst length and writes them to the first storage part 11.

Description

本発明は、画像データに基づく画像を回転させる画像回転装置、及び、その画像回転装置を備える画像形成装置に関する。   The present invention relates to an image rotating apparatus that rotates an image based on image data, and an image forming apparatus that includes the image rotating apparatus.

デジタルカメラやコピー機等において利用される画像データの画像サイズや1画素あたりのビット数の増大は、組み込みシステムに取ってコストアップの種となっている。特に顕著に影響される画像処理の一つが回転処理である。これは通常の電子機器で扱われるデータがラスタ構造であることに起因する。デジタルカメラでは、カメラをランドスケープで用いるかポートレートで用いるかによって、カメラ自身が画像の回転処理を行なう必要がある。さらに、コピー機では、原稿読取部によって読み取った原稿の画像の方向と、印刷画像を用紙に形成する方向とが異なる場合には画像の回転処理が必要になる。   An increase in the image size and the number of bits per pixel of image data used in a digital camera, a copier, or the like is a seed for increasing the cost for an embedded system. One of image processing that is particularly noticeably affected is rotation processing. This is due to the fact that data handled by ordinary electronic equipment has a raster structure. In a digital camera, the camera itself needs to perform image rotation processing depending on whether the camera is used in a landscape or a portrait. Further, in the copying machine, when the direction of the original image read by the original reading unit is different from the direction in which the print image is formed on the paper, an image rotation process is required.

画像の回転処理は、画像の回転処理を行う前の画像データが記憶される第1記憶部から適切な画素をピックアップして、ピックアップした画素を第1記憶部の適切な位置に置くことにより行うことができる。しかしながら、複数画素が同じメモリーワード中に配置されていたり、画像の回転を行う処理回路が複数画素を並列に処理できる能力があるにもかかわらず、画像の回転処理が一画素毎の処理になったりする場合には、処理速度は、著しく低下する。この問題を回避するために、通常の回転処理は、画像回転装置内にn画素×n画素の正方形(通常nは2のべき乗)の第2記憶部を配置し、n画素格子でタイル上に分割した処理前画像をタイル毎に一時的に第2記憶部に取り込み、回転した後に、回転処理後の画像を記憶する第1記憶部にタイル単位で転送している。   The image rotation process is performed by picking up an appropriate pixel from the first storage unit in which the image data before the image rotation process is stored and placing the picked-up pixel at an appropriate position in the first storage unit. be able to. However, even though multiple pixels are arranged in the same memory word and the processing circuit that rotates the image has the ability to process multiple pixels in parallel, the image rotation processing is a process for each pixel. The processing speed is significantly reduced. In order to avoid this problem, in the normal rotation process, a second storage unit of n pixels × n pixels square (usually n is a power of 2) is arranged in the image rotation apparatus, and an n pixel grid is used on the tile. The divided pre-processing images are temporarily fetched into the second storage unit for each tile, rotated, and then transferred in tile units to the first storage unit that stores the rotated image.

ところで、画像回転装置には、画像データに基づく画像を回転させる場合に、単位サイズの矩形画像データを列状に複数並べて、その矩形画像データの1辺のデータを超えるデータを連続するアドレス領域とし、回転させる単位サイズの矩形画像データより長いバースト長となるようにメモリーアクセスして、単位サイズの矩形画像データを読み出し及び書き込みを行うものがある。その画像回転装置は、回転される画像がカラー画像の場合には、同時に回転するべきカラー画像の画像データ(例えば、シアン、イエロー、マゼンタ、黒それぞれの画像データ)をパック化して、ライン方向に一列に並べて連続したアドレス領域としている(特許文献1参照)。   By the way, when rotating an image based on image data, the image rotation device arranges a plurality of unit-size rectangular image data in a line, and sets the data exceeding one side of the rectangular image data as a continuous address area. In some cases, memory access is made so that the burst length is longer than the unit-size rectangular image data to be rotated, and the unit-size rectangular image data is read and written. When the image to be rotated is a color image, the image rotation device packs the image data (for example, cyan, yellow, magenta, and black image data) of the color image that should be rotated at the same time, in the line direction. The address areas are arranged in a row and are continuous (see Patent Document 1).

特開2008−136125号公報JP 2008-136125 A

画像回転装置における90°単位の画像回転処理は、処理自体は単純であるが、以下の課題を有する。
(1)画像の回転処理に利用される第2記憶部は、小容量のものが入手しにくくなり、動作速度も高速となった反面、バーストサイズが増大し、小さな単位のアクセスでは効率が格段に悪い。
(2)第2記憶部の効率を落とさないためには、ラスタ順にデータを一気に読み書きしなくてはならず、画像の回転を行う処理回路の中にその分のバッファメモリーが必要になる。
The image rotation process in units of 90 ° in the image rotation apparatus is simple, but has the following problems.
(1) The second storage unit used for image rotation processing has become difficult to obtain a small-capacity storage unit, and the operation speed has been increased, but the burst size has increased, and the efficiency of the small unit access is markedly high. It ’s bad.
(2) In order not to reduce the efficiency of the second storage unit, data must be read and written at a stretch in raster order, and a corresponding buffer memory is required in the processing circuit that rotates the image.

DDR3(Double−Date−Rate3)メモリーを例に挙げると、メモリーの最小バースト数は、8である。すなわち、DDR3メモリーは、64ビット幅のメモリーであれば64バイトのプリフェッチ長(バーストサイズ)となり、64バイト未満では急激にパフォーマンスが低下する。これは、一定サイズより小さなデータ転送は、メモリーの内部処理ワードよりも小さくなってしまうことで、内部ではそれ以上に速く動作できないことが原因である。   Taking a DDR3 (Double-Date-Rate3) memory as an example, the minimum burst number of the memory is 8. In other words, the DDR3 memory has a prefetch length (burst size) of 64 bytes if it is a 64-bit width memory, and if it is less than 64 bytes, the performance drops sharply. This is because a data transfer smaller than a certain size becomes smaller than the internal processing word of the memory, and cannot operate faster than that internally.

また、特許文献1に記載された画像回転装置では、カラー画像を回転する場合に、各色の画像データを同時に処理するだけのメモリー(記憶部)の容量が必要になる。   Further, the image rotation apparatus described in Patent Document 1 requires a memory (storage unit) capacity for processing image data of each color simultaneously when rotating a color image.

本発明は、画像の回転に利用される記憶部の容量を小さく抑えることが可能な画像回転装置を提供することを目的とする。
また、本発明は、その画像回転装置を備える画像形成装置を提供することを目的とする。
An object of the present invention is to provide an image rotation apparatus capable of suppressing the capacity of a storage unit used for image rotation.
Another object of the present invention is to provide an image forming apparatus including the image rotation device.

本発明は、画像データを記憶可能であって、画像データの書込み方向と画像データの読み出し方向が同一の方向であり、且つ、第1方向における所定のバースト長に対応する画素数と、前記第1方向に直交する第2方向の画素数とが同一である第1記憶部と、画像データを記憶可能であって、第3方向の画素数が前記第1記憶部における前記第1方向の画素数と同一であると共に、前記第3方向に直交する第4方向の画素数が前記第1記憶部における前記第2方向の画素数よりも少ない第2記憶部と、画像データを記憶可能であって、第5方向の画素数が前記第2記憶部における前記第3方向の画素数と同一であると共に、前記第5方向に直交する第6方向の画素数が前記第5方向の画素数と同一である第3記憶部と、前記第1記憶部又は前記第3記憶部に記憶される画像データを所定のバースト長に対応する画素数のデータ毎に読み出して前記第2記憶部に書き込むことと、前記第2記憶部に記憶されるデータを所定のバースト長に対応する画素数のデータ毎に読み出して前記第1記憶部又は前記第3記憶部に書き込むことと、を行う読出書込部と、前記第1記憶部に記憶される画像データを、前記第1方向のラインに対応する第1ラインデータ毎に読み出して、前記第2記憶部の前記第3方向のライン毎に書き込む第1動作と、前記第1動作後の前記第2記憶部に記憶される画像データを、前記第3方向において複数に分割して第2ブロックデータを複数生成すると共に、分割生成された複数の第2ブロックデータを前記第3方向に読み出して、前記第3記憶部の前記第5方向又は前記第6方向に書き込む第2動作と、前記第2動作後の前記第3記憶部に記憶される第2ブロックデータを、前記第5方向及び前記第6方向のうち前記第2動作により第2ブロックデータが書き込まれた方向に対して直交する方向に沿って読み出して、第2ブロックデータに基づく画像の回転処理を行った後、回転処理が行われた第2ブロックデータを前記第3方向に沿って前記第2記憶部に書き込む第3動作と、前記第3動作後の前記第2記憶部に記憶される画像データを、前記第3方向のラインに対応する第3ラインデータ毎に読み出して、前記第1記憶部の前記第1方向のライン毎に書き込む第4動作と、を前記読出書込部に順次実行させる制御部と、を備える画像回転装置に関する。   The present invention is capable of storing image data, wherein the writing direction of the image data is the same as the reading direction of the image data, and the number of pixels corresponding to a predetermined burst length in the first direction, The first storage unit having the same number of pixels in the second direction orthogonal to the one direction and the image data can be stored, and the number of pixels in the third direction is the number of pixels in the first direction in the first storage unit. A second storage unit having the same number as the number of pixels in a fourth direction orthogonal to the third direction and less than the number of pixels in the second direction in the first storage unit, and image data can be stored. The number of pixels in the fifth direction is the same as the number of pixels in the third direction in the second storage unit, and the number of pixels in the sixth direction orthogonal to the fifth direction is the number of pixels in the fifth direction. The same third storage unit and the first storage unit or the previous The image data stored in the third storage unit is read for each pixel number corresponding to a predetermined burst length and written to the second storage unit, and the data stored in the second storage unit is stored in a predetermined burst. Read and write for each data of the number of pixels corresponding to the length and write to the first storage unit or the third storage unit, and image data stored in the first storage unit, A first operation for reading each first line data corresponding to a line in the first direction and writing for each line in the third direction of the second storage unit, and storing in the second storage unit after the first operation Image data to be divided into a plurality of second block data by dividing the image data into a plurality in the third direction, and reading the plurality of divided second block data in the third direction, the third storage unit The fifth direction of The second operation for writing in the sixth direction and the second block data stored in the third storage unit after the second operation by the second operation out of the fifth direction and the sixth direction. After reading out along the direction orthogonal to the direction in which the two block data is written and performing image rotation processing based on the second block data, the second block data subjected to the rotation processing is converted into the third direction. Read out the image data stored in the second storage unit after the third operation for each third line data corresponding to the line in the third direction. And a control unit that causes the read / write unit to sequentially execute a fourth operation of writing for each line in the first direction of the first storage unit.

また、前記第2記憶部は、第4方向の画素数が前記第1記憶部における第2方向の画素数に比べて、1/4(n=1,2,3、・・・)であることが好ましい。 In addition, the second storage unit has a number of pixels in the fourth direction of 1/4 n (n = 1, 2, 3,...) Compared to the number of pixels in the second direction in the first storage unit. Preferably there is.

また、本発明は、上述した画像回転装置を備える画像形成装置に関する。   The present invention also relates to an image forming apparatus including the above-described image rotation device.

本発明は、画像の回転に利用される記憶部の容量を小さく抑えることが可能な画像回転装置、及び、その画像回転装置を備える画像形成装置を提供することができる。   The present invention can provide an image rotation apparatus capable of reducing the capacity of a storage unit used for image rotation, and an image forming apparatus including the image rotation apparatus.

本発明の一実施形態に係る画像回転装置の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the image rotation apparatus which concerns on one Embodiment of this invention. 画像回転装置の動作について説明するための図である。It is a figure for demonstrating operation | movement of an image rotation apparatus. 第1比較例における画像回転の動作を説明するための図である。It is a figure for demonstrating the operation | movement of the image rotation in a 1st comparative example. 第2比較例における画像回転の動作を説明するための図である。It is a figure for demonstrating the operation | movement of the image rotation in a 2nd comparative example.

以下、図面を参照して、本発明の画像回転装置の一実施形態について説明する。図1は、本発明の一実施形態に係る画像回転装置の機能構成を示すブロック図である。
画像回転装置1は、第1記憶部11と、第2記憶部12と、第3記憶部13と、読出書込部20と、制御部30と、入出力部40とを備える。第1記憶部11と、第2記憶部12と、第3記憶部13とは、ハードディスクや半導体メモリー等から構成される。第2記憶部12は、制御部30(集積回路)の内部に配置される作業用メモリーである。
Hereinafter, an embodiment of an image rotation device of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a functional configuration of an image rotation apparatus according to an embodiment of the present invention.
The image rotation device 1 includes a first storage unit 11, a second storage unit 12, a third storage unit 13, a read / write unit 20, a control unit 30, and an input / output unit 40. The 1st memory | storage part 11, the 2nd memory | storage part 12, and the 3rd memory | storage part 13 are comprised from a hard disk, a semiconductor memory, etc. The second storage unit 12 is a working memory arranged inside the control unit 30 (integrated circuit).

第1記憶部11は、画像データを記憶可能である。また、第1記憶部11は、画像データの書込み方向と画像データの読み出し方向が同一の方向である。さらに、第1記憶部11は、第1方向における所定のバースト長に対応する画素数(第1方向の画素数)と、第1方向に直交する第2方向の画素数とが同一である。すなわち、第1記憶部11は、正方形となっている。   The first storage unit 11 can store image data. In the first storage unit 11, the image data writing direction and the image data reading direction are the same. Furthermore, in the first storage unit 11, the number of pixels corresponding to a predetermined burst length in the first direction (the number of pixels in the first direction) is the same as the number of pixels in the second direction orthogonal to the first direction. That is, the first storage unit 11 is a square.

第2記憶部12は、画像データを記憶可能である。また、第2記憶部12は、第3方向の画素数が第1記憶部11における第1方向の画素数と同一であると共に、第3方向に直交する第4方向の画素数が第1記憶部11における第2方向の画素数よりも少ない。より具体的には、第2記憶部12は、第4方向の画素数が第1記憶部11における第2方向の画素数に比べて、1/4(n=1,2,3、・・・)になっている。すなわち、第2記憶部12は、第1記憶部11に比べて、1/4、1/16、・・・のいずれかのサイズになる。 The second storage unit 12 can store image data. The second storage unit 12 has the same number of pixels in the third direction as the number of pixels in the first direction in the first storage unit 11, and the number of pixels in the fourth direction orthogonal to the third direction is the first memory. The number of pixels in the second direction in the portion 11 is smaller. More specifically, in the second storage unit 12, the number of pixels in the fourth direction is 1/4 n (n = 1, 2, 3,...) Compared to the number of pixels in the second direction in the first storage unit 11. ··)It has become. That is, the second storage unit 12 has a size of 1/4, 1/16,..., Compared to the first storage unit 11.

第3記憶部13は、画像データを記憶可能である。また、第3記憶部13は、第5方向の画素数が第2記憶部12における第3方向の画素数と同一であると共に、第5方向に直交する第6方向の画素数が第5方向の画素数と同一である。すなわち、第3記憶部13は、正方形となっている。なお、第3記憶部13は、第1記憶部11と同一のものである。このため、第5方向と第1方向とは、同一方向になる。さらに、第6方向と第2方向とは、同一方向になる。   The third storage unit 13 can store image data. The third storage unit 13 has the same number of pixels in the fifth direction as the number of pixels in the third direction in the second storage unit 12, and the number of pixels in the sixth direction orthogonal to the fifth direction is the fifth direction. Is the same as the number of pixels. That is, the third storage unit 13 is a square. The third storage unit 13 is the same as the first storage unit 11. For this reason, the fifth direction and the first direction are the same direction. Further, the sixth direction and the second direction are the same direction.

読出書込部20は、第1記憶部11又は第3記憶部13に記憶される画像データを所定のバースト長に対応する画素数のデータ毎に読み出して第2記憶部12に書き込むことを行う。また、読出書込部20は、第2記憶部12に記憶されるデータを所定のバースト長に対応する画素数のデータ毎に読み出して第1記憶部11又は第3記憶部13に書き込むことを行う。より具体的には、読出書込部20は、(1)画像データを構成するデータを第1記憶部11から読み出して、第2記憶部12に書き込むこと、(2)第2記憶部12からデータを読み出して第3記憶部13に書き込むこと、(3)第3記憶部13からデータを読み出して、第2記憶部12に書き込むこと、(4)第2記憶部12に記憶されたデータを読み出して第1記憶部11に書き込むこと、を順次行う。読出書込部20は、所定のバースト長に対応する画素数のデータ毎に読み出し及び書き込みを行うので、データの読み出し及びデータの書き込みを行う効率が低下することがない。読出書込部20は、後述する制御部30によって制御される。   The read / write unit 20 reads out the image data stored in the first storage unit 11 or the third storage unit 13 for each data of the number of pixels corresponding to a predetermined burst length, and writes it in the second storage unit 12. . The read / write unit 20 reads the data stored in the second storage unit 12 for each number of pixels corresponding to a predetermined burst length and writes the data to the first storage unit 11 or the third storage unit 13. Do. More specifically, the read / write unit 20 (1) reads out data constituting the image data from the first storage unit 11 and writes the data to the second storage unit 12, and (2) from the second storage unit 12. Data is read and written to the third storage unit 13, (3) Data is read from the third storage unit 13 and written to the second storage unit 12, (4) Data stored in the second storage unit 12 is read Reading and writing to the first storage unit 11 are sequentially performed. Since the reading / writing unit 20 performs reading and writing for each data of the number of pixels corresponding to a predetermined burst length, the efficiency of reading and writing data does not decrease. The read / write unit 20 is controlled by a control unit 30 described later.

制御部30は、第1動作と、第2動作と、第3動作と、第4動作と、を読出書込部20に順次実行させる。
第1動作は、第1記憶部11に記憶される画像データを、第1方向のラインに対応する第1ラインデータ毎に読み出して、第2記憶部12の第3方向のライン毎に書き込む動作である。一例として、第1記憶部11が64画素(第1方向)×64画素(第2方向)の場合には、第1動作は、64画素(第1方向)×1画素(第2方向)に対応する第1ラインデータ毎に第1記憶部11から読み出して、第2記憶部12に書き込む。
The control unit 30 causes the read / write unit 20 to sequentially execute the first operation, the second operation, the third operation, and the fourth operation.
The first operation is an operation of reading the image data stored in the first storage unit 11 for each first line data corresponding to the line in the first direction and writing it for each line in the third direction in the second storage unit 12. It is. As an example, when the first storage unit 11 has 64 pixels (first direction) × 64 pixels (second direction), the first operation is performed on 64 pixels (first direction) × 1 pixel (second direction). The corresponding first line data is read from the first storage unit 11 and written to the second storage unit 12.

第2動作は、第1動作後の第2記憶部12に記憶される画像データを、第3方向において複数に分割して第2ブロックデータを複数生成すると共に、分割生成された複数の第2ブロックデータを第3方向に読み出して、第3記憶部13の第5方向又は第6方向に書き込む動作である。一例として、第2記憶部12が64画素(第3方向)×16画素(第4方向)の場合には、第2動作は、16画素(第3方向)×16画素(第4方向)に対応するデータ毎に第2ブロックデータを第2記憶部12から読み出して、第3記憶部13に書き込む。   In the second operation, the image data stored in the second storage unit 12 after the first operation is divided into a plurality of second block data in the third direction to generate a plurality of second block data. The block data is read in the third direction and written in the fifth direction or the sixth direction of the third storage unit 13. As an example, when the second storage unit 12 is 64 pixels (third direction) × 16 pixels (fourth direction), the second operation is performed on 16 pixels (third direction) × 16 pixels (fourth direction). The second block data is read from the second storage unit 12 and written to the third storage unit 13 for each corresponding data.

第3動作は、第2動作後の第3記憶部13に記憶される第2ブロックデータを、第5方向及び第6方向のうち第2動作により第2ブロックデータが書き込まれた方向に対して直交する方向に沿って読み出して、第2ブロックデータに基づく画像の回転処理を行った後、回転処理が行われた第2ブロックデータを第3方向に沿って第2記憶部12に書き込む動作である。一例として、第3記憶部13が64画素(第5方向)×64画素(第6方向)の場合には、第3動作は、16画素(第5方向)×16画素(第6方向)に対応するデータ毎に第2ブロックデータを第3記憶部13から読み出して、第2記憶部12に書き込む。   In the third operation, the second block data stored in the third storage unit 13 after the second operation is applied to the direction in which the second block data is written by the second operation in the fifth direction and the sixth direction. An operation of reading along the orthogonal direction and performing image rotation processing based on the second block data, and then writing the second block data subjected to the rotation processing to the second storage unit 12 along the third direction. is there. As an example, when the third storage unit 13 is 64 pixels (fifth direction) × 64 pixels (sixth direction), the third operation is 16 pixels (fifth direction) × 16 pixels (sixth direction). For each corresponding data, the second block data is read from the third storage unit 13 and written to the second storage unit 12.

第4動作は、第3動作後の第2記憶部12に記憶される画像データを、第3方向のラインに対応する第3ラインデータ毎に読み出して、第1記憶部11の第1方向のライン毎に書き込む動作である。一例として、第4動作は、64画素(第3方向)×1画素(第4方向)に対応するデータ毎に第3ラインデータを第2記憶部12から読み出して、第1記憶部11に書き込む。   In the fourth operation, the image data stored in the second storage unit 12 after the third operation is read for each third line data corresponding to the line in the third direction, and the first direction in the first storage unit 11 is read. This is an operation of writing for each line. As an example, in the fourth operation, the third line data is read from the second storage unit 12 and written to the first storage unit 11 for each data corresponding to 64 pixels (third direction) × 1 pixel (fourth direction). .

入出力部40は、画像データが画像回転装置1に入出力されるときに利用されるインターフェイスである。   The input / output unit 40 is an interface used when image data is input / output to / from the image rotation apparatus 1.

次に、画像回転装置1の動作について説明する。
図2は、画像回転装置1の動作について説明するための図である。なお、以下では、第2記憶部12における第4方向の画素数が第1記憶部11における第2方向の画素数の1/4の数の場合に、画像の90°回転を2段階の動作で実現することを説明する。
Next, the operation of the image rotation device 1 will be described.
FIG. 2 is a diagram for explaining the operation of the image rotation apparatus 1. In the following, when the number of pixels in the fourth direction in the second storage unit 12 is ¼ of the number of pixels in the second direction in the first storage unit 11, the 90 ° rotation of the image is performed in two steps. This will be explained in the following.

ここで、図2において、矢印(1)が指す方向は、第1方向を示し、矢印(2)が指す方向は、第2方向を示す。また、矢印(3)が指す方向は、第3方向を示し、矢印(4)が指す方向は、第4方向を示す。また、矢印(5)が指す方向は、第5方向を示し、矢印(6)が指す方向は、第6方向を示す。
さらに、図2に例示する場合では、第1記憶部11、第2記憶部12及び第3記憶部13は、次の画素数を有する。すなわち、第1記憶部11は、第1方向に64画素を有すると共に、第2方向に64画素を有する。第2記憶部12は、第3方向に64画素を有すると共に、第4方向に16画素を有する。第3記憶部13は、第5方向に64画素を有すると共に、第6方向に64画素を有する。
Here, in FIG. 2, the direction indicated by the arrow (1) indicates the first direction, and the direction indicated by the arrow (2) indicates the second direction. The direction indicated by the arrow (3) indicates the third direction, and the direction indicated by the arrow (4) indicates the fourth direction. The direction indicated by the arrow (5) indicates the fifth direction, and the direction indicated by the arrow (6) indicates the sixth direction.
Furthermore, in the case illustrated in FIG. 2, the first storage unit 11, the second storage unit 12, and the third storage unit 13 have the following number of pixels. That is, the first storage unit 11 has 64 pixels in the first direction and 64 pixels in the second direction. The second storage unit 12 has 64 pixels in the third direction and 16 pixels in the fourth direction. The third storage unit 13 has 64 pixels in the fifth direction and 64 pixels in the sixth direction.

まず、画像回転装置1は、画像を回転させるための第1段階の動作を実行する。
すなわち、まず、読出書込部20は、制御部30による制御に基づいて、第1動作を実行する。具体的には、読出書込部20は、第1記憶部11に記憶される画像データのうち第1方向に沿った1ライン目に記憶される第1ラインデータを読み出す(図2(A)参照)。ここでは、所定のバースト長に対応する画素数は、64画素である。次に、読出書込部20は、第1記憶部11から読み出された第1ラインデータを、第2記憶部12の第3方向に沿った1ライン目に書き込む(図2(B)参照)。この後、読出書込部20は、上記と同様に、第1記憶部11の第1方向に沿った2ライン目から16ライン目に記憶される第1ラインデータを1ライン毎に順次読み出して、第2記憶部12の第3方向に沿った2ライン目から16ライン目に順次書き込む。
First, the image rotation apparatus 1 performs a first stage operation for rotating an image.
That is, first, the read / write unit 20 performs the first operation based on the control by the control unit 30. Specifically, the read / write unit 20 reads the first line data stored in the first line along the first direction among the image data stored in the first storage unit 11 (FIG. 2A). reference). Here, the number of pixels corresponding to the predetermined burst length is 64 pixels. Next, the read / write unit 20 writes the first line data read from the first storage unit 11 to the first line along the third direction of the second storage unit 12 (see FIG. 2B). ). Thereafter, in the same manner as described above, the read / write unit 20 sequentially reads the first line data stored in the second to 16th lines along the first direction of the first storage unit 11 for each line. The second storage unit 12 sequentially writes data from the second line to the 16th line along the third direction.

次に、読出書込部20は、制御部30による制御に基づいて、第2動作を実行する。すなわち、読出書込部20は、第2記憶部12に記憶される画像データを矩形の記憶部領域に対応する第2ブロックデータ毎に読み出して、読み出された第2ブロックデータを第3記憶部13の第5方向又は第6方向に沿って書き込む(図2(C)参照)。矩形の記憶部領域は、第3方向に16画素を有し、第4方向に16画素を有する。
次に、読出書込部は、上記の第1動作と上記の第2動作を繰り返すことにより、第1記憶部11に記憶される画像データを第2ブロックデータにする。なお、図2(C)に示す場合では、第2ブロックデータは、丸の中に示す数字の順番で(第5方向に沿って)第3記憶部13に書き込まれる。
Next, the read / write unit 20 performs the second operation based on the control by the control unit 30. That is, the read / write unit 20 reads the image data stored in the second storage unit 12 for each second block data corresponding to the rectangular storage unit region, and stores the read second block data in the third storage. Writing is performed along the fifth direction or the sixth direction of the portion 13 (see FIG. 2C). The rectangular storage area has 16 pixels in the third direction and 16 pixels in the fourth direction.
Next, the read / write unit repeats the first operation and the second operation to change the image data stored in the first storage unit 11 into second block data. In the case shown in FIG. 2C, the second block data is written in the third storage unit 13 in the numerical order shown in the circle (along the fifth direction).

次に、画像回転装置1は、画像を回転させるための第2段階の動作を実行する。
すなわち、まず、読出書込部20は、制御部30による制御に基づいて、第3動作を実行する。具体的には、読出書込部20は、第3記憶部13に記憶される画像データ(第2ブロックデータ)を、その第2ブロックデータが書き込まれた方向に直交する方向(ここでは、第6方向)に沿って順次読み出す。具体的には、図2(C)に示す場合には、第2ブロックデータは、丸の中に示す数字が「4」、「8」、「12」、「16」の順番で第3記憶部13から読み出される。さらに、読出書込部20は、第3記憶部13から読み出した第2ブロックデータに基づく画像を回転させた後、画像が回転された第2ブロックデータを第3方向に沿って第2記憶部12に順次書き込む。(図2(D)参照)。
Next, the image rotation device 1 executes a second stage operation for rotating the image.
That is, first, the read / write unit 20 performs the third operation based on the control by the control unit 30. Specifically, the read / write unit 20 outputs image data (second block data) stored in the third storage unit 13 in a direction orthogonal to the direction in which the second block data is written (here, the second block data). (Six directions). Specifically, in the case shown in FIG. 2C, the second block data is stored in the third memory in the order of numbers “4”, “8”, “12”, “16” shown in circles. Read from the unit 13. Further, the read / write unit 20 rotates the image based on the second block data read from the third storage unit 13, and then transmits the second block data obtained by rotating the image along the third direction to the second storage unit. 12 are sequentially written. (See FIG. 2D).

次に、読出書込部20は、制御部30による制御に基づいて、第4動作を実行する。すなわち、読出書込部20は、第2記憶部12に記憶される画像データのうち第3方向に沿った1ライン目に記憶される第3ラインデータを読み出す(図2(D)参照)。さらに、読出書込部20は、読み出された第3ラインデータを、第1記憶部11の第1方向に沿った1ライン目に書き込む(図2(E)参照)。
この後、読出書込部20は、上記と同様に、第2記憶部12の第3方向に沿った2ライン目から16ライン目に記憶される第3ラインデータを1ライン毎に順次読み出して、第1記憶部11の第1方向に沿った2ライン目から16ライン目に順次書き込む。さらに、読出書込部20は、第3動作と、第4動作とを繰り返すことにより、第3記憶部13に記憶される第2ブロックデータの全てを第3ラインデータにして第1記憶部11に書き込む。
これにより、第1記憶部11に記憶された画像データに基づく画像は、90°回転される。
Next, the read / write unit 20 performs the fourth operation based on the control by the control unit 30. That is, the read / write unit 20 reads out the third line data stored in the first line along the third direction from the image data stored in the second storage unit 12 (see FIG. 2D). Further, the read / write unit 20 writes the read third line data to the first line along the first direction of the first storage unit 11 (see FIG. 2E).
Thereafter, in the same manner as described above, the read / write unit 20 sequentially reads out the third line data stored in the second to 16th lines along the third direction of the second storage unit 12 for each line. Then, data is sequentially written from the second line to the 16th line along the first direction of the first storage unit 11. Further, the read / write unit 20 repeats the third operation and the fourth operation, so that all of the second block data stored in the third storage unit 13 becomes the third line data, and the first storage unit 11. Write to.
As a result, the image based on the image data stored in the first storage unit 11 is rotated by 90 °.

なお、第2段階の動作においては、画像回転装置1は、第2記憶部12を16画素(第3方向)×64画素(第4方向)として利用することも可能である。この場合、読出書込部20は、第3記憶部13から読み出した第2ブロックデータを回転することなく第2記憶部12に書き込む。さらに、読出書込部20は、第4方向に沿ったラインに対応する第3ラインデータを第2記憶部12から読み出して、第1記憶部11の第2方向に沿って第3ラインデータを書き込む。この場合、画像回転装置1は、第1記憶部11と第3記憶部13とを同一の記憶部にすることが可能である。   In the second stage operation, the image rotation apparatus 1 can also use the second storage unit 12 as 16 pixels (third direction) × 64 pixels (fourth direction). In this case, the read / write unit 20 writes the second block data read from the third storage unit 13 to the second storage unit 12 without rotating. Further, the read / write unit 20 reads out the third line data corresponding to the line along the fourth direction from the second storage unit 12 and outputs the third line data along the second direction of the first storage unit 11. Write. In this case, the image rotation apparatus 1 can make the first storage unit 11 and the third storage unit 13 the same storage unit.

なお、画像回転装置1は、第2記憶部12における第4方向の画素数が第1記憶部11における第2方向の画素数の1/16の数の場合に、画像の90°回転を3段階の動作で実現する。
まず、第1段階として、画像回転装置1は、第2記憶部12を64画素(第3方向)×4画素(第4方向)の矩形で利用する。なお、第1記憶部11は、64画素(第1方向)×64画素(第2方向)を有する。この場合、読出書込部20は、第1記憶部11に記憶される画像データのうち、64画素(第1方向)×1画素(第2方向)の領域に対応するデータを4回読み出して、第2記憶部12に書き込む。次に、読出書込部20は、第2記憶部12に書き込まれた画像データのうち、16画素(第3方向)×4画素(第4方向)の領域に対応するデータを4回読み出して、第3記憶部13に書き込む。この後、読出書込部20は、上記と同様にして、第1記憶部11に記憶される画像データを64画素×1画素の領域に対応するデータ毎に読み出して第2記憶部12に書き込むことと、第2記憶部12に記憶される画像データを16画素×4画素の領域に対応するデータ毎に読み出して第3記憶部13に書き込むこととを繰り返す。
Note that the image rotation device 1 rotates the image by 90 ° when the number of pixels in the fourth direction in the second storage unit 12 is 1/16 of the number of pixels in the second direction in the first storage unit 11. Realized by staged operation.
First, as a first stage, the image rotation apparatus 1 uses the second storage unit 12 in a rectangle of 64 pixels (third direction) × 4 pixels (fourth direction). The first storage unit 11 has 64 pixels (first direction) × 64 pixels (second direction). In this case, the read / write unit 20 reads data corresponding to a region of 64 pixels (first direction) × 1 pixel (second direction) out of the image data stored in the first storage unit 11 four times. To the second storage unit 12. Next, the read / write unit 20 reads data corresponding to an area of 16 pixels (third direction) × 4 pixels (fourth direction) out of the image data written in the second storage unit 12 four times. To the third storage unit 13. Thereafter, in the same manner as described above, the read / write unit 20 reads the image data stored in the first storage unit 11 for each data corresponding to the area of 64 pixels × 1 pixel and writes it to the second storage unit 12. And reading the image data stored in the second storage unit 12 for each data corresponding to the area of 16 pixels × 4 pixels and writing it in the third storage unit 13 are repeated.

次に、第2段階として、画像回転装置1は、第2記憶部12を16画素(第3方向)×16画素(第4方向)で利用する。この場合、読出書込部20は、第3記憶部13に記憶される画像データのうち、16画素(第5方向)×4画素(第6方向)の領域に対応するデータを4回読み出して、第2記憶部12に書き込む。次に、読出書込部20は、第2記憶部12に記憶された画像データのうち、4画素(第3方向)×16画素(第4方向)の領域に対応するデータを4回読み出して、第3記憶部13に記憶させる。この後、読出書込部20は、上記と同様にして、第3記憶部13に記憶される画像データのうち、16画素×4画素の領域に対応するデータを読み出して第2記憶部12に書き込むことと、第2記憶部12に記憶される画像データを4画素×16画素の領域に対応するデータを第3記憶部13に書き込むことと、を繰り返す。   Next, as a second stage, the image rotation apparatus 1 uses the second storage unit 12 with 16 pixels (third direction) × 16 pixels (fourth direction). In this case, the read / write unit 20 reads out data corresponding to an area of 16 pixels (fifth direction) × 4 pixels (sixth direction) from the image data stored in the third storage unit 13 four times. To the second storage unit 12. Next, the read / write unit 20 reads the data corresponding to the area of 4 pixels (third direction) × 16 pixels (fourth direction) out of the image data stored in the second storage unit 12 four times. And stored in the third storage unit 13. Thereafter, in the same manner as described above, the read / write unit 20 reads out the data corresponding to the area of 16 pixels × 4 pixels from the image data stored in the third storage unit 13 and stores it in the second storage unit 12. The writing is repeated and the image data stored in the second storage unit 12 is written in the third storage unit 13 with data corresponding to an area of 4 pixels × 16 pixels.

次に、第3段階として、画像回転装置1は、第2記憶部12を4画素(第3方向)×64画素(第4方向)の矩形で利用する。この場合、読出書込部20は、第3記憶部13に記憶される画像データのうち、4画素(第5方向)×16画素(第6方向)の領域に対応するデータを4回読み出して、第2記憶部12に書き込む。次に、読出書込部20は、第2記憶部12に記憶された画像データのうち、1画素(第3方向)×64(第4方向)の領域に対応するデータを4回読み出して、第1記憶部11に記憶させる。この後、読出書込部20は、上記と同様にして、第3記憶部13に記憶される画像データを4画素×16画素の領域に対応するデータ毎に読み出して第2記憶部12に書き込むことと、第2記憶部12に記憶される画像データを1画素×64画素の領域に対応するデータ毎に読み出して第1記憶部11に書き込むこととを繰り返す。
これにより、第1記憶部11に記憶された画像データに基づく画像は、90°回転される。
Next, as a third stage, the image rotation apparatus 1 uses the second storage unit 12 in a rectangle of 4 pixels (third direction) × 64 pixels (fourth direction). In this case, the read / write unit 20 reads the data corresponding to the region of 4 pixels (fifth direction) × 16 pixels (sixth direction) among the image data stored in the third storage unit 13 four times. To the second storage unit 12. Next, the read / write unit 20 reads out data corresponding to an area of one pixel (third direction) × 64 (fourth direction) out of the image data stored in the second storage unit 12 four times, It memorize | stores in the 1st memory | storage part 11. FIG. Thereafter, the read / write unit 20 reads the image data stored in the third storage unit 13 for each data corresponding to the area of 4 pixels × 16 pixels and writes it to the second storage unit 12 in the same manner as described above. And reading and writing the image data stored in the second storage unit 12 for each data corresponding to the area of 1 pixel × 64 pixels in the first storage unit 11 is repeated.
As a result, the image based on the image data stored in the first storage unit 11 is rotated by 90 °.

次に、比較例について説明する。
まず、第1比較例について説明する。図3は、第1比較例における画像回転の動作を説明するための図である。第1比較例は、第1記憶部101aの画素数(例えば、64画素×64画素)と、第2記憶部102aの画素数(例えば、64画素×64画素)が同じものを利用することにより、画像を90°回転する場合である。
Next, a comparative example will be described.
First, the first comparative example will be described. FIG. 3 is a diagram for explaining the image rotation operation in the first comparative example. The first comparative example uses the same number of pixels (for example, 64 pixels × 64 pixels) in the first storage unit 101a and the same number of pixels (for example, 64 pixels × 64 pixels) in the second storage unit 102a. In this case, the image is rotated by 90 °.

まず、読出書込部20(図示せず)は、第1記憶部101aに記憶される画像データをバースト長に対応する画素数(例えば、64画素×1画素)のデータ毎に順次読み出して(図3(A)参照)、第2記憶部102aに順次書き込む(図3(B)参照)。次に、読出書込部20は、第2記憶部102aに記憶されるデータをバースト長に対応する画素数(例えば、1画素×64画素)のデータ毎に順次読み出して(図3(B)参照)、第1記憶部101aに書き込む(図3(C)参照)。
これにより、第1比較例における画像回転の動作では、画像データに基づく画像を90°回転させることが可能になる。
First, the read / write unit 20 (not shown) sequentially reads the image data stored in the first storage unit 101a for each data of the number of pixels (for example, 64 pixels × 1 pixel) corresponding to the burst length ( 3A), and sequentially writes in the second storage unit 102a (see FIG. 3B). Next, the read / write unit 20 sequentially reads the data stored in the second storage unit 102a for each data of the number of pixels (for example, 1 pixel × 64 pixels) corresponding to the burst length (FIG. 3B). (Refer to FIG. 3C).
Thereby, in the image rotation operation in the first comparative example, the image based on the image data can be rotated by 90 °.

次に、第2比較例について説明する。図4は、第2比較例における画像回転の動作を説明するための図である。第2比較例では、第2記憶部102bの画素数が第1記憶部101bの画素数と比較して、1/4の数を有するようになっている。すなわち、第2比較例では、第1記憶部101bが64画素×64画素を有する一方、第2記憶部102bが32画素×32画素を有するようになっている。   Next, a second comparative example will be described. FIG. 4 is a diagram for explaining the image rotation operation in the second comparative example. In the second comparative example, the number of pixels in the second storage unit 102b is ¼ of the number of pixels in the first storage unit 101b. That is, in the second comparative example, the first storage unit 101b has 64 pixels × 64 pixels, while the second storage unit 102b has 32 pixels × 32 pixels.

まず、読出書込部20は、第1記憶部101bに記憶される画像データを、32画素×1画素の領域(バースト長に対応する画素数の半分の画素数)に対応するデータ毎に順次読み出して(図4(A)参照)、第2記憶部102bに順次書き込む(図4(B)参照)。次に、読出書込部20は、第2記憶部102bに記憶されるデータを1画素×32画素の領域(バースト長に対応する画素数の半分の画素数)に対応するデータ毎に順次読み出して(図4(B)参照)、第1記憶部101bに書き込む(図4(C)参照)。
これにより、第2比較例における画像回転の動作では、画像データに基づく画像を90°回転させることが可能になる。
First, the read / write unit 20 sequentially stores the image data stored in the first storage unit 101b for each data corresponding to a region of 32 pixels × 1 pixel (half the number of pixels corresponding to the burst length). The data is read (see FIG. 4A) and written sequentially into the second storage unit 102b (see FIG. 4B). Next, the read / write unit 20 sequentially reads the data stored in the second storage unit 102b for each data corresponding to an area of 1 pixel × 32 pixels (the number of pixels half the number of pixels corresponding to the burst length). (Refer to FIG. 4B) and write to the first storage unit 101b (refer to FIG. 4C).
Thereby, in the image rotation operation in the second comparative example, the image based on the image data can be rotated by 90 °.

ここで、第2比較例における画像回転の動作では、第1記憶部101bから第2記憶部102bへ転送される画像データのサイズと、第2記憶部102bから第1記憶部101bへ転送される画像データのサイズとが、第1比較例における画像回転の動作に比べて1/2になっている。しかしながら、バースト長以下の画素数に対応するデータを転送する場合には、その転送にかかる時間は同じである。このため、第2比較例の画像回転の動作における32画素×1画素に対応するデータと、1画素×32画素に対応するデータとの転送時間は、第1比較例の画像回転の動作における64画素×1画素に対応するデータと、1画素×64画素に対応するデータとの転送時間と同じになる。さらに、第2比較例における画像回転の動作では、第1比較例における画像回転の動作に比べて、データの転送回数が2倍になる。したがって、第2比較例における画像回転の動作の性能は、第1比較例における画像回転の動作に比べて、1/2になる。   Here, in the image rotation operation in the second comparative example, the size of the image data transferred from the first storage unit 101b to the second storage unit 102b and the transfer from the second storage unit 102b to the first storage unit 101b. The size of the image data is ½ compared to the image rotation operation in the first comparative example. However, when data corresponding to the number of pixels equal to or less than the burst length is transferred, the time required for the transfer is the same. Therefore, the transfer time between the data corresponding to 32 pixels × 1 pixel and the data corresponding to 1 pixel × 32 pixels in the image rotation operation of the second comparative example is 64 in the image rotation operation of the first comparative example. The transfer time of the data corresponding to pixel × 1 pixel and the data corresponding to 1 pixel × 64 pixels is the same. Further, in the image rotation operation in the second comparative example, the number of times of data transfer is doubled compared to the image rotation operation in the first comparative example. Therefore, the performance of the image rotation operation in the second comparative example is ½ that of the image rotation operation in the first comparative example.

さらに、第3比較例として、第2記憶部が第1記憶部の1/16のサイズ(16画素×16画素)を利用することにより画像を90°回転させる場合には、画像回転の動作では、データの転送回数が第1比較例における画像回転の動作に比べて4倍になる。したがって、第3比較例における画像回転の動作の性能は、第1比較例における画像回転の動作に比べて、1/4になる。   Furthermore, as a third comparative example, when the second storage unit rotates the image 90 ° by using 1/16 the size (16 pixels × 16 pixels) of the first storage unit, The number of data transfers is four times that of the image rotation operation in the first comparative example. Therefore, the performance of the image rotation operation in the third comparative example is ¼ that of the image rotation operation in the first comparative example.

一方、本実施形態に係る画像回転装置1において、2段階の動作で画像の90°回転を実現する場合(第2記憶部12の画素数が第1記憶部11の画素数に比べて1/4の場合)には、全工程で、第2記憶部12へのアクセス回数は2倍に増えている。しかしながら、画像データの読み出し及び書き込みは、全て高効率の転送、すなわちバースト長での転送を行っている。このため、2段階の動作で画像の90°回転を実現する場合の画像回転装置1の性能は、第1比較例における画像回転の動作に比べて、1/2になる。   On the other hand, in the image rotation apparatus 1 according to the present embodiment, when the image is rotated by 90 ° in two steps (the number of pixels in the second storage unit 12 is 1 / compared to the number of pixels in the first storage unit 11). 4), the number of accesses to the second storage unit 12 is doubled in all the steps. However, reading and writing of image data are all performed with high efficiency transfer, that is, transfer with a burst length. For this reason, the performance of the image rotation apparatus 1 when the 90 ° rotation of the image is realized by the two-stage operation is ½ that of the image rotation operation in the first comparative example.

さらに、本実施形態に係る画像回転装置1において、3段階の動作で画像の90°回転を実現する場合(第2記憶部12の画素数が第1記憶部11の画素数に比べて1/16の場合)には、全工程で、第2記憶部12へのアクセス回数は3倍に増えている。しかしながら、画像データの読み出し及び書き込みは、全て高効率の転送、すなわちバースト長での転送を行っている。このため、3段階の動作で画像の90°回転を実現する場合の画像回転装置1の性能は、第1比較例における画像回転の動作に比べて、1/3になる。   Furthermore, in the image rotation apparatus 1 according to the present embodiment, when the image is rotated by 90 ° in three stages of operation (the number of pixels in the second storage unit 12 is 1 / compared to the number of pixels in the first storage unit 11). In the case of 16), the number of accesses to the second storage unit 12 has increased three times in all steps. However, reading and writing of image data are all performed with high efficiency transfer, that is, transfer with a burst length. For this reason, the performance of the image rotation apparatus 1 when the 90 ° rotation of the image is realized by the three-stage operation is 3 compared to the image rotation operation in the first comparative example.

そして、第2記憶部12の画素数を1/4(n=0,1,2,3,…)まで汎化した場合、以下の表1のようになる。

Figure 2012226463
When the number of pixels in the second storage unit 12 is generalized to 1/4 n (n = 0, 1, 2, 3,...), The following Table 1 is obtained.
Figure 2012226463

ここで、第2記憶部12の画素数は、基準となる画素数と比較した場合の値である。例えば、基本となる画素数が第1比較例における第2記憶部102aの画素数の場合には、第2記憶部が16画素×16画素を有する(第2比較例)、及び、第2記憶部が64画素×16画素を有する(本実施形態)それぞれのときでは、第2記憶部の画素数は、1/4になる。
また、第2記憶部12のサイズが正方形の場合の性能(比較例)とは、第2,3比較例で説明したような、第2記憶部12の第3方向と第4方向の画素数が互いに等しい場合の、第1比較例と比較した性能である。また、本実施形態の場合の性能とは、本実施形態の画像回転装置1と、第1比較例とを比較した場合の性能である。
そして、第2記憶部12のサイズが正方形の場合の性能(比較例)は、2のn乗のオーダーで低下するのに対して、本実施形態の場合の性能は、1次式で低下する。したがって、第1記憶部11のサイズが大きくなるにしたがって、本実施形態の画像回転装置1が有利であることがわかる。
Here, the number of pixels in the second storage unit 12 is a value when compared with the reference number of pixels. For example, when the basic number of pixels is the number of pixels of the second storage unit 102a in the first comparative example, the second storage unit has 16 pixels × 16 pixels (second comparative example), and the second storage When the unit has 64 pixels × 16 pixels (this embodiment), the number of pixels in the second storage unit is ¼.
The performance (comparative example) when the size of the second storage unit 12 is a square is the number of pixels in the third direction and the fourth direction of the second storage unit 12 as described in the second and third comparative examples. Is a performance compared with the first comparative example when the values are equal to each other. The performance in the present embodiment is the performance when the image rotation device 1 of the present embodiment is compared with the first comparative example.
The performance (comparative example) when the size of the second storage unit 12 is a square is reduced in the order of 2 to the nth power, whereas the performance in the present embodiment is reduced by a linear expression. . Therefore, it can be seen that the image rotation apparatus 1 of the present embodiment is more advantageous as the size of the first storage unit 11 increases.

以上説明したように、本実施形態の画像回転装置1によれば、以下の効果が奏される。
すなわち、本実施形態の画像回転装置1は、第1記憶部11に記憶される画像データを、第1方向のラインに対応する第1ラインデータ毎に読み出して、第2記憶部12の第3方向のライン毎に書き込む第1動作と、第1動作後の第2記憶部12に記憶される画像データを、第3方向において複数に分割して第2ブロックデータを複数生成すると共に、分割生成された複数の第2ブロックデータを第3方向に読み出して、第3記憶部13の第5方向又は第6方向に書き込む第2動作と、第2動作後の第3記憶部13に記憶される第2ブロックデータを、第5方向及び第6方向のうち第2動作により第2ブロックデータが書き込まれた方向に対して直交する方向に沿って読み出して、第2ブロックデータに基づく画像の回転処理を行った後、回転処理が行われた第2ブロックデータを第3方向に沿って第2記憶部12に書き込む第3動作と、第3動作後の第2記憶部12に記憶される画像データを、第3方向のラインに対応する第3ラインデータ毎に読み出して、第1記憶部11の第1方向のライン毎に書き込む第4動作と、を順次実行させる。この場合、各データの書き込み及び各データの読み出しは、所定のバースト長に対応する画素数のデータ毎に行われる。
As described above, according to the image rotation device 1 of the present embodiment, the following effects are produced.
That is, the image rotation device 1 according to the present embodiment reads out the image data stored in the first storage unit 11 for each first line data corresponding to the line in the first direction, and stores the third data in the second storage unit 12. The first operation to be written for each line in the direction and the image data stored in the second storage unit 12 after the first operation are divided into a plurality of second block data in the third direction, and a plurality of second block data are generated. The second block data read out in the third direction and written in the fifth direction or the sixth direction of the third storage unit 13 and stored in the third storage unit 13 after the second operation. The second block data is read out along the direction orthogonal to the direction in which the second block data is written by the second operation in the fifth direction and the sixth direction, and the image is rotated based on the second block data. After doing The third operation for writing the processed second block data in the second storage unit 12 along the third direction, and the image data stored in the second storage unit 12 after the third operation in the third direction A fourth operation of reading for each third line data corresponding to the line and writing for each line in the first direction of the first storage unit 11 is sequentially executed. In this case, writing of each data and reading of each data are performed for each data of the number of pixels corresponding to a predetermined burst length.

このような画像回転装置1は、第2記憶部12の画素数(容量)が第1記憶部11の画素数(容量)に比べて少なくなったとしても、所定のバースト長に対応する画素数のデータ毎に読み出し及び書き込みを行うので、データの読み出し及びデータの書き込みを行う効率が低下することがない。また、画像回転装置1は、第2記憶部12の容量を小さくすることによって生じる性能の低下が緩やか(1次式の低下)である。よって、画像回転装置1は、画像の回転に利用される第2記憶部12の容量を小さく抑えることができる。   Such an image rotation apparatus 1 has the number of pixels corresponding to a predetermined burst length even if the number of pixels (capacity) of the second storage unit 12 is smaller than the number of pixels (capacity) of the first storage unit 11. Therefore, the efficiency of reading and writing data is not lowered. Further, in the image rotation device 1, the performance degradation caused by reducing the capacity of the second storage unit 12 is gradual (decrease in the primary expression). Therefore, the image rotation apparatus 1 can suppress the capacity of the second storage unit 12 used for image rotation.

また、画像回転装置1においては、第2記憶部12が第4方向の画素数が第1記憶部11における第2方向の画素数に比べて、1/4(n=1,2,3、・・・)になっている。また、画像回転装置1は、一画素当たり(n+1)回の回転操作により、画像を回転させる。なお、回転操作は、第2記憶部へのデータの書き込みと、第2記憶部からのデータの読み出しとによって、1回の回転操作となる。これにより、画像回転装置1は、第1記憶部11の画素数(容量)が大きくなったとしても、少ない画素数(容量)の第2記憶部12により、画像を回転させることができる。 Further, in the image rotation device 1, the second storage unit 12 has a fourth number of pixels in the fourth direction that is 1/4 n (n = 1, 2, 3) as compared with the number of pixels in the second direction in the first storage unit 11. ,···)It has become. The image rotation device 1 rotates the image by (n + 1) rotation operations per pixel. The rotation operation is a single rotation operation by writing data to the second storage unit and reading data from the second storage unit. Thereby, even if the pixel number (capacity) of the 1st memory | storage part 11 becomes large, the image rotation apparatus 1 can rotate an image with the 2nd memory | storage part 12 with a small pixel number (capacity | capacitance).

なお、画像回転装置1は、例えば、コピー機や複合機やプリンター等の画像形成装置、カメラ、パーソナルコンピュータ等の電子機器に搭載される。例えば、画像回転装置1が画像形成装置に搭載された場合には、画像データは、原稿読取部(不図示)によって原稿の画像を読み取ることにより、又は、通信ネットワークを介して接続される外部端末(パーソナルコンピュータ等)から送信されることにより、入出力部40を介して第1記憶部11に記憶される。さらに、画像形成装置は、画像回転装置1によって画像データに基づく画像を回転させた後、回転後の画像に対応する画像データを入出力部40を介して出力して、その画像をエンジン部(不図示)によって用紙(被画像形成媒体)に形成することが可能である。   Note that the image rotation device 1 is mounted on, for example, an image forming apparatus such as a copier, a multifunction peripheral, or a printer, or an electronic device such as a camera or personal computer. For example, when the image rotation apparatus 1 is mounted on an image forming apparatus, the image data is an external terminal connected by reading an image of a document by a document reading unit (not shown) or via a communication network. By being transmitted from (a personal computer or the like), it is stored in the first storage unit 11 via the input / output unit 40. Further, the image forming apparatus rotates the image based on the image data by the image rotating apparatus 1, then outputs the image data corresponding to the rotated image through the input / output unit 40, and outputs the image to the engine unit ( It can be formed on a sheet (image forming medium) by a not-shown.

1…画像回転装置、11…第1記憶部、12…第2記憶部、13…第3記憶部、20…読出書込部、30…制御部 DESCRIPTION OF SYMBOLS 1 ... Image rotation apparatus, 11 ... 1st memory | storage part, 12 ... 2nd memory | storage part, 13 ... 3rd memory | storage part, 20 ... Read-write part, 30 ... Control part

Claims (3)

画像データを記憶可能であって、画像データの書込み方向と画像データの読み出し方向が同一の方向であり、且つ、第1方向における所定のバースト長に対応する画素数と、前記第1方向に直交する第2方向の画素数とが同一である第1記憶部と、
画像データを記憶可能であって、第3方向の画素数が前記第1記憶部における前記第1方向の画素数と同一であると共に、前記第3方向に直交する第4方向の画素数が前記第1記憶部における前記第2方向の画素数よりも少ない第2記憶部と、
画像データを記憶可能であって、第5方向の画素数が前記第2記憶部における前記第3方向の画素数と同一であると共に、前記第5方向に直交する第6方向の画素数が前記第5方向の画素数と同一である第3記憶部と、
前記第1記憶部又は前記第3記憶部に記憶される画像データを所定のバースト長に対応する画素数のデータ毎に読み出して前記第2記憶部に書き込むことと、前記第2記憶部に記憶されるデータを所定のバースト長に対応する画素数のデータ毎に読み出して前記第1記憶部又は前記第3記憶部に書き込むことと、を行う読出書込部と、
前記第1記憶部に記憶される画像データを、前記第1方向のラインに対応する第1ラインデータ毎に読み出して、前記第2記憶部の前記第3方向のライン毎に書き込む第1動作と、前記第1動作後の前記第2記憶部に記憶される画像データを、前記第3方向において複数に分割して第2ブロックデータを複数生成すると共に、分割生成された複数の第2ブロックデータを前記第3方向に読み出して、前記第3記憶部の前記第5方向又は前記第6方向に書き込む第2動作と、前記第2動作後の前記第3記憶部に記憶される第2ブロックデータを、前記第5方向及び前記第6方向のうち前記第2動作により第2ブロックデータが書き込まれた方向に対して直交する方向に沿って読み出して、第2ブロックデータに基づく画像の回転処理を行った後、回転処理が行われた第2ブロックデータを前記第3方向に沿って前記第2記憶部に書き込む第3動作と、前記第3動作後の前記第2記憶部に記憶される画像データを、前記第3方向のラインに対応する第3ラインデータ毎に読み出して、前記第1記憶部の前記第1方向のライン毎に書き込む第4動作と、を前記読出書込部に順次実行させる制御部と、
を備える画像回転装置。
The image data can be stored, the image data writing direction and the image data reading direction are the same direction, and the number of pixels corresponding to a predetermined burst length in the first direction is orthogonal to the first direction. A first storage unit having the same number of pixels in the second direction
Image data can be stored, and the number of pixels in the third direction is the same as the number of pixels in the first direction in the first storage unit, and the number of pixels in the fourth direction orthogonal to the third direction is A second storage unit that is less than the number of pixels in the second direction in the first storage unit;
Image data can be stored, and the number of pixels in the fifth direction is the same as the number of pixels in the third direction in the second storage unit, and the number of pixels in the sixth direction orthogonal to the fifth direction is A third storage unit having the same number of pixels in the fifth direction;
The image data stored in the first storage unit or the third storage unit is read and written to the second storage unit for each data of the number of pixels corresponding to a predetermined burst length, and stored in the second storage unit A read / write unit that reads the data to be read for each pixel number of data corresponding to a predetermined burst length and writes the data to the first storage unit or the third storage unit;
A first operation for reading the image data stored in the first storage unit for each first line data corresponding to the line in the first direction and writing for each line in the third direction in the second storage unit; The image data stored in the second storage unit after the first operation is divided into a plurality of second block data in the third direction to generate a plurality of second block data, and the plurality of second block data generated by the division Is read in the third direction and written in the fifth direction or the sixth direction of the third storage unit, and second block data stored in the third storage unit after the second operation Is read out along the direction orthogonal to the direction in which the second block data is written by the second operation out of the fifth direction and the sixth direction, and image rotation processing based on the second block data is performed. After going A third operation for writing the second block data subjected to the rotation process to the second storage unit along the third direction, and image data stored in the second storage unit after the third operation, A control unit that causes the read / write unit to sequentially execute a fourth operation of reading for each third line data corresponding to a line in the third direction and writing for each line in the first direction of the first storage unit; ,
An image rotation apparatus comprising:
前記第2記憶部は、第4方向の画素数が前記第1記憶部における第2方向の画素数に比べて、1/4(n=1,2,3、・・・)である
請求項1に記載の画像回転装置。
The number of pixels in the fourth direction of the second storage unit is 1/4 n (n = 1, 2, 3,...) Compared to the number of pixels in the second direction of the first storage unit. Item 2. The image rotation device according to Item 1.
請求項1又は2に記載の画像回転装置を備える画像形成装置。   An image forming apparatus comprising the image rotating device according to claim 1.
JP2011091851A 2011-04-18 2011-04-18 Image rotation device and image formation device Pending JP2012226463A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011091851A JP2012226463A (en) 2011-04-18 2011-04-18 Image rotation device and image formation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011091851A JP2012226463A (en) 2011-04-18 2011-04-18 Image rotation device and image formation device

Publications (1)

Publication Number Publication Date
JP2012226463A true JP2012226463A (en) 2012-11-15

Family

ID=47276580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011091851A Pending JP2012226463A (en) 2011-04-18 2011-04-18 Image rotation device and image formation device

Country Status (1)

Country Link
JP (1) JP2012226463A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60165694A (en) * 1984-02-09 1985-08-28 株式会社リコー Data rotary processing system
JPS60201477A (en) * 1984-03-26 1985-10-11 Nippon Telegr & Teleph Corp <Ntt> Document conversion and display device
JPH11154228A (en) * 1997-11-25 1999-06-08 Fuji Xerox Co Ltd Image processor and its method
JPH11306343A (en) * 1998-04-17 1999-11-05 Toshiba Corp Rotational processing device for two-dimensional data
JP2005102168A (en) * 2003-08-25 2005-04-14 Olympus Corp Image processing apparatus and its method
JP2008282135A (en) * 2007-05-09 2008-11-20 Sharp Corp Image processing apparatus, image reading apparatus, image forming apparatus, and image processing method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60165694A (en) * 1984-02-09 1985-08-28 株式会社リコー Data rotary processing system
JPS60201477A (en) * 1984-03-26 1985-10-11 Nippon Telegr & Teleph Corp <Ntt> Document conversion and display device
JPH11154228A (en) * 1997-11-25 1999-06-08 Fuji Xerox Co Ltd Image processor and its method
JPH11306343A (en) * 1998-04-17 1999-11-05 Toshiba Corp Rotational processing device for two-dimensional data
JP2005102168A (en) * 2003-08-25 2005-04-14 Olympus Corp Image processing apparatus and its method
JP2008282135A (en) * 2007-05-09 2008-11-20 Sharp Corp Image processing apparatus, image reading apparatus, image forming apparatus, and image processing method

Similar Documents

Publication Publication Date Title
US11755474B2 (en) Tile based interleaving and de-interleaving for digital signal processing
JP4448866B2 (en) Drawing device
CN107430759B (en) Virtual linebuffer for image signal processor
CN104981838B (en) Optimizing image memory access
WO2019216376A1 (en) Arithmetic processing device
JP5886638B2 (en) System, method and apparatus for image tile rotation using line segment read buffer
US7768678B2 (en) Systems, methods and devices for rotating images
JP2009295159A (en) Memory access method
CN108701102A (en) Direct memory access controller, method for reading data and method for writing data
JP2012226463A (en) Image rotation device and image formation device
US7979153B2 (en) Exposure data generating apparatus
JP2014174898A (en) Image data processing apparatus, image data processing method and image data processing program
JP5635551B2 (en) Image processing apparatus and image forming apparatus
JP2016134005A (en) Image processor
CN104850391A (en) Apparatus for mutple data sets and related method
JP5658612B2 (en) Image processing apparatus, image processing system, and image processing method
JP6241670B2 (en) Image processing device
JP2011188050A (en) Image processing method and apparatus, and image forming apparatus
JP2007272667A (en) Ring buffer device
JP2008236085A (en) Image processor
JP2008027077A (en) Memory management device, image processor, and image forming device
TW201600982A (en) System, method, and computer program product for generating a mobile application based on page metadata
US20100125748A1 (en) Remote data access device and remote data access method
JP2018205987A (en) Image processing device, image processing method and program
JP6008770B2 (en) Image forming apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140617