gpt4 book ai didi

OpenCV 校准参数和立体相机的 3d 点转换

转载 作者:太空宇宙 更新时间:2023-11-03 20:59:48 26 4
gpt4 key购买 nike

我有 4 个 ps3eye 相机。我已经使用 OpenCV 库的 cvStereoCalibrate() 函数校准了 camera1 和 camera2通过找到角点并将其 3d 坐标传递给此函数来使用棋盘图案。

我还使用另一组由 camera2 和 camera3 查看的棋盘图像校准了 camera2 和 camera3。

使用相同的方法我校准了 camera3 和 camera4。

现在我有了 camera1 和 camera2 的外部和内部参数, camera2和camera3的外部和内部参数, camera3和camera4的外参数和内参数。

其中外部参数是旋转和平移矩阵,内部参数是焦距和主点矩阵。

现在假设有一个 3d 点(世界坐标)(我知道如何从立体相机中找到 3d 坐标)被 camera3 和 camera4 查看,而 camera1 和 camera2 没有看到。

我的问题是:你如何获取 camera3 和 camera4 观察到的这个 3d 世界坐标点,并相对于 camera1 和 camera2 进行变换使用旋转、平移、焦点和主点参数的世界坐标系?

最佳答案

OpenCV 的立体标定只为您提供两个相机之间的相对 外部矩阵。

根据其文档,您无法获得世界坐标中的变换(即与校准模式相关的变换)。它建议对其中一张图像进行常规相机校准,并且至少知道它的变换。 cv::stereoCalibrate

如果校准是完美的,您可以使用您的菊花链设置来导出任何相机的世界变换。

据我所知这不是很稳定,因为在运行校准时应考虑到您有多个摄像头这一事实。

多相机校准不是最微不足道的问题。看看:

我也在寻找这个问题的解决方案,所以如果您发现有关此问题和 OpenCV 的更多信息,请告诉我。

关于OpenCV 校准参数和立体相机的 3d 点转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8857290/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com