OPENCV Mat的数据类型

1.opencv中Mat存在各种类型,其中mat有一个type()的函数可以返回该Mat的类型。类型表示了矩阵中元素的类型以及矩阵的通道个数,它是一系列的预定义的常量,其命名规则为CV_(位数)+(数据类型)+(通道数)。具体的有以下值:

 2.注意在用at运算符访问Mat时,需特别注意数据类型。

3.很坑的一点,opencv的imread函数即使读入的原图片是灰度图,默认会把Mat变成三通道。

    测试代码:

    Mat mask = imread("_variantMask.jpg");//_variantMask.jpg是一幅灰度图。
    cout <<"类型是" <<mask.type() << " " <<"通道数是"<<mask.channels() << endl;
    mask = imread("_variantMask.jpg",0);
    cout << "类型是" << mask.type() << " "<<"通道数是"<< mask.channels()<< endl;

    输出结果:

4.cout不能直接输出uchar类型。用printf语句即可。
 

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值