맨위로가기

TIFF

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

TIFF (Tagged Image File Format)는 1980년대 중반에 데스크톱 스캐너 제조업체들이 독점 형식 대신 공통의 스캔 이미지 파일 형식을 사용하도록 개발된 이미지 파일 형식이다. 흑백 이진 이미지로 시작하여 그레이스케일 및 컬러 이미지를 지원하도록 발전했으며, 현재 JPEG, PNG와 함께 딥 컬러 이미지에 널리 사용된다. TIFF는 높은 호환성과 유연성을 제공하며, 다양한 압축 방식을 지원하여 이미지 데이터를 효율적으로 저장하고 편집에 적합하다. 여러 이미지를 하나의 파일에 저장하는 멀티 페이지 기능을 제공하며, BigTIFF, TIFF/IT, TIFF-F 등 다양한 확장 형식이 존재한다. Exif 규격 또한 TIFF를 기반으로 한다.

더 읽어볼만한 페이지

  • 그래픽 파일 포맷 - JPEG
    JPEG은 정지 화상의 디지털 압축 및 코딩을 위한 국제 표준이자 이를 만든 위원회의 이름으로, 1992년 최초 표준 발표 이후 웹 환경에서 널리 사용되는 이미지 형식이 되었다.
  • 그래픽 파일 포맷 - BMP 파일 포맷
    BMP 파일 포맷은 마이크로소프트에서 정의한 다양한 색상 깊이를 가진 컬러 비트맵 표현 방식으로, 장치 독립 비트맵이라고도 불리며, BMP 헤더, 비트맵 정보, 색 팔레트, 비트맵 데이터 등으로 구성되어 높은 호환성을 가지지만 압축을 거의 하지 않아 파일 크기가 큰 편이다.
TIFF - [IT 관련 정보]에 관한 문서
파일 정보
TIFF 워드마크 로고
"TIFF Revision 6.0"의 워드마크
개요
이름Tagged Image File Format (태그 이미지 파일 포맷)
확장자.tiff, .tif
MIME 유형image/tiff
image/tiff-fx
타입 코드TIFF
유니폼 타입public.tiff
매직 넘버49 49 2A 00
4D 4D 00 2A
개발자https://ko.wikipedia.org/wiki/Aldus_Corporation (현재는 https://ko.wikipedia.org/wiki/%EC%95%84%EB%8F%84%EB%B9%84_%EC%9D%B8%EC%BD%94%ED%85%8C%EC%9D%B4%ED%8A%B8 소유)
발표일1986년 9월 12일
최신 버전TIFF 6.0
최신 버전 발표일1992년 6월 3일 (TIFF 6.0)
2002년 3월 22일 (TIFF Supplement 2)
종류이미지 파일 형식
파생tiff
확장Exif (교환 이미지 파일 형식)
DCF (카메라 파일 시스템 디자인 규칙)
TIFF/EP (태그 이미지 파일 형식/전자 사진)
TIFF/IT
TIFF-FX
GeoTIFF (지리 TIFF)
웹사이트https://www.loc.gov/preservation/digital/formats/fdd/fdd000022.shtml
추가 정보
설명래스터 그래픽 및 이미지 정보를 저장하는 데 사용되는 컴퓨터 파일
사용 분야출판, 사진 편집, 그래픽 디자인

2. 역사

TIFF는 1980년대 중반, 데스크톱 스캐너 제조업체들이 다양한 독점 형식 대신 공통으로 사용할 스캔 이미지 파일 형식을 만들기 위해 개발되었다. 초기에는 이진 이미지 형식으로 시작했으나, 기술 발전에 따라 그레이스케일 및 컬러 이미지를 지원하도록 확장되었다. 오늘날 TIFF는 JPEG, PNG와 함께 딥 컬러 이미지 분야에서 널리 사용되는 형식 중 하나이다.

1986년 가을, Aldus Corporation 주도로 첫 공식 사양인 개정 3.0이 발표되었고, 이후 개정 4.0(1987년 4월), 팔레트 컬러 이미지와 LZW 압축을 지원하는 개정 5.0(1988년 10월)이 차례로 공개되었다.[9]

하지만 TIFF는 매우 복잡한 형식으로 많은 태그를 정의했고, 이로 인해 구현 방식에 따라 호환되지 않는 파일 형식이 많아지는 문제가 발생하기도 했다. 심지어 TIFF가 "수천 개의 호환되지 않는 파일 형식(Thousands of Incompatible File Formatseng)"의 약자라는 농담이 생길 정도였다.[10] 이러한 문제를 해결하기 위해 1992년 6월 발표된 개정 6.0에서는 모든 구현체가 지원해야 하는 '기본 TIFF(Baseline TIFFeng)'와 선택적으로 지원하는 'TIFF 확장(TIFF Extensionseng)'을 구분하는 개념을 도입했다. 이후에도 1995년 9월[21]2002년 3월[11]에 추가적인 확장 사양이 발표되었다.

2. 1. 개발 배경

1980년대 중반, 데스크톱 스캐너 제조업체들은 당시 난립하던 여러 독점 형식 대신 공통으로 사용할 수 있는 스캔 이미지 파일 형식 개발의 필요성을 느꼈다. 이에 따라 1986년 마이크로소프트와 알더스(Alduseng, 1994년 어도비에 인수됨)가 TIFF 개발을 시작했으며, 같은 해 가을 알더스는 여러 스캐너 제조사 및 소프트웨어 개발자와의 논의를 거쳐 첫 공식 사양인 TIFF 개정 3.0을 발표했다.

초기 TIFF는 당시 데스크톱 스캐너가 처리할 수 있는 수준에 맞춰 각 픽셀당 두 가지 값만 표현 가능한 이진 이미지(흑백) 형식만을 지원했다. 하지만 스캐너 기술이 발전하고 컴퓨터의 디스크 저장 공간이 늘어나면서, TIFF는 그레이스케일 이미지를 지원하도록 확장되었고, 이후 컬러 이미지까지 지원하게 되었다. 오늘날 TIFF는 JPEG, PNG와 함께 딥 컬러 이미지 분야에서 널리 사용되는 형식 중 하나이다.

TIFF는 여러 차례 개정을 거치며 기능을 확장했다. 1987년 4월에는 사소한 개선 사항을 담은 개정 4.0이, 1988년 10월에는 팔레트 컬러 이미지와 LZW 압축 지원이 추가된 개정 5.0이 발표되었다.[9] TIFF는 이미지 데이터를 해상도, 색상 수, 부호화 방식 등이 다른 여러 형식으로 하나의 파일에 묶어 저장함으로써 특정 애플리케이션 소프트웨어에 종속되지 않는 독립적인 형식을 목표로 했다. 기능 확장은 주로 새로운 태그를 추가하는 방식으로 이루어져 과거 버전과의 하위 호환성을 고려했다.

그러나 TIFF는 매우 복잡한 형식이어서 다양한 기능을 위한 수많은 태그를 정의했지만, 실제 파일에서는 그중 일부만 사용되는 경우가 많았다. 이 때문에 소프트웨어마다 지원하는 기능 범위가 달라 호환되지 않는 TIFF 파일이 양산되는 문제가 발생하기도 했다. 심지어 TIFF가 '수천 개의 호환되지 않는 파일 형식'(Thousands of Incompatible File Formatseng)의 약자라는 농담이 생길 정도였다.[10] 이러한 호환성 문제를 해결하기 위해 1992년 6월 발표된 개정 6.0에서는 모든 구현체가 반드시 지원해야 하는 '기본 TIFF'(Baseline TIFFeng)와 선택적으로 지원할 수 있는 'TIFF 확장'(TIFF Extensionseng)을 구분하는 개념을 도입했다. 이후에도 1995년 9월[21]과 2002년 3월[11]에 사양 보충 자료를 통해 추가적인 확장이 이루어졌다.

2. 2. 버전 변천사

TIFF는 1980년대 중반, 데스크톱 스캐너 제조업체들이 다양한 독점 형식 대신 공통으로 사용할 수 있는 스캔 이미지 파일 형식을 만들기 위해 개발되었다. 초기 TIFF는 당시 스캐너 기술 수준에 맞춰 각 픽셀당 두 가지 값만 표현하는 이진 이미지 형식이었다. 이후 스캐너 성능이 향상되고 컴퓨터 저장 공간이 늘어나면서 그레이스케일 이미지와 컬러 이미지를 지원하도록 발전했다. 현재 TIFF는 JPEG, PNG와 함께 딥 컬러 이미지의 인기 있는 형식 중 하나이다.

TIFF 사양의 첫 번째 버전(개정 3.0)은 1986년 가을, Aldus Corporationeng에 의해 발표되었다. 이는 여러 스캐너 제조업체 및 소프트웨어 개발자와의 논의를 거쳐 만들어졌다. 1987년 4월에는 사소한 개선 사항을 포함한 개정 4.0이 나왔고, 1988년 10월에는 팔레트 컬러 이미지와 LZW 압축을 지원하는 개정 5.0이 발표되었다.[9]

TIFF는 다양한 기능을 지원하기 위해 많은 태그를 정의했지만, 실제 파일에서는 일부 태그만 사용되는 경우가 많았다. 이로 인해 구현 방식에 따라 호환되지 않는 다양한 TIFF 변형이 생겨났고, TIFF가 "수천 개의 호환되지 않는 파일 형식(Thousands of Incompatible File Formatseng)"의 약자라는 농담까지 나올 정도였다.[10] 이 문제를 해결하기 위해 1992년 6월에 발표된 개정 6.0에서는 모든 구현이 지원해야 하는 기본 TIFF(Baseline TIFFeng)와 선택적으로 지원하는 TIFF 확장(TIFF Extensionseng)을 구분했다. 이후 1995년 9월[21]과 2002년 3월[11]에 두 차례의 보충 자료를 통해 추가 확장이 정의되었다. 현재 TIFF 사양(TIFF 6.0 및 보충 자료)에 대한 저작권은 어도비가 보유하고 있으며, 관련 문서는 어도비 TIFF 리소스 페이지에서 찾아볼 수 있다.[13] 팩스 표준인 RFC 3949 역시 이 TIFF 사양을 기반으로 한다.[14]

TIFF 6.0부터는 SampleFormat 태그가 추가되어 채널당 8비트 이상의 정수 이미지나 부동소수점 이미지를 포함한 고급 픽셀 데이터 유형을 처리할 수 있게 되었다. 이는 TIFF를 고정밀도가 요구되는 과학 이미지 처리(예: 최대 16비트 해상도의 과학용 CCD 카메라 이미지 저장)에 적합한 형식으로 만들었다. 또한, TIFF 6.0은 다중 페이지 이미지 규칙을 따라 하나의 파일에 여러 이미지를 저장하는 것을 허용한다.

TIFF는 1986년 마이크로소프트와 Alduseng(1994년 어도비에 합병)가 공동으로 개발한 이미지 데이터 형식이다. 해상도, 색상 수, 부호화 방식이 다른 여러 형식의 이미지 데이터를 하나의 파일에 저장할 수 있어 특정 응용 소프트웨어에 덜 의존적인 특징을 가진다. 여러 차례 개정을 거치며 기능이 확장되었지만, 주로 태그를 추가하는 방식으로 이루어져 과거 데이터와의 호환성을 유지하려 노력했다. 현재 주류는 TIFF Revision 6.0(TIFF 6.0)이며, 이후 Adobe PageMaker 6.0 Technical Noteseng나 Adobe Photoshop Technical Noteseng 등을 통해 일부 내용이 추가되거나 변경되었다.

과거에는 FM TOWNSeng, Macintosheng, NeXTeng 등에서 자주 사용되었고, Windowseng 3.0에서 DIB(BMP)가 표준이 되기 전까지 Windowseng 환경에서도 표준 이미지 형식으로 쓰였다. TIFF는 흑백 2값, 그레이스케일, 다양한 컬러 형식(RGB/CMYK)을 지원하지만, 표현의 자유도가 높아 완전한 호환성을 유지하기 어려운 단점이 있다. TIFF 규약 자체도 모든 태그를 지원할 필요는 없다고 명시하고 있으며, 호환성 문제를 줄이기 위한 서브셋(Baseline TIFF 등)이 제안되었지만 항상 지켜지는 것은 아니다.

압축 방식으로는 비압축 외에도 LZW 압축, ZIP 압축, 런 길이 압축의 일종인 PackBitseng 등 다양한 무손실 압축 방식을 사용할 수 있다. TIFF 6.0부터는 JPEG 압축(손실 압축)도 지원하게 되었다. 파일 크기가 중요한 경우, 흑백 2값 이미지는 CCITT G4(MMR) 압축을, 그 외에는 JPEG나 LZW 압축을 사용하는 경우가 많다. DTP나 인쇄 용도에서는 비압축 형식이 선호되기도 한다. LZW 압축은 GIF와 마찬가지로 특허상의 문제로 인해 자유롭게 사용할 수 없는 시기가 있었다 (일본에서는 2004년 6월 20일까지).

웹 브라우저 중에서는 Internet Explorereng가 버전 9부터 TIFF 이미지 표시를 지원하기 시작했다. TIFF는 이미지 편집 중간 단계에서 사용하기에 유용한데, 대부분의 편집 소프트웨어가 TIFF 형식을 지원하고, JPEG 압축을 사용하지 않는 한 저장을 반복해도 화질이 저하되지 않으며, 색상 표현(채널당 1/2/4/8/10/12/14/16/32비트 정수 또는 16/32/64비트 부동소수점 등)에 대한 제약이 매우 적기 때문이다.

3. 특징

TIFF 파일은 하나 이상의 이미지를 포함할 수 있으며, 각 이미지는 이미지 파일 디렉토리(IFD)라는 데이터 구조로 관리된다. IFD는 TIFF(Tagged Image File Format)라는 이름이 유래된 '태그'를 포함하며, 각 태그는 이미지 너비, 높이, 압축 방식, 메타데이터 등 이미지에 대한 특정 정보를 나타낸다.[12] 각 IFD는 다음 IFD를 가리키는 포인터를 가질 수 있어, 하나의 파일 안에 여러 이미지를 순차적으로 저장하는 것이 가능하다.

TIFF 이미지는 기본적으로 픽셀의 직사각형[12] 격자로 구성되며, 수평 및 수직 이미지 해상도는 다를 수 있다. 이미지 데이터는 세로 방향으로 여러 개의 '스트립(strip)'으로 나누어 저장하거나, 가로와 세로 모두 작은 단위로 나뉜 '타일(tile)' 형태로 저장될 수 있다. 이는 과거 메모리 제약이나 현재의 편집 유연성 등을 고려한 구조이다.[9] 각 스트립이나 타일 내의 픽셀 데이터는 행 우선 순서로 배열된다.

하나의 픽셀은 하나 이상의 '샘플(sample)'로 구성된다. 예를 들어 RGB 색상 모델 이미지는 픽셀당 3개의 샘플(빨강, 초록, 파랑)을 가지며, 회색조 이미지는 1개의 샘플을 가진다. TIFF는 가산 혼합(RGB, RGBA)과 감산 혼합(CMYK 색상 모델) 색상 모델을 모두 지원하며, 다양한 비트 심도를 지원하여 폭넓은 색상 표현이 가능하다. 또한, 무손실 압축과 손실 압축 등 다양한 압축 방식을 지원한다.

이미지 데이터 외에도 Artist(제작자), Copyright(저작권), DateTime(날짜/시간) 등 다양한 텍스트 기반 메타데이터를 파일 내에 저장하는 기능을 지원한다. 이러한 유연성 덕분에 TIFF는 다양한 이미지 형식(JPEG, PackBits 등)을 담는 컨테이너 역할을 할 수 있으며, 벡터 기반의 클리핑 패스나 레이어 같은 추가 정보도 포함할 수 있다. 다만, 높은 유연성은 소프트웨어 간 호환성 문제를 야기하기도 했으며, 이를 해결하기 위해 모든 TIFF 리더가 지원해야 하는 최소 기능 집합인 'Baseline TIFF'가 정의되었다.[9][10]

3. 1. 높은 호환성 및 유연성

TIFF는 1986년 마이크로소프트(Microsoft)와 앨더스(Aldus)(1994년 어도비에 합병)가 특정 애플리케이션 소프트웨어에 얽매이지 않는 이미지 데이터 형식을 목표로 개발했다.[9] 이러한 목표 덕분에 TIFF는 이미지 데이터를 이미지 해상도, 색상 수, 부호화 방식 등이 다른 여러 형식으로 하나의 파일 안에 묶어 저장할 수 있어 유연성이 높다.

TIFF 파일은 이미지 ''하나 또는 여러 개''를 포함할 수 있다. 여러 이미지를 저장하는 대표적인 예시는 여러 페이지의 팩시밀리 문서를 단일 파일로 만드는 것이지만, 동일한 이미지의 다른 버전(예: 다른 해상도)을 저장하는 데도 사용될 수 있다. 파일 내 각 이미지는 이미지 파일 디렉토리(IFD)라는 데이터 구조를 가지며, 이 IFD 안에 이미지 너비, 높이, 압축 방식, 메타데이터 등 다양한 정보를 나타내는 ''태그''가 포함된다.[12]
다양한 표현 방식 지원

  • 색상 모델 및 비트 심도: 흑백 2값, 그레이스케일부터 RGB, CMYK 등 다양한 색상 모델을 지원한다. 또한 채널당 1, 2, 4, 8, 10, 12, 14, 16, 32비트 정수는 물론 16, 32, 64비트 부동소수점까지 매우 폭넓은 비트 심도를 지원하여 색상 표현의 제약이 적다.
  • 압축 방식: 무손실 압축 방식인 LZW, ZIP, PackBits 뿐만 아니라 손실 압축 방식인 JPEG 압축도 지원한다.[9] 이미지 품질 저하 없이 데이터를 보존해야 할 경우 무손실 압축을, 파일 크기를 줄이는 것이 중요할 경우 JPEG 압축을 선택할 수 있다. 단, LZW 압축은 과거 특허 문제로 사용에 제약이 있었으나 현재는 만료되었다.
  • 추가 정보 저장: 이미지 데이터 외에도 벡터 기반의 클리핑 패스(윤곽선, 자르기 등)나 레이어, 페이지 정보 등을 파일 내에 함께 저장할 수 있다.

호환성 문제와 해결 노력TIFF의 높은 표현 자유도는 오히려 소프트웨어 간 완전한 호환성을 유지하기 어렵게 만드는 원인이 되기도 했다. 이 때문에 "TIFF는 수천 개의 호환되지 않는 파일 형식을 의미한다"는 농담이 생길 정도였다.[10] 이러한 문제를 줄이기 위해 TIFF 규약은 모든 태그나 기능을 지원할 필요는 없다고 명시하며, 호환성을 위한 최소 기능 집합인 Baseline TIFF를 정의했다. Baseline TIFF는 모든 TIFF 리더가 기본적으로 읽을 수 있어야 하는 기능(예: 특정 압축 방식 미지원, 레이어 미지원 등)을 규정한다.[9] 많은 소프트웨어는 Baseline TIFF 외의 확장 기능도 지원하지만, 모든 소프트웨어가 모든 확장을 지원하지는 않으므로 Baseline TIFF가 여전히 중요한 기준이 된다.[18][19][20]

그럼에도 불구하고 TIFF는 여러 차례 개정을 통해 기능을 확장하면서도 과거 데이터와의 호환성을 고려해왔으며, 대부분의 이미지 편집 소프트웨어에서 지원하기 때문에 편집 중간 단계의 작업용 파일 형식으로 널리 사용된다. 특히 JPEG 압축을 사용하지 않는 한, 파일을 반복해서 저장해도 화질이 저하되지 않는다는 장점이 있다.

3. 2. 다양한 압축 방식 지원

TIFF 이미지는 압축되지 않거나, 무손실 압축 방식을 사용하거나, 손실 압축 방식을 사용하여 압축될 수 있다.[12] 다양한 압축 방식을 지원하는 것은 TIFF 형식의 중요한 특징 중 하나이다.

기본 TIFF(Baseline TIFF) 리더는 다음 세 가지 압축 방식을 반드시 처리할 수 있어야 한다.[9]

  • 무압축: 압축을 전혀 사용하지 않는 방식이다.
  • ITU-T Group 3 1차원 수정 허프만 RLE: 팩시밀리 전송 표준인 ITU-T T.4 권고안에 기반한 압축 방식이다. 주로 흑백 이미지에 사용된다.
  • PackBits: 런 길이 부호화의 일종으로, 반복되는 데이터를 효율적으로 압축한다.


TIFF 확장을 통해 더 많은 압축 방식이 지원된다. 대표적인 확장 압축 방식은 다음과 같다.

  • LZW: 무손실 압축 알고리즘으로, 한때 TIFF의 표준 압축 방식으로 여겨지기도 했다. 그러나 LZW 알고리즘은 특허 문제로 인해 자유롭게 사용하기 어려웠던 시기가 있었다.[9] 이 특허는 2003년과 2004년에 만료되어 현재는 자유롭게 사용할 수 있다.[31] 파일 크기를 줄이는 데 효과적이며, 다양한 종류의 이미지에 적용 가능하다.
  • JPEG: 손실 압축 방식으로, 주로 사진과 같은 연속 톤 이미지의 파일 크기를 크게 줄이는 데 사용된다. TIFF 6.0 사양부터 지원되기 시작했다.[9] JPEG 압축을 사용하는 TIFF 파일은 편집 후 다시 저장할 때 이미지 품질이 손실될 수 있다. 초기 TIFF 6.0의 JPEG 압축(Compression=6)은 사양상의 결함과 구현의 어려움이 지적되어, 이후 어도비 기술 노트를 통해 새로운 방식(Compression=7)이 도입되었다. 하지만 호환성 문제로 인해 기존 방식도 여전히 사용되고 있어, JPEG 압축 TIFF 파일은 호환성이 낮은 경우가 있다.
  • ZIP/Deflate: 무손실 압축 방식으로, LZW와 유사하게 파일 크기를 줄이는 데 사용된다. 어도비 포토샵 등에서 지원한다.


이 외에도 팩시밀리 표준인 CCITT Group 3 2D(T.4), Group 4(T.6) 압축 등 다양한 방식이 존재한다. 압축 방식은 TIFF 파일 내의 태그 259(Compression)에 저장되며, 기본값은 1(압축 없음)이다.[19]

파일 크기를 중시하는 경우, 흑백 이미지는 CCITT G4(MMR) 압축, 컬러 이미지는 JPEG 또는 LZW 압축이 자주 사용된다. DTP나 인쇄 용도에서는 데이터 손실을 피하기 위해 비압축 방식을 선호하기도 한다.

다음 표는 TIFF에서 사용되는 주요 압축 방식과 관련 정보를 요약한 것이다.

TIFF 압축 태그[19][22][23][24][25][26][27][28][29]
태그 값압축 방식손실/무손실사양설명이미지 유형사용 및 지원
0001₁₆없음무손실TIFF 6.0기본 TIFF모든 이미지공통[30]
0002₁₆CCITT Group 3 1차원 수정된 허프만 런-렝스 인코딩(MH 또는 CCITT 1D)무손실TIFF 6.0기본 TIFF; ITU-T T.4 기반 압축흑백공통
0003₁₆ITU-T 권고 T.4의 섹션 4, 코딩에 지정된 CCITT T.4 바이레벨 인코딩(CCITT Group 3 팩스 인코딩 또는 CCITT Group 3 2D)무손실TIFF 6.0TIFF 6.0 확장; ITU-T T.4 기반 압축흑백공통
0004₁₆ITU-T 권고 T.6의 섹션 2에 지정된 CCITT T.6 바이레벨 인코딩(CCITT Group 4 팩스 인코딩)무손실TIFF 6.0TIFF 6.0 확장; ITU-T T.6 기반 압축흑백공통
0005₁₆LZW무손실TIFF 6.0TIFF 6.0 확장; 특허 만료(2003년, 2004년)모든 이미지공통[31]
0006₁₆JPEG (구식)손실TIFF 6.0TIFF 6.0 확장; 구식이며 사용하지 않음.연속 톤희귀
0007₁₆JPEG (신형)손실TIFF 6 Technote2(1995)구식 JPEG 압축 대체; TIFF 6.0 확장.연속 톤흔하지 않음
0008₁₆Deflate (zlib), Adobe 변형무손실TIFF 사양 부록 2(2002)RFC 1950, RFC 1951; TIFF 6.0 확장.모든 이미지공통
0009₁₆JBIG, ITU-T T.85무손실TIFF-FXRFC 2301, RFC 3949흑백희귀
000A₁₆JBIG, ITU-T T.43무손실TIFF-FXRFC 2301, RFC 3949흑백희귀
8005₁₆PackBits (Macintosh RLE)무손실TIFF 6.0기본 TIFF모든 이미지희귀[31]
80B2₁₆Deflate, PKZIP 변형 (구식)무손실독점구식으로 간주되나 읽기 권장됨모든 이미지흔하지 않음
8798₁₆JPEG2000무손실, 손실독점전체 JP2 파일을 포함하며 권장하지 않음.[32]흔하지 않음
884C₁₆[34]손실 비-YCbCr JPEG손실DNG 1.4.0.0[35]DNG 의미 마스크 및 LinearRaw 색 공간 이미지에 사용됨.[34][35]희귀
CD42₁₆[34]JPEG XL무손실, 손실DNG 1.7.0.0[35]희귀


3. 3. 멀티 페이지 기능

TIFF 파일의 특징 중 하나는 하나의 파일 안에 여러 이미지를 저장하는 '''멀티 페이지 파일'''을 구성할 수 있다는 점이다.[9] TIFF 사양에서는 이를 '서브파일'이라고 부르며, 여러 페이지로 구성된 팩시밀리 문서를 하나의 파일로 저장하는 것이 대표적인 사용 예이다.

각 페이지(서브파일)는 독립적인 이미지 파일 디렉터리(IFD)를 가진다. 각 IFD에는 다음 IFD의 위치를 가리키는 정보가 포함되어 있어 페이지들이 순차적으로 연결된다.[9] 이 구조 덕분에 페이지마다 이미지 크기, 압축 방식, 색상 형식 등을 다르게 설정할 수 있다. 즉, 하나의 멀티 페이지 TIFF 파일 안에서도 페이지마다 다른 이미지 설정을 적용하는 것이 가능하다.

멀티 페이지 파일은 각 페이지가 다음 페이지의 시작 위치를 가리키는 포인터(파일 시작 지점부터 계산된 바이트 수)로 연결된 선형 리스트 형태로 구현된다. 따라서 여러 TIFF 파일을 단순히 이어 붙이거나, 멀티 페이지 파일의 일부를 잘라내는 것만으로는 정상적인 파일을 만들거나 분리할 수 없다.

페이지 수 자체에는 제한이 없지만, 페이지 수가 너무 많으면 파일 크기가 TIFF의 이론적인 최대 크기인 4GB에 도달할 수 있다. 또한 일부 응용 소프트웨어는 2GB까지만 지원하는 경우도 있으므로, 2GB를 실질적인 파일 크기 상한선으로 고려하는 것이 안전할 수 있다.

기본(Baseline) TIFF 규격을 따르는 리더는 첫 번째 페이지만 읽도록 요구되지만, 여러 페이지(IFD)를 처리할 수 있도록 준비되어야 한다.[9]

3. 4. 이미지 편집에 적합

TIFF는 이미지를 편집하는 중간 단계에서 사용하는 것이 다음과 같은 이유로 효과적이다.

  • 편집 소프트웨어 호환성: 대부분의 이미지 편집용 소프트웨어는 TIFF 형식을 지원한다.
  • 화질 보존: JPEG 압축을 사용하지 않는 한, 이미지를 여러 번 저장해도 기본적으로 화질이 저하되지 않는다. 이는 무손실 압축 또는 비압축 방식으로 데이터를 저장할 수 있기 때문이다. 표준 JPEG 파일과 달리, 무손실 압축을 사용하는 TIFF 파일은 편집과 재저장 과정에서 이미지 품질 손실 없이 작업할 수 있어 이미지 보관에도 유용하다.
  • 다양한 색상 표현: 색상 표현에 대한 제약이 매우 적다. 채널당 색상 수로 1, 2, 4, 8, 10, 12, 14, 16, 32비트 정수나 16, 32, 64비트 부동소수점 등 다양한 비트 심도(bit depth)를 지원하여 폭넓은 색상 표현이 가능하다.

4. 상세 구조

TIFF 파일은 사양에서 "서브파일"이라고 부르는 하나 또는 여러 개의 이미지를 포함할 수 있다. 여러 페이지의 팩시밀리 문서를 하나의 파일로 저장하는 것이 대표적인 사용 사례이지만, 같은 이미지의 다른 버전(예: 해상도 차이)을 저장하는 데 사용될 수도 있다. 각 서브파일은 이미지 파일 디렉토리(IFD, Image File Directory)라는 데이터 구조를 중심으로 구성되며, 각 IFD는 다음 IFD를 가리켜 여러 이미지를 연결할 수 있다.

IFD는 TIFF(Tagged Image File Format)라는 이름의 기원이 된 태그(tag) 정보를 담고 있다. 각 태그는 이미지 데이터의 위치, 데이터를 해석하는 방법, 이미지 메타데이터 등 다양한 정보를 지정한다.

TIFF 이미지는 기본적으로 픽셀의 직사각형[12] 격자로 구성되며, 가로(너비)와 세로(길이) 이미지 해상도는 서로 다를 수 있다. 이미지 데이터는 전체 이미지를 수직으로 나눈 하나 이상의 스트립(strip)으로 구성되거나, 가로와 세로 모두 작은 단위로 나눈 타일(tile) 형태로 구성될 수 있다. 이러한 분할 방식은 과거 메모리가 제한적인 환경에서 데이터를 처리하거나, 현재는 편집 유연성 및 효율적인 입출력 처리를 위해 사용된다.[9] 각 스트립이나 타일 내의 픽셀 데이터는 일반적으로 행 우선 순서로 배열된다.

하나의 픽셀 데이터는 하나 이상의 샘플(sample)로 구성된다. 예를 들어, RGB 색상 모델 이미지는 픽셀당 빨강, 초록, 파랑 3개의 샘플을 가지며, 회색조 이미지는 1개의 샘플을 가진다. TIFF는 가산 혼합(예: RGB, RGBA) 및 감산 혼합(예: CMYK 색상 모델) 색상 모델을 모두 지원하며, 픽셀당 샘플 수나 각 샘플의 비트 수에 제한을 두지 않아 다중 분광 이미지나 하이퍼 스펙트럼 이미지와 같이 많은 샘플을 필요로 하는 과학 데이터 저장에도 유용하다. 샘플 값은 기본적으로 부호 없는 정수 형식이지만, 확장을 통해 부호 있는 정수나 IEEE 754 부동소수점 형식도 사용할 수 있다.

TIFF 이미지는 압축되지 않은 상태로 저장되거나, 무손실 압축(예: LZW, PackBits) 또는 손실 압축(예: JPEG) 방식을 사용하여 압축될 수 있다.

파일 내 대부분의 데이터는 숫자 형식이지만, Artist(제작자), Copyright(저작권), DateTime(날짜/시간) 등 특정 태그에는 텍스트 형식의 메타데이터를 저장하는 것도 지원한다.

기준 TIFF 이미지 유형은 다음과 같다.[9]


  • 이진 이미지
  • 회색조 이미지
  • 팔레트 색상 이미지
  • RGB 풀 컬러 이미지


확장 기능을 통해 지원되는 주요 이미지 유형은 다음과 같다.

  • CMYK 이미지
  • YCbCr 이미지
  • 하프톤 힌트가 포함된 이미지
  • 타일형 이미지
  • CIE Lab 이미지

4. 1. 태그 기반 구조

TIFF 파일은 사양에서 "서브파일"이라고 하는 이미지 하나 또는 여러 개를 포함할 수 있다. 여러 서브파일을 갖는 주된 이유는 여러 페이지의 팩시밀리 문서를 단일 파일로 저장하기 위함이지만, 동일한 이미지의 다른 버전(예: 다른 해상도)을 저장하는 데 사용될 수도 있다. 각 서브파일은 파일 내에서 연속적인 바이트 덩어리가 아니라, 이미지 파일 디렉토리(IFD, Image File Directory)라는 데이터 구조를 최상위 단위로 가진다. 기본적인 TIFF 리더는 첫 번째 서브파일만 처리하도록 요구되지만, 각 IFD에는 다음 IFD를 가리키는 필드가 있어 여러 이미지를 연결할 수 있다.

IFD는 TIFF(Tagged Image File Format)라는 이름이 유래된 태그(tag)를 포함한다. 각 IFD는 하나 이상의 항목(entry)을 포함하며, 각 항목은 고유한 태그로 식별된다. 태그는 임의의 16비트 숫자이며, ImageWidth와 같이 자주 사용되는 기호 이름은 파일 자체에 명시적으로 기록되지 않는다. 각 IFD 항목은 연관된 값을 가지며, 이 값의 의미는 태그에 따라 달라진다. 하나의 IFD 내에서는 특정 태그를 가진 항목이 중복될 수 없다. 일부 태그는 실제 이미지 데이터를 가리키고, 다른 태그는 이미지 데이터를 해석하는 방법을 지정하며, 또 다른 태그는 이미지 메타데이터를 저장하는 데 사용된다.

TIFF 이미지는 픽셀의 직사각형[12] 격자로 구성된다. 이 격자의 두 축은 수평(너비, X)과 수직(길이, Y)으로 불리며, 수평 및 수직 이미지 해상도는 서로 다를 수 있다(팩시밀리에서는 흔히 다르다). 기본적인 TIFF 이미지는 이미지의 수직 범위를 하나 이상의 스트립(strip)으로 나누어 저장하며, 각 스트립은 개별적으로 인코딩(특히 압축 시)된다. 이는 과거 메모리가 제한적인 TIFF 리더(예: 팩스 기기)에서 한 스트립을 디코딩한 후 바로 출력하기 위해 사용되었으나, 현재 사양에서는 "편집 유연성 증가 및 효율적인 I/O 버퍼링"을 위한 것으로 설명한다.[9] TIFF 확장 기능으로는 이미지를 가로와 세로 모두 작은 단위로 나누는 타일(tile) 방식도 제공한다.

스트립 방식 TIFF 이미지는 태그 273(StripOffsets), 278(RowsPerStrip), 279(StripByteCounts)를 사용한다. StripOffsets는 각 스트립의 이미지 데이터 블록 시작 위치를, StripByteCounts는 각 블록의 길이(바이트 단위)를, RowsPerStrip은 각 스트립에 포함된 픽셀 행의 수를 나타낸다. RowsPerStrip 태그는 스트립이 하나만 있는 경우에도 필요하며, 이때는 태그 257(ImageLength)의 값을 그대로 사용한다. 타일 방식 TIFF 이미지는 대신 태그 322(TileWidth), 323(TileLength), 324(TileOffsets), 325(TileByteCounts)를 사용한다. 각 스트립 또는 타일 내의 픽셀 데이터는 행 우선 순서에 따라 왼쪽에서 오른쪽으로, 위에서 아래로 배열된다.

하나의 픽셀에 대한 데이터는 하나 이상의 샘플(sample)로 구성된다. 예를 들어, RGB 색상 모델 이미지는 픽셀당 빨강, 초록, 파랑의 3개 샘플을 가지지만, 회색조나 팔레트 색상 이미지는 픽셀당 1개의 샘플만 가진다. TIFF는 가산 혼합(예: RGB, RGBA) 및 감산 혼합(예: CMYK 색상 모델) 색상 모델을 모두 지원한다. 픽셀당 샘플 수나 각 샘플의 비트 수에는 제한이 없지만, 기본 TIFF에서는 특정 색상 모델과 비트 심도 조합에 대한 지원을 요구한다. 사용자 정의 샘플 구성을 지원하는 것은 과학 응용 분야에서 유용하며, 다중 분광 이미지나 하이퍼 스펙트럼 이미지와 같이 픽셀당 수백 개의 샘플을 필요로 하는 경우에도 TIFF를 사용할 수 있다. TIFF는 픽셀의 모든 샘플을 한 스트립/타일 내에 연이어 저장하거나(PlanarConfiguration = 1), 각 샘플을 별도의 스트립/타일에 저장하는 방식(PlanarConfiguration = 2)을 모두 지원한다. 샘플 값은 기본적으로 부호 없는 정수이지만, TIFF 확장을 통해 부호 있는 정수나 IEEE-754 부동소수점 형식으로 선언하고 유효한 값의 범위를 지정할 수도 있다.

TIFF 이미지는 압축되지 않거나, 무손실 압축(예: PackBits, LZW) 또는 손실 압축(예: JPEG) 방식을 사용하여 압축될 수 있다. LZW 압축은 오랫동안 TIFF의 표준 압축 방식으로 여겨졌으나, 기술적으로는 TIFF 확장 기능이며 과거에는 관련 특허 문제[9]가 있었다. 압축 방식은 처리 방식에서 큰 차이를 보이는데, 예를 들어 LZW는 샘플 구조나 비트 심도와 관계없이 스트립/타일의 바이트 스트림에 적용되는 반면, JPEG 압축은 픽셀의 샘플 구조를 변환하고(다른 색상 모델 사용) 8×8 블록 단위로 인코딩한다.

TIFF 파일의 대부분 데이터는 숫자 형식이지만, 특정 태그(예: Artist, Copyright, DateTime, DocumentName, InkNames, Model)에는 텍스트 값을 저장할 수도 있다.

결론적으로, TIFF는 헤더 태그를 통해 이미지의 크기, 정의, 데이터 배열 방식, 적용된 이미지 압축 등의 정보를 명시함으로써 단일 파일 내에서 이미지와 데이터를 유연하게 처리할 수 있는 적응력 있는 파일 형식이다. 예를 들어, TIFF 파일은 JPEG(손실) 및 PackBits(무손실) 압축 이미지를 모두 담는 컨테이너 역할을 할 수 있으며, 벡터 기반의 클리핑 패스를 포함할 수도 있다. 특히 무손실 데이터 압축 형식으로 이미지 데이터를 저장할 수 있는 기능 덕분에, 이미지 품질 손실 없이 편집하고 다시 저장할 수 있어 이미지 아카이빙에 유용하다. (단, 손실 압축된 JPEG 데이터를 담는 컨테이너로 사용될 때는 해당되지 않는다.) 다른 TIFF 옵션으로는 레이어와 페이지 기능이 있다.

4. 2. 이미지 파일 디렉토리 (IFD)

TIFF 파일은 사양에서 "서브파일"이라고 하는 이미지 ''하나 또는 여러 개''를 포함한다. 여러 서브파일을 갖는 기본적인 사용 사례는 여러 페이지의 팩시밀리를 단일 파일로 인코딩하는 것이지만, 서로 다른 서브파일이 동일한 이미지의 다른 변형(예: 다른 해상도로 스캔)일 수도 있다. 파일 내에서 연속적인 바이트 범위가 아니라, 각 서브파일의 최상위 엔티티는 ''이미지 파일 디렉토리''(IFD)라고 하는 데이터 구조이다. 기본 TIFF 리더는 첫 번째 서브파일만 사용하도록 요구되지만, 각 IFD에는 다음 IFD에 연결하기 위한 필드가 있다.

IFD는 TIFF(Tagged Image File Format)라는 이름이 유래된 ''태그''가 있는 곳이다. 각 IFD는 하나 또는 여러 개의 ''항목''을 포함하며, 각 항목은 해당 태그로 식별된다. 태그는 임의의 16비트 숫자이다. TIFF 데이터 논의에서 자주 사용되는 ImageWidth와 같은 기호 이름은 파일 자체에 명시적으로 나타나지 않는다. 각 IFD 항목에는 연관된 ''값''이 있으며, 이는 형식의 일반적인 규칙에 따라 디코딩될 수 있지만, 해당 값이 무엇을 ''의미하는지''는 태그에 따라 달라진다. 단일 IFD 내에서 특정 태그를 가진 항목이 하나 이상 있을 수 없다. 일부 태그는 실제 이미지 데이터에 연결하기 위한 것이고, 다른 태그는 이미지 데이터를 해석하는 방식을 지정하며, 또 다른 태그는 이미지 메타데이터에 사용된다.

하나의 파일에 여러 이미지를 저장하는 '''멀티 페이지 파일'''을 구성할 수 있다는 점은 TIFF의 특징 중 하나이다. 태그 정보는 페이지(서브파일)별로 독립적으로 관리되므로, 각 페이지는 독립적인 IFD를 가지며 페이지마다 이미지 크기, 압축 방법, 색상 형식을 독립적으로 결정할 수 있다. 페이지 수 자체에는 제한이 없지만, 이론적인 최대 크기인 4GB에 도달할 수 있으므로 주의해야 한다. 일부 응용 소프트웨어는 2GB까지만 지원하는 경우도 있다.

멀티 페이지 파일은 각 페이지(IFD)가 가지고 있는 "다음 페이지"의 시작 부분에 대한 포인터에 의해 연결된 선형 리스트로 구현된다. 여기서 포인터는 파일 시작부터 계산된 바이트 수를 의미한다. 유사한 포인터는 파일 내의 다양한 데이터 위치를 나타내는 데에도 사용된다. 따라서 여러 TIFF 파일을 단순히 연결하는 것만으로는 멀티 페이지 파일이 되지 않으며, 반대로 멀티 페이지 파일의 일부를 단순히 잘라내도 정상적인 TIFF 파일이 되지 않는다.

호환성 문제를 피하기 위해 정의된 "Baseline TIFF" 규격에 따르면, TIFF 리더는 첫 번째 이미지 파일 디렉토리(IFD) 외에 다른 IFD를 읽을 필요는 없다.[9] TIFF 리더는 TIFF 사양에 설명되지 않은 개인 필드를 만나면 무시하도록 준비되어야 하며, 선택적 필드가 존재하지 않더라도 TIFF 파일 읽기를 거부해서는 안 된다.[9]

4. 3. 태그

이미지 파일 디렉토리(IFD)는 TIFF(Tagged Image File Format)라는 이름이 유래된 '태그(tag)'가 저장되는 곳이다. 각 IFD는 하나 또는 여러 개의 '항목(entry)'을 포함하며, 각 항목은 해당 태그로 식별된다. 태그는 임의의 16비트 숫자이며, TIFF 데이터에 대한 논의에서 자주 사용되는 ImageWidth와 같은 기호 이름은 파일 자체에 명시적으로 나타나지 않는다.[12] 각 IFD 항목에는 연관된 '값(value)'이 있으며, 이 값의 형식은 일반적인 규칙에 따라 디코딩될 수 있지만, 값이 무엇을 '의미하는지'는 태그에 따라 달라진다. 단일 IFD 내에서는 특정 태그를 가진 항목이 하나 이상 있을 수 없다. 일부 태그는 실제 이미지 데이터를 가리키는 용도로 사용되고, 다른 태그는 이미지 데이터를 해석하는 방식을 지정하며, 또 다른 태그는 이미지 메타데이터 저장에 사용된다.

예를 들어, 스트립(strip) 방식으로 구성된 TIFF 이미지는 태그 273(StripOffsets), 278(RowsPerStrip), 279(StripByteCounts)를 사용한다. StripOffsets는 이미지 데이터 블록의 위치를 가리키고, StripByteCounts는 각 블록의 길이(파일에 저장된 크기)를 나타내며, RowsPerStrip은 스트립에 포함된 픽셀의 행 수를 나타낸다. RowsPerStrip 태그는 스트립이 하나만 있는 경우에도 필요하며, 이때는 태그 257(ImageLength)의 값을 그대로 사용한다.[9] 타일(tile) 방식으로 구성된 TIFF 이미지는 대신 태그 322(TileWidth), 323(TileLength), 324(TileOffsets), 325(TileByteCounts)를 사용한다.

TIFF 파일의 대부분 데이터는 숫자 형식이지만, 특정 태그에 대해서는 텍스트 형식의 데이터 선언도 지원한다. 텍스트 값을 사용하는 태그의 예로는 Artist(제작자), Copyright(저작권), DateTime(날짜 및 시간), DocumentName(문서 이름), InkNames(잉크 이름), Model(모델명) 등이 있다.

개발자들은 파일 교환 시 문제를 일으키지 않으면서 TIFF 파일 내에 자체적인 독점 정보를 포함할 수 있도록 '개인 태그(private tag)' 블록을 신청할 수 있다. TIFF 리더는 인식하지 못하는 태그를 무시하도록 설계되어 있으며, 등록된 개발자의 개인 태그는 다른 태그나 표준 태그와 충돌하지 않도록 보장된다. 개인 태그는 일반적으로 32,768번 이상의 번호가 할당된다. 개인 태그는 특정 조직에만 의미 있는 정보나 새로운 압축 방식 실험 등에 사용된다. TIFF 관리자(현재 어도비)는 요청 시 조직에 개인 태그를 할당하고 등록하여 다른 조직과의 충돌을 방지한다. 임의로 태그 번호를 선택하는 것은 호환성 문제를 일으킬 수 있으므로 권장되지 않지만, 파일이 개인적인 환경을 벗어날 가능성이 거의 없는 경우에는 "재사용 가능"한 65,000–65,535 범위의 태그 사용을 고려할 수 있으며, 이 경우 어도비에 연락할 필요는 없다.[9] TIFF/IT 규격 또한 개인 태그 사용 가능성을 유지하며, 이러한 태그를 파싱하되 무시하도록 명시하고 있다.[54] 예를 들어, CGATS(Committee for Graphic Arts Technology Standards)는 디지털 광고 전송 표준 개발 과정에서 TIFF/IT 구현을 위해 자체 개인 태그 블록을 요청했으며, 색상 시퀀스를 식별하는 기능은 태그 34017(Color Sequence Tag)로 처리되었다.[54]

4. 4. 스트립과 타일

TIFF 이미지는 기본적으로 픽셀의 직사각형[12] 그리드로 이루어져 있다. 이 그리드는 수평(X축, 너비)과 수직(Y축, 길이)의 두 축을 가진다. 수평 및 수직 이미지 해상도는 반드시 같을 필요는 없다.

기본 TIFF 이미지는 이미지의 수직 범위를 하나 또는 여러 개의 스트립(strip)으로 나눈다. 각 스트립은 이미지의 하위 부분으로, 하나 이상의 행으로 구성된다. 각 스트립은 전체 이미지와 독립적으로, 특히 압축된 경우 개별적으로 인코딩될 수 있으며, 바이트 경계에서 시작한다.[9] 역사적으로 이는 팩시밀리 기계처럼 메모리 용량이 제한된 TIFF 리더를 고려한 방식이었다. 즉, 한 스트립을 디코딩한 후 바로 인쇄하는 식이었다. 현재 TIFF 사양에서는 스트립 방식이 "편집 유연성을 높이고 효율적인 입출력(I/O) 버퍼링"을 가능하게 한다고 설명한다.[9] 이미지 높이가 스트립의 행 수로 나누어 떨어지지 않으면 마지막 스트립은 더 적은 행을 가질 수 있다. 스트립 정의 관련 태그가 없으면 이미지는 단일 스트립으로 구성된 것으로 간주한다.

스트립 방식 외에, TIFF 확장은 타일형(tiled) 이미지라는 대안을 제공한다. 타일형 이미지에서는 이미지의 수평 및 수직 범위가 모두 더 작은 사각형 단위(타일)로 분해된다. 이는 스트립이 수직으로만 분할되는 것과 대조적이다.

스트립형 이미지를 정의하기 위해 사용되는 주요 태그로는 이미지 데이터 블록의 위치를 가리키는 `StripOffsets`(태그 273), 각 블록의 길이를 나타내는 `StripByteCounts`(태그 279), 스트립당 픽셀 행 수를 나타내는 `RowsPerStrip`(태그 278) 등이 있다. 타일형 이미지는 대신 `TileWidth`(태그 322), `TileLength`(태그 323), `TileOffsets`(태그 324), `TileByteCounts`(태그 325) 등의 태그를 사용한다.

각 스트립 또는 타일 내의 픽셀 데이터는 행 우선 순서에 따라 왼쪽에서 오른쪽으로, 그리고 위에서 아래로 배열된다.

Baseline TIFF 이미지는 하나 이상의 스트립으로 구성되는 것이 기본이며, 타일 형식은 TIFF 확장 기능에 해당한다.[9]

4. 5. 샘플

하나의 픽셀에 대한 데이터는 하나 또는 여러 개의 '샘플'로 구성된다. 예를 들어, RGB 색상 모델 이미지는 픽셀당 하나의 빨간색 샘플, 하나의 녹색 샘플, 하나의 파란색 샘플을 가지며, 회색조 또는 팔레트 색상 이미지는 픽셀당 하나의 샘플만 갖는다. TIFF는 가산 혼합 (예: RGB, RGBA) 및 감산 혼합 (예: CMYK 색상 모델) 색상 모델을 모두 지원한다.

TIFF는 픽셀당 샘플 수나 각 샘플에 인코딩된 비트 수에 제한을 두지 않는다. 다만, 기본 TIFF는 특정 색상 모델과 비트 심도 조합을 리더가 지원하도록 요구한다. 사용자 지정 샘플 집합을 지원하는 기능은 과학 분야에서 매우 유용하게 활용된다. 예를 들어, 픽셀당 3개의 샘플은 다중 분광 이미지의 기본적인 수준이며, 하이퍼 스펙트럼 이미지는 픽셀당 수백 개의 샘플을 필요로 할 수도 있다.

TIFF는 한 픽셀의 모든 샘플을 단일 스트립이나 타일 내에 서로 인접하게 저장하는 방식(PlanarConfiguration = 1)과, 각 샘플을 서로 다른 스트립이나 타일에 분리하여 저장하는 방식(PlanarConfiguration = 2)을 모두 지원한다. 샘플 값의 기본 형식은 부호 없는 정수이지만, TIFF 확장을 통해 부호 있는 정수나 IEEE-754 부동 소수점 형식으로 선언하고, 유효한 샘플 값의 범위를 사용자가 직접 지정하는 것도 가능하다.

4. 6. 바이트 순서

모든 TIFF 파일은 시작 부분에 바이트 순서(Byte order)를 나타내는 2바이트 표시자를 가진다. 이 값이 II이면 리틀 엔디안(Little-endian, 인텔 바이트 순서라고도 함)을 의미하고, MM이면 빅 엔디안(Big-endian, 모토로라 바이트 순서라고도 함)을 의미한다. 파일 시작 부분에서 지정된 이 바이트 순서는 해당 파일 내의 모든 2바이트 단어(word)나 4바이트 더블 워드(double word) 등 멀티바이트 데이터의 해석에 적용된다.

TIFF 6.0 규격에 따르면, TIFF 파일을 읽는 리더는 IIMM 두 가지 바이트 순서를 모두 지원해야 하며, 파일을 만드는 작성자는 둘 중 하나를 선택하여 사용할 수 있다.[17]

5. 압축 방식

TIFF 파일 형식은 이미지 데이터를 효율적으로 저장하고 전송하기 위해 다양한 이미지 압축 기술을 지원한다. 압축은 파일 크기를 줄여 저장 공간을 절약하고 네트워크 전송 시간을 단축하는 데 중요한 역할을 한다.

TIFF에서 사용되는 압축 방식은 크게 데이터 손실 없이 원본 이미지를 완벽하게 복원할 수 있는 무손실 압축과, 약간의 이미지 품질 저하를 감수하며 압축률을 높이는 손실 압축으로 나눌 수 있다. TIFF는 이 두 가지 유형의 압축 방식을 모두 지원하여 사용 목적에 따라 적합한 방식을 선택할 수 있는 유연성을 제공한다.[9] 예를 들어, 이미지 편집 및 보존에는 무손실 압축이 선호되고, 웹 게시나 이메일 전송 등 파일 크기가 중요한 경우에는 손실 압축이 사용될 수 있다.

TIFF 표준은 기본적인 압축 방식 몇 가지를 정의하고 있으며, 이 외에도 다양한 확장 압축 기술을 지원하여 폭넓은 호환성과 기능을 제공한다.[9]

5. 1. 주요 압축 방식

TIFF는 단일 파일 내에서 다양한 이미지 데이터와 메타데이터(크기, 정의, 이미지 데이터 배열, 적용된 이미지 압축 등)를 유연하게 처리할 수 있는 파일 형식이다. 예를 들어, TIFF 파일은 JPEG(손실 압축)이나 PackBits(무손실 압축)으로 압축된 이미지를 담는 컨테이너 역할을 할 수 있다.[9] 또한 벡터 기반의 클리핑 패스를 포함할 수도 있다. 특히 무손실 형식으로 이미지 데이터를 저장할 수 있어 이미지 보존에 유용하다. 표준 JPEG 파일과 달리, 무손실 압축이나 압축을 사용하지 않은 TIFF 파일은 이미지 품질 손상 없이 편집하고 다시 저장할 수 있다. (단, JPEG 압축 이미지를 담은 TIFF 파일에는 해당되지 않는다.)

TIFF 6.0 사양에 따르면, 기본적인 TIFF 리더는 다음 세 가지 압축 방식을 반드시 처리할 수 있어야 한다:[9]

  • 무압축: 이미지 데이터를 압축하지 않고 그대로 저장한다. (태그 값: 1)
  • CCITT Group 3 1차원 수정 허프만 RLE: ITU-T T.4 권고안에 기반한 압축 방식이다. (태그 값: 2)
  • PackBits: 런 길이 부호화의 한 종류이다. (태그 값: 32773 또는 8005₁₆)


이 외에도 TIFF는 다양한 확장 압축 방식을 지원한다. TIFF 태그 259(0103₁₆)는 사용된 압축 방식에 대한 정보를 저장하며, 기본값은 1 (압축 없음)이다. 주요 확장 압축 방식은 다음과 같다:[9]

  • CCITT T.4 (Group 3 Fax): 흑백 이미지 압축에 사용된다. (태그 값: 3)
  • CCITT T.6 (Group 4 Fax): 흑백 이미지 압축에 사용된다. (태그 값: 4)
  • LZW (Lempel-Ziv-Welch): 파일 크기를 줄이기 위한 무손실 압축 기술이다. 2004년 관련 특허가 만료되기 전까지는 사용에 제약이 있었다. (태그 값: 5)
  • JPEG: 손실 압축 방식으로, 주로 사진과 같은 연속 톤 이미지에 사용된다. TIFF 6.0에서 처음 도입되었으나, 초기 버전(Compression=6, 태그 값: 6)은 사양 결함 문제가 있어 이후 개선된 버전(Compression=7, 태그 값: 7)이 권장된다.[22] 하지만 호환성 문제로 구 버전도 여전히 사용되고 있다.
  • Deflate (zlib): 어도비에서 변형하여 사용하는 무손실 압축 방식이다. ZIP 압축과 유사하다. (태그 값: 8)


다음 표는 TIFF에서 사용되는 주요 압축 방식과 관련 정보를 요약한 것이다.

TIFF 압축 태그[19][22][23][24][25][26][27][28][29]
태그 값압축 방식손실/무손실사양설명이미지 유형사용 및 지원
0001₁₆없음무손실TIFF 6.0기본 TIFF모든 이미지흔히 사용됨[30]
0002₁₆CCITT Group 3 1차원 수정된 허프만 런-렝스 인코딩 (MH 또는 CCITT 1D)무손실TIFF 6.0기본 TIFF; ITU-T T.4 기반 압축흑백흔히 사용됨
0003₁₆CCITT T.4 바이레벨 인코딩 (ITU-T 권고 T.4 그룹 3 팩스 인코딩)무손실TIFF 6.0TIFF 6.0 확장; ITU-T T.4 기반 압축흑백흔히 사용됨
0004₁₆CCITT T.6 바이레벨 인코딩 (ITU-T 권고 T.6 그룹 4 팩스 인코딩)무손실TIFF 6.0TIFF 6.0 확장; ITU-T T.6 기반 압축흑백흔히 사용됨
0005₁₆LZW무손실TIFF 6.0TIFF 6.0 확장; 특허 만료됨모든 이미지흔히 사용됨[31]
0006₁₆JPEG (구식)손실TIFF 6.0TIFF 6.0 확장; 사용 중단됨연속 톤드물게 사용됨
0007₁₆JPEG (신형)손실TIFF 6 Technote2(1995)구식 JPEG 압축 대체; TIFF 6.0 확장연속 톤흔하지 않음
0008₁₆Deflate (zlib), Adobe 변형무손실TIFF 사양 부록 2(2002)RFC 1950, RFC 1951 기반; TIFF 6.0 확장모든 이미지흔히 사용됨
8005₁₆PackBits (Macintosh RLE)무손실TIFF 6.0기본 TIFF모든 이미지드물게 사용됨[31]
80B2₁₆Deflate, PKZIP 변형 (구식)무손실독점구식으로 간주되나 읽기 권장됨모든 이미지흔하지 않음



대부분의 TIFF 편집 및 뷰어 프로그램은 이러한 압축 방식 중 일부를 지원하지만, 모든 프로그램이 모든 압축 방식을 지원하는 것은 아니다.[18][19][20] 따라서 호환성을 위해서는 Baseline TIFF 기능(무압축, CCITT G3, PackBits)을 사용하는 것이 가장 안전하다.

6. 확장 형식

TIFF 파일 형식은 32비트 오프셋을 사용하므로 파일 크기가 약 4 기비바이트로 제한된다. 이러한 제한을 극복하기 위해 더 큰 파일 크기를 지원하는 BigTIFF 형식이 개발되었다.[36][37]

디지털 카메라 이미지 파일 형식인 Exif 규격[38] 역시 TIFF를 기반으로 한다. 비압축 이미지 데이터의 경우, Exif 파일은 몇 가지 개인 태그를 제외하면 TIFF 파일과 거의 동일하다. 반면, JPEG 압축 이미지 데이터의 경우, Exif는 JPEG 파일 교환 형식을 따르지만 파일의 APP1 세그먼트에 TIFF 구조를 내장한다. 이 내장된 TIFF 구조에서 첫 번째 IFD(Image File Directory, Exif 규격에서는 '0번째 IFD'로 칭함)는 이미지 데이터 없이 주 이미지에 대한 메타데이터만 포함한다. 썸네일 이미지는 두 번째 IFD(Exif 규격에서는 '1번째 IFD'로 칭함)에 저장될 수 있다. 단, Exif 오디오 파일 형식은 TIFF 기반이 아니다.

Exif는 카메라 설정이나 지리적 위치 정보 등 다양한 이미지 메타데이터를 위한 많은 개인 태그를 정의한다. 이러한 Exif 관련 태그들은 일반적인 TIFF IFD에 직접 기록되지 않고, 주 IFD 내의 특정 개인 태그가 가리키는 별도의 전용 IFD에 저장된다.

6. 1. BigTIFF

기존의 TIFF 파일 형식은 32비트 오프셋을 사용하여 파일 크기를 약 4 GiB로 제한한다. 일부 구현에서는 부호 있는 32비트 오프셋을 사용하여 약 2GiB에서 문제가 발생하기도 한다.

BigTIFF는 이러한 파일 크기 제한 문제를 해결하기 위해 64비트 오프셋을 사용하는 TIFF 변형 파일 형식으로, 최대 18엑사바이트 크기의 파일을 지원한다.[36][37] BigTIFF 파일 형식 사양은 2007년 LibTIFF 버전 4.0 개발 릴리스에서 처음 구현되었고, 2011년 12월에 안정 버전으로 출시되었다. 그러나 아직 BigTIFF 파일 형식을 지원하는 응용 프로그램은 제한적이다.

7. 팩시밀리에서의 활용 (TIFF-F)

TIFF 형식에는 팩시밀리(FAX) 데이터를 표현하기 위한 프로파일인 TIFF-F가 존재한다. 이는 RFC 2306 ( Tag Image File Format (TIFF) - F Profile for Facsimileeng ) 에서 정의되어 있다.

TIFF-F는 팩스 송수신에 사용되는 MH, MR, MMR과 같은 압축 방식을 지원하므로, 송수신 데이터를 파일로 만들 때 변환 과정을 최소화할 수 있다. 또한, 여러 페이지를 하나의 파일로 묶는 멀티 페이지 기능을 지원하며, 다른 이미지 형식으로는 표현하기 어려운, 픽셀의 가로세로 비율이 다른 이미지도 표현할 수 있다는 장점이 있다.

인터넷 팩스( InternetFAXeng ) 규격 중 하나인 T.37에서는 송수신 파일 형식으로 TIFF-F를 사용하도록 명시하고 있다. 윈도우 FAX 서비스나 다른 T.37 게이트웨이 장비들은 수신된 팩스를 TIFF 파일이 첨부된 전자 메일 형태로 전송하기도 한다. 이와 관련된 MIME 유형으로 `image/tiff-fx` (RFC 3949 및 RFC 3950에 정의됨)가 있으며, 이는 TIFF 6.0을 기반으로 인터넷 팩스에 사용되며 흑백, 회색조 및 컬러 팩스를 지원한다.[39]

한편, 클라우드 기반 팩시밀리 서비스에서는 TIFF-F 외에 다른 형식을 사용하기도 한다. 예를 들어 일본 NTT 동서 지역 회사의 "FAX 알림 메일" 서비스는 사용자가 직접 브라우저로 로그인하여 TIFF 파일을 다운로드해야 한다.[57] eFax는 PDF 파일을 첨부한 메일로 팩스를 전송하며[58], NTT 동일본이 제공했던 "히카리 FAX" 앱(서비스 종료[59])은 수신 내용을 페이지별 JPEG 파일로 변환하여 저장했다. 한국의 경우에도 클라우드 기반 팩시밀리 서비스에서는 TIFF 외에도 PDF, JPEG 등 다양한 형식으로 팩스 데이터를 제공하는 경우가 많다.

8. 관련 형식

TIFF 형식을 기반으로 하거나 관련된 여러 파일 형식들이 존재한다. 대표적인 예로 디지털 카메라 이미지 파일에 널리 사용되는 Exif 형식이 있다. Exif는 TIFF 규격을 기반으로 이미지 메타데이터를 저장하는 방식을 정의한다.

8. 1. Exif

Exif 규격[38]은 TIFF를 기반으로 한다. 압축되지 않은 이미지 데이터의 경우, Exif 파일은 몇 가지 개인 태그를 제외하면 TIFF 파일과 거의 동일하다. JPEG 형식으로 압축된 이미지 데이터의 경우, Exif는 JPEG 파일 교환 형식을 따르지만, 파일의 APP1 세그먼트 안에 TIFF 파일을 포함시키는 방식으로 구현된다.

이렇게 내장된 TIFF 파일의 첫 번째 IFD(Image File Directory, Exif 규격에서는 '0번째 IFD'라고 부름)에는 이미지 데이터 자체가 아니라 주 이미지에 대한 메타데이터만 들어 있다. 하지만 내장된 TIFF 파일에는 썸네일 이미지가 포함될 수 있는데, 이는 두 번째 IFD(Exif 규격에서는 '1번째 IFD'라고 부름)에서 제공된다. 참고로 Exif 오디오 파일 형식은 TIFF를 기반으로 하지 않는다.

Exif는 이미지 메타데이터, 특히 카메라 설정이나 지리적 위치 데이터와 관련된 많은 수의 개인 태그를 정의한다. 그러나 이러한 태그들은 일반적인 TIFF IFD에 직접 포함되지 않고, 주 IFD의 개인 태그가 가리키는 별도의 IFD에 저장된다.

참조

[1] 웹사이트 What are TIFF files and how do you open them? https://www.adobe.co[...] Adobe, Inc. 2023-11-03
[2] 웹사이트 PNG vs. TIFF: Which is better? https://www.adobe.co[...] Adobe, Inc. 2023-11-04
[3] 서적 Encyclopedia of Graphics File Formats https://archive.org/[...] O'Reilly 2014-03-07
[4] 문서
[5] 웹사이트 TIFF/IT ISO/IEC 12639 http://www.iso.org/i[...] ISO
[6] 웹사이트 TIFF/IT for Image Technology http://www.digitalpr[...] The National Digital Information Infrastructure and Preservation Program at the Library of Congress 2006-10-03
[7] 웹사이트 The TIFF/IT file format http://www.prepressu[...] 2011-02-19
[8] 웹사이트 File Format for Internet Fax https://tools.ietf.o[...] 2011-02-19
[9] 문서 TIFF Revision 6.0 Final — June 3, 1992 https://www.itu.int/[...] 2024-03-29
[10] 서적 MATLAB Recipes For Earth Sciences Springer
[11] 문서 TIFF Specification Supplement 2 https://web.archive.[...] 2022-06-29
[12] 문서
[13] 웹사이트 Adobe TIFF Resources page https://www.adobe.io[...] 2022-06-29
[14] 웹사이트 TIFF, Revision 6.0 http://www.digitalpr[...] Library of Congress 2014-03-11
[15] 문서
[16] 서적 TIFF http://cool-palimpse[...] Aldus Corporation and Microsoft Corporation 2009-06-29
[17] 서적 TIFF https://www.adobe.io[...] Adobe Systems Incorporated 2022-06-29
[18] 웹사이트 You cannot preview scanned TIFF file in Windows Picture and Fax Viewer http://support.micro[...] 2011-02-28
[19] 웹사이트 You Cannot View TIFF Images Using Windows Picture and Fax Viewer http://support.micro[...] 2011-02-28
[20] 웹사이트 Handling Microsoft Office Document Scanning TNEF and TIFFs in Linux http://suppressingfi[...] 2011-02-28
[21] 문서 TIFF Specification Supplement 1 https://web.archive.[...] 2022-06-29
[22] 웹사이트 Baseline TIFF Tag Compression http://www.awaresyst[...] 2011-02-26
[23] 웹사이트 LibTIFF - TIFF 6.0 Specification Coverage http://www.libtiff.o[...] 2011-02-28
[24] 웹사이트 JSTOR/Harvard Object Validation Environment - TIFF Compression Schemes http://hul.harvard.e[...] 2011-02-26
[25] 웹사이트 JSTOR/Harvard Object Validation Environment - JHOVE TIFF-hul Module http://hul.harvard.e[...] 2011-02-26
[26] 웹사이트 TIFF Fields http://tiki-lounge.c[...] 2011-02-27
[27] 웹사이트 Tags for TIFF and Related Specifications http://www.digitalpr[...] 2011-02-27
[28] 웹사이트 GIMP Documentation - Saving as TIFF http://docs.gimp.org[...] 2011-02-27
[29] 웹사이트 IrfanView - History of changes http://www.irfanview[...] 2011-02-27
[30] 문서
[31] 서적 Recommendations for metadata and data formats for online availability and long-term preservation http://www.succeed-p[...]
[32] 웹사이트 LEADTOOLS TIFF SDK http://www.leadtools[...] 2011-07-04
[33] 웹사이트 Draft-ietf-fax-tiff-fx-extension1-01 https://tools.ietf.o[...]
[34] 간행물 Digital Negative (DNG) Specification https://helpx.adobe.[...] Adobe Inc 2023-09
[35] 간행물 Digital Negative (DNG) Specification https://helpx.adobe.[...] Adobe Inc 2023-09
[36] 웹사이트 Extending LibTiff library with support for the new format called BigTIFF https://web.archive.[...]
[37] 웹사이트 The BigTIFF File Format https://web.archive.[...] AWare Systems
[38] 웹사이트 Exchangeable Image File Format for Digital Still Cameras http://www.exif.org/[...] Japan Electronics and Information Technology Industries Association 2002-04
[39] 웹사이트 JDF Specification - Appendix H MimeType and MimeTypeVersion Attributes http://www.cip4.org/[...]
[40] 웹사이트 ISO 12639:2004 - Graphic technology - Prepress digital data exchange - Tag image file format for image technology (TIFF/IT) http://webstore.ansi[...]
[41] 간행물 DRAFT INTERNATIONAL STANDARD ISO/DIS 12639 - Graphic technology — Prepress digital data exchange — Tag image file format for image technology (TIFF/IT) - Revision of first edition (ISO 12639:1998) http://licencepro.es[...]
[42] 웹사이트 Glossary of Printing Terms - TIFF/IT http://www.printingt[...]
[43] 간행물 CIP3 application note http://www.cip4.org/[...]
[44] 간행물 Tiff/It Questions and Answers http://www.rgmgraphi[...]
[45] 간행물 Introduction to PDF/X http://issuu.com/mic[...]
[46] 웹사이트 Tiff/It P1 Specifications http://www.interview[...]
[47] 웹사이트 TIFF/IT Implementers http://www.ddap.org/[...]
[48] 간행물 Harlequin RIP - manual for a commercial TIFF/IT plugin https://web.archive.[...]
[49] 간행물 A software manual with information about TIFF/IT https://web.archive.[...]
[50] 간행물 DDAP Position Statement - TIFF/IT as a File Format for Delivery of Digital Advertising - October, 2001 http://www.ddap.org/[...] 2001-10
[51] 간행물 DDAP Position Statement - TIFF/IT as a File Format for Delivery of Digital Advertising - October, 2001 http://www.ddap.org/[...] 2001-10
[52] 간행물 DDAP, TIFF/IT-P1, PDF-X/1 https://web.archive.[...]
[53] 웹사이트 TIFF/IT-P1 http://tiffit-online[...]
[54] 웹사이트 TIFF/IT Private Tags http://www.ddap.com/[...]
[55] 웹사이트 Glossary of Printing Terms - TIFF/IT-P1 http://www.printingt[...]
[56] 웹사이트 ISO 12639:2004 https://www.iso.org/[...] 2020-04-19
[57] 문서 ひかり電話 FAXお知らせメール https://flets.com/hi[...]
[58] 문서 eFax https://www.efax.co.[...]
[59] 웹사이트 "「ひかりFAX」の提供終了について" https://www.ntt-east[...] NTT東日本 2017-04-17



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com