| View previous topic :: View next topic |
| Author |
Message |
Anand Guest
|
Posted: Wed Sep 10, 2003 7:17 pm Post subject: Regarding models used in arithmetic coder |
|
|
Sir
Iam learning Arithmetic coder. Normally zero order model is used for better
compression. If we use 1st order , 2nd order etc how it will be constructed.
How internally it interacts with the coder. By constructing more models the
compression ratio will be effective. Is it true? If possible please send the
details regarding this. Thanking you Sir.
with regards,
Anand.V. |
|
| |
|
Back to top |
Raymond Wan Guest
|
Posted: Wed Sep 10, 2003 8:37 pm Post subject: Re: Regarding models used in arithmetic coder |
|
|
On 10 Sep 2003, Anand wrote:
[quote]Iam learning Arithmetic coder. Normally zero order model is used for better
compression. If we use 1st order , 2nd order etc how it will be constructed.
How internally it interacts with the coder. By constructing more models the
compression ratio will be effective. Is it true? If possible please send the
details regarding this. Thanking you Sir.
[/quote]
Yes, it>s true (sort of -- a too large a model would unfavourably
affect compression), but I suggest you look at some PPM implementations
based on an underlying arithmetic coder. The higher order models are
handled by PPM (or some other statistical model), and not the arithmetic
coder.
Ray |
|
| |
|
Back to top |
David A. Scott Guest
|
Posted: Thu Sep 11, 2003 12:35 am Post subject: Re: Regarding models used in arithmetic coder |
|
|
Raymond Wan <rwan@student.unimelb.edu.au> wrote in
news:Pine.OSF.4.10.10309110134450.12430-100000@cassius.its.unimelb.edu.au
:
[quote]
On 10 Sep 2003, Anand wrote:
Iam learning Arithmetic coder. Normally zero order model is used
for better
compression. If we use 1st order , 2nd order etc how it will be
constructed. How internally it interacts with the coder. By
constructing more models the compression ratio will be effective. Is
it true? If possible please send the details regarding this. Thanking
you Sir.
Yes, it>s true (sort of -- a too large a model would unfavourably
affect compression), but I suggest you look at some PPM
implementations based on an underlying arithmetic coder. The higher
order models are handled by PPM (or some other statistical model), and
not the arithmetic coder.
Ray
[/quote]
if you want a good PPM site check out BICOM
http://www3.sympatico.ca/mt0000/bicom/bicom.html
if want better arithmetic file compressors than
what others use you could try a bijective arithmetic
file compressor mine or Matts at
http://www3.sympatico.ca/mt0000/biacode/biacode.html
or Tims at
http://mandala.co.uk/biac/index.html
David A. Scott
--
My Crypto code
http://cryptography.org/cgi-bin/crypto.cgi/Misc/scott19u.zip
http://cryptography.org/cgi-bin/crypto.cgi/Misc/scott16u.zip
http://www.jim.com/jamesd/Kong/scott19u.zip old version
My Compression code http://bijective.dogma.net/
**TO EMAIL ME drop the roman "five" **
Disclaimer:I am in no way responsible for any of the statements
made in the above text. For all I know I might be drugged.
As a famous person once said "any cryptograhic
system is only as strong as its weakest link" |
|
| |
|
Back to top |
OlEnSh Guest
|
Posted: Sat Sep 13, 2003 2:15 pm Post subject: Re: Regarding models used in arithmetic coder |
|
|
"Anand" <anand_veera@yahoo.com> wrote in message
news:267d34e3.0309100617.27c87b54@posting.google.com...
[quote]Sir
Iam learning Arithmetic coder. Normally zero order model is used for
better
compression. If we use 1st order , 2nd order etc how it will be
constructed.
How internally it interacts with the coder. By constructing more models
the
compression ratio will be effective. Is it true? If possible please send
the
details regarding this. Thanking you Sir.
[/quote]
arith. coder encodes a symbol based on its estimated probability. 1st order
means the symbol probability depends on one previous symbol, and so on. The
model is simply how you want to assign a probability to the symbol you>re
encoding.
e.g. in text compression, let>s say the symbol you>re encoding is A. In the
first order model, you look one previous symbol. You can assign different
symbol probabilities based on that previous symbol, i.e. the context the
current symbol appears in. e.g. if the previous symbol is S, you might want
to give it a probability of 0.3, but if it is Q you give it a smaller
probability of 0.01, the idea being that A seldom follows Q in English. Yiu
can fix the probability prior to encoding (a static model) or build it along
the way (adaptive model)
see the papers:
Arithmetic coding- Witten, et al
Arithmetic coding revisited - Moffat, et al
(both have source code)
Also, Intro to Data Compression book by K. Sayood. |
|
| |
|
Back to top |
|