|
Второе дно ларчика - 2
Тонкости работы с растровой графикой
Андрей Никулин
joint831@yahoo.com В прошлый раз
(см. Upgrade #40 (182)) мы разобрались с dpi и цветовыми пространствами.
Это, так сказать, вещи общего назначения - подобные атрибуты присущи любому
приличному изображению, полученному со сканера или нарисованному вручную в
редакторе растровой графики. А вот EXIF и PIM, о которых пойдет речь ниже,
актуальны в основном для снимков, полученных с цифровых фотокамер. Надеюсь, это
будет интересным для большинства читателей, ведь именно цифровое фото сейчас
является основным "поставщиком" растровой графики. EXIF Exchangeable
Image File - это специальный блок данных, внедренный в графический файл и
содержащий массу дополнительной информации о снимке: точное время съемки (не
путать с атрибутом "время последнего изменения файла"), модель камеры, значение
диафрагмы, выдержки и т. д. Можно даже узнать, была ли включена в момент съемки
вспышка, режим макро и посмотреть имя владельца камеры. Продвинутые просмотрщики
EXIF позволяют фокусы, типа определения расстояния до объекта съемки (правда, не
для всех моделей камер) или типоразмера матрицы. EXIF поддерживают такие
распространенные форматы, как JPEG, TIFF и RAW. Именно на этих "трех китах" и
держится все цифровое фото. Вообще, без EXIF цифровая фотография потеряла бы
половину своей привлекательности с точки зрения возможностей обучения. Видеть
снятый кадр сразу же, без промежуточной химической обработки - это прекрасно, но
еще лучше, когда при этом можно абсолютно точно узнать все параметры съемки.
Просмотреть EXIF снимка можно несколькими способами. Первый и самый простой -
вызвать "свойства файла" в Windows XP и зайти на вкладку "Сводка" >
"Дополнительно" (см. рис.1).

Рис. 1. Вкладка "Свойства файла" > "Сводка" в Windows XP. Отображается только
базовая информация. Правда, в этом случае вы увидите не всю информацию -
например, имя пользователя и настройки вспышки останутся "за кадром". Более
подробную сводку EXIF показывают специализированные просмотрщики графических
файлов, такие, как Cam2PC или ACDSee (см. рис. 2, 3), причем у первого
соответствующий пункт меню называется Properties - Metadata, а в Cam2PC - View
EXIF Metadata. Но самый лучший вариант для просмотра метаданных - специальные
просмотрщики / редакторы EXIF. Например, очень удачный ShowExif (см. рис. 4),
который бесплатен и не требует инсталляции
www.showexif.da.ru. Давайте немного остановимся на возможностях этой
программы.

Рис. 2. Окно View EXIF Metadata из вьюера Cam2PC. Очень подробная и удобная
сводка EXIF. ShowExif последней версии выдает максимально подробную
сводку, отображая основной и дополнительный разделы EXIF. Для некоторых камер
Canon в дополнительном разделе присутствуют интересные пункты Subject Distance,
Optical Zoom Step, Optical Zoom Value и прочее. Можно сохранить EXIF конкретного
снимка в отдельный файл и потом прикрепить его к другому изображению.

Рис. 3. Вкладка Properties > Metadata из вьюера ACDSee 3.0. Информации
больше, чем на рис. 1, но некоторые поля отображаются некорректно.
Основное значение этой функции - сохранить максимально полный EXIF после
обработки. Ведь не секрет, что многие редакторы растровой графики сильно урезают
этот раздел и вписывают туда посторонние сведения (Adobe Photoshop), а
некоторые, такие, как Macromedia Fireworks старых версий, попросту удаляют этот
раздел под корень. Вообще, ShowExif, несмотря на статус бета-версии, является
весьма вылизанной программой и продумана до мелочей: есть предварительный
просмотр картинок, но двойной щелчок открывает их в штатном просмотрщике,
присутствует пакетная обработка файлов и так далее.

Рис. 4. Окно программы ShowExif. Максимально полная информация о снимке и
развитые возможности манипуляции с блоком метаданных. При всей полезности
EXIF иногда бывает нужно полностью удалить его из графического файла, например,
в целях сохранения конфиденциальности или для уменьшения объема при радикальной
оптимизации (мы коснемся этого в конце статьи), ведь блок метаданных весит
примерно 25 килобайт. ShowExif позволяет проделывать и эту операцию, причем
сразу для групп файлов.
Переименовывать файлы по данным из EXIF позволяет любой приличный просмотрщик
- например, Cam2PC www.nabocorp.com. Для
этого выделите в окне программы нужные файлы и выберите пункт меню Image >
Advanced Renaming. Можно составлять имя файла из чего угодно - от названия
месяца по-английски до минут и секунд (да-да, время съемки пишется в EXIF с
точностью до секунды). Как видите, EXIF - очень полезная штука и помимо
предоставления точных данных о параметрах съемки позволяет гибко структурировать
отснятый материал. В свете всего этого особенно смешно выглядит привычка многих
новичков впечатывать дату и время съемки прямо на фотографию, безвозвратно портя
при этом изображение. Зачем так извращаться, когда есть EXIF? Print Image
Matching Технология PIM (Print Image Matching) разработана для обеспечения
более качественной печати на струйных принтерах Epson. Точная схема реализации
является ноу-хау производителя, но анализ доступных данных позволяет сделать
вывод, что суть PIM заключается в сохранении изображения в JPEG (YCbCr) без
промежуточного преобразования в цветовое пространство sRGB и, соответственно,
без усечения цветового охвата. Декомпрессия JPEG при просмотре снимка возможна в
двух вариантах - в стандартное пространство sRGB (что и происходит при прямом
открытии такого файла в Photoshop или любом вьюере) и с пересчетом в цветовое
пространство Epson RGB 2001 (с более широким охватом, близким к Adobe RGB
(1998)). Для выполнения последней операции требуется специальный PIM-плагин и
открытие файла через меню импорта в Adobe Photoshop. Возникает вопрос: зачем
было так мудрить и усложнять жизнь пользователям? Ведь если стоит цель увеличить
цветовой охват снимка, то для этого существует система управления цветом (CMS),
о которой мы говорили в прошлый раз. Практически все ЦФК высокого класса
позволяют выбирать между стандартным цветовым пространством sRGB (охват
которого, несмотря на некоторые предрассудки, в большинстве случаев достаточен
даже для очень продвинутых фотолюбителей) и Adobe RGB (1998) с максимально
возможным на сегодняшним день охватом из всех абстрактных цветовых пространств
системы RGB. Дело в том, что для грамотного использования различных цветовых
пространств от пользователя требуется как минимум знание основ теории управления
цветом и специальный софт. Кадр, снятый в цветовом пространстве Adobe RGB, для
корректного просмотра требует специализированного вьюера с поддержкой цветовых
профилей (например, Thumbs Plus) или конвертации в Photoshop. Дилетант откроет
его в ACDSee и будет разочарован блеклыми цветами
(см. первую часть статьи в #40 (182) журнала). Поэтому в целях "защиты от
дурака" и повышения совместимости была разработана технология Print Image
Matching. Вы снимаете камерой с поддержкой PIM и не задумываетесь ни о каких
цветовых пространствах. Такой снимок прекрасно отображается как в "тупых"
вьюерах, не понимающих цветовые профили, так и в специализированных, потому что
имеет место внедренный по всем правилам профиль sRGB.

Рис. 5. Диалог File > Import > Print Image Matching II из Adobe Photoshop CS
с установленным модулем Print Image Matching II. Однако, если встает
задача увеличить цветовой охват снимка и / или вывести его на печать на принтере
с поддержкой Print Image Matching с максимальным качеством, вы действуете
по-другому. Файл импортируется в Photoshop при помощи плагина PIM (в данный
момент доступна версия PIM II). На рис. 5 показаны все три возможных варианта
его использования - Color Extensions Only (задействование цветового пространства
с большим охватом), EXIF Print и Print Image Matching II. Второй и третий случаи
теоретически должны использоваться только для вывода на печать на
соответствующих принтерах, ибо при выборе этих пунктов снимок дополнительно
подвергается "прихорашиванию" - специально увеличивается насыщенность,
применяется автокоррекция уровней и шарпенинг. О какой-либо аутентичности снимка
при просмотре на экране монитора в этом случае говорить не приходится, поскольку
производится мощная постобработка, нацеленная на получение максимально яркого,
резкого отпечатка на конкретной модели принтера конкретного производителя.
Однако многие владельцы камер с поддержкой PIM пользуются вариантом Print Image
Matching II и для просмотра снимков на компьютере - уж очень эффектно он может
приукрасить снимок, а то, что страдает структура изображения, многим по
барабану. Все это теория, и она довольно логична. На практике же возникает
много вопросов. Например, если открывать снимки с некоторых камер (особенно
славится этим Sony, в частности модель DSC-F828) через PIM-плагин в варианте
Color Extensions Only, а затем конвертировать их из Epson RGB 2001 обратно в
sRGB, то цветовой баланс и насыщенность цветов заметно изменятся по сравнению с
исходным sRGB! Снимки становятся более эффектными, улучшается "чистота цветов",
может уйти небольшой завал в красно-желтую часть спектра, если он присущ
конкретной модели камеры. Все это никак нельзя объяснить увеличенным цветовым
охватом Epson RGB 2001, ведь в итоге мы снова имеем файл в sRGB, который в
принципе не может нести "лишнюю" цветовую информацию. Почему нельзя было сразу
получить такую же цветопередачу?.. Именно тот факт, что зачастую после прогона
снимков через PIM-плагин они получают более качественную цветопередачу,
становится причиной использования этой технологии не по назначению, то есть не
только для печати.
Есть только один способ узнать, нужен ли Print Image Matching именно вам:
проверить это самому. Установите плагин (как это сделать, написано ниже) и
попробуйте импортировать несколько кадров с вашей камеры в Adobe Photoshop. Если
результат кажется вам заслуживающим внимания и оправдывающим трудозатраты (с
автоматизаций импорта через этот плагин пока дела обстоят неважно, каждый снимок
приходится конвертировать вручную) - смело в путь. Только не забудьте сохранить
в укромном месте оригиналы снимков: вдруг через пару лет ваши вкусы относительно
цветопередачи изменятся?
Cкачать плагин PIM II можно, например, здесь:
support.epson.ru/products/drivers/000931/pim-ii.zip. Для его установки в
Adobe Photoshop CS необходимо вручную скопировать четыре полученных файла (три с
расширением DLL и один 8BA) в директорию Program Files\Adobe\Photoshop
CS\Plug-Ins\Import-Export. Чтобы импортировать файл, выберите в Photoshop пункт
меню File > Import > Print Image Matching II... Прямым подтверждением того, что
камера поддерживает данную технологию, является доступность пункта Print Image
Matching II (в противном случае он подсвечен серым цветом и неактивен). После
нажатия кнопки "Открыть в диалоговом окне" Open Print Image Matching II file
Photoshop увидит внедренный цветовой профиль Epson RGB 2001. Если появится
диалоговое окно с вариантами использования цветовых пространств, выберите первый
из предложенных вариантов открытия файла (Use the Embedded Profile -
использовать внедренное цветовое пространство). Перед сохранением снимка
рекомендуется в целях совместимости конвертировать его в цветовое пространство
sRGB (Image > Mode > Convert to Profile > Destination Space: sRGB IEC61966-2.1).
Там же проверьте настройки Conversion Options (Engine: Adobe (ACE), Intent:
Relative Colorimetric, Use Black Point Compensation, Use Dither).
Оптимизация Снимок, полученный с цифровой камеры, зачастую является "сырым
материалом". Иногда ему требуется цветокоррекция, кадрирование и ретушь
(например, красных глаз), но сегодня мы этой интереснейшей темы касаться не
будем. Кстати, если вас, уважаемые читатели, она заинтересовала, обращайтесь к
редактору раздела. При желании можно будет провести мини-курсы по основам
цветокоррекции и ретуши цифровых снимков (обращайтесь, изучим, напишем, поможем.
- Прим. ред.). Поговорим о другом - подготовке снимков для размещения в
интернете.
Когда вы смотрите снимок, полученный с восьмимегапиксельной, например,
фотокамеры на своем компьютере, никаких проблем нет. Как правило, проблемы
начинаются когда нужно выложить фотографию на всеобщее обозрение. Ведь, учитывая
текущую ситуацию с каналами связи, можно предположить, что 90% людей,
наткнувшихся на вашу галерею в интернете, даже не дернутся скачивать
восьмимегапиксельный файл, весящий четыре мегабайта. Психологический максимум
чаще всего лежит где-то в районе отметки 1280 х 960 пикселей, 400 килобайт. И
вот тут начинается самое интересное. Дело в том, что выкладывать снимок,
полученный с цифровой камеры в полном разрешении, зачастую и не требуется, даже
если вы хотите сохранить максимум качества исходника. Запутано? Тогда давайте
сделаем лирическое отступление и вкратце познакомимся с принципом формирования
изображения в современных ЦФК. Итак, у нас есть восьмимегапиксельная цифровая
камера - например, Konica Minolta A200. Светочувствительная матрица имеет
физический размер 8,8 х 6,6 мм (2/3 дюйма) и содержит восемь миллионов
светочувствительных ячеек. Но это вовсе не то же самое, что пиксели монитора!
Ячейки образуют так называемую баеровскую структуру, то есть в квадратном блоке
2 х 2 одна ячейка красная, одна синяя и две зеленых (GRGB). Цвет результирующего
пикселя получается как результат смешивания цветов конкретной
светочувствительной ячейки и интерполяции цветов соседних. На практике это
приводит к тому, что максимальная разрешающая способность достигается лишь для
черно-белых изображений, а на реальных цветных падает, и при рассматривании
снимка в масштабе 100% наблюдается некоторая размытость и / или частичная
пикселизация. Проведенные опыты показывают, что если уменьшить снимок
незеркальной цифровой камеры (у зеркалок структура изображения более
качественная за счет принципиально больших размеров матрицы) в два раза по
линейным размерам или в четыре раза по площади, то итоговое качество практически
не ухудшается! В результате такого ресайза "уходят" шумы и ошибки demosaic
(процедура синтеза полноценного пикселя из баеровской матрицы), структура
изображения становится более качественной, а детализация уменьшается несильно.
Размер файла, в соответствии с уменьшением площади изображения, можно сократить
примерно в четыре раза. Правилом хорошего тона в среде любителей цифровой
фотографии считается выкладывание снимка именно в таком, "отресайзенном", виде.
Это значительно уменьшает затраты на загрузку файла, а качество практически не
страдает и вы получаете возможность оценить все тонкости снимка. Наилучший
результат обеспечивает ресайз ровно в два раза по размерам, или в четыре раза по
площади (что то же самое). Тогда каждый пиксель конечного изображения получается
в результате интерполяции четырех пикселей исходника. В этом случае снимок с
восьмимегапиксельной камеры будет иметь размеры 1632 х 1224 пикселя, а с
пятимегапиксельной - 1296 х 972 пикселя. Как видите, разрешения не совсем
стандартные, что может вызвать определенные неудобства при полноэкранном
просмотре. Поэтому рекомендуется делать ресайз до ближайшего стандартного
значения (1024 х 768, 1280 х 960 или 1600 х 1200 пикселей), главное, чтобы
коэффициент уменьшения был не менее чем двукратным.

Рис. 6. Окно Image > Image Size из Adobe Photoshop CS. Вы можете выбрать один
из пяти доступных алгоритмов ресемплирования. Как правильно делать ресайз
большого снимка? Для этих целей в Adobe Photoshop есть специальный инструмент
Image > Image Size. В появившемся диалоговом окне (см. рис. 6) нужно ввести
требуемый размер изображения в пикселях или процентах от первоначального. В
нижней части окна расположен ниспадающий список, в котором можно выбрать метод
ресайза. В старых версиях Photoshop (вплоть до 7.0) там присутствовали всего три
пункта - Nearest Neighbor, Bilinear и Bicubic (перечислены в порядке возрастания
качества). В новейшем Adobe Photoshop CS, который я однозначно рекомендую к
использованию, появились два новых метода - Bicubic Smoother и Bicubic Sharper.
Первый добавляет к результату бикубической интерполяции нечто вроде фильтра
Gaussian Blur, слегка размывая картинку и сглаживая краевые артефакты. Сам
производитель рекомендует использовать этот метод при положительном ресайзе, то
есть при увеличении размеров снимка, например, для печати на очень большие
форматы. Лично я иногда пользуюсь им и при отрицательном ресайзе для уменьшения
эффекта муара, например, когда нужно качественно вогнать в размер 200 х 150
пикселей крупномасштабный снимок ЖК-экрана цифровой камеры или мобильного
телефона.
Но нам для ресайза фотографий в меньшую сторону нужен последний метод - Bicubic
Sharper. Его уникальность заключается в том, что, уменьшая размер снимка, он
позволяет сохранить адекватную передачу мелких деталей и уровень детализации.
Ведь, если уменьшить снимок до 50% обыкновенным "бикубиком", изображение
получится несколько размытым. Раньше, до выхода Photoshop CS, для грамотного
ресайза приходилось дополнительно использовать фильтр Unsharp Mask. Кстати, об
этом стоит поговорить подробнее. Согласно теории, для сохранения адекватной
резкости снимка при отрицательном ресайзе методом Bicubic нужен дополнительный
шарпенинг, то есть увеличение краевой резкости. Наилучший инструмент для этого -
упомянутый выше фильтр Unsharp Mask. Неудобство классического метода состоит в
том, что данный фильтр является настраиваемым и для получения наилучшего
результата нужно кропотливо подбирать параметры Amount, Radius и Threshold для
снимков разного размера. А новый метод Bicubic Sharper делает, в принципе, то же
самое, но автоматически (с очень хорошим результатом, подходящим для большинства
случаев). Итак, чтобы получить приемлемый снимок для последующего выкладывания
в Сеть, откройте его в Adobe Photoshop CS и сделайте ресайз до размеров 1024 х
768 или 1280 х 960 пикселей методом Bicubic Sharper. Если у вас старая версия
Photoshop - примените после бикубического ресайза фильтр Unsharp Mask с
параметрами Amount = 50, Radius = 1 и Threshold = 2 (примерные цифры для
среднестатистического пятимегапиксельного снимка). Затем сохраните фото в
формате JPEG с качеством 10 единиц по 12-балльной "фотошоповской" шкале. Это
лучший вариант для обмена снимками через интернет, то есть оптимальный баланс
размер / качество. Adobe Photoshop оставляет основные поля в EXIF, но если вы
хотите сохранить максимально полную сводку - воспользуйтесь описанной выше
программой ShowExif, скопировав метаданные с оригинала снимка. Теперь
рассмотрим вторую часто встречающуюся задачу - создание картинок-"превьюшек"
(так называемых Thumbnails). Правила все того же хорошего тона гласят, что
"превьюшка" должна весить как можно меньше и при этом давать достаточное
представление о снимке. Если стоит задача разместить на одной html-странице
порядка двадцати - сорока Thumbnails (типичная галерея), то оптимальным размером
в пикселях будет что-то около 160 х 120, а объем не должен превышать 12
килобайт. Если же вы размещаете ссылку на отдельно взятый удачный кадр в
какой-нибудь интернет-конференции, имеет смысл увеличить размер превью до 300 х
225 пикселей (это уже позволяет более-менее оценить фотографию), но размер лучше
уложить в рамки 40 килобайт. Как все это лучше сделать? Самая большая ошибка,
которую допускают новички, - ресайз из полного размера сразу до требуемого.
При этом линейные размеры фотографии уменьшаются на порядок, а площадь - в
десятки раз. Даже самый качественный алгоритм ресемплирования - Bicubic - не
может адекватно "переварить" такой объем информации за один присест, и картинка
получится не очень качественной, с потерей детализации и плавности границ
объектов. Поэтому ресайз в данном случае нужно делать в несколько этапов, и
желательно каждый раз с шарпенингом. Первый и последний этапы имеет смысл делать
в четное количество раз, а конкретно - в два раза. Давайте рассмотрим для
примера правильный алгоритм генерации "превьюшки" 300 х 225 пикселей из
пятимегапиксельного снимка. Исходное изображение имеет размеры 2592 х 1944
пикселей. Открываем его в Adobe Photoshop CS, заходим в диалог Image > Image
Size и делаем ресайз до 50% методом Bicubic Sharper. Промежуточное изображение
получилось размером 1296 х 972 пикселя. Теперь давайте не будем спешить и
прикинем, что нужно сделать, чтобы получить максимально качественный результат
на выходе. Было бы здорово, если бы на последнем этапе мы произвели ресайз
ровно в два раза, то есть с 600 до 300 пикселей по горизонтали. Таким образом,
вторую итерацию нужно произвести, ресемплируя файл с 1296 до 600 пикселей (чуть
больше, чем в два раза, что вполне соответствует теории). Итого: получаем три
этапа ресайза. На первом и последнем картинка ресемплируется ровно в два раза, и
каждый раз применяется шарпенинг (метод Bicubic Sharper я бы вообще рекомендовал
установить по умолчанию для Adobe Photoshop CS, что делается с помощью команды
Edit > Preferences > General). В конечном итоге получаем очень гладкую, но
вместе с тем детализированную картинку искомого размера 300 х 225 пикселей.
Сохраним ее в JPEG с уровнем качества 9. Но это еще не все! Помните, в начале
статьи мы говорили о том, что EXIF занимает порядка 25 килобайт? Это огромная
часть нашего файла - почти половина, ведь объем полученной картинки после
сохранения составил 61 килобайт (в моем конкретном примере - макроснимок
одуванчика на зеленом фоне). А EXIF в "превьюшке" - вещь абсолютно ненужная,
поскольку под ней находится ссылка на большой файл, в котором все это есть.
Запускаем ShowExif и отрезаем блок метаданных командой "Инструменты" > "Удалить
EXIF из файлов". Вот теперь все в порядке: наша "превьюшка" ничуть не потеряла в
качестве, но весит всего-навсего 36 килобайт! На сегодня, пожалуй, все. Я
очень надеюсь, что кому-то сведения, приведенные в этой статье, пригодятся на
практике и качественной графики на необъятных просторах Рунета значительно
прибавится. Ведь сляпанные на скорую руку картинки, все еще встречающиеся на
многих интернет-страницах, - безобразно сжатые, весящие в несколько раз больше,
чем нужно, - сродни орфографическим ошибкам в тексте. Иногда в этом мире так не
хватает элементарной грамотности!
Выбираем между JPEG и GIF JPEG и GIF являются форматами сжатия с
потерями, однако принципы исключения избыточной информации у них совершенно
разные. JPEG, грубо говоря, сохраняет цветовую палитру исходного изображения, а
компрессия влияет на уровень передачи мелких деталей. Лучше всего JPEG работает
на однотонных и нерезких поверхностях: снимок самолета в небе или портрет с
мощным размытием заднего плана займут гораздо меньший объем, чем лесной пейзаж с
большим количеством мелких листиков и травинок. GIF вообще не предназначен для
фотографических изображений, поскольку принципиально ограничен палитрой в 256
цветов. Этот формат абсолютно точно передаст все мелкие детали, а компрессия
осуществляется за счет исключения лишней цветовой информации (для области одного
цвета нет нужды хранить цвет каждой точки отдельно). GIF незаменим для
сохранения нефотографических изображений с ограниченным количеством цветов,
таких, как скриншоты программ, виды меню сотовых телефонов и прочее. Иногда
новички путают эти два формата, применяя их не по назначению. Скриншот
программы, сохраненный в JPEG, - зрелище не для слабонервных, так же как и
фотография, конвертированная в GIF. Одной из лучших программ для конвертации в
JPEG и GIF является Macromedia Fireworks (лично я использую древнюю, но от этого
не менее удачную версию 3.0). В процессе изменения формата (File > Export
Preview) можно изменять степень компрессии JPEG с точностью до одного процента,
активировать дизеринг в GIF и т. д. UP
|