Hi,
I am working on something where I have a vector of image files, and I get Matlab to shuffle them and give me one. I would like to take the output answer (the random image) and display it. How do I assign the output a name? I tried ans=RandImage, but that didn't work. Here's the code I have that leads up to this. Thanks!
Images = {'11a.bmp';'12b.bmp';'12c.bmp'; etc. etc.}
% Shuffle images
Images=Shuffle(Images)
Images{ceil(rand(1)*length(Images))}
%% Here's where Matlab gives me an image %%
ans = 11w.bmp
^ I would like to take this to somehow plug the output into the imread command.
Thanks!

 Respuesta aceptada

Orion
Orion el 5 de Nov. de 2014
Editada: Orion el 5 de Nov. de 2014

0 votos

Hi, for what I see, you need to do :
Images = {'11a.bmp';'12b.bmp';'12c.bmp'}; % list of images
RandomNumber = randi([1 length(Images)]); % random number between 1 and the number of images
image(imread(Images{RandomNumber)) % display the random image.

2 comentarios

Chelsea
Chelsea el 5 de Nov. de 2014
Editada: Chelsea el 5 de Nov. de 2014
Thanks for your response! I've figured it out :)
Orion
Orion el 5 de Nov. de 2014
just create an output variable.
Images = {'11a.bmp';'12b.bmp';'12c.bmp'; etc. etc.}
% Shuffle images
Images=Shuffle(Images)
MyRandomImage = Images{ceil(rand(1)*length(Images))};
then use
image(imread(MyRandomImage))
One Important thing : ans is a key word in matlab, try to never use it, otherwise you're gonna have some trouble later.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 5 de Nov. de 2014

Comentada:

el 5 de Nov. de 2014

Community Treasure Hunt

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

Start Hunting!

Translated by