考虑到眼睛和嘴巴的位置,是否可以确定面部的偏航,俯仰和滚动?(包括图片)

Eri*_*c L 5 c++ math opencv objective-c ios

在此输入图像描述

红点=左眼中心(L),右眼中心(R),嘴中心(M)

紫线=线LR

红线=与L和R的中点相交的水平线

黄线=垂直线在Mx处与LR相交

蓝线= LM和RM

绿线= L和R的X坐标之间的距离

根据这些数据,是否可以确定面部的偏航,俯仰和滚动?

我到目前为止所有的一切都是滚动:

Roll =左眼和右眼之间的角度差

知道L,R和M都相互移动,应该可以在2D空间中计算偏航和俯仰吗?

我的第一个想法是,偏航可以计算为M的X坐标相对于LR的x坐标距离的比率(绿线)

有什么想法吗?

注意:我正在使用opencv

mor*_*icz 3

有一个名为solvePnP的函数,它可以计算相机坐标系中对象的平移和旋转。您需要所述物体的 3D 模型,即物体上点的 3D 位置,并在图片上找到这些点。