convert image from uint8 to double

135 vues (au cours des 30 derniers jours)
S
S le 26 Mai 2011
Commenté : DGM le 18 Juin 2024
Hi,
Could someone tells me the difference between 'I=im2double(I);' and 'I=double(I);'. I have a simple image called 'I' with the following properties
Name Size Bytes Class Attributes
I 512x512 262144 uint8
when I apply the first command it gives me the following error message:
??? Undefined function or method 'im2double' for input arguments of type 'uint8'.
But the second command is ok. Why?
I appreciate your help
S:)

Réponse acceptée

Steve Eddins
Steve Eddins le 26 Mai 2011
You are getting the message "Undefined function or method 'im2double' ..." because that function is part of the Image Processing Toolbox, not MATLAB. Either you don't have the Image Processing Toolbox, or it is not installed correctly.
The function im2double scales the output double-precision values to the range [0.0, 1.0]. The function uint8 does not do this scaling.
  2 commentaires
Sean de Wolski
Sean de Wolski le 26 Mai 2011
Personally, I avoid im2double for this very reason. ;)
DGM
DGM le 18 Juin 2024
Since R2014b, im2double() is in the base toolbox.

Connectez-vous pour commenter.

Plus de réponses (1)

chelfremi
chelfremi le 12 Fév 2017
I used
pic = imread('wk2.gif');
im2double(pic);
My original pic was Unit8
Then it gives me:
  3 commentaires
Harizi Amira
Harizi Amira le 25 Mai 2019
Where can I put this instruction to get the result in all cells ?ff.PNG
Walter Roberson
Walter Roberson le 25 Mai 2019
ffdouble = cellfun(@im2double, ff, 'uniform', 0);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Convert Image Type dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by