Растровая графика. Практическая работа 2.6. Работа с растровой графикой2
Планирование уроков на учебный год (по учебнику Н.Д. Угриновича, 2017 г.)
Главная | Информатика и информационно-коммуникационные технологии | Планирование уроков и материалы к урокам | 10 классы | Планирование уроков на учебный год (по учебнику Н.Д. Угриновича, 2017 г.) | Растровая графика
Содержание урока
Растровые графические редакторы
Операции копирования, перемещения и удаления
Практическая работа 2.6. Работа с растровой графикой
Операции копирования, перемещения и удаления
Редактирование изображения может производиться с использованием трёх основных операций: копирования, перемещения и удаления. При выполнении операции копирования выделенный фрагмент сохраняется в изображении и может быть многократно в него вставлен. При выполнении операции перемещения выделенный фрагмент удаляется из изображения, но может быть многократно в него вставлен. Операция удаления приводит к удалению выделенного фрагмента из изображения.
Перед выполнением каждой операции редактирования необходимо выделить область изображения (группу пикселей) в растровом редакторе. Обычно при этом возможны следующие выделения:
• выделение прямоугольной области;
• выделение произвольной области.
Палитра цветов. Различают основной цвет, которым рисуются контуры фигур, и цвет фона, которым фигуры закрашиваются. В меню палитры цветов обычно размещаются индикаторы основного цвета и цвета фона, которые отображают текущие выбранные оттенки.
Выбор цвета с использованием меню палитры ограничен, так как оно содержит только несколько десятков цветов. Однако графические редакторы позволяют использовать расширенную палитру цветов, в которой можно осуществлять выбор среди набора из десятков миллионов цветов.
Принцип формирования цветов в расширенной палитре базируется на том, что любой оттенок цвета можно получить, смешивая в определённой пропорции три базовых цвета: красный, зелёный и синий. Это можно сделать как с помощью мыши, перемещая указатель по цветовому полю, так и вводя величины интенсивностей каждого базового цвета (в интервале от 0 до 255) с клавиатуры в соответствующие текстовые поля.
В большинстве графических редакторов для копирования цветов можно использовать инструмент Пипетка
. Щелчок левой кнопкой мыши в области с выбранным цветом задаёт его в качестве основного цвета, а щелчок правой кнопкой — в качестве цвета фона.Геометрические преобразования. Растровые изображения могут быть подвергнуты геометрическим преобразованиям:
• изменению размера по горизонтали и вертикали;
• поворотам по часовой стрелке или против часовой стрелки;
• наклонам на различные углы;
• отражениям в различных плоскостях.
В растровых редакторах имеется масштабирующий инструмент, который позволяет увеличивать или уменьшать масштаб представления изображения или рисунка на экране, но не влияет при этом на его реальные размеры. Обычно такой инструмент называется Лупа.
Форматы растровых графических файлов. Форматы графических файлов определяют способ хранения информации в файле, а также используемый алгоритм сжатия.
Растровые графические файлы имеют обычно большой информационный объём, так как в них хранятся коды цветов всех точек изображения. Для растровых графических файлов обычно применяется сжатие, которое отличается от архивирования с помощью программ-архиваторов тем, что алгоритм сжатия включается непосредственно в формат графического файла (форматы BMP, TIFF, GIF, PNG и др.).
Для сжатия изображений, содержащих большие области однотонной закраски, наиболее эффективно применение алгоритма сжатия, который заменяет последовательность повторяющихся величин (пикселей одинакового цвета) на две величины (пиксель и количество его повторений). Для рисунков с мелкими деталями изображения целесообразно применение другого метода сжатия, который использует поиск повторяющихся в рисунке «узоров».
Для сжатия отсканированных фотографий и иллюстраций используется метод сжатия JPEG, который отбрасывает избыточную для человеческого восприятия информацию (компьютер обеспечивает воспроизведение более 16 млн различных цветов, тогда как человек вряд ли способен различить более сотни цветов и оттенков). Применение метода JPEG позволяет сжимать файлы в десятки раз, однако приводит к необратимой потере информации (файлы не могут быть восстановлены в первоначальном виде).
GIF-анимация. GIF-анимация является последовательностью растровых графических изображений (кадров), которые хранятся в одном растровом графическом файле в формате GIF. Для создания последовательности растровых изображений и для их преобразования в GIF-анимацию можно использовать многофункциональные растровые графические редакторы или специальные редакторы GIF-анимаций.
В процессе просмотра такого GIF-файла растровые графические изображения последовательно появляются на экране монитора, что создаёт иллюзию движения. При создании GIF-анимации можно задать величину задержки появления каждого кадра: чем она меньше, тем лучше качество анимации. Кроме того, можно установить количество повторений (от одного до бесконечности) последовательности кадров, хранящихся в GIF-файле.
Большое количество кадров ведёт к лучшему качеству анимации, но увеличивает размер GIF-файла. Для уменьшения его информационного объёма можно анимировать только некоторые части изображения.
Вопросы и задания
1. Почему при уменьшении и увеличении растрового изображения ухудшается его качество?
2. В чём состоят основные различия форматов растровых графических файлов?
Следующая страница Практическая работа 2.6. Работа с растровой графикой
Cкачать материалы урока
Метаданные в цифровой фотографии
Чтобы описать каждую точку цифрового изображения пиксель — 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
www.exif.org.
Для корректной работы различных устройств с мультимедийными файлами (звук, изображения) был принят стандарт универсальных заголовков файлов 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.
Тег | Описание | Пример JPEG Canon 300D по ExifRead | ||||||||||||||||
Filename | имя файла | IMG_2614.JPG | ||||||||||||||||
Application Marker | маркер, необходимый для корректного согласования пользовательских приложений с форматом записи служебной информации, маркер APP1 указывает на блок информации JPEG EXIF, APP0 — JFIF (JPEG File Interchange Format) стандарт, APP2 — FlashPix | JFIF_APP1 : Exif | ||||||||||||||||
Make | производитель камеры | Canon | ||||||||||||||||
Model | модель камеры | Canon EOS 300D DIGITAL | ||||||||||||||||
Orientation | ориентация камеры при съемке, положение угла кадра с координатой 0,0 | left-hand side | ||||||||||||||||
XResolution | разрешение вывода (печати), точек на дюйм по Х координате | 180/1 | ||||||||||||||||
YResolution | разрешение вывода (печати), точек на дюйм по У координате | 180/1 | ||||||||||||||||
Resolution Unit | единица длины, на которую приведено разрешение вывода, «1» дюймы, «2» сантиметры | Inch | ||||||||||||||||
DateTime | дата последнего изменения изображения | 2004:07:13 11:57:35 | ||||||||||||||||
YCbCr Positioning | положение точки, определяющей цвет в ячейке YСbCr данных | Centered | ||||||||||||||||
ExifOffset | сдвиг, положение Image file directory — блока изображения в файле | 196 | ||||||||||||||||
Exposure Time | выдержка | 1/400 seconds | ||||||||||||||||
FNumber | число диафрагмы | 11,0 | ||||||||||||||||
ISO SpeedRatings | эквивалентная светочувствительности | 200 | ||||||||||||||||
ExifVersion | версия формата Exif | 0221 | ||||||||||||||||
DateTime Original | время съемки | 2004:07:13 11:57:35 | ||||||||||||||||
DateTime Digitized | время создания цифрового файла | 2004:07:13 11:57:35 | ||||||||||||||||
Components Configuration | формат представления данных в файле изображения | YCbCr | ||||||||||||||||
Compressed BitsPerPixel | средняя степень компрессии JPEG | 3/1 (bits/pixel) | ||||||||||||||||
Shutter SpeedValue | величина выдержки в представлении APEX (прим. 2) | 1/400 seconds, корректный вид в APEX «8,6» (1/28,6) | ||||||||||||||||
ApertureValue | величина апертуры в представлении APEX | F 11,0, корректный вид в APEX «7» (27/2) | ||||||||||||||||
Exposure BiasValue | компенсация экспозиции в единицах EV (APEX) | EV0,0 | ||||||||||||||||
Max ApertureValue | максимальная апертура объектива в представлении APEX | F 5,00, корректный вид в APEX «4,6» (2(4,6)/2) | ||||||||||||||||
Metering Mode | тип экспозамера,«0» не определено, «1» усредненный, «2» центрально-взвешенный, «3» точечный, «4» мультиточечный, «5» мультисегментный, «6» частичный, «255» другие. | Division | ||||||||||||||||
Flash | вспышка | Not fired | ||||||||||||||||
FocalLength | фокусное расстояние объектива на камере | 125,00(mm) | ||||||||||||||||
UserComment | комментарии пользователя к файлу, если камера позволяет их задать | |||||||||||||||||
FlashPixVersion | совместимость с форматом представления данных FlashPix — стандарта International Imaging Industry Association — I3A | 0100 — совместимость с FlashPix format Ver. 1.0 | ||||||||||||||||
ColorSpace | цветовое пространство файла, DCF предполагает sRGB, которому соответствует значение маркера «1», иному пространству — «65535» (некалиброванное) | sRGB | ||||||||||||||||
ExifImage Width | ширина изображения, пикселей | 2048 | ||||||||||||||||
ExifImage Height | высота изображения, пикселей | 3072 | ||||||||||||||||
Interoperability Offset | параметр, определяющий положение Image file directory — блока изображения в файле | 2366 | ||||||||||||||||
FocalPlane XResolution | плотность сенсоров на матрице по Х координате | 2048000/595, или 3442 на дюйм, позволяет определить размер сенсора по Х — 25,4х2048/3442 = 15,11 мм или 25,4х595/1000 = 15,11 мм | ||||||||||||||||
FocalPlane YResolution | плотность сенсоров на матрице по Y координате | 3072000/892, или 3443/дюйм размер сенсора 25,4х3072/3443 = 22,66 мм | ||||||||||||||||
FocalPlane ResolutionUnit | единица измерения для плотности сенсоров, «1» не определено, «2» дюйм, «3» сантиметр | Meter, ошибка корректное значение Inch выдает приложение IrfanView | ||||||||||||||||
Sensing Method | тип сенсора | One-chip color area sensor — одиночный сенсор с цветной матрицей фильтров | ||||||||||||||||
FileSource | источник изображения | DSC — Digital still camera | ||||||||||||||||
Custom Rendered | обработка изображения | Normal process | ||||||||||||||||
Exposure Mode | режим экспоавтоматики | Auto | ||||||||||||||||
Scene CaptureType | сюжетная программа | Standard | ||||||||||||||||
Maker Note (Vendor) | раздел дополнительных параметров (параметры, приведенные далее), для разработчика, его положение | Canon Format : 1408Bytes (Offset:942) | ||||||||||||||||
Macro mode | макрорежим при съемке | Off | ||||||||||||||||
Self timer | таймер при съемке | Off | ||||||||||||||||
Quality | JPEG сжатие | Fine | ||||||||||||||||
Flash mode | режим вспышки | Off | ||||||||||||||||
Sequence mode | режим смены кадров | Single-frame | ||||||||||||||||
Focus mode | алгоритм фокусировки | One-Shot | ||||||||||||||||
Image size | размер изображения | Large | ||||||||||||||||
Easy shooting mode | программный режим | Manual | ||||||||||||||||
Digital zoom | цифровой зум | |||||||||||||||||
Contrast | параметры обработки изображения, контраст | High , +1 | ||||||||||||||||
Saturation | параметры обработки изображения, насыщенность | High , +1 | ||||||||||||||||
Sharpness | параметры обработки изображения, резкость | High , +1 | ||||||||||||||||
ISO Value | светочувствительность | 100 | ||||||||||||||||
Metering mode | тип экспозамера | Evaluative | ||||||||||||||||
Focus type | тип фокусировки | Unknown | ||||||||||||||||
AF point selected | точка фокусировки | Unknown (8197) | ||||||||||||||||
Exposure mode | экспозиционный режим | Aperture Priority | ||||||||||||||||
Focal length | объектив на камере | 100-300 mm | ||||||||||||||||
Flash activity | вспышка | Off | ||||||||||||||||
Sequence number | кадр в серии снимков | 0 | ||||||||||||||||
White Balance | замер баланса белого | Auto | ||||||||||||||||
Flash bias | экспокоррекция вспышки в EV (APEX) | 0 EV | ||||||||||||||||
Firmware Version | версия прошивки камеры | Firmware Version 1. 1.1 | ||||||||||||||||
Camera Serial Number (Irfan) Serial number (EXIF Reader) | серийный номер камеры | 1070439357 (Irfan) 3FCD-39869 (EXIF Reader) | ||||||||||||||||
Image Number | номер снимка, снятого камерой, первые три цифры — номер папки, последние четыре — порядковый номер файла | 2262614 | ||||||||||||||||
Owner Name | имя пользователя камеры, если персонифицирована | SergeySherbakov | ||||||||||||||||
Color temp | цветовая температура | 5200K | ||||||||||||||||
WhitePoint | определение точки белого изображения, если используется CIE стандарт D65 — величина «3127/10000,3290/10000» | |||||||||||||||||
Parameters | Параметры JPEG | Standard | ||||||||||||||||
YCbCr Coefficients | для YCbCr представления коэффициенты преобразования в RGB format обычно «0.299/0.587/0.114» | |||||||||||||||||
Reference BlackWhite | определение точки черного/белого для YCbCr величины задают черную/белую точку для Y, Cb, Cr и каналов RGB | |||||||||||||||||
Copyright | копирайт (прим. 3) | «Автор» для EXIF, заполнено в ACDSee | ||||||||||||||||
Artist | автор (прим. 3) | «Автор» заполнено в ACDSee | ||||||||||||||||
ImageDescription | описание снимка (прим. 3) | «EXIF теги Иллюстрация» заполнено в ACDSee | ||||||||||||||||
Thumbnail Information Compression JPEGInterchangeFormat JPEGInterchangeFormatLength | информация об уменьшенной копии изображения в EXIF заголовке | OLDJPEG 2211 6492 | ||||||||||||||||
Components Configuration | формат кодирования данных характеристик пикселя RGB «0x04,0x05,0x06,0x00», YCbCr «0x01,0x02,0x03,0x00» для справки: 0x01:Y, 0x02:Cb, 0x03:Cr, 0x04:Red, 0x05:Green, 0x06:Blue | |||||||||||||||||
Brightness Value | яркость сюжета в APEX, для вычисления Exposure (Ev) к BrigtnessValue (Bv) нужно добавить величину SensitivityValue (Sv) для справки: Ev=Bv+Sv Sv=log2(ISOSpeedRating / 3,125) ISO100:Sv=5, ISO200:Sv=6, ISO400:Sv=7 | |||||||||||||||||
Subject Distance | дистанция фокусировки, м | |||||||||||||||||
Light Source | источник света, установка баланса белого, «0» не задано, «1» daylight, «2» fluorescent, «3» tungsten, «10» flash, «17» standard A, «18» standard B, «19» standard C, «20» D55, «21» D65, «22» D75, «255» другие | |||||||||||||||||
Related SoundFile | имя аудио файла, прикрепленного к снимку | |||||||||||||||||
CFAPattern | геометрия фильтров на матрице (Color filter array-CFA) Например: для такого 2х2 RGB фильтра: 0x0002,0x0002,0x00,0x01,0x01,0x02 для справки:
| |||||||||||||||||
Photometric Interpretation | представление цвета: «1» монохромное изображение, «2» RGB, «6» YCbCr |
Можно сравнить EXIF данные для JPEG файла, полученные из программы Canon ZOOMBrowserEX и приложения ExifRead (поля тегов, которые в программе ExifRead отображаются как «Unknown» сокращены):
ExifRead | CanonZOOMBrowserEX |
Filename : IMG_2614. JPG JFIF_APP1 : Exif Main Information Make : Canon Model : Canon EOS 300D DIGITAL Orientation : left-hand side XResolution : 180/1 YResolution : 180/1 ResolutionUnit : Inch DateTime : 2004:07:13 11:57:35 YCbCrPositioning : centered ExifInfoOffset : 196 Sub Information ExposureTime : 1/400Sec FNumber : F11,0 ISOSpeedRatings : 200 ExifVersion : 0221 DateTimeOriginal : 2004:07:13 11:57:35 DateTimeDigitized : 2004:07:13 11:57:35 ComponentConfiguration : YCbCr CompressedBitsPerPixel : 3/1 (bit/pixel) ShutterSpeedValue : 1/400Sec ApertureValue : F11,0 ExposureBiasValue : EV0,0 MaxApertureValue : F5,0 MeteringMode : Division Flash : Not fired FocalLength : 125,00(mm) MakerNote : Canon Format : 1408Bytes (Offset:942) UserComment : FlashPixVersion : 0100 ColorSpace : sRGB ExifImageWidth : 2048 ExifImageHeight : 3072 ExifInteroperabilityOffset : 2366 FocalPlaneXResolution : 2048000/595 FocalPlaneYResolution : 3072000/892 FocalPlaneResolutionUnit : Meter SensingMethod : OneChipColorArea sensor FileSource : DSC CustomRendered : Normal process ExposureMode : Auto WhiteBalance : Auto SceneCaptureType : Standard Vendor Original Information Self-timer : Off Quality : Fine FlashMode : Off Drive Mode : Single-frame Focus Mode : One-Shot ImageSize : Large Easy shooting mode : Manual Contrast : +1 Saturation : +1 Sharpness : +1 MeteringMode : Evaluative AF point selected : Unknown (8197) ExposureProgram : Aperture Priority Focal length of lens : 100-300(mm) Flash Activity : Off Color Tone : Normal Unknown (0001)3,46 : 005C . .. FFFF (прим. 1) Unknown (0002)3,4 : 0,125,610,914 Unknown (0003)3,4 : 100,0,0,0 White Balance : Auto Sequence number(Continuous mode) : 0 Flash bias : 0 EV Unknown (0004)3,33 : 0042 … 0000 Unknown (0093)3,9 : 18,0,0…,65535 Image type : IMG:EOS300DDIGITALJPEG Firmware version : FirmwareVersion1.1.1 Serial number : 3FCD-39869 Unknown (0015)4,1 : -1879048192 Image Number : 2262614 Owner name : SergeySherbakov Unknown (0010)4,1 : -2147483280 Unknown (000E)4,1 : 2620984 Unknown (000D)1,512 :0,…,0.0.0.0.0.0 Unknown (0000)3,18 : 0,…0,0,0,0,0,0,0 Unknown (00C0)3,13 : 001A … CC 0190 Unknown (00C1)3,13 : 001A … C6 016C Unknown (00AA)3,5 : 10,529…,1026,698 Unknown (00A8)3,10 : 20,429…,0,0,0,0,0 Unknown (00A9)3,41 : 82,…,129,127 Color temp : 5200K Parameters : Standard Unknown (0012)3,24 : 7,7,…,65535 Unknown (0013)3,4 : 0,159,7,112 Unknown (0000)3,5 : 0,0,0,0,0 Unknown (00B6)4,12 : 24,. ..,262146 ExifR98 ExifR : R98 Version : 0100 Unknown (4097) : 2048 Unknown (4098) : 3072 Thumbnail Information Compression : OLDJPEG XResolution : 180/1 YResolution : 180/1 ResolutionUnit : Inch JPEGInterchangeFormat : 2548 JPEGInterchangeFormatLength : 6492 | File Name IMG_2614.JPG Camera Model Name Canon EOS 300D DIGITAL Shooting Date/Time 13.07.2004 11:57:35 Shooting Mode Aperture-Priority AE Tv( Shutter Speed ) 1/400 Av( Aperture Value ) 11 Metering Mode Evaluative Exposure Compensation 0 ISO Speed 200 Lens 100.0 — 300.0mm Focal Length 125.0mm Image Size 2048×3072 Image Quality Fine Flash Off White Balance Auto AF Mode One-Shot AF Parameters Contrast +1 Sharpness +1 Color saturation +1 Color tone Normal Color Space sRGB File Size 2240KB Drive Mode Single-frame shooting Owner’s Name Sergey Sherbakov Camera Body No. 1070439357 |
EXIF данные для RAW (Canon EOS 300D) файла, полученные из программы ExifRead и приложения Canon ZOOMBrowserEX:
ExifRead | CanonZOOMBrowserEX |
Filename : CRW_5185. CRW Canon CRW Header CCDRAW Image : 4910386Bytes(offset:26) JPEG Image : 534464Bytes(offset:4910412) Unknown(1803) : 1,0 ImageSpec : 3072Ѓ~2048 ExpouserMode : Single Unknown(1804) : 0,1256 Unknown(1817) : 24817,6724 CapturedTime : 2004:10:16 10:17:02 ImageFileName : CRW_5185.CRW ThumbnailFileName : CRW_5185.THM Unknown(0805) : Unknown(1814) : 0,3724 Unknown(0805) : EOS 300D DIGITAL CMOS RAW ImageType : CRW:EOS 300D DIGITAL CMOS RAW OwnerName : Sergey Sherbakov ModelName : Canon EOS 300D DIGITAL Unknown(180B) : 39869,9577 ISOSensivity : 100 ROMOperationMode : USA FirmwareVersion : Firmware Version 1.1.1 ISOSensivity : 100 LensFocalLength : 18.0(mm) White Balance : Daylight Sequence number(Continuous mode) : 0 Flash bias : 0 EV Unknown(102A) : 66,0,…,0,0,0,0 Unknown(1093) : 18,0,……,5535 Self-timer : Off Quality : RAW FlashMode : Off Drive Mode : Single-frame Focus Mode : MF ImageSize : Large Easy shooting mode : Manual Contrast : Normal Saturation : Normal Sharpness : Normal MeteringMode : Evaluative ExposureProgram : Aperture Priority Focal length of lens : 18-55(mm) Flash Activity : Off Color Tone : Normal Unknown(102D) : 92,0,. ..,65535,65535 Unknown(0036) : 0E82 Unknown(1834) : 368,2833 CCDImageSize : 3152Ѓ~2068 Unknown(1835) : 1,0,514,4000 Unknown(1038) : 7,7,3072,…,0,65535 Unknown(10C0) : 26,336,….,460,400 Unknown(10C1) : 26,305,….,454,364 Unknown(10C2) : 884,….,78,151,28 Unknown(10AA) : 10,877,…,588 Unknown(10A8) : 20,3871,…,5200 Unknown(10AD) : 62,…,65099,65325 Unknown(10AE) : 5200 Unknown(10AF) : 1024 Unknown(10A9) : 82,1398,…,124,126 Unknown(10B4) : 2 Unknown(10B5) : 10,3,1,2048,1360 Unknown(1039) : 0,159,7,112 Unknown(183B) : 0 | File Name CRW_5185.CRW Camera Model Name Canon EOS 300D DIGITAL Shooting Date/Time 16.10.2004 10:17:02 Shooting Mode Aperture-Priority AE Tv( Shutter Speed ) 1/30 Av( Aperture Value ) 3.5 Metering Mode Evaluative Exposure Compensation 0 ISO Speed 100 Lens 18.0 — 55.0mm Focal Length 18.0mm Image Size 3072×2048 Image Quality RAW Flash Off White Balance Daylight AF Mode Manual Focus Parameters Contrast Normal Sharpness Normal Color saturation Normal Color tone Normal Color Space Adobe RGB File Size 5323KB Drive Mode Single-frame shooting Owner’s Name Sergey Sherbakov Camera Body No. 1070439357 |
Примечания.
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 файл, по определению, не подвергается изменениям).
Типы файлов цифровых изображений
JPG, GIF, TIFF, PNG, BMP, RAW. Какие они и как выбрать? Эти и многие другие типы файлов используются для кодирования цифровых изображений. Выбор проще чем вы думаете.
Одной из причин множества типов файлов является необходимость сжатия . Файлы изображений могут быть довольно большими, а большие типы файлов означают больше использования диска и более медленные загрузки. Сжатие — это термин, используемый для описания способов резки размер файла. Схем сжатия может по с потерями или без потерь .
Другая причина существования множества типов файлов заключается в том, что изображения различаются номером цветов, которые они содержат. Если изображение имеет мало цветов, можно создать тип файла использовать это как способ уменьшить размер файла.
Сжатие с потерями и сжатие без потерь
Вы часто будете слышать термины «сжатие с потерями» и «сжатие без потерь».
Алгоритм без потерь может, например, искать повторяющийся шаблон в файла и замените каждое вхождение на короткую аббревиатуру, тем самым сокращая размер файла. Напротив, алгоритм с потерями может хранить информацию о цвете. в меньшем разрешении, чем само изображение, так как глаз не так чувствителен к изменению цвета на небольшом расстоянии.
Количество цветов
Изображения начинаются с разного количества цветов в них. Самые простые изображения может содержать только два цвета, например черный и белый, и потребуется только 1 бит для представления каждого пикселя. Многие ранние видеокарты для ПК поддерживали только 16 фиксированных цвета. Более поздние карты будут отображать 256 одновременно, любая из которых может быть выбран из пула 2 24 или 16 миллионов цветов. Текущие карты посвящают 24 бита на каждый пиксель и, следовательно, способны отображать 2 24 , или 16 миллионов цветов без ограничений. Некоторые отображают даже больше. Поскольку глаза плохо различают похожие цвета, 24 бита или 16 миллионов цвета иногда называют TrueColor. Лучшие современные камеры могут захватывать еще больше цветов.
Типы файлов
TIFF , в принципе, очень гибкий формат, который может быть без потерь или с потерями. Детали алгоритма хранения изображений включены как часть файл. На практике TIFF используется почти исключительно как хранилище изображений без потерь. формат, который вообще не использует сжатие. Большинство графических программ, использующих TIFF не сжимайте. Следовательно, размеры файлов довольно велики. (Иногда без потерь используется алгоритм сжатия под названием LZW, но он не повсеместно поддерживается.)
PNG также является форматом хранения без потерь. Однако, в отличие от обычных Использование TIFF, он ищет шаблоны в изображении, которые он может использовать для сжатия файла размер. Сжатие является полностью обратимым, поэтому изображение восстанавливается точно.
GIF создает таблицу до 256 цветов из 16 миллионов. Если изображение имеет менее 256 цветов, GIF может точно передать изображение. Когда изображение содержит много цветов, программное обеспечение, создающее GIF, использует любой из нескольких алгоритмы для аппроксимации цветов на изображении с ограниченной палитрой Доступно 256 цветов. Более совершенные алгоритмы ищут изображение, чтобы найти оптимальное набор из 256 цветов. Иногда GIF использует ближайший цвет для представления каждого пикселя. а иногда он использует «рассеивание ошибок» для настройки цвета ближайших пикселей для исправления ошибки в каждом пикселе.
Формат GIF сжимается двумя способами. Во-первых, это уменьшает количество цветов. цветных изображений, тем самым уменьшая количество битов, необходимых для каждого пикселя, как только что описано. Во-вторых, он заменяет часто встречающиеся шаблоны (особенно большие площади однородного цвета) с краткой аббревиатурой: вместо хранения «белый, белый, белый, белый, белый», он хранит «5 белых».
Таким образом, GIF «без потерь» только для изображений с 256 цветами или меньше. Для насыщенного, истинного цветного изображения GIF может «потерять» 99,998% цветов.
JPG оптимизирован для фотографий и подобных изображений с непрерывной тональностью. которые содержат много, много цветов. Он может достичь поразительной степени сжатия даже при сохранении очень высокого качества изображения. Сжатие GIF вредно для такие изображения. JPG работает, анализируя изображения и отбрасывая информацию. что глаз меньше всего замечает. Он хранит информацию в виде 24-битного цвета. Важно: степень сжатия JPG регулируется. При умеренном сжатии уровней фотографических изображений глазу очень трудно различить какие-либо отличие от оригинала даже при сильном увеличении. Коэффициенты сжатия более 20 часто вполне приемлемы. Улучшенные графические программы, такие как Paintshop Pro и Photoshop позволяют просматривать качество изображения и размер файла. в зависимости от уровня сжатия, так что вы можете удобно выбрать баланс между качеством и размером файла.
RAW — это вариант вывода изображения, доступный на лучших цифровых камерах. Хотя без потерь, он в три из четырех раз меньше, чем файлы TIFF того же формата. изображение. Недостаток в том, что у каждого производителя свой формат RAW, и поэтому вам, возможно, придется использовать программное обеспечение производителя для просмотра изображений. (Некоторые графические приложения могут читать форматы RAW некоторых производителей.)
BMP — несжатый собственный формат, разработанный Microsoft. Там на самом деле нет причин использовать этот формат.
PSD, PSP и т. д. — это проприетарные форматы, используемые графическими программами. Файлы Photoshop имеют расширение PSD, а файлы Paint Shop Pro используют PSP или PSPimage. Это предпочтительные рабочие форматы при редактировании изображений в программном обеспечении. потому что только проприетарные форматы сохраняют все возможности редактирования программ. Эти пакеты используют слои, например, для создания сложных изображений и информации о слоях. могут быть потеряны в непатентованных форматах, таких как TIFF и JPG. Однако будь Обязательно сохраните конечный результат в виде стандартного TIFF или JPG, иначе вы не сможете просмотреть его через несколько лет, когда ваше программное обеспечение изменится.
В настоящее время форматы GIF, PNG и JPG используются почти для всех веб-изображений. TIFF широко не поддерживается веб-браузерами, и их следует избегать для использования в Интернете. PNG делает все гифка делает, и даже лучше, поэтому все чаще заменяет GIF. PNG будет , а не заменить JPG, так как JPG способен к гораздо большему сжатию фотографических изображения, даже при минимальной потере качества.
Сравнение размеров файлов
Ниже приведены сравнения одного и того же изображения, сохраненного в нескольких популярных типах файлов. (Обратите внимание, что нет необходимости просматривать более одного файла TIFF или PNG. Поскольку все они являются форматами без потерь, их внешний вид идентичен. )
Тип файла | Размер | Пример изображения |
Tiff, несжатый | 901К | Не отображается в большинстве браузеров. Нажмите здесь, чтобы попробовать. |
Tiff, LZW сжатие без потерь (да, на самом деле больше) | 928К | Не отображается в большинстве браузеров. Нажмите здесь, чтобы попробовать. |
JPG, высокое качество | 319К | Нажмите здесь. |
JPG, среднее качество | 188К | Нажмите здесь. |
JPG, мое обычное веб-качество | 105К | Нажмите здесь. |
JPG, низкое качество/высокая степень сжатия | 50К | Нажмите здесь. |
JPG, абсурдно высокая степень сжатия | 18К | Нажмите здесь. |
PNG, сжатие без потерь | 741К | Нажмите здесь. |
GIF, сжатие без потерь, но только 256 цветов | 286К | Нажмите здесь. |
Когда следует использовать каждый из них?
TIFF
Обычно это наилучшее качество вывода с цифровой камеры. Цифровые камеры часто предлагают около трех настроек качества JPG плюс TIFF. Поскольку JPG всегда означает хоть какая-то потеря качества, TIFF значит лучшее качество. Однако файл размер огромен по сравнению даже с самой лучшей настройкой JPG, и преимущества могут не быть заметным.
Более важным является использование TIFF в качестве рабочего формата хранения при редактировании и манипулировать цифровыми изображениями. Вы не хотите выполнять несколько операций загрузки, редактирования, сохранить циклы с хранилищем JPG, так как деградация накапливается с каждым новым сохранением. Одно-два сохранения JPG в высоком качестве может быть и не заметно, а вот десятое уж точно будет. TIFF не имеет потерь, поэтому нет ухудшения качества, связанного с сохранением. TIFF-файл.
НЕ ИСПОЛЬЗУЙТЕ TIFF для веб-изображений. Они создают большие файлы и, что более важно, большинство веб-браузеров не отображают файлы TIFF.
JPG
Это предпочтительный формат почти для всех фотографий в Интернете. Вы можете добиться отличного качества даже при достаточно высоких настройках сжатия. я также использую JPG как основной формат для всех моих цифровых фотографий. Если я редактирую фотографию, Я буду использовать проприетарный формат своего программного обеспечения, пока не закончу, а затем сохраню результат в формате JPG.
Цифровые камеры по умолчанию сохраняют в формате JPG. Переключение на TIFF или RAW улучшает качество в принципе, но разницу трудно увидеть. Съемка в TIFF имеет два недостатка по сравнению с JPG: меньше фотографий на карту памяти и подождите между фотографиями, пока изображение переносится на карту. я редко стреляю в режиме TIFF.
Никогда не используйте JPG для штриховой графики. На таких изображениях с областями однородного цвета с острыми краями JPG справляется плохо. Это задачи, для которых GIF и PNG хорошо подходят. См. JPG против GIF для веб-изображения.
GIF
Если ваше изображение содержит менее 256 цветов и содержит большие области однородного цвет, GIF — хороший выбор, и в свое время единственный мудрый выбор. Файлы будут небольшими, но идеальными. Вот пример изображения, подходящего для GIF:
НЕ используйте GIF для фотографических изображений, так как он может содержать только 256 цветов. за изображение.
PNG: «GIF для более чем 256 цветов»
PNG имеет принципиальное значение в двух приложениях:
- Если у вас есть изображение с большими областями точно одного цвета, но содержит более 256 цветов, PNG на ваш выбор. Его стратегия очень похожа на ту, GIF, но поддерживает 16 миллионов цветов, а не только 256.
- Если вы хотите отобразить фотографию ровно без потерь в сети, PNG на ваш выбор. Веб-браузеры более поздних поколений поддерживают PNG, а PNG единственный формат без потерь, который поддерживают веб-браузеры.
PNG превосходит GIF почти во всех отношениях. Он создает файлы меньшего размера и позволяет больше цветов. PNG также поддерживает частичную прозрачность . Частичная прозрачность может использоваться для многих полезных целей, таких как затухание и сглаживание текста. В основном GIF используется для анимации, которую мы не будем обсуждать на этой странице.
RAW
Если ваша камера поддерживает формат RAW, это концептуальный эквивалент пленочного негатива. В нем есть вся информация, которую зафиксировала ваша камера. RAW не предназначен для размещения на вашем веб-сайте, в печати или в социальных сетях. Для этих целей экспортируйте в PNG или JPG.
Я советую сохранять копию каждого изображения в формате JPG. Вы не хотите, чтобы ваши архивы изображений быть только в собственном формате. Хотя большая часть графики программы теперь могут читать формат RAW для многих цифровых камер, это неразумно полагаться на любой проприетарный формат для долгосрочного хранения. Проблема в том, что RAW не является единым форматом. У каждого поставщика есть формат RAW, и производители меняют свои форматы RAW по мере развития своих камер. Сможете ли вы прочитать RAW-файл вашей камеры через пять лет? Через двадцать? JPG — это формат, который, скорее всего, быть читаемым через 50 лет. Таким образом, целесообразно использовать RAW для хранения изображений в камере и, возможно, для временного хранения без потерь на вашем ПК, но будьте обязательно создайте TIFF, а еще лучше PNG или JPG для архивного хранения. Примечание: большинство камер, поддерживающих формат RAW, позволяют указать сохранение для каждого изображения размером в RAW и JPG. сделай это.
Так зачем вообще возиться с RAW? Потому что изображение RAW с камеры сохраняет всю информацию, полученную камерой. Изображения с лучших современных камер имеют разрядность более 24 бит, и они сохраняются в формате RAW, но не в формате JPG или PNG. Такие программы, как Adobe Lightroom, позволяют использовать всю информацию в файле RAW для улучшения изображения. Вы можете изменить белый цвет. баланс, яркость, контрастность и т. д. с меньшим ухудшением, чем при работе с JPG или PNG.
Снова обратимся к аналогии с пленкой. Во времена пленки большинство фотографов отправляли контейнеры с экспонированной пленкой в фотопроцессоры, которые возвращали набор отпечатков и полосок негативов. Отпечатки — это то, что они показывали друзьям и семье. Серьезные фотографы тщательно защищали негативы и позже использовали их в темной комнате для тщательной обработки фотографий с лучшими цветами и тональным диапазоном. Отпечатки теперь являются вашими JPG, а негативы — вашими файлами RAW.
Другие форматы
При использовании графического программного обеспечения, такого как Photoshop или Paint Shop Pro, рабочие файлы должны быть в собственном формате программного обеспечения. Сохранить окончательные результаты в формате TIFF, PNG или JPG.
Связанные страницы
- Начало работы в цифровой фотографии
- Советы и информация по графике, изображениям, и цифровая фотография
- JPG и GIF для веб-изображений
- Насколько плох JPG? (Большой файл)
- Если вы используете JPG или формат без потерь для архивирования изображений? (Большой файл.)
- Подвыборка цветности в формате JPG
- Разные советы и информация
Пожалуйста, присылайте предложения по этому поводу страницу на адрес [email protected].
- Рик Домашняя страница Мэтьюза
- Департамент физики
- Пробуждение Лесной университет
Повреждение графических файлов
[Предыдущий] [Следующий]
Что такое поврежденный графический файл?
Представьте себе каждое изображение, которое вы когда-либо видели, отображаемое графическим программа отображения — смещенные или сломанные изображения, большие площади заснеженных или мозаичные узоры, цвета, которые серьезно появляются только у Энди Уорхола картины, или просто изображение не отображается вообще. Почему это происходит?
Причины коррупции
Когда изображение не отображается должным образом, причиной может быть любая или все следующее:
- Среда отображения (драйверы, видеопамять, разрешение экрана) настроено неправильно или неадекватный.
- Формат файла не поддерживается дисплеем программа.
- Этот вариант формата файла не поддерживается программой отображения.
- Программа отображения неправильно интерпретирует файл.
- Данные файла неверны или повреждены
Проблемы со средой отображения
Большинство проблем с графическим дисплеем можно исправить, отрегулировав один или несколько аспектов среды отображения. Например, если вы попытаться отобразить изображение в истинном цвете с помощью видеокарты или программный драйвер, который не поддерживает полную разрядность или разрешение изображения, программа отображения либо уменьшит количество цветов в отображаемом изображении или просто отказаться от отображения изображения вообще. В любом случае результаты, вероятно, не будут выглядеть так, как вы ожидал.
Установка соответствующего программного драйвера для видеокарты, разрешение и желаемое количество цветов могут исправить этот дисплей проблема. Обновление программы дисплея до более новой версии или использование другая программа также является опцией. И, конечно же, кто не мог используйте более быструю видеокарту с большим объемом памяти и большим, монитор с более высоким разрешением?
Иногда вина лежит на программе чтения файлов. Программа отображения должна сделать все возможное, чтобы убедиться, что он понимает формат данные, которые он читает. Например, чтение файла JPEG как файла GIF может привести к тому, что программа дисплея выдаст неожиданные результаты.
Многие форматы файлов имеют различные внутренние варианты в зависимости от уровень версии формата и тип данных, которые файлы хранить. Большинство форматов (например, TIFF и TGA) позволяют легко определить тип данных, хранящихся в файле, просматривая информацию заголовка, и другие (например, PCX) несколько усложняют задачу. Некоторые форматы (например, Amiga IFF) используйте разные расширения файлов для каждого типа файлов. данные, которые они хранят, а другие (например, XBM) хранят только один тип данные.
Вы напрашиваетесь на неприятности, если исходите из расширения файла что файл имеет определенный формат. Более чем одному файлу присвоено неправильное расширение файла. И если программа отображения принимает ввод непосредственно из потока данных, файла не будет расширение для чтения в любом случае.
В большинстве форматов расширение файла не изменяется, чтобы отразить уровень версии формата файла или тип данных, хранящихся в файл. Это отсутствие удобочитаемого распознавания, вероятно, повредило Формат файла TIFF больше всего. Файл TIFF может хранить изображения любого типа. данные в диапазоне от монохромного до истинного цвета, и может сжимать их с помощью любого один из полудюжины или более методов кодирования.
Многие средства просмотра TIFF поддерживают монохромное изображение со сжатием RLE или без сжатия. изображения, но не изображения, сжатые с использованием кодирования CCITT G3 и G4. Другие программы просмотра TIFF поддерживают изображения в оттенках серого и цвета палитры, но не полноцветные изображения. Некоторые программы просмотра поддерживают отображение изображений сжатый с использованием алгоритмов JPEG или TIFF-LZW, и (большинство) других нет.
Как видите, изображений может быть много. хранится в файле TIFF, и все они будут иметь расширение «.TIF». расширение. Неудивительно, что пользователи расстраиваются, когда какой-либо файл TIFF файлы отображаются, а другие нет; в конце концов, в каталоге, где перечислены все файлы «выглядят» одинаково. Убедитесь, что не все файлы выглядят одинаково к вашей программе чтения файлов.
Проблемы с программным кодом
Мы обсудили тот факт, что изображение может отображаться неправильно. потому что программа, читающая его, не имеет возможности отображать изображение данные. Также вполне возможно, что изображение может не отображаться из-за ошибок в коде программы отображения. Такие баги обычно в результате того, что программист неправильно интерпретирует формат файла спецификации, или что он не полностью понимает программирование язык, который он использует, или что он включает какой-то другой программист глючный код в его собственном коде. Тестирование программы отображения на широком различные файлы изображений выявят такие проблемы.
Проблемы с данными
Что с графическим файлом? Может ли сам файл быть источником проблемы?
Графический файл ничем не отличается от любого другого типа файла данных на вашем компьютере. система. Как и другие файлы, данные, содержащиеся в графическом файле, может быть неправильно созданы (плохие данные) или повреждены (поврежденные данные). Плохой или коррумпированный файлы возникают в результате одной или нескольких из следующих проблем:
- Ошибка записи файлов
- Неисправленная ошибка передачи
- Ошибка записи на диск
- Неправильная обработка
Плохие данные могут быть результатом плохо спроектированного модуля записи формата файла. Неправильный расчет значений заголовка (например, количество цветов, разрешение, размер файла и т. д.) или запись данных в неверном байте порядок введет в заблуждение читателя формата и заставит его неправильно интерпретировать данные файла изображения. Глючные кодеки (кодер/декодеры) могут плохо выдавать закодированные данные, которые могут казаться выполняющими свою работу, но на самом деле нарушает алгоритм сжатия. (Например, спецификация TIFF неправильно реализует алгоритм LZW.)
Файлы могут быть повреждены различными способами. Например:
- Передача файлов между компьютерными системами с помощью последовательный или сетевой протокол передачи, не допускающий ошибок обнаружение и исправление предполагает возможность ошибок из-за линейный шум или потеря данных.
- Копирование файла в поврежденную файловую систему или на диск может привести к ошибкам записи, которые уничтожают часть файл.
- Неправильно обработанное программное исключение может записать данные в случайные части файловой системы, тем самым повреждая любые файлы тронута написанным.
- Отправка бинарного файла по 7-битному каналу данных, или текстовый фильтр, преобразующий возврат каретки в перевод строки, гарантирует необратимое повреждение данных файла.
Обнаружение повреждения файла
Читатели формата файлов должны иметь возможность быстро определять, что данные файла является неверным или неожиданным, либо каким-либо образом нарушает спецификация формата файла или алгоритма сжатия данных. Быстрый обнаружение позволяет читателю ответить сообщением об ошибке на пользователя, и предотвращает преждевременный сбой программы чтением плохие данные. Точный анализ проблемы программой чтения файлов и также требуется подробное сообщение об ошибке, отображаемое пользователю программы.
Как узнать, поврежден ли файл? Мы описываем несколько индикаторы ниже.
Маркер EOF
Маркер файлового потока конца файла (EOF) является хорошим индикатором. Часто, графические файлы усекаются из-за ошибок при передаче или из-за неудачная операция записи на диск. В таких случаях, когда файл чтения, EOF произойдет намного раньше, чем это сделал бы читатель форматов файлов. ожидать, и можно предположить повреждение файла. Читать операции также завершатся с ошибкой, если в файловая система или диск. Всегда проверяйте возвращаемое значение вашего чтения операции. Неожиданный EOF или любая ошибка файлового потока знак, что что-то не так.
Неожиданные символы
Отсутствующие или избыточные данные могут привести к неправильному выравниванию внутренние структуры файлового формата. Структуры данных в памяти часто содержать невидимый 2- или 4-байтовый граничный отступ между структурой элементы, которые могут быть непреднамеренно записаны в файл. Данные записаны в файл, открытый в текстовом режиме, а не в двоичном, может содержать встроенные символы возврата каретки и/или перевода строки и поэтому могут создавать неверные данные.
Ошибки магического значения
Потоковые форматы делят хранимые данные на отдельные разделы. называется сегментов (блоки, чанки и т.д.), каждый из который начинается с определенного идентификатора или «магического» значения, за которым следует по длине данных в сегменте. Если читатель формата читает в весь сегмент и обнаруживает, что следующие данные в файле не ожидаемое магическое значение следующего сегмента (или конец данных маркер потока), то читатель предполагает, что данные плохие или коррумпированный.
Значения смещения вне диапазона
Форматы, ориентированные на файлы, обычно используют структуры данных фиксированного размера и абсолютные значения смещения для поиска данных. Значение смещения, указывающее за пределами файлового пространства является верным признаком того, что значение смещения неправильно, или файл был усечен.
Советы по разработке программ чтения и записи файлов
Что должен делать ридер формата файла в случае отсутствия или лишние данные? Это зависит от формата файла и самих данных. Если плохая информация тривиальна (например, текстовый комментарий или миниатюра изображение), читатель может проигнорировать неверные данные и продолжить чтение файла. Если информация является критической (например, заголовок), читатель должен просто сдаться.
Независимо от предпринятого действия программа чтения файлов должна отображать предупреждение, ошибка или диагностическое сообщение, чтобы указать, что что-то произошло непредвиденное. Такие сообщения, как «Неизвестный формат файла», «Неизвестный тип сжатия», «Неподдерживаемое разрешение» или «Поврежденный data», по крайней мере, даст пользователю понять, что не так.
Вот несколько советов по разработке программы чтения форматов файлов с обнаружением ошибок:
- Всегда проверять операции ввода для чтения файлового потока ошибки и индикация конца файла.
- Проверить данные поля заголовка на соответствие ожидаемому диапазону ценность. Не используйте данные, которые кажутся необоснованными.
- Не доверяйте расширению файла для идентификации файла формат. Определите формат файла по данным, ожидаемым в заголовок.
- Всегда вычисляйте и сравнивайте контрольную сумму и значения CRC включены в любые файлы изображений, используемые для проверки целостности данные.
- Используйте двоичный редактор, чтобы повредить ряд графических изображений файлы и посмотреть, как ваш читатель обрабатывает их. Кодирование графики файла, добавляя, удаляя или изменяя несколько строк, а затем uudecoding файла также является простым способом повредить графику. файл. Ридер никогда не должен падать при чтении плохого файл.
Вот несколько советов по разработке модуля записи форматов файлов:
- Всегда проверять операции вывода для записи файлового потока ошибки.
- Сохранение размеров файла и структуры данных в файле заголовок, если он поддерживается.
- Использовать любые встроенные методы обнаружения ошибок, такие как значение CRC, которое может поддерживать формат.
- Используйте другие программы отображения для проверки сгенерированного файлы.
Большинство форматов файлов не имеют встроенных механизмов обнаружения ошибок. Вместо этого мы полагаемся на программу чтения файлов, которая распознает плохие или поврежденные данные. на основе информации, хранящейся в файле, и реагировать соответственно. Некоторые форматы сохраняют размер графических данных или даже длина всего файла в их заголовках. Другие форматы содержат структуры данных фиксированного размера, которые меняются только между ревизиями формата. Эти функции не предназначены специально для обнаружения или исправлять ошибки файлов или данных, но их можно использовать таким образом и лучше, чем ничего.
По крайней мере один формат, PNG, включает активную проверку ошибок. механизм. PNG — это формат потока данных, который состоит из небольшого подпись значений байтов, за которыми следуют три или более порций данных. Каждый из этих фрагментов может хранить 4-байтовое значение CRC-32, вычисленное из данные в чанке. Читатель PNG может вычислить CRC данных а затем сравните это значение с тем, которое хранится в чанке. Если значения не совпадают, читатель может предположить, что данные в этом блоке поврежден.
Подпись PNG также уникальна тем, что она содержит несколько символов, используемых для определения того, был ли файл неправильно обрабатывается 7-битным каналом данных или обработкой текста фильтр.