US6819272B2 - System, method and computer readable medium for compressing a data sequence for partial decompressing - Google Patents
System, method and computer readable medium for compressing a data sequence for partial decompressing Download PDFInfo
- Publication number
- US6819272B2 US6819272B2 US10/289,752 US28975202A US6819272B2 US 6819272 B2 US6819272 B2 US 6819272B2 US 28975202 A US28975202 A US 28975202A US 6819272 B2 US6819272 B2 US 6819272B2
- Authority
- US
- United States
- Prior art keywords
- sequence
- matchable
- codewords
- codeword
- length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
Definitions
- This invention relates to data compression, and more particularly, to a system and a method for compressing a data sequence to produce an output codestream that allows partial decompressing to obtain an intermediate segment of the data sequence.
- Data compression techniques are used to reduce the amount of data to be stored or transmitted in order to reduce the storage capacity and transmission time respectively. In either case it is necessary to provide a corresponding decompression technique to enable the original data to be reconstructed.
- FIG. 1 shows an output codestream obtained by compressing an input character sequence using the LZO technique.
- the output codestream includes codewords interspersed with non-matchable sequences of characters from the input character sequence.
- the codewords reference sequences of characters which have previously appeared when decompressing the output codestream to allow the original input character sequence to be rebuilt from the codestream.
- the LZ techniques are known as a dictionary-based technique.
- a running dictionary is generated during both compression and decompression.
- To obtain an intermediate segment of an input character sequence from an output codestream it is necessary to begin decompression from the start of the output codestream until the desired intermediate segment is obtained. Partial decompression of the output codestream is not possible with the prior art LZ techniques.
- a method for compressing an input sequence of data portions to produce an output codestream and for partially decompressing the output codestream to obtain a selected segment of the input sequence includes compressing the input sequence to produce the output codestream of non-matchable sequences and codewords.
- the codewords include a first codeword and subsequent codewords. Each of the codewords includes at least a length of a non-matchable sequence preceding a matchable first sequence. Each of the subsequent codewords further includes a first offset for indicating a start of the matchable first sequence in the preceding non-matchable sequence, a length of the matchable first sequence and a second offset for indicating a location of a preceding codeword in the output codestream.
- a compressing/decompressing system having means for compressing an input sequence of data portions as described above.
- a program storage device readable by a computing device.
- the program storage device tangibly embodies a program of instructions that is executable by the computing device to perform the above method for compressing/decompressing an input sequence of data portions.
- FIG. 1 is a schematic drawing showing a character sequence and an output codestream obtained by compressing the character sequence using a prior art Lempel-Ziv-Oberhumer (LZO) technique;
- FIG. 2 is a schematic diagram of a data compression/decompression system including a compressing system that compresses a data sequence into a codestream, according to an embodiment of the present invention, for transferring to a decompressing system;
- FIG. 3 is a block diagram showing typical hardware elements of a computing system that may be used as the compressing system and decompressing system in FIG. 2;
- FIG. 4 is a schematic drawing showing an output codestream obtained by compressing the character sequence in FIG. 1 using the compressing system in FIG. 2;
- FIG. 5 is a flowchart showing a sequence of steps in the compressing system in FIG. 2 for compressing the character sequence
- FIG. 6 is a flowchart showing a sequence of steps in the decompressing system in FIG. 2 for partially decompressing the output codestream in FIG. 4;
- FIG. 7 is a schematic drawing showing partial decompression of the output codestream in FIG. 4, according to the sequence in FIG. 6, to obtain a selected segment of the character sequence.
- FIG. 2 is a schematic drawing illustrating a data compressing/decompressing system 2 incorporated with the teachings of the present invention.
- the system includes a compressing system 4 having means therein that compresses an input sequence of portions of data, such as bytes of data representing a character sequence 6 (FIG. 4 ), into an output codestream 8 (FIG. 4) for transferring to a decompressing system 10 via a transfer medium 12 .
- the decompressing system 10 receives the codestream 8 and is able to partially decompress or expand the codestream 8 to reconstruct a selected segment of the character sequence 6 .
- FIG. 3 is a block diagram illustrating typical elements of a computing system 14 that may be appropriately programmed to function as the compressing system 4 and the decompressing system 10 .
- the elements include a programmable processor 16 connected to a system memory 18 via a system bus 20 .
- the processor 16 accesses the system memory 18 as well as other input/output (I/O) channels 22 and peripheral devices 24 .
- the computing system 14 further includes at least one program storage device 26 , such as a CD-ROM, tape, magnetic media, EPROM, EEPROM, ROM or the like.
- the computing system stores one or more computer programs that implement a method of compressing a data sequence according to an embodiment of the present invention.
- the processor 16 reads and executes the one or more computer programs to perform the method.
- Each of the computer programs may be implemented in any desired computer programming language (including machine, assembly, high level procedural, and object oriented programming languages). In any case, the language may be a compiled or interpreted language.
- FIG. 4 shows the output codestream 8 that is obtained by compressing the character sequence 6 using the method.
- the compressing system 4 compresses the input sequence 6 to produce an output codestream 8 of non-matchable sequences 40 , 42 , 44 and codewords 50 , 52 , 54 , 56 .
- the codewords 50 , 52 , 54 , 56 include a first codeword 50 and subsequent codewords 52 , 54 , 56 .
- the codewords 50 , 52 , 54 , 56 include at least a length of a non-matchable sequence 40 , 42 , 44 preceding a matchable first sequence 60 , 62 , 64 .
- the subsequent codewords 52 , 54 , 56 further include a first offset that indicates a start of the matchable first sequence 60 , 62 , 64 in a preceding non-matchable sequence 40 , 42 , 44 , a length of the matchable first sequence 40 , 42 , 44 and a second offset that indicates a distance between a codeword 52 , 54 , 56 and a preceding codeword 50 , 52 , 54 .
- the compressing system 4 compresses the character sequence 6 by sequentially traversing the character sequence 6 byte by byte, if each character is stored in a byte, to determine if a first sequence of bytes starting with each traversed byte is matchable with a second sequence of previously traversed bytes. If a first sequence 60 , 62 , 64 is matchable with a second sequence 70 , 72 , 74 , the compressing system 4 notes a length, in bytes, of the first sequence 60 , 62 , 64 and an offset, in bytes, between the start of the first sequence 60 , 62 , 64 and a corresponding second sequence 70 , 72 , 74 .
- the compressing system 4 also records any non-matchable sequence 40 , 42 , 44 of bytes in the character sequence 6 .
- the output codestream 8 of alternating codewords 50 , 52 , 54 , 56 and non-matchable sequences 40 , 42 , 44 is generated.
- This output codestream 8 of codewords 50 , 52 , 54 , 56 and non-matchable sequences 40 , 42 , 44 defines compressed data of the character sequence 6 .
- the codewords 50 , 52 , 54 , 56 and the non-matchable sequences 40 , 42 , 44 are ordered in the sequence they are computed.
- FIG. 5 is a flowchart showing a sequence 90 of steps in the method for compressing the character sequence 6 using the compressing system 4 .
- This compression sequence 90 will be described according to a sequence in which it traverses or processes the character sequence 6 .
- the compression sequence 90 starts with a RECEIVE INPUT SEQUENCE step 92 , wherein the compressing system 4 receives the character sequence 6 .
- the character sequence 6 in FIG. 4 includes eighteen characters numbered according to their positions in the character sequence 6 .
- the compression sequence 90 proceeds to an INITIALIZATION step 94 , wherein a pointer (not shown) is initialized to point to a character position before the first character “A” in the character sequence 6 .
- the compression sequence 90 next proceeds to a DETERMINE IF INPUT SEQUENCE IS EXHAUSTED step 96 , wherein the compressing system 4 determines if all the characters in the character sequence 6 have been completely processed. If it is determined in this step 96 that there are characters remaining in the character sequence 6 for processing, the compression sequence 90 proceeds to an ADVANCE POINTER step 98 . In this step 98 , the compressing system 4 advances the pointer by a character position to point to the next character in the character sequence 6 . At this point of processing the character sequence 6 , the pointer is advanced to point to the character “A” (1 st character). The compression sequence 90 next proceeds to a CHECK FOR MATCHING SEQUENCE step 100 .
- the compressing system 4 determines if a first sequence of a predetermined minimum number of characters starting with the character pointed to by the pointer is matchable with a second sequence of previously traversed or processed characters. Matching is performed using a hashing method that has been used in other LZ techniques.
- the compression sequence 60 proceeds to an UPDATE NON-MATCHABLE SEQUENCE step 102 , wherein the compressing system 4 increments a non-matchable character counter (not shown).
- the compression sequence 90 then returns to the DETERMINE IF INPUT SEQUENCE IS EXHAUSTED step 96 .
- the compression sequence 90 loops around the steps 96 - 102 when processing the first non-matchable sequence, “ABCDE” (1 st -5 th character), of the character sequence 6 until the pointer is advanced to point, in the ADVANCE POINTER step 98 , to the 6 th character “B”. At this point, the non-matchable character counter would have been incremented to a value of five because of the number of characters or length of the non-matchable sequence “ABCDE”.
- the compression sequence 90 will proceed to a FIND LONGEST MATCH step 104 .
- a FIND LONGEST MATCH step 104 Such will be the case when the sequence “BCD” (6 th -8 th character) is encountered that is matched by another sequence of “BCD” (2 nd -4 th character).
- the compressing system 4 determines the longest first sequence starting with the character pointed to by the pointer that is matched by a second sequence in the previously processed characters.
- the longest first sequence 60 is just the sequence “BCD” (7 th -9 th characters).
- the compressing system 4 notes the first offset or the number of characters between the start of the two matching sequences 60 , 40 and the length or the number of characters in one of these sequences 60 , 40 .
- the first offset and the length are four and three characters respectively for the matched first sequence “BCD” (6 th -8 th characters).
- the compression sequence 90 next proceeds to a FIRST OUTPUT STEP 106 , wherein the compressing system 4 outputs the number of characters or length of the non-matchable sequence 40 to a buffer (not shown) in the system memory 18 .
- a buffer not shown
- the compressing system 4 For the non-matchable sequence “ABCDE” (1 st -5 th characters), the value five from the non-matchable character counter is copied to the buffer.
- the compressing system 4 appends the sequence of non-matchable characters 40 to the buffer.
- the compressing system 4 appends the sequence “ABCDE” to the buffer.
- the compression sequence 90 next proceeds to a SECOND OUTPUT step 108 , wherein the compressing system 4 appends two data items, the first offset and the length of the matched first sequence 60 , to the buffer.
- the compression system 4 next proceeds to a THIRD OUTPUT step 110 , wherein the compressing system 4 appends a third data item, a second offset, to the buffer.
- This second offset allows the first codeword 50 to be located from the second codeword 52 .
- the second offset is indicated as X2 in FIG. 4 .
- the value of X2 is determined after the first codeword 50 has been coded.
- the compressing system 4 also advances the pointer accordingly and clears the non-matchable character counter.
- the compression sequence 90 then returns to the DETERMINE IF INPUT SEQUENCE IS EXHAUSTED step 96 and repeats the above-described steps 96 - 102 until all the characters in the character sequence 6 have been processed. Specifically, the compression sequence 90 will repeat the steps 96 - 102 when processing the second non-matchable sequence “FG” (9 th -10 th character).
- the compression sequence 90 proceeds to the FIND LONGEST MATCH step 104 when processing the sequence “DEB” (11 th -13 th character) in the step 100 because it is matched by another sequence “DEB” (4 h -6 th character).
- the longest matched sequence is determined to be the sequence “DEBG” (11 th -14 th characters). The first offset associated with this sequence “DEBG” is seven and the length of the sequence is four.
- the compressing system 4 appends a data item of a value of two which is the length of the non-matching sequence “FG” to the buffer in the FIRST OUTPUT step 106 . This data item together with the preceding three data items forms the second codeword 52 .
- the compressing system 4 next appends the second non-matching sequence 42 and the data items of values seven and four to the buffer in the SECOND OUPUT step 108 to begin to form the third codeword 54 .
- the compressing system 4 next appends another second offset, indicated as X3 in FIG. 4, to the buffer in the THIRD output step 110 to further add to the third codeword 54 .
- the remaining sequence “ADFG” (15 th -18 th character) of the character sequence 6 is processed using the compression sequence 90 .
- the processing of the sequence “DFG” (16 th -18 nd character) results in the writing of a value one to the buffer to complete the third codeword 54 .
- the processing of the sequence “DFG” also results in the writing of the non-matching sequence 44 and of a fourth codeword 56 having the first three data items of values eight, three and one to the buffer.
- the compression sequence 90 proceeds to a FOURTH output step 112 , wherein the compressing system 4 writes a length of a remaining non-matchable sequence and the remaining non-matchable sequence itself to the buffer.
- the compressing system 4 therefore appends a data item of value zero to the buffer to complete the fourth and final codeword 56 .
- the compression sequence 90 finally ends in an END step 114 , wherein the compressed data or codestream defined by the codewords 50 , 52 , 54 , 56 and the non-matchable sequences 40 , 42 , 44 is ready for use, such as for transmission via the transfer medium 12 to the decompressing system 10 (FIG. 2 ).
- Any known coding format may be used for coding the data items in the codewords 50 , 52 , 54 , 56 .
- FIG. 6 is a flowchart showing a sequence 120 of steps in the decompressing system 10 for partial decompressing the output codestream 8 to obtain the selected segment 80 (FIG. 4) of the character sequence 6 .
- This decompression sequence 120 will be described according to a sequence in which it processes the output codestream 8 as illustrated in FIG. 7 .
- the decompression sequence 120 starts with a RECEIVE OFFSET AND LENGTH OF SEGMENT step 122 , wherein the decompressing system 10 receives a length of the selected segment 80 and its offset from a start of the character sequence 6 .
- the selected segment 80 in the character sequence 6 has an offset of eleven and a length of three.
- the decompression sequence 120 next proceeds to an IDENTIFY END CODEWORD step 124 , wherein the decompressing system 10 identifies an end codeword in the output codestream 8 that encodes an end of the selected segment 80 .
- the decompressing system 10 sequentially traverses the codewords 50 , 52 , 54 , 56 to add in turn the length of a non-matchable sequence and the length of the matchable first sequence, if one exists, in each codeword 50 , 52 , 54 , 56 until a sum thereof covers the offset and the length of the selected segment 80 . Adding these lengths in the first codeword 50 and the second codeword 52 yields a sum of ten which is less than the segment offset (value of eleven).
- the further addition of the length value four in the third codeword 54 to the sum brings the sum to fourteen, which now equals the sum of the segment offset and length.
- the third codeword 54 is therefore identified as the end codeword.
- the end codeword 54 in this case encodes the entire segment 80 .
- the decompression sequence 120 next proceeds to an IDENTIFY STARTCODEWORD step 126 , wherein the decompressing system 10 traverses the codewords 50 , 52 , 54 , 56 in a reverse order using the second offset of each codeword to identify a start codeword 50 , 52 , 54 , 56 from which the selected segment 80 can eventually be reconstructed.
- the decompressing system 10 is able to determine from the end codeword 54 that a sequence encoded thereby can be decoded by obtaining four consecutive characters, the first character of which is seven characters away from an end of a preceding decompressed character sequence.
- the non-matching sequence 42 preceding the end codeword 54 is only two characters long and is therefore insufficient for the end codeword 54 to be decoded therefrom. It is therefore necessary for the decompressing system 10 to back track towards the beginning of the output codestream 8 in search of the start codeword. From the second offset X3 of the end codeword 54 , the decompressing system 10 is able to locate a preceding codeword, in this case the second codeword 52 . Similarly, the decompressing system 10 is able to determine from the second codeword 52 that three characters are encoded by the second codeword 52 . These three characters can be decoded by obtaining three consecutive characters, the first of which is four characters away from an end of a preceding decompressed character sequence.
- the decompressing system 10 is able to locate another codeword preceding the second codeword 52 , in this case locating the first codeword 50 . Since this is the first codeword 50 of the output codestream 8 , the decompressing system 10 cannot back track any further.
- the first codeword 50 is thus identified as the start codeword.
- the decompression sequence 120 finally ends in a DECOMPRESS FROM START CODEWORD step 128 , wherein the decompressing system 10 decompresses the output codestream 8 from a starting non-matchable sequence 40 following the identified start codeword 50 until the selected segment 80 is obtained.
- the decoded sequence begins with the first non-matchable sequence 40 .
- the three characters “BCD” encoded by the second codeword 52 are decoded from the first non-matchable sequence 40 .
- Two characters in the non-matching sequence 42 following the second codeword 52 are added to the decoded sequence.
- the four characters “DEBC” encoded by the end codeword 54 are decoded.
- the first three of the four characters constitute the segment 80 .
- back tracking to the first codeword 50 at the start of the output codestream 8 is necessary to identify the starting non-matchable sequence. However, such back tracking to the beginning of the output codestream 8 is not always necessary.
- the compression/decompression method described above allows partial decompression of an output codesteam to obtain an intermediate segment of an input sequence.
- the present invention is described as implemented in the above-described embodiment, it is not to be construed to be limited as such.
- the input sequence may be processed using data portions of other lengths.
- the codewords may be kept separate from the non-matchable sequences instead of being interspersed with the non-matchable sequences.
- the second offset in the codewords need not be the length of a preceding non-matchable sequence as described above.
- the second offset of a codeword may be a number of bytes between the start of the codeword and the start of a preceding codeword.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/289,752 US6819272B2 (en) | 2002-11-06 | 2002-11-06 | System, method and computer readable medium for compressing a data sequence for partial decompressing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/289,752 US6819272B2 (en) | 2002-11-06 | 2002-11-06 | System, method and computer readable medium for compressing a data sequence for partial decompressing |
Publications (2)
Publication Number | Publication Date |
---|---|
US20040085232A1 US20040085232A1 (en) | 2004-05-06 |
US6819272B2 true US6819272B2 (en) | 2004-11-16 |
Family
ID=32176103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/289,752 Expired - Lifetime US6819272B2 (en) | 2002-11-06 | 2002-11-06 | System, method and computer readable medium for compressing a data sequence for partial decompressing |
Country Status (1)
Country | Link |
---|---|
US (1) | US6819272B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030110296A1 (en) * | 2001-12-07 | 2003-06-12 | Kirsch Steven T. | Method and system for reducing network latency in data communication |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007106980A1 (en) * | 2006-03-17 | 2007-09-27 | Nortel Networks Limited | Closed-loop mimo systems and methods |
CN116805537B (en) * | 2023-08-22 | 2023-11-07 | 江汉大学附属医院(武汉市第六医院) | Data processing method for heart-lung rehabilitation management system |
CN118399976B (en) * | 2024-06-18 | 2024-10-18 | 陕西联众电力科技有限公司 | Remote monitoring method and system for equipment operation data |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4558302A (en) | 1983-06-20 | 1985-12-10 | Sperry Corporation | High speed data compression and decompression apparatus and method |
US4701745A (en) | 1985-03-06 | 1987-10-20 | Ferranti, Plc | Data compression system |
US4814746A (en) | 1983-06-01 | 1989-03-21 | International Business Machines Corporation | Data compression method |
US5760716A (en) * | 1996-08-21 | 1998-06-02 | Autodesk, Inc. | Vector data compression |
US5813011A (en) * | 1995-05-12 | 1998-09-22 | Fujitsu Limited | Storage of a compressed file containing its own compression management table |
US6195741B1 (en) * | 1997-12-25 | 2001-02-27 | Fujitsu Limited | Data processing device having a variable length code processing mechanism |
US6236960B1 (en) * | 1999-08-06 | 2001-05-22 | Motorola, Inc. | Factorial packing method and apparatus for information coding |
US6271776B1 (en) * | 1999-11-30 | 2001-08-07 | Cirrus Logic, Inc. | Selectively removing sequences from an enumerative modulation code |
US6279092B1 (en) * | 1999-01-06 | 2001-08-21 | International Business Machines Corporation | Kernel identification for space management in compressed memory systems |
WO2002008956A1 (en) * | 2000-07-20 | 2002-01-31 | Repliweb Inc. | Focal point compression method and apparatus |
US6396420B1 (en) * | 1999-02-26 | 2002-05-28 | Autodesk, Inc. | Delta compression of floating point coordinate data |
US6501395B1 (en) * | 2002-04-10 | 2002-12-31 | Hewlett-Packard Company | System, method and computer readable medium for compressing a data sequence |
-
2002
- 2002-11-06 US US10/289,752 patent/US6819272B2/en not_active Expired - Lifetime
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4814746A (en) | 1983-06-01 | 1989-03-21 | International Business Machines Corporation | Data compression method |
US4558302A (en) | 1983-06-20 | 1985-12-10 | Sperry Corporation | High speed data compression and decompression apparatus and method |
US4558302B1 (en) | 1983-06-20 | 1994-01-04 | Unisys Corp | |
US4701745A (en) | 1985-03-06 | 1987-10-20 | Ferranti, Plc | Data compression system |
US5813011A (en) * | 1995-05-12 | 1998-09-22 | Fujitsu Limited | Storage of a compressed file containing its own compression management table |
US5760716A (en) * | 1996-08-21 | 1998-06-02 | Autodesk, Inc. | Vector data compression |
US6195741B1 (en) * | 1997-12-25 | 2001-02-27 | Fujitsu Limited | Data processing device having a variable length code processing mechanism |
US6279092B1 (en) * | 1999-01-06 | 2001-08-21 | International Business Machines Corporation | Kernel identification for space management in compressed memory systems |
US6396420B1 (en) * | 1999-02-26 | 2002-05-28 | Autodesk, Inc. | Delta compression of floating point coordinate data |
US6236960B1 (en) * | 1999-08-06 | 2001-05-22 | Motorola, Inc. | Factorial packing method and apparatus for information coding |
US6271776B1 (en) * | 1999-11-30 | 2001-08-07 | Cirrus Logic, Inc. | Selectively removing sequences from an enumerative modulation code |
WO2002008956A1 (en) * | 2000-07-20 | 2002-01-31 | Repliweb Inc. | Focal point compression method and apparatus |
US6501395B1 (en) * | 2002-04-10 | 2002-12-31 | Hewlett-Packard Company | System, method and computer readable medium for compressing a data sequence |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030110296A1 (en) * | 2001-12-07 | 2003-06-12 | Kirsch Steven T. | Method and system for reducing network latency in data communication |
Also Published As
Publication number | Publication date |
---|---|
US20040085232A1 (en) | 2004-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7492290B1 (en) | Alternative encoding for LZSS output | |
US8090027B2 (en) | Data compression using an arbitrary-sized dictionary | |
JP3009727B2 (en) | Improved data compression device | |
US10938410B2 (en) | Hardware friendly data compression | |
EP1039645B1 (en) | Method and apparatus for data compression | |
US7079051B2 (en) | In-place differential compression | |
EP0903866B1 (en) | Method and apparatus for data compression | |
US5874908A (en) | Method and apparatus for encoding Lempel-Ziv 1 variants | |
JPH0773012A (en) | Method and system for data compression | |
EP2148444B1 (en) | Data compression and decompression | |
US6748520B1 (en) | System and method for compressing and decompressing a binary code image | |
US6819272B2 (en) | System, method and computer readable medium for compressing a data sequence for partial decompressing | |
JP2536422B2 (en) | Data compression device and data decompression device | |
US6501395B1 (en) | System, method and computer readable medium for compressing a data sequence | |
JP3242795B2 (en) | Data processing device and data processing method | |
JP3241787B2 (en) | Data compression method | |
JP3088740B2 (en) | Data compression and decompression method | |
JP3143029B2 (en) | Data compression method and device, and data decompression method and device | |
JPH03209923A (en) | Data compressing system | |
JP2004120251A (en) | Method for compressing data | |
JPH06291677A (en) | Data compressing device and data restoring device | |
JPH0511974A (en) | Data compression and restoring method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HEWLETT-PACKARD COMPANY, COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GHILDIYAL, RAMKRISHNA;REEL/FRAME:013595/0240 Effective date: 20021025 |
|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., COLORAD Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:013776/0928 Effective date: 20030131 Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.,COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:013776/0928 Effective date: 20030131 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.;REEL/FRAME:037079/0001 Effective date: 20151027 |
|
REMI | Maintenance fee reminder mailed | ||
FPAY | Fee payment |
Year of fee payment: 12 |
|
SULP | Surcharge for late payment |
Year of fee payment: 11 |
|
AS | Assignment |
Owner name: OT PATENT ESCROW, LLC, ILLINOIS Free format text: PATENT ASSIGNMENT, SECURITY INTEREST, AND LIEN AGREEMENT;ASSIGNORS:HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP;HEWLETT PACKARD ENTERPRISE COMPANY;REEL/FRAME:055269/0001 Effective date: 20210115 |
|
AS | Assignment |
Owner name: VALTRUS INNOVATIONS LIMITED, IRELAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OT PATENT ESCROW, LLC;REEL/FRAME:056157/0492 Effective date: 20210503 |