박두현의 컴퓨터 이론들 - 영상처리 : 영상표현 RGB, CMY, HIS, YCbCr

 

안녕하세요. 박두현 입니다.

영상처리에 대해서 이것저것 알아보고 있습니다. 오늘은 저번주에 이어 각 색 표현법에 대해서 알아보도록 하겠습니다.

이런 색상 표현하는 것을 Color Space 라고 하는데, 그 중에서도 RGB, CMY(CMYK), HIS(HSV), YCbCr 색상 모형에 대해서 알아보고 설명하도록 하겠습니다.

 

1. RGB Color Space

 

RGB 컬러 공간은 서로 가산될 수 있는 삼원색인 Red, Green, Blue로 구성되어 있습니다.

그래서 가산 색상 모델 (Additive color model) 이지요. 컬러 분광 요소들이 복합되어 결과적인 색상을 만들어 냅니다.

 

특징

- RGB 모형은 3개 채널만가지고 수행하는 점 때문에 다루기 쉬움.

- 영상처리 알고리즘들은 수행이 어려움

 

특징 중 영상처리 알고리즘 수행이 어렵다고 했습니다.

이유인 즉, 많은 영상처리 기술은 영상의 명암도만을 가지고 계산하는데 RGB 공간에서는 명암도를 추출하는 것이 어렵습니다.

아래에 RGB 모형에서 명암도를 추출하는 공식을 적어 보았습니다.

 

NTSC(National Television Standards Committee)표준: 명암도(Brightness) = 0.2999R + 0.587G + 0.114B

일반적인 변환: 명암도 = 0.333R + 0.333G + 0.333B

 

ColorSpace-RGB_Space.jpg  

[그림1-1. RGB Color Space]

 

2. CMY / CMYK

 

이번에 살펴볼 것은 CMY 컬러 공간 입니다.

CMY 컬러공간은 청록색(Cyan), 자홍색(Magenta), 노랑색(Yellow)으로 구성되며, RGB컬러공간과 보색관계(complement) 입니다.

때문에 RGB 공간과의 변환이 쉽습니다.

이것은 컬러 프린터와 같은 인쇄 시스템 같은데서 쓰이고 있습니다.

 

RGB to CMY 변환 공식: C = 1.0 – R , M = 1.0 – G , Y = 1.0 - B
CMY to RGB 변환 공식: R = 1.0 - C , G = 1.0 - M , B = 1.0 - Y

 

CMYK 공간은 CMY에 K(검정색)를 더한 공간을 말 합니다. 컬러 프린터 보면 흑색만 따로 주죠? 그게 바로 K 입니다.

K = min(C,M,Y) , C = C - K , M = M - K, Y = Y - K

 

ColorSpace-CMY_Space.jpg  

[그림2-1. CMY Color Space]

 

3. HSI / HSV

 

아마도 오늘 알려드리는 색상 공간에서 영상처리 할 때 가장 많이 사용하게 될 공간이 아닌가 싶네요. 바로 HSI 입니다.

HSI 는 색상 정보에서 휘도(Luminance)를 분리시킨 것 입니다.

이것은 인간이 느끼는 색상 공간과 가장 유사한 것이라고 할 수 있지요. 그만큼 이 HSI 가 영상처리에서 매우 중요하겠죠?

 

HSI / HSV 의 의미:

  H : Hue, 색상
  S : Saturation(채도 (색상의 탁하고 맑음의 정도)) (에를 들면, 붉은 색이 핑크색이 되는 과정이랄까?)
  V 또는 I : Value or Intensity, 명도 (밝기의 정도)

 

응용분야:

히스토그램 연산(histogram operation), 명도 변환(intensity transformation), 회선(convolution), 객체 추출(object detection)

 

이 색상 공간을 이해하려면 바로 그림3-1의 이중 원뿔 모형을 참조해야 합니다.

 

ColorSpace-HSI_Cone.jpg  

[그림3-1. HSI 이중 원뿔 모형]

 

색상(H): 0-360도. 0도=빨강색, 120도=녹색, 240도=파랑색

채도(S): 0-1의 반지름. S=0에서 명도 I의 명암도(무채색), S=1에서 컬러는 원뿔모형 기반의 꼭대기 가장자리(100%채도)
채도가 강할 수록 컬러는(명도에 따라) 흰색/회색/검정색이 됨

명도(I): z축, 검정색(0), 흰색(1). S=1에서 I를 조절하면 컬러의 농도 변화

 

이 HSI는 RGB 색상 공간으로 변환하는 공식이 다소 어렵습니다.

 

ColorSpace-Formula_for_HSI.jpg  

[그림3-2. HSI 변환공식]

 

ColorSpace-HSI_Space.jpg

[그림3-3. HSI Color Space]

 

ColorSpace-Sample_of_FaceDetecting.jpg  

[그림3-4. Hue 값을 가지고 Face Detecting 하는 예]

 

4. YCbCr

 

오늘 알아볼 마지막 색상 공간은 바로 YCbCr 입니다.

역시 색상 정보에서 휘도(Luminance)를 분리시킨 것 입니다. JPEG 압축에 많이 사용되고 있지요.

 

RGB to YCbCr 변환공식:
Y = 0.29900R + 0.58700G + 0.11400B
Cb = -0.16874R - 0.33126G + 0.50000B
Cr = 0.50000R - 0.41869G - 0.08131B

 

YCbCr to RGB변환공식:
R = 1.00000Y + 1.40200 Cr
G = 1.00000Y - 0.34414 Cb - 0.71414 Cr
B = 1.00000Y + 1.77200 Cb

 

ColorSpace-YCbCr_Space.jpg  

[그림4-1. YCbCr Color Space]

 

5. 마치면서...

 

오늘은 각각의 Color Space 에 대해서 알아 보았습니다.

아마 이 자료는 영상을 다루시는 분들은 많이 사용하게 되지 않을까 생각 됩니다. (안 쓸 수가 없음)

 

 

아무튼 오늘은 여기서 마치고 다음에는 영상처리에 대한 이야기를 좀 해보도록 하겠습니다.

모두들 행복하세요~