why append does not working

6 views (last 30 days)
Rore
Rore on 2 Sep 2022
Edited: Rore on 3 Sep 2022
I'm trying to save multiple images in file
but it save one image
img1 = imread("try1.pgm");
img2 = imread( "try2.pgm");
folder = "/Users/roaaalnader/Documents/MATLAB/TryImg.tif" % file.tif path
folder=fullfile(folder,'img.tif') % to solve you don't have permission error
imwrite(img1,folder);
imwrite(img2,folder,'WriteMode','append' ); % here append doesn't work
%% see the attached picture the file has just the frist image
  9 Comments
Rore
Rore on 3 Sep 2022
I want all the image in the TryImg.tif with .tif extension
dpb
dpb on 3 Sep 2022
@Walter Roberson may be on to something with the file naming -- I didn't test that although I did notice it.
...
folder = "/Users/roaaalnader/Documents/MATLAB/TryImg"; % file .tif path
folder=fullfile(folder,'img.tif');
imwrite(img1,folder);
imwrite(img2,folder,'WriteMode','append' ); % here append doesn't work
Then your final file will be in file
/Users/roaaalnader/Documents/MATLAB/TryImg/img.tif
removing the extra .tif on the folder name.
Again, you didn't actually show us the results -- just telling us something isn't enough to be able to prove what did/did not happen.
Show the results between the imwrite calls asked for before so we can see actual results obtained -- we can't see your terminal from here, sorry.

Sign in to comment.

Answers (2)

Rore
Rore on 3 Sep 2022
Edited: Rore on 3 Sep 2022
Thank you so much for eveyone helped me .
I fixed the problem (append not working) by using sprintf('%d.tif', k); inside loop
to have different name for evey pictre like 1.tif , 2.tif , ...
THE CODE :
for k = 1:10
% read the images from one file
jpgFilename = sprintf('%d.pgm', k);
fullFileName = fullfile("filename", jpgFilename);
if exist(fullFileName, 'file')
imageData = imread(fullFileName );
else
warningMessage = sprintf('Warning: image file does not exist:\n%s', fullFileName);
uiwait(warndlg(warningMessage));
end
% then ,I did some process in the image
% after process , save the image
% find the file path to save the image inside it
folderCover="/Users/myName/Documents/MATLAB/Cover.tif"
% make name for every image -> 1.tif , 2.tif , 3.tif , ...
jpgFilename = sprintf('%d.tif', k);
fullFileNameCover = fullfile(folderCover, jpgFilename);
if k ==1 % first time to write
imwrite(imageData,fullFileNameCover );
else
imwrite(imageData,fullFileNameCover,'WriteMode','append')
end
end

Rore
Rore on 3 Sep 2022
'WriteMode' is not a recognized parameter is fixed
by using .tif extension to all images and file as

Community Treasure Hunt

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

Start Hunting!