Notice»

Recent Post»

Recent Comment»

Archive»

« 2024/5 »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

색공간 (Color space)

Technology | 2009. 6. 16. 14:53 | Posted by MissionFromGod

색공간 (Color space) : 
- 색을 디지털 정보로 저장하고, 그것을 다시 재현하는 데에 많이 이용됨.
- 수치화된 값의 순서쌍으로 색을 표현하는 방법.

1. RGB (Red, Green, Blue)
   - 웹 색상표현의 기본원리. CRT모니터와 컴퓨터 그래픽스 시스템들에서 사용.

   - 빛의 삼원색인 빨강, 초록, 파랑으로 구성되어 있다.

   - R(8 bit), G(8 bit), B(8 bit) 등 24bit를 조합하면 16777216개의 색상을 표현할 수 있다.

   - RGB Color cube 에서 실제 이미지를 표시하기 위해선 R,G,B 각각의 Bandwidth 가 필요하게 됨

   - 어떤 주어진 픽셀을 수정하기 위해선 버퍼에 있는 R,G,B 각각의 컬러를 다 읽어야 하고 각각 계산되어진 후 다시 각각의 Buffer에 저

     장되어져야 하는등 비 효율적임.

   - 상기 2가지 이유로 많은 Video 관련 standard 에서는 Luma 와 2가지의 색차신호를 사용한다.

2. YUV

   - 인간의 눈이 색상보다 광도, 즉 밝기에 더 민감한 특성을 이용한 색체계.

   - PAL, NTSC, SECAM 등 컬러 텔레비전에서 사용하는 기본적인 색형식이다.

   - Luma 신호 (Y) 와 Chrominance (U,V) 로부터 R,G,B 신호를 분해한다.

   - Y : Luma information (흑백 TV)

   - U,V : 흑백 TV에서는 Black, White 를 계속보여주면서 Clolor tv에서는 Color information을 디코딩 한다.

   - 수식으로 표현하면 다음과 같다.

      Y = 0.299R' + 0.587G' + 0.114B'  

           * 인간의 눈은 영상의 밝기를 각 3원색의 1/3인 33%씩으로 보는 것이 아니라 29.9% 의 빨강색과 58.7%의 초록색과 11.4%의 파란

              색으로 느낀다.

      U = 0.492 ( B' - Y )

      V = 0.877 ( R' - Y )

      R'= Y + 1.140V

      G'= Y - 0.395U - 0.581V

      B'= Y + 2.032U

3. YIQ

   - YUV 색좌표계로부터 유도한 것으로, NTSC 방식에서 사용한다.

   - Y는 색의 휘도를, I(In-phase),Q(quadrature phase)는 색도에 관한 정보를 가지고 있다.

   - 수식으로 표현하면 다음과 같다.

      Y = 0.299R' + 0.587G' + 0.114B'  

       I = -0.596R' - 0.274G' - 0.322B' = Vcos33° - Usin33°

      Q = 0.211R' - 0.523G' + 0.312B' = Vsin33° - Ucos33°

4 YPbPr (Analog component interface)

   - 미국 내의 HDTV 제품을 표준화하기 위해 개발한 Color space 의 일종.

   - 수학적으로 YCbCr과 동일하지만, 아날로그 시스템을 위해 디자인 되었음. YCbCr은 디지털 시스템에서 사용되도록 디자인되었음.

   - 미국 내의 모든 디지털 HDTV 시스템의 주요 시스템에서 채택. (한국도 마찬가지 임)

   - Y 신호는 white 와 black 신호정보를 전달하고, Pb, Pr 신호는 컬러 색차 신호를 전송한다.

   - 신호를 디지털 형식으로 변경하기 위해 스케일링과 오프셋 조정 단계를 거치기 이전 단계.

   - EIA-220.2-a SMPTE-240 and others

   - 수식으로 표현하면 다음과 같다.

      YPbPr (analog version of YCbCr) from R'G'B'
      ====================================================
      Y' =  Kr * R' + (1 - Kr - Kb) * G' + Kb * B'
      Pb = 0.5 * (B' - Y') / (1 - Kb)
      Pr = 0.5 * (R' - Y') / (1 - Kr)

      Kr = 0.212, Kb = 0.087

      Y'= 0.212R' + 0.701G' + 0.087B'

      Pb = -0.116R' - 0.384G' + 0.500B' = 0.547 (B' - Y )

      Pr = 0.500R' - 0.445G' - 0.055B' = 0.634 (R' - Y )

5 YCbCr ( Digital component interface )

   - NTSC, PAL, SECAM에서 서로 호환되는 디지털 신호를 개발하기 위하여 ITU-R BT.601에서 채택된 색 좌표계

   - 수식으로 표현하면 다음과 같다. Y의 범위는 0 ~ 1, Cb와 Cr은 -0.5 ~ +0.5 의 범위이다

      YCbCr  from R'G'B'
      ====================================================
      Y' =  Kr * R' + (1 - Kr - Kb) * G' + Kb * B'
      Cb = 0.5 * (B' - Y') / (1 - Kb)
      Cr = 0.5 * (R' - Y') / (1 - Kr)

      Kr = 0.299, Kb = 0.114  / SDTV 用

[ 디지털 고선명 텔레비젼(HDTV)에서는 Kr = 0.2126, Kb = 0.0722 사용 / ITU-R BT.709 ]

      Y = 0.299R' + 0.587G' + 0.114B'

      Cb = - 0.169R' - 0.331G' + 0.500B' = 0.5 (B' - Y ) /(1 - 0.114) = 0.564 (B' - Y)

      Cr = 0.500R' - 0.419G' - 0.081B' = 0.5 (R' - Y ) /(1 - 0.299) = 0.713 (B' - Y)

      ------------------------------------------------------

      R',G',B' : [0 ~ 1]

      Y' : [0 ~ 1]

      Cb : [-0.5 ~ 0.5]

      Cr : [-0.5 ~ 0.5]

   - 스케일링 후 오프셋하여 디지털 형식으로 표현하면 다음과 같다.

   - 8비트 2진수로 표현하는 응용 시스템에서는 *Y 는 16 ~ 235까지 220단계, *Cb, *Cr은 16 ~ 240 까지 225단계로 양자화한다.

      *Y = 16 + 219Y [ Y = 0.299R' + 0.587G' + 0.114B' ]

      *Cb = 128 + 224Cb [ Cb = - 0.169R' - 0.331G' + 0.500B' ]

      *Cr = 128 + 224Cr [ Cr = 0.500R' - 0.419G' - 0.081B' ]

      ------------------------------------------------------

      Y' : [16, 17, ..., 235]  * Black(16), White(235)

            footroom : [1, 2, ..., 15]

            headrom : [236, 237, ..., 254]

            sync : [0, 255]

      Cb,Cr : [16, 17, ..., 240]

- 만약 R', G', B' 가 8비트의 디지털 값으로 주어진다면 다음과 같다.

      *Y = 16  + 1/256 * (   65.738  * R'd +  129.057  * G'd +  25.064  * B'd)

      *Cb = 128 + 1/256 * ( - 37.945  * R'd -   74.494  * G'd + 112.439  * B'd

      *Cr = 128 + 1/256 * (  112.439  * R'd -   94.154  * G'd -  18.285  * B'd)

      ------------------------------------------------------

      R'd, G'd, B'd : [0, 1, ..., 255]

      Y' : [16, 17, ..., 235]  * Black(16), White(235)

            footroom : [1, 2, ..., 15]

            headrom : [236, 237, ..., 254]

            sync : [0, 255]

      Cb,Cr : [16, 17, ..., 240]

   - 4:4:4, 4:2:2, 4:1:1,, 4:2:0 등의 포맷이 있다.

5. CMYK (Cloor printing)
   - 감산 혼합방식, 하얀색 바탕에 4가지 잉크의 조합으로 색을 나타내는 것.
   - 색을 혼합하면 명도가 낮아지기 때문에 감산 혼합이라고 함.

6. HSV (색상, 채도, 명도)
   - 감산 혼합이나 가산 혼합보다 색상의 지정이 직관적이기 때문에 시각 예술에 자주 쓰인다.

7. CIE (학술적으로 정의)
   - 가장 정밀하지만 일반용도로 사용하기엔 복잡함.
Hue=색상=빛깔
Saturation=채도=포화도 : 흰색에 대한 어떤색의 비
Chrominance=색도
- 명도의 차이를 무시한 광선 빛깔의 종류를 지정한 수치. 빛깔을 구성하는 빨강, 파랑, 초록의 자극

   도를 물리적으로 정량(定量) 측정하여 빛깔의 색상과 채도를 함께 표시한 것인데, 파장의 길이와 순

   도로 나타낸다.
Luminance=휘도=명도=Brightness

: