在调用CV进行图像处理时,经常涉及图像格式转换,经常出现原始图像输入后CV_32F与ushort之间的数据差异导致程序报错,可使用std::cout << "dilated_type = " << weight.type() << std::endl;类型的语句输出MAT类型,进行对应的类型转换
Mat定义
是一个类,由两个数据部分构成,矩阵头(包含矩阵尺寸,存储方法,存储地址等等)和一个指向存储所有像素值的矩阵的指针
图像类型
图像类型=比特数+数据类型+通道数
存储元素的数据类型:
实际为:
CV_[位数][带符号与否][类型前缀]C[通道数] |
使用示例:
部分内容引自
c++ - C++下的OpenCV中Mat类型存储的图像格式_个人文章 - SegmentFault 思否 https://segmentfault.com/a/1190000015653101