What's sampling format?This
is the format to define how the three components (Y,U, V or R, G, B) are
sampled, including :
-
YUV 4:4:4: Y, U and V are all in sampling format, no being down-sampled

-
YUV 4:2:2: Y is in full sampling format, while U and V are down-sampled
horizontally

-
YUV 4:2:0: Y is in full sampling format, while U and V are down-sampled both
vertically and horizontally

-
RGB 4:4:4: R, G and B are all in sampling format, no being down-sampled


What's interlace/progressive format?
This is to define whether the video frame (the whole image) is a single
progressive frame, or two interlaced fields
-
One single progressive frame:



What's pixel packing format?This
setting is used to specify the organization of YUV components for each pixel,
whether in planar format or packed format:
-
planar format: Y values for all pixels are put together, as well as U and V,
like: YYYYYY......UUUUUUU.......VVVVVV......



-
packed format: pixel YUV value are packed together as: YUV, YUV, YUV,....

How many resolutions yuvtools support?We
support several pre-defined resolutions (QCIF, CIF, 4CIF.. etc) and customized
resolution:
-
QCIF_NTSC:176x120
-
QCIF_PAL:176x144
-
CIF_NTSC:352x240
-
CIF_PAL:352x288
-
4CIF_NTSC:704x480
-
4CIF_PAL:704x576
-
D1_NTSC:720x480
-
D1_PAL:720x576
-
VGA:640x480
-
SVGA:800x600
-
XGA:1024x768
-
SXGA:1280x1024
-
UXGA:1600x1200
-
720HD:1280x720
-
1080HD:1920x1080
-
Customized: user specified image height and width.
How many combined formats yuvtools support?
Resolution setting only effects image size, while other four settings will
define the data structure of each YUV file. So, we consider only four different
sampling formats. The combination of sampling format (3 formats), component
order (2 or 3 formats), interlace/progressive format (2 formats) and pixel
packing format (2 formats) will generate 30 formats:
RGB 4:4:4 format:
-
RGB-444-progressive-packed;
-
RGB-444-progressive-planar;
-
BGR-444-progressive-packed;
-
BGR-444-progressive-planar;
YUV 4:4:4 format:
-
YUV-444-interlaced-packed;
-
YUV-444-interlaced-planar;
-
YUV-444-progressive-packed;
-
YUV-444-progressive-planar;
-
YVU-444-interlaced-packed;
-
YVU-444-interlaced-planar;
-
YVU-444-progressive-packed;
-
YVU-444-progressive-planar;
-
UYV-444-interlaced-packed;
-
UYV-444-interlaced-planar;
-
UYV-444-progressive-packed;
-
UYV-444-progressive-planar;
YUV 4:2:2 format:
-
YUYV-422-interlaced-packed;
-
YUV-422-interlaced-planar (YV16);
-
YUYV-422-progressive-packed (YUY2, YUNV, V422, YUYV);
-
YUY-422-progressive-planar;
-
UYVY-422-interlaced-packed (IUYV);
-
UYVY-422-progressive-packed (UYVY, UYNV, Y422 );
-
YVYU-422-interlaced-packed;
-
YVU-422-interlaced-planar;
-
YVYU-422-progressive-packed (YVYU);
-
YVU-422-progressive-planar;
YUV 4:2:0 format:
-
YUV-420-interlaced-planar;
-
YUV-420-progressive-planar (IYUV, I420);
-
YVU-420-interlaced-planar (YV12);
-
YVU-420-progressive-planar;
To see the examples of each format, please refer to Example
page .
Which formula is used in yuvtools to
convert between RGB and YUV?
There are many variations of formula to convert between YUV and RGB. We support
two types of conversion:
* ITU-R 601 for SDTV:
RGB to YUV Conversion:
Y = (0.257 * R) + (0.504 * G) + (0.098 * B)
+ 16
U = -(0.148 * R) - (0.291 * G) + (0.439 *
B) + 128
V = (0.439 * R) - (0.368 * G) - (0.071 * B)
+ 128
YUV to RGB Conversion:
B = 1.164(Y - 16) + 2.018(U - 128)
G = 1.164(Y - 16) - 0.813(V - 128) -
0.391(U - 128)
R = 1.164(Y - 16) + 1.596(V - 128)
* ITU-R 709 for HDTV:
RGB to YUV Conversion:
Y = (0.183 * R) + (0.614 * G) + (0.062 * B)
+ 16
U = -(0.101 * R) - (0.338 * G) + (0.439 *
B) + 128
V = (0.439 * R) - (0.399 * G) - (0.040 * B)
+ 128
YUV to RGB Conversion:
B = 1.164(Y - 16) + 1.793(U - 128)
G = 1.164(Y - 16) - 0.534(V - 128) -
0.213(U - 128)
R = 1.164(Y - 16) + 2.115(V - 128)
Please
refer to color Conversion article
Where can I download YUV video data?
You can find some clips from:
http://trace.eas.asu.edu/yuv/index.html
http://www.cipr.rpi.edu/resource/sequences/sif.html
or search "yuv 4:2:0" from google.com.