matlab
lm算法代码多视图三角剖分和非线性优化
描述
在此代码中,实现了使用多视图三角剖分来重建合成多维数据集(由56个点组成)的方法。
多视图三角剖分是2视图三角剖分的直接扩展,您已经在中进行了编码。
与2视图三角剖分类似,使用所有8个视图的投影矩阵并设置Ax
=
b形式的最小二乘系统,然后使用SVD对其求解。
例如3D点X3必须满足以下约束P1
X3
=
x13,P2
X3
=
x23,...,P8
*
X3
=
x83,其中x13表示图像1中X3的2D投影,x23表示图中X3的2D投影图像2,...,x83表示图像8中X3的2D投影。
合成多维数据集的图像以8×2×56(numOfViews×2×56)张量的形式提供给您,命名为cube_imgs.mat。
相应的投影矩阵以名为projMatrices.mat的8×1(numOf
V×1)的MATLAB单元数组提供;
两者都存储在MatFilesQues1文件夹中。
非线性最小二乘的Levenberg-Marquardt(LM)算法用于解决非线性最小二乘问题。
结果显示在Report.pdf中
2022-03-02 15:17:52
112KB
系统开源
1