Effacer les filtres
Effacer les filtres

Creating new Figures from a batch of processed images and writing the new figures to a new folder.

2 vues (au cours des 30 derniers jours)
The code below reads in a batch of images from a folder 'FlatImages', uses a function to mark white edges on the data, creates a new figure of the original image with the new regions marked. How Would I go about writing the new figures to A new folder called 'SegmentedImages'? I'm not very familiar with the print function??
InputFolder = fullfile(pwd, 'FlatImages');
filePattern = fullfile(InputFolder, '*.bmp');
BmpFiles = dir(filePattern);
OutputFolder = fullfile(pwd, 'SegmentedImages');
for i=1:length(BmpFiles)
fname = BmpFiles(i).name;
FullFileNameInput=fullfile(InputFolder, fname);
A=imread(FullFileNameInput);
[s f]=get_white_edges2(A);
Fname_out=['WE_' fname];
figure, imshow(A); hold on; plot([s f]);
FullFileNameOutput=fullfile(OutputFolder, Fname_out);
print(A, FullFileNameOutput);
end

Réponse acceptée

Sean
Sean le 22 Fév 2015
Got it working with the code below:
InputFolder = fullfile(pwd, 'FlatImages');
filePattern = fullfile(InputFolder, '*.bmp');
BmpFiles = dir(filePattern);
OutputFolder = fullfile(pwd, 'SegmentedImages');
for i=1:length(BmpFiles)
fname = BmpFiles(i).name;
FullFileNameInput=fullfile(InputFolder, fname);
A=imread(FullFileNameInput);
[s f]=get_white_edges2(A);
Fname_out=['WE_' fname];
%FullFileNameOutput=fullfile(OutputFolder);
figure; imshow(A); hold on; plot([s f]);
FullFileNameOutput=fullfile(OutputFolder, Fname_out);
print(gcf, '-dbmp', FullFileNameOutput);
end

Plus de réponses (0)

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by