C++ 检查OpenCV矩阵是否为浮点组件类型
我想在运行时测试C++ 检查OpenCV矩阵是否为浮点组件类型,c++,opencv,matrix,C++,Opencv,Matrix,我想在运行时测试cv::Mat是否具有浮点组件类型,即其类型是否为cv_32Fxx和cv_64Fxx之一。如果(mat.type()%8>=5){/*…*/},我可以使用来实现这一点,但是如果OpenCV经过进一步开发,这看起来没有表现力,并且可能是错误的 有更好的方法吗?您正在寻找的是OpenCV,它报告元素的“深度”:要么CV\u 8U,CV\u 8S,CV\u 16U,CV\u 16S,CV\u 32S,CV\u 32F或者CV\u 64F。为了方便起见,您可以将其与前两个进行比较。不起作
cv::Mat
是否具有浮点组件类型,即其类型是否为cv_32Fxx
和cv_64Fxx
之一。如果(mat.type()%8>=5){/*…*/},我可以使用来实现这一点,但是如果OpenCV经过进一步开发,这看起来没有表现力,并且可能是错误的
有更好的方法吗?您正在寻找的是OpenCV,它报告元素的“深度”:要么CV\u 8U
,CV\u 8S
,CV\u 16U
,CV\u 16S
,CV\u 32S
,CV\u 32F
或者CV\u 64F
。为了方便起见,您可以将其与前两个进行比较。不起作用吗?这正是我要找的。我只是在搜索错误的单词,如“组件类型”、“组件大小”、“每个组件的位数”、“每个通道的位数”、“通道类型”。。。我快疯了。请把它写成一个答案。那我就接受了。