System and method for compressing images and video
First Claim
1. A method for compressing an image having a plurality of image blocks, the method comprising:
- selecting, by a processor, an image block from the plurality of image blocks to compress;
computing, by the processor, a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block;
quantizing, by the processor, the amplitudes of the sinusoidal signals at the different frequencies;
saving, by the processor, in memory the quantized amplitudes as a first compressed image block;
dynamically selecting a specified frequency in accordance with a specified percentage of a total sum of the quantized amplitudes;
truncating, by the processor, the quantized amplitudes by eliminating any quantized amplitudes above the specified frequency, to produce truncated quantized amplitudes;
saving, by the processor, in memory the truncated quantized amplitudes as a second compressed image block; and
selecting, by the processor, either the first compressed image block or the second compressed image block as a final compressed image block, wherein the selecting is in accordance with a comparison of a first quality of the first compressed image block and a second quality of the second compressed image block.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and method for image and video compression using compressive sensing is provided. An embodiment method for compressing an image having a plurality of image blocks includes selecting an image block from the plurality of image blocks to compress, computing a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block, quantizing the amplitudes of the sinusoidal signals at different frequencies, and saving the quantized amplitudes as a first compressed image block. The method also includes truncating the quantized amplitudes, thereby producing truncated quantized amplitudes, saving the truncated quantized amplitudes as a second compressed image block, and selecting either the first compressed image block or the second compressed image block as a final compressed image block. The selecting is based on a measure of the quality of the first compressed image block and the second compressed image block.
-
Citations
22 Claims
-
1. A method for compressing an image having a plurality of image blocks, the method comprising:
-
selecting, by a processor, an image block from the plurality of image blocks to compress; computing, by the processor, a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block; quantizing, by the processor, the amplitudes of the sinusoidal signals at the different frequencies; saving, by the processor, in memory the quantized amplitudes as a first compressed image block; dynamically selecting a specified frequency in accordance with a specified percentage of a total sum of the quantized amplitudes; truncating, by the processor, the quantized amplitudes by eliminating any quantized amplitudes above the specified frequency, to produce truncated quantized amplitudes; saving, by the processor, in memory the truncated quantized amplitudes as a second compressed image block; and selecting, by the processor, either the first compressed image block or the second compressed image block as a final compressed image block, wherein the selecting is in accordance with a comparison of a first quality of the first compressed image block and a second quality of the second compressed image block. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus for compressing an image having a plurality of image blocks, the apparatus comprising:
-
a processor; and a computer readable storage medium storing programming for execution by the processor, the programming including instructions to; select an image block from the plurality of image blocks to compress; compute a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block; quantize the amplitudes of the sinusoidal signals at the different frequencies; save in memory the quantized amplitudes as a first compressed image block; dynamically select a specified frequency in accordance with a specified percentage of a total sum of the quantized amplitudes; truncate the quantized amplitudes by eliminating any quantized amplitudes above the specified frequency, to produce truncated quantized amplitudes; save in the memory the truncated quantized amplitudes as a second compressed image block; and select either the first compressed image block or the second compressed image block as a final compressed image block, in accordance with a comparison of a first quality of the first compressed image block and a second quality of the second compressed image block. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for compressing an image having a plurality of image blocks, the method comprising:
-
selecting, by a processor, an image block from the plurality of image blocks to compress; computing, by the processor, a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block; quantizing, by the processor, the amplitudes of the sinusoidal signals at the different frequencies; saving, by the processor, in memory the quantized amplitudes as a first compressed image block; truncating, by the processor, the quantized amplitudes to produce truncated quantized amplitudes; saving, by the processor, in memory the truncated quantized amplitudes as a second compressed image block; computing a first total variance of the selected image block; computing a second total variance of the first compressed image block; selecting the first compressed image block as a final compressed image block in response to the first total variance of the first compressed image block being less than the second total variance of the selected image block; and selecting the second compressed image block as the final compressed image block in response to the first total variance of the first compressed image block being greater than the second total variance of the selected image block. - View Dependent Claims (16)
-
-
17. A method for compressing an image having a plurality of image blocks, the method comprising:
-
selecting, by a processor, an image block from the plurality of image blocks to compress; computing, by the processor, a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block; quantizing, by the processor, the amplitudes of the sinusoidal signals at the different frequencies; saving, by the processor, in memory the quantized amplitudes as a first compressed image block; truncating, by the processor, the quantized amplitudes to produce truncated quantized amplitudes; saving, by the processor, in memory the truncated quantized amplitudes as a second compressed image block; classifying a texture of the selected image block, wherein there are at least three texture classes, wherein the texture classes comprise low, medium, and high textures; selecting the second compressed image block as a final compressed image block when the texture class of the selected image block is medium; and selecting the first compressed image block as the final compressed image block when the texture class of the selected image block is low or high. - View Dependent Claims (18)
-
-
19. An apparatus for compressing an image having a plurality of image blocks, the apparatus comprising:
-
a processor; and a computer readable storage medium storing programming for execution by the processor, the programming including instructions to; select an image block from the plurality of image blocks to compress; compute a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block; quantize the amplitudes of the sinusoidal signals at the different frequencies; save in memory the quantized amplitudes as a first compressed image block; truncate the quantized amplitudes to produce truncated quantized amplitudes; save in the memory the truncated quantized amplitudes as a second compressed image block; compute a first total variance of the selected image block; compute a second total variance of the first compressed image block; select the first compressed image block as a final image block in response to the first total variance of the first compressed image block being less than the second total variance of the selected image block; and select the second compressed image block as the final image block in response to the first total variance of the first compressed image block being greater than the second total variance of the selected image block. - View Dependent Claims (20)
-
-
21. An apparatus for compressing an image having a plurality of image blocks, the apparatus comprising:
-
a processor; and a computer readable storage medium storing programming for execution by the processor, the programming including instructions to; select an image block from the plurality of image blocks to compress; compute a sum of sinusoidal signals at different frequencies and amplitudes representation for the selected image block; quantize the amplitudes of the sinusoidal signals at the different frequencies; save in memory the quantized amplitudes as a first compressed image block; truncate the quantized amplitudes to produce truncated quantized amplitudes; save in the memory the truncated quantized amplitudes as a second compressed image block; classify a texture of the selected image block, wherein there are at least three texture classes, wherein the texture classes comprise low, medium, and high textures; select the second compressed image block as a final image block in response to the texture class of the selected image block being medium; and select the first compressed image block as a final image block in response to the texture class of the selected image block being low or high. - View Dependent Claims (22)
-
Specification