技术专栏
矩阵构造之输出 --opencv学习记录(一)
1.构造
1.1 Mat img; 只是创建了一个Mat信息头,不会创建数据区
1.2Mat::Mat(int rows,int cols,int type)
rows 列数
cols 行数
type 类型
Mat q = Mat::Mat(10, 1, CV_8UC3);
cout << q;
cout << endl;
1.3 Mat::Mat(Size size,int type)
创建大小为size,类型为type的图像
这里注意一点在opencv中 Size是一个模版类,有成员函数Size(width,height)注意宽在前,高在后(列在前,行在后)
Mat q1 = Mat::Mat(Size(1, 3), CV_8UC1);
cout << q1;
1.4 还可以直接赋值
Mat img = (Mat_<int>(3, 3) << 1, 2, 3, 4, 5, 6, 7, 8, 9);
cout << img;
1.5 还有一些比较特殊的矩阵,比如:
全0矩阵 zreos
全1矩阵 ones
对角线为1矩阵 eye
Mat img1 = Mat::zeros(3, 3, CV_8UC1);//全0
cout << img1;
cout << endl;
Mat img2 = Mat::ones(3, 3,CV_8UC1);//全1
cout << img2;
cout << endl;
Mat img3 = Mat::eye(3, 3, CV_8UC1);//对角线1
cout << img3;
cout << endl;
1.6 一些矩阵的属性
rows 矩阵的行数
cols 矩阵的列数
dims 矩阵的维度
channels() 矩阵的通道数
Mat img = Mat::ones(100, 200, CV_8UC3);
cout << "行数" << M.rows << endl;
cout << "列数" << M.cols << endl;
cout << "通道数" << M.channels() << endl;
cout << "维数" << M.dims << endl;
2 打印
2.1 可以直接进行输出
2.2 指针数组方式
uchar* p=(uchar*)img.data
这种情况使用两个for循环进行输出 行直接rows,列的话还要考虑三通道的情况,所以要列数通道数
2.3 ptr方式
mat.ptr(row){col}
比如:
单通道
uchar data1=img.ptr《uchar》(0){1} 指向img第一行第二个元素
uchar* data1=img.ptr《uchar》(0) 指向img第一行第一个元素
uchar* data1=img.ptr《uchar》{1} 指向img第一行第二个元素
多通道
Vec3d *data=img.ptr《Vec3b》(0){0}
Mat img = Mat::ones(3, 2, CV_8UC3);
cout << img.at<Vec3b>(1, 1);
2.4 at用于取得图像上的点
img.at《uchar》(i,j) 取出灰度图像中i行j列的点
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包
点赞
收藏
评论
打赏
- 分享
- 举报
评论
0个
手气红包
暂无数据
相关专栏
-
浏览量:490次2023-07-17 13:48:57
-
浏览量:1521次2023-07-14 14:36:03
-
浏览量:1123次2023-07-05 10:11:08
-
浏览量:904次2023-07-14 14:16:32
-
浏览量:977次2023-07-17 13:57:30
-
2023-07-05 10:11:14
-
浏览量:905次2023-07-05 11:03:52
-
浏览量:1041次2023-01-13 11:31:19
-
浏览量:362次2024-01-15 15:45:30
-
浏览量:439次2023-12-11 17:08:47
-
浏览量:1942次2020-08-28 16:40:19
-
浏览量:648次2023-11-30 17:44:37
-
浏览量:671次2023-11-09 13:58:15
-
浏览量:602次2024-03-05 16:55:32
-
浏览量:404次2023-12-07 18:06:58
-
浏览量:778次2023-11-09 13:45:46
-
浏览量:5650次2021-02-20 17:09:58
-
浏览量:2451次2020-07-31 18:12:31
-
浏览量:587次2023-06-02 17:42:13
切换马甲
上一页
下一页
打赏用户
共 0 位
我要创作
分享技术经验,可获取创作收益
分类专栏
-
29篇
热门专栏
- 海思多媒体(MPP)开发(2)——视频输入(VI)
- 海思PQtools DPC(坏点矫正) 使用方式
- 海思3559A上编译LIVE555源码操作步骤
- 在OpenCV中进行图像预处理
- 几何变换 —— opencv 学习记录 (九)
- [python opencv 计算机视觉零基础到实战] 一、opencv的helloworld
- OpenCV 3.4.12 + opencv_contrib Ubuntu交叉编译到arm(rv1126_rv1109)开发板
- 海思OSD开发系列(一) SDL_TTF框架移植
- [python opencv 计算机视觉零基础到实战] 十七、深入ellipse方法
- 关于linux定时器和Hi3536的VDEC解码
置顶时间设置
结束时间
删除原因
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
打赏作者
mini菜
您的支持将鼓励我继续创作!
打赏金额:
¥1
¥5
¥10
¥50
¥100
支付方式:
微信支付
打赏成功!
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
审核成功
发布时间设置
发布时间:
请选择发布时间设置
是否关联周任务-专栏模块
审核失败
失败原因
请选择失败原因
备注
请输入备注