Совершенно безвозмездно :)


Сайт о сжатии >> Форум #Компрессор# >> [Ответить] [Ответы]

Автор: Vadim,
16 апреля 2003 года в 11:22:34

В ответ на : Re: ответ на вопрос об оплате от Александр в 12 апреля 2003 года в 03:29:25:


> 1-ю консультацию оплачу $30.

Странно, что раньше никто не ответил... Да и грех за такие вопросы деньги брать. Книга, в которой подробно описано это и далеко не только это, стоит гораздо дешевле. :)

> Здесь необходимо объяснение алгоритма декодирования ( при целочисленной ! реализации, т.е. метода, при котором снимается ограничение разрядности и становится возможным кодирование бесконечной разрядности), а также принцип расширения интервала при ситуации напр. LOW = 79999 HI = 80000.
> Кодирование с выдвиганием совпавших старших разрядов в код сообщения я знаю.
> Затем сдвиг влево с втягиванием справа в LOW нуля и в HI девятки. (Я кодирую в десятичной системе).

Во-первых, имеет смысл поддерживать максимальную разницу между LOW и HI. Точнее сказать, приемлимо большую. Само мобой, мы предполагаем, что минимальная вероятность кодируемого символа нам примерно известна. И в соответствии с этим знанием прикидываем поддеживаемую разницу. Чем сильнее будет эта разница превышать минимальную вероятность символа, тем лучше.

Далее. Если выдвигаемый старший разряд принимает максимальное значение (в твоем примере это 9), то этот разряд мы сразу на выход не пишем, а запоминаем где-нибудь сбоку. Если таких девяток сдвигается несколько штук подряд, то наша задача - сосчитать их количество и хранить его в некоем счетчике. Если при очередном кодировании мы зашкалили, то выполняем т.н. перенос, т.е. инкрементируемый последний поданный на выход символ, а вместо девяток досылаем на выход такое же количество нулей. Если ничего страшного не произошло и после кучи девяток мы должны закодировать нормальное :) число, можно смело досылать перед ним на выход запомненное количество девяток.

> 2-ю консультацию по второму вопросу оплачу отдельно также в $30.
> Здесь нужно объяснить как решается поддержание точности вычислений при адаптивной модели.
> Модель сама простая. Декрементация счетчика выбывшего символа с новым вычислением вероятности символа. В десятичной получаются вероятноти 1/3(0.3333……., 1/6(0.666666…….) и тд. При большом колл. преобразований накапливается погрешность.

Да надо просто вместо вероятностей хранить счетчики символов. А из счетчиков получить вероятность в любой момент - плевое дело.

Ответы:



Ответить на это сообщение

Тема:

Имя (желательно полное):

E-Mail:

URL:

Город:

Страна:

Вежливый и подробный комментарий:
(Форматируйте его, пожалуйста, как почту - короткими строками
Еnter в конце строки, пустая строка между параграфами).

Пожалуйста, заполните все поля.
И не нажимайте по два раза на кнопку! Дождитесь ответа сервера.