在视频中提取RoI

时间:2016-06-12 19:00:47

标签: matlab simulink

我正在使用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);

1 个答案:

答案 0 :(得分:1)

<强>解决方案

按如下方式更改最后一行:

y = u(top:top+height, left:left+width,:);

<强>解释

RGB图像的尺寸实际上是mxnx3。 m和n是图像的高度和宽度,有3个通道:红色,绿色和蓝色。

执行RGB图像裁剪时,应分别在每个通道上执行。您可以使用我上面的代码示例来实现这一点。