Convertir uchar Tapis de flotter Tapis dans OpenCV?
Dans OpenCV, si j'ai un Tapis img qui contient uchar de données, comment puis-je convertir les données en float? Est-il une fonction disponible? Merci.
Vous devez vous connecter pour publier un commentaire.
Si vous vouliez dire, c++, alors vous avez
détails dans opencv2refman.pdf.
Mise à JOUR:
CV_32FC1 est pour 1 canal (C1, c'est à dire gris de l'image) float valeur (32F) pixels
CV_8UC1 est pour 1 canal (C1, c'est à dire gris de l'image) unsigned char (8UC) d'une valeur de ceux.
Mise à JOUR 2:
Selon Arthur Tacca, seulement
CV_32F
est correct (ou probablement CV_8U), depuis convertTo ne devrait pas modifier le nombre de canaux. Il semble logique non? Néanmoins, lorsque j'ai vérifié opencv manuel de référence, je ne pouvais pas trouver toutes les informations à ce sujet, mais je suis d'accord avec lui.32F
et8U
CV_32F
, PASCV_32FC1
, parce queconvertTo
prend un peu de profondeur, pas un nombre de canaux. C'est probablement juste une coïncidence, queCV_32FC1
fonctionne, parce qu'il a la même valeur numérique queCV_32F
. Je ne m'attends pas à par exempleCV_32FC3
au travail parce qu'il a une autre valeur numérique. Notez queconvertTo
ne change pas le nombre de canaux dans l'image.Utilisation
cvConvert
fonction. En Python: