티스토리 뷰

ISP

YUV color

duckchan.seo 2016. 10. 30. 22:59

자주 YUV 파일을 다루고 이용하지만 매번 format 에 대해 헷갈리는 경우가 많다. 그래서 개인적으로 한번쯤 YUV color 에 대해 정리가 필요하다고  생각했다. 이를 위해 다른 사이트[각주:1] [각주:2] [각주:3]에서 정보를 수집하고 재정리하여 작성해보았다.

 

YUV는 이미지와 비디오 컬러공간을 표현하는 방법이다. YUV는 흑백 인프라 환경에서 컬러 정보를 추가하고자 고안된 방법으로 기존 흑백 정보 수신자와 호환이 가능하면서 추가적인 큰 대역폭(bandwidth)을 필요로 하지않는 조건에서 U,V 컬러정보를 추가한것이다.

 

Y는 컬러의 밝기정보(brightness or luminance or luma)를 가지고 있으며 U, V는 색정보(chrominance)를 가지고 있다. Y의 범위는 0부터 1까지(디지털 포맷 기준 0~255)이며 U,V는 -0.5부터 0.5 (디지털 포맷 기준 signed -128~128, unsigned 0~255)의 범위를 가진다.

 

 

 

Y의 값은 R,G,B의 가중치에 대한 합이며  U,V는 Y와 R, B의 차이값에 대한 스케일링으로 계산할 수 있다. 위 내용을 바탕으로 아래와 같은 관계를 얻을 수 있다.

 

 

 

YUV 에서 Y는 전체 해상도 만큼의  정보를 가지고 있지만 UV 영역은 서브 샘플링을 한 정보를 가질 수 있다. 인간의 눈에는 색에 대한 민감도 보다 밝기 혹은 휘도에 대한 정확도가 더 크게 영향을 미친다는 이유로 UV 영역은 대역폭에 따라 샘플링을 해도 큰 문제가 되지 않는다고 한다. 이러한  사실을 바탕으로 YUV 는 다양한 format이 존재한다.

 

YUV 는 Packed format 과 Planar format 의 종류가 있다. Packed format은 Y와 UV가 함께 섞여 Macropixel을 이루는 종류들을 말하며 이와 대조적으로 Planar format은 Y, UV 정보들이 서로 다른 영역에 분리되어 저장된 포맷들을 말한다.

 

 

자주 사용하는 포맷으로는 Packed 포맷에는 YUYV(YUY2, YUNV,V422라고도 함)와 UYVY(Y422, UYNV라고도 함)가 있으며 Planar 포맷에는 YUV444, YUV420(NV12, NV21)가 있다. 다양한 포맷 종류는 FourCC 에서 확인할 수 있다.

 

 

UYVU의 포맷은 위와 같이 2 image pixel을 표현하기 위해서 총 2개의 Y와 1개씩의 U, V가 필요로 하다. 8bit 기준으로 2 image pixel을 표현하려면 32bit 가 필요한 포맷이다. 만약 이미지의 해상도가 Width x Height pixels 이라면 Y 는 W x H, U와 V는 각각 (WxH)/2 씩이 필요로 한다. YUYV 포맷도 UYVY와 동일한 포맷이며 단지  Y, U, V의 순서 차이만 있다.

 

다음으로 YUV420(NV12) 포맷이다. 위와 같이 4 image pixel을 표현하기 위해서 총 4개의 Y와 1개씩의 U, V가 필요로 하다. 8bit 기준으로 4 pixel을 표현라기 위해서는 48bit가 필요로 한다.  또한 Width x Height pixels 이미지를 표현하려면 Y는 W x H, U와 V는 (W x H)/4 씩의 정보가 필요한 포맷이다. YUV420의 다른 종류인 NV21은 UV interleave 영역에서 NV12와 다르게 V,U 의 순서로 구성이 되어 있다. YV12, IMC1, IMC2 포맷은 NV12와 UV 샘플링 구성은 동일하지만 non-interleave UV plane으로 U와 V가 따로 분리되어 있다. 또 위에서 언급한 YUV444는 Y, U, V 모두 동일한 개수만큼 있는 포맷이다. Width x Height pixels 이미지를 표현하기 위해서 RGB와 동일하게 W x H 개수만큼의 Y, U, V가 필요한 포맷이다.

 

'ISP' 카테고리의 다른 글

CVPR 2017 논문  (0) 2017.09.14
Convert between YUV and AVI  (0) 2016.10.31
컬러 변환식 (Color conversion)  (0) 2016.10.31
좋은 영상처리, 컴퓨터비젼 블로그  (0) 2016.10.30
댓글