opencv求逆矩阵函数_c++矩阵

opencv求逆矩阵函数_c++矩阵voidprintMatrix(CvMat*mat){intk=0;for(inti=0;irows;i++){for(intj=0;jcols;j++){printf(“%10.3f”,cvmGet(mat,i,j));

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

void printMatrix(CvMat *mat)     
{    
    int k = 0;    
    for (int i = 0; i < mat->rows; i++) {    
        for (int j = 0; j < mat->cols; j++) {    
            printf(" %10.3f ",  cvmGet(mat, i, j));    
        }    
        printf("\n");    
    }    
}    
int main(int argc,char** ardv)    
{    
        double *Matrix[3];    
        for (int i = 0;i < 3;i++)    
    {    
        Matrix[i]  = new double[3];    
        }    
    *(Matrix[0]+0)=1;    
    *(Matrix[0]+1)=0;    
    *(Matrix[0]+2)=0;    
    *(Matrix[1]+0)=0;    
    *(Matrix[1]+1)=2;    
    *(Matrix[1]+2)=0;    
    *(Matrix[2]+0)=0;    
    *(Matrix[2]+1)=0;    
    *(Matrix[2]+2)=3;    
    CvMat *mat = cvCreateMat(3,3,CV_32FC1);    
    CvMat *Imat=cvCreateMat(3,3,CV_32FC1);    
    for(int i=0;i<mat->rows;i++)    
    {    
        for(int j=0;j<mat->cols;j++)    
        {    
            mat->data.fl[i*3+j]=Matrix[i][j];    
        }    
    }    
    cvInvert(mat,Imat,CV_SVD);//求逆矩阵    
    printf("原矩阵::\n");    
    printMatrix(mat);    
    printf(" 逆矩阵::\n");    
    printMatrix(Imat);    
}    

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/171663.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号