HYBRID ARITHMETIC-COMBINATORIAL ENCODER
First Claim
Patent Images
1. A method of encoding a binary sequence comprising:
- determining a ratio of one-valued bits to a total number of bits in said binary sequence;
when said ratio is within a predetermined range, encoding said binary sequence using range coding; and
when said ratio is outside said predetermined range, encoding said binary sequence using combinatorial coding.
4 Assignments
0 Petitions
Accused Products
Abstract
Hybrid range coding/combinatorial coding (FPC) encoders and decoders are provided. Encoding and decoding can be dynamically switched between range coding and combinatorial according to the ratio of ones to the ratio of bits in a partial remaining sequence in order to reduce the computational complexity of encoding and decoding.
-
Citations
23 Claims
-
1. A method of encoding a binary sequence comprising:
-
determining a ratio of one-valued bits to a total number of bits in said binary sequence; when said ratio is within a predetermined range, encoding said binary sequence using range coding; and when said ratio is outside said predetermined range, encoding said binary sequence using combinatorial coding. - View Dependent Claims (2, 3, 4)
-
-
5. A method of encoding a binary sequence comprising:
-
selecting at least a first portion of said binary sequence to be coded using combinatorial coding; selecting at least a second portion of said binary sequence to be coded using range coding; coding said first portion using combinatorial coding to obtain an combinatorial code; coding said second portion using range coding to obtain an arithmetic code. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
-
12. A method of decoding a combined arithmetic/factorial pulse code, the method comprising:
-
(a) using a known number of ones represented in said combined arithmetic/factorial pulse code, iteratively evaluating an approximation of a combinatorial function using different postulated positions of a last one in order to determine a postulated position that yields a largest value that is less than said combined arithmetic/factorial pulse code; (b) subtracting said largest value from said combined arithmetic/factorial pulse code to obtain a first remaining code value; (c) testing if a ratio of a remaining number of one bits to a remaining total number of bits satisfies a bound for regulating transitioning from factorial pulse coding to arithmetic coding; (d) when said bound for regulating transitioning between factorial pulse coding and arithmetic coding is satisfied decoding at least a portion of said remaining code value using arithmetic decoding; (e) after each bit is decoded using arithmetic decoding testing if a bound for regulating transitioning from arithmetic coding to factorial pulse coding is satisfied; (f) when said bound for regulating transitioning from arithmetic coding to factorial pulse coding is satisfied selecting a second remaining code value and returning to step (a) (g) when said combined arithmetic/factorial pulse code is fully decoded ceasing.
-
-
13. A method of encoding a pulse vector comprising:
-
using arithmetic encoding, generating at least one arithmetic code component to represent at least one item of information selected from the group consisting of;
a set of locations of a set of non-zero pulses and a set of pulse magnitudes of said set of non-zero pulses;combining said at least one arithmetic code component using a factorial pulse coding code combining formula. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method of decoding comprising:
-
receiving a codeword representing an integer pulse sequence; decoding a number of non-zero positions in said integer pulse sequence based on said codeword comparing a ratio of said number of non-zero position to a total number of positions in said integer pulse sequence to a bound; selectively decoding said codeword using arithmetic coding or combinatorial coding based on an outcome of said comparing. - View Dependent Claims (23)
-
Specification