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

1 次查看(过去 30 天)
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

采纳的回答

Sean
Sean 2015-2-22
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

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Graphics Performance 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by