我正在使用Simulink来开发我的算法。 我有一个尺寸为640x360的视频流。我试图从每个帧中提取感兴趣区域(ROI)。但是,当我使用以下代码时,我的视频变为灰度:
我用于ROI提取的MATLAB功能块:
function y = fcn(u)
%some more code
width = 639;
height = 210;
top = 150;
left = 1;
y = u(top:top+height, left:left+width);
答案 0 :(得分:1)
<强>解决方案强>
按如下方式更改最后一行:
y = u(top:top+height, left:left+width,:);
<强>解释强>
RGB图像的尺寸实际上是mxnx3。 m和n是图像的高度和宽度,有3个通道:红色,绿色和蓝色。
执行RGB图像裁剪时,应分别在每个通道上执行。您可以使用我上面的代码示例来实现这一点。