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

10 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

Sean
Sean am 22 Feb. 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

Weitere Antworten (0)

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by