我在哪里向基本矩阵添加比例因子以生成真实世界的翻译值

2024-09-29 19:18:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用OpenCV和python,希望获得两个摄像头之间的真实转换。我用的是一个移动的校准相机。我已经完成了特征匹配、通过RANSAC计算F和计算E。为了得到相机之间的转换,我想我可以使用:w, u, vt = cv2.SVDecomp,然后我的t向量可以是:t = u[:,2]。示例输出是:

[[ -1.16399893 9.78967574 1.40910252]
[ -7.79802049 -0.26646268 -13.85252956]
[ -2.67690676 13.89538682 0.19209676]]

t载体:[ 0.81586158 0.0750399 -0.57335756]

我想我知道翻译是如何不在现实世界的规模,所以我需要提供某种程度的规模,如果我想一个真实世界的翻译。如果我知道摄像机之间的距离,我可以直接用乘法把它应用到t向量上吗?我想我错过了一些东西。。。在


Tags: 示例世界特征cv2向量opencv摄像机摄像头
2条回答

看来答案是肯定的。在

如果摄影机之间的距离为2m,则生成的真实世界平移将是该值与t向量的乘积:

dist = 2
t = [ 0.81586158 0.0750399 -0.57335756]
tworld = 2 * t

print tworld 
[ 1.63172316  0.1500798  -1.14671512]

当然,这里要记住的是,虽然平移现在是以真实世界单位表示的,但它仍然在摄影机1的摄影机坐标系中。所以这意味着我的第二个摄像头位于右侧1.63172316米,向上0.1500798米,在一号摄像头后面-1.14671512。在

我也有同样的问题。我想单眼相机可能需要一个3D物体协调。那可能有帮助。在

相关问题 更多 >

    热门问题