본문 바로가기
Machine Learning/Image Processing

1. Color Space

by 베짱이28호 2022. 7. 7.

1.  Color Space


1. Color Space란?

색역 표

Color Space, 색 공간이란 color system을 3차원으로 표현한 공간 개념이다.

color system은 여러 디바이스에서 정확한 색을 구현하기 위하여 활용된다. color space는 색상(hue), 명도(lightness), 채도(chroma)를 기본으로 하는 3차원 공간이다.

 

오른 쪽 그림 색역 표이다. 디바이스마다 디스플레이, 이미지 센서, 프로세서 등이 다르기 때문에 색역을 전부 표현할 수 없는데 이 제한된 영역을 기기의 색역이라 한다.

이는 색재현률로 표현이 되며 색 재현 규격에는 sRGB, DCI, NTSC 등 여러 색 재현 규격이 있다.

 


2. 대표적인 색 공간

- RGB 

RGB 색 공간 모형
RGB 색 공간 모형

색을 혼합하면 명도가 올라가는 가산 혼합 방식으로 색을 표현한다. color image에서 jpeg 이미지에서는 3채널 이미지로 RGB 각 채널별로 8bit로 이미지를 표현한다. 4채널인 경우 이미지의 투명도를 표현한 알파 채널이 존재한다.

RGB 색상을 Gray scale로 표현할 경우 인간의 눈이 초록색에 더 민감하기 때문에 초록색의 밝기에 더 높은 가중치를 두어 색을 변환한다. 이는 Image Sensor에서 4개의 subpixel에서 초록색이 2개인 이유이다. 

 

 

- CMYK

CMYK 색 공간

CMYK 색 공간은 프린터에서 볼 수 있는 색 공간이다. 색을 혼합하면 명도가 낮아지는 감산혼합 방식이다. RGB와는 다르게 검정색이 표현된 것을 볼 수 있다. 이는 true black의 경우 표현하기 어렵고 검은색의 사용 빈도가 매우 높기 때문에 검정색이 추가되었다.

 

 

 

 

 

 

- HSV

HSV 색 공간 모형. 이미지 출처 :

HSV 색 공간은 색상(Hue), 채도(Saturation), 명도(value)를 기준으로 색을 표현한다.

Image signall procesing에서는 색상은 [0,360]의 범위를 갖지만 8bit에서는 표현할 수 없기 때문에 2로 나누어주어서 H를 [0,179]의 범위로 표현한다.

S값이 작을수록 채도가 없는 흰색을 나타내고 V값이 밝기를 나타내며 원뿔의 꼭지점에 가까워질수록 어두운 검은색을 나타낸다.

 

 

 

- YUV

Y',U,V 컴포넌트가 수반된 이미지

YUV 색 공간은 Y'UV,Y CbCr 등 색공간과 유사한 의미가 있으므로 대략적으로 설명하겠다.

YUV 색 공간은 JPEG, H.264등 영상 압축에서 주로 사용하는 색 공간이다. (실제로는 YCbCr) 이는 사람이 밝기와 색차정보 중 밝기에 민감하기 때문에 색공간을 밝기와 색차정보로 분리한 것이다.

밝기 Y와 파랑을 나타내는 U, 빨강을 나타내는 V로 밝기와 빨간색, 파란색의 색차정보를 나타낸다.

 

색차 정보를 손실해도 밝기 변화보다 덜 민감하기 때문에 압축에서 주로 사용이 된다. 압축 과정에서는 chroma subsampling을 사용하여 밝기 정보에 비해서 색차정보를 덜 샘플링하여 압축 을 하게된다. 

'Machine Learning > Image Processing' 카테고리의 다른 글

8. [Python] Morpological Transfomation  (0) 2022.08.15
7. [Python] Thresholding  (0) 2022.08.08
6. [Python] Image Compression  (0) 2022.08.05
5. [Python] Histogram Modeling  (0) 2022.07.28
4. [Python] Frequency Domain  (0) 2022.07.22
3. [Python] Spatial Domain  (0) 2022.07.13
2. [Python] Color Channel  (0) 2022.07.13

댓글