Арифметическое кодирование

Арифметическое кодирование — один из алгоритмов энтропийного сжатия.

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

Как правило, превосходит алгоритм Хаффмана по эффективности сжатия, позволяет сжимать данные с энтропией, меньшей 1 бита на кодируемый символ, но некоторые версии имеют патентные ограничения от компании IBM[1].

Характеристики

Обеспечивает почти оптимальную степень сжатия с точки зрения энтропийной оценки кодирования Шеннона. На каждый символ требуется почти бит, где  — информационная энтропия источника.

В отличие от алгоритма Хаффмана, метод арифметического кодирования показывает высокую эффективность для дробных неравномерных интервалов распределения вероятностей кодируемых символов. Однако в случае равновероятного распределения символов, например, для строки бит 010101…0101 длины метод арифметического кодирования приближается к префиксному коду Хаффмана и даже может занимать на один бит больше[2].

Принцип действия

Для описания алгоритма на некотором алфавите с данными о частотности использования символов используется отрезок , называемый «рабочим», на котором располагаются точки таким образом, что длины образованных отрезков будут равны частоте использования символа, и каждый такой отрезок соответствует одному символу.

Для символа из потока выбирается соответствующий ему отрезок, после чего он становится рабочим отрезком. Далее отрезок разбивается его таким же образом, как был разбит ; операция выполняется для некоторого числа последовательных символов. Затем выбирается произвольное число из рабочего отрезка. Биты этого числа вместе с длиной его битовой записи и считаются результатом арифметического кодирования использованных символов потока.

Пример

Вероятностная модель

Используя метод арифметического кодирования, можно достичь почти оптимального представления для заданного набора символов и их вероятностей (согласно теории энтропийного кодирования источника Шеннона, оптимальное представление будет стремиться к числу бит на каждый символ, вероятность которого ). Алгоритмы сжатия данных, использующие в своей работе метод арифметического кодирования, перед непосредственным кодированием формируют модель входных данных на основании количественных или статистических характеристик, а также найденных в кодируемой последовательности повторений или паттернов — любой дополнительной информации, позволяющей уточнить вероятность появления символа в процессе кодирования. Очевидно, что чем точнее определена или предсказана вероятность символа, тем выше эффективность сжатия.

В простейшем случае статической модели для кодирования информации, поступающей с системы обработки сигнала типы сигналов и соответствующие им вероятности распределены следующим образом:

  • 60%-я вероятность нейтрального значения сигнала, или NEUTRAL.
  • 20%-я вероятность положительного значения сигнала, или POSITIVE.
  • 10%-я вероятность отрицательного значения сигнала, или NEGATIVE.
  • 10%-я вероятность признака конца кодируемой последовательности, или END-OF-DATA.

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

В качестве алфавита вероятностной модели метода можно рассматривать любой набор символов, исходя из особенностей решаемой задачи. Более эвристические подходы, использующие основную схему метода арифметического кодирования, применяют динамические или адаптивные модели. Идея данных методов заключается в уточнении вероятности кодируемого символа за счёт учёта вероятности предшествующего или будущего контекста (то есть, вероятность появления кодируемого символа после определённого k-го числа символов слева или справа, где k — это порядок контекста).

Кодирование сообщения

Для кодирования последовательности «NEUTRAL NEGATIVE END-OF-DATA» сначала разбивается отрезок от 0 до 1 согласно частотам сигналов: NEUTRAL — от 0 до 0,6; POSITVE — от 0,6 до 0,8; NEGATIVE — от 0,8 до 0,9; END-OF-DATA — от 0,9 до 1. Далее, осуществляется кодирование, начиная с первого символа: NEUTRAL соответствует отрезок от 0 до 0,6. Отрезок от 0 до 0,6 разбивается, и кодируется второй символ — NEGATIVE, на отрезке от 0 до 0,6 ему соответствует отрезок от 0,48 до 0,54. На полученном рабочем отрезке кодируется END-OF-DATA, этому символу соответствует отрезок от 0,534 до 0,54.

Так как это был последний символ, то кодирование завершено. Закодированное сообщение — отрезок от 0,534 до 0,54 или любое число из него, например, 0,538.

Декодирование сообщения

На диаграмме представлено декодирование итогового интервального значения 0,538 согласно модели в приведённом примере. Область интервала разбивается на подынтервальные области согласно вероятностным характеристикам появления соответствующих символов. Затем, очередной выбранный интервал разбивается аналогичным способом.

Если необходимо раскодировать сообщение методом арифметического кодирования, закодированное значением 0,538, то в начальном состоянии процесса рассматривается интервал от 0 до 1; на основании известной вероятностной модели дробное значение 0,538 попадает в интервал от 0 до 0,6, что позволяет определить первый символ, который был выбран кодировщиком, поэтому его значение выводится как первый символ декодированного сообщения.

Адаптивное арифметическое кодирование

Как и алгоритм Хаффмана, арифметическое кодирование может быть адаптивным (адаптивный алгоритм Хаффмана). Такой алгоритм позволяет строить разбиение каждого интервала на подынтервалы в поточном режиме (без предварительного сканирования данных), не имея никаких начальных знаний из исходного распределения, что позволяет за один проход сжать данные. Преимуществом этого способа является возможность кодировать на лету (аналогично адаптивному алгоритму Хаффмана).

Известно[3], что совсем необязательно, чтобы подынтервалы более частых символов располагались ближе к началу рабочего интервала, порядок может быть абсолютно любым. Поэтому для адаптивного арифметического кодирования можно расставить подынтервалы, соответствующие каждому символу, в порядке появления этих символов в тексте, зарезервировав последний подынтервал для случая, когда очередной символ встречается во входном потоке первый раз. В этом случае передаётся сначала этот последний подынтервал, а затем сам символ, что позволяет декодеру «опознать» его. Когда известных с начала входного потока символов несколько, их кумулятивные частоты можно хранить в обычном массиве, если же их число достигает сотни и больше, удобно применять такую структуру данных, как бинарное сбалансированное дерево[3], в котором каждая ветвь хранит два значения: непосредственную частоту символа и сумму частот всех символов, входящих в эту ветвь.[Комм. 1] При появлении очередного символа его частота в дереве увеличивается на 1, но лишь после изменения рабочего интервала, иначе декодирование станет невозможным.

Комментарии

  1. А также ссылку на родительскую ветвь в качестве «служебного» поля: когда частота изменяется, дерево должно автоматически изменить соответствующие суммы частот для родительской ветви, для родительской от родительской ветви и так далее до корня.

Примечания

  1. История развития теории сжатия информации Архивная копия от 28 декабря 2010 на Wayback Machine / Compression.ru, Sarmin Alexey, 10 марта 2011
  2. Dr. Dobb’s Data Compression Newsletter Архивная копия от 11 декабря 2017 на Wayback Machine, August 13, 2001
  3. 1 2 Д. Сэломон. Сжатие данных, изображений и звука. — М.: Техносфера, 2004.

Ссылки

Read other articles:

الصفحه دى ممكن تحتاج تتويك علشان تبقا حسب معايير ويكيپيديا كمان يمكن الصفحه مافيهاش لينكات لصفحات تانيه, حاول تضيف فيها لينكات لصفحات تانيه متعلقه بيها او تحسين تنسيق الصفحه. رينيه كروز (بالانجليزى: Renae Cruz)    معلومات شخصيه الميلاد 29 نوفمبر 1987 (36 سنة)[1][2]  نيويو

 

Großbüllesheim Stadt Euskirchen Koordinaten: 50° 41′ N, 6° 49′ O50.6841666666676.8211111111111150Koordinaten: 50° 41′ 3″ N, 6° 49′ 16″ O Höhe: 150 m ü. NHN Fläche: 3,44 km² Einwohner: 1993 (31. Dez. 2020)[1] Bevölkerungsdichte: 579 Einwohner/km² Eingemeindung: 1. Juli 1969 Postleitzahl: 53881 Vorwahl: 02251 Karte Lage von Großbüllesheim in Euskirchen Großbüllesheim, Luftauf...

 

Ця стаття про комуну. Про село див. Сучу-де-Сус. комуна Сучу-де-СусSuciu de Sus Дерев'яна церква у селі Ларга Країна  Румунія Повіт  Марамуреш Телефонний код +40 262 (Romtelecom, TR)+40 362 (інші оператори) Координати 47°25′53″ пн. ш. 24°02′29″ сх. д.H G O Висота 413 м.н.р.м. Площа 114,69 км² ...

Wilhelm Sohn, Foto Constantin Luck, nach 1884 Karl Rudolf Sohn als junger Mann, Gemälde von Wilhelm Sohn, 1858, zuletzt gezeigt in der Schau Kinderbildnisse aus drei Jahrhunderten, 17., 18. und 19. Jahrhundert in der Alten Kunsthalle Düsseldorf, 1937 Wilhelm Sohn, gemalt von Otto Sohn-Rethel 1893 Johann August Wilhelm Sohn (* 29. August 1829 in Berlin; † 16. März 1899 in Pützchen bei Bonn) war ein deutscher Maler der Düsseldorfer Schule. Inhaltsverzeichnis 1 Leben 2 Lehrtätigkeit 3 We...

 

هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (أبريل 2022) مراد تورون معلومات شخصية الميلاد 27 مايو 1994 (العمر 29 سنة)باقر كوي  الطول 1.85 م (6 قدم 1 بوصة) مركز اللعب مهاجم الجنسية تركيا  معلومات النادي النادي الح

 

Russian footballer In this name that follows Eastern Slavic naming conventions, the patronymic is Vladimirovich and the family name is Nikitinsky. Dmitri Nikitinsky Personal informationFull name Dmitri Vladimirovich NikitinskyDate of birth (1992-02-09) 9 February 1992 (age 31)Place of birth Volokolamsk, RussiaHeight 1.80 m (5 ft 11 in)Position(s) Left back[1]Senior career*Years Team Apps (Gls)2009–2010 FC Saturn Moscow Oblast 0 (0)2011–2014 Tom Tomsk 17 (0)...

اليابان - جيبوتي     اليابان   جيبوتي تعديل مصدري - تعديل   العلاقات اليابانية الجيبوتية (بالإنجليزية: Djibouti–Japan relations)‏ ، هي العلاقات الثنائية الرسمية بين الإمبراطورية اليابانية وجمهورية جيبوتي. تاريخها في اليوم السابع والعشرين من شهر يونيو عام 1977م،[1] اع...

 

Type of computer printing This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Inkjet printing – news · newspapers · books · scholar · JSTOR (August 2018) (Learn how and when to remove this template message) An Epson inkjet printer A modern HP Deskjet 2630 all-in-one printer Part of a series on theHistory of prin...

 

Gyttja is een organisch sediment. De term gyttja komt uit het Zweeds en wordt in de aardwetenschappen gebruikt, ook in andere talen. Gyttja kan bestaan uit: resten van micro-organismen (vaak diatomeeën), afzettingen van calciumcarbonaat na de assimilatie van koolstofdioxide door planten, alsook resten van dieren en hun uitwerpselen (feces en pseudofeces). Gyttja kan worden afgezet op de bodem van zuurstof- en voedselrijke (eutrofe) tot zuurstofarme en voedselarme (oligotrofe), stilstaande wa...

semua, semua.Album studio karya Teddy AdhityaDirilis24 Agustus 2023 (2023-08-24)Durasi38:07LabelTEDProduser Teddy Adhitya Lafa Pratomo Enrico Octaviano Kronologi Teddy Adhitya Ocean(2022) semua, semua.(2023) Singel dalam album Semua, Semua Seperti Setiap HariDirilis: 14 Juli 2023 Caraku, CaramuDirilis: 24 Agustus 2023 Semua, Semua (digayakan sebagai semua, semua.) adalah album studio ketiga karya penyanyi dan penulis lagu Indonesia, Teddy Adhitya. Album ini dirilis pada 24 Agustus 20...

 

Список осіб, що під час Голодомору в Україні 1932–1933 років рятували людей від голоду та смерті. Зміст 1 Список 2 Див. також 3 Посилання 4 Примітки Список № з/п Особа(и) Дані про особу (осіб) Фото Інформація про порятунок та інше Посилання 1 Бабенко Андрій с. Тарган Володарського р

 

Tortas fritas recién sacadas de la grasa listas para comer La torta frita (en todo Uruguay y gran parte de Argentina), pireca (en Paraguay)[1]​, cachanga (en el Perú), hojaldra (en Panamá y Colombia), sopaipilla (en Chile y la región argentina de Cuyo),[2]​ chipá cuerito o chipá chyryrý (en el Noreste argentino y Paraguay)[3]​ y frito (en el noroeste argentino y Bolivia) es un bocado típico de la gastronomía de América Latina. Las tortas fritas usualmente se prepar...

This article is about the 2009 album by Architects. For other uses, see The Hollow Crown. 2009 studio album by ArchitectsHollow CrownStudio album by ArchitectsReleased26 January 2009RecordedJuly 2008StudioOuthouse Studios, Reading, Berkshire, UKGenre Metalcore mathcore Length41:10Label United by Fate Distort Century Media Producer John Mitchell Ben Humphreys Architects studio album chronology Ruin(2007) Hollow Crown(2009) The Here and Now(2011) Hollow Crown is the third studio album b...

 

Foresta decidua secca del Madagascar occidentale Madagascar dry deciduous forests Foresta decidua secca nella Riserva speciale dell'Ankarana Ecozona Afrotropicale (AT) Bioma Foreste secche di latifoglie tropicali e subtropicali Codice WWF AT0202 Distribuzione della foresta decidua secca Scheda WWF La foresta decidua secca del Madagascar occidentale è una ecoregione che occupa la parte nord-occidentale del Madagascar.[1] Questa ecoregione, caratterizzata da un alto grado di endem...

 

1974 Indian film Athaiya MamiyaTitle cardDirected byChithralaya GopuScreenplay byChithralaya GopuStory byVijaya GanesanProduced byN. R. AmudhaStarringJaishankarUshanandiniCinematographyK. S. Baskar RaoEdited byN. M. SankarMusic byM. S. ViswanathanProductioncompanyGaruda FilmsRelease date 16 August 1974 (1974-08-16) Running time178 minutes[1]CountryIndiaLanguageTamil Athaiya Mamiya (transl. Aunt or Auntie?) is a 1974 Indian Tamil-language film directed by Chithrala...

2008 Norwegian filmManhuntInternational film posterDirected byPatrik SyversenWritten byNini Bull RobsahmPatrik SyversenProduced byKnud Bjørne-LarsenTorleif HaugeStarringKristina Leganger AaserudJanne Beate BønesHenriette BruusgaardJørn Bjørn Fuller GeeCinematographyHåvard Andre ByrkjelandEdited byVeslemøy B. LangvikMusic bySimon BoswellProductioncompanyFender FilmDistributed byEuforia Film (Norway)Release date2008Running time75 minutesCountryNorwayLanguageNorwegianBox office$1.1 million...

 

كنيسة يرول الكاثوليكية. هناك تقارير متضاربة حول المعتقدات الدينيّة في جنوب السودان، على الرغم من هذا التضارب في التقارير الإحصائيّة تتفق هذه التقارير على أن الأديان الثلاثة الرئيسية في جنوب السودان هي الديانات الأفريقية التقليدية والمسيحية والإسلام. بين المسيحيين هناك ...

 

You can help expand this article with text translated from the corresponding article in Russian. (March 2019) Click [show] for important translation instructions. View a machine-translated version of the Russian article. Machine translation, like DeepL or Google Translate, is a useful starting point for translations, but translators must revise errors as necessary and confirm that the translation is accurate, rather than simply copy-pasting machine-translated text into the English Wikipe...

Immature form of some invertebrates Two Schistocerca gregaria nymphs beside an adult In biology, a nymph (from Ancient Greek νύμφα nūmphē meaning bride) is the immature form of some invertebrates, particularly insects, which undergoes gradual metamorphosis (hemimetabolism) before reaching its adult stage.[1] Unlike a typical larva, a nymph's overall form already resembles that of the adult, except for a lack of wings (in winged species). In addition, while a nymph moults, it ne...

 

Bob Hansen Datos personalesNombre completo Robert Louis Hansen IIApodo(s) BobNacimiento Des Moines, Iowa Estados Unidos18 de enero de 1961 (62 años)Nacionalidad(es) EstadounidenseAltura 1,98 m (6′ 6″)Carrera deportivaDeporte BaloncestoEquipo universitario Iowa (1979-1983)Club profesionalDraft de la NBA 3.ª ronda (puesto 54) 1983 por Utah Jazz[1]​Club RetiradoLiga NBAPosición EscoltaTrayectoria Utah Jazz (1983–1990) Sacramento Kings (1990-1991) Chicago Bulls (1991...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!