我有一台立体摄像机。我已经捕获了一个棋盘图案序列(相同的序列,每次曝光两张图片)。我使用cv2.calibrateCamera在各个摄像机上执行了一次摄像机校准。
我的问题是,在两台摄像机上运行cv2.stereoCalibrate是多余的,因为calibrateCamera为我提供了各个摄像机的物体相对位置和方向?如果没有,它为我提供了什么好处?
答案 0 :(得分:1)
使用相同的函数'cvCalibrateCamera2'在cv2.stereoCalibrate和cv2.calibrateCamera中生成内部参数,不同之处在于禁用cv2.stereoCalibrate可以使用标志进行此计算。
'否',此功能不冗余,因为外部参数以不同方式计算。如this教程中所示,校准相机为您做的是如何使用单个相机在多个帧上找到3D点,这是立体相机可以在单个帧中执行的操作(由两个相机)。在stereoCalibrate中,相对于两个相机生成外部参数。
由于您已经拥有立体声装备,请使用stereoCalibrate来获取内在和外在参数。 This页面包含有关如何使用这些参数创建深度图的信息。