How can i make an array of 100 images ?
Show older comments
I want to perform some feature vector operations on 100 images directly , how can i do that?
Answers (3)
Guillaume
on 8 Dec 2014
0 votes
You didn't give enough information to answer in any detail (for example what is the size of the images, how many channels, how are they stored, etc.), so:
If the images are all the same size concatenate them in a new dimension (dim 3 for single channel, dim 4 for RGB) with cat
If they're all different size, use a for loop.
4 Comments
Himanshu
on 8 Dec 2014
Guillaume
on 8 Dec 2014
Change your loop to:
files = dir(fullfile(image_folder, '*.png')); %filename as a variable name is not accurate
total_images = numel(filenames)
for n = 1:total_images
our_images{n} = imread(fullfile(image_folder, file.name));
feature{n} = your_feature_code(our_images{n});
%display code if you wish
%...
end
This assumes your_feature_code returns something else than a scalar. If it returns a scalar you can replace the {} with ()
amara zafar
on 6 Feb 2018
my images arre in tiff format does it work same way
Walter Roberson
on 6 Feb 2018
Yes, you can use imread() with tif images. However, tif can store multiple images in the same file, so in some circumstances you might need to take extra steps.
Himanshu
on 8 Dec 2014
Stalin Samuel
on 8 Dec 2014
Edited: Stalin Samuel
on 8 Dec 2014
0 votes
for example if u have images named as 1.jpg,2.jpg,....n.jpg then
for i = 1:no_of_images currentimage = imread( sprintf('ur_image directory_folder/%d.JPG',i) ); //your feature calculation feature(i)=your calculation end
Categories
Find more on Convert Image Type in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!