Изменения

Перейти к навигации Перейти к поиску
орфография с помощью AWB
Строка 4: Строка 4:  
Обеспечивает почти оптимальную степень сжатия с точки зрения энтропийной оценки кодирования Шеннона. На каждый символ требуется почти <math>H</math> бит, где <math>H</math> — [[информационная энтропия]] источника.
 
Обеспечивает почти оптимальную степень сжатия с точки зрения энтропийной оценки кодирования Шеннона. На каждый символ требуется почти <math>H</math> бит, где <math>H</math> — [[информационная энтропия]] источника.
   −
В отличии от [[алгоритм Хаффмана|алгоритма Хаффмана]], метод арифметического кодирования показывает высокую эффективность для дробных неравномерных интервалов распределения вероятностей кодируемых символов. Однако в случае равновероятного распределения символов, например для строки бит ''010101...0101'' длины ''s''  метод арифметического кодирования приближается к префиксному коду Хаффмана и даже может занимать на один бит больше.[http://www.ddj.com/architect/184404644]
+
В отличие от [[алгоритм Хаффмана|алгоритма Хаффмана]], метод арифметического кодирования показывает высокую эффективность для дробных неравномерных интервалов распределения вероятностей кодируемых символов. Однако в случае равновероятного распределения символов, например для строки бит ''010101...0101'' длины ''s''  метод арифметического кодирования приближается к префиксному коду Хаффмана и даже может занимать на один бит больше.[http://www.ddj.com/architect/184404644]
    
== Принцип действия ==
 
== Принцип действия ==
Строка 14: Строка 14:     
== Пример работы метода арифметического кодирования ==
 
== Пример работы метода арифметического кодирования ==
   
=== Вероятностная модель ===
 
=== Вероятностная модель ===
   Строка 31: Строка 30:     
=== Кодирование сообщения. ===
 
=== Кодирование сообщения. ===
   
=== Декодирование сообщения ===
 
=== Декодирование сообщения ===
[[Image:Arithmetic encoding.svg|400px|thumb|right|На диаграмме представлено декодирование итогового интервального значения 0.538 согласно модели в приведённом примере. Область интервала разбивается на подинтервальные области согласно вероятностным характеристикам появления соответствующих символов. Затем, очередной выбранный интервал разбивается аналогичным способом.]]
+
[[Изображение:Arithmetic encoding.svg|400px|thumb|right|На диаграмме представлено декодирование итогового интервального значения 0.538 согласно модели в приведённом примере. Область интервала разбивается на подинтервальные области согласно вероятностным характеристикам появления соответствующих символов. Затем, очередной выбранный интервал разбивается аналогичным способом.]]
    
Предположим, что нам необходимо раскодировать сообщение методом арифметического кодирования  согласно описанной выше модели. <!-- модель нужно взять из английского текста --> Сообщение в закодированном виде представлено дробным значением 0.538 (для простоты используется десятичное представление дроби, вместо двоичного основания). Предполагается, что закодированное сообщение содержит ровно столько знаков в рассматриваемом числе, сколько необходимо для однозначного восстановления первоначальных данных.
 
Предположим, что нам необходимо раскодировать сообщение методом арифметического кодирования  согласно описанной выше модели. <!-- модель нужно взять из английского текста --> Сообщение в закодированном виде представлено дробным значением 0.538 (для простоты используется десятичное представление дроби, вместо двоичного основания). Предполагается, что закодированное сообщение содержит ровно столько знаков в рассматриваемом числе, сколько необходимо для однозначного восстановления первоначальных данных.
Анонимный участник

Реклама:

Навигация