Чтобы описать каждую точку цифрового изображения пиксель - picture element (элемент картинки, дословно) нужно задать несколько чисел. В случае растрового RGB 8 бит представления, каждый пиксель характеризуется тремя компьютерными 8 битными словами для каждого из каналов. В мегапиксельном изображении таких слов 3 миллиона. Поэтому графические файлы в растровом формате так велики. Записать попутно тысячу слов не составит труда и не потребуется никаких дополнительных затрат. Но эти "неграфические" слова - метаданные позволяют:
a) согласовать цвета и яркости воспринимаемые камерой или сканером с яркостью или цветами на дисплее компьютера,
б) знать съемочные настройки камеры для файла-изображения (избавится от бумажных блокнотов и диктофонов, хранящих памятные заметки),
в ) подтвердить ваше авторское право,
г ) найти нужное изображение в базе данных по ключевому слову или даже географической координате места съемки,
д ) автоматически преобразовать файл в требуемый для вывода формат и корректно напечатать изображение в автоматическом режиме (в том числе без компьютера),
и еще много чего.
DCF
Design Rule for Camera File System (описание в PDF) – индустриальный стандарт организации данных в устройствах получения, хранения, преобразования и вывода цифровых изображений. Принят в 1998 году JEIDA (Japan Electronics Industry Development Association) для стандартизации процесса переноса данных между различными устройствами. Сейчас JEIDA входит в JEITA (Japan Electronics and Information Technology Industries Association).
Правилам DCF подчиняется структура файлов на карте памяти цифрового аппарата. В привычном представлении это дерево папок с файлами и отдельными файлами. Изображения, обычно, хранятся во вложенных папках директории DCIM. В других хранятся видео и звуковые файлы, "системные" данные настроек камеры, шаблоны создания HTML галерей. Задания печати DPOF (папка MISC) позволяют принтеру прямой печати самостоятельно найти и выполнить задание печати.
Программное обеспечение, которым комплектуется камера, используя DCF информацию, автоматически копирует снимки с карты памяти на компьютер в базу данных, строит панорамы, открывает приложения для преобразования RAW файлов и выполняет многое другое, на что только хватило фантазии разработчиков.
Стандарт DCF включает так же и описание формата собственно графических файлов JPEG, TIFF, RAW. Графические файлы, в свою очередь, подчиняются правилам организаций и ассоциаций, утвердивших их. Стандарт EXIF входит в спецификацию DCF.
Структура данных на карте памяти камеры Epson L-500V
Для корректной работы различных устройств с мультимедийными файлами (звук, изображения) был принят стандарт универсальных заголовков файлов EXIF. EXIF – Exchangeble image format (версия 1.0 была опубликована в 1995 год). Формат предусматривает хранение в одном файле данных изображения или музыки, их уменьшенных копий (для JPEG рекомендуется 160х120), подраздела текстового описания данных.
Современная версия стандарта - Exif 2.2 (описание в PDF). Она включает так же технологию автоматического управления цветом и обработки изображения в соответствие с сюжетными съемочными настройками для вывода на печать или дисплей (версия 2.0 предполагала кодирование цвета в sRGB пространстве, в версии 2.2 цветовое пространство может быть любым).
Текстовая часть раздела Exif файла состоит из маркеров и тегов, описывающих определенный параметр (идентификатор и соответствующее ему имя параметра) и значение этого параметра (значение в определенном формате представления величины в виде ASCII кода, рационального, десятичного, шестнадцатеричного и т.д. числа). Набор тегов содержит более-менее стандартизованную и обязательную часть и разделы, "отданные" производителям техники и программного обеспечения для их специальных целей. Программное обеспечение, предназначенное для чтения EXIF данных, ставит в соответствие тегам их определения, а значениям - значения. При этом создатели не всегда придерживаются спецификации и потому случаются недоразумения. Так определение информационного поля может быть заменено соответствующим ему общепринятым эквивалентом, а значение не преобразовано в соответствующий формат. Или производитель камеры записывает в поле, соответствующее тегу, информацию в некорректном формате или вообще о другом параметре. Если это узкоспециализированная программа под определенную марку камер, то недоразумений обычно не бывает. Пользователь "обязан своей покупкой" подчиняться описанным в руководстве ПО правилам и, изучив свой аппарат и программу, будет понимать, о чем идет речь. Но если это универсальная программа, то путаница с неправильным наименованием тегов и форматированием, соответствующих им величин, случается не редко. Это неизбежная плата за универсальность. И еще за привычный язык, ведь по правилам EXIF языка, значения параметров всего лишь числа (например, дюйм - "1", см - "2"), а программа переводит их в понятные нам слова (что необязательно, например в виде чисел представлены некоторые параметры в Adobe Photoshop, Info раздел "Advanced EXIF").
Рассмотрим информационную часть графического файла на примере цифрового снимка и программы чтения EXIF заголовков. Далее в таблице представлены основные теги формата EXIF на примере Canon EOS 300D и приложения ExifRead. В таблице так же приведены некоторые не отображаемые приложением теги, но о них полезно знать. Кроме ExifRead заголовки отображают и другие программы: AdobePhotoshop,ACDSee, IrfanView.
Можно сравнить EXIF данные для JPEG файла, полученные из программы Canon ZOOMBrowserEX и приложения ExifRead (поля тегов, которые в программе ExifRead отображаются как "Unknown" сокращены):
EXIF данные для RAW (Canon EOS 300D) файла, полученные из программы ExifRead и приложения Canon ZOOMBrowserEX:
Примечания.
1. Некоторые поля данных для тегов "Unknown" в таблицах сокращены.
2. Теги "ShutterSpeedValue", "ApertureValue" и некоторые другие (с идентификатором Value) в соответствии со стандартом EXIF записываются не в привычных фотографических величинах, а в APEX представлении. Иногда приложения для просмотра EXIF данных преобразуют APEX формат к привычному виду, иногда нет.
Что представляет собой формат APEX? APEX (The Additive System for Photographic Exposure) удобная форма записи и, главное, выражения соотношений экспозиционных условий. Удобная потому, что оперирует с логарифмическими величинами с основанием 2. В них удвоение экспозиции соответствует увеличению ее на один шаг, то есть на привычную ступень выдержки или диафрагмы. Чтобы подсчитать экспозицию в формате APEX достаточно воспользоваться простой формулой: AV + TV = LV + SV= EV. Где AV и TV соответственно APEX величина диафрагмы и выдержки, LV яркости, SV светочувствительности. При этом в APEX за нулевые значения величины AV = 0 принята диафрагма f/1,0, выдержки TV = 0 - 1 c, яркости LV=0 - 3,4 кандел/м*м, светочувствительности SV = 0 - 3,125 (в ISO).
Чтобы отличать фотографические термины "диафрагма", "выдержка" от величин в APEX принято все величины, выраженные в APEX формате сопровождать словом "величина" - как "Aperture value", а при сокращении добавлять букву "V"- как Av.
Интересно, что сейчас в камерах Canon с режимами приоритета выдержки и диафрагмы Tv и Av ряд значений на органах управления записан в привычных обратных секундах и диафрагменных числах. Объясняется это тем, что на камерах Canon "значки" Tv и Av появились, когда APEX формат был практически важен для вычисления экспозиции и популярен. И в качестве значений этих величин использовались величины APEX. Затем с развитием автоматики и унификации экспонометрических устройств практическая важность формата APEX для фотографа стала минимальной и от него отказались, вернувшись к привычным диафрагменным числам и секундам. А маркировка режимов у Canon осталась прежней (Douglas A. Kerr, P.E.).
Как отображается информация в программе для просмотра съемочных параметров, зависит от разработчика. Формально тегу "Aperture value" соответствует величина в единицах APEX без всяких суффиксов и префиксов. Но, к примеру, в Canon ZOOM Browzer EX тег "Aperture value" отображается в формате диафрагменного числа, но без префикса "f/" (для ясности следовало бы писать именно так, то есть "f/"), а Tv, которое, тем не менее, расшифровывается как "Shutter Speed", как доля секунды без "c", то есть верно, если знать об истории появления значков Av/Tv на Canon. В ACDSee версии 5 "Aperture value" корректно отображается в единицах APEX, а в версии 7 в привычном формате "f/число". Определить, что скрывается за "Aperture value" в вашей программе, можно посмотрев на значение другого тега EXIF "F-number". Если числовые значения совпадают, то "Aperture value" отображается в диафрагменных числах, если нет - в APEX единицах. Тогда проверьте соответствие по формуле Aperture value = 2 х Log2F-number. (Легко заметить, что при f/4 - APEX - так же 4, но это единственное исключение).
3. Стандарты DCF и EXIF постоянно "расширяются" и к ним добавляются новые спецификации и, соответственно, теги. Кроме того, производители техники и ПО иногда вводят новые спецификации метаданных. Такие спецификации могут интегрироваться в EXIF, но могут быть и совершенно независимыми. Так в полях EXIF данных есть маркеры, указывающие на совместимость с форматами представления данных FlashPix (стандарта International Imaging Industry Association - I3A), маркеры описывающие расширение ExifR98, GPS данные и другие. С выходом EXIF PRINT, для автоматической обработки изображения в соответствие с сюжетной программой съемки к EXIF добавлены теги, описывающие "сюжетные" настройки цифровой камеры: вспышка, экспорежим, баланс белого, выдержка, дистанция до объекта, источник света, сюжетная программа, цифровой зум, постобработка, контраст, насыщенность, повышение резкости, шумоподавление. Альтернативная технология согласования печати и обработки PIM (Print Image Matching - EPSON, 2001 год) так же добавляет к метаданным 12 (PIM I) или 14 (PIM II) "сюжетных" пунктов.
Метаданные, редактируемые в ACDSee
Среди стандартных тегов EXIF есть предназначенные для систематизации хранения снимков на компьютере. Это: владелец камеры, имя пользователя, авторские права, описание и другие. Если их нельзя заполнить непосредственно при съемке, то нужно использовать либо "фирменное" ПО от камеры либо универсальные программы. К числу таких программ относятся, например, Adobe Photoshop и ACDSee. С их помощью можно изменить значения перечисленных тегов. Но нужно быть внимательным, не все "поля", которые можно заполнить в таких программах сохраняются как метаданные файла. Программа может хранить данные в своей базе данных и не записывать их в файл изображения. Так Adobe Photoshop помимо стандартных (перечисленных выше) полей описания файла, позволяет заполнить многие другие, а для RAW файлов записать даже "скорректированные" настройки камеры. Но хранится вся эта дополнительная информация либо в единой базе данных Photoshop на вашем компьютере, либо в виде переносимого вместе с основным файлом файла метаданных "*.XMP" (а сам RAW файл, по определению, не подвергается изменениям).