应用程序PhotoFiltre可以选择拉伸图像的一部分。您选择一个矩形,然后您可以抓取顶点并将其移动到其他位置以制作任何四边形。您选择的图像部分将延伸。希望这些图片能让我的观点更清楚一点:
有没有可以处理这个问题的通用算法?我想在 HTML5 画布上获得相同的效果 - 给定图像和生成的角点,我希望能够绘制拉伸的图像,使其整齐地填充新的四边形。
前段时间我问过类似的问题,解决方案是将图像分成三角形并拉伸每个三角形,使每三个点对应于原始图像上的三个点。事实证明,这种技术相当昂贵,我希望有更通用的方法来实现这一点。
我想在 3D 渲染器中使用它,但我想使用(2D)四边形。
我不知道 PhotoFiltre 内部是否也使用三角形,或者它是否使用另一种(更便宜的)算法来拉伸这样的图像。
有人可能知道是否有更便宜或更通用的方法/算法来拉伸矩形图像,以便在给定四个点的情况下填充四边形?