OpenCV-利用CV_MAT_ELEM宏和CV_MAT_ELEM_PTR宏存取CVMat数组元素
2017-09-30 16:19
399 查看
1:代码如下:
#include "stdafx.h"
#include "highgui.h"
#include "cv.h"
#include "iostream"
using namespace std;
void PrintMat2(CvMat*target, char * name)//第一个参数为cvMat矩阵指针,第二个参数为输出的矩阵的名字
{
printf("%s:\n", name);
for (int i=0; i<target->rows; i++)
{
for (int j=0; j<target->cols;j++)
{
printf("%f\t", cvmGet(target, i,j));
}
printf("\n");
}
}
int main()
{
float vals[]={0.866,-0.500,0.500,0.866};
CvMat rotmat;
//cvInitMatHeader(CvMat矩阵指针,行数,列数,数据类型,一维矩阵指针)
cvInitMatHeader(&rotmat,2,2,CV_32FC1,vals);
PrintMat2(&rotmat,"romat");
//CV_MAT_ELEM(CvMat矩阵,数据类型,行,列);注意行和列都是从0开始,此为取元素。
float element_1_1=CV_MAT_ELEM(rotmat,float,1,1);
cout<<"第二行第而列元素为:"<<element_1_1<<endl;
//*((float *)CV_MAT_ELEM_PTR(CvMat矩阵, 行, 列))
*((float *)CV_MAT_ELEM_PTR(rotmat, 1, 1)) = 2;
PrintMat2(&rotmat,"romat");
return 0;
}
运行结果:
#include "stdafx.h"
#include "highgui.h"
#include "cv.h"
#include "iostream"
using namespace std;
void PrintMat2(CvMat*target, char * name)//第一个参数为cvMat矩阵指针,第二个参数为输出的矩阵的名字
{
printf("%s:\n", name);
for (int i=0; i<target->rows; i++)
{
for (int j=0; j<target->cols;j++)
{
printf("%f\t", cvmGet(target, i,j));
}
printf("\n");
}
}
int main()
{
float vals[]={0.866,-0.500,0.500,0.866};
CvMat rotmat;
//cvInitMatHeader(CvMat矩阵指针,行数,列数,数据类型,一维矩阵指针)
cvInitMatHeader(&rotmat,2,2,CV_32FC1,vals);
PrintMat2(&rotmat,"romat");
//CV_MAT_ELEM(CvMat矩阵,数据类型,行,列);注意行和列都是从0开始,此为取元素。
float element_1_1=CV_MAT_ELEM(rotmat,float,1,1);
cout<<"第二行第而列元素为:"<<element_1_1<<endl;
//*((float *)CV_MAT_ELEM_PTR(CvMat矩阵, 行, 列))
*((float *)CV_MAT_ELEM_PTR(rotmat, 1, 1)) = 2;
PrintMat2(&rotmat,"romat");
return 0;
}
运行结果:
相关文章推荐
- OpenCv中cv::Mat和IplImage,CvMat之间的转换
- OpenCv中cv::Mat和IplImage,CvMat之间的转换
- OpenCv学习之:利用vs2008的IDE工具对IplImage、Mat、CvMat结构进行解析解析
- OpenCV-利用cvPtr2D存取矩阵元素和用cvGetReal2D取矩阵元素
- OpenCv中cv::Mat和IplImage,CvMat之间的转换
- 利用vs2008的IDE工具对IplImage、Mat、CvMat结构进行解析(opencv)
- opencv学习笔记1:CV_MAT_ELEM_PTR与CV_MAT_ELEM的用法
- OpenCv中cv::Mat和IplImage,CvMat之间的转换
- OpenCV中IplImage, CvMat, Mat 的关系和相互转换
- opencv中Mat与IplImage,CVMat类型之间转换
- OpenCv cv::Mat 转 IplImage 函数
- cv::Mat与CvMat区别
- OpenCV中Mat、cvMat和IplImage类型转换
- OpenCV - Mat、CvMat、IplImage类型浅析
- OpenCV cv.Mat与.txt文件数据的读写操作
- OpenCV 3.0中IplImage* 转cv::Mat
- OpenCV中矩阵类详解:CvMat,Mat和IplImage之间的转化和拷贝
- OpenCV 3.0中IplImage* 转cv::Mat
- Opencv中Mat、IplImage、 CvMat之间转换总结
- 学习OpenCV(3)CvMat,Mat和IplImage之间的转化和拷贝