Tag: 相机校准

OpenCV 3.0:校准不符合预期

当我使用OpenCV 3.0 calibrateCamera时,我得到的结果是我不期望的。 这是我的algorithm: 加载30个图像点 加载30个相应的世界点(在这种情况下是共面的) 使用点来校准相机,只是为了不失真 不扭曲的图像点,但不要使用内在(共面的世界点,所以内部函数是狡猾的) 使用未失真的点find单应性,转换到世界点(可以这样做,因为它们都是共面的) 使用单应性和透视变换将未失真的点映射到世界空间 将原始世界点与映射点进行比较 我有点嘈杂,只有一小部分的形象。 从一个视图中共有30个共面点,所以我不能得到相机内在的东西,但应该能够得到畸变系数和单应性来创build一个平行的视angular。 如预期的那样,错误根据校准标志而变化。 但是,它与我所预期的相反。 如果我允许所有的variables进行调整,我预计错误会下降。 我并不是说我期待一个更好的模型; 我实际上期望过度适合,但是这应该仍然减less错误。 我所看到的是,我使用的variables越less,我的错误就越低。 最好的结果是直接的单应性。 我有两个怀疑的原因,但他们似乎不太可能,我希望听到一个毫不犹豫的答案,然后我播放他们。 我已经拿出代码来做我正在谈论的事情。 这有点长,但它包括加载点。 代码似乎没有错误; 我已经使用“更好”的点,它完美的作品。 我想强调的是,这里的解决scheme不能使用更好的点或更好的校准; 练习的要点是看各种校准模型是如何响应不同质量的校准数据的。 有任何想法吗? 添加 要清楚,我知道结果将是不好的,我期待这一点。 我也明白,我可能会学习不好的失真参数,当testing未用于训练模型的点时,会导致更差的结果。 我不明白的是,使用训练集作为testing集时,失真模型的误差如何。 也就是说,如果cv :: calibrateCamera应该select参数来减less所提供的训练集上的错误,但是它比K!,K2,… K6,P1刚select0时产生更多的错误,P2。 数据不好或不好,至less应该在训练集上做得更好。 在我可以说这些数据不适合这个模型之前,我必须确保我可以用尽可能多的数据做到最好,在这个阶段我不能这么说。 这里是一个示例图像 带有绿色针脚的点标记。 这显然只是一个testing图像。 这里是更多的例子的东西 在下面的图像是从上面的大一个裁剪。 该中心没有改变。 这就是当我不扭曲的情况下,从绿色的引脚手动标记的点,并允许K1(只有K1)从0: 之前 后 我会把它放在一个错误,但是当我使用一个更大的点覆盖更多的屏幕,即使从一架飞机,它的工作相当好。 这看起来很糟糕。 但是,这个错误并不像你想象的那样糟糕。 // Load image points std::vector<cv::Point2f> […]

如果已知外部和内部参数,则从2D图像像素获取3D坐标

我正在做tsai algo的相机校准。 我得到了内在和外在的matrix,但是我怎样才能从这个信息中重build三维坐标呢? 1)我可以使用高斯消去来findX,Y,Z,W,然后点将是X / W,Y / W,Z / W作为同质系统。 2)我可以使用OpenCV文档方法: 因为我知道u , v , R , t ,我可以计算X,Y,Z 。 但是,这两种方法的结果都不一样,不正确。 我在做什么错了?

如何validation摄像头校准的正确性?

我完全不熟悉相机校准技术…我正在使用OpenCV棋盘技术…我使用Quantum的networking摄像机… 这是我的观察和步骤.. 我保留了每个棋方方= 3.5厘米。 这是一个7×5的棋盘, 6×4的内angular。 我在networking摄像头的距离为1到1.5米处采集了10张不同视图/姿势的图像。 我正在学习由Bradski 学习OpenCV中的C代码进行校准。 我的校准码是 cvCalibrateCamera2(object_points,image_points,point_counts,cvSize(640,480),intrinsic_matrix,distortion_coeffs,NULL,NULL,CV_CALIB_FIX_ASPECT_RATIO); 在调用这个函数之前,我将沿着固有matrix的对angular线的第一个和第二个元素作为一个来保持焦距的比例不变,并使用CV_CALIB_FIX_ASPECT_RATIO 随着棋盘距离的变化, fx和fy随着fx:fy变化几乎等于1.有cx和cy值在200到400的顺序fx和fy在300-700的数量级我改变了距离。 目前我已经把所有的失真系数归零,因为我没有得到包括失真系数在内的好结果。 我原来的形象看起来比不失真的英俊! 我是否正确地进行校准? 我应该使用除CV_CALIB_FIX_ASPECT_RATIO其他选项吗? 如果是,哪一个?