我正在使用open cv和C ++。我有2张脸部图像,上面有标记点。我已经找到了标记点的坐标。现在我需要根据这些坐标对齐这两个面部图像。这两个图像可能不一定具有相同的高度,这就是为什么我无法弄清楚如何开始对齐它们,应该做什么等等。
答案 0 :(得分:2)
在您的情况下,您无法应用基于单应性的对齐程序。为什么不?因为它不适合这个用例。它被设计成对齐平面。在不同位置和深处具有标记的面(3D对象)显然不是平面。
相反,你可以:
答案 1 :(得分:1)
定义“对齐”。
或者更确切地说,注意到没有与正面图像的重叠部分匹配的正面图像的独特扭曲 - 这意味着存在无限的这种扭曲。
因此除了图像和一些匹配点之外,您还需要更好地指定目标是什么,以及您拥有哪些额外信息。例如,您的相机设置是否已校准?你知道相机的焦距及其相对位置和姿势吗?
您是否正在尝试构建纹理贴图(例如投影贴图),以便您可以在已有的3D模型上涂抹“合并”的面部图像?然后,您可能需要查看圆柱形或球形地图,并根据校准姿势构建图像的圆柱形或球形投影。
或者您是否尝试根据这2个视图重建头部的整个3d形状?显然你只能在两个图像重叠的小条上做到这一点,而且你发布的图像的质量看起来有点太差了。
还是...?