Величина графический файл: Запишите величины и их значения, определяющие следующие свойства объектов: Графический файл: — величина; — значение:…

Растровая графика. Практическая работа 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,0left-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версия формата Exif0221
DateTime
Original
время съемки2004:07:13 11:57:35
DateTime
Digitized
время создания цифрового файла2004:07:13 11:57:35
Components
Configuration
формат представления данных в файле изображенияYCbCr
Compressed
BitsPerPixel
средняя степень компрессии JPEG3/1 (bits/pixel)
Shutter
SpeedValue
величина выдержки в представлении APEX (прим. 2)1/400 seconds,
корректный вид в APEX «8,6» (1/28,6)
ApertureValueвеличина апертуры в представлении APEXF 11,0,
корректный вид в APEX «7» (27/2)
Exposure
BiasValue
компенсация экспозиции в единицах EV (APEX)EV0,0
Max
ApertureValue
максимальная апертура объектива в представлении APEXF 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 — I3A0100 — совместимость с 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
QualityJPEG сжатие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Параметры JPEGStandard
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
для справки:
Filter ColorRGBCMYW
CFA индекс0123456
 
Photometric Interpretationпредставление цвета: «1» монохромное изображение, «2» RGB, «6» YCbCr 

Можно сравнить EXIF данные для JPEG файла, полученные из программы Canon ZOOMBrowserEX и приложения ExifRead (поля тегов, которые в программе ExifRead отображаются как «Unknown» сокращены):

ExifReadCanonZOOMBrowserEX
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:

ExifReadCanonZOOMBrowserEX
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 имеет принципиальное значение в двух приложениях:

  1. Если у вас есть изображение с большими областями точно одного цвета, но содержит более 256 цветов, PNG на ваш выбор. Его стратегия очень похожа на ту, GIF, но поддерживает 16 миллионов цветов, а не только 256.
  2. Если вы хотите отобразить фотографию ровно без потерь в сети, 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-битным каналом данных или обработкой текста фильтр.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *