2010-10-09 5 views

ответ

3

Как вы можете найти в функции MOVIE documentation, он воспроизводит фильм, который на самом деле представляет собой массив кадров. В свою очередь, рамка представляет собой одиночный «снимок» или неподвижное изображение, представленное в MATLAB структурой с полями cdata (матрица пиксельных данных) и цветовой схемой (если используется).

Вы можете создать рамку с текущего рисунка с помощью функции GETFRAME: F = getframe;. F.cdata будет матрицей изображений H x W x 3, с 3-м измерением, представляющей 3 цветовых канала - красный, зеленый и синий. Вы можете показать его командой image(F.cdata).

Если M - это кинокадры, вы можете показать только первый кадр с image(M(1).cdata).

Я бы порекомендовал вас сыграть с примерами на страницах справки MOVIE и GETFRAME, чтобы лучше понять.

+0

Hi yuk. Спасибо за ваше объяснение. Это было совершенно ясно. Но мне здесь немного сложно. Как показать содержимое cdata, чтобы я мог делать дальнейшие манипуляции? – view

+0

Не достаточно ли вам 'image' или' imshow'? Или объясните, что вы имеете в виду «показать контент»? – yuk

+0

в порядке. Я пытаюсь использовать функцию фильма для чтения видеоролика yuv и хранения данных. Как вы думаете, будет ли работать следующая часть программы: k = 1: nFrames mov (l) .cdata = loadFileYuv (...) end function loadFileYuv можно найти здесь http://stackoverflow.com/questions/3887494/how-to-extract-yu-and-v-components-from-a-given-yuv-file-using-matlab-each-com – view