Array divided by 255 gives me 0
Afficher commentaires plus anciens
I have an matrix that looks like this (but bigger)
[30 29 31;
29 30 30;
30 31 30]
now when I divide it by 255, it gives me this:
[0 0 0;
0 0 0;
0 0 0]
As far as I know I never changed anything with digits, does anyone have an idea what's going on?
Kind regards
edit: the matrix contains doubles
Réponses (2)
This is because you matrix was written in uint8. You should first convert it to double.
double([30 29 31; 29 30 30; 30 31 30])
It's not clear why it is in uint8 maybe you load some image or create uint8 matrix.
PS: uint8 means you got a 8 bit number so 2^8=256 which will give 0->255. If you need some help I can help you also in dutch.
2 commentaires
Thomas Koelen
le 7 Avr 2015
James Tursa
le 7 Avr 2015
Most likely you thought you had converted it to double, but hadn't. Then you restarted MATLAB and wiped out the evidence.
Ilham Hardy
le 7 Avr 2015
testmat = [30 29 31; 29 30 30; 30 31 30] ;
testmat =
30 29 31
29 30 30
30 31 30
>> testmatdev = testmat./255
testmatdev =
0.1176 0.1137 0.1216
0.1137 0.1176 0.1176
0.1176 0.1216 0.1176
1 commentaire
Thomas Koelen
le 7 Avr 2015
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!