Save a group of processed imags output from a for loop in a specific folder
    3 views (last 30 days)
  
       Show older comments
    
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);
0 Comments
Accepted Answer
  Image Analyst
      
      
 on 10 Nov 2019
        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 Comments
  Image Analyst
      
      
 on 10 Nov 2019
				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.).
More Answers (1)
  Ajay Kumar
      
 on 9 Nov 2019
        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 Comments
  Ajay Kumar
      
 on 11 Nov 2019
				you need to edit the line
FileName = fullfile(SNLImagepath, sprintf(ImageName,ext));
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
