opencv创建Mat对象

在opencv中引入了Mat类。

Mat类是一个非常优秀的图像类,它同时也是一个通用的矩阵类,可以用来创建和操作多维矩阵。Mat类里面定义了许多构造函数,可以很方便地根据要求创建Mat对象。

常使用的构造函数有:

1:Mat::Mat()无参数构造函数;

2:Mat::Mat(int rows, int cols, int type)

3:  Mat::Mat(int size, int type)

4: Mat::Mat(int rows, int cols, int type, const Scalar&s)//创建行数为rows,列数为cols,类型为type的图像,并将元素初始化位置s;

5: Mat::Mat(Size size, int type, const Scalar & s)//创建大小size, 类型为tyoe的图像,并将所有的元素初始化为值s;

6: Mat::Mat(const Mat&m)//将m赋值给新创建的对象,此处不会对图像数据进行复制,m和新对象共用图像数据;

7: Mat::Mat(int rows, int cols, int type, void*date, size_t = AUTO_STEP)//创建行数为 rows,列数为 col,类型为 type 的图像,此构造函数不创建
图像数据所需内存,而是直接使用 data 所指内存,图像的行步长由 step指定。

8: Mat::Mat(Size size, int type, void *date, size_t step = AUTO_STEP)//创建大小为 size,类型为 type 的图像,此构造函数不创建图像数据所内存,而是直接使用 data 所指内存,图像的行步长由 step 指定;

9: Mat::Mat(const Mat&m, const Range & rowRange, const Range & colRange)//创建的新图像为 m 的一部分,具体的范围由 rowRange 和 colRange 指定,此构造函数也不进行图像数据的复制操作,新图像与 m 共用图像数据;

10: Mat::Mat(const Mat & m, const Rect & roi)//创建的新图像为 m 的一部分,具体的范围 roi 指定,此构造函数也不进行图像数据的复制操作,新图像与 m 共用图像数据;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值