homography相关内容

从单应性或使用 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 其他开发

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 其他开发

findHomography返回的mask参数的值代表什么?

我正在使用带有RANSAC方法的OpenCV的 findHomography 函数,以查找将两个图像与一组关键点相关联的单应性。 主要问题是我还无法找到该函数输出的掩码矩阵的值是什么。 我知道的唯一信息是0值是异常值,非零值是inlier。但是,这意味着Inliers的价值是什么?有人知道吗? 我称之为 findHomography 的代码段: cv :: Mat H12 ..
发布时间:2020-09-27 02:53:11 其他开发

如何从C#中的3x3同构矩阵获得旋转,平移,剪切

我计算了3x3单应性矩阵,需要旋转,平移,剪切和缩放以将它们用作Windows8媒体元素属性中的参数?! 解决方案 请参见 https://math.stackexchange。 com / questions / 78137 / decomposition-a-nonsquare-affine-matrix def getComponents(normalized_homogra ..
发布时间:2020-09-26 00:25:23 其他开发

Matlab中的透视变换

让我们说: point1 = [1 2 3 4 5 ; 1 2 3 4 5 ]; point2 = [2 3 4 5 6 ; 2 3 4 5 6 ]; s = findHomography(points1,points2); Coordinates of an object containing points1 are [0,0; 10,0; 0,10; 10,10] 如何找到对象上 ..
发布时间:2020-08-10 22:41:24 其他开发

opencv翻译向量的已知单位

是否有任何方法可以使用相应的特征点以两个平面对象之间的已知单位(例如"mm"或"cm")计算平移矢量.如果是,请告诉我该怎么做. 到目前为止,我已经尝试过使用Essential Matrix计算(针对非平面对象),并且没有将它们放在已知的单元中. 先谢谢您! 解决方案 仅当您知道平面上这些点中的某些点(至少两个)之间的物理距离时,才可以确定比例.否则,你很不走运. 在没有 ..
发布时间:2020-07-23 05:22:07 其他开发

用于OpenCV的抖动校正的图像校正

我有2张未经校准的相机拍摄的同一场景的照片.图片的角度和比例(缩放)略有不同,我想将它们叠加起来,拒绝任何形式的抖动.换句话说,我应该对其进行转换,以使抖动变得难以察觉,请执行运动补偿. 我已经尝试过使用简单的SURF(特征)检测器和同形照相术,但有时结果并不令人满意.因此,我正在考虑尝试图像校正来补偿运动. -进行轻微更改(例如用户晃动)是否可以使用? -拒绝这两个帧的抖动真的有效吗?而对 ..
发布时间:2020-05-20 21:23:47 其他开发

Python:opencv warpPerspective既不接受2个参数也不接受3个参数

我在功能匹配+全息照相教程使用 M, mask = cv2.findHomography(src_pts, dst_pts, cv2.RANSAC,5.0) ,现在我需要扭曲第二个图像(旋转的图像)以匹配第一个图像的关键点,因此,由于我们已经具有Homography矩阵,因此我尝试直接在img2上使用warpPerspective进行操作. (他们没有在本教程中使用warpPersect ..
发布时间:2020-05-20 21:18:47 其他开发

使用OpenCV计算虚拟相机的单应性

我有一个平面的图像,并且我想计算一个图像扭曲,该图像扭曲可以让我从位于3d空间中另一点的虚拟相机看到的同一平面的合成视图. 因此,给定图像I1,我想计算一个图像I2,该图像代表从虚拟相机看到的图像I1. 理论上,存在将这两个图像相关的单应性. 在虚拟摄像机的摄像机姿势及其内部参数矩阵的情况下,如何计算单应性? 我正在使用opencv的warpPerspective()函数应 ..
发布时间:2020-05-20 21:12:33 其他开发

拼接图像无法检测到共同的特征点

我希望使用OpenCV和C ++缝合两个或更多图像.图像具有重叠区域,但未被检测到.我尝试使用单应性检测器.有人可以建议我应该使用其他什么方法.另外,我希望使用ORB算法,而不要使用SIFT或SURF. 这些图像可以在以下位置找到: https://drive.google.com/open?id=133Nbo46bgwt7Q4IT2RDuPVR67TX9xG6F > 解决方案 这是一个非常 ..
发布时间:2020-05-20 21:01:09 其他开发

如何在Java中检测图像中的四边形形状?

我想在Java中检测图像中的四边形形状.我可以在OpenCV中使用HoughLinesP方法(将javaCV用于opencv java绑定)来检测线段.但我不知道如何检测四边形-是否有另一种方法或某种方式使用霍夫线?同样,一旦检测到四边形的角,我希望它像该类一样返回一个矩形-解决方案 您的输入图像看起来如何?如果通过霍夫变换检测到许多线段,则可以尝试使用 RANSAC 生成一个大量的四边形假设, ..
发布时间:2020-05-20 20:46:24 其他开发

Opencv单应性不会产生所需的转换

我正在尝试沿对象(此处是书)的边缘变换图像.使用Canny边缘检测,我正在检测边缘,并根据像素值从分数矩阵中,选择一个随机4个位于边缘上的坐标进行变换.但是这种转变并不像预期的那样.问题出在哪里/我在哪里错过了? 首先,我将图像的一部分切出.然后应用canny边缘检测并根据我自己的条件随机选择4个边缘坐标点,如下所示: 我的原始图片是: 对于实验,我已根据需要将其切成薄片: 此图 ..
发布时间:2020-05-20 20:38:04 其他开发

单应性opencv的旋转和平移矩阵

我正在用Java开发一个android应用程序,我使用findHomography()用opencv计算了单应性,如何找到包含通过单应性旋转和平移的相机姿势矩阵 Mat homography = Calib3d.findHomography(ReferencePoints2, ReferencePoints1,0,Calib3d.RANSAC); 解决方案 您需要知道相机的固有参数. ..
发布时间:2020-05-20 20:35:47 其他开发