当前位置:   article > 正文

cv库学习,一 Mat类矩阵的定义初始化_cv::mat 初始化

cv::mat 初始化

1,由多维数组定义初始化Mat类矩阵;

     double m[2][2]={{1.0,2.0},{3.0,4.0}};       Mat M(2,2,CV_64F,m);

2,构造函数定义法

     Mat M(2,2,CV_32FC3,Scalar(100,200,300));

      Mat M(2,2,CV_32FC2,Scalar(100,200));

      Mat M(2,2,CV_8UC1,Scalar(100));

3,   M.create(Size(10, 20), CV_32FC3); 在原有的M矩阵上修改大小,数据类型,M中原先的数据被删除类。

 4. 类的方法赋值

 eye:单位矩阵,ones:全1矩阵,对于多维矩阵,只有第一个通道赋值1,其余通道全赋值0;

5,枚举法赋值

      Mat M=(cv::Mat_<int>(3,3)<<1,2,3,4,5,6,7,8,9);

    当矩阵尺寸比较大的时候,可以利用循环的方式赋值,但是元素值得有一定的规律才可以。

6,构造对角矩阵diag(b),b必须是Mat类的一维变量;

      Mat b=(cv::Mat_<int>(1,3)<<1,2,3);

      Mat M=Mat::diag(b);

 同样使用diag(int b)函数可以取矩阵的对角数据,此时b是一个int 值

 结果:

 

 Mat类矩阵定义初始化方法总结:

           构造函数法定义;

          枚举法;

          类法;

         利用数组赋值法;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/886800
推荐阅读
相关标签
  

闽ICP备14008679号