我希望能将一张图片分解成Y、Cb、Cr三个分量,然后在YCbCr颜色空间中进行下采样,形成4:2:2格式。
图片分解成YCbCr的代码:
img=imread('flowers.tif');
figure(1), imshow(img);title('original image');
Y=0.299*img(:,:,1)+0.587*img(:,:,2)+0.114*img(:,:,3);
Cb=-0.1687*img(:,:,1)-0.3313*img(:,:,2)+0.5*img(:,:,3)+128;
Cr=0.5*img(:,:,1)-0.4187*img(:,:,2)-0.0813*img(:,:,3)+128;
%print Y, Cb, Cr components
figure(2), subplot (1,3,1), imshow(Y), title('Y,Cb,Cr components'),
subplot(1,3,2), imshow(Cb),subplot(1,3,3), imshow(Cr);
现在我需要做什么来执行下采样?
Cb(:, 2:2:end-1) = (Cb(:, 1:2:end-3) + Cb(:, 3:2:end-1))/2
。 - Bee