writing an image into folder
Ältere Kommentare anzeigen
I have 100 images in an folder ,and have performed some operation on it ,now i have subplotted those images ,so now i have single figure window,now i want to write that figure window into an folder,i have created an folder,but dont know how to write that figure window,please help
I have posted the code
clc;
close all;
f1=fullfile('D:','new');
if (exist(f1) == 0)
mkdir (f1);
end
pathname ='D:\dataset\' ;
dirlist = dir( [pathname '*.jpg'] );
pickind='jpg';
for m = 1:length(dirlist)
rgbimage=double( imread([pathname, dirlist(x).name]));
% Read standard MATLAB demo image.
%rgbImage = imread('onion.png');
% Display the original image.
subplot(3, 4, 1);
imshow(rgbImage);
title('Original RGB Image');
% Maximize figure.
set(gcf, 'Position', get(0, 'ScreenSize'));
% Split the original image into color bands.
redBand = rgbImage(:,:, 1);
greenBand = rgbImage(:,:, 2);
blueBand = rgbImage(:,:, 3);
% Display them.
subplot(3, 4, 2);
imshow(redBand);
title('Red band');
subplot(3, 4, 3);
imshow(greenBand);
title('Green band');
subplot(3, 4, 4);
imshow(blueBand);
title('Blue Band');
% Threshold each color band.
redthreshold = 68;
greenThreshold = 70;
blueThreshold = 72;
redMask = (redBand > redthreshold);
greenMask = (greenBand < greenThreshold);
blueMask = (blueBand < blueThreshold);
% Display them.
subplot(3, 4, 6);
imshow(redMask, []);
title('Red Mask');
subplot(3, 4, 7);
imshow(greenMask, []);
title('Green Mask');
subplot(3, 4, 8);
imshow(blueMask, []);
title('Blue Mask');
% Combine the masks to find where all 3 are "true."
redObjectsMask = uint8(redMask & greenMask & blueMask);
subplot(3, 4, 9);
imshow(redObjectsMask, []);
title('Red Objects Mask');
maskedrgbImage = uint8(zeros(size(redObjectsMask))); % Initialize
maskedrgbImage(:,:,1) = rgbImage(:,:,1) .* redObjectsMask;
maskedrgbImage(:,:,2) = rgbImage(:,:,2) .* redObjectsMask;
maskedrgbImage(:,:,3) = rgbImage(:,:,3) .* redObjectsMask;
subplot(3, 4, 10);
imshow(maskedrgbImage);
title('Masked Original Image');
end
Antworten (2)
Sean de Wolski
am 7 Dez. 2011
doc print
More to Clarify Comments
H = figure;
for ii = 321:326
subplot(ii)
imagesc(magic(ceil(rand*10))); %random fig with 6 subplots
end
print('-dbmp256' , 'picture_of_6_subplots') %save as bmp
7 Kommentare
Pat
am 7 Dez. 2011
Sean de Wolski
am 7 Dez. 2011
tpye:
doc print
at the command line and it will explain to you how to print your figure to an image.
Pat
am 7 Dez. 2011
Sean de Wolski
am 7 Dez. 2011
Did you read the documentation in doc print? If you choose your printer to be an image writer, you'll get an image. There are examples at the bottom.
Pat
am 7 Dez. 2011
Sean de Wolski
am 7 Dez. 2011
see clarification.
Titus Edelhofer
am 7 Dez. 2011
Hi Pat, please describe more detailed, what you want: do you want to save your 6 subplots to 6 different image files?
Image Analyst
am 7 Dez. 2011
0 Stimmen
Ah, our daily "how do I save a figure" question. Please refer to the FAQ: http://matlab.wikia.com/wiki/FAQ#How_do_I_save_my_figure.2C_axes.2C_or_image.3F_I.27m_having_trouble_with_the_built_in_MATLAB_functions.
Kategorien
Mehr zu Display Image finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!