비트맵 그래픽

내위키
Dennis (토론 | 기여)님의 2021년 10월 1일 (금) 09:41 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

Bitmap graphic.

디지털 방식으로 이미지를 처리하는 방식 중 하나. 모눈종이에 칸을 채우듯이 이미지를 일정한 간격으로 가로 세로로 자르는 개념으로 픽셀이라는 단위로 나눠서, 각 픽셀의 색깔값을 지정하는 방식으로 이미지를 처리한다. 벡터 그래픽이 점, 선, 도형으로 이미지를 처리하는 것과는 대조된다. 컴퓨터의 이미지 처리는 크게 비트맵 방식과 벡터 방식으로 분류할 수 있다.

픽셀의 색깔 값을 저장하는 것이므로 데이터의 크기는 픽셀의 양에 비례한다. 픽셀의 크기가 같다면 이미지의 크기가 커질수록, 이미지의 크기가 같다면 픽셀의 크기가 작아질수록 픽셀의 양이 많아지고 데이터의 크기도 커진다. 또한 색깔값도 데이터의 양과 관계가 있다. 가장 널리 쓰이는 RGB 색깔 모델은 보통 삼원색을 1바이트, 즉 0~255까지의 색깔을 가지도록 하며[1], 따라서 픽셀 하나가 차지하는 데이터가 3 바이트, 즉 24 비트가 된다.[2] 최근에는 알파값을 더한 RGBA 모델이 많이 쓰이며 이렇게 되면 1 픽셀이 4 바이트, 즉 32 비트가 된다. GIF처럼 한 이미지 당 RGB로 지정한 256색만 쓸 수 있도록 하는 방식도 있으며, 따라서 GIF 이미지는 픽셀 당 1 바이트씩을 필요로 한다.

다양한 이미지 입출력 장치들은 대부분 비트맵 그래픽을 사용한다. 디스플레이, 프린터[3], 스캐너, 디지털 카메라와 같은 장치들은 모두 비트맵 그래픽 방식이다.

사진과 같은 복잡한 이미지는 벡터 그래픽으로는 구현에 한계가 있고, 구현다고 쳐도 데이터의 양이 어마어마하게 커진다. 따라서 벡터 그래픽은 주로 단순한 형태의 그래픽, 선과 도형을 위주로 하는 이미지나 글꼴에 주로 사용되며, 그밖에는 비트맵 그래픽을 사용하는 것이 보통이다. 또한 벡터 그래픽이라고 해도 디스플레이나 프린터에 출력하려면 비트맵 그래픽으로 변환해야 한다.

가장 큰 단점은 계단현상. 픽셀의 크기를 최대한 작게 하면[4] 거의 느낄 수 없지만 이를 확대했을 때에는 계단현상이 발생한다. 반대로 크기를 축소할 때에는 이미지 정보의 일부가 사라진다. 또한 이미지의 크기가 커지면 픽셀의 양이 제곱으로 많아지기 때문에 용량이 빠르게 불어난다. 같은 크기의 이미지일 때 픽셀의 양이 많아지면 화질이 좋아지고, 디스플레이가 더 커지면 같은 픽셀 양을 가진 이미지를 띄웠을 때 계단현상이 더 잘 눈에 뜨이므로 데이터의 양을 줄이기 위한 여러 가지 이미지 압축 기술들이 나오고 있다. 픽셀의 데이터를 손상시키지 않으면서도 압축을 하는 비손실 압축으로는 GIF, PNG와 같은 것들이 있다. 비손실 압축으로도 이미지 데이터의 양은 꽤 줄어들지만 한계가 있는데, 더욱 압축 효율을 좋게 하기 위해 일부 이미지 데이터의 손실을 감수하는 손실 압축 기술이 널리 쓰이고 있다. 대표적인 것이 JPEG. 손실 압축 기술은 보통 압축 효율의 정도를 조절할 수 있는데 효율을 높일수록 데이터의 크기는 작아지지만 그만큼 데이터 손실도 많아지므로 원본 이미지에 비해 화질이 나빠진다.

각주

  1. RGB는 삼원색을 모두 섞었을 때 흰색이 되므로 세 개의 값이 모두 255일 때 하얀색, 모두 0일 때 검은색이다.
  2. 이렇게 하면 용량이 더 커지지만 좀 더 풍부하게 이미지를 표현할 수 있는 데다가 디지털 세계에서는 2의 제곱이 처리하기가 무척 편하기 때문에 3 바이트보다는 4 바이트가 여러 모로 데이터 처리하기에 좋다.
  3. 단, 플로터는 제외.
  4. 이를 나타내는 단위가 DPI(Dots per Inch), 즉 1인치에 몇 개의 점이 들어가는가인데, DPI 수치가 높을수록 픽셀의 크기가 작아진다.