我尝试了很多常量值,但我找不到 cvtype 值之间的任何区别。这有什么用途?我尝试了 和 之类CV_8UC4
的值CV_16S
。我没有在参考资料中找到此信息。
3 回答
类型的命名方案是CV_<bit-depth>{U|S|F}C<number_of_channels>
.
因此CV_8UC4
转换为:四个通道的无符号字符并CV_16S
转换为:1 个带符号的 2 字节整数通道。
当然,该主题在文档中处理。在这里您可以找到更多信息。
CV_8U - 8 位无符号整数 (0..255)
CV_8S - 8 位有符号整数 (-128..127)
CV_16U - 16 位无符号整数 (0..65535)
CV_16S - 16 位有符号整数 (-32768..32767)
CV_32S - 32 位有符号整数 (-2147483648..2147483647)
CV_32F - 32 位浮点数(-FLT_MAX..FLT_MAX, INF, NAN)
CV_64F - 64 位浮点数(-DBL_MAX..DBL_MAX, INF, NAN)
8 位无符号整数 (uchar)
8 位有符号整数 (schar)
16 位无符号整数 (ushort)
16 位有符号整数(短)
32 位有符号整数 (int)
32 位浮点数 (float)
64 位浮点数(双精度)
枚举 { CV_8U=0, CV_8S=1, CV_16U=2, CV_16S=3, CV_32S=4, CV_32F=5, CV_64F=6 };
为了完成 Farshid PirahanSiah 的回答,
OpenCV中类型到数字的映射: 表格格式
或长文本:
无符号 8bits uchar 0~255
Mat: CV_8UC1, CV_8UC2, CV_8UC3, CV_8UC4
有符号 8bits char -128~127
Mat: CV_8SC1,CV_8SC2,CV_8SC3,CV_8SC4
无符号 16bits ushort 0~65535
Mat: CV_16UC1,CV_16UC2,CV_16UC3,CV_16UC4
有符号 16 位短 -32768~32767
Mat: CV_16SC1,CV_16SC2,CV_16SC3,CV_16SC4
带符号的 32 位整数 -2147483648~2147483647
Mat: CV_32SC1,CV_32SC2,CV_32SC3,CV_32SC4
浮点 32 位浮点 -1.18*10-38~3.40*10-38
Mat: CV_32FC1,CV_32FC2,CV_32FC3,CV_32FC4
双64位双
Mat: CV_64FC1,CV_64FC2,CV_64FC3,CV_64FC4