How to read and pre-process the multiple images and write in specific location?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Regina N
el 11 de Feb. de 2019
Comentada: Regina N
el 14 de Feb. de 2019
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 comentario
Walter Roberson
el 11 de Feb. de 2019
Every iteration you are trying to write to the same file whose name is literally *.png
Respuesta aceptada
Geoff Hayes
el 11 de Feb. de 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 comentarios
Geoff Hayes
el 13 de Feb. de 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).
Más respuestas (0)
Ver también
Categorías
Más información sobre MATLAB Support Package for Raspberry Pi Hardware en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!