Method and apparatus for encoding and decoding information signals
AssigneeTelefonaktiebolaget LM Ericsson (publ)
InventorsBernard Jan Marie Smeets, Jan Åberg
Life of this patent
Estimating the term…
Abstract
A method and apparatus for coding and decoding information are disclosed. The method is for encoding a message that includes a first set of binary digits. Each binary digit has a first value (“0”) or a second value (“1”). The method includes receiving a first set of binary digits, generating a second set of binary digits in response to the first set of binary digits (Y), and selecting the values of binary digits in the second set such that the number of binary digits having the first binary value in the second set is higher than the number of binary digits having the first binary value in the first set.
Claims51
A method for reducing the number of binary digits in a message, the method comprising the steps of:
- encoding a message in accordance with a predefined Huffman coding method such that a compressed message is generated, the compressed message having a reduced number of the binary digits;
- the Huffman coding is performed after the following steps:
- receiving at least one message comprising a plurality of characters;
- calculating, for each character, a value indicating a relative frequency of the character in the at least one message;
- assigning a first binary coded code symbol (H1) to a character having the highest relative frequency, the code symbol comprising a plurality of binary digits;
- selecting all or substantially all the binary digits in the first binary coded code symbol to a first binary value;
- assigning a unique symbol to each unique remaining character so as to generate a first encoded message;
- the first encoded message consisting of a first set of binary digits;
- wherein
- the binary digits in each symbol are selected such that the number of binary digits having the first binary value is maximised in the first set of binary digits;
- encoding the first set of binary digits such that a second set of binary digits is generated;
- and
- selecting the binary digits in the second set of binary digits such that the number of binary digits having the first binary value in the second set is higher than the number of binary digits having the first binary value in the first set.
In an information handling device, a method for encoding a message comprising a first set of binary digits, each binary digit having a first value or a second value, the method comprising the steps of:
- receiving a first set of binary digits, wherein said first set of binary digits is generated by assigning a first binary coded symbol to a character having a highest relative frequency, said binary coded symbol comprising a plurality of binary digits;
- generating a second set of binary digits in response to the first set of binary digits;
- and
- selecting the values of the binary digits in the second set such that the number of binary digits having the first binary value in the second set is higher than the number of binary digits having the first binary value in the first set.
A method for retrieving a message from a compressed message comprising a first set of binary digits, said first set having a first number of binary digits, the method comprising the steps of:
- decoding a compressed message in accordance with a predefined Huffman decoding method such that a first decoded message is achieved, the first decoded message comprising a second set of binary digits;
- the second set having a second number of binary digits, the second number being higher than the first number;
- the Huffman decoding is performed before the steps of:
- retrieving a second decoded message comprising a third set of binary digits dependent on the first decoded message, the process of retrieving the second decoded message comprising the steps of:
- decoding the second coded message such that the third set of binary digits is generated, each said binary digit having a first value or a second value, wherein
- the binary digits in the third set of binary digits are selected such that the number of binary digits having the first binary value in third set is lower than the number of binary digits having the first binary value in the second set,
- interpreting the third set of binary digits as a set of symbols, and
- transforming each code symbol into a corresponding character, wherein said transformation is performed based upon a relative frequency of said each code symbol such that a third decoded message is retrieved using a list indicating correspondence between symbols and characters.
A data decoding method which generates a first message of binary digits in response to a second message of binary digits;
- each binary digit having a first value or a second value,
- the process of generating the first message comprising the steps of:
- receiving or reading the second message (E),
- generating the first message in response to a second message such that a first set of binary digits is retrieved;
- and
- wherein the binary digits in the first set of binary digits are selected such that the number of binary digits having the first binary value in first set is lower than the number of binary digits having the first binary value in the second set, wherein the binary digits are generated based upon a prediction value in response to a number of previous binary digits in the first set of binary digits.
A device for encoding a message, the device comprising:
- a character input for receiving said message comprising a plurality of characters;
- a conversion unit for assigning a binary coded code symbol to said plurality of characters based upon a relative frequency of said characters in said message, wherein said binary coded code symbol comprises a plurality of binary digits,
- a first input for receiving a first set of binary digits, each said binary digit having a first value or a second value;
- a first output;
- a signal encoding means which is coupled to the first input and to the first output;
- wherein the encoding means is set up to generate a second set of bits in response to the first set of binary digits;
- and
- wherein the encoding means is set up to select the values of the binary digits in the second set such that the number of binary digits having the first binary value in the second set is higher than the number of binary digits having the first binary value in the first set.
A device for decoding a message, the device comprising:
- a first output for delivering a first set of binary digits, each said binary digit having a first value or a second value,
- a first input for receiving a second set of binary digits,
- a decoding means which is coupled to the input and to the output,
- the decoding means being set up to generate the first set of binary digits dependent on said second set of binary digits, wherein the decoding means comprises a delay unit and a predictor unit for generating prediction values;
- and
- the decoding means being set up to select the values of binary digits in the first set such that the number of binary digits having the first binary value is lower than in the encoded message.
A computer program product for use with a device for encoding information, the encoding device including a volatile memory, a processor, and a non-volatile memory having a limited recording capacity;
- the processor being coupled to the volatile memory and to the non-volatile memory;
- the computer program product comprising:
- a recording medium,
- means, recorded on the recording medium, for directing the processor to receive a first set of binary digits, each said-binary digit having a first value or a second value, wherein said first set of binary digits is generated by assigning a first binary coded code symbol to a character having a highest relative frequency, said first binary coded code symbol comprising said plurality of binary digits;
- means, recorded on the recording medium, for directing the processor to generate a second set of binary digits;
- and
- means, recorded on the recording medium, for directing the processor to select the values of binary digits in the second set such that the number of binary digits having the first binary value in the second set is higher than the number of binary digits having the first binary value in the first set.
A computer program product for use with a portable text handling system for enabling retrieval of compressed data, the text handling system including a volatile memory, a processor, and a non-volatile memory having a limited recording capacity, and a display unit;
- the processor being coupled to the volatile memory, to the non-volatile memory, and to the display unit;
- the computer program product comprising:
- a recording medium,
- means, recorded on the recording medium for directing the processor to read a first set of binary digits from the non-volatile memory,
- means, recorded on the recording medium, for directing the processor (430), responsive to the first set of binary digits, to generate a second set of binary digits, each said binary digit having a first binary value or a second binary value, the second set having a larger number of binary digits than the first set;
- means, recorded on the recording medium, for directing the processor, responsive to the second set of binary digits, to generate a third set of binary digits, such that the proportion between the number of binary digits having the first binary value and the number of binary digits having the second binary value is lower in the third set than in the second set;
- means, recorded on the recording medium, for directing the processor to interpret a predefined group of binary digits in the third set as a code symbol in a first coded message,
- means, recorded on the recording medium, for directing the processor to transform each code symbol of the first coded message into a corresponding character such that a decoded message is retrieved, wherein said transformation is performed based upon a relative frequency of said each code symbol;
- and
- means, recorded on the recording medium, for directing the processor to transform a code symbol into a binary coded character such that the proportion between the number of binary digits having the first binary value and the number of binary digits having the second binary value is lower in the decoded message than in the first coded message.
A computer program product for use with a device for decoding information;
- the device including a volatile memory, a processor, and a non-volatile memory having a limited recording capacity;
- a first output for delivering a first set of binary digits, each said binary digit having a first value or a second value;
- a first input for receiving a second set of binary digits;
- the processor being coupled to the volatile memory and to the non-volatile memory;
- the computer program product comprising:
- a recording medium;
- means, recorded on the recording medium, for directing the processor to read a second set of binary digits;
- means, recorded on the recording medium, for directing the processor to generate a first set of binary digits dependent on said second set of binary digits;
- and
- means, recorded on the recording medium, for directing the processor to select the values of binary digits in the first set such that the number of bits having the first binary value is lower than in the second set of binary digits, wherein the values of binary digits are generated based upon a prediction value in response to a number of previous binary digits in the first set.
Dependencies are inferred from the claim text.