Remove empty image file in a ImageDatastore

5 vues (au cours des 30 derniers jours)
Zzz
Zzz le 6 Août 2021
I have a folder containing images, some of which are empty JPEG (Zero byte). How can I create a ImageDatastore and skip the null files?
I have tried using ReadFcn to create a custom read function, see below:
function data=readImages(filename)
try % Fetch dimensions of a JPEG, error returned if it is null
dim = infinfo(filename);
data = imread(filename);
catch error
disp('Null data detected') % Problem: need to define data value for this statement
end
end
  2 commentaires
Zzz
Zzz le 6 Août 2021
The problem with the above approach is that it doesn't really skip the null files, since I still need to define what 'data' is.
Drishan Poovaya
Drishan Poovaya le 10 Août 2021
I understand you want to avoid including any empty jpg files. For reference purposes, could you please attach one of these empty jpg files? It would be helpful to come up with a solution

Connectez-vous pour commenter.

Réponses (1)

Jayanti
Jayanti le 14 Mai 2025
Hi,
To ensure only valid images are used, you can first scan the image folder and filter out any files that are 0 bytes. And while creating the “ImageDatastore” only include those verified files. This way you will only have good images in your datastore.
Hope this will be helpful!

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by