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