我是刺客 2017-09-02 01:53 采纳率: 0%
浏览 5702

OpenCV Mat对象使用数组数据块初始化

OpenCV的官网介绍Mat对象,共列出了25种基本的初始化方法。
其中,对于使用数组数据块的初始化方法官方给出的例子是

 double m[3][3] = {{a, b, c}, {d, e, f}, {g, h, i}};
 Mat M = Mat(3, 3, CV_64F, m).inv();

_但是我这样初始化我的Mat对象,数据为什么不对呢
double m[][3] = {{1, 2, 3}, {3, 0, 9}, {1, 3, 8}};
Mat M(3, 3, CV_8U, m);

这样的方式初始化的Mat对象数据根本就不是m数组里面的数据啊。请教高手解答啊
_

  • 写回答

2条回答 默认 最新

  • 鼠晓 博客专家认证 2017-09-02 02:11
    关注

    CV_64F,,这个东西应该是类型,64位浮点,,,详细资料看最下面:
    第一个数据不对?官方的例子应该很稳的,

    不行的话可以分两步初始化
    【1】先申请一个,mat,,,
    【1】在把数组一个一个填充即可

      Mat M0(3,3,CV_32F);
     InitMat(M0,3);
    

    详细的看看这个:http://blog.csdn.net/zssureqh/article/details/7599508

    【Mat_对应的是CV_8U,
    Mat_对应的是CV_8U,
    Mat_对应的是CV_8S,
    Mat_对应的是CV_32S,
    Mat_对应的是CV_32F,
    Mat_对应的是CV_64F,】

    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大