opencv求矩阵的逆_使用OpenCV求模拟矩阵的逆矩阵
OpenCV中,使用cvInvert函数,可以求解举证的模拟逆矩阵。
cvInvert共有三个参数。
第一个参数, 待求解的矩阵
第二个参数, 逆矩阵
第三个参数, 求解方式 可选值 CV_LU, CV_SVD, CV_SVD_SYM
CV_LU : 高斯消去法 (LU 分解)
CV_SVD : 奇异值分解(SVD)
CV_SVD_SYM : 对称矩阵的SVD
代码如下:
#include
#include
#include
void matSet(CvMat *mat, float value[])
{
int k = 0;
for (int i = 0; i < mat->rows; i++) {
for (int j = 0; j < mat->cols; j++) {
cvmSet (mat, i, j, value[k++]);
}
}
}
// Print Matrix
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");
}
}
void main()
{
CvMat *matrix = cvCreateMat(4, 3, CV_32FC1);
CvMat *inverse = cvCreateMat(3, 4, CV_32FC1);
float matrixA[] = {1,0,0, 0,2,0, 0,0,3, 0,0,0};
matSet(matrix, matrixA);
//CV_LU : 高斯消去法 (LU 分解)
//CV_SVD : 奇异值分解(SVD)
//CV_SVD_SYM : 对称矩阵的SVD
cvInvert(matrix, inverse, CV_SVD);
printf(" Matrix:: /n ");
printMatrix(matrix);
printf(" Inverse Matrix:: /n ");
printMatrix(inverse);
cvReleaseMat(&matrix);
cvReleaseMat(&inverse);
return;
}
opencv求矩阵的逆_使用OpenCV求模拟矩阵的逆矩阵相关推荐
- C语言求矩阵的逆(伴随法)
之前介绍了C语言用代数余子式求行列式 本次开始介绍如何用公式法对矩阵求逆,并用C语言将其实现. 之前程序有点小bug,已于2022年11月29日修改. 目录 数学原理 矩阵求逆的公式 数乘矩阵 程序设 ...
- python实现简单的求矩阵的逆
简单记录一下,后续改进 python代码 #模26运算下,求矩阵的逆. #使用伴随矩阵求逆矩阵法. #整个精度保持在整数位(方便求模运算).import numpy as np #扩展欧几里得算法求最 ...
- Fortran 求矩阵的逆、行列式的值
#2019,10,8 更新: 重写部分程序,增加部分注释 学Fortran的第一天,就写了这么点东西,分享一下. 内容包括:求矩阵的逆.行列式的值 其中:求逆的方法是先求伴随矩阵再除以行列式的值, 求 ...
- C语言求矩阵的逆(高斯法)
初等变换法是常用的矩阵求逆方法之一 相对于伴随法,初等行变换法有着较低的时间复杂度,可以进行相对高维的矩阵运算,但同时也会损失一点点精度. 伴随法可参考之前的博客:C语言求矩阵的逆(伴随法) 目录 数 ...
- 求矩阵的逆的三种方法
我们知道求矩阵的逆具有非常重要的意义,本文分享给大家如何针对3阶以内的方阵,求出逆矩阵的3种手算方法:待定系数法.伴随矩阵法.初等变换法(只介绍初等行变换) 待定系数法求逆矩阵 1 首先,我们来看如何 ...
- 【MATLAB】几种求矩阵伪逆的方法
几种求矩阵伪逆的方法 A*x=y当A不可逆如何解x 求伪逆有五种方法,左右同时乘以A','chol()分解,qr() 分解,svd()分解和pinv()求伪逆,下面来比较一下哪个最优秀. 如果A是个3 ...
- Python解决矩阵的PLU分解及求矩阵的逆
Python解决矩阵的PLU分解及求矩阵的逆 关于PLU的分解基础知识就不叙述了,可以自己去看矩阵分析的书,大体上和高斯消去法差不多. PLU分解被经常用在Ax=bAx=bAx=b的求解上 在这里xx ...
- 判断一个矩阵全为0_中学生线性代数1——从线性方程组到求矩阵的逆
需要的前置数学知识:一元一次,一元二次方程的解法,基本的初中代数. 会用到的记号 读者对象:初中高年级,高中生,大学低年级学生以及其它数学爱好者.讲解了矩阵,增广矩阵,矩阵乘法,转置,行列向量,求矩阵 ...
- Matlab求矩阵的逆(三种方法)
Matlab求矩阵的逆(三种方法) 说明:若所求矩阵为非奇异矩阵(可逆矩阵),则可以精确求得其逆矩阵:若所求矩阵为奇异矩阵,则所求出的逆矩阵是近似的(不精确). 下面以矩阵A为例. inv()方法 A ...
最新文章
- SWIFT入门 Dictionary
- 本周Github精选 | 这12个最新AI开源项目,你一定要收下
- oracle的逻辑结构包括,oracle逻辑结构分析
- Float,Double单双精度在线转换成二进制
- C Tricks(十五)—— 算符优先级的表示
- Google 投资 Lyft 背后、AlphaGo Zero 人工智能威胁论?
- 《普林斯顿微积分读本》笔记-第2章三角学回顾
- 调研分析-全球与中国非线性光学BIBO晶体(BiB3O6)市场现状及未来发展趋势
- CIS Control v8的变化
- 吹响数字经济时代的冲锋号 2021宝德X86生态伙伴大会在深召开
- 动作捕捉系统用于下肢外骨骼开发
- 帝国时代3如何快速实现训练单位突破人口上限
- windows下的./ 和 ../
- php数据库内容在漂亮表格呈现
- 哨兵二号数据offline_科学网—利用ENVI 5.3读取哨兵2号(Sentinel-2)L1C数据 - 朱永超的博文...
- autogen.sh出错
- 你知道自己究竟“想要”什么,又该如何“做到”吗?--《认知觉醒》读书笔记
- 配置网页默认css样式
- 嵌入式开发—串口通信
- Polkadot学习概念总结