Main Content

컬러맵과 트루컬러의 차이점

곡면, 패치, 이미지 같은 다수의 그래픽스 객체는 색을 지정하는 두 가지 기법, 즉 컬러맵(인덱스 색상 사용)과 트루컬러를 지원합니다. 각 기법은 서로 다른 워크플로를 사용하며 시각적 표현에 서로 다른 영향을 줍니다.

워크플로에서의 차이점

컬러맵은 m×3 배열이며, 이 배열의 각 행은 RGB 3색을 지정합니다. 그래픽 표현에 컬러맵을 사용하려면 그래픽의 각 위치에 인덱스를 할당하십시오. 그래픽의 지정된 위치에 색을 표시하기 위해 각 인덱스는 컬러맵의 행에 주소를 지정합니다. 반면에 트루컬러를 사용하면 그래픽의 모든 위치에 RGB 3색을 지정해야 합니다.

다음은 사용할 기법을 결정할 때 고려해야 할 몇 가지 사항입니다.

  • 트루컬러는 좀 더 직접적입니다. 특정 빨간색, 녹색, 파란색 값을 그래픽의 특정 위치에 할당하려는 경우, 일반적으로 트루컬러를 사용하면 더 쉽게 할당할 수 있습니다.

  • 색 팔레트의 영역을 변경하는 경우, 컬러맵에서 더 쉽게 수행할 수 있습니다. 예를 들어, 파란색에서 녹색으로 전환되는 그라데이션을 밝게 변경하려는 경우, 그래픽의 개별 위치에 있는 색을 편집하는 것보다 컬러맵의 해당 행을 편집하는 것이 쉽습니다.

  • 데이터의 형식이 두 워크플로 중 하나에 더 적합할 수 있습니다. 예를 들어, 압축된 GIF 이미지 대부분이 인덱스 색상을 사용하여 저장됩니다.

두 가지 색 지정 기법 모두 색 배열 C를 사용하여 색 정보를 지정합니다. C의 형태는 선택하는 색 지정 방법과 그래픽스 객체 유형에 따라 결정됩니다. 다음 표에는 이러한 차이점이 요약되어 있습니다.

그래픽스 객체의 유형색 배열 C가 포함된 속성인덱스 색상의 경우 C의 형태트루컬러의 경우 C의 형태
SurfaceCDataC는 m×n 배열이며 z 좌표 배열과 크기가 동일합니다. C(i,j)의 값은 Z(i,j)에 대한 컬러맵 인덱스를 지정합니다.C는 m×n×3 배열이며 여기서 C(:,:,i)는 z 좌표 배열과 크기가 동일합니다.

C(i,j,1)Z(i,j)에 빨간색 성분을 지정합니다.

C(i,j,2)Z(i,j)에 녹색 성분을 지정합니다.

C(i,j,3)Z(i,j)에 파란색 성분을 지정합니다.
ImageCDatam×n 이미지의 경우 C는 m×n 배열입니다. C(i,j)의 값은 픽셀 (i,j)에 대한 컬러맵 인덱스를 지정합니다.m×n 이미지의 경우 C는 m×n×3 배열입니다.

C(i,j,1)은 픽셀 (i,j)에 빨간색 성분을 지정합니다.

C(i,j,2)는 픽셀 (i,j)에 녹색 성분을 지정합니다.

C(i,j,3)은 픽셀 (i,j)에 파란색 성분을 지정합니다.
Patch(x, y, z)CData패치 면에 색을 지정하는 경우 C는 m개 패치 면에 대해 1×m 배열입니다. C(i)는 면 i에 대한 컬러맵 인덱스를 지정합니다.

패치 꼭짓점에 색을 지정하는 경우 C는 m×n 배열이며 여기서 m은 면당 꼭짓점 개수이며, n은 면 개수입니다. C(i,j)는 면 j의 꼭짓점 i에 대한 컬러맵 인덱스를 지정합니다.
패치 면에 색을 지정하는 경우 C는 m개 패치 면에 대해 m×3 배열입니다. C(i,:)은 면 i에 빨간색, 녹색, 파란색 값을 지정합니다.

패치 꼭짓점에 색을 지정하는 경우 C는 n×3 배열이며 여기서 n은 꼭짓점의 총 개수입니다. C(i,:)은 꼭짓점 i에 빨간색, 녹색, 파란색 값을 지정합니다.
Patch(면-꼭짓점 데이터)FaceVertexCData패치 면에 색을 지정하는 경우 C는 m개 패치 면에 대해 1×m 배열입니다. C(i)는 면 i에 대한 컬러맵 인덱스를 지정합니다.

패치 꼭짓점에 색을 지정하는 경우 C는 1×n 배열이며 여기서 n은 꼭짓점의 총 개수입니다. C(i)는 꼭짓점 i에 대한 컬러맵 인덱스를 지정합니다.
패치 면에 색을 지정하는 경우 C는 m개 패치 면에 대해 m×3 배열입니다. C(i,:)은 면 i에 빨간색, 녹색, 파란색 값을 지정합니다.

패치 꼭짓점에 색을 지정하는 경우 C는 n×3 배열이며 여기서 n은 꼭짓점의 총 개수입니다. C(i,:)은 꼭짓점 i에 빨간색, 녹색, 파란색 값을 지정합니다.

시각적 표현에서의 차이점

컬러맵은 m개 색으로 구성된 팔레트를 제공하며 여기서 m은 컬러맵의 길이입니다. 반면에, 트루컬러는 256 × 256 × 256 ≈ 1,680만 개 색으로 구성된 팔레트를 제공합니다.

얼마나 큰 색 팔레트가 필요한지 결정할 때 다음 변수를 고려해 보십시오.

  • 색 팔레트가 작을수록 단색으로 큰 영역을 채우는 데 더 경제적입니다. 이는 곡면의 윤곽선을 시각화할 때에도 유용합니다.

  • 색 팔레트가 클수록 부드러운 전환과 매끄러운 색 그라데이션을 표현하는 데 더 효과적입니다.

패치 면 전체에 걸쳐 꼭짓점 색을 보간하면 인덱스 색상과 트루컬러 간의 차이점이 좀 더 명확히 나타납니다. 다음 두 개의 패치는 극단적인 사례를 보여줍니다. 왼쪽 패치는 작은 컬러맵을 사용하고 오른쪽 패치는 트루컬러를 사용합니다.

Two triangular patches with interpolated color. One patch uses a 16-color colormap and the other patch uses truecolor. The transitions between colors are smoother in the patch that uses truecolor.

컬러맵의 제한적 팔레트가 염려되는 경우 팔레트에 색을 추가할 수 있습니다. 컬러맵을 사용하여 색 체계 변경하기 항목은 특정 개수의 색을 갖는 컬러맵을 사용하는 방법을 보여줍니다.

관련 항목