我正在尝试在opencv中实现视觉测距解决方案,并遇到一些问题。这是一个相当广泛的问题,所以我提前道歉,但是我有很多问题。
我目前对这个问题的理解是: 获得一些模型来表示两个连续图像之间的对应关系,即光流或特征匹配。 从这些点对应中获得基本(如果需要的话,必要的话)矩阵。 从那里计算[R | t]。
我知道openCV中的findFundamentalMat函数,但我认为只需要2D点匹配?在Scaramuzza和Fraundorfers的论文“Visual Odometry - pt1”中,他们认为3-D到2-D的对应关系是最准确的。
我想我的问题是我可以使用从kinect中检索到的深度数据,给我三维特征点,在opencv中用来给我一个运动估计吗?
我还看了一下solvePnP,但据我所知,这只能解决一个帧(当你知道特征的真实模型空间坐标时,比如基准标记) 虽然我确实考虑过是否在两帧之间跟踪3D点,在第一帧中求解透视,然后在具有相同点的第二帧中应该给我两者之间的转换?
我为这个问题严重的问题道歉,我仍然是计算机视觉的新手。如果它是一个太多的雷区,而不是试图回答这个问题,我会感谢任何相关文献或开放式测距教程的重点。感谢。
答案 0 :(得分:1)
opencv \ samples \ cpp文件夹中有一个示例rgbdodometry.cpp。 你见过吗?