1. 픽셀이 왜 사용되는가
- 픽셀(pixel)은 디지털 이미지에서 가장 작은 정보 단위(화소)입니다.
- 즉, 픽셀은 래스터(raster) 이미지 또는 도트 매트릭스 화면에서 소프트웨어적으로 개별 제어할 수 있는 최소 요소를 의미합니다. 컴퓨터 메모리와 디스플레이 장치가 개별 화소 단위로 이미지를 처리하기 때문에, 연속적인 아날로그 이미지를 작은 픽셀 조각들로 분할하여 표현하면 컴퓨터가 다루기 쉬운 데이터로 변환할 수 있습니다. 실제로 컴퓨터 상의 모든 디지털 이미지는 픽셀 격자 형태의 래스터 그래픽스로 표현되며, 각 픽셀이 모여 전체 그림을 구성하게 됩니다.
- 픽셀을 사용하면 컴퓨터 구조적인 측면에서 효율적입니다. 이미지의 픽셀들은 일반적으로 **2차원의 직사각형 격자(grid)**로 배열되는데, 이는 메모리에 배열(array) 형태로 저장하고 인덱싱하기에 매우 편리합니다. 예를 들어 폭이 W이고 높이가 H인 이미지라면 메모리에는 픽셀 값이 연속적으로 행렬 형태로 저장되며, 특정 픽셀에 접근할 때 행(y)과 열(x) 좌표로 간단히 주소를 계산할 수 있습니다. 이러한 격자 구조 덕분에 CPU나 GPU가 영상 데이터를 효율적으로 순차 접근할 수 있고, 디스플레이도 위에서 아래로 한 줄씩 스캔하여 화면에 출력하기 용이합니다. 직사각형 픽셀 격자는 공간을 빈틈없이 타일처럼 메꾸기 때문에 다른 형태(예: 육각형 격자) 대비 구현과 연산이 단순합니다. 결과적으로 대부분의 센서(카메라)와 출력 장치(모니터)는 픽셀의 직교 격자를 기본 구조로 채택하고 있습니다.
- 또 픽셀은 **원본 아날로그 영상을 표본화한 샘플(sample)**에 해당합니다. 픽셀이 많을수록 원본 이미지를 더 세밀하고 정확하게 표현할 수 있으며, 반대로 픽셀 수가 적으면 원본 대비 뭉개지거나 계단질 수밖에 없습니다. 한 픽셀보다 작은 상세 정보는 표현할 수 없기 때문입니다.
- 예를 들어 매우 낮은 해상도의 이미지를 확대하면 각 픽셀이 계단진 큰 사각형 블록 모양으로 드러나게 됩니다. 이러한 현상을 우리는 흔히 “픽셀화(pixellation)”되었다고 하며, 경계선이 울퉁불퉁하게 보이는 계단 현상(aliasing)이 나타납니다.
- 이를 완화하기 위해 안티앨리어싱(anti-aliasing) 기술을 사용하여 경계 부근 픽셀의 색상을 주변과 섞어 흐려지게 함으로써 계단지를 눈에 덜 띄게 처리할 수 있습니다. 결국 디지털 영상의 품질은 공간 해상도(픽셀 수)에 크게 좌우되며, 해상도가 높을수록 작은 디테일까지 표현할 수 있습니다. 초기의 컴퓨터 그래픽스는 해상도가 낮아 화소가 육안으로 보일 정도였고, 이러한 스타일의 그림을 픽셀 아트(pixel art)라고 불렀습니다. 하지만 현대의 디스플레이는 매우 고해상도로 수백만 화소를 한 화면에 표시할 수 있으므로 이제는 개별 픽셀이 눈에 잘 띄지 않을 만큼 세밀한 표현이 가능합니다.
요약하면, 픽셀 단위의 표현은 아날로그 이미지를 디지털로 표현하기 위한 표준 수단입니다. 픽셀 격자는 컴퓨터 메모리 구조와 표시 장치의 동작 방식에 부합하며, 충분히 미세한 픽셀로 샘플링된 이미지는 원본에 가까운 품질을 제공합니다. 반면 픽셀 크기가 커지면 이미지가 거칠어지므로, 필요에 따라 해상도를 올려 픽셀 크기를 줄이는 것이 중요합니다 (예: 1920×1080
해상도보다 3840×2160
해상도가 더 선명함). 픽셀은 컴퓨터와 외부 세계(영상) 사이의 다리 역할을 하여, 연속적인 시각 정보를 불연속적인 이진 데이터로 변환함으로써 컴퓨터가 이해하고 처리할 수 있게 만들어 줍니다.
2. 픽셀이 색을 어떻게 표현하는가
- 디지털 이미지의 각 픽셀은 색상 정보를 보관합니다. 컴퓨터에서는 보통 RGB 컬러 모델을 사용하여 픽셀의 색을 표현하는데, 하나의 픽셀 색상은 빨간색(R), 녹색(G), 파란색(B)의 세 가지 기본 색 광원의 강도 값으로 나타냅니다. 즉, 픽셀마다 “R 값, G 값, B 값”을 가지고 있으며, 이 세 가지 값의 조합으로 해당 픽셀의 최종 색깔이 결정됩니다.
- 예를 들어 R=255, G=0, B=0이면 빨간색, R=255, G=255, B=0이면 노란색, R=0, G=0, B=0이면 검은색을 뜻합니다. 컴퓨터 그래픽에서는 이렇게 RGB 3원색의 가산혼합 색 시스템(additive color system)을 기반으로 색을 표현하는데, 이는 광원의 색을 더해가는 방식입니다. 검은 배경(무광원)에서 시작하여 빨간 빛, 녹색 빛, 파란 빛을 서로 다른 세기로 더하면 여러 가지 색이 만들어집니다.
- 예를 들어 빨간색 + 녹색 = 노란색, 녹색 + 파란색 = 청록색, 파란색 + 빨간색 = 자홍색이 되며, 세 가지 색을 모두 최대 세기로 합하면 흰색이 됩니다. 인간의 시각이 세 가지 원추세포를 통해 색을 인지하는 원리와도 부합하기 때문에, 대부분의 디스플레이 장치는 RGB 방식의 가산 혼합으로 색을 구현합니다 (인쇄물은 시안(C), 마젠타(M), 노랑(Y), 검정(K) 잉크로 감산혼합을 사용하지만, 여기서는 디지털 발광 화면을 중심으로 설명합니다).

사진 1: 노트북 LCD 화면의 픽셀을 확대하여 촬영한 모습이다. 각각의 작은 막대들이 하나의 픽셀을 구성하는 빨간색, 녹색, 파란색 서브픽셀이다. 이러한 미세 소자들의 밝기를 조절하여 해당 픽셀의 최종 색상을 만들어낸다. 이처럼 각 픽셀 내부의 세 가지 기본 색 소자를 서로 다른 밝기로 켜주면 수많은 색조를 표현할 수 있습니다. 예를 들어 노란색을 표현하려면 빨간 소자와 녹색 소자를 켜고 파란 소자는 끄며, 흰색을 표시하려면 세 소자를 모두 최대 밝기로 켭니다. 이렇게 픽셀 단위에서 RGB 광원의 조합을 통해 다양한 색이 구현되는 것입니다.
픽셀의 색상 수치는 메모리에서 이진수로 저장됩니다. 각 색 성분(채널) 값은 정해진 비트수로 표현되는데, 현대 컴퓨터 시스템에서는 보통 각 채널당 8비트를 할당하는 24비트 컬러를 사용합니다. 하나의 채널이 8비트면 0부터 255까지 256단계의 밝기를 표현할 수 있으므로, RGB 세 채널을 합치면 총 256×256×256 = 16,777,216가지 색상을 구별할 수 있습니다. 이를 흔히 “트루 컬러(True color)” 또는 “1677만 색”이라고 부르며, 일반적으로 인간이 인지할 수 있는 대부분의 색 영역을 커버합니다.
인간의 눈은 대략 천만 가지 정도의 색조를 구분할 수 있다고 알려져 있는데, 24비트 컬러의 표현 범위(1677만 색)는 이보다도 넉넉하여 사실상 눈으로 보이는 연속적인 색 변화를 모두 표현할 수 있습니다. (다만 1677만 색이라고 해서 사람 눈에 완전히 연속적으로 보인다는 보장은 없습니다. 디스플레이의 색 공간이 인간 전체 시각 영역보다 좁고, 디지털 값이 인간의 색 지각 공간에 균일하게 대응하지 않기 때문에, 일부 그라데이션에서는 근소한 단계 차이도 눈에 띄는 밴딩(banding) 현상이 나타날 수 있습니다.)
과거에는 메모리 절약을 위해 더 적은 비트로 색을 표현하기도 했습니다.