CS/디지털영상처리

[디지털영상처리] Color Image Processing (2)

nowkoes 2024. 1. 24. 00:00

본문

Pseudocolor Image

 

 가색상(Pseudocolor) 이미지 처리단색 또는 흑백 이미지에 색상을 매핑하여 시각적으로 이해하기 쉽게 하는 방법이다. 예를 들어, 위와 같이 위성사진을 촬영한 결과물에 가색상을 입힌다고 가정해 보자. 좌측의 위성사진에 기온, 수심, 등고선 등의 지표의 밝기(Intensity)에 따라 사전에 정의해 둔 색상을 매핑하면 우측의 그림처럼 바뀐다.

 

 

 즉, 위의 그래프처럼 밝기 값에 따라 R/G/B에 해당하는 값을 할당하는 사전에 정의된 함수를 이용한다. 이러한 함수는 일반적으로 사용자가 찾는 것이 아닌, 누군가 이미 정의한 coloramp을 사용한다.

 

I = rgb2gray(imread('bone.jpg'));

figure(1); imshow(I); colorbar;
figure(2); imshow(I); colormap jet; colorbar;
cmap = colormap(2);
figure(3); imagesc(cmap); colormap gray;

 

  다음과 같은 사람의 손 모양의 뼈(bone.jpg)가 촬영된 이미지를 Jet 컬러맵으로 나타내 보자. 매트랩에서는 현재 figure의 컬러맵을 미리 정의되어 있는 컬러맵 map으로 설정하는 colormap 함수가 정의되어 있다. 해당 함수를 이용하여 jet 컬러맵을 명시해 주고 출력하면 우측의 사진처럼 결과가 출력된다. 이때 해당 컬러맵의 매핑 함수를 출력해 보면 다음과 같이 R, G, B가 어떤 식으로 매핑되고 있는지 확인할 수 있다. 


Full-Color Image

 

 풀 컬러(Full-Color) 이미지 처리모든 가능한 색상을 포함할 수 있는 이미지 처리를 의미한다. 즉, 각각의 컬러 채널을 개별적으로 혹은 통합적으로 처리하는 방법인데, RGB 모델을 기준으로 설명해 보겠다.

 

 

 RGB 컬러 공간에서 임의의 벡터 c가 있다고 가정해 보자. 이 수식은 c의 구성 요소가 단순히 점에서의 컬러 이미지의 RGB 구성 요소임을 나타낸다. 즉, 각 채널마다 필터를 거치는 Mask가 존재하고, 컬러 공간에서 한 픽셀은 벡터 형태라는 것을 알 수 있다. 이를 이용해 각 채널마다 컬러 성분을 개별적으로 처리하고, 처리된 성분 이미지를 합쳐 컬러 영상을 출력하는 방식도 존재하고, 각 픽셀이 존재하는 채널을 합쳐 하나의 컬러 벡터를 처리하는 방식이 존재하다는 것도 알 수 있다.

 

 

 예를 들어, 좌측 상단에 딸기가 담겨 있는 사진의 명도를 10% 줄인다고 가정해 보자. 컬러 모델은 RGB, CMY, HSI가 대표적이라고 했었는데, 원본 이미지를 세 가지 모델로 나누어 각각 명도를 줄이는 작업을 했을 때 동일한 결과(우측 상단)가 출력되는 것을 알 수 있다.


요약

컬러 이미지 처리
1. 색
 a. 정의: 빛의 파장 분포에 의해 결정되며, 인간의 눈과 뇌에 의해 인식되는 시각적 경험에 의존하는 빛의 성질
 b. 모델: RGB, CMY(K), HSI
2. 가색상 이미지 처리: 사전에 정의된 컬러맵으로 이미지 처리하는 방식
3. 풀 컬러 이미지 처리: 모든 가능한 색상을 포함하는 이미지 처리 
반응형