본문 바로가기

2.분석 및 설계

YUV 포멧

YUV 포멧에서 Y은 휘도, UV은 색상을 표현하며, 색과 빛을 별도로 구성한다.
사람은 밝기에 더 민감하므로 Y에 데이터를 더 많이 할당하였다.

작성자: ospace114@empal.com, http://ospace.tistory.com/

YUV 포멧 형식에 따라 데이터 구성이 조금씩 달라진다.

  • YUV 444: 각각 4 byte 사용
  • YUV 422: Y가 4 byte, UV는 각 2 byte 사용
  • YUV 411: Y가 4 byte, UV는 각 1 byte 사용
  • YUV 420: 데이터 크기는 411과 동일하지만 Y을 반으로 자르고 UV 사이에 배치한다.
Y0 U Y1 V
  • Y: 명암
  • V: Cb, 색에서 파란 성분
  • U: Cr, 색에서 붉은 성분

YUV와 RGV 간에 변환하는 수식

YUV --> RGB

  • R = Y + 1.140V
  • G = Y - 0.395U - 0.581V
  • B = Y + 2.032U

RGB --> YUV

  • Y = 0.257R + 0.504G + 0.095B + 16
  • U = -0.148R - 0.29G + 0.499B + 128
  • V = 0.439R - 0.368G - 0.071B + 128

YUYV는 YUV 422 packed 포멧

  • R = (Y + 359V) >> 8
  • G = (Y - 88U - 183V) >> 8
  • B = (Y + 454U) >> 8
반응형

'2.분석 및 설계' 카테고리의 다른 글

glTF 포멧  (0) 2023.06.08
[mybatis] Mybatis 내부동작 흐름  (0) 2022.01.26
Mina로 본 네트웍 프레임워크  (0) 2012.07.27
MFC 메시지맵 구조  (0) 2012.07.27
errno같은 리턴 에러값 프레임워크  (0) 2012.07.26