opencv 取Mat元素的值
来源:互联网 发布:笔记软件 知乎 编辑:程序博客网 时间:2024/05/17 09:27
获取通道channels=1,Mat元素类型为CV_32SC1的元素的值
1)使用ptr指针
如 mat.ptr<uchar>(i)+j)
形式
注意:
(1)元素类型是什么类型就用什么类型的指针,如CV_32SC1为32位有符号1通道矩阵,用uchar*指针,CV_32FC1为32位浮点单精度1通道矩阵,使用float*指针。
#include<cv.h>#include<highgui.h>#include<stdio.h>using namespace cv;using namespace std;int main(){ Mat mat(5, 5, CV_32SC1,1);//新建一个初始化值为1的Mat矩阵 //cout << mat;//使用cout能直接输出矩阵的值 for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { printf("%d ",*(uchar*)(mat.ptr<uchar>(i)+j)); } } return 0;}
2)直接使用指针
注意:
(1)mat.step[0]为每一行所占字节数
(2)mat.step[1]每个元素所占字节数
#include<cv.h>#include<highgui.h>#include<stdio.h>using namespace cv;using namespace std;int main(){ Mat mat(5, 5, CV_32SC1,1);//新建一个初始化值为1的Mat矩阵 //cout << mat;//使用cout能直接输出矩阵的值 printf("mat.step[0]=%d\n", mat.step[0]);//每一行所占字节数目 printf("mat.step[1]=%d\n", mat.step[1]);//每个元素所占字节数 for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { int elmValue = *(uchar*)(mat.data + mat.step[0] * i + mat.step[1] * j); printf("%d ", elmValue); } printf("\n"); } return 0;}
0 0
- opencv 取Mat元素的值
- Opencv Mat类的取值操作
- opencv mat元素的遍历
- Opencv 中 Mat中元素的值读取方法总结
- Opencv 中 Mat中元素的值读取方法总结
- Opencv中Mat中元素的值读取方法总结
- Opencv 中 Mat中元素的值读取方法总结
- opencv Mat元素的访问方法
- 【opencv】访问mat元素
- Opencv Mat元素操作
- OpenCV深入学习(4)--Mat元素的获取方法
- OpenCV深入学习(7)--Mat的元素分布图示详解
- opencv中Mat和CvMat访问元素的方式
- OpenCV中Mat结构图像元素的获取
- OpenCV,多种Mat图像元素访问方式的速度对比
- opencv CV_32FC1类型Mat的元素访问与显示
- OpenCV——读取Mat对象的元素
- Opencv读取mat和cvMat元素&&Mat与IplImage和CvMat类型之间的相互转换
- 资源文件操作
- 专门为了面试而学的 Java
- 定时删除旧日志
- WebView Cache 缓存清除
- 基于Flume的美团日志收集系统(一)架构和设计
- opencv 取Mat元素的值
- redis两种持久化策略
- 老教授语
- Android开发之App字体大小不随着系统字体大小的改变而改变
- Vijos P1132 求二叉树的先序序列(递归,二叉树)
- cadence16.5中电源线、地线取消飞线显示
- ionic 热更新插件cordova-hot-code-push的使用
- JAVA 集合总结+DEMO
- 设计一个有getMin功能的栈