2012-11-21 14 views

risposta

15

OpenCV Equivalente C/C++ tipi di dati:

CV_8U ->unsigned char (min = 0, max = 255)

CV_8S ->char (min = -128, max = 127)

CV_16U ->unsigned short (min = 0, max = 65535)

CV_16S ->short (min = -32768, max = 32767)

CV_32S ->int (min = -2147483648, max = 2147483647)

CV_32F ->float

CV_64F ->double

Controllare this tutorial per i campi di tipo di dati.

Una cosa da considerare è che mentre la visualizzazione di immagini di tipo CV_32F o CV_64F con imshow o cvShowImage, OpenCV prevede valori normalizzati tra 0,0 e 1,0. Altrimenti, satura i valori dei pixel.

+0

Grazie! Li metterò alla prova tutti. –

+1

Grazie! Questo dovrebbe essere sulla prima pagina della documentazione di OpenCV – Mirror318

+0

Sarebbe bello se cv :: Mat avesse una funzione per interrogare queste informazioni –

1

CV_32F indica un numero in virgola mobile a 32 bit. CV_32S significa un numero intero con segno a 32 bit. Sono sicuro che puoi indovinare cosa significa CV_64F. Internet è pieno di riferimenti per le gamme che possono assumere diversi tipi di dati, ad esempio here è 32S.

+0

Finora ho già ottenuto. Ma OpenCV usa l'intera gamma? Significato numeric_limits :: max() sarà bianco e numeric_limits :: min() sarà nero per un CV_32FC1? –

+3

per CV_32F, 0.0 è nero e 1.0 è bianco. – sgarizvi

Problemi correlati