首页 > 代码库 > CvMat的初始化,读取和修改
CvMat的初始化,读取和修改
程序:
代码:
#include "cv.h" #include "cxcore.h" #include "highgui.h" #include <iostream> float MatSum(CvMat* mat) //读取CvMat的恰当方法 { float sum=0; for(int rows=0;rows<mat->rows;rows++) { const float* data=http://www.mamicode.com/(const float*)(mat->data.ptr+rows*mat->step); //因为行数据元素使用字节来计算的,所以指针最好用字节计算,然后分配恰当的类型,比如浮点型;每次都进行初始化因为比如有ROI区域那么可能不是连续存储的"rows:"<<rows<<"cols:"<<cols<<"x:"<<x<<std::endl; } } return sum; } int Mat(int argc,char** argv) { CvMat mat; float val[]={1,2,3, 4,5,6, 7,8,9 }; cvInitMatHeader(&mat,3,3,CV_32FC1,val); //初始化CvMat float sum1=MatSum(&mat); float sum2=MatSum2(&mat); std::cout<<"sum1:"<<sum1<<std::endl; std::cout<<"sum2:"<<sum2<<std::endl; return 0; }
本文出自 “flyclc” 博客,请务必保留此出处http://flyclc.blog.51cto.com/1385758/1539985
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。