How to get the YUV value for each pixel?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi everyone
I am new to matlab, so any help would be appreciated.
I have an image and I need to get the YUV value for each pixel in the image.
Can anyone help? Thanks in advance
0 Kommentare
Akzeptierte Antwort
Dishant Arora
am 17 Feb. 2014
if you have a RGB image you can convert it into YUV using below mentioned equations:
Y = R*(0.299000) + G*(0.587000) + B*(0.114000);
U = R*(-0.168736) + G*(-0.331264) + B*(0.500000) + 128;
V = R*(0.500000) + G*(-0.418688) + B*(-0.081312) + 128;
2 Kommentare
DGM
am 3 Nov. 2021
Bearbeitet: DGM
am 4 Nov. 2021
That's not YUV. That's more or less YPbPr, or YCbCr without the margins. The offset implies that the RGB image is uint8-scaled, though if it were actually uint8, the operations would result in severe data truncation. The only case in which this would work is if R,G,and B were uint8-scaled floating-point data.
This covers general luma-chroma conversions, including YUV:
If actual YCbCr conversion is desired with margins, just use rgb2ycbcr().
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Convert Image Type finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!