当前位置: 代码迷 >> VC >> CImage类的使用:此类对象的存储格式是什么情况,和OPENCV的IPLIMAGE类相比区别在哪儿
  详细解决方案

CImage类的使用:此类对象的存储格式是什么情况,和OPENCV的IPLIMAGE类相比区别在哪儿

热度:321   发布时间:2016-05-05 00:03:29.0
CImage类的使用:该类对象的存储格式是什么情况,和OPENCV的IPLIMAGE类相比区别在哪儿?
以前读图一直用的OPENCV的IplImage类,老师要求不要使用opencv,所以开始接触CImage类。
在IplImage中,创建图像时一般会表明是单通道还是多通道,用以区分是才是图像还是灰度图像?CImage中的Create()中第三个参数是否也是这个意思呢?如果不是的话,怎样创建灰度图呢?因为很多地方,比如傅立叶变换,限制输入为灰度图。
另一个问题就是该类中的IsIndexed()有何作用?谢谢啦~~
------解决方案--------------------
好像是这样的,Create第三个参数设为8的时候,创建灰度图,比如使用CImage类将RGB图像转化为灰度图像 

引用
CImage::IsIndexed来判断是否使用颜色表

比如将一张彩色图片变成黑色图片时需要调用CImage::IsIndexed来判断是否使用颜色表,若是则修改颜色表,否则直接将像素进行颜色设置。