homography相关内容

图像 3D 旋转 OpenCV

我需要在 x 和 y 轴上执行 2D 图像的 3D 旋转.我读到我必须在 OpenCV 上使用 Homographic 矩阵,但我不知道如何设置矩阵以执行常见的旋转角度.例如 x 轴上 30 度或 y 轴上 45 度. 我读了这篇文章:翻译和旋转图像3D 使用 OpenCV.我尝试了不同的 f 值,但它不起作用. 我想知道我必须更改矩阵的哪些参数以及如何更改(公式).谢谢! 解决 ..
发布时间:2022-01-16 14:54:17 其他开发

将 2D 图像坐标转换为 z = 0 的 3D 世界坐标

OpenCV => 3.2 操作系统/平台 => Windows 64 位 编译器 => Visual Studio 2015 我目前正在从事我的项目,该项目涉及车辆检测和跟踪以及估计和优化车辆周围的长方体.为此,我已经完成了车辆的检测和跟踪,我需要找到车辆边界框边缘的图像点的 3-D 世界坐标,然后估计长方体和项目边缘的世界坐标它回到图像来显示它. 所以,我是计算机视觉和 Ope ..
发布时间:2022-01-09 18:37:39 C/C++开发

如何判断单应矩阵是否可以接受?

当使用 OpenCV 的 findHomography 函数来估计来自不同图像的两组点之间的单应性时,由于输入点内的异常值,有时您会得到一个糟糕的单应性,即使您使用 RANSAC 或LMEDS. //opencv java 例子:Mat H = Calib3d.findHomography(src_points, dst_points, Calib3d.RANSAC, 10); 如何判断生成的 ..
发布时间:2022-01-09 18:30:36 其他开发

从 OpenCV 中的 findHomography 中检测垃圾单应性?

我在点列表上使用 findHomography 并将结果发送到 warpPerspective. 问题是有时结果是完全垃圾,结果图像由奇怪的灰色矩形表示. 如何检测 findHomography 何时向我发送错误结果? 解决方案 您可以对输出执行几个健全性测试.在我的头顶上: 计算单应性的行列式,看看它是否太接近于零而不舒适. 更好的是,计算它的 SVD,并验证第一个奇 ..
发布时间:2022-01-09 18:08:14 其他开发

基于4个共面点的单应矩阵计算相机位姿

我在视频(或图像)中有 4 个共面点代表一个四边形(不一定是正方形或矩形),我希望能够在它们的顶部显示一个虚拟立方体,其中立方体的角正好站立在视频四边形的角落. 由于这些点是共面的,我可以计算单位正方形的角(即 [0,0] [0,1] [1,0] [1,1])和四边形的视频坐标之间的单应性. 根据这个单应性,我应该能够计算出正确的相机位姿,即 [R|t],其中 R 是 3x3 旋转矩阵 ..
发布时间:2022-01-09 17:51:55 其他开发

Android OpenCV 查找最大的正方形或矩形

这可能已经得到回答,但我迫切需要一个答案.我想在 Android 中使用 OpenCV 找到图像中最大的正方形或矩形.我找到的所有解决方案都是 C++,我尝试转换它但它不起作用,我不知道我错在哪里. private Mat findLargestRectangle(Mat original_image) {Mat imgSource = original_image;imgproc.cvtCol ..
发布时间:2021-12-10 21:07:00 移动开发

如何检查获得的单应矩阵是否良好?

这个问题已经被问到,但我还是不明白.我通过从一组点调用 cv::findHomography 来获得一个单应矩阵.我需要检查它是否相关. 建议的方法是计算内点的最大重投影误差并将其与阈值进行比较.但是经过这样的过滤后,我不断得到疯狂的变换,对象边界框变换为几乎一条直线或一些奇怪的非凸四边形,具有自相交等. 可以使用哪些约束来检查单应矩阵本身是否足够? 解决方案 你的问题是数学问题.给定 ..

Opencv虚拟相机旋转/平移鸟瞰图

我有一台经过校准的相机,我可以准确了解内在和外在数据.相机的高度也是已知的.现在我想虚拟旋转相机以获得鸟瞰图,这样我就可以构建具有三个旋转角度和平移的单应矩阵. 我知道可以通过 Homography 将 2 个点从一个图像转换为另一个图像 x=K*(R-t*n/d)K^-1 * x' 我现在想知道一些事情:如果我想恢复ccs中的图像坐标,我必须将它与K^-1相乘,对吗?作为图像坐 ..
发布时间:2021-12-10 20:24:35 其他开发

从单应性或使用 solvePnP() 函数估计相机姿态

我正在尝试在一张照片上构建静态增强现实场景,其中平面和图像上的共面点之间有 4 个定义的对应关系. 以下是分步流程: 用户使用设备的相机添加图像.让我们假设它包含一个从某个角度捕获的矩形. 用户定义矩形的物理尺寸,它位于水平面(就 SceneKit 而言是 YOZ).让我们假设它的中心是世界的原点 (0, 0, 0),所以我们可以很容易地找到每个角的 (x,y,z). 用户在图像坐 ..
发布时间:2021-11-30 17:04:22 移动开发

使用 OpenCV Python 计算相机世界位置

我想计算我的相机在世界坐标中的位置.这应该相当容易,但我没有得到我期望的结果.我相信我已经阅读了有关此主题的所有内容,但是我的代码无法正常工作.这就是我所做的: 我有一个摄像头在观察一个区域. 1) 我画了一张该地区的地图. 2) 我使用 cv2.getPerspectiveTransform 通过将 4 个图像点与地图上的 4 个点进行匹配来计算单应性 3) H单应性将每个 ..
发布时间:2021-11-30 17:02:09 Python

基于 4 个共面点的单应矩阵计算相机姿态

我在代表四边形(不一定是正方形或矩形)的视频(或图像)中有 4 个共面点,我希望能够在它们的顶部显示一个虚拟立方体,立方体的角正好站立在视频四边形的角落. 由于这些点是共面的,我可以计算单位正方形的角(即 [0,0] [0,1] [1,0] [1,1])和四边形的视频坐标之间的单应性. 根据这个单应性,我应该能够计算出正确的相机姿势,即 [R|t],其中 R 是 3x3 旋转矩阵,t ..
发布时间:2021-11-30 17:01:13 其他开发

Tensorflow中单应性的实现

我正在尝试在 TensorFlow 中实现一个学习预测单应性的网络(Wiki)一>).我的网络将输出一个 4 维向量,该向量将用于水平和垂直平移 2 个图像.然后,我使用中心作物(tf.image.central_crop) 这些扭曲的图像.我尝试实现它,对于翻译部分,我使用了 tf.contrib.image.translate.但是,梯度并没有流向网络的变量.我该如何解决这个问题?这是我得到的 ..
发布时间:2021-09-05 18:51:46 Python

OpenCV - 投影、单应矩阵和鸟瞰图

我想获得鸟瞰图的单应矩阵,并且我知道相机的投影矩阵.他们之间有什么关系吗? 谢谢. 解决方案 投影矩阵被定义为相机的内在(例如焦距、主点等)和外在(旋转和平移)矩阵的乘积.问题是你的旋转和平移是什么?例如,我可以想象另一台相机或一个 3D 对象,你有这些旋转和平移.否则你的投影只是一个内在矩阵. 首先考虑获得鸟瞰图所需了解的信息:您至少需要知道您的相机是如何相对于地面定向的.如 ..
发布时间:2021-06-22 18:31:13 其他开发

如何应用iOS VNImageHomographicAlignmentObservation warpTransform?

我正在测试Apple的Vision Alignment API,并且对VNHomographicImageRegistrationRequest有疑问.有人有工作吗?我可以从其中获得warpTransform,但是我还没有看到一个有意义的矩阵,也就是说,我无法获得将图像扭曲回到源图像的结果.我正在使用Opencv warpPerspective来处理变形. 我称其为转换: 类函数单应性(_ ..
发布时间:2021-05-17 18:37:02 移动开发

OpenCV:wrapPerspective整个图像

我正在检测iPad捕获的图像上的标记.因此,我想计算它们之间的平移和旋转,因此我想更改这些图像在图像上的变化角度,因此好像我是直接在标记上方捕获它们一样. 现在我正在使用 points2D.push_back(cv :: Point2f(0,0));points2D.push_back(cv :: Point2f(50,0));points2D.push_back(cv :: Point ..
发布时间:2021-04-25 18:36:05 移动开发

使用任意已知几何关系计算单应矩阵

我正在将OpenCV用于光学测量系统。我需要在数码相机拍摄的两个图像之间进行透视转换。在摄像机的视场中,我放置了一组标记(位于同一平面上),它们用作两个图像中的对应点。使用标记的位置,我可以计算单应矩阵。问题在于,实际上要转换其图像的被测对象与标记之间的距离很小,并且与标记的平面平行。我可以测量这个距离。 我的问题是,在计算单应矩阵时如何考虑该距离,这对于执行透视变换是必不可少的。 在 ..
发布时间:2020-10-07 18:52:24 其他开发

相机单应性

我正在学习相机矩阵的东西。我已经知道我可以通过在物体空间的平面中使用四个点来获得相机的单应性(3 * 3矩阵)。我想知道我们是否可以在平面上没有四个点的情况下获得同形像?如果是,我如何获得矩阵?我应该看什么公式? 我也将单应性与另一个概念相混淆:如果我想将点从一个坐标转换为另一个坐标,则只需要知道三个点即可。系统。那么,为什么在计算单应性时需要四个点呢? 解决方案 Homograph ..
发布时间:2020-09-29 01:37:46 其他开发