我有一系列用于创建影片循环的图像。该代码如下所示:
path1 = '/path/to/data';
dir1 = dir(path1);
writerObj = VideoWriter('video.avi');
writerObj.FrameRate = 10;
writerObj.Quality = 100;
open(writerObj);
for i = 3:length(dir1)
filename = [path1,'/',dir1(i).name];
timee= dir2(i).name(29:43);
thisimage = imread(filename);
writeVideo(writerObj, thisimage);
end
close(writerObj);
我想基于创建的'time'变量添加文本,它只是一个字符串'YYYYMMDD-HHMMSS'。我知道可以这样:
imshow(thisimage);
text(300,500,timee, 'Color','white','FontSize',20);
但是当放在上面的循环中时,它只是简单地用文本创建了一个新图形,而不是将其嵌入到图像中。
因此,如何在图像中添加文本并将其包含在影片循环中?注意:我无权访问计算机视觉系统工具箱(因此,我无法使用“ insertText”功能)
您的基本方法是正确的,但是图像+文本没有传递给writeVideo。诀窍是使用getframe
将其转换为预期的格式。修改您的getframe
循环,如下所示:
for