3

我已经阅读了讲座和主题,并且几周以来一直在研究它,但是我找不到描述相机运动的方法。我不想重建 3D 世界。我正在使用 OpenCV。

我有一个单目相机和一个不知名的词。我有内在和失真参数。我有特征和通信。所以我正在寻找两帧之间的旋转和平移。我想将我的第一张图像视为 XYZ 轴的原点。

我使用基本矩阵和基本矩阵来找到外在参数(R,T),但我不相信。我有这些结果:

R [0.040437..., 0.116076..., -0.992416..., 0.076999..., -0.99063..., -0.112731..., -0.996211..., -0.071848.., -0.048994... ] T [0.6924183...; 0.081694...; -716885...]

我如何检查它们是否良好?

我计算了欧几里得距离以查看 3D 距离,但我的值有误。

拜托,谁能给我一些细节,或指导我?我希望我能很好地解释自己。

问候

4

2 回答 2

1

基本上这种方式对于每个连续的帧你都会有未知的比例因子,所以你可以获得奇怪的 R 和 T 值。但是你可以使用一些初始化,比如已知的运动来执行场景的第一次三角测量。接下来,您可以使用 solvePnP 来计算下一个 [R|T]。

尝试阅读 PTAMM,它是单目 SLAM 最有趣的实现之一

http://www.robots.ox.ac.uk/~bob/research/research_ptamm.html

于 2012-12-11T08:16:31.270 回答
1

你说的是世界吗?这个问题也不是stackoverflow的真正主题,因为它处理的是理论而不是代码。

https://stackoverflow.com/faq

回答你的问题。如果你和 R 和 T 那么你可以计算每个点的 3D 坐标。从中,您可以将每个点重新投影到另一个相机上,并计算观察点和预测点之间的残差。如果错误在一个像素左右,那么它可能是有效的。

于 2012-07-25T23:11:02.097 回答