当我要求彩色图像时,Opencv的imread给我一张二维垫是否正常?

时间:2016-08-17 09:12:07

标签: c++ image opencv

所以我的文件夹中有一个.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 Cols:640 Dims:2

但鉴于我有RGB图像,它不应该是3D Mat吗?

1 个答案:

答案 0 :(得分:4)

是的,这很正常。

dims定义为(来自doc):

  

int dims; //!数组维度,&gt; = 2

您应该看一下number of channels

std:cout << "Channels: " << image.channels() << std::endl;