2016-06-12 3 views
0

Я работаю над Simulink для разработки моего алгоритма. У меня есть видеопоток размером 640x360. Я пытаюсь извлечь область интереса (ROI) из каждого кадра. Тем не менее, мое видео превращается в оттенках серого, когда я использую следующий код:Извлечение RoI в видео

MATLAB Функциональный блок, который я использую для извлечения ROI:

function y = fcn(u) 

%some more code 

width = 639; 
height = 210; 
top = 150; 
left = 1; 
y = u(top:top+height, left:left+width); 

ответ

1

Решение

Изменение последней строки следующим образом :

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

Объяснение

Размеры изображения RGB на самом деле являются mxnx3. M и n - высота и ширина изображения, а также 3 канала: красный, зеленый и синий.

Когда вы выполняете обрезку изображения RGB, оно должно выполняться по каждому каналу отдельно. Вы можете добиться этого, используя приведенный выше пример кода.