Просмотры

GIF

Материал из Wiki

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

GIF (англ. Graphics Interchange Format — формат для обмена изображениями; произносится /dʒɪf/, но многие произносят /gɪf/ или «гиф»The GIF Pronunciation Page) — формат хранения графических изображений. Формат GIF способен хранить сжатые без потерь изображения в формате до 256 цветов с палитрой, и предназначен, в основном, для чертежей, графиков и т. д.

Независящий от аппаратного обеспечения формат GIF был разработан в 1987 году (GIF87a) фирмой CompuServe для передачи растровых изображений по сетям. В 1989-м формат был модифицирован (GIF89a), были добавлены поддержка прозрачности и анимации. GIF использует LZW-компрессию, что позволяет неплохо сжимать файлы, в которых много однородных заливок (логотипы, надписи, схемы).

GIF широко используется на страницах Всемирной Паутины.

Содержание

Область применения

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

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

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

Сжатие

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

Алгоритм сжатия LZW относится к форматам сжатия без потерь. Это означает, что восстановленые из GIF данные будут в точности соответствовать упакованым. Следует отметить, что это верно только для 8-битных изображений с палитрой, для цветной фотографии потери будут обусловлены переводом её к 256 цветам.

Кроме того, в программе Adobe Photoshop появилась дополнительная возможность сохранять в GIF формат с потерями, которые проявляются как стохастический шум на картинке, сокращая при этом объём файла.

Метод сжатия LZW (Lempel-Ziv-Welch) разработан в 1978 году израильтянами Лемпелом и Зивом и доработан позднее в США. Сжимает данные путём поиска одинаковых последовательностей (они называются фразы) во всем файле. Выявленные последовательности сохраняются в таблице, им присваиваются более короткие маркеры (ключи). Так, если в изображении имеются наборы из розового, оранжевого и зелёного пикселов, повторяющиеся 50 раз, LZW выявляет это, присваивает данному набору отдельное число (например, 7) и затем сохраняет эти данные 50 раз в виде числа 7. Метод LZW, так же, как и RLE, лучше действует на участках однородных, свободных от шума цветов, он действует гораздо лучше, чем RLE, при сжатии произвольных графических данных, но процесс кодирования и распаковки происходит медленнее.

Чересстрочный GIF

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

В чересстрочном GIF’е сначала записываются строки 1, 5, 10 и т. д. Таким образом, загрузив 1/4 данных, пользователь будет иметь представление о целом изображении. Вторым проходом следуют строки 3, 7, 12, разрешение изображения в браузере ещё вдвое увеличивается. Наконец, третий проход передаёт все недостающие строки (2, 4, 6…). Таким образом, задолго до окончания загрузки файла пользователь может понять, что внутри и решить, стоит ли ждать полной загрузки изображения. Чересстрочная запись незначительно увеличивает размер файла, но это, как правило, оправдывается приобретаемым свойством.

Анимированные изображения

Формат GIF поддерживает анимационные изображения. Фрагменты представляют собой последовательности нескольких статичных кадров, а также информацию о том, сколько времени каждый кадр будет показан на экране. Анимация может быть закольцована, тогда после последнего кадра будет вновь показан первый и так далее.

История

Существует две спецификации формата GIF — GIF 87a и GIF 89a.

Первая спецификация была создана в 1987 году компанией CompuServe для замены устаревшего формата RLE. GIF стал популярен в ходе развития интернета, так как позволял использовать более компактные (по размеру файла) по сравнению с другими форматами картинки на веб-страницах. Хотя к настоящему времени формат во многом устарел, и для его замены создан формат PNG, он по прежнему широко используется.

Патентная защита

GIF первоначально был проприетарным форматом, однако срок его патентной защиты истёк. В США патент на алгоритм сжатия LZW, использующийся в GIF истёк 20 июня 2003. Срок действия канадского патента завершился 7 июля 2004. Действие патента для Великобритании, Франции, Германии и Италии завершилось 18 июня 2004, а для Японии — 20 июня 2004.

См. также


Ссылки

 Rambler's Top100