GetDiag

程序:




    		    GetDiag
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/45/D9/wKioL1PsZUKz0KiDAAGE2lpNSg0765.jpg" title="clipboard.png" alt="wKioL1PsZUKz0KiDAAGE2lpNSg0765.jpg" />

代码:

#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include <iostream>
int GetDiag(int argc,char** argv)
{
IplImage *src=cvLoadImage("e:\\picture\\4.jpg",0);
CvMat *submat=cvCreateMatHeader(1,1,CV_8UC1); //这里的行数和列数不重要,等一下cvGetDiag;还会初始化
cvGetDiag(src,submat);
std::cout<<"rows:"<<submat->rows<<std::endl;
std::cout<<"cols:"<<submat->cols<<std::endl;
for(int x=0;x<submat->rows;x++)
{
uchar *pt=(uchar *)(submat->data.ptr+x*submat->step);
for(int y=0;y<submat->cols;y++)
{
uchar* pt2=(uchar *)(pt+y*src->nChannels);
std::cout<<(int)*pt2<<" ";
}
}
return 0;
}

结论:

submat被cvGetDiag创建为对角线行,1列的矩阵

本文出自 “flyclc” 博客,请务必保留此出处http://flyclc.blog.51cto.com/1385758/1539965

更多相关文章
  • 为使得OpenCV的整个库便于管理和扩充,将整个库分成若干子库,CxCore是最重要的一个子库,从“core"名字可以看出,该库提供了所有OpenCV运行时的一些最基本的数据结构,包括矩阵,数组的基本运算,包括出错处理的一些基本函数.具体分为下面若干部分.     基础结构:  CvPoi ...
一周排行