【发布时间】:2020-12-14 13:04:03
【问题描述】:
我正在尝试使用 libvips http://www.imagemagick.org/Usage/distorts/#perspective 实现等效的 imagemagick 透视扭曲
根据这个答案How to perform perspective distort transformation in VIPS? 可以使用 mapim 来实现
但是我不明白如何将 imagemagick 中使用的一组连接点转换为这种类型的变换矩阵
T = [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0003, 0.0001]
【问题讨论】:
-
您通常会有一组连接点,然后执行最小均方法之类的操作来找到最适合的变换。
-
@jcupitt 谢谢!所以你的意思是这是一个回归问题?我们将原始坐标作为 x,将目标作为 y,并尝试找到一个最能描述 x -> y 的多项式?不幸的是,我缺乏了解这将如何工作的背景。如何找到“最合适”的?变换矩阵中的数字代表什么?系数?
-
所以我发现opencv使用了类似的公式,但它是一个3x3矩阵而不是8个值数组????????????(x,y)=? ?????????????(M11x+M12y+M13M31x+M32y+M33,M21x+M22y+M23M31x+M32y+M33)
-
如果我使用这个公式,我可以使用opencv的getPerspectiveTransform来获取我的矩阵
标签: go imagemagick vips