1.16. Растровые форматы
Растровые форматы
Растровое изображение — это прямоугольная сетка из мельчайших элементов, называемых пикселями. Каждый пиксель содержит информацию о цвете (обычно в системе RGB — красный, зелёный, синий) и, при наличии, о прозрачности (альфа-канал). Чем выше разрешение (ширина × высота в пикселях), тем детальнее изображение — но и тем больше объём данных. Растровые форматы различаются способом кодирования этих данных: с потерями или без, с поддержкой анимации или слоёв, с оптимизацией под печать, веб или 3D-рендеринг.
BMP
BMP (Bitmap) – один из самых старых форматов, хранит изображения без сжатия (или с минимальным RLE-сжатием). Не теряет качество, но обладает огромным размером файла. Крайне неоптимальный формат, которым редко пользуются.
Формат BMP был разработан Microsoft в середине 1980-х для операционной системы Windows и стал первым стандартом хранения изображений в графическом интерфейсе. BMP сохраняет цвет каждого пикселя напрямую — без алгоритмов сжатия или с применением простого RLE (Run-Length Encoding), при котором последовательности одинаковых значений заменяются числом повторений. Такой подход обеспечивает полное соответствие исходному изображению, но приводит к большим размерам файлов — например, 4K-изображение (3840×2160) в 24-битном цвете занимает около 23,7 МБ. BMP не содержит метаданных (EXIF, геолокация, авторство), не поддерживает прозрачность и анимацию. Формат используется в системных ресурсах Windows (иконки, курсоры), встроенных приложениях и случаях, где важна максимальная простота декодирования (например, в низкоуровневых драйверах).
JPG
JPG / JPEG (Joint Photographic Experts Group) – формат с потерями для фотографий, отличается хорошим регулируемым сжатием. Самый распространенный формат для изображений в интернете.
Формат JPEG был утверждён международной группой экспертов по фотографии в 1992 году как стандарт сжатия для полноцветных изображений с плавными переходами — в первую очередь, фотографий. Сжатие основано на дискретном косинусном преобразовании (DCT), разбиении изображения на блоки 8×8 пикселей и отбрасывании информации, наименее воспринимаемой человеческим глазом (например, высокочастотных деталей). Степень сжатия регулируется параметром качества (обычно от 1 до 100), что позволяет найти баланс между размером файла и визуальной точностью. JPEG не поддерживает прозрачность и анимацию, а повторное сохранение одного и того же файла приводит к накоплению артефактов (размытие, «ступеньки» в градиентах, «кольца» вокруг контрастных границ). Несмотря на это, JPEG остаётся самым распространённым форматом в вебе, цифровых фотоаппаратах и социальных сетях благодаря высокой степени сжатия (в 10–20 раз меньше, чем BMP) и универсальной поддержке.
PNG
PNG (Portable Network Graphics) – формат без потерь с поддержкой прозрачности (альфа-канал), имеющий чёткие контуры, используется в скриншотах, веб-графике и логотипах.
Формат PNG был создан в середине 1990-х как открытая, патентно чистая альтернатива формату GIF, после того как компания Unisys объявила о намерении взимать лицензионные отчисления за использование LZW-сжатия в GIF. PNG использует алгоритм сжатия Deflate (как в ZIP), который не теряет ни одного пикселя при сохранении. Он поддерживает глубину цвета от 1 до 48 бит на пиксель, градации серого и полноценный альфа-канал (256 уровней прозрачности — в отличие от GIF, где прозрачность только «включена/выключена»). PNG сохраняет резкие границы, текст и логотипы без размытия, что делает его идеальным для скриншотов, интерфейсной графики, иконок и диаграмм. Формат не поддерживает анимацию (для этого существует расширение APNG, но оно не стандартизировано и слабо поддерживается), зато содержит метаданные: авторство, копирайт, цветовой профиль (гамма, ICC). Размер файла у PNG обычно больше, чем у JPEG для фотографий, но меньше — для графики с большим количеством однородных областей.
GIF
GIF (Graphics Interchange Format) – поддерживает анимацию и прозрачность, но только 256 цветов, и подойдёт лишь для простой графики с анимацией и мемами.
Формат GIF был разработан компанией CompuServe в 1987 году и быстро стал стандартом для обмена графикой в раннем интернете. GIF использует индексированные цвета: вся палитра изображения ограничена 256 цветами, каждый пиксель хранит не RGB-значение, а номер в таблице. Сжатие осуществляется алгоритмом LZW, эффективным для изображений с большими одноцветными областями. GIF поддерживает простую анимацию — последовательную смену кадров с задержкой, а также однобитовую прозрачность (один цвет в палитре объявляется прозрачным). Эти свойства сделали GIF популярным для мемов, смайлов, инфографики и декоративных элементов. Однако ограничение палитры приводит к искажению фотографий (появлению «шума» и полос), а отсутствие плавной прозрачности — к «зубчатым» краям. Сегодня GIF часто заменяют на MP4-видео или WebP-анимацию, но он остаётся культурным феноменом и работает везде — даже в самых старых браузерах.
TGA
TGA (TARGA) – формат для хранения растровых изображений с альфа-каналом (поддержкой прозрачности), используется для текстур в играх и рендеров.
Формат TGA был создан компанией Truevision в 1984 году для своих видеоплат и стал стандартом в профессиональной графике, видео- и 3D-индустрии. TGA сохраняет необработанные пиксельные данные с минимальной обработкой: поддерживает RGB, RGBA (с альфа-каналом), градации серого, индексированные цвета, а также метаданные — авторство, комментарии, ориентацию изображения. Формат допускает как несжатое, так и RLE-сжатое хранение. Главное преимущество TGA — предсказуемость: при загрузке изображения в 3D-редактор (например, Blender, Unity, Unreal Engine) или рендер-ферму оно не проходит дополнительной обработки, не теряет альфа-канал и не смещается по координатам. TGA широко используется для текстур (diffuse, normal, specular maps), промежуточных кадров анимации и сохранения результатов рендера до финальной компоновки. Однако из-за отсутствия метаданных вроде EXIF и слабой поддержки в веб-браузерах он не подходит для публикации.
TIFF
TIF / TIFF (Tagged Image File Format) – гибкий формат без потерь, поддерживает слои, сжатие (LZW, ZIP), используется для сканирования документов, полиграфии, отличается высоким качеством и большим размером.
Формат TIFF был разработан в середине 1980-х компанией Aldus (позже приобретённой Adobe) для настольных издательских систем. TIFF — это не один формат, а контейнер: файл состоит из заголовка и набора «тегов» — пар «идентификатор = значение», описывающих разрешение, цветовую модель (RGB, CMYK, Lab), глубину цвета, метод сжатия (LZW, ZIP, JPEG, или без сжатия), ориентацию, геоданные и даже вложенные изображения. TIFF поддерживает многостраничность, слои (в расширении Adobe), альфа-канал и цветовые профили. Это делает его незаменимым в полиграфии (макеты для печати), архивировании (цифровые копии книг, документов), медицине (DICOM основан на TIFF), геоинформатике (геопривязанные снимки) и профессиональной фотографии (RAW-конвертеры экспортируют в TIFF как промежуточный формат). Размер файла может достигать гигабайтов, но качество — максимально возможное для цифрового изображения.
PSD
PSD (Photoshop Document) – внутренний формат Adobe Photoshop, сохраняет слои, маски, эффекты, поддерживает сложные проекты.
Формат PSD — это собственный формат Adobe Photoshop, появившийся вместе с первой версией программы в 1990 году. PSD сохраняет не только пиксельные данные, но и всю историю работы: слои (включая группы и корректирующие), маски, каналы (альфа, выделения), пути (векторные контуры), стили слоя (тень, обводка, градиент), аннотации, руководства и историю действий. Такой файл позволяет продолжить редактирование в точности с того места, где остановились. PSD поддерживает глубину цвета до 30 бит на канал (10 бит на R/G/B), цветовые модели RGB, CMYK, Lab, Grayscale и пространства вроде ProPhoto RGB. Хотя формат проприетарный, его спецификация частично открыта, и многие редакторы (GIMP, Affinity Photo, Krita) умеют читать и записывать PSD с ограничениями. PSD не предназначен для публикации — он рабочий формат дизайнера, «цифровая мастерская».