Image processing apparatus and image forming apparatus

An image processing apparatus according to the present disclosure includes: one or more image processing modules; a first work memory disposed in a previous position to the one or more image processing modules; a second work memory disposed in a next position to the one or more image processing modules; a decompression-rotation processing module configured to (a) read out and decompress plural pieces of compressed sub-band data of plural sub-bands which locate in plural bands at an identical position in a primary scanning direction, (b) rotate respective pieces of decompressed sub-band data, and store the pieces of rotated sub-band data in the first work memory; and a rotation-compression processing module configured to (c) read out the plural pieces of image-processed sub-band data stored in the second work memory and rotate the respective pieces of sub-band data, and (d) compress the respective pieces of rotated sub-band data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application relates to and claims priority rights from a Japanese Patent Application No. 2012-078239, filed on Mar. 29, 2012, the entire disclosures of which are hereby incorporated by reference herein.

BACKGROUND

1. Field of the Invention

The present invention relates to image processing apparatases and image forming apparatuses.

2. Description of the Related Art

An image processing apparatus divides image data into bands of which each one includes a predetermined number of lines, compresses the plural bands, and keeps the compressed plural bands in a memory or the like.

Further, another image processing apparatus identifies plural sub-bands by dividing a band in the primary scanning direction, compresses each of the sub-bands, and keeps the plural compressed sub-bands as the image data.

In order to perform image processing for the kept image data, an image processing apparatus decompresses plural pieces of sub-band data (i.e. image data of plural sub-bands) of one band to restore image data of the one band, and performs the image processing for the image data of the one band.

For such a process, a decompression processing module decompresses pieces of sub-band data to restore image data of the one band, and an image processing module performs the image processing band by band for the image data of the one band; and a work memory is disposed between them and transfers the image data from the decompression processing module to the image processing module in order to enable the both processing modules to run in parallel. The work memory includes one or more buffers, and each of the buffers has a size sufficient to store image data of one band.

In a case that the orientation of an image is “portrait”, the length (i.e. number of pixels) of the image in the primary scanning direction is smaller than the length of the image in the secondary scanning direction. Contrary to this, in a case that the orientation of an image is “landscape”, the length of the image in the primary scanning direction is larger than the length of the image in the secondary scanning direction. Thus, the size of image data of one band in a case that the orientation of the image is “landscape” is larger than that in a case that the orientation of the image is “portrait”.

Therefore, in general, the aforementioned work memory includes the buffer of which the size is sufficient to store image data of one band in the image of which the orientation is “landscape”.

As mentioned, the size of a work buffer between processing modules is set in correspondence to image data of one band in an image of which the orientation is “landscape”, and consequently, the large size of the work buffer are required.

SUMMARY

An image processing apparatus according to an aspect of the present disclosure includes: one or more image processing modules; a first work memory disposed in a previous position to the one or more image processing modules; a second work memory disposed in a next position to the one or more image processing modules; a decompression-rotation processing module configured to (a) read out and decompress plural pieces of compressed sub-band data corresponding to plural sub-bands in plural band, the plural sub-bands locating at an identical position in a primary scanning direction, (b) rotate respective pieces of sub-band data obtained by decompressing the pieces of compressed sub-band data, and store the pieces of rotated sub-band data in the first work memory; and a rotation-compression processing module configured to (c) read out the plural pieces of sub-band data which the one or more image processing modules performed image processing for and stored in the second work memory and rotate the respective pieces of sub-band data, and (d) compress the respective pieces of rotated sub-band data.

Therefore, even if the orientation of the image is “landscape”, the work memory stores band data of a band of which the length in the longitudinal direction is the length of the image in the secondary scanning direction, and consequently, the required size of the work memory between the processing modules is small.

An image processing apparatus according to an aspect of the present disclosure includes: an image inputting unit configured to read an image and generate image data of the image; an input image processing unit configured to compress respective pieces of sub-band data of the image data to generate pieces of compressed sub-band data as compressed image data; an image storage unit configured to store the pieces of compressed sub-band data as the compressed image data; the aforementioned image processing apparatus; an output image processing unit configured to decompress the compressed image data for which the image processing apparatus has performed the image processing; and an image outputting unit configured to output an image based on the image data obtained by the output image processing unit.

Therefore, even if the orientation of the image is “landscape”, the work memory stores band data of a band of which the length in the longitudinal direction is the length of the image in the secondary scanning direction, and consequently, the required size of the work memory between the processing modules is small.

DETAILED DESCRIPTION

Hereinafter, an embodiment according to an aspect of the present disclosure will be explained with reference to drawings.

FIG. 1shows a block diagram which indicates a configuration of an image processing apparatus according to an embodiment of the present disclosure. This image processing apparatus is an image forming apparatus such as a copier or a multi-function peripheral.

An image inputting unit1optically reads a document image and generates image data of the document image. An image outputting unit2outputs an image based on output image data.

An input image processing unit3compresses respective pieces of sub-band data of the image data generated by the image inputting unit1in order to generate compressed image data. For example, the input image processing unit3uses JPEG (Joint Photographic Experts Group) as a compression method.

The length “a” of the sub-band in the primary scanning direction is set under the condition specified by the following formula.
a<(X/Y)*b

Where “X” is the length of an image of one page in the primary scanning direction, “Y” is the length of the image of one page in the secondary scanning direction, and “b” is the number of lines which constitute one band.

An image storage unit4stores the compressed image data. Specifically, image data of one page of the document image is stored as the image data which has been compressed sub-band by sub-band (i.e. the compressed image data). The image storage unit4is a non volatile data storage device such as a hard dish drive or an SSD (Solid State Drive) and/or a volatile data storage device such as RAM. In some cases, a low cost model (e.g. a low end model) of an image forming apparatus is not equipped with such as non volatile data storage unit.

An image-edit processing unit5reads out the compressed image data from the image storage unit4, performs image processing, and writes the compressed image data for which the image processing has been performed to the image storage unit4.

An output image processing unit6decompresses the compressed image data for which the image-edit processing unit5has performed the image processing, performs image processing in correspondence to the type of the image outputting unit2in order to generate the output image data, and provides the output image data to the image outputting unit2.

In a case that the image outputting unit2prints an image, the output image processing unit6performs image processing such as a color conversion and a screen process in order to generate the output image data for printing, and provides the output image data for printing to the image outputting unit2. In a case that the image outputting unit2transmits an image by facsimile communication, the output image processing unit6performs image processing such as a resolution conversion in order to generate the output image data for facsimile transmission, and provides the output image data for facsimile transmission to the image outputting unit2.

The input image processing unit3runs when reading the image; the output image processing unit6runs when outputting the image; and the image-edit processing unit5runs when reading the image, when outputting the image, and/or when receiving a user request or the like.

One or the input image processing unit3, the output image processing unit6and the image-edit processing unit5should rotate an image read by the image inputting unit1so as that the image outputting unit2outputs one image read by the image inputting unit1after the image is rotated by 90 degrees, 180 degrees, or 270 degrees. In this embodiment, either the input image processing unit3or the output image processing unit6performs such image rotation (i.e. by 90 degrees, 180 degrees, or 270 degrees). Therefore, when the image-edit processing unit5reads out the compressed image data from the image storage unit4, performs image processing, and write the compressed image data for which the image processing has been performed to the image storage unit4, the compressed image data after the image processing is finally without rotation from the compressed image data before the image processing.

Further, this image forming apparatus includes modules corresponding to sorts of the image processing. The input image processing unit3, the image-edit processing unit5, and the output image processing unit6performs a respective series of required image processing by combining the modules. For example, each of the modules is formed with an ASIC (Application Specific Integrated Circuit).

FIG. 2shows a block diagram which indicates a configuration of the image-edit processing unit5shown inFIG. 1.

The image-edit processing unit5is formed by combining a part or all of a decompression-rotation processing module11, a work memory12, image processing modules13-1to13-N, work memories14-1to14-(N−1), a work memory15, and a rotation-compression processing module16.

The decompression-rotation processing module11reads out plural pieces of unimpressed sub-band data from the image storage unit4. These plural pieces of compressed sub-band data correspond to plural sub-bands in plural band in which the plural sub-bands locates at an identical position in a primary scanning direction. The decompression-rotation processing module11decompresses the plural pieces of compressed sub-band data. Further the decompression-rotation processing module11rotates respective pieces of sub-band data obtained by decompressing the pieces of compressed sub-band data, and stores the pieces of rotated sub-band data in the work memory12. It should be noted that the decompression-rotation processing module11may be a combination of a decompression module and a rotation module.

The work memory12is a work memory disposed between the decompression-rotation processing module11and a series of the image processing modules13-1to13-N.

The image processing modules13-1to13-N run in parallel, and the image processing module13-i (i=1, . . . , N) reads out image data of one band from either the work memory12or the work memory14-(i−1) in the previous position, performs predetermined image processing for the image data, and writes the image data for which the image processing has been performed into either the work memory14-i or the work memory15in the next position. Further, the image processing modules13-1to13-N run in parallel with the decompression-rotation processing module11.

The work memory14-i (i=1, . . . , N) includes one or more buffers to transfer image data from the image processing module13-i to the image processing module13-(i+1).

The number N of the image processing module(s)13-i (i=1, . . . , N) may be one. In such a case (N=1), the work memories14-1to14-N are not required and not disposed.

The work memory15is a work memory disposed between a series of the image processing modules13-1to13-N and the rotation-compression processing module16.

The rotation-compression processing module16reads out the plural pieces of sub-band data for which image processing has been performed by the one or more image processing modules from the work memory15and rotates the respective pieces of sub-band data, compresses the respective pieces of rotated sub-band data, and stores pieces of compressed and rotated sub-band data into the image storage unit4. The rotation-compression processing module16runs in parallel with the decompression-rotation processing module11and the image processing modules13-1to13-N. It should be noted that the rotation-compression processing- module16may be a combination of a rotation module and a compression module.

In this embodiment, the decompression-rotation processing module11identifies the orientation of an image of the compressed image data. If the length of the image in the primary scanning direction is larger than the length of the image in the secondary scanning direction (i.e. if the orientation of the image is “landscape”), then the decompression-rotation processing module11rotates the respective pieces of sub-band data; otherwise if the length of the image in the primary scanning direction is either equal to or leas than the length of the image in the secondary scanning direction (i.e. if the orientation of the image is “portrait”), then the decompression-rotation processing module11stores the pieces of sub-band data in the work memory12without rotating the respective pieces of sub-band data.

Further, if the length of the image in a primary scanning direction is larger than the length of the image in a secondary scanning direction (i.e. if the orientation of the original image is “landscape”), the rotation-compression processing module16rotates the respective pieces of sub-band data and compresses the respective pieces of rotated sub-band data; otherwise if the length of the image in the primary scanning direction is either equal to or less than the length of the image in the secondary scanning direction (i.e. if the orientation of the original image is “portrait”), the rotation-compression processing module16compresses the respective pieces of sub-band data without rotating the respective pieces of sub-band data.

Furthermore, in this embodiment, the work memories12,14-1to14-(N−1), and15have an identical size, and each of the work memories has one or more buffers. The site of the buffer is set to be less than the size of one band in a case that the orientation of the image is “landscape” and to be either equal to or larger than a total size of the aforementioned plural pieces of sub-band data. If the work memory12,14-i, or15includes plural buffers, the plural buffers are used as double buffers or ring buffers.

In the following part, a behavior of the aforementioned image forming apparatus is explained.

Upon receiving a user operation to a not-shown operation panel, an instruction from a not-shown host device, or the like, the image inputting unit1reads a document image and generates image data of the document image, and the input image processing unit3compresses respective pieces of sub-band data of the image data in order to generate compressed image data and stores the compressed image data in the image storage unit4.

Upon receiving a user operation to a not-shown operation panel, an instruction from a not-shown host device, or the like, the output image processing unit6decompresses the compressed image data for which the image-edit processing unit5has performed the image processing, performs image processing in correspondence to the type of the image outputting unit2in order to generate output image data, and provides the output image data to the image outputting unit2. The image outputting unit2outputs an image based on the output image data.

The image-edit processing unit5runs when reading the image, when outputting the image, and/or when receiving a user request or the like, and reads out the compressed image data from the image storage unit4, performs image processing, and write the compressed image data for which the image processing has been performed to the image storage unit4.

A detailed behavior of the image-edit processing unit5is explained in the following part.

FIGS. 3A to 3CandFIGS. 4A and 4Bshow diagrams which explain behaviors of the image-edit processing unit shown inFIG. 2.

FIG. 3Ashows a diagram which explains band data and sub-band data in a case that the orientation of the image is “landscape”. The image data shown inFIG. 3Aincludes pieces of band data B1to Bk, and each piece of band data Bi (i=1, . . . , k) includes m pieces of sub-band data SBi1to SBim.

The image data is inputted from the image inputting unit1, piece by piece of the band data Bi in turn.

The input image processing unit3divides a piece of the band data bi into m pieces of the sub-band data SBi1to SBim, compresses each piece of the sub-band data SBij (j=1, . . . , m) to generate the compressed sub-band data CSBij, and sequentially stores the compressed sub-band data CSBij into the image storage unit4. By this process, the compressed image data as shown inFIG. 3Bis stored in the image storage unit4.

The image-edit processing unit5reads out this compressed image data, performs image processing, and writes the compressed image data for which the image processing has been performed into the image storage unit4.

Firstly, as shown inFIG. 3C, the decompression-rotation processing unit11reads out the first piece of the compressed sub-band data CSBi1(i=1, . . . , k) in each piece of the band data Bi, and restores respective pieces of the sub-band data SBi1by decompression, rotates respective pieces of the restored sub-band data SBi1by 90 degrees (or −90 degrees) to generate the rotated sub-band data RSBi1, and writes respective pieces of the rotated sub-band data RSBi1of the band data Bi in turn into a buffer in the work memory12. By this process, image data of one rotated band is stored in the work memory12,

If the work memory12has a free buffer, then in the same manner, the decompression-rotation processing unit11reads out the second piece of the compressed sub-band data CSBi2(i=1, . . . , k) in each piece of the band data Bi, and restores respective pieces of the sub-band data SBi2by decompression, rotates respective pieces of the restored sub-band data SBi2by 90 degrees (or −90 degrees) to generate the rotated sub-band data RSBi1, and writes respective pieces of the rotated sub-band data RSBi2of the band data Bi in turn into a buffer in the work memory12.

After that, until the decompression-rotation processing unit11processes all pieces of the compressed sub-band data, the decompression-rotation processing unit11processes the third and the following (i.e. 4th, 5th, . . . ) pieces of the compressed sub-band data CSBi3in each piece of the band data Bi in turn in the same manner.

The image processing module13-1reads out the image data from one or more buffers in the work memory12band by band, and performs image processing for each band. The buffer from which the image data has been read out becomes a free buffer.

The image processing module13-i (i=1, . . . , N) reads out the image data of each one band from the work memory12or14-(i−1) at the previous position in turn, and after performing image processing for the image data of each one band, the image processing module13-i writes the image data of each one band to a free buffer in the work memory14-i or15at the next position.

Therefore, it follows that as shown inFIG. 4A, the image processing modules13-1to13-N perform the same process as a process in which the image data shown inFIG. 3Ais rotated by 90 degrees and the rotated image data is processed band by band.

The buffer in the work memory15keeps pieces of the rotated sub-band data RSBij+ (i=1, . . . , k) of one band after rotation and image processing. As shown inFIG. 4B, the rotation-compression processing module16reads out the sub-band data RSBij+, and firstly rotates it by the same degrees as the rotation degrees of the decompression-rotation processing module11to the reverse direction of the rotation direction of the decompression-rotation processing module11to generate the image-processed sub-band data SBij+. Secondly, the rotation-compression processing module16compresses the sub-band data SBij+ to generate the compressed and image-processed sub-band data CSBij+, and writes the sub-band data CSBij+ to the image storage unit4.

The rotation-compression processing module16performs the aforementioned process for all bands after rotation, so that the compressed image data after the image processing is stored in the image storage unit4.

It should be noted that the decompression-rotation processing module11, for example, determines whether the orientation of the image is “landscape” or “portrait” on the basis of not-shown attribute information in association with the compressed image data of one page, and the decompression-rotation processing module11and the rotation-compression processing module16perform the aforementioned process if the orientation of the image is “landscape” and perform the decompression and the compression without the rotation if the orientation of the image is “portrait”.

In the aforementioned embodiment, the decompression-rotation processing module11reads out the compressed sub-band data CSBij corresponding to plural sub-band at an identical position j in the primary scanning direction in plural bands, decompresses respective pieces of the sub-band data CSBij, rotates respective pieces of the sub-band data SBij obtained by the decompression, and writes plural pieces of the rotated sub-band data RSBij to the work memory12. The rotation-compression processing module16reads out the plural pieces of the image-processed sub-band data RSBij+ stored in the work memory15, rotates respective pieces of the sub-band data RSBij+, and compresses respective pieces of the sub-band data SBij+ after rotation.

The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed.

For example, the image-edit processing unit5may be an image processing apparatus as an embodiment of the present disclosure.

Further, in the aforementioned embodiment, a page memory may be disposed between the image storage unit4and the decompression-rotation processing module11, and after reading out image data of one page to the page memory, the decompression-rotation processing module11may read out the compressed sub-band data from the page memory.

Furthermore, in the aforementioned embodiment, a page memory may be disposed between the image storage unit4and the rotation-compression processing module16, and after writing the compressed sub-band data of one page to the page memory, the rotation-compression processing module16may write the compressed sub-band data of one page from the page memory to the image storage unit4. In this case, pieces of the compressed sub-band data may be written to the page memory sequentially in the order of them outputted from the rotation-compression processing module16, and the order of the compressed sub-band data may be converted to the order before the image processing (e.g. as shown inFIG. 3B) when pieces of the compressed sub-band data are written from the page memory to the image storage unit4.