概述:
imread()是opencv中用于读取图片的一个工具。怎么读取图片看似一个很简单的工作,但实际上也有一些细节需要我们注意,以避免在后续的操作中出现bug。
函数原型:
函数原型:
Mat imread( const String& filename, int flags = IMREAD_COLOR );
相关参数:
- filename: 图像的绝对路径(从哪里读取图像?)
- flags :控制图像的读入方式 其中取值为
0:读取灰度图 1:读取彩色图 < 0: 以图像原来的格式读入图像
一些小问题:
1.如果我令flag=0(灰度图读取方式),来读取彩色图像,会怎样呢?
其中,上图为原图,下图为结果图,可见,假如以读入灰度图的方式读入彩色图,imread()会自动把图像转化为灰度图。
2.那如果我令flag=1(读取彩色图的方式),来读取一张灰度图呢?
能正常滴读入图像,但是图像会以三个通道(矩阵),且每个通道(矩阵)一致的方式来储存。