RAW形式の画像フォーマットメモ
RAW形式の画像フォーマットメモ。
AndroidだとYVU420Semi-PlanarやYUV420Semi-Planarが使用されていることが多い。
フォーマット
- Planar
それぞれの YUV のチャンネル毎にまとめて並んでいる - Semi-Planar
Y がまとまって並んだあと、UV がセットで並んでいる - Interleaved
YUV がセットで並んでいる - UYVY
U0,Y0,V0,Y1の順番で並んでいる - YUY2
Y0,U0,Y1,V0 の順番で並んでいる - YVYU
Y0,V0,Y1,U0 の順番で並んでいる
格納イメージ
Planar | Semi-Planar | Interleaved |
---|---|---|
Y | Y | YUV |
U | UV | YUV |
V | UV | YUV |
サンプリング比
- YUV420 Y は 1pixel = 1 データ長、 UとV は 2x2 pixel = 1 データ長
- YUV422 Y は 1pixel = 1 データ長、 UとV は 2x1 pixel = 1 データ長
1 データ長は大抵
1byte(8bit)
。格納イメージ
(幅4、高さ2の場合)
YUV420 Planar | YUV422 Planar | YUV420 Semi-Planar | YUV422 Semi-Planar |
---|---|---|---|
YYYY | YYYY | YYYY | YYYY |
YYYY | YYYY | YYYY | YYYY |
UU | UU | UV | UV |
VV | UU | UV | UV |
- | VV | - | UV |
- | VV | - | UV |
- RGB565 は 1pixel 辺りの RGB で 16bit = 2byte.
- RGB888 は 1pixel 辺りの RGB で 8bit × 3 = 3byte.
- ARGB8888 は 1pixel 辺りの ARGB で 8bit × 4 = 4byte.
YUV, RGB, ARGB の並びと後ろの数値(ビット数)は格納方式により変わることもある。