yuv2rgb matlab,yuv2rgb.m · zigzag2015/machinevision-toolbox-matlab - Gitee.com

%YUV2RGBConvert YUV format to RGB

%

%[r,g,b] = yuvread(y, u, v)

%rgb = yuvread(y, u, v)

%

%Returns the equivalent RGB image from YUV components. The Y image is

%halved in resolution.

% Copyright (C) 1993-2011, by Peter I. Corke

%

% This file is part of The Machine Vision Toolbox for Matlab (MVTB).

%

% MVTB is free software: you can redistribute it and/or modify

% it under the terms of the GNU Lesser General Public License as published by

% the Free Software Foundation, either version 3 of the License, or

% (at your option) any later version.

%

% MVTB is distributed in the hope that it will be useful,

% but WITHOUT ANY WARRANTY; without even the implied warranty of

% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

% GNU Lesser General Public License for more details.

%

% You should have received a copy of the GNU Leser General Public License

% along with MVTB. If not, see .

function [R,G,B] = yuv2rgb(y, u, v)

% subsample, probably should smooth first...

y = y(1:2:end, 1:2:end);

Cr = u - 128;

Cb = v - 128;

% convert to RGB

r = (y + 1.366*Cr - 0.002*Cb);

g = (y - 0.700*Cr - 0.334*Cb);

b = (y - 0.006*Cr + 1.732*Cb);

% clip the values into range [0, 255]

r = max(0, min(r, 255));

g = max(0, min(g, 255));

b = max(0, min(b, 255));

if nargout == 1,

R(:,:,1) = r;

R(:,:,2) = g;

R(:,:,3) = b;

else

R = r;

G = g;

B = b;

end

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值