Displaying GIF Image Matlab
Show older comments
I tried using this code
[X,map] = imread('electricity.gif');
imshow(X,map)
I also tried looking at online help but it does not solve my problem.
Thank you
6 Comments
Walter Roberson
on 21 Apr 2012
"moves" -- do you mean that it is animated GIF ? If so then do you want it to animate but it currently does not, or does it currently animate and you want it to be static ?
Rooy
on 21 Apr 2012
Edited: Walter Roberson
on 23 Apr 2019
Rooy
on 21 Apr 2012
BERGHOUT Tarek
on 6 Feb 2017
may be u need to create a programe that shows each frame evry time
Maram Abd
on 6 Feb 2021
what is the ansower ?
Image Analyst
on 6 Feb 2021
@Maram Abd, scroll down to see the "Answers". These are just "Comments" up here which are typically used to ask the poster to clarify the question and/or attach missing data or code. Steve's Image Processing Blog in the blog section here has also discussed GIF images
Accepted Answer
More Answers (2)
Walter Roberson
on 21 Apr 2012
Edited: Walter Roberson
on 6 Feb 2017
0 votes
GIF Player from File Exchange
3 Comments
Gopinath Karuppannan
on 15 Feb 2020
Hello Walter
By using GIF player script, i am getting error in the Matrix dimensions. I have attached the error image as well as gif file. Please find in attachment.
Image Analyst
on 15 Feb 2020
current_frame is probably an RGB image, and transparent_color might be a 3 element vector so you can't compare them that way. You might have to compare one color channel at a time
redMask = currentFrame(:, :, 1) == transparent_color(1);
greenMask = currentFrame(:, :, 2) == transparent_color(2);
blueMask = currentFrame(:, :, 3) == transparent_color(3);
If you want an overall mask where all 3 are true, then AND them together
mask = redMask & greenMask & blueMask;
FWIW, that error was an error internal to readgif(), which is used internally by imread(). At least as of R2019b, current_frame should be an indexed image during this test (if I recall correctly), and transparent_color should then be a scalar as defined in the file/frame header.
I don't exactly know why readgif() breaks in this one case that nobody needs solved anymore. The file isn't the most common sort of arrangement. There may be GIF functionality imread() doesn't support, and some things it really just can't support in an ideal way due to the conventions for image handling in MATLAB. So don't be surprised if readgif() breaks or returns garbage.
For what it's worth, the file can be re-saved using 'donotspecify' disposal instead of 'leaveinplace', and it reads fine and looks the same.
Rooy
on 21 Apr 2012
0 votes
Categories
Find more on Convert Image Type in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




