Save a group of processed imags output from a for loop in a specific folder

2 次查看(过去 30 天)
Hello,
I have an image database, i process them through a for loop, i want to save the output processed images in anther folder, i have the following error when i trying to do that:
Error using imwrite
unable to open file " ********.bmp" for writing. you might not have write permission
the code i have used is:
SNLImagepath='F:\SNL_images\';
FileName = fullfile(savepath, sprintf(ImageName,ext));
imwrite(a, FileName);

采纳的回答

Image Analyst
Image Analyst 2019-11-10
You gave the wrong path. "savepath" is a built in function, and you're trying to call it when you call fullfile()! You should pass in SNLImagepath, not savepath. Plus you're calling sprintf() incorrectly -- you didn't give it a specification string.
Try this:
SNLImagepath='F:\Biometrics\Eman\Eman_test_SNL_Gabor\SNL_images'
FileName = fullfile(SNLImagepath, sprintf('%s%s', ImageName,ext));
imwrite(a, FileName);
  3 个评论
Image Analyst
Image Analyst 2019-11-10
MATLAB does NOT see the % symbol as a comment when it's embedded in a string, like I did here. You might want to learn how to use format specifier strings since it's common to all programming languages. That's the protocol where you use %, some numbers, and a letter that indicates the variable type (f, d, s, etc.).
Amelia
Amelia 2019-11-12
Iam sorry, i didnot notice the single comma befor and after % sign, it appears that is the reason of the error i have.
Thanks again.

请先登录,再进行评论。

更多回答(1 个)

Ajay Kumar
Ajay Kumar 2019-11-9
Have you correctly given the permission to the folder you are writing?
Once try this,
savepath = 'C:\Some_dir\Some_folder';
FileName = fullfile(savepath, sprintf(ImageName,ext));
imwrite(a, FileName);
  3 个评论

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by