Truevision ТГА
Эта статья нуждается в дополнительных цитатах для проверки . ( март 2014 г. ) |
Расширения имен файлов |
.tga, .icb, .vda, .vst |
---|---|
Тип интернет-СМИ |
изображение/x-тарга [ 1 ] изображение/x-tga |
Введите код | 'ТПИК' |
Единый идентификатор типа (UTI) | com.truevision.tga-изображение |
Разработано | Truevision |
Тип формата | растрового изображения Файл |
Truevision TGA , часто называемый TARGA , — это формат файлов растровой графики, созданный компанией Truevision Inc. (теперь часть Avid Technology ). Это был собственный формат плат TARGA и VISTA, которые были первыми графическими картами для IBM-совместимых ПК, поддерживавшими отображение высокой цветопередачи или истинного цвета . Это семейство графических карт предназначалось для профессионального компьютерного синтеза изображений и редактирования видео на ПК; по этой причине обычное разрешение файлов изображений TGA соответствует разрешениям NTSC и PAL . видеоформатов [ 2 ]
аббревиатура Truevision от Advanced Raster Graphics Adapter ; — это TARGA TGA — инициализация Truevision графического адаптера это .
Файлы TGA обычно имеют расширение «.tga» в системах ПК DOS / Windows и macOS (более старые системы Macintosh используют код типа «TPIC» ). Сам формат допускает любую глубину пикселей до 255, из которых до 15 бит могут быть выделены для альфа-канала ; [ 3 ] однако на практике поддерживались только разрядности 8, 15, 16, 24 и 32, где 16- и 32-битные форматы использовали 1 и 8 бит соответственно для альфа-канала. Цветовые данные могут быть отображены в цвете или в прямого цвета или истинного цвета формате . Данные изображения могут храниться в необработанном виде или, опционально, сжатие RLE без потерь, аналогичное PackBits можно использовать . Этот тип сжатия плохо работает для типичных фотографических изображений, но достаточно хорошо работает для более простых изображений, таких как значки, мультфильмы и штриховые рисунки.
История
[ редактировать ]Формат файла TGA был первоначально определен и определен AT&T EPICenter по отзывам Island Graphics Inc в 1984 году. AT&T EPICenter был внутренним дочерним предприятием AT&T, созданным для продвижения на рынок новых технологий, разработанных AT&T для буферов цветных кадров . То, что позже стало Truevision, стало результатом выкупа компании AT&T сотрудниками за счет заемных средств в 1987 году.
Первые две карты EPICenter, VDA (адаптер видеодисплея) и ICB (плата захвата изображения), использовали первые воплощения формата файлов TGA. Расширения файлов «.vda» и «.icb» подразумевают информацию о содержащихся конкретных данных платы.
Позже Алан Власук (тогда глава EPICenter), Брэд Пиллоу (EPICenter) и Стивен Домпьер (президент Island) пришли к выводу, что необходим более кодифицированный формат файлов. Формат файла был создан и реализован Брэдом Пиллоу (EPICenter) и Брайаном Хантом (EPICenter) и был разработан в ответ на потребность в менее специфичном для платы формате файла. К тому, что уже использовалось, было сделано очень простое расширение, содержащее информацию о ширине, высоте, глубине пикселей, связанной цветовой карте и происхождении изображения. Поле метки (до 255 символов) также было включено в первоначальную спецификацию, но использовалось редко.
В то же время появился еще один технически более совершенный формат файлов, названный TIFF , но его использование для изображений с настоящим цветом было очень ограничено, поскольку реализация и обмен файлами между приложениями, поддерживающими спецификацию TIFF, были довольно сложными и трудоемкими. Более простая природа формата файла TGA и его переносимость между платформами являются основной причиной его широкого распространения и дальнейшего успеха в самых разных приложениях по всему миру по сей день.
Первоначально формат файла TGA использовался в программах ICB-PAINT и TARGA-PAINT (которые позже стали известны как TIPS), а также в нескольких проектах по онлайн-просмотру недвижимости и телеконференциях с неподвижными кадрами.
Текущая версия (2.0) включает в себя несколько улучшений, таких как «почтовые марки» (более известные как миниатюры ), альфа-канал , значение гаммы и текстовые метаданные . Ее автором является Шон Штайнер из Truevision Inc. под руководством Кевина Фридли и Дэвид Споэльстра в 1989 году.
На момент запуска он представлял собой новейшее достижение в области цифровой обработки изображений. Даже сегодня, хотя его максимальная глубина цвета не очень подходит для высокопроизводительных систем допечатной подготовки и интенсивной обработки изображений, TGA по-прежнему широко используется в анимационной и видеоиндустрии , поскольку его основным предназначением являются стандартные телевизионные экраны, а не цветные печатные страницы. . [ 4 ]
Несжатые 24-битные изображения TGA относительно просты по сравнению с некоторыми другими известными 24-битными форматами хранения: 24-битный TGA содержит только 18-байтовый заголовок, за которым следуют данные изображения в виде упакованных данных RGB. Напротив, BMP требует заполнения строк до 4-байтовых границ, тогда как TIFF и PNG являются контейнерами метаданных , которые не размещают данные или атрибуты изображения в фиксированном месте внутри файла.
32-битные изображения TGA содержат альфа-канал или ключевой сигнал и часто используются в программах- генераторах символов, таких как Avid Deko.
Технические детали
[ редактировать ]Все значения имеют прямой порядок байтов ; номера полей и подполей соответствуют версии 2.0 спецификации.
В версии 2 добавлена область расширения и нижний колонтитул. Область разработчика существует для хранения информации, специфичной для приложения.
Заголовок
[ редактировать ]Номер поля. | Длина | Имя поля | Описание |
---|---|---|---|
1 | 1 байт | Длина идентификатора | Длина поля идентификатора изображения |
2 | 1 байт | Тип цветовой карты | Включена ли карта цветов |
3 | 1 байт | Тип изображения | Типы сжатия и цвета |
4 | 5 байт | Спецификация карты цветов | Описывает цветовую карту |
5 | 10 байт | Спецификация изображения | Размеры и формат изображения |
Длина идентификатора изображения (поле 1)
0–255 Количество байтов, из которых состоит поле идентификатора изображения. Поле идентификатора изображения может содержать любую информацию, но обычно оно содержит дату и время создания изображения или серийный номер.
Начиная с версии 2.0 спецификации TGA, дата и время создания изображения учитываются в области расширения.
Тип цветовой карты (поле 2)
имеет значение:
- 0, если файл изображения не содержит карты цветов
- 1, если присутствует
- 2–127 зарезервировано Truevision
- 128–255 доступны для использования разработчиками.
Тип изображения (поле 3)
перечисляется в трех младших битах, причем четвертый бит является флагом RLE. Некоторые возможные значения:
- 0 данные изображения отсутствуют
- 1 несжатое изображение с цветовой картой
- 2 несжатых полноцветных изображения
- 3 несжатое изображение в оттенках серого
- 9-серийное кодированное изображение с цветовой картой
- 10-серийное кодированное полноцветное изображение
- 11-серийное кодированное изображение в оттенках серого
Тип изображения 1 и 9: в зависимости от значения глубины пикселя представление данных изображения представляет собой 8-, 15- или 16-битный индекс в цветовой карте, определяющей цвет пикселя. Тип изображения 2 и 10: данные изображения являются прямым представлением цвета пикселя. При глубине пикселя 15 и 16 бит каждый пиксель хранится по 5 бит на цвет. Если глубина пикселя составляет 16 бит, самый верхний бит зарезервирован для прозрачности. При глубине пикселя 24 бита каждый пиксель хранится по 8 бит на цвет. Глубина пикселя 32 бита определяет дополнительный 8-битный альфа-канал. Тип изображения 3 и 11: данные изображения являются прямым представлением данных в оттенках серого. Глубина пикселя для изображений этого типа составляет 8 бит.
Спецификация карты цветов (поле 4)
имеет три подполя:
- Индекс первой записи (2 байта): индекс первой записи карты цветов, включенной в файл.
- Длина карты цветов (2 байта): количество записей карты цветов, включенных в файл.
- Размер записи карты цветов (1 байт): количество битов на запись карты цветов.
В случае, если изображение фактически не использует всю карту цветов, ненулевой индекс первой записи позволяет сохранить в файле только необходимую часть карты цветов.
Спецификация изображения (поле 5)
имеет шесть подполей:
- X-origin (2 байта): абсолютная координата нижнего левого угла для дисплеев, где начало координат находится в левом нижнем углу.
- Y-origin (2 байта): как для X-origin.
- Ширина изображения (2 байта): ширина в пикселях.
- Высота изображения (2 байта): высота в пикселях.
- Глубина пикселя (1 байт): бит на пиксель
- Дескриптор изображения (1 байт): биты 3–0 задают глубину альфа-канала, биты 5–4 задают порядок пикселей.
Бит 4 байта дескриптора изображения указывает порядок пикселей справа налево, если он установлен. Бит 5 указывает порядок сверху вниз. В противном случае пиксели сохраняются в порядке снизу вверх и слева направо.
Данные изображения и карты цветов
[ редактировать ]Номер поля. | Длина | Поле | Описание |
---|---|---|---|
6 | Из поля длины идентификатора изображения | Идентификатор изображения | Необязательное поле, содержащее идентифицирующую информацию |
7 | Из поля спецификации карты цветов | Данные цветовой карты | Справочная таблица, содержащая данные карты цветов |
8 | Из поля спецификации изображения | Данные изображения | Сохраняется в соответствии с дескриптором изображения |
Зона разработчика (опционально)
[ редактировать ]Версия 1.0 спецификации TGA была очень простой, и многим разработчикам требовалось хранить больше информации, и поэтому они решили добавить в свои файлы дополнительные разделы, специфичные только для их приложения. [ нужна ссылка ]
В версии 2.0 спецификации эти улучшения/дополнительные возможности, специфичные для приложения, поддерживаются областью разработчика. Только смещение и размер области разработчика имеют отношение к спецификации, и разработчики могут добавлять в эту область все, что захотят.
Если декодер TGA не может интерпретировать информацию в области разработчика, он обычно игнорирует ее, поскольку предполагается, что она была создана другим приложением. Разработчикам рекомендуется встраивать в свои приложения логику, чтобы определить, совместимы ли данные в области разработчика с приложением; Одним из шагов к этому является проверка идентификатора программного обеспечения в нижнем колонтитуле файла.
Область расширения (опционально)
[ редактировать ]Номер поля. | Длина | Поле | Описание |
---|---|---|---|
10 | 2 байта | Размер расширения | Размер области расширения в байтах, всегда 495 |
11 | 41 байт | Имя автора | Имя автора. Если не используется, байты должны быть установлены в NULL (\0) или пробелы. |
12 | 324 байта | Комментарий автора | Комментарий, организованный в виде четырех строк, каждая из которых состоит из 80 символов плюс NULL. |
13 | 12 байт | Отметка даты/времени | Дата и время создания изображения |
14 | 41 байт | Идентификатор вакансии | |
15 | 6 байт | Время работы | Часы, минуты и секунды, потраченные на создание файла (для выставления счетов и т. д.) |
16 | 41 байт | Идентификатор программного обеспечения | Приложение, создавшее файл. |
17 | 3 байта | Версия программного обеспечения | |
18 | 4 байта | Ключевой цвет | |
19 | 4 байта | Соотношение сторон пикселей | |
20 | 4 байта | Значение гаммы | |
21 | 4 байта | Смещение цветокоррекции | Количество байтов от начала файла до таблицы цветокоррекции, если она есть. |
22 | 4 байта | Офсет почтовой марки | Количество байтов от начала файла до изображения почтовой марки, если оно присутствует. |
23 | 4 байта | Смещение линии сканирования | Количество байт от начала файла до таблицы строк развертки, если она есть. |
24 | 1 байт | Тип атрибутов | Определяет альфа-канал |
Нижний колонтитул файла (необязательно)
[ редактировать ]Если файл TGA содержит нижний колонтитул, скорее всего, это файл TGA версии 2. Нижний колонтитул — это последние 26 байт файла, из которых последние 18 являются постоянными.
Номер поля. | Длина | Поле | Описание |
---|---|---|---|
28 | 4 байта | Смещение расширения | Смещение в байтах от начала файла |
29 | 4 байта | Смещение области застройщика | Смещение в байтах от начала файла |
30 | 16 байт | Подпись | Содержит «TRUEVISION-XFILE». |
31 | 1 байт | Содержит "." | |
32 | 1 байт | Содержит NUL |
Расхождения в спецификациях
[ редактировать ]В более старой версии спецификации формата файла TGA, взятой из Приложения C Технического руководства Truevision, говорится, что пакеты с кодировкой длины серии (RLE) могут пересекать линии сканирования: «Для пакета длины серии за заголовком следует одно значение цвета. , который, как предполагается, повторяется количество раз, указанное в заголовке. Пакет может пересекать строки сканирования (начинаться с одной строки и заканчиваться на следующей)».
Однако на странице 24 спецификации TGA v2.0 указано прямо противоположное: «Пакеты длины серии никогда не должны кодировать пиксели более чем из одной строки сканирования . Даже если конец одной строки сканирования и начало следующей содержат пиксели одинаковое значение, оба должны быть закодированы как отдельные пакеты. Другими словами, пакеты серийной длины не должны переноситься с одной строки на другую».
Следовательно, считыватели TGA должны иметь возможность обрабатывать пакеты данных RLE, пересекающие линии сканирования, поскольку это было частью исходной спецификации. Однако при сохранении (создании) файлов TGA необходимо будет ограничить пакеты данных RLE границами строк сканирования, чтобы обеспечить совместимость с новой спецификацией TGA v2.0.
Ссылки
[ редактировать ]- ^ .tga Тип MIME не зарегистрирован в IANA
- ^ Джеймс Д. Мюррей; Уильям ванРайпер (апрель 1996 г.). Энциклопедия форматов графических файлов, второе издание . О'Рейли . ISBN 1-56592-161-5 . Проверено 7 марта 2014 г.
- ^ «Truevision TGAª — СПЕЦИФИКАЦИЯ ФОРМАТА ФАЙЛА — Версия 2.0» (PDF) .
- ^ «Truevision TGA, версия 2.0» . Цифровое сохранение . Библиотека Конгресса . 24 февраля 2005 г. Проверено 8 июня 2021 г.
Внешние ссылки
[ редактировать ]- Спецификация TGA — предыдущая версия формата файла, взятая из Технического руководства Truevision.
- Пакет соответствия TrueVision TGA 2.0 – примеры