Далее цветовые каналы изображения, включая черно-белый канал Y, разбиваются на блоки 8 на 8 пикселей. Каждый блок подвергается дискретному косинусному преобразованию. Полученные коэффициенты подвергаются квантованию и упаковываются с помощью кодов Хаффмана (см. Алгоритм Хаффмана).
Матрица, используемая для квантования коэффициентов, хранится вместе с изображением. Обычно она строится так, что высокочастотные коэффициенты подвергаются более сильному квантованию, чем низкочастотные. Это приводит к огрублению мелких деталей на изображении. Чем выше степень сжатия, тем более сильному квантованию подвергаются все коэффициенты.
Варианты хранения.
Progressive JPEG — такой способ записи сжатого изображения в файл, при котором старшие (низкочастотные) коэффициенты находятся в начале файла. Это позволяет получить уменьшенное изображение при загрузке лишь небольшой части файла и повышать детализацию изображения по мере загрузки оставшейся части. Поэтому Progressive JPEG получил широкое распространение в Internet. В целом алгоритм основан на дискретном косинусоидальном преобразовании (ДКП), которое является разновидностью дискретного преобразования Фурье, применяемом к матрице изображения для получения некоторой новой матрицы коэффициентов. Для получения исходного изображения применяется обратное преобразование. ДКП раскладывает изображение по амплитудам некоторых частот. Таким образом, при преобразовании мы получаем матрицу, в которой многие коэффициенты либо близки, либо равны нулю. Кроме того, благодаря несовершенству человеческого зрения, можно аппроксимировать коэффициенты более грубо без заметной потери качества изображения. Для этого используется квантование коэффициентов. В самом простом случае – это арифметический побитовый сдвиг вправо. При этом преобразовании теряется часть информации, но могут достигаться большие коэффициенты сжатия.
Процесс сжатия по схеме JPEG включает ряд этапов: – преобразование изображения в оптимальное цветовое пространство; – субдискретизация компонентов цветности усреднением групп пикселей; – применение дискретных косинусных преобразований для уменьшения избыточности данных изображения; – квантование каждого блока коэффициентов ДКП с применением весовых функций, оптимизированных с учетом визуального восприятия человеком; – кодирование результирующих коэффициентов (данных изображения) с применением алгоритма группового кодирования и алгоритма Хаффмана для удаления избыточности информации.
Достоинства и недостатки.
К недостаткам формата следует отнести то, что при сильных степенях сжатия дает знать о себе блочная структура данных, изображение «дробится на квадратики». Этот эффект особенно заметен на областях с низкой пространственной частотой (плавные переходы изображения, например, чистое небо). В областях с высокой пространственной частотой (например, контрастные границы изображения), возникают характерные «артефакты» — иррегулярная структура пикселей искаженного цвета и/или яркости. Кроме того, из изображения пропадают мелкие цветные детали.
Однако, несмотря на недостатки, JPEG получил очень широкое распространение из-за высокой степени сжатия, относительно существующих во время его появления альтернатив.
Существует также еще один метод компрессии - Метод Главных Компонент (англ. Principal Components Analysis, PCA) - один из основных способов уменьшить размерность данных, потеряв наименьшее количество информации. ирсоном (англ. Karl Pearson) в 1901 г. Применяется во многих областях, таких как распознавание образов, компьютерное зрение, сжатие данных и т. п. Вычисление главных компонент сводится к вычислению собственных векторов и собственных значений ковариационной матрицы исходных данных. Иногда метод главных компонент называют преобразованием Кархунена-Лоэва (англ. Karhunen-Loeve) или преобразованием Хотеллинга (англ. Hotelling transform). Другие способы уменьшения размерности данных — это метод независимых компонент, многомерное шкалирование, а также многочисленные нелинейные обобщения: метод главных кривых и многообразий, нейросетевые методы «узкого горла», самоорганизующиеся карты Кохонена и др.
Архиваторы.
Для пользователя не столь важно, какой алгоритм функционирует внутри программы-архиватора. Куда важнее интегральное качество системы сжатия. К примеру, в список задач архиваторов может входить не только сжатие/распаковка файлов, но и сохранение дерева файловой системы, атрибутов и имен файлов, шифровка данных архива, архивация с паролем и т. д.
Некоторые свойства и функции не относятся к категории обязательных, но без них программа много теряет. Это удобство настройки, наличие развитого графического интерфейса, возможность сохранения параметров в файле архива, создание многотомных и/или самораспаковывающихся архивов.
При выборе инструмента для работы с упакованными файлами и архивами наиболее важным параметром является совместимость, т. е. возможность обмена данными с другими пользователями. Ведь по степени сжатия форматы почти не отличаются, а мощность современных ПК делает время обработки архивов второстепенным показателем.
Многие популярные архивные форматы (ZIP, LZH, ARJ, ARC, ICE) появились во времена DOS. Сегодня же, в эпоху Windows, из этих старожилов остались только ZIP, ARJ и LZH. В то же время появился новый кроссплатформенный формат JAR (Java ARchive), который был создан для пересылки многокомпонентных Java-апплетов. Еще один формат - CAB от Microsoft применяется для архивирования дистрибутивов ПО.
Во многих случаях удачным решением проблемы совместимости является создание архивов в виде самораспаковывающихся программ (EXE-файлов). Правда, многие программы-архиваторы способны создавать EXE-архивы лишь на базе своего "родного" формата, что не всегда удобно (невозможно без специальных инструментов выборочно извлекать файлы из архива).
Несмотря на то, что цена мегабайта дискового пространства невысока и уменьшается с каждым годом, потребность в архивации не исчезает. Неудивительно - сжатие данных необходимо не только для экономии места на локальном дисковом носителе, но и для передачи информации. А при выборе архиватора пользователи должны руководствоваться его универсальностью и надежностью, не забывая о качестве и скорости сжатия.
WinZip 8Условно-бесплатная программа от Nico Mak Computing, содержащая все необходимые инструменты для работы с архивами.
Утилита WinZip 8 содержит встроенные средства для манипулирования архивами и упакованными файлами популярных архивных форматов. Кроме того, WinZip 8 поддерживает распространенные в Internet форматы сжатия: TAR, GZIP, UUencode, XXencode, BinHex и MIME, а ARJ-, LZH - и ARC-файлы обрабатываются посредством внешних программ. Имеется функция парольной защиты и создания многотомных архивов. Бесплатная утилита WinZip Internet Browser Support позволяет просматривать архивы в Microsoft Internet Explorer и Netscape Navigator.
В WinZip 8 включена интеграция с Windows: можно перетаскивать файлы в/из Проводника, архивировать и распаковывать файлы, не выходя из него.
WinZip Wizard упрощает архивацию и разархивацию программ, распространяемых в виде Zip-файлов. Режим WinZip Wizard рассчитан на начинающих.
Для создания самораспаковывающихся файлов можно воспользоваться WinZip Self-Extractor Personal Edition, входящей теперь в состав WinZip 8.
UltimateZip 2.0Бесплатный архиватор с множеством удобно реализованных функций для работы с архивами.
Хотя архиватор UltimateZip 2.0 можно отнести к "середнякам" по времени сжатия/распаковки, тем не менее, достаточно развитые дополнительные функции (сильно напоминающие WinZip) позволили ему занять второе месте в тесте.
Так же, как и WinZip 8, эта программа поддерживает распространенные в Internet форматы сжатия UUencode и XXencode, а также популярные UNIX-форматы архивирования каталогов и сжатия файлов (GZ, Z, TAR).
UltimateZip 2.0 интегрируется в Windows 9x/Me/NT/2000 и поддерживает механизм перетаскивания, что позволяет работать с архивами без открытия ее окна.
Встроенный мастер помогает начинающим пользователям освоить процесс архивирования файлов, а c помощью встроенной папки Favorites можно удобным образом организовывать свои архивы.
UltimateZip 2.0 поддерживает шифрование архивов, создание многотомных и самораспаковывающихся архивов, обеспечивает их комментирование, тестирование и восстановление.
WinRAR 2.8Утилита, поддерживающая технологию медиа-сжатия и имеющая удобный пользовательский интерфейс
Разработанная российским программистом Евгением Рошалем программа WinRAR 2.8 позволяет работать с ZIP-архивами, но основным форматом для нее является формат RAR. В ней можно создавать самораспаковывающиеся EXE-архивы, а также использовать внешние программы для работы с архивами типа ARJ, LZH и CAB. Многотомные архивы доступны лишь в формате RAR.
Пополнять архивы и извлекать из них объекты можно с помощью перетаскивания. Для просмотра архивов есть встроенный модуль визуализации, но можно подключать и внешнюю утилиту.
В режиме мультимедиа-сжатия WinRar пытается использовать дополнительный алгоритм для улучшения сжатия оцифрованного звука или полноцветных изображений в формате BMP. В этом случае может быть достигнута на 30 % более высокая степень сжатия, чем при обычном методе упаковки.
Использование метода непрерывного архивирования может на 10-50 % увеличить степень сжатия, особенно если упаковывается значительное количество небольших файлов однотипного содержания.
Все современные Windows-архиваторы обеспечивают практически одинаковое качество сжатия. В этом нет ничего удивительного - все они построены на одних математических алгоритмах. Поэтому основная "борьба" развернулась за лучшее время сжатия и распаковки, а также дополнительные возможности, облегчающие работу пользователя с архивами.
Наилучшие общие результаты показала программа WinZip 8, подтвердив звание самого популярного архиватора. Она обеспечивает наименьшее время сжатия и предоставляет широкий спектр дополнительных функций.
ЗАКЛЮЧЕНИЕ
Первые теоретические разработки в области сжатия информации относятся к концу 40-х годов. В конце семидесятых появились работы Шеннона, Фано и Хафмана. К этому времени относится и создание алгоритма FGK (Faller, Gallager, Knuth), где используется идея "сродства", а получатель и отправитель динамически меняют дерево кодов.
Пропускная способность каналов связи более дорогостоящий ресурс, чем дисковое пространство, по этой причине сжатие данных до или во время их передачи еще более актуально. Здесь целью сжатия информации является экономия пропускной способности и в конечном итоге ее увеличение. Все известные алгоритмы сжатия сводятся к шифрованию входной информации, а принимающая сторона выполняет дешифровку принятых данных.
Преимущество методов сжатия с потерями над методами сжатия без потерь состоит в том, что первые существенно превосходят по степени сжатия, продолжая удовлетворять поставленным требованиям.
Методы сжатия с потерями часто используются для сжатия звука или изображений. В таких случаях распакованный файл может очень сильно отличаться от оригинала на уровне сравнения "бит в бит", но практически неотличим для человеческого уха или глаза в большинстве практических применений.
В данной работе были рассмотрены основные методы сжатия данных, широко применяющиеся в компьютерных сетях в настоящее время.
СПИСОК ЛИТЕРАТУРЫ
Р. Галлагер. Теория информации и надежная связь. Советское радио, Москва, 1974.
Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин. Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео. Диалог-МИФИ, 2002 г., 384 стр.
жатие изображений: вчера, сегодня, завтра // Hard‘n’Soft, № 4/2001.
Семёнов технологии (ГНЦ ИТЭФ, book. itep. ru).
Internet:
http://www. citforum. ru/ http://pression. ru/ http://www. / http://ru. wikipedia. org/
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 |


