JP5135382B2 - Image processing device - Google Patents
Image processing device Download PDFInfo
- Publication number
- JP5135382B2 JP5135382B2 JP2010118395A JP2010118395A JP5135382B2 JP 5135382 B2 JP5135382 B2 JP 5135382B2 JP 2010118395 A JP2010118395 A JP 2010118395A JP 2010118395 A JP2010118395 A JP 2010118395A JP 5135382 B2 JP5135382 B2 JP 5135382B2
- Authority
- JP
- Japan
- Prior art keywords
- band
- block
- descriptor
- main memory
- pixel
- 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.)
- Active
Links
Images
Landscapes
- Image Input (AREA)
Description
本発明はディスクリプタを用いた画像データの記憶に関する。 The present invention relates to storage of image data using descriptors.
画像データのフィルタ処理(平滑化、拡大縮小、エッジ強調等)において、ページメモリに展開された画像データを、主走査方向に沿ったラインメモリに読み出してフィルタ処理をする場合に、ページメモリに展開された画像データをブロックに分割して、ブロック毎にフィルタ処理をする技術が提案されている(特許文献1参照)。この技術によれば画像データをブロック単位で処理するので、ラインメモリの主走査方向のサイズを小さくすることができる。 In image data filter processing (smoothing, enlargement / reduction, edge enhancement, etc.), when image data expanded in the page memory is read into the line memory along the main scanning direction and filtered, it is expanded in the page memory. There has been proposed a technique of dividing the processed image data into blocks and performing filter processing for each block (see Patent Document 1). According to this technique, since image data is processed in units of blocks, the size of the line memory in the main scanning direction can be reduced.
画像データ(例えば原稿をスキャナで読み取ることによって得られた画像データ)をメインメモリに格納する時、画像データが大きければ連続するアドレスの記憶領域を必ずしも確保できない。そこで、画像データを複数に分けて、アドレスが不連続な記憶領域に格納することにより、メモリ空間を効率的に利用している。この場合、アドレスが不連続な記憶領域に格納されたデータをつなげて元の画像データに戻すことができるように、ディスクリプタが用いられる(特許文献2参照)。 When image data (for example, image data obtained by reading a document with a scanner) is stored in the main memory, if the image data is large, it is not always possible to secure a storage area for continuous addresses. Therefore, the memory space is efficiently used by dividing the image data into a plurality of pieces and storing them in a storage area where the addresses are discontinuous. In this case, a descriptor is used so that data stored in storage areas with discontinuous addresses can be connected and returned to the original image data (see Patent Document 2).
ディスクリプタはアドレスが不連続な記憶領域に格納されたデータをつなげて元の画像データに戻すために用いられるが、メモリ空間を効率的に利用するために、一つの画像データに対してディスクリプタは大量(例えば数千)に割り当てられる。目的となるディスクリプタへのアクセス時間を短くできれば画像データを効率的に処理(例えばメインメモリに格納された各画素のデータへのアクセス時間の短縮)することができる。 Descriptors are used to connect the data stored in storage areas with discontinuous addresses and return to the original image data. However, in order to efficiently use the memory space, a large number of descriptors are used for one image data. (Eg thousands). If the access time to the target descriptor can be shortened, the image data can be processed efficiently (for example, the access time to the data of each pixel stored in the main memory).
本発明はメインメモリに格納されたディスクリプタへのアクセス時間を短くできる画像処理装置を提供することを目的とする。 It is an object of the present invention to provide an image processing apparatus that can shorten the access time to a descriptor stored in a main memory.
上記目的を達成する本発明の一の局面に係る画像処理装置は、メインメモリと、主走査方向及び副走査方向に並ぶ複数のブロック領域のそれぞれに割り当てられており、割り当てられたブロック領域についての主走査方向及び副走査方向の画素数並びに先頭の画素の座標の情報であるブロック領域情報を予め含んだ複数のブロックディスクリプタを処理するブロックディスクリプタ処理部と、前記ブロック領域よりも主走査方向の画素数が多くかつ副走査方向の画素数が少ない帯状のバンド領域であり、副走査方向に並ぶ複数のバンド領域のそれぞれに割り当てられた複数のバンドディスクリプタを処理するバンドディスクリプタ処理部と、前記メインメモリに格納する画像データについて、前記複数のバンド領域のそれぞれに対応する複数のバンド領域データに分けて処理をする処理部であって、前記バンド領域データを複数の分割データに分割して前記メインメモリにアドレスを異ならせて格納する処理を、前記複数のバンド領域データのそれぞれについて実行する分割処理部と、を備え、前記バンドディスクリプタ処理部は、前記メインメモリに前記画像データが格納される際に、前記バンド領域データに対応する前記バンド領域に割り当てられたバンドディスクリプタに対して、前記複数の分割データのそれぞれの先頭画素のデータの前記メインメモリ上のアドレスの情報及び前記複数の分割データのそれぞれの画素数の情報である分割データ情報を加えて前記メインメモリに格納する処理を、前記複数のバンドディスクリプタのそれぞれにおいて実行し、前記複数のバンドディスクリプタは順番付けられており、前記メインメモリに格納された前記複数のバンドディスクリプタのそれぞれは、次の順番のバンドディスクリプタの前記メインメモリ上のアドレスの情報を含み、前記ブロックディスクリプタ処理部は、前記メインメモリに前記画像データが格納される際に、前記ブロック領域の先頭の画素を含む前記バンド領域に割り当てられたバンドディスクリプタの前記メインメモリ上のアドレスをバンドディスクリプタ関係付けアドレスとした場合、当該バンドディスクリプタ関係付けアドレスの情報を含むブロックディスクリプタを前記メインメモリに格納する処理を、前記複数のブロックディスクリプタのそれぞれにおいて実行する。 An image processing apparatus according to an aspect of the present invention that achieves the above object is allocated to a main memory and each of a plurality of block areas arranged in the main scanning direction and the sub-scanning direction. A block descriptor processing unit for processing a plurality of block descriptors including block area information, which is information on the number of pixels in the main scanning direction and the sub-scanning direction, and the coordinates of the leading pixel, and pixels in the main scanning direction from the block area A band descriptor processing unit for processing a plurality of band descriptors each of which is a band-shaped band region having a large number of pixels and a small number of pixels in the sub-scanning direction and allocated to each of the plurality of band regions arranged in the sub-scanning direction; A plurality of image data to be stored in the plurality of band regions corresponding to each of the plurality of band regions A processing unit that performs processing by dividing into band area data, the process of dividing the band area data into a plurality of divided data and storing different addresses in the main memory, each of the plurality of band area data The band descriptor processing unit for the band descriptor assigned to the band region corresponding to the band region data when the image data is stored in the main memory. Then, the address information on the main memory of the data of the first pixel of each of the plurality of divided data and the divided data information which is information of the number of pixels of each of the plurality of divided data are added and stored in the main memory. A process is performed on each of the plurality of band descriptors, and the plurality of band descriptors are executed. The descriptors are ordered, and each of the plurality of band descriptors stored in the main memory includes address information on the main memory of the next sequential band descriptor, and the block descriptor processing unit When the image data is stored in the main memory, if the address on the main memory of the band descriptor assigned to the band area including the first pixel of the block area is a band descriptor association address, A process of storing a block descriptor including information on descriptor association addresses in the main memory is executed in each of the plurality of block descriptors.
本発明によれば、画像データを分割データに分割してメインメモリに格納する際に、複数のバンドディスクリプタ及び複数のブロックディスクリプタをメインメモリに格納している。メインメモリに格納される複数のブロックディスクリプタのそれぞれは、バンドディスクリプタ関係付けアドレスの情報を含む。したがって、ブロック領域の先頭の画素を含むバンド領域に割り当てられたバンドディスクリプタのアドレスを、そのブロック領域に割り当てられたブロックディスクリプタから知ることができる。 According to the present invention, when image data is divided into divided data and stored in the main memory, a plurality of band descriptors and a plurality of block descriptors are stored in the main memory. Each of the plurality of block descriptors stored in the main memory includes information on band descriptor association addresses. Therefore, the address of the band descriptor assigned to the band area including the first pixel of the block area can be known from the block descriptor assigned to the block area.
メインメモリに格納されている複数のバンドディスクリプタのそれぞれは、次の順番のバンドディスクリプタのメインメモリ上のアドレスの情報を含むので、ブロックディスクリプタを利用しなくても目的となるバンドディスクリプタへアクセスできる。しかし、この場合は1番目のバンドディスクリプタから順番にバンドディスクリプタを検索しなければならない。本発明によればブロックディスクリプタを利用することにより、途中のバンドディスクリプタから検索を開始して目的となるバンドディスクリプタへアクセスすることができる。したがって、バンドディスクリプタへのアクセス時間を短くすることが可能となる。 Each of the plurality of band descriptors stored in the main memory includes address information on the main memory of the next sequential band descriptor, so that the target band descriptor can be accessed without using the block descriptor. However, in this case, the band descriptors must be searched in order from the first band descriptor. According to the present invention, by using a block descriptor, it is possible to start a search from an intermediate band descriptor and access a target band descriptor. Accordingly, the access time to the band descriptor can be shortened.
上記構成において、前記複数のブロックディスクリプタは順番付けられていると共に前記複数のブロックディスクリプタのそれぞれについて、前記メインメモリ上のアドレスが予め割り当てられており、次の順番のブロックディスクリプタの前記メインメモリ上のアドレスの情報、前記ブロック領域情報及び前記バンドディスクリプタ関係付けアドレスの情報を含む前記複数のブロックディスクリプタが予め記憶されているブロックディスクリプタ記憶部を備え、前記ブロックディスクリプタ処理部は、前記メインメモリに前記画像データが格納される際に、前記ブロックディスクリプタ記憶部に記憶されている前記複数のブロックディスクリプタを読み出して前記メインメモリに格納することができる。 In the above configuration, the plurality of block descriptors are ordered and an address on the main memory is assigned in advance for each of the plurality of block descriptors, and the next block descriptor in the main memory on the main memory is assigned in advance. A block descriptor storage unit in which the plurality of block descriptors including address information, the block area information, and the band descriptor association address information are stored in advance, and the block descriptor processing unit stores the image in the main memory. When data is stored, the plurality of block descriptors stored in the block descriptor storage unit can be read and stored in the main memory.
この構成によれば、複数のブロックディスクリプタを予め作成してブロックディスクリプタ記憶部に記憶させているので、メインメモリに画像データが格納される際に複数のブロックディスクリプタを作成する場合に比べて、複数のブロックディスクリプタをメインメモリに格納する処理を速くすることができる。 According to this configuration, since a plurality of block descriptors are created in advance and stored in the block descriptor storage unit, a plurality of block descriptors are generated as compared with the case where a plurality of block descriptors are created when image data is stored in the main memory. The process of storing the block descriptor in the main memory can be speeded up.
上記構成において、前記メインメモリに格納されている前記画像データを基にして形成される画像について、n番目(nは正の整数)画素が位置する主走査方向及び副走査方向の座標を、前記画像の主走査方向の画素数を基にして演算する座標演算部と、前記メインメモリに格納されている前記複数のブロックディスクリプタを読み出すブロックディスクリプタ読出部と、前記座標演算部で演算された前記n番目画素の座標及び、前記ブロックディスクリプタ読出部によって読み出された前記複数のブロックディスクリプタのそれぞれに含まれるブロック領域情報を基にして、前記複数のブロック領域のうち前記n番目画素が属するブロック領域を特定するブロック領域特定部と、前記ブロック領域特定部で特定されたブロック領域に割り当てられたブロックディスクリプタについて、当該ブロックディスクリプタに含まれる前記バンドディスクリプタ関係付けアドレスに格納されているバンドディスクリプタを前記メインメモリから読み出すバンドディスクリプタ読出部と、を備えることができる。 In the above configuration, for an image formed on the basis of the image data stored in the main memory, the coordinates in the main scanning direction and the sub-scanning direction where the nth pixel (n is a positive integer) is located, A coordinate calculation unit for calculating based on the number of pixels in the main scanning direction of the image, a block descriptor reading unit for reading the plurality of block descriptors stored in the main memory, and the n calculated by the coordinate calculation unit Based on the coordinates of the th pixel and the block area information included in each of the plurality of block descriptors read by the block descriptor reading unit, the block area to which the nth pixel belongs among the plurality of block areas. The block area specifying unit to be specified and the block area specified by the block area specifying unit are allocated. The block descriptor, and the band descriptor reading unit for reading a band descriptors stored in the band descriptor association address contained in the block descriptor from the main memory may comprise.
この構成によれば、メインメモリに格納されているn番目画素のデータにバンドディスクリプタを利用してアクセスする場合に、n番目画素が属するブロック領域の先頭の画素を含むバンド領域に割り当てられたバンドディスクリプタから開始できる。 According to this configuration, when the data of the nth pixel stored in the main memory is accessed using the band descriptor, the band assigned to the band area including the first pixel of the block area to which the nth pixel belongs. You can start with a descriptor.
ここでn番目画素とは、画像において主走査方向に並ぶ画素を行とした場合、1行目の先頭の画素から1行目の最後の画素までを数え、次に2行目の先頭の画素から2行目の最後の画素までを数え、3行目以降も同様にして数えた順番である。 Here, when the pixels arranged in the main scanning direction in the image are rows, the n-th pixel is counted from the first pixel in the first row to the last pixel in the first row, and then the first pixel in the second row. To the last pixel in the second row, and the third and subsequent rows are counted in the same manner.
上記構成において、前記バンド領域の副走査方向の画素数、及び前記座標演算部で演算された前記n番目画素の副走査方向の座標を基にして、前記複数のバンド領域のうち前記n番目画素が属する前記バンド領域、及び当該バンド領域における前記n番目画素の副走査方向上の位置を特定するバンド領域特定部と、前記座標演算部で演算された前記n番目画素の主走査方向の座標、前記バンド領域特定部で特定された前記n番目画素の副走査方向上の位置、及び前記画像データの主走査方向の画素数を基にして、前記バンド領域特定部で特定された前記n番目画素が属する前記バンド領域の先頭の画素から前記n番目画素までの画素数を演算する画素数演算部と、前記バンドディスクリプタ読出部によって読み出されたバンドディスクリプタに含まれる分割データ情報、及び前記画素数演算部で演算された画素数を基にして、前記複数の分割データのうち前記n番目画素のデータが属する分割データを特定する分割データ特定部と、前記画素数演算部で演算された画素数を基にして、前記分割データ特定部で特定された分割データの先頭画素のデータの前記メインメモリ上のアドレスから前記n番目画素のデータの前記メインメモリ上のアドレスを特定するアドレス特定部と、を備えることができる。 In the above configuration, the nth pixel in the plurality of band regions based on the number of pixels in the subscanning direction of the band region and the coordinates of the nth pixel in the subscanning direction calculated by the coordinate calculation unit. A band region specifying unit that specifies a position of the n-th pixel in the sub-scanning direction in the band region, and a coordinate in the main scanning direction of the n-th pixel calculated by the coordinate calculation unit, The nth pixel specified by the band region specifying unit based on the position in the sub-scanning direction of the nth pixel specified by the band region specifying unit and the number of pixels in the main scanning direction of the image data A pixel number calculation unit for calculating the number of pixels from the first pixel of the band region to which the image belongs to the nth pixel, and the band descriptor read by the band descriptor reading unit A divided data specifying unit for specifying divided data to which the data of the nth pixel belongs among the plurality of divided data, based on the divided data information included and the number of pixels calculated by the pixel number calculating unit; Based on the number of pixels calculated by the pixel number calculation unit, the n-th pixel data on the main memory from the address on the main memory of the data of the first pixel of the divided data specified by the divided data specification unit An address specifying unit for specifying the address of the address.
この構成によれば、メインメモリに格納されているn番目画素のデータにアクセスする場合に、n番目画素が属するブロック領域の先頭の画素を含むバンド領域に割り当てられたバンドディスクリプタから開始している。したがって、1番目のバンドディスクリプタから順番にn番目画素のデータへアクセスする場合に比べて、n番目画素のデータへのアクセス時間を短くすることが可能となる。 According to this configuration, when accessing the data of the nth pixel stored in the main memory, it starts from the band descriptor assigned to the band area including the first pixel of the block area to which the nth pixel belongs. . Accordingly, it is possible to shorten the access time to the n-th pixel data as compared to the case where the n-th pixel data is accessed in order from the first band descriptor.
本発明によればメインメモリに格納されたディスクリプタへのアクセス時間を短くできる。 According to the present invention, it is possible to shorten the access time to the descriptor stored in the main memory.
以下、図面に基づいて本発明の実施形態を詳細に説明する。図1は本発明の一実施形態に係る画像処理装置1のハードウェア構成を示すブロック図である。画像処理装置1は複合機、コピー機等に適用されるものであり、CPU(Central Processing Unit)3、メインメモリ7、読み取り専用メモリ9及びASIC(Application Specific Integrated Circuit)11を備えており、これらはバス13により接続されている。また、画像処理装置1はラインセンサ5を備えており、専用バス14によりASIC11に接続されている。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing a hardware configuration of an
CPU3は画像処理装置1を動作させるために必要な制御を、画像処理装置1を構成する上記ハードウェアに対して実行する。ラインセンサ5は画像処理装置1のスキャナを構成する要素であり、原稿の画像を読み取り、画像データを出力する。ラインセンサ5は例えばCCD(Charge Coupled Device)センサにより実現される。
The
メインメモリ7はRAM(Random Access Memory)であり、ソフトウェアの実行時に発生するデータの一時的な記憶及びアプリケーションソフトの記憶等に利用される。メインメモリ7は例えばDRAM(Dynamic Random Access Memory)によって実現される。
The
読み取り専用メモリ9はROM(Read Only Memory)であり、画像処理装置1の動作の制御に必要なソフトウェア等を記憶している。読み取り専用メモリ9はフラッシュメモリ等により実現される。
The read-
ASIC11は画像処理専用であり、画像データの各種処理(フィルタ等)に用いられる。図1では本実施形態に関係する機能ブロックが示されている。ASIC11は分割処理部21、バンドディスクリプタ処理部23、ブロックディスクリプタ処理部25及び画素データアクセス部27を備える。これらを理解する前提として、バンド領域、ブロック領域、バンドディスクリプタ及びブロックディスクリプタについて説明する。
The ASIC 11 is dedicated to image processing and is used for various processing (filters and the like) of image data. FIG. 1 shows functional blocks related to the present embodiment. The ASIC 11 includes a
図2は本実施形態で用いられるブロック領域とバンド領域の概念図である。複数、例えば16個のブロック領域BL1〜BL16が主走査方向D1及び副走査方向D2に並べて配置されている。複数のブロック領域を区別する必要がある場合はブロック領域BL1〜BL16と記載し、区別する必要がない場合はブロック領域BLと記載する。主走査方向D1に4つのブロック領域BLが並べられており、副走査方向D2に4つのブロック領域BLが並べられている。各ブロック領域BLの主走査方向D1の画素数は同じであり、また各ブロック領域BLの副走査方向D2の画素数も同じである。したがって各ブロック領域BLの画素数(サイズ)は同じである。なお、本実施形態において、主走査方向D1をx方向、副走査方向D2をy方向と言い換えることもできる。 FIG. 2 is a conceptual diagram of a block area and a band area used in this embodiment. A plurality of, for example, 16 block areas BL1 to BL16 are arranged in the main scanning direction D1 and the sub-scanning direction D2. When it is necessary to distinguish a plurality of block areas, they are described as block areas BL1 to BL16, and when it is not necessary to distinguish between them, they are described as block areas BL. Four block areas BL are arranged in the main scanning direction D1, and four block areas BL are arranged in the sub scanning direction D2. Each block region BL has the same number of pixels in the main scanning direction D1, and each block region BL has the same number of pixels in the sub-scanning direction D2. Accordingly, the number of pixels (size) in each block region BL is the same. In the present embodiment, the main scanning direction D1 can also be referred to as the x direction and the sub scanning direction D2 as the y direction.
複数のバンド領域BAが副走査方向D2に沿って並べて配置されている。複数のバンド領域を区別する必要がある場合はバンド領域BA1,BA2,・・・と記載し、区別する必要がない場合はバンド領域BAと記載する。 A plurality of band areas BA are arranged side by side along the sub-scanning direction D2. When it is necessary to distinguish a plurality of band areas, they are described as band areas BA1, BA2,...
バンド領域BAは主走査方向D1に延びる帯状の領域であり、ブロック領域BLよりも主走査方向D1の画素数が多くかつ副走査方向D2の画素数が少ない。ラインセンサ5から出力された画像データのうち、予め定められた数の走査ライン(例えば64本の走査ライン)のスキャンで得られた画像データが、一つのバンド領域BAに相当する。したがって、バンド領域BAの主走査方向D1の画素数は画像データの主走査方向D1の画素数と同じであり、バンド領域BAの副走査方向D2の画素数は予め定められた走査ラインの数(例えば64本)と同じとなる。
The band area BA is a band-shaped area extending in the main scanning direction D1, and has a larger number of pixels in the main scanning direction D1 and a smaller number of pixels in the sub-scanning direction D2 than the block area BL. Of the image data output from the
主走査方向D1及び副走査方向D2に並べられた複数のブロック領域BLで規定される画素数と、副走査方向D2に並べられた複数のバンド領域BAで規定される画素数とは、等しく、ページメモリに展開された画像データの画素数に相当する。主走査方向D1のブロック領域BLどうしの境界(例えばブロック領域BL1〜BL4とブロック領域BL5〜BL8)上にはバンド領域BAが位置しないように、バンド領域BAの副走査方向D2の画素数及びブロック領域BLの副走査方向D2の画素数が決められる。 The number of pixels defined by the plurality of block areas BL arranged in the main scanning direction D1 and the sub-scanning direction D2 is equal to the number of pixels defined by the plurality of band areas BA arranged in the sub-scanning direction D2. This corresponds to the number of pixels of the image data developed in the page memory. The number of pixels and the blocks in the sub-scanning direction D2 of the band area BA so that the band area BA is not located on the boundaries between the block areas BL in the main scanning direction D1 (for example, the block areas BL1 to BL4 and the block areas BL5 to BL8). The number of pixels in the sub-scanning direction D2 of the region BL is determined.
図3は図2に示す複数のバンド領域BAのそれぞれに割り当てられた複数のバンドディスクリプタを示す図である。複数のバンドディスクリプタを区別する必要がある場合はバンドディスクリプタBAD1,BAD2,・・・と記載し、区別する必要がない場合はバンドディスクリプタBADと記載する。 FIG. 3 is a diagram showing a plurality of band descriptors assigned to each of the plurality of band areas BA shown in FIG. When it is necessary to distinguish a plurality of band descriptors, they are described as band descriptors BAD1, BAD2,..., And when it is not necessary to distinguish between them, they are described as band descriptors BAD.
複数のバンドディスクリプタBADは複数のバンド領域BAが副走査方向D2に並ぶ順番に従って順番が決められている。例えば、1番目のバンドディスクリプタBAD1はバンド領域BA1に割り当てられたバンドディスクリプタであり、2番目のバンドディスクリプタBAD2はバンド領域BA2に割り当てられたバンドディスクリプタであり、また、22番目のバンドディスクリプタBAD22はバンド領域BA22に割り当てられたバンドディスクリプタである。 The order of the plurality of band descriptors BAD is determined according to the order in which the plurality of band areas BA are arranged in the sub-scanning direction D2. For example, the first band descriptor BAD1 is a band descriptor assigned to the band area BA1, the second band descriptor BAD2 is a band descriptor assigned to the band area BA2, and the 22nd band descriptor BAD22 is a band descriptor. This is a band descriptor assigned to the area BA22.
画像データをメインメモリ7に格納する際に、複数のバンドディスクリプタBADはメインメモリ7に格納される。複数のバンドディスクリプタBADのそれぞれについて、メインメモリ7上のアドレスが予め決められている。例えばバンド領域BA1に割り当てられたバンドディスクリプタBAD1は、メインメモリ7上のアドレスAdd51が予め割り当てられている。
When the image data is stored in the
各バンドディスクリプタBADは次の順番のバンドディスクリプタBADのメインメモリ7上のアドレスの情報、並びに分割データ情報(複数の分割データのそれぞれの先頭画素のデータのメインメモリ7上のアドレスの情報及び複数の分割データのそれぞれの画素数の情報)を有する。分割データ情報については後で説明する。
Each band descriptor BAD includes address information on the
図4は図2に示す複数のブロック領域BLのそれぞれに割り当てられた複数のブロックディスクリプタを示す図である。複数のブロックディスクリプタを区別する必要がある場合はブロックディスクリプタBLD1,BLD2,・・・と記載し、区別する必要がない場合はブロックディスクリプタBLDと記載する。 FIG. 4 is a diagram showing a plurality of block descriptors assigned to each of the plurality of block areas BL shown in FIG. When it is necessary to distinguish a plurality of block descriptors, they are described as block descriptors BLD1, BLD2,..., And when it is not necessary to distinguish between them, they are described as block descriptors BLD.
複数のブロックディスクリプタBLDは複数のブロック領域BLの順番に従って順番が決められている。すなわち、1番目のブロックディスクリプタBLD1はブロック領域BL1に割り当てられたブロックディスクリプタであり、2番目のブロックディスクリプタBLD2はブロック領域BL2に割り当てられたブロックディスクリプタであり、・・・、16番目のブロックディスクリプタBLD16はブロック領域BL16に割り当てられたブロックディスクリプタである。 The order of the plurality of block descriptors BLD is determined according to the order of the plurality of block areas BL. That is, the first block descriptor BLD1 is a block descriptor assigned to the block area BL1, the second block descriptor BLD2 is a block descriptor assigned to the block area BL2,..., The 16th block descriptor BLD16. Is a block descriptor assigned to the block area BL16.
画像データをメインメモリ7に格納する際に、複数のブロックディスクリプタBLDはメインメモリ7に格納される。複数のブロックディスクリプタBLDのそれぞれについて、メインメモリ7上のアドレスが予め割り当てられている。例えばブロック領域BL1に割り当てられたブロックディスクリプタBLD1は、メインメモリ7上のアドレスAdd31が予め割り当てられている。
When the image data is stored in the
複数のブロックディスクリプタBLDのそれぞれは、次の順番のブロックディスクリプタBLDのメインメモリ7上のアドレスの情報、ブロック領域情報及びバンドディスクリプタ関係付けアドレスの情報を含む。それらの情報についブロックディスクリプタBLD5を例に説明する。次の順番のブロックディスクリプタBLDのメインメモリ7上のアドレスとは、ブロックディスクリプタBLD6のメインメモリ7上のアドレスAdd36である。
Each of the plurality of block descriptors BLD includes address information on the
ブロック領域情報はブロックディスクリプタBLDが割り当てられたブロック領域BLについての主走査方向D1及び副走査方向D2の画素数(サイズ)、並びに当該ブロック領域BLの先頭の画素の座標(開始座標)から構成される。本実施形態では各ブロック領域BLの主走査方向D1の画素数は同じであり、また各ブロック領域BLの副走査方向D2の画素数も同じである。先頭の画素の座標はブロックディスクリプタBLD5において、図2に示すようにブロック領域BL5の先頭の画素Pの主走査方向D1及び副走査方向D2の座標を指している。 The block area information is composed of the number (size) of pixels in the main scanning direction D1 and sub-scanning direction D2 for the block area BL to which the block descriptor BLD is assigned, and the coordinates (starting coordinates) of the first pixel in the block area BL. The In this embodiment, the number of pixels in the main scanning direction D1 of each block region BL is the same, and the number of pixels in the sub-scanning direction D2 of each block region BL is also the same. The coordinates of the first pixel in the block descriptor BLD5 indicate the coordinates in the main scanning direction D1 and the sub-scanning direction D2 of the first pixel P in the block region BL5 as shown in FIG.
バンドディスクリプタ関係付けアドレスの情報とは、ブロックディスクリプタBLDが割り当てられているブロック領域BLの先頭の画素を含むバンド領域BAに割り当てられたバンドディスクリプタBADのメインメモリ7上のアドレスの情報である。図2に示すようにブロック領域BL5の先頭の画素Pはバンド領域BA22に位置するので、バンド領域BA22に割り当てられたバンドディスクリプタBAD22のメインメモリ7上のアドレスAdd72を意味する。以上がバンド領域BA、ブロック領域BL、バンドディスクリプタBAD及びブロックディスクリプタBLDの説明である。
The band descriptor association address information is information on the address on the
図1に示すASIC11に含まれる分割処理部21はメインメモリ7に格納する画像データについて、図2に示す複数のバンド領域BAのそれぞれに対応する複数のバンド領域データに分けて処理をする処理部である。分割処理部21はバンド領域データを複数の分割データに分割してメインメモリ7にアドレスを異ならせて格納する処理を、複数のバンド領域データのそれぞれについて実行する。
The
分割処理部21での処理についてバンド領域BA22を例にして説明する。図5はメインメモリ7に格納する画像データのうち、バンド領域BA22に対応する画像データであるバンド領域データM22を示す図である。バンド領域データはバンド領域BAに対応しており、例えばバンド領域データM1はバンド領域BA1に対応し、バンド領域データM2はバンド領域BA2に対応する。複数のバンド領域データを区別する必要がある場合はバンド領域データM1,M2,・・・と記載し、区別する必要がない場合はバンド領域データMと記載する。
The processing in the
分割処理部21はバンド領域データM22を複数の分割データ、例えば5つの分割データm1〜m5に分割してメインメモリ7にアドレスを異ならせて格納する。このように画像データを細かく分割して、メインメモリ7の空いているアドレスに格納することにより、メインメモリ7のメモリ空間を有効利用することができる。
The
バンドディスクリプタ処理部23は図2に示す複数のバンド領域BAのそれぞれに割り当てられた複数のバンドディスクリプタBADを処理する。具体的には、バンドディスクリプタ処理部23は、メインメモリ7に画像データが格納される際に、バンド領域データMに対応するバンド領域BAに割り当てられたバンドディスクリプタBADに対して、分割データ情報を加えてメインメモリ7に格納する処理を、複数のバンドディスクリプタBADのそれぞれにおいて実行する。
The band
分割データ情報とは複数の分割データのそれぞれの先頭画素のデータのメインメモリ7上のアドレスの情報及び複数の分割データのそれぞれの画素数の情報である。これを図5に示すバンド領域データM22を例に説明する。分割データm1〜m5の先頭の画素をそれぞれ、先頭画素p1〜p5とする。ここで、分割データm1の先頭画素p1は図2に示すブロック領域BL5の先頭の画素Pと一致し、図示しないがバンド領域BA22の先頭の画素と一致する。
The divided data information is information on the address on the
バンド領域データM22の分割データ情報は、分割データm1の先頭画素p1のデータが格納されているメインメモリ7上のアドレス及び分割データm1に対応する領域の画素数(例えば10000)、分割データm2の先頭画素p2のデータが格納されているメインメモリ7上のアドレス及び分割データm2に対応する領域の画素数(例えば20000)、・・・、分割データm5の先頭画素p5のデータが格納されているメインメモリ7上のアドレス及び分割データm5に対応する領域の画素数により構成される。
The divided data information of the band area data M22 includes the address on the
バンドディスクリプタ処理部23は記憶部29を備える。記憶部29には図3に示す複数のバンドディスクリプタBADのテンプレートが予め記憶されている。このテンプレートは複数のバンドディスクリプタBADのそれぞれが、次のバンドディスクリプタBADのメインメモリ7上のアドレスの情報を有するが、分割データを有さないものである。バンドディスクリプタ処理部23はバンド領域データMの分割データ情報を、記憶部29に記憶されているバンドディスクリプタBADのテンプレートに付加する処理をして、図3に示すバンドディスクリプタBADを生成してメインメモリ7に格納する。
The band
図3に示すように、各バンドディスクリプタBADは次の順番のバンドディスクリプタのメインメモリ7上のアドレスの情報及び分割データ情報を有する。したがって、バンドディスクリプタBAD1を読み出して、バンドディスクリプタBAD1に含まれる分割データ情報を基にして、複数の分割データをつなげてバンド領域データM1とし、次にバンドディスクリプタBAD2を読み出して、バンドディスクリプタBAD2に含まれる分割データ情報を基にして、複数の分割データをつなげてバンド領域データM2とし、残りのバンドディスクリプタBADについても同じ処理を繰り返すことにより、メインメモリ7に格納される前の画像データに戻すことができる。
As shown in FIG. 3, each band descriptor BAD has address information and divided data information on the
ブロックディスクリプタ処理部25はメインメモリ7に画像データが格納される際に、バンドディスクリプタ関係付けアドレスの情報を含むブロックディスクリプタBLDをメインメモリ7に格納する処理を、複数のブロックディスクリプタBLDのそれぞれにおいて実行する。ブロックディスクリプタ処理部25は記憶部31(ブロックディスクリプタ記憶部の一例)を備える。記憶部31には図4に示す複数のブロックディスクリプタBLD(次の順番のブロックディスクリプタのメインメモリ7上のアドレスの情報、ブロック領域情報及びバンドディスクリプタ関係付けアドレスの情報を含む複数のブロックディスクリプタBLD)が予め記憶されている。図4に示す複数のブロックディスクリプタBLDを読み取り専用メモリ9に記憶させてもよい。
When image data is stored in the
なお、バンドディスクリプタ関係付けアドレス情報を含まないブロックディスクリプタBLDを記憶部31に予め記憶させ、ブロックディスクリプタ処理部25はブロックディスクリプタBLDを記憶部31から読み出して、ブロックディスクリプタBLDにバンドディスクリプタ関係付けアドレス情報を付加して、メインメモリ7に格納する処理をしてもよい。
The block descriptor BLD that does not include the band descriptor association address information is stored in the
画素データアクセス部27は分割データに分割されてメインメモリ7に格納されている画像データについて、画像を構成する各画素のデータである画素データへのアクセス処理をする。画素データアクセス部27は座標演算部33、ブロック領域特定部35、バンドディスクリプタ読出部37、ブロックディスクリプタ読出部39、バンド領域特定部41、画素数演算部43、分割データ特定部45及びアドレス特定部47を備える。
The pixel
座標演算部33はアクセス対象となる画素データに対応する画素について、主走査方向D1及び副走査方向D2の座標を演算する。すなわち、座標演算部33はメインメモリ7に格納されている画像データを基にして形成される画像について、n番目(nは正の整数)画素が位置する主走査方向D1及び副走査方向D2の座標を、その画像の主走査方向D1の画素数を基にして演算する。
The coordinate
ブロック領域特定部35はn番目画素が属するブロック領域BLを特定する。詳細に説明すると、ブロック領域特定部35は座標演算部33で演算されたn番目画素の座標及び、メインメモリ7から読み出された複数のブロックディスクリプタBLDのそれぞれに含まれるブロック領域情報を基にして、複数のブロック領域BLのうちn番目画素が属するブロック領域BLを特定する。
The block
バンドディスクリプタ読出部37はブロック領域特定部35で特定されたブロック領域BLに割り当てられたブロックディスクリプタBLDについて、そのブロックディスクリプタBLDに含まれるバンドディスクリプタ関係づけアドレスに格納されているバンドディスクリプタBADをメインメモリ7から読み出す。
For the block descriptor BLD assigned to the block area BL specified by the block
ブロックディスクリプタ読出部39はメインメモリ7に格納されている複数のブロックディスクリプタを読み出す。
The block
バンド領域特定部41は複数のバンド領域BAのうちn番目画素が属するバンド領域BA、及びそのバンド領域BAにおけるn番目画素の副走査方向D2上の位置を特定する。
The band
画素数演算部43はバンド領域特定部41で特定されたn番目画素が属するバンド領域BAの先頭の画素からn番目画素までの画素数を演算する。
The pixel
分割データ特定部45はバンドディスクリプタ読出部37によって読み出されたバンドディスクリプタBADに含まれる分割データ情報において、複数の分割データのうちn番目画素のデータが属する分割データを特定する。
The divided
アドレス特定部47は分割データ特定部45で特定された分割データの先頭画素のデータのメインメモリ7上のアドレスからn番目画素のデータのメインメモリ7上のアドレスを特定する。
The
次に、本実施形態に係る画像処理装置1を用いて画像データをメインメモリ7へ格納する処理について説明する。図6はこの処理を説明するフローチャートである。図1に示すラインセンサ5によって主走査方向D1に原稿を走査して、1走査ラインずつ原稿を読み取ることにより、ラインセンサ5から原稿の画像データが出力される(ステップS1)。
Next, processing for storing image data in the
ブロックディスクリプタ処理部25は記憶部31に記憶されている図4に示す複数のブロックディスクリプタBLDを読み出して、各ブロックディスクリプタBLDをメインメモリ7上の予め割り当てられたアドレスに格納する(ステップS3)。
The block
ステップS1において、ラインセンサ5から出力された画像データのうち、予め定められた数の走査ライン(例えば64本の走査ライン)のスキャンで得られた画像データが、バンド領域データMに相当する。ラインセンサ5から出力された画像データは分割処理部21へ送られる。バンド領域データM1(バンド領域BA1に対応)が分割処理部21のバッファに蓄積されると、分割処理部21はバンド領域データM1を複数の分割データに分割してメインメモリ7にアドレスを異ならせて格納する処理をする(ステップS5)。
In step S <b> 1, image data obtained by scanning a predetermined number of scanning lines (for example, 64 scanning lines) among the image data output from the
バンドディスクリプタ処理部23は記憶部29に格納されているバンドディスクリプタBAD1のテンプレートを読み出して、バンド領域データM1を構成する複数の分割データに関する分割データ情報を付加して、メインメモリ7に格納する(ステップS7)。
The band
分割処理部21は、分割処理部21のバッファに次のバンド領域データM(ここではバンド領域データM2)が蓄積されているか判断する(ステップS9)。分割処理部21によって次のバンド領域データMが蓄積していると判断されれば(ステップS9でYes)、ステップS5へ戻る。これに対して、分割処理部21によって次のバンド領域データMが蓄積していないと判断されれば(ステップS9でNo)、すなわち最後のバンド領域データMについてステップS5,S7の処理がされれば、画像データをメインメモリ7へ格納する処理が終了する。
The
以上説明したように本実施形態に係る画像処理装置1よれば、画像データを分割データに分割してメインメモリ7に格納する際に、複数のバンドディスクリプタBAD及び複数のブロックディスクリプタBLDをメインメモリ7に格納している。メインメモリ7に格納される複数のブロックディスクリプタBLDのそれぞれは、バンドディスクリプタ関係付けアドレスの情報を含む。したがって、ブロック領域BLの先頭の画素を含むバンド領域BAに割り当てられたバンドディスクリプタBADのアドレスを、そのブロック領域BLに割り当てられたブロックディスクリプタBLDから知ることができる。
As described above, according to the
メインメモリ7に格納されている複数のバンドディスクリプタBADのそれぞれは、次の順番のバンドディスクリプタBADのメインメモリ7上のアドレスの情報を含むので、ブロックディスクリプタBLDを利用しなくても目的となるバンドディスクリプタBADへアクセスできる。しかし、この場合は1番目のバンドディスクリプタBADから順番にバンドディスクリプタBADを検索しなければならない。本実施形態によればブロックディスクリプタBLDを利用することにより、途中のバンドディスクリプタBADから検索を開始して目的となるバンドディスクリプタBADへアクセスすることができる。したがって、バンドディスクリプタBADへのアクセス時間を短くすることが可能となる。
Each of the plurality of band descriptors BAD stored in the
また、ステップS3で説明したように、複数のブロックディスクリプBLDを予め作成して記憶部31(ブロックディスクリプタ記憶部)に記憶させているので、メインメモリ7に画像データが格納される際に複数のブロックディスクリプタBLDを作成する場合に比べて、複数のブロックディスクリプタBLDをメインメモリ7に格納する処理を速くすることができる。
Further, as described in step S3, since a plurality of block descriptors BLD are created in advance and stored in the storage unit 31 (block descriptor storage unit), a plurality of pieces of image data are stored when the
次に、メインメモリ7に格納されている画像データに含まれるn番目(nは正の整数)画素のデータへのアクセスについて説明する。図7はこのアクセスを説明するフローチャートである。ここでは、n番目画素を70万番目画素、画像データの主走査方向D1の画素数(言い換えればバンド領域BAの主走査方向D1の画素数)を500、バンド領域データMに相当する走査ラインの数を64本とする。
Next, access to the data of the nth pixel (n is a positive integer) included in the image data stored in the
座標演算部33はメインメモリ7に格納されている画像データによって形成される画像について、70万番目画素が位置する主走査方向D1及び副走査方向D2の座標を、画像データの主走査方向D1の画素数(500)を基にして演算する(ステップS21)。
700000÷500=1400
1400は主走査方向D1の座標(x座標)が0、副走査方向D2の座標(y座標)が1400を意味している。したがって、図2に示すように70万番目画素Qが位置する座標は(0、1400)である。
The coordinate
700,000 ÷ 500 = 1400
1400 means that the coordinate (x coordinate) in the main scanning direction D1 is 0, and the coordinate (y coordinate) in the sub scanning direction D2 is 1400. Therefore, as shown in FIG. 2, the coordinates where the 700,000th pixel Q is located are (0, 1400).
ブロックディスクリプタ読出部39は上記画像データの複数のブロックディスクリプタBLDをメインメモリ7から読み出す(ステップS23)。
The block
ブロック領域特定部35はステップS21で演算された70万番目画素Qの座標(0、1400)、及びステップS23で読み出された複数のブロックディスクリプタBLDのそれぞれに含まれるブロック領域情報を基にして、複数のブロック領域BLのうち70万番目画素Qが属するブロック領域BLを特定する(ステップS25)。
The block
図2に示すように、主走査方向D1のブロック領域BLの数は4であり、ブロック領域BLの副走査方向D2の画素数は21個のバンド領域BAの副走査方向D2の画素数である。したがって、図4に示すブロック領域情報は各ブロック領域BLについて、主走査方向D1の画素数は125(=500÷4)、副走査方向D2の画素数は1344(=64×21)である。 As shown in FIG. 2, the number of block areas BL in the main scanning direction D1 is 4, and the number of pixels in the sub-scanning direction D2 of the block area BL is the number of pixels in the sub-scanning direction D2 of 21 band areas BA. . Therefore, in the block area information shown in FIG. 4, for each block area BL, the number of pixels in the main scanning direction D1 is 125 (= 500/4), and the number of pixels in the sub-scanning direction D2 is 1344 (= 64 × 21).
70万番目画素Qが位置する座標は(0、1400)である(ステップS21)。主走査方向D1において、以下の関係が成立する。
0<125
したがって、主走査方向D1の座標が0の場合、ブロック領域BL1,BL5,BL9,BL13のいずれかに属することになる。
The coordinates where the 700,000th pixel Q is located are (0, 1400) (step S21). The following relationship is established in the main scanning direction D1.
0 <125
Therefore, when the coordinate in the main scanning direction D1 is 0, it belongs to one of the block areas BL1, BL5, BL9, BL13.
副走査方向D2において、以下の関係が成立する。
1344<1400<2688
したがって、副走査方向D2の座標が1400の場合、ブロック領域BL5,BL6,BL7,BL8のいずれかに属することになる。
The following relationship is established in the sub-scanning direction D2.
1344 <1400 <2688
Therefore, when the coordinate in the sub-scanning direction D2 is 1400, it belongs to one of the block areas BL5, BL6, BL7, and BL8.
主走査方向D1及び副走査方向D2のいずれにもブロック領域BL5があるので、70番目画素Qは図2に示すようにブロック領域BL5に属する。 Since there is a block region BL5 in both the main scanning direction D1 and the sub-scanning direction D2, the 70th pixel Q belongs to the block region BL5 as shown in FIG.
次に、バンドディスクリプタ読出部37は、ステップS25で特定されたブロック領域BL5に割り当てられたブロックディスクリプタBLD5について、ブロックディスクリプタBLD5に含まれるバンドディスクリプタ関係づけアドレスAdd72に格納されているバンドディスクリプタBAD22をメインメモリ7から読み出す(ステップS27)。
Next, the band
次に、バンド領域特定部41は複数のバンド領域BAのうち70万番目画素Qが属するバンド領域BA、及びそのバンド領域BAにおける70万番目画素Qの副走査方向D2上の位置を特定する(ステップS29)。70万番目画素Qの副走査方向D2上の位置とは、そのバンド領域BAにおいて70万番目画素Qが位置する行を意味する。ステップS29の特定はバンド領域BAの副走査方向D2の画素数64、及びステップS21で演算された70万番目画素Qの副走査方向D2の座標1400を基にして実行される。
1400÷64=21.875
21.875は21個のバンド領域BA+0.875個のバンド領域BAを意味する。したがって、70万番目画素Qは22番目のバンド領域BAであるバンド領域BA22に属している。バンド領域BA22における70万番目画素の副走査方向D2の位置は、バンド領域BA22の56(=64×0.875)行目となる。
Next, the band
1400 ÷ 64 = 21.875
21.875 means 21 band areas BA + 0.875 band areas BA. Therefore, the 700,000th pixel Q belongs to the band area BA22 which is the 22nd band area BA. The position of the 700,000th pixel in the band area BA22 in the sub-scanning direction D2 is the 56th (= 64 × 0.875) line of the band area BA22.
次に、画素数演算部43はステップS29で特定された70万番目画素Qが属するバンド領域BA22の先頭の画素(すなわち分割データm1の先頭画素p1)から70万番目画素Qまでの画素数を演算する(ステップS31)。この演算はステップS21で演算された70万番目画素Qの主走査方向D1の座標0、ステップS29で特定された副走査方向D2の位置(56行目)、及び画像データの主走査方向D1の画素数(言い換えればバンド領域BAの主走査方向D1の画素数)500を基にして実行される。
0+500×56=28000
28000がステップS31で演算された画素数である。
Next, the pixel
0 + 500 × 56 = 28000
28000 is the number of pixels calculated in step S31.
次に、ステップS27で読み出された図3に示すバンドディスクリプタBAD22に含まれる分割データ情報を利用して、分割データ特定部45は複数の分割データm1〜m5のうち70万番目画素データQが属する分割データを特定する(ステップS33)。その特定はバンドディスクリプタBAD22の分割データ情報に含まれる複数の分割データm1〜m5のそれぞれの画素数(図5)、及びステップ31で演算された画素数28000を基にして実行される。
10000(分割データm1の画素数)<28000
70万番目画素Qのデータは分割データm1に属さない。
10000+20000(分割データm2の画素数)>28000
したがって、70万番目画素Qのデータは図5に示すように分割データm2に属する。
Next, using the divided data information included in the band descriptor BAD22 shown in FIG. 3 read in step S27, the divided
10000 (number of pixels of the divided data m1) <28000
The data of the 700,000th pixel Q does not belong to the divided data m1.
10000 + 20000 (number of pixels of the divided data m2)> 28000
Therefore, the data of the 700,000th pixel Q belongs to the divided data m2 as shown in FIG.
次に、アドレス特定部47は分割データm2の先頭画素p2のデータのメインメモリ7上のアドレスから70万番目画素Qのデータのメインメモリ7上のアドレスを特定する(ステップS35)。この特定はステップS31で演算された画素数28000を基にして実行される。
Next, the
ここでは、先頭画素p2のデータのメインメモリ7上のアドレスから18000(=28000−10000)番目の画素のデータのメインメモリ7上のアドレスが、70万番目画素Qのデータのアドレスである。
Here, the address on the
以上説明したように、本実施形態によれば、メインメモリ7に格納されているn番目画素のデータに対してバンドディスクリプタBADを利用してアクセスする場合に、ブロックディスクリプタBLDを利用することによって、n番目画素が属するブロック領域BLの先頭の画素を含むバンド領域BAに割り当てられたバンドディスクリプタBADから開始できる。一方、もしブロックディスクリプタBLDを利用しなければ、1番目のバンドディスクリプタBADから順番にn番目画素のデータに対応するバンドディスクリプタBADを検索してn番目画素のデータへアクセスしなければならない。バンドディスクリプタBADの数は例えば数千なので、ブロックディスクリプタBLDの数(例えば10から数十)よりも相当多い。したがって、本実施形態によればブロックディスクリプタBLDを用いない場合よりも、n番目画素のデータへのアクセス時間を短くすることができる。
As described above, according to the present embodiment, when accessing the data of the nth pixel stored in the
1 画像処理装置
31 記憶部(ブロックディスクリプタ記憶部の一例)
BL,BL1〜BL16 ブロック領域
BA,BA1,BA2,BA21,BA22 バンド領域
BLD,BLD1〜BLD16 ブロックディスクリプタ
BAD,BAD1〜BAD3,BAD21〜BAD23 バンドディスクリプタ
P ブロック領域BL5の先頭の画素
M22 バンド領域データ
m1〜m5 分割データ
Q 70万番目画素
1
BL, BL1 to BL16 Block area BA, BA1, BA2, BA21, BA22 Band area BLD, BLD1 to BLD16 Block descriptor BAD, BAD1 to BAD3, BAD21 to BAD23 Band descriptor P First pixel M22 of block area BL5 Band area data m1 m5 divided data Q 700,000th pixel
Claims (4)
主走査方向及び副走査方向に並ぶ複数のブロック領域のそれぞれに割り当てられており、割り当てられたブロック領域についての主走査方向及び副走査方向の画素数並びに先頭の画素の座標の情報であるブロック領域情報を予め含んだ複数のブロックディスクリプタを処理するブロックディスクリプタ処理部と、
前記ブロック領域よりも主走査方向の画素数が多くかつ副走査方向の画素数が少ない帯状のバンド領域であり、副走査方向に並ぶ複数のバンド領域のそれぞれに割り当てられた複数のバンドディスクリプタを処理するバンドディスクリプタ処理部と、
前記メインメモリに格納する画像データについて、前記複数のバンド領域のそれぞれに対応する複数のバンド領域データに分けて処理をする処理部であって、前記バンド領域データを複数の分割データに分割して前記メインメモリにアドレスを異ならせて格納する処理を、前記複数のバンド領域データのそれぞれについて実行する分割処理部と、を備え、
前記バンドディスクリプタ処理部は、前記メインメモリに前記画像データが格納される際に、前記バンド領域データに対応する前記バンド領域に割り当てられたバンドディスクリプタに対して、前記複数の分割データのそれぞれの先頭画素のデータの前記メインメモリ上のアドレスの情報及び前記複数の分割データのそれぞれの画素数の情報である分割データ情報を加えて前記メインメモリに格納する処理を、前記複数のバンドディスクリプタのそれぞれにおいて実行し、
前記複数のバンドディスクリプタは順番付けられており、前記メインメモリに格納された前記複数のバンドディスクリプタのそれぞれは、次の順番のバンドディスクリプタの前記メインメモリ上のアドレスの情報を含み、
前記ブロックディスクリプタ処理部は、前記メインメモリに前記画像データが格納される際に、前記ブロック領域の先頭の画素を含む前記バンド領域に割り当てられたバンドディスクリプタの前記メインメモリ上のアドレスをバンドディスクリプタ関係付けアドレスとした場合、当該バンドディスクリプタ関係付けアドレスの情報を含むブロックディスクリプタを前記メインメモリに格納する処理を、前記複数のブロックディスクリプタのそれぞれにおいて実行する、画像処理装置。 Main memory,
A block area that is assigned to each of a plurality of block areas arranged in the main scanning direction and the sub-scanning direction, and is information on the number of pixels in the main scanning direction and the sub-scanning direction and the coordinates of the leading pixel for the assigned block area A block descriptor processing unit for processing a plurality of block descriptors including information in advance;
A band-shaped band area with a larger number of pixels in the main scanning direction and a smaller number of pixels in the sub-scanning direction than the block area, and processes a plurality of band descriptors assigned to each of the plurality of band areas arranged in the sub-scanning direction A band descriptor processing unit,
A processing unit that processes the image data stored in the main memory by dividing it into a plurality of band area data corresponding to each of the plurality of band areas, and dividing the band area data into a plurality of divided data. A division processing unit that executes processing for storing the different addresses in the main memory for each of the plurality of band area data,
The band descriptor processing unit, when the image data is stored in the main memory, with respect to a band descriptor assigned to the band area corresponding to the band area data, In each of the plurality of band descriptors, a process of adding pixel data data address information on the main memory and divided data information that is information on the number of pixels of each of the plurality of divided data to be stored in the main memory is performed in each of the plurality of band descriptors. Run,
The plurality of band descriptors are ordered, and each of the plurality of band descriptors stored in the main memory includes address information on the main memory of a band descriptor in the next order,
When the image data is stored in the main memory, the block descriptor processing unit assigns an address on the main memory of a band descriptor assigned to the band area including the first pixel of the block area. An image processing apparatus that executes a process of storing, in the main memory, a block descriptor including information on the band descriptor association address in each of the plurality of block descriptors.
前記ブロックディスクリプタ処理部は、前記メインメモリに前記画像データが格納される際に、前記ブロックディスクリプタ記憶部に記憶されている前記複数のブロックディスクリプタを読み出して前記メインメモリに格納する請求項1に記載の画像処理装置。 The plurality of block descriptors are ordered and an address on the main memory is assigned in advance for each of the plurality of block descriptors, and information on the address on the main memory of the next block descriptor, A block descriptor storage unit in which the plurality of block descriptors including the block area information and the information of the band descriptor association address are stored in advance;
The block descriptor processing unit reads out the plurality of block descriptors stored in the block descriptor storage unit and stores them in the main memory when the image data is stored in the main memory. Image processing apparatus.
前記メインメモリに格納されている前記複数のブロックディスクリプタを読み出すブロックディスクリプタ読出部と、
前記座標演算部で演算された前記n番目画素の座標及び、前記ブロックディスクリプタ読出部によって読み出された前記複数のブロックディスクリプタのそれぞれに含まれるブロック領域情報を基にして、前記複数のブロック領域のうち前記n番目画素が属するブロック領域を特定するブロック領域特定部と、
前記ブロック領域特定部で特定されたブロック領域に割り当てられたブロックディスクリプタについて、当該ブロックディスクリプタに含まれる前記バンドディスクリプタ関係付けアドレスに格納されているバンドディスクリプタを前記メインメモリから読み出すバンドディスクリプタ読出部と、を備える請求項1又は2に記載の画像処理装置。 With respect to an image formed based on the image data stored in the main memory, coordinates in the main scanning direction and the sub-scanning direction in which the nth pixel (n is a positive integer) is located are used as the main scanning of the image. A coordinate calculation unit that calculates based on the number of pixels in the direction;
A block descriptor reading unit for reading the plurality of block descriptors stored in the main memory;
Based on the coordinates of the n-th pixel calculated by the coordinate calculation unit and the block region information included in each of the plurality of block descriptors read by the block descriptor reading unit, A block region specifying unit for specifying a block region to which the nth pixel belongs,
A band descriptor reading unit that reads out, from the main memory, a band descriptor stored in the band descriptor association address included in the block descriptor for the block descriptor assigned to the block region specified by the block region specifying unit; The image processing apparatus according to claim 1, further comprising:
前記座標演算部で演算された前記n番目画素の主走査方向の座標、前記バンド領域特定部で特定された前記n番目画素の副走査方向上の位置、及び前記画像データの主走査方向の画素数を基にして、前記バンド領域特定部で特定された前記n番目画素が属する前記バンド領域の先頭の画素から前記n番目画素までの画素数を演算する画素数演算部と、
前記バンドディスクリプタ読出部によって読み出されたバンドディスクリプタに含まれる分割データ情報、及び前記画素数演算部で演算された画素数を基にして、前記複数の分割データのうち前記n番目画素のデータが属する分割データを特定する分割データ特定部と、
前記画素数演算部で演算された画素数を基にして、前記分割データ特定部で特定された分割データの先頭画素のデータの前記メインメモリ上のアドレスから前記n番目画素のデータの前記メインメモリ上のアドレスを特定するアドレス特定部と、を備える請求項3に記載の画像処理装置。 The band to which the nth pixel belongs among the plurality of band regions, based on the number of pixels in the subscanning direction of the band region and the coordinates of the nth pixel calculated in the coordinate calculation unit. A band region specifying unit that specifies a region and a position in the sub-scanning direction of the n-th pixel in the band region;
The coordinates in the main scanning direction of the nth pixel calculated by the coordinate calculation unit, the position in the sub-scanning direction of the nth pixel specified by the band area specifying unit, and the pixel in the main scanning direction of the image data A pixel number calculation unit that calculates the number of pixels from the first pixel of the band region to which the nth pixel specified by the band region specifying unit belongs to the nth pixel, based on the number;
Based on the divided data information included in the band descriptor read by the band descriptor reading unit and the number of pixels calculated by the pixel number calculating unit, the data of the nth pixel among the plurality of divided data is A divided data specifying unit for specifying the divided data to which it belongs;
Based on the number of pixels calculated by the pixel number calculation unit, the main memory of the nth pixel data from the address on the main memory of the data of the first pixel of the divided data specified by the divided data specifying unit The image processing apparatus according to claim 3, further comprising: an address specifying unit that specifies an upper address.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010118395A JP5135382B2 (en) | 2010-05-24 | 2010-05-24 | Image processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010118395A JP5135382B2 (en) | 2010-05-24 | 2010-05-24 | Image processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011248447A JP2011248447A (en) | 2011-12-08 |
JP5135382B2 true JP5135382B2 (en) | 2013-02-06 |
Family
ID=45413668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010118395A Active JP5135382B2 (en) | 2010-05-24 | 2010-05-24 | Image processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5135382B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6002649B2 (en) * | 2013-10-01 | 2016-10-05 | 京セラドキュメントソリューションズ株式会社 | Image processing device |
JP7249504B2 (en) * | 2019-06-21 | 2023-03-31 | 京セラドキュメントソリューションズ株式会社 | Image processing device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108801A (en) * | 2000-09-29 | 2002-04-12 | Ricoh Co Ltd | Information processor, image reader, image forming apparatus, method for storing image data and method for dma transfer |
JP3967074B2 (en) * | 2000-09-29 | 2007-08-29 | 株式会社リコー | Image processing apparatus and image forming apparatus |
JP4184631B2 (en) * | 2001-06-28 | 2008-11-19 | 株式会社沖データ | Printing control method and host / printing apparatus |
-
2010
- 2010-05-24 JP JP2010118395A patent/JP5135382B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011248447A (en) | 2011-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011059819A (en) | Information processing method and apparatus | |
KR101465035B1 (en) | Information processing apparatus and information processing method | |
CN106447607A (en) | Image stitching method and apparatus | |
JP5061314B2 (en) | Image forming apparatus and image forming program | |
US8953904B2 (en) | Image processing apparatus and method of operating image processing apparatus | |
JP2010187169A (en) | Image processing apparatus, and image processing method thereof | |
JP5135382B2 (en) | Image processing device | |
JP6121810B2 (en) | Apparatus and method for extracting feature point information of large-capacity source image using shift algorithm | |
JP6002649B2 (en) | Image processing device | |
US20200372332A1 (en) | Image processing apparatus, imaging apparatus, image processing method, non-transitory computer-readable storage medium | |
JP2008072585A (en) | Method of supplying data for arithmetic processing and image processing apparatus | |
EP2453360B1 (en) | Method and apparatus for translating memory access address | |
JP6988456B2 (en) | Image processing equipment and programs | |
JP2021009566A (en) | Arithmetic processing device and arithmetic processing method | |
JP6772020B2 (en) | Image processing device, control method of image processing device, and program | |
JP4316476B2 (en) | Image processing apparatus and image forming apparatus | |
JP7082757B2 (en) | Image processing equipment | |
JP7249504B2 (en) | Image processing device | |
JP2012227598A (en) | Image processor, image forming apparatus, image processing method, image processing program and recording medium | |
JP5501298B2 (en) | Image processing device | |
JP2008217515A (en) | Image data access method | |
JP2008027077A (en) | Memory management device, image processor, and image forming device | |
JP4414302B2 (en) | Image processing apparatus and image rotation processing order control method | |
JP5892956B2 (en) | Image processing device | |
JP2005109856A (en) | Picture rotation circuit and picture processor having the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120913 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121016 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121112 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151116 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5135382 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |