OpenCV中核心类Mat的创建方式

Mat 的创建方方式
Mat(int rows,int cols,int type)
其中,rows代表矩阵的行数,cols代表矩阵的列数,type代表类型,包括通道数及其数据类型,可以设置为CV_8UC(n)、CV_8SC(n)、CV_16SC(n)、 CV_16UC(n)、CV_32SC(n)、CV_32FC(n)、CV_64FC(n)其中8U、8S、16S、16U、32S、32F、64F前面的数字代表Mat中每一个数值所占的bit数,而1byte=8bit,所以,32F就是占4字节的float类型,64F是占8字节的double类型,32S是占4字节的int类型,8U是占1字节的uchar类型,其他的类似;C(n)代表通道数,当n=1时,即构造单通道矩阵或称二维矩阵,当n>1时,即构造多通道矩阵即三维矩阵,直观上就是n个二维矩阵组成的三维矩阵。
Mat其他构造方式:
Mat(Size(int cols,int rows),int type);//Size第一个元素是矩阵的列数(宽),第二个元素是矩阵的行数(高)。
Mat m;
m.create(2,3,CV_32FC1);
m.create(Size(3,2),CV_32FC1);
//构造2行3列矩阵
Mat o = Mat::ones(2,3,CV_32FC1);
//构造2行3列全是1的float类型的单通道矩阵
Mat m = Mat::zeros(Size(3,2),CV_32FC1);
//构造2行3列全是0的float类型的单通道矩阵
Mat m = (Mat_(2,3) << 1,2,3,4,5,6);
//构造2行3列int类型的单通道矩阵

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值