gpt4 book ai didi

matlab用imread添加文本

转载 作者:行者123 更新时间:2023-12-01 15:23:22 27 4
gpt4 key购买 nike

我有一系列图像,我正在用这些图像创建电影循环。代码如下所示:

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);

我想根据创建的“时间”变量添加一个文本,它只是一个字符串“YYYYMMDD-HHMMSS”。我知道这可以通过以下方式完成:

imshow(thisimage);
text(300,500,timee, 'Color','white','FontSize',20);

但是当放在上面的循环中时,它只是简单地创建一个带有文本的新图形,而不是将其嵌入到图像中。

因此,如何在图像中添加文本并将其包含在电影循环中?注意:我无权访问 Computer Vision System Toolbox(因此,我无法使用“insertText”功能)

最佳答案

您的基本方法是正确的,但图像+文本没有传递给 writeVideo。诀窍是使用 getframe把它变成预期的格式。按如下方式修改您的 for 循环:

for i = 3:length(dir1)
filename = [path1,'/',dir1(i).name];
timee= dir2(i).name(29:43);
thisimage = imread(filename);

imshow(thisimage); % Load image to figure
text(300,500,timee, 'Color','white','FontSize',20); % Add text to figure
writeVideo(writerObj, getframe(gcf)); % Add figure to video
close(gcf); % Close the figure window
end

关于matlab用imread添加文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58753939/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com