YCbCr = rgb2jpeg(RGB);
| RGB | 3d data-cube, containing RGB information of the image |
| YCbCr | 3d data-cube, containing the YCbCr information of the image |
'rgb2jpeg(RGB)' performs a transformation of the 3d data-cube RGB with dimensions \(N \times M \times 3\), which contains information of the colours "red", "green" and "blue". The output variable YCbCr is a 3d data-cube of the same size containing information about "luminance", "chrominance blue" and "chrominance red". The output will be of the uint8 type.
See http://en.wikipedia.org/wiki/YCbCr and http://de.wikipedia.org/wiki/JPEG.
In the following example, the Lichtenstein test image is split into its three components. The very first subplot is the original image:
f=lichtenstein;
f_jpeg=rgb2jpeg(f);
subplot(2,2,1);
image(f);axis('image');
Ymono=zeros(512,512,3,'uint8');
Ymono(:,:,1)=f_jpeg(:,:,1);
Ymono(:,:,2:3)=128;
fmono=jpeg2rgb(Ymono);
subplot(2,2,2);
image(fmono);axis('image');
Cbmono=zeros(512,512,3,'uint8');
Cbmono(:,:,2)=f_jpeg(:,:,2);
Cbmono(:,:,3)=128;
fmono=jpeg2rgb(Cbmono);
subplot(2,2,3);
image(fmono);axis('image');
Crmono=zeros(512,512,3,'uint8');
Crmono(:,:,3)=f_jpeg(:,:,3);
Crmono(:,:,2)=128;
fmono=jpeg2rgb(Crmono);
subplot(2,2,4);
image(fmono);axis('image');