Сжатие графики

Автор: Aport Пятница, Январь 23rd, 2015 Нет комментариев

Рубрика: Разное

Дизайнеру, верстальщику, фотографу и каждому пользователю практически каждый день приходится работать с графическими файлами. Но если их накапливается целый архив, то искусство может превратиться в муку. Дизайнер, работая над проектом, хранит в своей рабочей папке до 500 Мб различных файлов — от фотографий и до версий эскизов разрабатываемого проекта. Верстальщикам глянцевых журналов приходится работать с еще большим объемом графической информации. В среднестатистическом глянцевом журнале порядка 96-ти полос, и практически на каждой странице размещаются фотографии или другие иллюстрации. Таким образом, общий объем графической информации, с которой работают при верстке, увеличивается до нескольких гигабайт. О фотографах, работающих в рекламных агентствах, страшно даже подумать. Чтобы сохранить одну фотографию в таком качестве, которое было бы приемлемым для дальнейшего использования в полиграфии, потребуется не менее 30-ти Мб. А таких фотографий не одна и не две, их целый архив, который создавался в течение не одного года. Вот и задумываешься после этого о том, на чем все это хранить и как уменьшить объем архива, чтобы тот занимал поменьше места на и без того забитом до краев винчестере. По этим причинам и было изобретено множество методов сжатия самых разных данных, в том числе графических.

АРХИВАЦИЯ И КОМПРЕССИЯ

Как правило, все методы сжатия графических изображений разделяют на две категории: архивацию и компрессию. Под архивацией понимают сжатие информации с возможностью ее дальнейшего восстановления. Компрессия же означает потерю некоторого количества информации об изображении, что естественно приводит к ухудшению качества, но уменьшает объем сохраненных данных. Архивировать можно как растровую, так и векторную графику. Принцип архивации состоит в том, что программа анализирует наличие в сжимаемых данных одинаковых последовательностей и исключает их, записывая вместо повторяющегося фрагмента ссылку на предыдущий и аналогичный ему для того, чтобы была возможность восстановления. Хорошим примером графического объекта с большим количеством одинаковых последовательностей может стать фотография или рисунок с голубым небом в изображении или со сплошной однотонной заливкой. При таком подходе можно восстанавливать нужную информацию без потерь. Компрессия же не гарантирует полного восстановления исходных данных, поэтому ее основная задача — не «убить» что-нибудь очень ценное в погоне за уменьшением объема. Обычно информация, подвергнутая компрессии, занимает значительно меньше объема, чем сохраненная методами архивации. Именно это обстоятельство и оставляет этому методу место под солнцем. Регулирование степени сжатия дает право на выбор: размер выходного файла или сохранение его качества. Рассмотрим несколько алгоритмов сжатия данных, которые не вносят изменений в исходные файлы и гарантируют полное восстановление данных.

RLE (RUN LENGTH ENCODING)

Метод сжатия данных, при котором одинаковые последовательности одних и тех же байтов заменяются однократным упоминанием повторяющегося байта (или целой цепочки байтов) и числа его повторений в исходных данных. Например, строка типа 0100 0100 0100 0100 0100 0100 0100 0100, описывающая некую группу пикселей, будет заменена на запись типа 0100х8 и т.п. Применяется этот тип сжатия в тех случаях, когда изображение имеет большие участки одного цвета, цифровое представление которых идентично. В основном этот тип сжатия применим для монохромных изображений с небольшим количеством цветов: для деловой и научной графики, в которых сжатием данных можно добиться наилучших результатов. Алгоритм применим для сжатия других типов данных (в том числе и не графических), но малоэффективен, так как сжимаемые данные должны иметь простую повторяющуюся структуру. Этот алгоритм имеет еще одно важное преимущество — он от- носительно прост и позволяет быстро производить распаковку из этого формата и упаковку обратно (все графические данные для их обработки должны быть предварительно распакованы, а любая компрессия или архивация применяется в основном для временного или постоянного хранения файла). В принципе, на основе этого несложного алгоритма работают более совершенные и более сложные (а также менее быстрые) методы сжатия графических данных (я рассмотрю их ниже). Этот метод используется для файлов формата .PSD, .BMP и других.

CCITT GROUP 3, CCITT GROUP 4

Эти два похожие метода сжатия графических данных работают с однобитными изображениями, сохраненными в цветовой модели Bitmap. Основаны на поиске и исключении из исходного изображения дублирующихся последовательностей данных (как и в предыдущем типе сжатия — RLE). Оба ориентированы на упаковку именно растровой графической информации, так как работают с отдельными рядами пикселей в изображении. Изначально алгоритм был разработан для сжатия данных, передаваемых через факсимильные системы связи (CCITT Group 3), а более совершенная разновидность этого метода архивации данных (CCITT Group 4) подходит для записи монохромных изображений с более высокой степенью сжатия. Как и предыдущий алгоритм, он в основном подходит для сжатия изображений с большими одноцветными областями. Его достоинство — скорость выполнения, а недостаток — в ограничениях при компрессии графических данных (не все данные удается эффективно сжать таким образом). Этот метод — для файлов формата .PDF, PostScript (в инкапсулированных объектах) и других.

LZW (LEMPLE-ZIF-WELCH)

Алгоритм сжатия данных, основанный на поиске и замене в исходном файле одинаковых последовательностей данных для их исключения и уменьшения размера «архива». В отличие от предыдущих рассмотренных методов сжатия, более «интеллектуально» просматривает сжимаемое cодержимое, а все ради большей степени сжатия данных. Данный тип сжатия не вносит искажений в исходный графический файл и подходит для обработки растровых данных любого типа — монохромных, чернобелых или полноцветных. Наилучшие результаты получаются при компрессии изображений с большими областями одинакового цвета или изображений с повторяющимися одинаковыми структурами. Этот метод демонстнрирует самые поразительные результаты степени сжатия (среди других существующих методов сжатия графических данных) при полном отсутствии потерь или искажений в исходных файлах. Используется в файлах формата .TIFF, .PDF, .GIF, PostScript (в инкапсулированных объектах) и других.

ZIP

Метод сжатия, аналогичный использующемуся в популярном алгоритме архивации PKZip. В основу ZIP положен метод, аналогичный LZW. Как и LZW, не вносит искажений в исходный файл и лучше всего подходит для обработки графических данных с одинаковыми одноцветными или повторяющимися областями. Используется в файлах формата .PDF, .TIFF и некоторых других. А теперь рассмотрим алгоритмы и методы конвертирования данных, которые вносят изменения в исходные файлы, показывая при этом более высокую степень качества упаковки графических изображений.

JPEG (JOINT PHOTOGRAPHIC EXPERTS GROUP)

Метод, используемый для хранения полутоновых и полноцветных изображений, позволяющий добиться лучшей степени сжатия и минимального размера выходного файла. Принцип работы основан на особенностях восприятия человеческим глазом различных цветов и достаточно сложен с вычислительной точки зрения, так как занимает много процессорного времени. Кодирует файлы в несколько этапов. Во-первых, изображение условно разбивается на несколько цветовых каналов для дальнейшего анализа. Затем картинка разбивается на группы по 64 пиксела в каждой группе (она же — квадратный участок изображения размером 8х8 пикселей) для последующей обработки. Затем цвет пикселей специальным образом кодируется, исключаются дублирующая и избыточная информация, причем при описании цвета больше внимания уделяется скорее яркостной, чем цветовой составляющей, так как человеческий глаз воспринимает изменения яркости лучше, чем изменения конкретного цветового тона. Полученные данные сжимаются по RLE или LZW-алгоритму для достижения еще большей компрессии. В результате на выходе получаем файл иногда в десятки раз меньший, чем его неконвертированный аналог. Однако чем меньше размер выходного файла, тем меньше степень «аккуратности» при работе программы-конвертора и, соответственно, ниже качество выходного изображения. Обычно в программах, позволяющих сохранять растровые данные, есть возможность некоторого компромисса между объемом выходного фай- ла и качеством изображения. При лучшем качестве объем выходного файла в 3-5 раз меньше исходного незапакованного. При качестве похуже — меньше исходника в десятки раз, но, как правило, при этом качество изображения уже не позволяет использовать его где-либо. Данный формат предназначен для хранения в основном фотографических изображений с большим количеством оттенков и цветовых переходов и почти не подходит для хранения однотонных изображений типа кадров из мультфильмов, скриншотов (сжатие будет слишком низким или качество картинки достигнет критической отметки). Этот метод сжатия графических данных используется в файлах формата .PDF, PostScript (для включенных объектов), собственно в .JPEG и других.

НОВЫЙ СТАНДАРТ JPEG 2000

В его разработке приняли участие Международная организация по стандартизации (International Organization for Standardization), Международный союз телекоммуникаций (International Telecommunications Union), компании Agfa, Canon, Fujifilm, Hewlett-Packard, Kodak, LuraTech, Motorola, Ricoh, Sony и другие. Позволяет сжимать изображения в 200 раз без заметной для невооруженного глаза потери качества. Основным отличием JPEG2000 от предыдущей версии этого формата является использова- ние алгоритма волнового преобразования (изображение описывается с помощью математических выражений как непрерывный поток) вместо преобразования Фурье, что и предотвращает появление характерных блоков. Умеет также без ущерба модифицировать (масштабировать, редактировать) рисунок, сохраненный в этом формате. Алгоритм волнового преобразования позволяет просматривать и распечатывать одно и то же изображение при различных (заданных пользователем) значениях разрешения и с требуемой степенью детализации. Благодаря этой особенности JPEG2000 быстро найдет свое место в Сети, поскольку обеспечит возможность загружать картинки с разными значениями разрешения в зависимости от пропускной способности конкретного канала связи. Да и тот факт, что пользователи интернета смогут получать изображения высокого качества, немаловажен. Еще одно значимое преимущество JPEG2000 — возможность управлять 256-цветовыми каналами, а в результате получать качественные цветные изображения. Специалисты обещают, что в общем случае новый формат будет как минимум на 30% эффективнее, чем JPEG. И еще один плюс — новый стандарт является открытым. Главным недостатком компрессии с частичной потерей качества является то, что эти потери, выражающиеся в искажении цветового тона или появлении характерной кубической структуры в контрастных участках изображения (всплытие так называемых артефактов), возникают каждый раз при сохранении изображения и «накладываются» друг на друга при многократном сохранении файла в этом формате. Поэтому специалисты рекомендуют использовать форматы с частичной потерей качества только для хранения окончательных результатов работы, а не для промежуточных рабочих файлов. Кроме того, вспомогательным средством уменьшения объема файлов в JPEG 2000 можно считать изменение цветовой модели графического файла, изменение разрешения растрового файла и ресемплирование (изменение глубины цвета пикселей).

ИЗМЕНЕНИЕ ЦВЕТОВОЙ МОДЕЛИ ГРАФИЧЕСКОГО ФАЙЛА

Объясню все на примере. Файлы в цветовом пространстве CMYK больше аналогичных в пространстве RGB на 33% (так как в CMYK имеется дополнительный четвертый черный канал). Если не планируешь печатать файлы или ты уверен в том, что сможешь корректно провести цветоделение (переход в субтрактивную модель CMYK) позже, можешь хранить рабочие файлы в RGB.

ИЗМЕНЕНИЕ РАЗРЕШЕНИЯ РАСТРОВОГО ФАЙЛА

Файл с разрешением 600 точек на дюйм больше своего аналога разрешением в 300 точек в четыре раза (!), а качество печати при повышенном разрешении не всегда будет выше. Так что если разрешение избыточно, можешь его понизить, только помни, что после такого назад дороги не будет (процесс является необратимым) и никакая последующая интерполяция не восстановит потерянные пикселы. Так что при задании необходимого разрешения также будь внимателен. Следует учесть, что параметр разрешения контуров, применительно к векторной графике, не имеет отношения к объему выходного файла (это уже другое разрешение и другое понятие), но влияет на аккуратность «прорисовки» вектора при его растеризации в устройстве, где производится печать. Так что уменьшение этого параметра для векторной графики не уменьшит объем файлов, а только ухудшит качество печати.

РЕСЕМПЛИРОВАНИЕ

Ресемплирование, или изменение глубины цвета растрового изображения, — изменение начальной глубины цвета файла. Некоторые оцифровывающие устройства выдают растровую информацию с глубиной цвета, превышающей достаточное для печати значение 8 бит на канал. Это иногда оправданно, так как большее значение бит на канал позволяет задавать большее число градаций цвета, что важно, например, при сильной, «кардинальной» цветокоррекции — сильном осветлении или затенении отдельных участков. Однако в большинстве случаев для хранения растровых данных в различных цветовых моделях с лихвой хватит глубины цвета 8 бит на канал. Кроме того, один из стандартов сжатия для RGB-изображений подразумевает использование разного количества бит для разных цветовых составляющих (обычно наибольшее количество бит используется для зеленого канала). Также большинство фильтров Adobe Photoshop рассчитано на работу с изображениями глубиной цвета в 8 бит (с изображением, использующим нестандартную глубину цвета, становится практически невозможно работать, так как большинство фильтров рассчитаны на значение глубины цвета именно 8 бит).
P.S. При подготовке материала была использована статья Евгения Кузнецова «Методы компрессии и сжатия изображений».

МНЕНИЕ ЭКСПЕРТА

Николай (профессиональный дизайнер).
Графические форматы активно используют и в полиграфии, в которых есть свои требования и ограничения. Например, физическое разрешение растровых файлов, используемых в публикации, должно равняться 300 dpi. Меньшее разрешение означает потерю качества, большее — не имеет смысла. Итоговая цветовая система — CMYK. Какие же форматы используются в ней?
TIFF (Tagged Image File Format) — растровый формат, включающий возможность использования компрессии без потерь по алгоритму LZW. В полиграфии это сжатие использовать не рекомендуется ввиду того, что некоторые старые модели специального оборудования не поддерживают распознавание этого сжатия, либо не умеют работать с ним корректно. Проще и правильнее сжимать файлы .TIFF внешним архиватором.
JPEG (Joint Photographic Experts Group) — общеупотребительный растровый формат. Использование файлов такого формата в издательских системах допускается только при условии минимального сжатия. Сохранять в .JPEG растровые данные, предназначенные для последующей печати средствами полиграфии, НЕ РЕКОМЕНДУЕТСЯ ввиду потерь качества изображения, пропорциональных степени сжатия. Сжатию внешними архиваторами .JPEG практически не поддается.
EPS (Encapsulated Post Script) — формат, позволяющий включать в изображение как растровую, так и векторную графику. Является стандартом. Рекомендуется сжимать внешними архиваторами. Степень сжатия сильно зависит от характера включенных в файл данных.
PDF (Portable Document Format) — формат от Adobe, фактически являющийся стандартом в области DTP (Desktop Publishing). Имеет гибкие настройки компрессии изображений. Позволяет включать в публикацию файлы использованных шрифтов, векторную и растровую графику. Пригоден, кстати, и для использования в вебе.

 

Источник: yapro.ru

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты