我正在尝试找到一种简单的算法来查找两组2D点(注册)之间的对应关系。一组包含我要查找的对象的模板,第二组主要包含属于感兴趣对象的点,但是它可能很嘈杂(缺少点以及不属于该对象的其他点) 。两组都包含约40个2D点。第二组是第一组的单应性(平移,旋转和透视变换)。
我对寻找一种注册算法以获取点对应感兴趣。我将使用此信息来查找两组之间的转换(所有这些都在OpenCV中)。
谁能建议可以完成这项工作的算法,库或少量代码?当我处理小集合时,不必对其进行超级优化。目前,我的方法是类似于RANSAC的算法:
从集合1和集合2中选择4个随机点。
计算变换矩阵H(使用openCV getPerspective())
使用H扭曲第一组点并测试它们如何与第二组点对齐
重复1-3 N次,然后根据某种度量标准(例如平方和)选择最佳变换。
有任何想法吗?感谢您的输入。