CvType 类型
在 Android 开发中,CvType 是 OpenCV(Open Source Computer Vision Library)提供的一个类,它定义了 Mat(矩阵) 数据的存储类型。不同的 CvType 代表不同的 通道数(C) 和 每个通道的数据类型(depth) 。
CV_<bit-depth>U | CV_<bit-depth>S | CV_<bit-depth>F + C
• bit-depth:表示每个通道的数据位数(如 8、16、32、64)
• U(Unsigned)表示 无符号整数
• S(Signed)表示 有符号整数
• F(Float)表示 浮点数
• C:表示 通道数(1~4,一般是 1(灰度)、3(RGB)、4(RGBA))
CvType 主要类型
选择合适的图像类型
普通灰度图 → CV_8UC1
• 普通 RGB 图像 → CV_8UC3
• 带透明度的图像 → CV_8UC4
• 深度图 → CV_16UC1
• 高精度计算(滤波、特征点) → CV_32FC1
• 极高精度计算 → CV_64FC1
用法示例
Mat img8Bit = new Mat(100, 100, CvType.CV_8UC3); // 8位 RGB
Mat img16Bit = new Mat(100, 100, CvType.CV_16UC1); // 16位 灰度
Mat img32Bit = new Mat(100, 100, CvType.CV_32FC1); // 32位 浮点
备注
按需,按API要求的格式进行使用