비트맵

컴퓨팅에서 비트맵(, ) 또는 래스터(raster) 그래픽은 서로 다른 색상의 화소들로 이루어진 이미지이다. GIF는 비트맵을 사용하는 그래픽 이미지 파일의 한 예이다.

명사로서 "비트맵"이라는 용어는 특정 비트매핑 애플리케이션인 픽스맵을 지칭하는 데 매우 자주 사용되는데, 이는 화소 맵을 의미하며 각 화소가 두 가지 이상의 색상을 저장할 수 있어 화소당 하나 이상의 비트를 사용한다. 이러한 경우, 문제의 영역은 디지털 그래픽 출력 장치(화면 또는 모니터)를 구성하는 화소의 배열이다. 일부 맥락에서는 비트맵이라는 용어가 화소당 1비트를 의미하는 반면, 픽스맵은 화소당 여러 비트를 가진 이미지에 사용된다.

비트맵은 메모리 구성 또는 이미지 파일 형식의 일종으로 디지털 이미지를 저장하는 데 사용된다. 비트맵이라는 용어는 컴퓨터 프로그래밍 용어에서 유래했으며, 단순히 비트 맵, 즉 공간적으로 매핑된 비트 배열을 의미한다. 현재는 픽스맵과 함께 공간적으로 매핑된 화소 배열이라는 유사한 개념을 일반적으로 지칭한다. 래스터 이미지는 일반적으로 비트맵 또는 픽스맵으로 불리며, 합성 또는 사진 이미지인지, 파일 또는 메모리 내에 있는지 여부는 상관없다.

많은 그래픽 사용자 인터페이스는 내장 그래픽 하위 시스템에 비트맵을 사용한다. 예를 들어, 마이크로소프트 윈도우 및 OS/2 플랫폼의 GDI 하위 시스템은 Windows 및 OS/2 비트맵 파일 형식을 사용하며, 일반적으로 파일 확장자 .BMP (또는 장치 독립 비트맵의 경우 .DIB)로 명명된다. BMP 외에도 리터럴 비트맵을 저장하는 다른 파일 형식으로는 인터리브드 비트맵(ILBM), 포터블 비트맵(PBM), X 비트맵(XBM), 무선 애플리케이션 프로토콜 비트맵(WBMP) 등이 있다. 마찬가지로 JPEG, TIFF, 포터블 네트워크 그래픽스, GIF와 같은 대부분의 다른 이미지 파일 형식도 비트맵 이미지를 저장하지만(벡터 그래픽스와 반대), 내부적으로 압축된 형식을 사용하기 때문에 일반적으로 비트맵이라고 불리지는 않는다.

화소 저장
일반적인 비압축 비트맵에서 이미지 화소는 일반적으로 색상을 식별하는 가변 비트 수(즉, 색 깊이)로 저장된다. 8비트 이하의 화소는 회색조 또는 인덱스 컬러를 나타낼 수 있다. 알파 채널(투명도를 위함)은 별도의 비트맵에 저장될 수 있으며, 이 경우 회색조 비트맵과 유사하거나, 예를 들어 24비트 이미지를 화소당 32비트로 변환하는 네 번째 채널에 저장될 수 있다.

비트맵 화소를 나타내는 비트는 형식 또는 장치 요구 사항에 따라 압축되거나 압축 해제(바이트 또는 워드 경계로 분리)될 수 있다. 색 깊이에 따라 그림의 화소는 최소 n/8바이트를 차지하며, 여기서 은 비트 깊이이다.

마이크로소프트 DIB 또는 BMP 파일 포맷에 저장된 것과 같은 행 내 압축 비압축 비트맵 또는 비압축 TIFF 형식의 경우, 화소당 n비트(2n 색상) 비트맵의 저장 크기 하한은 바이트 단위로 다음과 같이 계산할 수 있다:

여기서 너비와 높이는 화소 단위로 주어진다.

위 공식에는 헤더 크기와 색상 팔레트 크기는 포함되지 않는다. 각 행 시작을 워드와 같은 저장 단위 경계에 정렬하기 위한 행 패딩의 효과로 인해 추가 바이트가 필요할 수 있다.

장치 독립 비트맵 및 BMP 파일 형식

마이크로소프트는 다양한 내부 표현을 가진 장치와 애플리케이션 간에 비트맵을 교환하는 데 도움이 되도록 다양한 색 깊이의 컬러 비트맵에 대한 특정 표현을 정의했다. 이들은 이를 장치 독립 비트맵 "DIB"라고 불렀으며, 이들의 파일 형식은 DIB 파일 형식 또는 BMP 파일 포맷이라고 불린다. 마이크로소프트 지원에 따르면:

장치 독립 비트맵(DIB)은 다양한 색 해상도에서 장치 독립 비트맵을 정의하는 데 사용되는 형식입니다. DIB의 주요 목적은 비트맵을 한 장치에서 다른 장치로 이동할 수 있도록 하는 것입니다(따라서 이름의 장치 독립 부분). DIB는 장치 종속 비트맵과 대조적으로 외부 형식이며, 장치 종속 비트맵은 시스템에 비트맵 객체로 나타납니다(애플리케이션에 의해 생성됨...). DIB는 일반적으로 메타파일(일반적으로 StretchDIBits() 함수 사용), BMP 파일, 클립보드(CF_DIB 데이터 형식)로 전송됩니다.

여기서 "장치 독립"은 형식 또는 저장 배열을 의미하며, 장치 독립 색상과 혼동해서는 안 된다.

기타 비트맵 파일 형식

X 윈도 시스템은 흑백 이미지에 대해 유사한 XBM 형식을 사용하고, 컬러 이미지에 대해 XPM (픽셀맵)을 사용한다. 다른 수많은 비압축 비트맵 파일 형식이 사용되고 있지만, 대부분은 널리 사용되지 않는다. 대부분의 목적을 위해 GIF, 포터블 네트워크 그래픽스, TIFF, JPEG와 같은 표준화된 압축 비트맵 파일이 사용된다. 특히 비손실 압축은 더 작은 파일 크기로 비트맵과 동일한 정보를 제공한다. TIFF와 JPEG는 다양한 옵션을 가지고 있다. JPEG는 일반적으로 손실 압축이다. TIFF는 일반적으로 비압축이거나 GIF처럼 비손실 Lempel–Ziv–Welch 압축이다. PNG는 DEFLATE 비손실 압축, 또 다른 Lempel-Ziv 변형을 사용한다.

또한 다른 정보 없이 원시 비트맵을 저장하는 다양한 "원시" 이미지 파일이 있다. 이러한 원시 파일은 파일에 있는 비트맵일 뿐이며, 종종 헤더나 크기 정보가 없다(이들은 TIFF 형식과 같은 구조화된 컨테이너에 광범위한 이미지 메타데이터와 함께 처리되지 않은 원시 센서 데이터를 저장하는 사진 원시 이미지 형식과는 다르다).

 같이 보기 
 디더
 하프톤
 래스터 그래픽스
 벡터 그래픽스

 각주 

분류:그래픽 파일 포맷
분류:비트 자료 구조