我们有一个带有红色方 block 的网格。这意味着我们有一个由 3 个正方形组成的数组(角度 == 90 度),正如我们所知,它们具有相同的大小,位于同一平面上并且相对于它们所在的平面具有相同的旋转,并且不位于同一平面上飞机。
我们有一个包含正方形平面的空间投影。
我们想用正方形转动我们的平面投影,以便我们看到它就像面对我们一样,一般来说,我们需要一个公式来转动原始平面投影的每个点,以便它像下图一样面对我们.
这个问题可以用什么公式来解决,怎么解决,有没有人遇到过这样的问题?
最佳答案
这是寻找保留直线的四边形之间映射的特例。这些通常称为单应变换。在这里,其中一个四边形是正方形,所以这是一个流行的特例。您可以在 google 上搜索这些术语(“quad to quad”等)以查找解释和代码,但这里有一些适合您。
Perspective Transform Estimation
extracting a quadrilateral image to a rectangle
ProjectiveMappings for ImageWarping作者:保罗赫克伯特。
数学不是特别令人愉快,但也不是那么难。您还可以从上述链接之一找到一些代码。
关于algorithm - 是否有解决此类投影重建几何问题的算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3705195/