所以我的文件夹中有一个 .bmp 图像文件。
我使用 imread 加载它:
cv::Mat image = cv::imread( imageName, CV_LOAD_IMAGE_COLOR );
之后我查看它的尺寸:
std::cout<<"Rows: "<<image.rows <<" Cols:"<<image.cols<<" Dims:"<<image.dims<<std::endl;
这给了我:
行:480 列:640 尺寸:2
但是鉴于我有 RGB 图像,它不应该也是 3D Mat 吗?
最佳答案
是的,这很正常。
dims
定义为(来自 doc ):
int dims; //! the array dimensionality, >= 2
您应该查看 number of channels相反:
std:cout << "Channels: " << image.channels() << std::endl;
关于c++ - 当我要求彩色图像时,Opencv 的 imread 给我一个 2-D Mat,这正常吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38992463/