트루비전 TGA

Truevision TGA
트루비전 TGA
파일 이름 확장명
.tga, .icb, .vda, .vst
인터넷 미디어 유형
이미지/x타르가[1]
image/x-tga
유형코드'TPIC'
동일 유형 식별자(UTI)com.truevision.tga-image
개발자트루비전
형식 유형래스터 이미지 파일

흔히 TARGA라고 불리는 Truevision TGATruevision Inc.(현재의 Avid Technology)에서 만든 래스터 그래픽 파일 형식이다.IBM 호환 PC하이컬러/트루컬러 디스플레이를 지원하는 최초의 그래픽 카드인 TARGA와 VISTA 보드의 기본 형식이었다.이 그래픽 카드 제품군은 전문적인 컴퓨터 이미지 합성 및 PC와의 비디오 편집을 위한 것이었다. 이러한 이유로, TGA 이미지 파일의 일반적인 해상도는 NTSCPAL 비디오 포맷의 해상도와 일치한다.[2]

TARGA는 Truevision Advanced Raster Graphics Adapter의 약자로, TGATruevision Graphics Adapter이니셜리즘이다.

TGA 파일은 일반적으로 PC DOS/Windows 시스템 및 MacOS에서 ".tga" 확장자를 가지고 있다(이전의 Macintosh 시스템은 "TPIC" 유형 코드를 사용한다).이 포맷은 픽셀당[3] 최대 24비트 RGB와 추가 8비트 알파 채널인 8, 15, 16, 24 또는 32비트의 정밀도로 영상 데이터를 저장할 수 있다.컬러 데이터는 컬러맵을 하거나 직접 색상 또는 트루컬러 형식으로 만들 수 있다.이미지 데이터는 원시 상태로 저장하거나 PackBits와 유사한 무손실 RLE 압축을 사용할 수 있다.이러한 유형의 압축은 일반적인 사진 이미지에서는 성능이 떨어지지만 아이콘, 만화, 선 그림 등과 같은 단순한 이미지에서는 충분히 효과가 있다.

역사

TGA 파일 형식은 원래 AT&T EPICenter에 의해 정의되고 1984년 Island Graphics Inc.로부터 피드백을 받아 지정되었다.AT&T EPICenter는 AT&T가 컬러 프레임 버퍼용으로 개발한 신기술을 마케팅하기 위해 만들어진 AT&T의 내부 분사였다.나중에 Truevision이 된 것은 1987년에 AT&T로부터 차용된 직원의 매수 결과였다.

EPICenter의 처음 두 카드인 VDA(비디오 디스플레이 어댑터)와 ICB(이미지 캡처 보드)는 TGA 파일 형식의 첫 번째 형상을 사용했다.파일 확장자 ".vda"와 ".icb"는 포함된 보드별 데이터에 대한 정보를 내포했다.

나중에 앨런 월라수크(당시 EPICenter 대표), 브래드 베개(EPIENTER), 스티븐 도미피에르(이슬랜드 사장)에 의해 보다 성문화된 파일 형식이 필요하다는 결정이 내려졌다.파일 형식은 브래드 베개(EPIENTER)와 브라이언 헌트(EPIENTER)에 의해 만들어지고 구현되었으며, 이러한 요구에 대응하여 보드별 파일 형식이 덜 필요하게 개발되었다.이미 사용 중인 것에 대해 매우 간단한 확장이 이루어졌으며, 폭, 높이, 픽셀 깊이, 연관된 색상 지도 및 이미지 원점에 대한 정보가 포함되어 있었다.라벨 필드(최대 255자)도 초기 사양에 포함되었지만 거의 사용되지 않았다.

당시에는 기술적으로 우수한 또 다른 파일 형식인 TIFF도 등장했지만, TIFF 사양을 지원하는 애플리케이션 간 파일 구현과 공유가 다소 어렵고 관련성이 있어 실제 컬러 이미지에 대한 사용이 매우 제한적이었다.TGA 파일 형식의 단순한 특성과 플랫폼 간 이동성은 이 파일 형식이 널리 채택되고 오늘날까지 전세계적으로 다양한 애플리케이션에서 지속적인 성공을 거둔 주된 원인이다.

처음에 TGA 파일 형식은 ICB-PATE 및 TARGA-PATING 프로그램(나중에 TIPS로 알려짐)과 온라인 부동산 검색 및 스틸프레임 화상회의의 여러 프로젝트에 사용되었다.

현재 버전(2.0)은 알파 채널, 감마 값, 텍스트 메타데이터로 알려진 "우편 스탬프"(더 잘 알려진 썸네일), "우편 스탬프", "감마 값", "텍스트 메타데이터"와 같은 몇 가지 향상된 기능을 포함하고 있으며, 1989년에 Truevision Inc.의 숀 스타이너가 케빈 프리들리와 데이비드 스포펠스트라의 지시를 받아 작성했다.

출범 당시 디지털 이미지 처리에서 예술의 상태를 대변했다.오늘날에도, 그것의 최대깊이는 고급 프리프레스, 집약적인 이미지 처리 시스템에 잘 맞지 않지만, TGA의 주된 의도된 출력은 컬러 인쇄 페이지가 아니라 표준 TV 화면이기 때문에 애니메이션비디오 산업 전반에 걸쳐 여전히 광범위하게 사용되고 있다.[4]

압축되지 않은 24비트 TGA 이미지는 다음과 같은 몇 가지 다른 24비트 스토리지 형식에 비해 상대적으로 간단하다.24비트 TGA는 18바이트 헤더만 포함하고 이미지 데이터는 RGB 데이터로 포장된다.대조적으로 BMP는 4바이트 경계까지의 패딩 행을 필요로 하는 반면 TIFF와 PNG는 파일 내의 고정된 위치에 이미지 데이터나 속성을 배치하지 않는 메타데이터 컨테이너다.

32비트 TGA 영상은 알파 채널 또는 키 신호를 포함하고 있으며, 아비드 데코와 같은 문자 생성기 프로그램에 자주 사용된다.

기술적 세부사항

모든 값은 little-endian이며, 필드 및 하위 필드 번호는 규격의 버전 2.0에 따른다.

버전 2는 확장 영역과 바닥글을 추가했다.개발자 영역은 애플리케이션별 정보를 저장하기 위해 존재한다.

헤더

필드 넘버. 길이 필드명 설명
1 1바이트 ID 길이 이미지 ID 필드의 길이
2 1바이트 배색지도형 색상 맵 포함 여부
3 1바이트 이미지 유형 압축 및 색상 유형
4 5바이트 컬러 맵 사양 색상 맵 설명
5 10바이트 이미지 사양 이미지 치수 및 형식

이미지 ID 길이(필드 1)

0–255 이미지 ID 필드가 구성하는 바이트 수입니다.이미지 ID 필드에는 모든 정보가 포함될 수 있지만, 이미지가 생성된 날짜와 시간 또는 일련 번호를 포함하는 것이 일반적이다.

TGA 규격 버전 2.0을 기준으로 확장 영역에서 이미지를 생성한 날짜와 시간을 제공한다.

색상표 유형(필드 2)

다음 값을 갖는다.

  • 이미지 파일에 색상 맵이 없는 경우 0
  • 1 만약 있다면
  • Truevision에 2–127 예약
  • 128–128 개발자 사용 가능

이미지 유형(필드 3)

아래 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바이트): 픽셀당 비트 수

이미지에서 실제로 전체 색도를 사용하지 않는 경우, 0이 아닌 첫 번째 입력 색인은 색도의 필요한 부분만 파일에 저장할 수 있다.

이미지 사양(필드 5)

6개의 하위 필드:

  • X-원점(2바이트): 원점이 왼쪽 아래에 있는 디스플레이에 대한 왼쪽 아래 모서리의 절대 좌표
  • Y-오리진(2바이트): X-오리진
  • 이미지 너비(2바이트): 너비(픽셀)
  • 이미지 높이(2바이트):픽셀 단위 높이
  • 픽셀 깊이(1바이트): 픽셀당 비트 수
  • 이미지 설명자(1바이트): 비트 3-0이 알파 채널 깊이, 비트 5-4가 픽셀 순서 지정

영상 설명자 바이트의 비트 4는 설정된 경우 오른쪽에서 왼쪽으로 픽셀 순서를 나타낸다.비트 5는 위에서 아래로 순서를 나타낸다.그렇지 않으면 픽셀은 상하좌우로 저장된다.

이미지 및 색 지도 데이터

필드 넘버. 길이 설명
6 원본 이미지 ID 길이 필드 이미지 ID 식별 정보를 포함하는 선택적 필드
7 컬러맵 사양 필드에서 컬러 맵 데이터 색상표 데이터가 들어 있는 조회표
8 원본 이미지 사양 필드 이미지 데이터 이미지 설명자에 따라 저장됨

개발자 영역(옵션)

TGA 규격의 버전 1.0은 매우 기본적이었고, 많은 개발자들은 더 많은 정보를 저장해야 할 필요가 있었고, 따라서 그들의 어플리케이션에만 특정한 그들의 파일에 추가 섹션을 추가하기로 선택했다.

규격 버전 2.0에서는 이러한 애플리케이션별 개선/추가사항이 개발자 영역에 의해 지원된다.개발자 면적의 오프셋과 크기만 스펙과 관련이 있으며, 개발자는 해당 면적에 원하는 것을 자유롭게 추가할 수 있다.

TGA 디코더가 개발자 영역의 정보를 해석할 수 없는 경우, 다른 애플리케이션에 의해 생성된 것으로 추정되기 때문에 일반적으로 이를 무시한다.개발자는 개발자 영역의 데이터가 애플리케이션과 호환되는지 여부를 판단하기 위해 애플리케이션에 로직을 구축할 것을 권고한다. 이를 위한 한 단계는 파일 바닥글의 소프트웨어 ID를 확인하는 것이다.

확장 영역(옵션)

필드 넘버. 길이 설명
10 2바이트 확장 크기 확장 영역의 바이트 크기, 항상 495
11 41바이트 저자명 작성자 이름.사용하지 않을 경우 바이트를 NULL(\0) 또는 공백으로 설정해야 함
12 324바이트 작성자 의견 각각 80자 + NULL로 구성된 4행으로 구성된 주석
13 12바이트 날짜/시간 스탬프 이미지가 생성된 날짜 및 시간
14 41바이트 작업 ID
15 6바이트 작업시간 파일을 생성하는 데 소요된 시간, 분, 초(청구 등)
16 41바이트 소프트웨어 ID 파일을 만든 응용 프로그램.
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 포함

규격 불일치

Truevision 기술 가이드의 부록 C에서 가져온 TGA 파일 형식 규격의 이전 버전에서는 RLE(Run-length 인코딩) 패킷이 스캔 라인을 통과할 수 있다고 기술하고 있다. "런 길이 패킷의 경우 헤더에 지정된 횟수를 반복하는 것으로 간주되는 단일 색상 값이 뒤따른다.패킷은 스캔 라인을 교차할 수 있다(한 라인에서 시작하여 다음 라인에서 종료됨).

그러나 TGA v2.0 규격의 24페이지에는 정반대인 "런 길이 패킷은 두 개 이상의 스캔 라인에서 픽셀을 인코딩해서는 안 된다.한 스캔 라인의 끝과 다음 스캔 라인의 시작 부분이 같은 값의 픽셀을 포함하더라도 두 개를 별도의 패킷으로 인코딩해야 한다.즉, 런 길이 패킷은 한 줄에서 다른 줄로 줄 바꿈해서는 안 된다."

따라서 TGA 리더는 스캔 라인을 가로지르는 RLE 데이터 패킷을 처리할 수 있어야 한다. 이는 원래 규격의 일부였기 때문이다.그러나 TGA 파일을 저장할 때(생성) 새로운 v2.0 TGA 규격을 준수하기 위해 RLE 데이터 패킷을 스캔라인 경계로 제한해야 한다.

참조

  1. ^ .tga MIME 유형이 IANA등록되지 않음
  2. ^ James D. Murray, William vanRyper (April 1996). Encyclopedia of Graphics File Formats, Second Edition. O'Reilly. ISBN 1-56592-161-5. Retrieved 2014-03-07.{{cite book}}: CS1 maint: 작성자 매개변수 사용(링크)
  3. ^ "Truevision TGAª — FILE FORMAT SPECIFICATION — Version 2.0" (PDF).
  4. ^ "Truevision TGA, version 2.0". Digital Preservation. Library of Congress. 2005-02-24. Retrieved 2021-06-08.

외부 링크