如何将点映射到变形网格上 [英] How to map a point onto a warped grid

查看:217
本文介绍了如何将点映射到变形网格上的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设你有一组笛卡尔坐标系统上的坐标点。



您想绘制另一个点,并且您知道它在相同笛卡尔坐标系中的坐标。



但是,您所绘制的情节与原始情节有所歪曲。想象一下,拿原来的飞机,在橡胶板上印刷,并在某些地方拉伸,并以不对称的方式(不重叠或任何复杂的东西)将其捏在其他地方。

来源



你知道延伸和你的每一组点的未拉伸坐标,但不包括底层拉伸函数。你知道一个新点的未伸展坐标。



你如何根据附近点的拉伸位置来估计伸展坐标中新点的绘制位置?它不一定是确切的,因为除非您有更多信息,否则您无法从一组重新映射的点中确定实际拉伸函数。其他可能的关键字:b
$ b

其他可能的关键字:扭曲的网格网格平面坐标unwarp

解决方案

好的,这听起来像是图像扭曲。这是你应该做的:


  1. 创建一个 Delaunay三角剖分的未变形网格,并使用变形和未变形网格之间对应关系的知识来创建变形网格的三角剖分。现在您知道每张图片中的相应三角形,并且由于没有重叠,您应该可以毫不费力地执行下一步。

  2. 现在,以在扭曲的图像中找到相应的点 A


    1. 找到三角形 A 位于并使用未变形网格中的trianble和变形网格之间的转换来计算出新位置。


详细说明 here 另外一个(更复杂的)方法是< a href =http://en.wikipedia.org/wiki/Thin_plate_spline =nofollow noreferrer> Thin Plate Spline (这也在上面的幻灯片中解释过)。

Say you have a collection of points with coordinates on a Cartesian coordinate system.

You want to plot another point, and you know its coordinates in the same Cartesian coordinate system.

However, the plot you're drawing on is distorted from the original. Imagine taking the original plane, printing it on a rubber sheet, and stretching it in some places and pinching it in others, in an asymmetrical way (no overlapping or anything complex).

(source)

You know the stretched and unstretched coordinates of each of your set of points, but not the underlying stretch function. You know the unstretched coordinates of a new point.

How can you estimate where to plot the new point in the stretched coordinates based on the stretched positions of nearby points? It doesn't need to be exact, since you can't determine the actual stretch function from a set of remapped points unless you have more information.

other possible keywords: warped distorted grid mesh plane coordinate unwarp

解决方案

Ok, so this sounds like image warping. This is what you should do:

  1. Create a Delaunay triangulation of your unwarped grid and use your knowledge of the correspondences between the warped and unwarped grid to create the triangulation for the warped grid. Now you know the corresponding triangles in each image and since there is no overlapping, you should be able to perform the next step without much difficulty.

  2. Now, to find the corresponding point A, in the warped image:

    1. Find the triangle A lies in and use the transformation between the trianble in the unwarped grid and the warped grid to figure out the new position.

This is explained in explicit detail here.

Another (much more complicated) method is the Thin Plate Spline (which is also explained in the slides above).

这篇关于如何将点映射到变形网格上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆