Опубликован: 27.05.2011 | Уровень: для всех | Доступ: платный
Лекция 2:

Цифровое фото в числах

< Лекция 1 || Лекция 2: 123 || Лекция 3 >

Пример 2.1. - Сжатие растровых файлов

Выше было отмечено, что для получения растровых изображений (цифровых фотографий) высокого качества требуется высокое разрешение. Это в свою очередь сказывается на размерах графических файлов, которые с ростом качества непомерно растут. В подтверждение этому давайте рассмотрим практический пример, в котором сравним размеры файлов одного и того же изображения, сохраненного в различных форматах. Для этого выполните следующее:

Откройте программу Adobe Photoshop, и командой File (Файл) \to Open (Открыть) загрузите в него одну из ваших цифровых фотографий. В нашем примере это снимок, показанный на рис. 2.6. В оригинальном варианте фотография имеет разрешение 1200x1600 pixels.

Оригинальное изображение, использованное в примере 2.1.

увеличить изображение
Рис. 2.6. Оригинальное изображение, использованное в примере 2.1.

С помощью команды File \to Save As (Файл \to Сохранить как) сохраните исходное изображение в различных форматах.

В нашем случае мы получили следующие результаты, показанные в табл. 2.2.

Таблица 2.2. Размеры файлов различных растровых форматов
Формат Размер файла, байт
TIF (без сжатия) 5778204
BMP 24 bit 5760056
TIF (LZW сжатие) 2786328
TIF (ZIP сжатие) 2601240
GIF 256 1132612
JPEG 529264

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

Алгоритмы сжатия изображений

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

С самых общих позиций все существующие алгоритмы сжатия можно разбить на два больших класса:

  • сжатие без потерь;
  • сжатие с потерями.
Сжатие без потерь

Алгоритмы сжатия без потерь основаны на поиске и выбрасывании в растровом изображении повторяющихся элементов. Их можно запомнить один раз и впоследствии повторить необходимое количество раз. По алгоритму сжатия при необходимости полностью пиксел за пикселом восстанавливают исходное изображение. При этом в исходных данных ничего не теряется.

Метод сжатия без потерь (например, в формате TIF) очень эффективен для растровых рисунков, содержащих большие области однотипных элементов (например, в орнаменте) или однотонной закраски. В таких случаях можно получить коэффициент сжатия 10:1.

В основе алгоритмов сжатия без потерь лежат несколько методов. Например, при использования метода сжатия LZW ( Lempel-Ziv-Welch), разработаного в 1978 году израильтянами графические данные сжимаются путем поиска одинаковых последовательностей во всем файле. Затем выявленные последовательности сохраняются в таблице, где им присваиваются более короткие ключи. Например, если в изображении имеются наборы из пурпурного, оранжевого и зеленого пикселов, повторяющиеся 10 раз, LZW выявляет это, присваивает данному набору отдельное число (например, 5) и затем сохраняет эти данные 10 раз в виде числа 5.

Сжатие с потерями

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

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

В настоящее время существует несколько алгоритмов сжатия с потерями, самыми известными из которых являются JPEG.

Важным моментом в применении сжатия с потерями является определение "приемлемого уровня" потерь. Уровень этот субъективен, т.е. зависит от того, кто его оценивает, а также от ваших целей и задач. Если ваша оригинальная фотография предназначена для цветной печати в дорогом полиграфическом издании, то ни о каких "приемлемых потерях" не может быть и речи. Другое дело, если эта фотография предназначена для просмотра вашими друзьями на Web-странице, где одним из главных критериев является малый размер файла.

Тему "приемлемого уровня" потерь проиллюстрируем таким примером. В программе Adobe Photoshop командой File (Файл) \to Open (Открыть) откройте любую из ваших фоторабот а затем сохраните ее на диске командой File (Файл) \to Save As (Сохранить Как). В ходе этой команды появится окно Save As (Сохранить Как), в котором вы выберите формат JPEG. Нажмите на кнопку Сохранить - возникнет следующее окно, показанное на рис. 2.7.

Окно JPEG Options

Рис. 2.7. Окно JPEG Options

В данном окне вы как раз и можете выставить этот самый "приемлемый уровень потерь", продвигая ползунок из положения small file (маленький файл) до положения large file (большой файл). Замечу также, что при качестве изображения (Quality) ниже восьми вашу фотографию ни в один журнал не возьмут!

Графический формат JPEG

О формате JPEG хотелось бы поговорить особо. На сегодняшний день формат JPEG (Joint Photographic Experts Group) является одним из наиболее распространенных графических форматов для сжатия файлов. Как уже отмечалось, в нем реализован алгоритм сжатия с потерями. Это означает, что в процессе сжатия изображения происходит частичная потеря хранящейся в файле информации. Поэтому в процессе применения этой процедуры сжатия приходится искать компромисс между степенью сжатия и качеством сохраняемого изображения. Чем больше сжатие, тем ниже качество, и наоборот.

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

Таким образом, чем выше уровень компрессии, тем больше данных отбрасывается и тем ниже качество. Используя JPEG, можно получить файл в 1-300 раз меньше исходного.

При сохранении графических изображений в формате JPEG следует учитывать следующее:

  • JPEG лучше подходит для сжатия растровых картинок фотографического качества, чем для логотипов или схем. Это связано с тем, что в них больше полутоновых переходов, в то время как при сжатии однотонных заливок появляются нежелательные помехи.
  • Нежелательно сохранять в JPEG формате любые изображения, в которых важны тонкие нюансы цветопередачи (репродукции), так как во время сжатия происходит отбрасывание цветовой информации.
  • Этот формат следует использовать только для сохранения конечного варианта работы, потому что каждое последующее сохранение приводит к новым потерям (отбрасыванию) данных.

Резюме

Материал этой части курса был посвящен представлению о том, что из себя представляет цифровое изображение. Читатель познакомился с растровыми и векторными редакторами, узнал о разрешении и форматах графических файлов, об алгоритмах сжатия растровых изображений. Автор считает, что все это - обязательная минимально необходимая база для того, чтобы успешно двигаться дальше. В путь!

< Лекция 1 || Лекция 2: 123 || Лекция 3 >
Женнет Алексеева
Женнет Алексеева

Исходя из текса понятно, что изображения должны быть цветными.

Марина Варавина
Марина Варавина

Курс несоответствует своей теме, заявленному названию... пример: "Какая из программ создания цифровых фотоальбомов имеет русский интерфейс?" ну как этот вопрос соотносится с основами фотографии?? Автор как будто вообще не знал, о чем сделать курс.

Алексей Тимров
Алексей Тимров
Украина, Украина
Светлана Сак
Светлана Сак
Мартиника, Fort de France