我想在我的Android应用程序中使用AffineTransform。 我的应用程序使用openCV,我有两个Rect(openCV对象包含:x,y,width,height)每个Rect描述图像尺寸。 我想使用AffineTransform来查看一个图像如何与其他图像一起呈现矩形(尺寸)。 我的问题是我不知道如何将Rect转换为3 * 3 Matrix,以便使用:
How to perform a similar operation as AffineTransform.transform on Android?
感谢的 大卫
答案 0 :(得分:1)
编辑(第一条评论): 对不起,我以为你试图转换图像,而不是几何数据。无论如何,在您的情况下,您不需要完全仿射变换。您只需要缩放x和缩放y。适当的转换矩阵将是:
(sx,0,0)
(0,sy,0)
(0,0,1)
编辑(第二条评论):
sx = (double)rect1.width/rect2.width;
sy = (double)rect1.height/rect2.height;
double m[9] = {sx, 0, 0, 0, sy, 0, 0, 0, 1};
Mat transf(3, 3, CV_64F, m);