Read and Display Selected Image from a Folder Based on Dimension

2 views (last 30 days)
I have a folder that contains 16 images. From these images, 9 of them have a dimension of 1280x1024, and the rest of them have different dimensions. How can I read and display these 9 images only?
folder = 'C:\Users\Documents\PhD\Analysis\Hot-Spot\';
jpeg_files = dir(fullfile(folder,'*.jpg'));
nfiles2 = length(jpeg_files);
for k = 1:nfiles2
currentimage{k} = imread(fullfile(folder,jpeg_files(k).name));
figure; imshow(currentimage{k}); % creates a new window for each image
end

Accepted Answer

Ameer Hamza
Ameer Hamza on 16 Apr 2020
Edited: Ameer Hamza on 16 Apr 2020
Try this
folder = 'C:\Users\Documents\PhD\Analysis\Hot-Spot\';
jpeg_files = dir(fullfile(folder,'*.jpg'));
img_info = cellfun(@(x) {imfinfo(x)}, fullfile({jpeg_files.folder}, {jpeg_files.name}));
img_dim = cellfun(@(x) {[x.Width x.Height]}, img_info)';
img_dim = cell2mat(img_dim);
idx = all(img_dim == [1280 1024], 2);
jpeg_files(~idx) = [];
nfiles2 = length(jpeg_files);
for k = 1:nfiles2
currentimage{k} = imread(fullfile(folder,jpeg_files(k).name));
figure; imshow(currentimage{k}); % creates a new window for each image
end
  9 Comments
Fahmi Akmal Dzulkifli
Fahmi Akmal Dzulkifli on 21 Apr 2020
Sorry Sir for disturbing, I just want to ask, can I delete the unwanted images from the folder automatically after selecting the nine images?
Ameer Hamza
Ameer Hamza on 21 Apr 2020
Can you start a new question and describe the problem in more detail. Paste the link here so that I will get a notification.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!