IP Library Patent Application 15978095
Patent Application
App. No. 15/978,095

METHOD AND APPARATUS FOR COMPRESSION AND DECOMPRESSION OF A NUMERICAL FILE

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 None
App. No.
15/978,095
Abstract

The present invention relates to a method and apparatus for compression and decompression of a numerical file. The compression method comprises: read a numerical file, convert each numerical element into a 32-bit floating point number; combine all the numbers to form a binary numerical file; group the binary numerical file into a n-bit sequence pattern; generate a Huffman tree based on frequency of occurrences of a plurality of unique bit patterns present in the binary numerical file; generate codewords and replace unique bit patterns with codewords so that a compressed binary numerical file is generated. A method for decompression comprises: read a compressed binary numerical file having codewords; fetch a part or entire compressed binary numerical file using an address dictionary; replace the codewords with unique bit patterns using a Huffman tree such that a decompressed binary numerical file being generated.

Claims (49)

1 . A method for compression, the method comprising:

reading a numerical file, wherein the numerical file comprises a plurality of numerical elements;

converting each numerical element into a 32-bit single precision floating point number such that a plurality of 32-bit single precision floating point numbers being generated corresponding to the plurality of numerical elements of the numerical file;

combining the plurality of 32-bit single precision floating point numbers corresponding to the plurality of numerical elements of the numerical file such that a binary numerical file being generated;

grouping the binary numerical file into a n-bit sequence pattern;

generating a Huffman tree based on frequency of occurrences of a plurality of unique bit patterns present in the binary numerical file;

generating a plurality of codewords corresponding to the plurality of unique bit patterns using the Huffman tree; and

replacing the plurality of unique bit patterns present in the binary numerical file with the corresponding plurality of codewords such that a compressed binary numerical file being generated.

2 . The method of claim 1 , wherein a node of the Huffman tree is a unique bit pattern of the plurality of unique bit patterns.

3 . The method of claim 1 , wherein a compression rate of the compressed binary numerical file is based on the n-bit sequence pattern, wherein the n-bit sequence pattern is at least one of: an 8-bit sequence pattern, a 16-bit sequence pattern, a 32-bit sequence pattern or a 64-bit sequence pattern.

4 . A method for decompression, the method comprising:

reading a compressed binary numerical file, wherein the compressed binary numerical file comprises a plurality of codewords;

fetching a part of the compressed binary numerical file or the compressed binary numerical file using an address dictionary; and

replacing the plurality of codewords with a corresponding plurality of unique bit patterns by using a Huffman tree such that a decompressed binary numerical file being generated.

5 . The method of claim 4 further comprising: generating an address dictionary, wherein the address dictionary comprises a plurality of addresses corresponding to a plurality of numerical elements of a numerical file.

6 . The method of claim 4 , wherein the compressed binary numerical file is generated by replacing the plurality of unique bit patterns present in a binary numerical file with the corresponding plurality of codewords.

7 . The method of claim 4 , wherein the Huffman tree is generated based on frequency of occurrences of the plurality of unique bit patterns present in the binary numerical file.

8 . The method of claim 4 , wherein a node of the Huffman tree is a unique bit pattern of the plurality of unique bit patterns.

9 . The method of claim 6 , wherein the binary numerical file is grouped into a n-bit sequence pattern, wherein the n-bit sequence pattern is at least one of: an 8-bit sequence pattern, a 16-bit sequence pattern, a 32-bit sequence pattern or a 64-bit sequence pattern.

10 . The method of claim 6 , wherein the binary numerical file is generated by combining a plurality of 32-bit single precision floating point numbers corresponding to the plurality of numerical elements of the numerical file.

11 . The method of claim 4 , wherein a decompression time of the decompressed binary numerical file is based on the n-bit sequence pattern, wherein the n-bit sequence pattern is at least one of: an 8-bit sequence pattern, a 16-bit sequence pattern, a 32-bit sequence pattern or a 64-bit sequence pattern.

12 . An apparatus for compression, the apparatus comprising:

a processor;

a memory operatively coupled to the processor for executing a plurality of modules present in the memory, the plurality of modules comprising:

a read module configured to read a numerical file, wherein the numerical file comprises a plurality of numerical elements;

a conversion module configured to convert each numerical element into a 32-bit single precision floating point number such that a plurality of 32-bit single precision floating point numbers being generated corresponding to the plurality of numerical elements of the numerical file;

a combination module configured to combine the plurality of 32-bit single precision floating point numbers corresponding to the plurality of numerical elements of the numerical file;

a binary numerical file generation module configured to generate a binary numerical file by combining the plurality of 32-bit single precision floating point numbers corresponding to the plurality of numerical elements of the numerical file;

a group module configured to group the binary numerical file into a n-bit sequence pattern;

a Huffman tree generation module configured to generate a Huffman tree based on frequency of occurrences of a plurality of unique bit patterns present in the binary numerical file;

a codeword generation module configured to generate a plurality of codewords corresponding to the plurality of unique bit patterns using the Huffman tree;

a replaceable module configured to replace the plurality of unique bit patterns present in the binary numerical file with the corresponding plurality of codewords; and

a compressed binary numerical file generation module configured to generate a compressed binary numerical file by replacing the plurality of unique bit patterns present in the binary numerical file with the corresponding plurality of codewords.

13 . The apparatus of claim 12 , wherein a node of the Huffman tree is a unique bit pattern of the plurality of unique bit patterns.

14 . The apparatus of claim 12 , wherein a compression rate of the compressed binary numerical file is based on the n-bit sequence pattern, wherein the n-bit sequence pattern is at least one of: an 8-bit sequence pattern, a 16-bit sequence pattern, a 32-bit sequence pattern or a 64-bit sequence pattern.

15 . An apparatus for decompression, the apparatus comprising:

a processor;

a memory operatively coupled to the processor for executing a plurality of modules present in the memory, the plurality of modules comprising:

a read module configured to read a compressed binary numerical file, wherein the compressed binary numerical file comprises a plurality of codewords;

a fetch module configured to fetch a part of the compressed binary numerical file or the compressed binary numerical file using an address dictionary;

a replaceable module configured to replace the plurality of codewords with a corresponding plurality of unique bit patterns by using a Huffman tree; and

a decompressed binary numerical file generation module configured to generate a decompressed binary numerical file by replacing the plurality of codewords with the corresponding plurality of unique bit patterns by using the Huffman tree.

16 . The apparatus of claim 15 further comprising: an address dictionary module configured to generate an address dictionary, wherein the address dictionary comprises a plurality of addresses corresponding to a plurality of numerical elements of a numerical file.

17 . The apparatus of claim 15 , wherein a compressed binary numerical file generation module is configured to generate the compressed binary numerical file by replacing the plurality of unique bit patterns present in a binary numerical file with the corresponding plurality of codewords.

18 . The apparatus of claim 15 , wherein a Huffman tree generation module is configured to generate the Huffman tree based on frequency of occurrences of the plurality of unique bit patterns present in the binary numerical file.

19 . The apparatus of claim 15 , wherein a node of the Huffman tree is a unique bit pattern of the plurality of unique bit patterns.

20 . The apparatus of claim 17 , wherein the binary numerical file is grouped into a n-bit sequence pattern, wherein the n-bit sequence pattern is at least one of: an 8-bit sequence pattern, a 16-bit sequence pattern, a 32-bit sequence pattern or a 64-bit sequence pattern.

21 . The apparatus of claim 17 , wherein a binary numerical file generation module is configured to generate a binary numerical file by combining a plurality of 32-bit single precision floating point numbers corresponding to the plurality of numerical elements of the numerical file.

22 . The apparatus of claim 15 , wherein a decompression time of the decompressed binary numerical file is based on the n-bit sequence pattern, wherein the n-bit sequence pattern is at least one of: an 8-bit sequence pattern, a 16-bit sequence pattern, a 32-bit sequence pattern or a 64-bit sequence pattern.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2021
From: REDPINE SIGNALS, INC.
To: CEREMORPHIC, INC.
Reel/Frame 059986/0968 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME IN ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON REEL 046166 FRAME 0978. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 13, 2019
From: PAL, CHANDRAJIT; PANKAJ, SUNIL; AKRAM, WASIM; ACHARYYA, AMIT; MATTELA, GOVARDHAN
To: REDPINE SIGNALS, INC.
Reel/Frame 048699/0481 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2018
From: PAL, CHANDRAJIT; PANKAJ, SUNIL; AKRAM, WASIM; ACHARYYA, AMIT; MATTELA, GOVARDHAN
To: REDPINE SIGNALS, INC
Reel/Frame 046166/0978 →