问题标签 [camera-calibration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 对象的实际大小从其图像
我想根据在距相机固定距离处拍摄的图像计算对象的实际大小。相机的焦距是已知的。现在我将如何仅使用图像数据来计算对象的实际大小?
我正在使用 Opencv 实现该程序。
提前致谢。
PS:我对这个像素和厘米转换有点困惑。
opencv - 通用网络摄像头校准
我正在建立一个网站,该网站使用计算机视觉技术做一些很酷的事情,用户使用他们的网络摄像头实时录制和上传视频。为此,我需要相机内在和失真参数。考虑到用户上传的视频,我试图找出计算这些的最佳方法。我们不能对用户可能上传的视频做出任何假设 - 但一个合理的假设是视频中可能存在人类。我仍处于初始阶段,但我很想知道其他人是如何解决这个问题的。
具体来说,以下是我希望小组中有经验的人可能会评论的问题:
- 有哪些算法、库和技术可用于提取市场上任何通用网络摄像头的固有参数和失真参数?[我说“提取”而不是“校准”以包括内在参数只是一种方法调用而无需校准的情况]。
- 一般来说,您在市场上可用的网络摄像头的内在参数和失真参数中观察到多少差异?您是否使用单一的内在参数和失真参数来近似它们,或者您采用什么方法?
- 在这些场景中可以采用哪些相机自校准方法(如果有)?是否有任何可用的开源或商业库可能会有所帮助?
- 如果我们的目标是使用用户记录和上传的视频来校准网络摄像头,那么参数中的哪些假设 [如 fx==fy 或无失真参数] 对您来说是合理且合理的?
- 所有相机的内在参数和失真参数的合理近似是否有意义?验证特定网络摄像头的特定内在参数和失真参数有多好的合理方法是什么?
- 还有其他需要考虑的问题吗?
c++ - 使用 OpenCV 进行 3D 重建 C++ ..基本矩阵太大
好的,在进行了 4 天的无脑编程之后,我将我的生活难题发布到 stackoverflow,当时似乎没有任何事情可以让事情正确或至少接近正确。抱歉有点戏剧化,但我今天觉得自己像个糟糕的程序员。
无论如何,我的问题是:
使用 RANSAC (N>8) 获得基本矩阵。
我有两个具有宽基线但有足够重叠的图像,以便正确匹配足够数量的 SURF 关键点(~308)(我绘制它们)。
现在是问题所在。我将 2D 点传递给 cv::findFindamentalMat 但我得到完全没有根据的结果。函数返回:
为了规避矩阵的大动态范围,Hartley 建议对数据点进行归一化(在欧几里得空间而不是投影空间归一化)......即使这样做,结果也几乎相同。(10^-9 到 10^9)
我知道 FundMat 仅在规模上是准确的,但 10^-9 到 10^+9 的差异太大了。
我在这里提到了其他问题,但我似乎没有得到任何线索:findfundamentalmatrix-doesnt-find-fundamental-matrix how-to-calculate-the-fundamental-matrix-for-stereo-vision
任何想法都会很棒。在为软件管道的其余部分考虑未校准的图像时,这是一个非常重要的步骤。
如果代码有帮助。(虽然它没有缩进和着色......这里的空间太少了。) https://sites.google.com/site/3drecon124/
computer-vision - 相机校准 - 张与黄金标准
相对于使用Zhang在A Flexible New technology for Camera Calibration中描述的其他流行算法,使用多视图几何(Hartley 和 Zisserman)中描述的黄金标准算法有什么缺点/优点?我了解这两种算法之间的主要区别,但我不知道哪一种更好,为什么?
opencv - 相机校准 - 有理失真模型
我正在研究 OpenCV 2.2 函数cameraCalibration(...),我注意到一个标志 CV_CALIB_RATIONAL_MODEL 启用一个新的径向失真模型,该模型应该更好地与广角镜头配合使用:
这个模型究竟来自哪里?我阅读了一些似乎有些相关的论文,但他们使用的模型似乎与 OpenCV 实现的模型完全不同。
- 通用相机的有理函数镜头畸变模型
- 多视角几何和镜头畸变的同时线性估计
谁能给我更多关于模型 opencv 漏洞利用的信息以及为什么?
python - 非平面钻机的OpenCV相机标定
我已将此发布到 yahoo 上的 opencv 组,但没有运气。
我有一组从 3D 校准装置拍摄的照片中获取的图像/对象点,而不是使用棋盘。我已经将 Matlab 中的数据与 Bouguet 相机校准工具箱一起使用,并且可以正常工作!我正试图摆脱 Matlab(也许我不应该这样做)。
我的代码如下,我不断收到此错误“\OpenCV-2.3.1\modules\calib3d\src\calibration.cpp:3161: error: (-215) ni >= 0”
我一直在尝试使用 opencv 2.3.1 python 包装器。此外,我定义的初始相机矩阵非常接近 Matlab 工具箱中的计算值。我有一种感觉,将 Matlab 代码翻译成 python 比让它工作更容易,但我希望有人能证明这是错误的。提前感谢您的帮助。约翰
camera - 如何校准相机和机器人
我有一个机器人和一个相机。该机器人只是一台 3D 打印机,我在其中将挤出机更换为工具,因此它不会打印,但它会独立移动每个轴。床是透明的,床下有一个摄像头,摄像头永远不动。它只是一个普通的网络摄像头(playstation eye)。
我想校准机器人和相机,这样当我点击相机提供的图像上的一个像素时,机器人就会去那里。我知道我可以测量两个帧之间的平移和旋转,但这可能会返回很多错误。
所以这就是我的问题,我怎样才能将相机和机器人联系起来。相机已经使用棋盘校准。
为了让一切更容易,Z轴可以忽略。所以校准将超过 X 和 Y。
computer-vision - 如果两个图像之间的变换已知,则找到相机位置之间的变换
我已经获得了建筑物的两个图像。我知道这两个图像之间的转换,并且我也知道第一个相机位置相对于某个坐标系的坐标,我怎样才能在同一坐标中获得第二个图像的相机坐标. 我没有得到任何其他信息。
matlab - OpenCV 2.3 相机校准
我正在尝试使用OpenCV 2.3
python 绑定来校准相机。我在 matlab 中使用了下面的数据并且校准工作,但我似乎无法让它在 OpenCV 中工作。我作为初始猜测设置的相机矩阵非常接近从 matlab 工具箱计算的答案。
c++ - 使用 OpenCV 2.3.1 和 C++ 校准单个相机
我正在尝试使用 OpenCV 2.3.1 和 Visual Studio 2010(c++ 控制台应用程序)校准网络摄像头。我正在使用这个类:
我正在使用分辨率为 640x480 的 10 个棋盘图像(假设这足以进行校准)。主函数如下所示:
一切运行没有错误。cameraMatrix 看起来像这样(大约):
685.65 0 365.14
0 686.38 206.98
0 0 1
校准误差为 0.310157,这是可以接受的。
但是当我使用 remap 时,输出图像看起来比原始图像还要糟糕。这是示例:
原图:]
未失真的图像:]
所以,问题是,我在校准过程中做错了吗?10个不同的棋盘图像是否足以校准?你有什么建议吗?