计算iplimage上的协方差矩阵

时间:2013-10-16 16:41:41

标签: c++ opencv covariance iplimage

我想找到图像数据集的协方差矩阵。为此,我编写了这段代码:

int main()
{
    IplImage** dataset=new IplImage*[400];
    CvArr* cov_result = cvCreateMat(10304,10304,CV_64FC1);
    CvArr* mean_result = cvCreateMat(10304,10304,CV_64FC1);
    char* temp=new char[20];
    char* x=new char[3];
    char* y=new char[3];
    for (int i=0;i<40;i++)
        for (int j=0;j<10;j++)
        {
            itoa(i+1,x,10);
            itoa(j+1,y,10);
            strcpy(temp,"orl_faces\\s");
            strcat(temp,x);
            strcat(temp,"\\");
            strcat(temp,y);
            strcat(temp,".pgm");
            dataset[i]=cvLoadImage(temp,1); 
        }``
    cvCalcCovarMatrix((constvoid**)dataset,400,cov_result,mean_result,CV_COVAR_NORMAL);
    return 0;
}

从特定目录加载图像并以iplimage *格式写入。 但是当我试图计算协方差我得到一个错误。我的代码有什么问题?有人可以帮助我吗?

0 个答案:

没有答案