Listing 2
function rgb=myuv2rgb(yuv) % myuv2rgb Convert from YUV colorspace to RGB colorspace. % myuv2rgb(yuv) will convert the triplets in 'yuv' to RGB triplets. % 'yuv' may contain an N X 3 matrix of triplets or an M X N X 3 array % of triplets. % Copyright (C) 2003, Jeff Perry % jsp Created Tue Sep 16 18:22:52 CDT 2003 if ndims(yuv)==2 % SMTPE-240M Y'PbPr rgb(:,1) = yuv(:,1) + 1.5756.*yuv(:,3); rgb(:,2) = yuv(:,1) - 0.2253.*yuv(:,2) - 0.5000.*yuv(:,3); rgb(:,3) = yuv(:,1) + 1.8270.*yuv(:,2); elseif ndims(yuv)==3 % SMTPE-240M Y'PbPr rgb(:,:,1) = yuv(:,:,1) + 1.5756.*yuv(:,:,3); rgb(:,:,2) = yuv(:,:,1) - 0.2253.*yuv(:,:,2) - 0.5000.*yuv(:,:,3); rgb(:,:,3) = yuv(:,:,1) + 1.8270.*yuv(:,:,2); else error 'The input must be either N X 3 or M X N X 3'; end