[edit] Beschreibung
[edit] Summary
This takes an image (Image:Barns grand tetons.jpg) and displays the Y, Cb and Cr elements of it.
Note that the Y image is essentailly a greyscale copy of the main image; that the white snow is represented as a middle value in both Cr and Cr; that the brown barn is represented by strong Cb and strong Cr; that the green grass is represented by strong Cb and weak Cr; and that the blue sky is represented by weak Cb and weak Cr. The murkiness of the Cb and Cr elements (to the human eye) demonstrate why many image compression codecs downsample colour; details in Y are much more visible than in Cb or Cr.
[edit] Generator code
In MATLAB:
RGBimage = imread('barns_grand_tetons.jpg');
[height,width,depth]=size(RGBimage);
YCbCrimage=RGB2YCbCr(RGBimage); % If you don't have the right version/toolkit this function
% might not be availiable. Luckily, it's easy to implement
% ourselves. Drop me (Mike1024) a message and I'll send you
% my code to do it.
% Newer versions of matlab need outputimage=zeros(height*4,width,depth,'uint8');
outputimage=uint8(zeros(height*4,width,depth));
for w=1:width,
for h=1:height,
outputimage(h,w,1) = YCbCrimage(h,w,1); %Copy Y, Cb and Cr for normal image
outputimage(h,w,2) = YCbCrimage(h,w,2);
outputimage(h,w,3) = YCbCrimage(h,w,3);
outputimage(h+height,w,1) = YCbCrimage(h,w,1); %Copy Y only for first component
outputimage(h+height,w,2) = 128;
outputimage(h+height,w,3) = 128;
outputimage(h+(2*height),w,2) = YCbCrimage(h,w,2); %Cb only for second component
outputimage(h+(2*height),w,1) = 128;
outputimage(h+(2*height),w,3) = 128;
outputimage(h+(3*height),w,3) = YCbCrimage(h,w,3); %Cr only for third component
outputimage(h+(3*height),w,1) = 128;
outputimage(h+(3*height),w,2) = 128;
end
end
image(YCbCr2RGB(outputimage));
imwrite(YCbCr2RGB(outputimage),'YCbCr_separation.jpg','jpeg');
[edit] Licensing
Based on the (public domain) photo Image:Barns grand tetons.jpg. Code above and resulting output by Mike1024.
Click on a date/time to view the file as it appeared at that time.
The following pages on the English Wikipedia link to this file (pages on other projects are not listed):