我有带有一组点的图案图像和带有一组点的第二个测试图像。我知道点的坐标 x,y。 这些点有它们的名称(数字),我知道图案图像中所有点的数量,在测试样本中我知道两个点的数量。我想根据这两个已知点旋转测试图像以在图案图像上拟合测试图像(我不想缩放它)。然后我想计算模式点到测试点的距离。我想用Java编写算法,知道怎么做吗?
问问题
172 次
1 回答
1
看看 java.awt.geom.AffineTransform,你也会找到相关的教程。似乎您想将蓝色 0 映射到红色 0 上,所以我首先要平移两个组,使它们的 0 位于坐标系的原点。请参阅 AffineTransform.getTranslateInstance。
接下来,我将检查向量到蓝色和红色组中的点 1。您可以找到它们相对于 x 轴的角度 (arctan(y/x))。两个角度之差是您想要旋转蓝色组以使点 1 指向同一方向的角度。请参阅 AffineTransform.getRotateInstance。匹配点对似乎是最困难的部分......
于 2013-05-18T19:52:39.777 回答