Effacer les filtres
Effacer les filtres

How to read and pre-process the multiple images and write in specific location?

2 vues (au cours des 30 derniers jours)
function preprocessing_multiple
srcFiles = dir('C:\Users\LENOVO\Desktop\Genuine\1\*.png'); % the folder in which ur images exists
for i = 1 : length(srcFiles)
filename = strcat('C:\Users\LENOVO\Desktop\Genuine\1\',srcFiles(i).name);
I = rgb2gray(imread(filename));
imshow(I)
I2=medfilt2(I);
figure,imshow(I2)
imwrite(I2,fullfile('C:\Users\LENOVO\Desktop\','*.png'));
end
I got error in above code:
Error using imwrite (line 454)
Unable to open file "C:\Users\LENOVO\Desktop\*.png" for writing. You may not
have write permission.
Error in preprocessing_multiple (line 11)
imwrite(I2,fullfile('C:\Users\LENOVO\Desktop\','*.png'));
  1 commentaire
Walter Roberson
Walter Roberson le 11 Fév 2019
Every iteration you are trying to write to the same file whose name is literally *.png

Connectez-vous pour commenter.

Réponse acceptée

Geoff Hayes
Geoff Hayes le 11 Fév 2019
Regina - in your line of code
imwrite(I2,fullfile('C:\Users\LENOVO\Desktop\','*.png'));
which file are you trying to write to? You are not specifying a file name and are instead using the wildcard character. Try changing the above line of code so that you explicitly set the filename to which you want to write the I2 data to.
  3 commentaires
Geoff Hayes
Geoff Hayes le 13 Fév 2019
Regina - look closely at your code
for i = 1 : length(srcFiles)
filename = strcat('C:\Users\LENOVO\Desktop\Genuine\1\',srcFiles(i).name);
I = rgb2gray(imread(filename));
imshow(I)
I2=medfilt2(I);
figure,imshow(I2)
imwrite(I2,fullfile('C:\Users\LENOVO\Desktop\','*.png'));
end
The code is looping over all of the files that you have found, reading the file, doing some processing, and then (trying) to write to an incorrectly named file. So you won't be able to save all the preprocessed images in one line code. Instead, you can save each preprocessed file one at a time by replacing
imwrite(I2,fullfile('C:\Users\LENOVO\Desktop\','*.png'));
with
imwrite(I2,fullfile('C:\Users\LENOVO\Desktop\', srcFiles(i).name));
The above assumes that you want to write to a file with the same name as the original file (just in a different folder).
Regina N
Regina N le 14 Fév 2019
Actually i am new to matlab....so....bt thank you so much for helping me..it works..thanx again

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by