How to save an image using imwrite with a filename from a variable

44 次查看(过去 30 天)
I am saving a frame from a video as an image. Both the image and video should have the same name. How can I save an image with a file name from a variable? The filenames are stored in the variable videos.name
videos = dir('*.avi');
for i = 1:size(videos)
[pathstr,name,ext] = fileparts(videos(i).name)
V = VideoReader(videos(i).name);
oneframe = readFrame(V);
imshow(oneframe)
imwrite(oneframe, name, '.jpg')
end
Thank you very much!
  1 个评论
Jan
Jan 2018-3-19
编辑:Jan 2018-3-19
[MOVED from flag]
Adam Eshag wrote: "How can I save different preprocessed images in the same folder"
The answer sounds trivial: Provide different file names. Prefer to open a new thread and to add any details about what your problem is.
@Adam: Please use flags only to inform admins and editors about inappropriate contents like spam or rudeness. Thanks.

请先登录,再进行评论。

采纳的回答

Kirby Fears
Kirby Fears 2016-10-24
编辑:Kirby Fears 2016-10-24
Hi Nalini,
You can combine string values using square brackets. The syntax for imwrite using your variable names is as follows:
imwrite(oneframe, [name, '.jpg']);
Check your workspace to ensure name is the intended file name without a file extension.
Hope this helps

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by