opencv-invert求逆矩阵

opencv-invert求逆矩阵

 

#include<opencv2/opencv.hpp>
#include<iostream>
#include  <vector>


int main(int argc, char** argv) {

    cv::Mat A = (cv::Mat_<double>(3, 3) << 2, -10, 5, -11, 10, 20, 30, 88, 1);
    std::cerr << A << std::endl<< std::endl;
    cv::Mat B;
    cv::invert(A, B);  //求逆矩阵
    //参数1:输入,浮点型(32位或者64位)的M×N的矩阵,当参数3的使用方法
    //          为DECOMP_CHOLESKY DECOMP_LU DECOMP_EIG时函数功能为求逆,此时需保证M=N
    //参数2:输出,与输入矩阵类型一致的N×M的矩阵
    //参数3:提供4种可选择的方法:
    //       DECOMP_CHOLESKY(基于CHOLESKY分解的方法)
    //       DECOMP_LU(基于LU分解的方法)
    //       DECOMP_EIG(基于特征值分解的方法)
    //       DECOMP_SVD(基于奇异值分解的方法)

    std::cerr << B << std::endl << std::endl;
    cv::Mat C;
    C = A * B;
    std::cerr << C << std::endl << std::endl;
    
    cv::waitKey(0);
    return 0;
}

opencv-invert求逆矩阵

 

 

 

 

opencv-invert求逆矩阵

上一篇:基础概念(5):怎么声明变量


下一篇:LU分解-三角分解PYTHON实现