Block-Based Print Data Decoding for Faster Color Printing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing printing systems face challenges in improving decoding speed and throughput due to the use of variable length codes, particularly when dealing with color images, as decoding multiple codes requires sequential lookup in large tables, leading to inefficiencies in processing and potential printing delays.
Innovation Solution
A printing apparatus that divides images into blocks, encodes data using orthogonal transformation and variable length codes, and decodes data in parallel using a dictionary to efficiently process and print images by separating the decoding of frequency components and color indexes, allowing for faster processing and reduced printing time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of substance
If variable length codes are used for encoding image data to reduce transfer speed decrease, then compression efficiency is improved, but decoding speed deteriorates due to sequential lookup requirements
Solution Approach 1:
The patent segments the image data into multiple blocks and processes each block independently through parallel decoding operations. By dividing the decoding task into smaller units that can be handled simultaneously, the system maintains high compression efficiency while improving overall decoding throughput without requiring sequential lookup of entire large code tables.
Solution Approach 2:
The patent transitions from single-cycle sequential decoding to multi-cycle parallel decoding by introducing a time dimension. Different blocks are decoded in parallel across multiple cycles, effectively trading temporal sequence for spatial parallelism and improving decoding throughput while maintaining variable length code compression efficiency.
2Loss of substance
If color components R, G, and B are collectively encoded as a single code to achieve compression, then compression efficiency is improved, but code length increases and requires lookup in enormous variable length code tables
Solution Approach 1:
The patent segments the color components by processing different blocks independently and uses separate decoding paths for different data types (first compressed data requiring N cycles, second compressed data requiring 1 cycle). This segmentation reduces the effective code table size needed for each decoding operation while maintaining overall compression efficiency.
Solution Approach 2:
The patent applies different decoding cycle allocations to different compressed data types - using one cycle for dictionary-based second compressed data and multiple cycles for first compressed data. This partial differentiation allows efficient handling of different data portions without requiring uniformly large code tables for all possible color combinations.
3Measurement precision
If sequential lookup in variable length code tables is performed to decode multiple codes, then decoding accuracy is maintained, but processing speed deteriorates
Solution Approach 1:
The patent segments the decoding process into parallel block-based operations where each block is decoded independently. This segmentation allows multiple decoding operations to proceed simultaneously, maintaining accurate sequential lookup within each block while improving overall processing throughput through parallel execution of segmented tasks.
Solution Approach 2:
The patent performs preliminary organization of encoded data into blocks with distinct compression schemes (first compressed data and second compressed data) before decoding. This preliminary segmentation enables the decoding section to efficiently process different data types in parallel, maintaining decoding accuracy while improving throughput by avoiding sequential processing of mixed data types.
Data Source
AI summary
A printing apparatus includes an obtaining section that obtains encoded data in which compression is performed, a decoding section that decodes encoded data to obtain image data for printing, and a printing section that performs printing by using image data for printing. The encoded data is encoded data including, for a respective one of the blocks, first compressed data in which quantized values obtained by performing orthogonal transformation for a respective one of N color components are each compressed, and second compressed data in which, by using a dictionary in which a plurality of different colors are registered as indexes, a corresponding one of the indexes associated with the color of each pixel is compressed. The decoding section decodes the first compressed data in N cycles and decodes the second compressed data in one cycle to obtain print data decoded in units of the blocks.


