Tile-Based Image Compression Using Integer Wavelet Transform
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image processing systems face inefficiencies in real-time compression and decompression of large images due to the computational intensity of algorithms like JPEG 2000, which are complex and time-consuming.
Innovation Solution
An image processing system that partitions image data into tiles, uses a scalable tile processing device for wavelet transformation, quantization, and encoding, and decodes compressed data to generate decoded code blocks in one clock cycle, employing binary logic operations, bit shifts, and subtractions for efficient compression and decompression.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If JPEG 2000 compression algorithm is used to achieve enhanced compression efficiency, then compression efficiency is improved, but computational complexity increases
Solution Approach 1:
The image is divided into multiple tiles, and each tile is processed independently through the compression pipeline. This segmentation allows parallel processing of different regions, reducing the overall computational burden while maintaining JPEG 2000 compression efficiency.
Solution Approach 2:
The patent replaces traditional floating-point wavelet transform with an integer-based wavelet transform. This substitution eliminates complex floating-point arithmetic operations while preserving the essential compression functionality, significantly reducing computational complexity.
2Manufacturing precision
If floating point computation is used in wavelet transform and quantization, then image quality is maintained, but processing time increases
Solution Approach 1:
The patent systematically replaces floating-point computations with integer arithmetic in both wavelet transform and quantization stages. This substitution maintains sufficient image quality while dramatically reducing processing time, as integer operations are computationally simpler and can be executed faster.
Solution Approach 2:
The patent changes the numerical parameter type from floating-point to integer throughout the compression pipeline. This parameter change fundamentally alters the computational characteristics, enabling faster processing while maintaining acceptable image reconstruction quality.
3Speed
If integer-based wavelet transform is used instead of floating point, then computational speed is improved, but compression efficiency may be affected
Solution Approach 1:
The patent carefully designs the integer-based wavelet transform to preserve the essential frequency decomposition properties of the original floating-point transform. By selecting appropriate integer scaling factors and normalization constants, the patent maintains compression efficiency while achieving faster computational speed.
Solution Approach 2:
The substitution of integer arithmetic for floating-point arithmetic is designed to preserve the mathematical properties necessary for effective compression. The integer-based system maintains the ability to separate image frequencies and apply quantization effectively, thus preserving compression efficiency.
4Productivity
If image data is partitioned into tiles and processed in parallel, then processing throughput is improved, but system complexity increases
Solution Approach 1:
The patent divides the image into multiple independent tiles that can be processed simultaneously. Each tile goes through the complete compression pipeline independently, allowing parallel execution on multi-core processors or GPU architectures, thereby increasing processing throughput.
Solution Approach 2:
The patent designs a universal tile processing pipeline that handles all tiles using the same integer-based algorithms and data structures. This universal approach simplifies the overall system architecture compared to having specialized processing paths for different regions, as the same processing logic is reused across all tiles.
Data Source
AI summary
A system for processing an image includes a non-transitory memory component storing a set of executable instructions, and a scalable tile processing device. The executable instructions cause the system to receive image data, partition the image data into tiles, transmit a tile to the scalable tile processing device, receive an encoded bit stream corresponding to the transmitted tile from the tile processing device, output compressed image data including the encoded bit stream, receive the compressed image data, decode the compressed image data to generate a plurality of decoded code blocks, and output decompressed image data including the plurality of decoded code blocks. The scalable tile processing device receives the tile including tile image data, wavelet transforms, quantizes, segments, and encodes the tile image data to generate a plurality of encoded code blocks, and transmits an encoded bit stream including the plurality of encoded code blocks to the system.


