The primitive types in OpenCV are
unsigned char, bool, signed char, unsigned short, signed short, int, float, double.
Any data type in OpenCV is defined as
CV_32FC2 is a 32-bit, floating-point, and 2-channels structure. and the definition of basic, one channel types are
#define CV_8U 0 #define CV_8S 1 #define CV_16U 2 #define CV_16S 3 #define CV_32S 4 #define CV_32F 5 #define CV_64F 6 #define CV_USRTYPE1 7
The other types with higher channel are produced from these by the following definition:
#define CV_MAKETYPE(depth,cn) (CV_MAT_DEPTH(depth) + (((cn)-1) << CV_CN_SHIFT))
Using these datatypes other structures can be created.