Image processing apparatus and method, and storage medium
AssigneeCanon Kabushiki Kaisha
InventorTakafumi Fujiwara
Life of this patent
Estimating the term…
Abstract
The present invention efficiently compresses image data, and stores and manages the compressed data. Image data is compressed in tile unit having predetermined pixels and data packing is performed. The compressed data is compared with compressed data of a preceding packet. If these compressed data are different, the packet data is stored in a memory, and an entry address of the compressed data is stored in a packet table. Meanwhile, if the compressed data is equal to the compressed data of the preceding packet, the compressed data is not stored, but an entry address of the compressed data of the preceding packet is stored in a record of interest in the packet table, and a flag indicative of repetition of the preceding address is set in the packet of interest.
Claims13
An image processing apparatus for compressing and storing image data, comprising:
- division means for dividing the image data into a pixel block, which is a group of a predetermined number of pixels;
- generation means for compressing the data in the pixel block unit and sequentially generating packet data;
- packet table storage means for storing, as a packet table, a storage address of packet data corresponding to each pixel block subjected to division by said division means;
- and
- storage control means for storing packet data of interest generated by said generation means and a storage address of the packet data of interest in the packet table when the packet data of interest is different from preceding packet data, whereas when the packet data of interest is equal to the preceding packet data, not storing the packet data of interest, but storing in the packet table a storage address of the preceding packet data as a storage address of the packet data of interest.
An image processing method of compressing and storing image data, comprising:
- a division step of dividing the image data into a pixel block, which is a group of a predetermined number of pixels;
- a generation step of compressing the data in the pixel block unit and sequentially generating packet data;
- a packet table storage step of storing, as a packet table, a storage address of packet data corresponding to each pixel block subjected to division at said division step;
- and
- a storage control step of storing packet data of interest generated at said generation step and a storage address of the packet data of interest in the packet table when the packet data of interest is different from preceding packet data, whereas when the packet data of interest is equal to the preceding packet data, not storing the packet data of interest, but storing in the packet table a storage address of the preceding packet data as a storage address of the packet data of interest.
A computer program functioning as an image processing apparatus which compresses and stores image data, comprising:
- program codes for a division step of dividing the image data into a pixel block, which is a group of a predetermined number of pixels;
- program codes for a generation step of compressing the data in the pixel block unit and sequentially generating packet data;
- program codes for a packet table storage step of storing, as a packet table, a storage address of packet data corresponding to each pixel block subjected to division at said division step;
- and
- program codes for a storage control step of storing packet data of interest generated at said generation step and a storage address of the packet data of interest in the packet table when the packet data of interest is different from preceding packet data, whereas when the packet data of interest is equal to the preceding packet data, not storing the packet data of interest, but storing in the packet table a storage address of the preceding packet data as a storage address of the packet data of interest.
A storage medium storing program codes functioning as an image processing apparatus which compresses and stores image data, comprising:
- program codes for a division step of dividing the image data into a pixel block, which is a group of a predetermined number of pixels;
- program codes for a generation step of compressing the data in the pixel block unit and sequentially generating packet data;
- program codes for a packet table storage step of storing, as a packet table, a storage address of packet data corresponding to each pixel block subjected to division at said division step;
- and
- program codes for a storage control step of storing packet data of interest generated at said generation step and a storage address of the packet data of interest in the packet table when the packet data of interest is different from preceding packet data, whereas when the packet data of interest is equal to the preceding packet data, not storing the packet data of interest, but storing in the packet table a storage address of the preceding packet data as a storage address of the packet data of interest.
An image processing apparatus at least having compression means for compressing image data, packet generation means for packing the compressed image data in a form of a packet, a buffer for temporarily storing the packet, and comparison means for comparing the packet stored in the buffer with a packet generated by said packet generation means,
- wherein when said comparison means finds that a compressed packet of interest is equal to compressed packet data stored in said buffer, a flag is set for indicating that data of the compressed packet of interest is equal to data in the buffer.
A multi-function apparatus having a scanner controller for controlling a scanner unit which reads a document image, a printer controller for controlling a printer unit which prints an image on a print medium, and a system controller for controlling an entire system and having an image memory, all of which are connected through a bus, said scanner controller comprising:
- division means for dividing image data, read by the scanner unit, into a pixel block, which is a group of a predetermined number of pixels;
- generation means for compressing the data in the pixel block unit and sequentially generating packet data;
- packet table storage means for storing, as a packet table, a storage address of packet data corresponding to each pixel block subjected to division by said division means;
- storage control means for storing packet data of interest, generated by said generation means, in the image memory and storing a storage address of the packet data of interest in the packet table when the packet data of interest is different from preceding packet data, whereas when the packet data of interest is equal to the preceding packet data, not storing the packet data of interest, but storing in the packet table a storage address of the preceding packet data as a storage address of the packet data of interest;
- and
- transfer means for transferring the data, stored by said storage control means, to the system controller through the bus.
A control method of a multi-function apparatus having a scanner controller for controlling a scanner unit which reads a document image, a printer controller for controlling a printer unit which prints an image on a print medium, and a system controller for controlling an entire system, all of which are connected through a bus, said scanner controller comprising:
- a division step of dividing the image data, read by the scanner unit, into a pixel block, which is a group of a predetermined number of pixels;
- a generation step of compressing the data in the pixel block unit and sequentially generating packet data;
- a packet table storage step of storing, as a packet table, a storage address of packet data corresponding to each pixel block subjected to division at said division step;
- storage control step of storing packet data of interest generated at said generation step and a storage address of the packet data of interest in the packet table when the packet data of interest is different from preceding packet data, whereas when the packet data of interest is equal to the preceding packet data, not storing the packet data of interest, but storing in the packet table a storage address of the preceding packet data as a storage address of the packet data of interest;
- and
- a transfer step of transferring the data, stored at said storage control step, to the system controller through the bus.
Dependencies are inferred from the claim text.