- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我必须进行相机校准。我了解一般概念并且可以正常工作,但是在许多指南中它说要使用许 multimap 像或至少两个具有不同方向的图像。为什么这是必要的?我似乎用一张 14x14 点的图像获得了相当不错的结果:
我用 cv::findCirclesGrid 找到点并使用 cv::calibrateCamera 找到外部和内部参数。内在猜测设置为 false。主点和纵横比不固定,而切向畸变固定为零。
然后我使用 cv::getOptimalNewCameraMatrix、cv::initUndistortRectifyMap 和 cv::remap 来恢复图像。
在我看来结果还不错,但是我是不是漏掉了什么?它真的是错的,只是等着以后给我带来麻烦吗?
此外,在您问我为什么不使用多张图片来确定之前;我正在编写的软件将与半固定相机支架一起使用,一次校准多个相机。因此,首先需要修改支架,以便将图案定位在一个角度或偏离中心,因为目前它只能移近或移远。其次,不应因必须捕获更 multimap 像而不必要地减慢该过程。
编辑:向 Micka 问“如果你的视角在图案上不是 90° 会发生什么?你可以尝试将图案旋转远离相机吗?”。我得到了一些类似的结果,尽管它发现失真较少。用尺子看边框好像90°的刻度比较好,但是真的不好说。
最佳答案
在不同的方向上有更多的模式是必要的,以避免内部参数非常不准确但不失真的像素重投影误差仍然很低的情况,因为不同的误差补偿。
为了说明这一点:如果您只有一张以 90 度视角拍摄的图像,那么从侧面稍微观察一下图案就很难区分水平焦距的变化。将这两个参数分开的唯一线索是线条的逐渐变细,但这种测量非常嘈杂。因此,您需要多个显着角度的 View ,以将姿势的这一方面与内在参数分开。
如果您知道您的图像是以 90 度观看的,您可以利用它来发挥自己的优势,但它需要修改 opencv 算法。如果您确定所有图像都将从与校准图像相同的姿势捕获,那么这并不重要,因为即使各个校准参数不准确但可以补偿(即它们可以很好地补偿这个特定姿势),不失真也会很好,但其他姿势效果不佳)。
关于c++ - 单张图像的相机校准?它似乎有效,但我错过了什么吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27821198/
使用 Kinect for Windows SDK,校准相机的最简单方法是什么? 我找到了这篇可爱的博文 http://nicolas.burrus.name/index.php/Research/K
我最初在 OpenCV 论坛上发布了这个,但不幸的是,我没有得到太多的意见/回复,所以我在这里发布是希望有人可能有方向建议? 我正在使用 Bumblebee XB3 立体相机,它有 3 个镜头。我花了
当移动很远的距离时,比如去另一个城市,关闭 GPS,打开它需要很长时间才能找到第一个正确的点。 因此,如果我通过示例注册到 gps 提供程序,则可能需要 10 分钟才能收到第一个 onLocation
在我的应用中,我使用加速度计来控制游戏中的角色。现在我只允许纵向,所以用户必须向右或向左倾斜设备才能移动角色。到目前为止一切正常。我现在想要完成的是“校准”加速度计以考虑用户正在玩的当前倾斜度。假设用
我使用 2 个 CANON EOS60d 作为立体设置来进行摄影测量。我正在使用 OpenCV 使用高精度 Circlegrid 校准模式校准两个相机。我正在使用信号发生器同时触发两个相机,早些时候我
我花了很长时间才让函数在 OpenCV 中运行,所以我想知道我的总体计划是否有意义,然后再深入研究尝试实现它的细节。 (2.3.1、Windows 7、C++)如果有任何建议,我将不胜感激。 问题:
我注意到 h2o.ai 套件的一个相对较新的添加,能够执行补充 Platt Scaling 以改进输出概率的校准。 (请参阅 calibrate_model in h2o manual 。)不过,在线
我正在尝试在 STM32F042 微 Controller 上读取 VDDA。我在 VDD 为 3.29V 时得到了意想不到的结果。我一定缺少一些基本的东西。 输出: VREFINT=1917; VR
请原谅我对编码完全陌生。首先,出于该项目的目的,我正在使用 Python 绑定(bind)到 OpenCV 的库。 我的相机已针对显示鱼眼失真进行了校准。我分别获得了 K 和 D 的以下值,即固有相机
如何使用 Netbeans 8.1 进行 JDK 校准。我用谷歌搜索了一些并找到了这个链接 here . It says "choose Profile > Advanced Commands > R
我目前正在开发增强现实应用程序。目标设备是光学透视 HMD,我需要校准其显示器以实现虚拟对象的正确注册。我用过那个implementation of SPAAM对于 android 来说,结果对于我的
我是一名优秀的程序员,十分优秀!