我有一个应用程序,它有两个透视变换,从两个findHomeography调用中获得,这些调用依次应用于一组点(python):
pts = np.float32([ [758,141],[769,141],[769,146],[758,146] ]).reshape(-1,1,2)
pts2 = cv2.perspectiveTransform(pts, trackingM)
dst = cv2.perspectiveTransform(pts2, updateM)
我想把它合并成一个单一的转换。我尝试了以下方法,但转换不正确:
^{pr2}$如何将两个矩阵变换合并为一个变换?现在我正在python中构建原型。除了Python之外,C++解决方案将是一个额外的奖励。在
在}是{}。我认为,在你的情况下,你应该选择
numpy
,np.multiply(M, N)
是elementwise-product
,而{np.dot
。在例如:
我在this post中找到了答案的线索。本质上,我的原始代码是在执行@smiler指出的元素级乘法。诀窍是在进行乘法运算之前将变换转换为矩阵:
操作数的顺序是重要的。我们可以把上面的内容看作是将updateM转换应用到trackingM转换,以匹配原始问题中所述的顺序。在
相关问题 更多 >
编程相关推荐