writeVideo

Запишите видеоданные в файл

Описание

writeVideo(v,img) записывает данные от массива до видеофайла, сопоставленного с v.

Необходимо вызвать open(v) прежде, чем вызвать writeVideo.

пример

writeVideo(v,frame) записи один или несколько кадров фильма, обычно возвращенных getframe функция.

Примеры

свернуть все

Запишите изображение RGB в файл Motion JPEG 2000 со сжатием без потерь.

Создайте массив, содержащий данные из демонстрационного неподвижного изображения, peppers.png.

A = imread('peppers.png');

Создайте VideoWriter объект для нового видеофайла. Используйте 'Archival' профилируйте, чтобы задать файл Motion JPEG 2000 со сжатием без потерь.

v = VideoWriter('myFile','Archival');

Проверьте тип сжатия видео для нового файла.

v.VideoCompressionMethod
ans = 
'Motion JPEG 2000'

Откройте видеофайл для записи. Затем напишите данные изображения в A к файлу.

open(v)
writeVideo(v,A)

Закройте видеофайл.

close(v)

Считайте изображение, и данные о палитре из выборки индексировали файл изображения, corn.tif.

[X,map] = imread('corn.tif');

Создайте VideoWriter объект для нового индексировал файл AVI.

v = VideoWriter('myIndexed.avi','Indexed AVI');

Присвойте данные о палитре Colormap свойство v.

v.Colormap = map;

Откройте файл для записи. После того, как вы откроете файл, вы не можете изменить свойства v.

open(v)

Напишите данные изображения в X к видеофайлу. Затем закройте файл.

writeVideo(v,X)
close(v)

Преобразуйте файл в качестве примера, xylophone.mp4, к несжатому файлу AVI.

Создайте объекты считать и записать видео и открыть файл AVI для записи.

reader = VideoReader('xylophone.mp4');
writer = VideoWriter('transcoded_xylophone.avi', ...
                        'Uncompressed AVI');

writer.FrameRate = reader.FrameRate;
open(writer);

Считайте и запишите каждую систему координат.

while hasFrame(reader)
   img = readFrame(reader);
   writeVideo(writer,img);
end

close(writer);

Запишите последовательность систем координат к сжатому файлу AVI путем генерации последовательности систем координат, создания видео объекта для файла, чтобы записать в, и затем записи систем координат в видеофайл.

Setup оси и свойства фигуры сгенерировать системы координат для видео.

Z = peaks;
surf(Z); 
axis tight manual 
set(gca,'nextplot','replacechildren'); 

Создайте видео объект средства записи для выходного видеофайла и откройте объект для записи.

v = VideoWriter('peaks.avi');
open(v);

Сгенерируйте набор систем координат, получите систему координат от фигуры, и затем запишите каждую систему координат в файл.

for k = 1:20 
   surf(sin(2*pi*k/20)*Z,Z)
   frame = getframe(gcf);
   writeVideo(v,frame);
end

close(v);

Входные параметры

свернуть все

Введите VideoWriter объект. Используйте VideoWriter создать объект.

Значения, представляющие полутоновые изображения или цветные изображения RGB в виде 2D, 3-D, или 4-D массива:

  • Для одной шкалы полутонов, монохрома, или индексированного изображения, img должно быть двумерным: высота шириной

  • Для одного истинного цвета (RGB) изображение, img является трехмерным: высота шириной 3.

  • Для последовательности полутоновых изображений, img четыре dimensional:. высота шириной 1 системами координат. Высота и ширина должны быть сопоставимыми для всех систем координат в файле.

  • Для последовательности изображений RGB, img является четырехмерным: высота шириной 3 системами координат. Высота и ширина должны быть сопоставимыми для всех систем координат в файле.

При создании AVI или MPEG 4 файла:

  • img массив single'double', или uint8 значения, представляющие одно или несколько полутоновых изображений или цветных изображений RGB, который writeVideo записи как один или несколько видеокадров RGB.

  • Данные типа single или double должен быть в области значений [0,1], кроме тех случаев, когда запись индексировала файлы AVI.

При создании файлов Motion JPEG 2000:

  • img массив uint8int8uint16, или int16 значения, представляющие одно или несколько монохромных или цветных изображений RGB.

Типы данных: single | double | int8 | int16 | uint8 | uint16

Структурируйте данные в виде массива структур 1 на 1, представляющего одну систему координат или 1 F массив структур, представляющих несколько систем координат. Каждая система координат содержит два поля: cdata и colormap. frame массив обычно возвращается getframe функция.

Если colormap не пусто, затем каждый элемент cdata должно быть 2D (высота шириной) массив. Высота и ширина должны быть сопоставимыми для всех систем координат в файле.

colormap может содержать максимум 256 записей. Каждый элемент colormap должен быть в области значений [0,1].

Когда вы создаете VideoWriter объект. profile введите и размер cdata определите как writeVideo использование frame.

profile из VideoWriter объектРазмер каждого элемента cdata Поведение writeVideo

'Indexed AVI'

2D (высота шириной)Используйте систему координат как предусмотрено.
'Grayscale AVI'2D (высота шириной)Используйте систему координат как предусмотрено. colormap должно быть пустым.

Все другие профили

2D (высота шириной)Создайте фреймы изображения RGB с помощью colormap поле
3-D (высота шириной 3)Проигнорируйте colormap поле . Создайте фреймы изображения RGB с помощью cdata поле

Типы данных: struct

Смотрите также

| | |

Представленный в R2010b