gpt4 book ai didi

python - OpenCV Python:distCoeffs2不是数字元组

转载 作者:行者123 更新时间:2023-12-02 17:37:17 27 4
gpt4 key购买 nike

我正在使用https://github.com/erget/StereoVision提供的StereoVision框架从立体声对中重建3D点云。

所有脚本运行平稳,但是执行calibrate_cameras.py脚本会出现以下错误:

distCoeffs2 is not a numerical tuple 

更具体地说,以下代码段中的cv2.stereoCalibrate函数调用中发生了错误
    (calib.cam_mats["left"], calib.dist_coefs["left"],
calib.cam_mats["right"], calib.dist_coefs["right"],
calib.rot_mat, calib.trans_vec, calib.e_mat,
calib.f_mat) = cv2.stereoCalibrate(self.object_points,
self.image_points["left"],
self.image_points["right"],
calib.cam_mats["left"],
calib.dist_coefs["left"],
calib.cam_mats["right"],
calib.dist_coefs["right"],
self.image_size,
calib.rot_mat,
calib.trans_vec,
calib.e_mat,
calib.f_mat,
criteria=criteria,
flags=flags)[1:]

关于导致问题的原因以及如何解决的任何想法?

我的系统:Windows 7 + Python 2.7.14 + OpenCV 2.4.9

任何帮助将不胜感激

提前致谢

最佳答案

对于遇到相同问题的任何人,有一个简单快捷的解决方法:更改参数self.image_size 的位置。

我将其发布在这里,希望对其他有相同问题的人有所帮助。

  • 转到C:\ Python27 \ Lib \ site-packages \ stereovision
  • 在IDLE中打开Calibration.py脚本
  • 更改代码部分
    (calib.cam_mats["left"], calib.dist_coefs["left"],
    calib.cam_mats["right"], calib.dist_coefs["right"],
    calib.rot_mat, calib.trans_vec, calib.e_mat,
    calib.f_mat) = cv2.stereoCalibrate(self.object_points,
    self.image_points["left"],
    self.image_points["right"],
    calib.cam_mats["left"],
    calib.dist_coefs["left"],
    calib.cam_mats["right"],
    calib.dist_coefs["right"],
    self.image_size,
    calib.rot_mat,
    calib.trans_vec,
    calib.e_mat,
    calib.f_mat,
    criteria=criteria,
    flags=flags)[1:]

  • 进入
        (calib.cam_mats["left"], calib.dist_coefs["left"],
    calib.cam_mats["right"], calib.dist_coefs["right"],
    calib.rot_mat, calib.trans_vec, calib.e_mat,
    calib.f_mat) = cv2.stereoCalibrate(self.object_points,
    self.image_points["left"],
    self.image_points["right"],
    self.image_size,
    calib.cam_mats["left"],
    calib.dist_coefs["left"],
    calib.cam_mats["right"],
    calib.dist_coefs["right"],
    calib.rot_mat,
    calib.trans_vec,
    calib.e_mat,
    calib.f_mat,
    criteria=criteria,
    flags=flags)[1:]
  • 保存文件

  • 问题已解决!

    关于python - OpenCV Python:distCoeffs2不是数字元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49532858/

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