3D 重建:从未校准图像求解 3D 点方程
3D Reconstruction: Solving Equations for 3D Points from Uncalibrated Images
这是一个非常简单的问题(我希望如此)。以下内容来自3D reconstruction from Multiple Images,Moons等人(图2-13,第348页):
Projective 3D reconstruction from two uncalibrated images
Given: A set of point correspondences m<sub>1</sub>
in I<sub>1</sub>
and m<sub>2</sub>
in I<sub>2</sub>
between two uncalibrated images I<sub>1</sub>
and I<sub>2</sub>
of a static scene.
Aim: A projective 3D reconstruction ^M
of the scene.
Algorithm:
- Compute an estimate
^F
for the fundamental matrix
- Compute the epipole
e<sub>2</sub>
from ^F
- Compute the 3x3-matrix
^A = −(1/||e<sub>2</sub>||<sup>2</sup>) [e<sub>2</sub>]<sub>x</sub> ^F
- For each pair of corresponding image points
m<sub>1</sub>
and m<sub>2</sub>
, solve the following system of linear equations for ^M
:
^p<sub>1</sub> m<sub>1</sub> = ^M
and ^p<sub>2</sub> m<sub>2</sub> = ^A ^M + e<sub>2</sub>
( ^p<sub>1</sub>
and ^p<sub>2</sub>
are non-zero scalars )
[I apologize for the formatting. I don't know how to put hats over characters.]
直到第 4 步我都还不错。但是自从我上次线性代数 class 以来已经 30 多年了,即便如此我也不确定我是否知道如何解决这样的问题。任何帮助或参考将不胜感激。
顺便说一下,这是我的另一个 post 的后续:
Detecting/correcting Photo Warping via Point Correspondences
这只是尝试解决问题的另一种方法。
给定一对匹配的像点m1和m2,来自光心的两条对应光线不太可能相交完全是由于测量中的噪声。因此,应该在(线性)最小二乘意义上找到所提供系统的解决方案,即找到 x = argmin_x | C x - d |^2
与(例如):
/ 0 \ / \
| I -m1 0 | | M |
C x = | 0 | | |
| 0 | | p1 |
| A 0 -m2 | \ p2 /
\ 0 /
和
/ 0 \
| 0 |
d = | 0 |
| |
| -e2 |
\ /
该问题有 6 个方程式的 5 个未知数。
一种可能的替代公式利用了 m1 和 m2 与 M 共线的事实,因此 m1 x M = 0
和 m2 x (A M + e2) = 0
产生线性最小二乘问题 x = argmin_x | C x - d |^2
with:
/ [m1]x \ / \
C = | | | M |
\ [m2]x A / \ /
和
/ 0 \
d = | |
\ -m2 x e2 /
其中 [v]x
是与 v
叉积的 3 x 3 矩阵。该问题有 6 个方程式的 3 个未知数,只有保持 non-linearly 个相关方程式才能减少到 4 个。
这是一个非常简单的问题(我希望如此)。以下内容来自3D reconstruction from Multiple Images,Moons等人(图2-13,第348页):
Projective 3D reconstruction from two uncalibrated images
Given: A set of point correspondences
m<sub>1</sub>
inI<sub>1</sub>
andm<sub>2</sub>
inI<sub>2</sub>
between two uncalibrated imagesI<sub>1</sub>
andI<sub>2</sub>
of a static scene.Aim: A projective 3D reconstruction
^M
of the scene.Algorithm:
- Compute an estimate
^F
for the fundamental matrix- Compute the epipole
e<sub>2</sub>
from^F
- Compute the 3x3-matrix
^A = −(1/||e<sub>2</sub>||<sup>2</sup>) [e<sub>2</sub>]<sub>x</sub> ^F
- For each pair of corresponding image points
m<sub>1</sub>
andm<sub>2</sub>
, solve the following system of linear equations for^M
:
^p<sub>1</sub> m<sub>1</sub> = ^M
and^p<sub>2</sub> m<sub>2</sub> = ^A ^M + e<sub>2</sub>
(^p<sub>1</sub>
and^p<sub>2</sub>
are non-zero scalars )[I apologize for the formatting. I don't know how to put hats over characters.]
直到第 4 步我都还不错。但是自从我上次线性代数 class 以来已经 30 多年了,即便如此我也不确定我是否知道如何解决这样的问题。任何帮助或参考将不胜感激。
顺便说一下,这是我的另一个 post 的后续:
Detecting/correcting Photo Warping via Point Correspondences
这只是尝试解决问题的另一种方法。
给定一对匹配的像点m1和m2,来自光心的两条对应光线不太可能相交完全是由于测量中的噪声。因此,应该在(线性)最小二乘意义上找到所提供系统的解决方案,即找到 x = argmin_x | C x - d |^2
与(例如):
/ 0 \ / \
| I -m1 0 | | M |
C x = | 0 | | |
| 0 | | p1 |
| A 0 -m2 | \ p2 /
\ 0 /
和
/ 0 \
| 0 |
d = | 0 |
| |
| -e2 |
\ /
该问题有 6 个方程式的 5 个未知数。
一种可能的替代公式利用了 m1 和 m2 与 M 共线的事实,因此 m1 x M = 0
和 m2 x (A M + e2) = 0
产生线性最小二乘问题 x = argmin_x | C x - d |^2
with:
/ [m1]x \ / \
C = | | | M |
\ [m2]x A / \ /
和
/ 0 \
d = | |
\ -m2 x e2 /
其中 [v]x
是与 v
叉积的 3 x 3 矩阵。该问题有 6 个方程式的 3 个未知数,只有保持 non-linearly 个相关方程式才能减少到 4 个。