Azzera filtri
Azzera filtri

Displaying a set of images from a folder

11 visualizzazioni (ultimi 30 giorni)
Hello. I need to place a button in my app that displays all the images from a folder one after another with a time delay on a UIAxes and another button that opens a figure. I'm having problems with understanding the process behind opening files via code in matlab. Can anyone help me a bit in this matter?

Risposta accettata

Walter Roberson
Walter Roberson il 19 Set 2021
Modificato: Walter Roberson il 19 Set 2021
projectdir = 'path/to/image/directory';
ext = '.png'; %adjust according to kind of images
dinfo = dir( fullfile( projectdir, "*"+ext) );
fullnames = fullfile({dinfo.folder}, {dinfo.name});
nfiles = length(fullnames);
ax = app.axes1; %place you want the image to be shown
h = image(ax, []); %create image object with empty content
for K = 1 : nfiles
thisfile = fullnames{K};
[thisimg, thismap] = imread(thisfile); %handles pseudocolor and rgb both
h.CData = thisimg; %update the existing image object with the new image
if ~isempty(thismap); colormap(ax, thismap); end %if needed, update colormap
pause(0.2);
end
The above code does not, however, account for true grayscale images. You would detect those as thismap being empty and ndims(thisimg) is 2 .
  2 Commenti
Filip Juchnicki
Filip Juchnicki il 19 Set 2021
Where is ext variable used?
Walter Roberson
Walter Roberson il 19 Set 2021
ext is used in
dinfo = dir( fullfile( projectdir, "*"+ext) );
So for example from .png it would construct the string "*.png" and that becomes the pattern that dir() is to search for -- files with that extension.

Accedi per commentare.

Più risposte (1)

Image Analyst
Image Analyst il 19 Set 2021

Categorie

Scopri di più su Convert Image Type in Help Center e File Exchange

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by