A coding method of a binary markov information source comprises the steps of providing a range on a number line from 0 to 1 which corresponds to an output symbol sequence from the information source, and performing data compression by binary expressing the position information on the number line corresponding to the output symbol sequence. The present method further includes the steps of providing a normalization number line to keep a desired calculation accuracy by expanding a range of the number line which includes a mapping range, by means of a multiple of a power of 2, when the mapping range becomes below 0.5 of the range of the number line; allocating a predetermined mapping range on the normalization number line for less probable symbols LPS proportional to its normal occurrence probability; allocating the remaining mapping range on the normalization number line for more probable symbols MPS; and reassigning the predetermined mapping range to the remaining mapping range the half of a portion where the allocated remaining range is less than 0.5, when the allocated remaining range becomes below 0.5.

Patent
   RE35781
Priority
Jan 31 1989
Filed
Nov 07 1995
Issued
May 05 1998
Expiry
Oct 20 2013
Assg.orig
Entity
Large
10
9
all paid
7. A method for coding information from a markov information source by binary coding an output symbol sequence from said information source comprising less probable symbols (LPSs) and more probable symbols (MPSs), each sequence having an occurrence probability on a number line, said method comprising,
(a) storing in memory storage device a number line having a range which corresponds to said output symbol sequence;
(b) allocating a portion of said number line as a predetermined mapping interval for said LPSs, said portion being proportional to the occurrence probability of said LPS;
(c) allocating the remaining portion of said number line as a mapping interval for said MPSs; and
(d) controlling the allocating portion of said number line as a mapping interval for said LPSs by assigning a predetermined portion of the mapping interval for said LPSs above a prescribed value of said number line to said mapping interval for said MPSs, so as to maintain said portion proportional to the occurrence probability of said LPSs.
1. A method for coding information from a binary markov information source by binary coding an output symbol sequence from said information source comprising less probable symbols (LPS) and more probable symbols (MPS), each having an occurrence probability, on a normalization number line, said method comprising the steps of;
a) storing in a memory storage device a normalization number line having a range from 0 to 1 which corresponds to said output symbol sequence,
b) keeping a desired calculation accuracy by expanding a range of the normalization number line which includes a mapping range by means of a multiple of a power of 2 when the mapping range becomes less than 0.5,
c) allocating a portion of said normalization number line as a predetermined mapping interval for said LPSs, said portion being proportional to the occurrence probability of said LPSs,
d) allocating the remaining portion of said number line as a mapping interval for said MPSs,
e) reassigning half of the LPS mapping interval above 0.5 to said MPS mapping interval when the LPS mapping range exceeds 0.5, and
f) repeating steps b, c, d and e.
4. An apparatus for coding information from a binary markov information source by binary coding an output symbol sequence comprising less probable symbols (LPSs) and more probable symbols (MPS) from said information source on a normalization number line, said LPSs and MPSs each having an occurrence probability, said apparatus comprising:
memory storage means for storing a normalization number line having a range from 0 to 1 which corresponds to said output symbol sequence,
means for keeping desired calculation accuracy by expanding a range on said normalization number line, which includes a mapping range, by a multiple power of 2 when the mapping range becomes less than 0.5,
means for allocating a portion of said normalization number line as a predetermined mapping interval for said LPSs, said portion being proportional to the occurrence probability of said LPSs,
means for allocating the remaining portion of said normalization number line as a mapping interval for said MPSs,
means for reassigning half of the LPS mapping interval above 0.5 to said MPS mapping interval when said LPS mapping interval exceeds 0.5.
8. An apparatus for coding information from a markov information source by binary coding an output symbol sequence from said information source comprising less probable symbols (LPSs) and more probable symbols (MPSs) from said information source on a number line, said LPSs and MPSs each having an occurrence probability, said apparatus comprising:
memory storage means for storing a number line having a range which corresponds to said output symbol sequence;
means for allocating a portion of said number line as a predetermined mapping interval for said LPSs, said portion being proportional to the occurrence probability of said LPSs;
means for allocating the remaining portion of said number line as a mapping interval for said MPSs; and
control means for controlling the allocating portion of said number line as a mapping interval for said LPSs by assigning a predetermined portion of the mapping interval for said LPSs above a prescribed value of said number line to said mapping interval for said MPSs, so as to maintain said portion proportional to the occurrence probability of said LPSs. 9. A method for coding information from a markov information source by binary coding an output symbol sequence from said information source comprising less probable symbols (LPSs) and more probable symbols (MPSs) each having an occurrence probability on a number line, said method comprising,
(a) storing in memory storage device a number line having a range which corresponds to said output symbol sequence;
(b) allocating a a portion of said number line as a predetermined mapping interval for said LPSs, said portion being proportional to the occurrence probability of said LPSs;
(c) allocating the remaining portion of said number line as a mapping interval for said MPSs; and
(d) reassigning half of the LPSs mapping interval above a prescribed value to said MPSs mapping interval when the LPSs mapping range exceeds the prescribed value, and
(e) repeating steps b, c, and d. 10. An apparatus for coding information from a markov information source by binary coding an output symbol sequence from said information source comprising less probable symbols (LPSs) and more probable symbols (MPSs) from said information source on a number line, said LPSs and MPSs each having an occurrence probability, said apparatus comprising:
memory storage means for storing a number line having a range which corresponds to said output symbol sequence;
means for allocating a a portion of said number line as a predetermined mapping interval for said LPSs, said portion being proportional to the occurrence probability of said LPSs;
means for allocating the remaining portion of said number line as a mapping interval for said MPSs; and
means for reassigning half of the LPSs mapping interval above a prescribed value to said MPSs mapping interval when said LPSs mapping range exceeds
the prescribed value. 11. A decoding method for a markov information source coded by binary coding comprising the steps of:
associating more probable symbols (symbols of a higher occurrence probability) and less probable symbols (symbols of a lower occurrence probability) to predetermined ranges on a number line on the basis of a range on a number line for a preceding symbols;
outputting a decoding signal according to a result of correspondence between the ranges and an inputted codeword;
comparing the range on the number line of more probable symbols with the range on the number line of less probable symbols; and
adjusting the range on the number line of less probable symbols and the range on the number line of more probable symbols by assigning predetermined portion of the range for said less probable symbols above a prescribed value of said number line to said range for said more probable symbols so that the range on the number line of less probable symbols does
not exceed that of the more probable symbols. 12. A decoding method for a markov information source coded by binary coding comprising the steps of:
associating more probable symbols (symbols of a higher occurrence probability) and less probable symbols (symbols of a lower occurrence probability) to predetermined ranges on a number line on the basis of a range on a number line for a preceding symbols;
outputting a decoding signal according to a result of correspondence between the ranges and an inputted codeword;
comparing a range on the number line of more probable symbols with a fixed value; and
adjusting the range on the number line of more probable symbols and the range on the number line of less probable symbols so that when a range of more probable symbols is below the fixed value on a number line, half of a value below the fixed value of a range more probable symbols is moved from the range of less probable symbols to that of more probable symbols.
13. A coding method for a markov information source by binary coding comprising the steps of:
associating more probable symbols (symbols of a higher occurrence probability) and less probable symbols (symbols of a lower occurrence probability) to predetermined ranges on a number line on the basis of a range on a number line for a preceding symbols;
coding a signal according to a result of correspondence between the ranges to generate a codeword;
comparing the range on the number line of more probable symbols with the range on the number line of less probable symbols; and
adjusting the range on the number line of less probable symbols and the range on the number line of more probable symbols by assigning a predetermined portion of the range for said less probable symbols above a prescribed value of said number line to said range for said more probable symbols so that the range on the number line of less probable symbols does
not exceed that of the more probable symbols. 14. A coding method for a markov information source by binary coding comprising the steps of:
associating more probable symbols (symbols of higher occurrence probability) and less probable symbols (symbols of a lower occurrence probability) to predetermined ranges on a number line on the basis of a range on a number line or a preceding symbols;
coding a signal according to a result of correspondence between the ranges to generate a codeword;
comparing a range on the number line of more probable symbols with a fixed value; and
adjusting the range on the number line of more probable symbols and the range on the number line of less probable symbols so that when a range of more probable symbols is below the fixed value on a number line, half of a value below the fixed value of a range of more probable symbols is moved from the range of less probable symbols to that of more probable symbols.
2. A coding method as set forth in claim 1 whereas said LPS mapping interval is a power of 1/2 of the range of said number line.
3. A coding method as set forth in claim 1 further including the steps of assigning as an offset value the difference between 1 and the LPS mapping interval after a current step (e) (b), and coding a base value for subsequent use for as a codeword by calculating the offset value as a codeword by subtracting said offset value from using the difference between the lower upper limit of said MPS mapping range just after a previous step (b) and a lower limit of mapping range just before normalization the current step (b).
5. An apparatus as set forth in claim 4 wherein said LPS mapping interval is a power of 1/2 of the range of said number line.
6. An apparatus as set forth in claim 4 further comprising means for assigning an offset value, said offset value being the difference between 1 and the LPS mapping interval before reassignment of the LPS mapping interval after the range of the normalization number line is expanded, and means for coding a base value for subsequent use for calculating the offset value after reassignment of the LPS mapping interval by subtracting said offset value from the as a codeword by using the difference between the upper limit of the mapping range just after a previous expansion of the normalization number line and a lower limit of said MPS mapping range before normalization expansion.

#x2205;000 to 0.001 and 0 (MPS) is assigned to from 0.001 to 1.000. Now, if a 0 symbol occurs, the range is limited to between 0.001 to 1.000. At this time, the offset value is 0.001. For the next symbol, since it is known from the occurrence probability of 1, that S=1/4 is used in both reception and transmission 1 is assigned to from 0.001 to 0.011. At this point, if 0 occurs, the range of the number line varies from 0.011 to 1.000 Next, if S=1/4, the upper limit of the allocated range of LPS is 0.011+0.01=0.101 which exceeds 0.1 (0.5 in decimal). So a correction in which the portion exceeding 0.1 is halved is made, and the upper limit becomes 0.1001. At this point, LPS has occurred and the size of the area of LPS is 0.1001-0.011=0.0011. So if it is multiplied by 22, it exceeds 0.1 (0.5 in decimal). Therefore, the number of shift digits is 2. The base value is 0.1001-0.01=0.0101 and this value is output as a code word. A new offset value becomes 0.01, since 0.011-0.0101=0.0001 is shifted by two digits. Next, S is set at 1/41/8 and 0.01+0.001=0.011 becomes the border between 0 and 1. If 0 occurs at this point, the offset value is increased to 0.011. If S is set at 1/4 at this point, this results in 0.011+0.01=0.101, which exceeds 0.1. If As the portion exceeding 0.1 is halved, the value becomes 0.1001. Since the area of 0 is less than 0.1 if the symbol is 0, 1000 corresponding to a base value 0.1000 must be output as an output, and then it must be normalized 21 times. In other words, 0.1000 is a base value, so a new offset value is 0.001, which is 21 times (0.1001-0.1). Suppose that the next state is S=1/4 1/8 and MPS has occurred, then the offset value is 0.0001 border value is 0.001+0.001=0.010. Further, suppose that the next state is S=1/4 and 1 (LPS) has occurred, an offset value 0.0100 is output as a code word.

A final code word becomes one which is calculated on the basis of the number of shift digits and the code words which are output as explained above (refer to the lower portion of FIG. 5).

If the value of S is selected from a set of values which are powers of 1/2, such as 1/2, 1/4, or 1/8, the multiples of powers of 2 for normalization can be constant, even if the value of S is varied by the correction when the allocated area of MPS is below 0.5 on the normalization number line. This is advantageous.

When an area is provided to 0 (MPS) and 1 (LPS) according to the above-described manner, the relationship between the value of S and the assumed occurrence probability of LPS when S is determined, is given as follows:

S≦r<S/(1/2+S)

Therefore, when S=1/2, r 1/2 r=1/2, which indicates it is stable.

If S=1/4, 1/4≦r<1/2.

On the ocher hand, if S is fixed in a conventional manner, the assumed occurrence probability r becomes as follows:

S≦r<S/(1/2)=2S

If S=1/2, 1/2≦r<1/2,

If S=1/4, 1/4≦r<1.

That is, since the variation range of r is larger for a conventional system, the system of the present invention is more efficient.

The multi-level information source can be converted into a binary information source by tree development. Therefore, it goes without saying that the present invention can be applied to a multi-level information source.

Yoshida, Masayuki, Kimura, Tomohiro, Ono, Fumitaka, Kino, Shigenori

Patent Priority Assignee Title
5936559, Jun 09 1997 AT&T Corp Method for optimizing data compression and throughput
6188334, Jul 31 1997 AT&T Corp. Z-coder: fast adaptive binary arithmetic coder
6225925, Mar 13 1998 AT&T Corp Z-coder: a fast adaptive binary arithmetic coder
6281817, Mar 13 1998 AT&T Corp. Z-coder: a fast adaptive binary arithmetic coder
6373408, Apr 12 1999 Mitsubishi Denki Kabushiki Kaisha Encoding apparatus, decoding apparatus, encoding/decoding apparatus, encoding method and decoding method
6476740, Jul 31 1997 AT&T Corp. Z-coder: a fast adaptive binary arithmetic coder
6756921, Dec 27 2000 Mitsubishi Denki Kabushiki Kaisha MULTIPLE QUALITY DATA CREATION ENCODER, MULTIPLE QUALITY DATA CREATION DECODER, MULTIPLE QUANTITY DATA ENCODING DECODING SYSTEM, MULTIPLE QUALITY DATA CREATION ENCODING METHOD, MULTIPLE QUALITY DATA CREATION DECODING METHOD, AND MULTIPLE QUALITY DATA CREATION ENCODING/DECODING METHOD
7209593, Dec 18 2001 Mitsubishi Denki Kabushiki Kaisha Apparatus, method, and programs for arithmetic encoding and decoding
7305138, Jul 15 2002 NEC Corporation Image encoding apparatus, image encoding method and program
7333661, Sep 27 2002 Mitsubishi Denki Kabushiki Kaisha Image coding device image coding method and image processing device
Patent Priority Assignee Title
4028731, Sep 29 1975 International Business Machines Corporation Apparatus for compression coding using cross-array correlation between two-dimensional matrices derived from two-valued digital images
4070694, Dec 22 1975 Olympus Optical Company Limited Picture image information band compression and transmission system
4099257, Sep 02 1976 International Business Machines Corporation Markov processor for context encoding from given characters and for character decoding from given contexts
4177456, Feb 10 1977 Hitachi, Ltd. Decoder for variable-length codes
4191974, Feb 08 1977 Mitsubishi Denki Kabushiki Kaisha Facsimile encoding communication system
4286256, Nov 28 1979 International Business Machines Corporation Method and means for arithmetic coding utilizing a reduced number of operations
4355306, Jan 30 1981 International Business Machines Corporation Dynamic stack data compression and decompression system
4905297, Nov 18 1988 International Business Machines Corporation Arithmetic coding encoder and decoder system
4933883, Dec 04 1985 International Business Machines Corporation Probability adaptation for arithmetic coders
/
Executed onAssignorAssigneeConveyanceFrameReelDoc
Nov 07 1995Mitsubishi Denki Kabushiki Kaisha(assignment on the face of the patent)
Date Maintenance Fee Events
Jan 27 1999ASPN: Payor Number Assigned.
Apr 15 1999M184: Payment of Maintenance Fee, 8th Year, Large Entity.
Mar 31 2003M1553: Payment of Maintenance Fee, 12th Year, Large Entity.


Date Maintenance Schedule
May 05 20014 years fee payment window open
Nov 05 20016 months grace period start (w surcharge)
May 05 2002patent expiry (for year 4)
May 05 20042 years to revive unintentionally abandoned end. (for year 4)
May 05 20058 years fee payment window open
Nov 05 20056 months grace period start (w surcharge)
May 05 2006patent expiry (for year 8)
May 05 20082 years to revive unintentionally abandoned end. (for year 8)
May 05 200912 years fee payment window open
Nov 05 20096 months grace period start (w surcharge)
May 05 2010patent expiry (for year 12)
May 05 20122 years to revive unintentionally abandoned end. (for year 12)