IP Library Granted Patent US 9,558,566
Granted Patent B2
US 9,558,566 · App. 13/931,985 · Granted Jan 31, 2017

Lossless compression of fragmented image data

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,558,566
App. No.
13/931,985
Filed
Jun 30, 2013
Granted
Jan 31, 2017
Kind
B2
Art Unit
2665
USPC
382/244
Abstract

Lossless compression of fragmented image data is disclosed. In some embodiments, a stream of information is received, wherein the stream of information comprises a sequence of tuples and wherein each of the tuples comprises data elements corresponding to one of a plurality of input channels. A channel transformer is employed to rearrange the data elements into a plurality of output channels for an output stream wherein the output channels have higher compressibility than the input channels. The compressed output stream is stored.

Claims (35)

1. A system, comprising:

a processor configured to:

receive an input sequence of data comprising an original channel;

generate a new channel by performing a differential transform on the original channel, wherein the first data elements of the new channel and the original channel are the same and wherein the remaining data elements of the new channel comprise differences between consecutive data elements of the original channel; and

generate a compressed output by encoding the new channel with a variable length code adapted to the statistics of the data elements of the new channel, wherein the compressed output is based on a selection of one or more thresholds according to the data elements of the new channel; and

a memory that stores the compressed output.

2. The system of claim 1 , wherein generating the new channel comprises performing a plurality of transforms including the differential transform.

3. A method, comprising:

receiving an input sequence of data comprising an original channel;

generating a new channel by performing a differential transform on the original channel, wherein the first data elements of the new channel and the original channel are the same and wherein the remaining data elements of the new channel comprise differences between consecutive data elements of the original channel;

generating a compressed output by encoding the new channel with a variable length code adapted to the statistics of the data elements of the new channel, wherein the compressed output is based on a selection of one or more thresholds according to the data elements of the new channel; and

storing the compressed output.

4. The method of claim 3 , wherein generating the new channel comprises performing a plurality of transforms including the differential transform.

5. A computer program product embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving an input sequence of data comprising an original channel;

generating a new channel by performing a differential transform on the original channel, wherein the first data elements of the new channel and the original channel are the same and wherein the remaining data elements of the new channel comprise differences between consecutive data elements of the original channel;

generating a compressed output by encoding the new channel with a variable length code adapted to the statistics of the data elements of the new channel, wherein the compressed output is based at least in part on a selection of one or more thresholds according to the data elements of the new channel; and

storing the compressed output.

6. The system of claim 1 , wherein the differential transform eliminates redundancies in the original channel.

7. The system of claim 1 , wherein the differential transform exploits continuity properties within the original channel and wherein the new channel is more compressible than the original channel.

8. The system of claim 1 , wherein the input sequence is associated with a fragment of an image.

9. The system of claim 8 , wherein the fragment is independently compressed and decompressed without reference to other fragments of the image.

10. The system of claim 1 , wherein the compressed output comprises a lossless compression of the input sequence.

11. The method of claim 3 , wherein the differential transform eliminates redundancies in the original channel.

12. The method of claim 3 , wherein the differential transform exploits continuity properties within the original channel and wherein the new channel is more compressible than the original channel.

13. The method of claim 3 , wherein the input sequence is associated with a fragment of an image.

14. The method of claim 13 , wherein the fragment is independently compressed and decompressed without reference to other fragments of the image.

15. The method of claim 3 , wherein the compressed output comprises a lossless compression of the input sequence.

16. The computer program product of claim 5 , wherein generating the new channel comprises performing a plurality of transforms including the differential transform.

17. The computer program product of claim 5 , wherein the differential transform eliminates redundancies in the original channel.

18. The computer program product of claim 5 , wherein the differential transform exploits continuity properties within the original channel and wherein the new channel is more compressible than the original channel.

19. The computer program product of claim 5 , wherein the input sequence is associated with a fragment of an image.

20. The computer program product of claim 19 , wherein the fragment is independently compressed and decompressed without reference to other fragments of the image.

21. The system of claim 1 , wherein the selection of one or more thresholds are selected by performing a threshold selection process.

22. The system of claim 1 , wherein the processor is further configured to select the one or more thresholds based on a distribution of values corresponding to the data elements of the new channel and a frequency of values corresponding to the data elements of the new channel.