IPB
ЛогинПароль:

> Компиляция правил для данного раздела

1. Заголовок темы должен быть информативным. В противном случае тема закрывается и удаляется ...
2. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
3. Одна тема - один вопрос (задача)
4. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Арифметическое кодирование, помогите разобраться
сообщение
Сообщение #1


Гость






Пытаюсь разобраться в алгоритме адаптивного арифметического кодирования (файл с исходником прилагается)

В литературе описано что этот способ может сжать строку состоящую из 100 символов "a" плюс 100 "b" плюс 100 "c" плюс 100 "d" лучше чем прямое кодирование Хафмана по 2 бита на символ. Попробовал - фигушки. По хафману получаю строку 100 байт, по арифметическому почти вдвое больше. unsure.gif

В чем дело? Может есть у кого исходники, которые обеспечивают заявленое арифметическое сжатие лучшее чем по Хафману?


Прикрепленные файлы
Прикрепленный файл  AR.PAS ( 7.71 килобайт ) Кол-во скачиваний: 567
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Вот посмотри, ресурс полностью посвященный сжатию информации, может найдешь для себя что-нибудь интересное : http://www.data-compress.net


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цитата(webstep @ 24.10.2005 17:29)
В литературе описано что этот способ может сжать строку состоящую из 100 символов "a" плюс 100 "b" плюс 100 "c" плюс 100 "d" лучше чем прямое кодирование Хафмана по 2 бита на символ.
Каким это образом, интересно? rolleyes.gif Вообще - то метод адаптивного арифметического кодирования дает следующие результаты:
Цитата
Результаты сжатия, достигнутые данным алгоритмом ваpьиpуются от 4.8-5.3 битов/символ для коpотких текстов до 4.5-4.7 битов/символ для длинных.


Так что ни о каком результате в 2 бита на символ даже не мечтай, особенно на коротких текстах (до сотен килобайт)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата(volvo @ 24.10.2005 21:47)
Результаты сжатия, достигнутые данным алгоритмом ваpьиpуются от 4.8-5.3 битов/символ для коpотких текстов до 4.5-4.7 битов/символ для длинных.

Это касается простого алгоритма, когда нужно писать и таблицы и пр. а есть адаптивный, когда пишется только код. У меня книжка есть, там один автор написал, что адаптивный арифметический сжимает лучше Хафмана. Кроме того, эта прога (что я прикладывал) она сжимает почти в 2 бита - файл размером 20485 - в 5198. Вот я и интересовался, может в этой проге алгоритм просто немного криво реализован и можно его улучшить что бы было меньше чем 2 бита...

А сайты эти я все знаю не один день уже smile.gif там одни и те же тексты лежат, ничего нового. Я бы мог пожалуй и побольше выложить rolleyes.gif только практичекой пользы от этих текстов никакой почти...

Сообщение отредактировано: webstep -
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 15.05.2024 8:46
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name