Reading different images in a folder when they have similar extensions

2 views (last 30 days)
Hi,
Let's say I have 6 images in a folder. Three images are named SOU_123_001.tif , SOU_123_002.tif, SOU_123_003.tif, S and the other three images are labelled SOU_123_001_bin.tif, SOU_123_002_bin.tif, SOU_123_003_bin.tif. So the difference between the two sets of images files is the bin in the file name, I am able to use bin to specify only the bin images... code below
image_folder_binary = 'SAME_PATH_WITH_BOTH_FILE_TYPES';
filenames_bin = dir(fullfile(image_folder_binary, '*bin.tif')); % read all images with a sppecified extention, its tif in our case
binary_images = numel(filenames_bin);
I am not sure how to specify the non bin tif images.
Any help?

Accepted Answer

Sourav Ghai
Sourav Ghai on 23 Oct 2019
Edited: Sourav Ghai on 23 Oct 2019
Hi,
You can list the total number of files and subtract the '_bin.tif' files from them.
This can try this workaround.
clc;
clear all;
image_folder_binary = 'SAME_PATH_WITH_BOTH_FILE_TYPES';
filenames_bin = dir(fullfile(image_folder_binary,'*bin.tif'));
filenames_bin_2 = dir(fullfile(image_folder_binary,'*.tif'));
x = {filenames_bin.name}
y = {filenames_bin_2.name}
C = setdiff(y,x)
non_binary_images = numel(C)
binary_images = numel(x)
  3 Comments
Sourav Ghai
Sourav Ghai on 28 Oct 2019
You can use 'C' instead of 'filenames_bin_2'.
original_Images=fullfile(image_folder_binary, C(j)) ;
This will give you the list of non-bin files in the folder.
no zoop
no zoop on 28 Oct 2019
Hey, for anyone else reading this... C ends up being a cell array and you can't use full file with a cell array, you either need to change to a character to vector or string scalar. I couldn't figure out how to chage it into a struct, but instead turned it into a string using...
C = string(C)
and it worked!
If anyone knows how to properly convert this into a struct, I would love to know too!

Sign in to comment.

More Answers (0)

Categories

Find more on Images in Help Center and File Exchange

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!