gpt4 book ai didi

algorithm - 如果不是双线性插值,这是什么技术?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:45:54 29 4
gpt4 key购买 nike

总结:我在下面描述的技术有名称吗?

this question我描述了一种情况,我有四个非轴对齐的 2D 输入点映射到输出向量,并且希望将任意输入点映射到新的输出向量。

(-19,-7) -> (-150,-100)
( 10,-8) -> ( 150,-100)
(-11, 4) -> (-150, 100)
( 9, 7) -> ( 150, 100)
(-4.2,1) -> ( ??, ??)

基于 one answer我想出了我的 own algorithm ,如上图所示为绿色和橙色计算。有关详细信息,请参阅答案,但简而言之:在顶行和底行找到 X 截距,将输出值插入到那些“北”/“南”位置,然后根据输入点所在的位置在这些输出之间插入行。

对我的回答的评论表明我所做的不能称为“双线性插值”。我相信这是因为我正在计算顶部和底部边缘的不同百分比,并且我这样做的方式可能会导致四边形内的某些输入点导致输出值超出角输出点的最小/最大值.

  • 例如,在我的方案中输入 (-19,0) 会产生沿底部边缘 -40% 的点,因此会产生 ~(-236,43) 的输出值,远低于 -150 的 minX。

如果不是“双线性插值”,这个算法是什么?而且,如果您允许第二个问题,您将如何像我一样对非平行四边形输入使用双线性插值这里?这可能吗?

可以找到我的算法的漂亮视觉测试 on my website .

最佳答案

我不知道这种算法是否有名称,但您似乎在尝试反转 map ,将 4 点多边形的坐标转换为矩形。这段代码中使用了类似的东西 http://www.vcskicks.com/image-distortion.php如果你想更好地解释 out is works 你可以在这里找到它 http://ryoushin.com/cmerighi/en-US/2006-09-30_21/Quadrilateral_Distortion_Algorithm .但请记住,这些几何算法速度很慢,而且不适用于凹形..(您可能在测试中也注意到了这一点)..

这就是为什么我开发了一种不同的技术 http://www.codeproject.com/Articles/247214/Quadrilateral-Distortion这在凹多边形上更快并且更容易中断..

但是,如果您想要达到的效果与您的示例类似.. 从给定点创建渐变.. 可能有更简单和更有效的方法来做到这一点..比点映射..也许你可以枚举 Canvas 上的所有点并根据“ anchor ”点的距离选择它的颜色..我可能会更快..并且不会有那些凹陷的毛刺..

关于algorithm - 如果不是双线性插值,这是什么技术?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24019709/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com