创建Mat结构的若干种方法

#include<iostream>
#include<opencv2/opencv.hpp>

using namespace cv;

int main(int argc, char **argv)
{
	Mat A, C;
	A = imread(argv[1],CV_LOAD_IMAGE_COLOR);//读入图片

	Mat B(A);//复制构造函数
	C = A;//赋值

	Mat D(A,Rect(10,10,100,100));//取A中一块矩形的数据
	Mat E = A(Range::all(),Range(1,3));//取A的全部行,和1到3列的数据
	
	Mat M(2,2,CV_8UC3,Scalar(0,0,255));//行,列,数据类型(unsigned char)和通道数,数据

	int sz[3] = {2,2,2};
	Mat L(3,sz,CV_8UC1,Scalar::all(0));//维数,每个维数的尺寸,数据类型,数据

	M.create(4,4,CV_8UC2);

	// MATLAB形式的初始化方式
	Mat E = Mat::eye(4,4,CV_64F);
	Mat O = Mat::ones(2,2,CV_32F);
	Mat Z = Mat::zeros(3,3,CV_8UC1);

	// 直接输入数据的方法
	Mat C = (Mat_<double>(3,3) << 0,-1,0,-1,5,-1,0,-1,0);

	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值