Сайт о сжатии >> ARCTEST Сравнительные тесты Альтернативные тесты
|
Методы динамического сжатия данныхВ последнее время по локальным и глобальным сетям стали передавать большое количество информации, причем как текстовой так и не текстовой, и объем этой информации неуклонно растет, а скорость передачи этой информации оставляет желать лучшего. На сегодняшний день в большинстве системах передачи информации используются методы динамического сжатия данных, но на мой взгляд, этой проблеме сегодня уделяется не достаточно внимания. Самым распространенным методом динамического сжатия данных сегодня является метод "Lempel - Ziv Welch", который является наиболее скоростным методом, но к сожалению не дает большой компрессии данных. Коэффициент сжатия данных с использованием этого алгоритма, в зависимости от типа данных (текст, исполняемые модули, графика, музыка или уже сжатые файлы), колеблется от 0 до 35 процентов сжатия. В это же время существуют, на мой взгляд, более производительные методы динамического сжатия данных, которые практически ни где не используются такие как: Adapted Huffman, Bit-oriented (LZ-2), Cleary and Witten (CW), Dynamic Marcov (DMC), Ariphmetic и другие. Исходя из вышесказанного следует, что следует обратить на эту проблему пристальное внимание. Предлагается рассмотреть три динамических метода сжатия данных: Dynamic Marcov (DMC), Ariphmetic, Lempel - Ziv Welch и сделать их сравнительный анализ. Проведя сравнительный анализ этих трех методов динамического сжатия можно видеть, что при практически одинаковом времени сжатия, на 100000 байт время сжатия колеблется от 70 до 1330 микросекунд, коэффициент сжатия колеблется от 1.6 до 72.5% и максимальное качество (отношение коэффициента сжатия к времени сжатия) показывает Арифметический метод динамического сжатия данных.
Таблица №1 Результаты сжатия, достигнутые при использовании адаптивного метода кодирования варьируются от 4.8-5.3 битов/символ для коротких английских текстов (10^3-10^4 байтов) до 4.5-4.7 битов/символ для длинных (10^5-10^6 байтов). Хотя существуют и адаптивные техники Хаффмана, они все же испытывают недостаток концептуальной простоты, свойственной арифметическому кодированию. При сравнении они оказываются более медленными. Например, таблица №2 приводит характеристики сpеднеоптимизиpованной реализации арифметического кодирования на Си с той из программ compact UNIXa, что реализует адаптивное кодирование Хаффмана с применением сходной модели. Небрежная проверка compact показывает, что внимание к оптимизации для обоих систем сравнимо при том, что арифметическое кодирование выполняется в 2 раза быстрее. Показатели сжатия в некоторой степени лучше у арифметического кодирования для всех тестовых файлов. Различие будет заметным в случае применения более сложных моделей, предсказывающих символы с вероятностями, зависящими от определенных обстоятельств (например, следования за буквой q буквы u).
Таблица №2 Неадаптированное кодирование может быть выполнено арифметическим методов с помощью постоянной модели. При этом сжатие будет лучше, чем при кодировании Хаффмана. В порядке минимизации времени выполнения, сумма частот будет выбираться равной степени двойки, чтобы операции деления при вычислении границ выполнялись через сдвиги. Для реализации на ассемблере время кодирования/декодирования составило 60-90 мкс. Аккуратно написанная реализация кодирования Хаффмана с использованием таблиц просмотра для кодирования и декодирования будет выполнятся немного быстрее. Ворслов А.С.
Сайт о сжатии
>>
ARCTEST
>>
Сравнительные тесты
|
Альтернативные тесты
|
Графические тесты
|
Новости
|
Утилиты
|
Файл'менеджеры
|
Описания
|
Линки
|
Necromancer's DN
|
Поддержка
Сайт о сжатии >> Новинки | О сервере | Статистика Книга "Методы сжатия данных" >> Универсальные | Изображений | Видео Разделы >> Download (статьи+исходники) | Ссылки | Ru.compress | Arctest | Видео | Каталог ссылок | Форум Проекты >> Д.Ватолина | А.Ратушняка | М.Смирнова | В.Юкина | Е.Шелвина | А.Филинского | Д.Шкарина | С.Оснача |