人脸姿态估计方法及装置的制造方法_3

文档序号:9687923阅读:来源:国知局
5] 其中,所述第一计算公式如下:
[0126] X二A又,其中X是所述第一矩阵,X是所述增广矩阵,A是所述弱透视投影矩阵。
[0127] 本公开实施例中,在将Ξ维模型投影到二维平面时,如果所述多个关键点的Ξ维 坐标中所有的Z值取同一数值,所述数值一般为所述人脸在所述Ξ维模型中的质屯、到二维 投影平面的距离值,则可W得到上述的第一计算公式。因此,求解所述弱透视投影矩阵A即 是求解最小二乘mi町i|x-A^|:2的过程。
[0128] 进一步地,可W按照相关技术,采用奇异值分解SVD算法或LU分解算法计算得到所 述弱透视投影矩阵A,得到的所述弱透视投影矩阵A是2X4的矩阵。
[0129] 上述实施例中,在进行人脸姿态估计时采用了弱透视矩阵,进一步地,可W采用最 小二乘法,例如SVD算法或LU分解算法计算弱透视矩阵,相比相关技术中采用优化计算的方 式计算透视矩阵的过程简单,且计算速度快。
[0130] 本公开实施例中,可W将所述旋转矩阵确定为人脸姿态估计结果。但是,为了让人 脸姿态估计结果更为直观,本公开还提供了另一种人脸姿态估计方法如图3所示,包括W下 步骤:
[0131] 在步骤201中,获取待检测图片中人脸的多个关键点。
[0132] 在步骤202中,确定所述多个关键点各自对应的二维坐标和Ξ维坐标。
[0133] 在步骤203中,根据所述二维坐标和所述Ξ维坐标,确定弱透视投影矩阵。
[0134] 在步骤204中,将所述弱透视投影矩阵按照第二计算公式进行矩阵分解后得到的 旋转矩阵确定为所述人脸的第一人脸姿态估计结果。
[0135] 其中,所述第二计算公式如下:
[0136] A = S[R,t],其中A是所述弱透视投影矩阵,S是缩放矩阵,R是所述旋转矩阵,t是Ξ 维平移向量。
[0137] 上述几个步骤中确定所述二维坐标、所述Ξ维坐标、所述弱透视投影矩阵W及所 述旋转矩阵的过程与上述实施例中的过程相同,在此不再寶述。
[0138] 在步骤205中,获取对所述旋转矩阵的预设旋转顺序,所述预设旋转顺序依次为相 对于第一轴、第二轴和第Ξ轴进行旋转。
[0139] 本公开实施例中,可W预先定义所述旋转矩阵的预设旋转顺序,例如所述预设旋 转顺序可W依次为相对于X轴、y轴和Z轴进行旋转,或者所述预设旋转顺序还可W依次为相 对于Z轴、X轴和y轴进行旋转。
[0140] 在步骤206中,按照所述预设旋转顺序,将对所述旋转矩阵进行矩阵分解得到的分 别相对于所述第一轴、所述第二轴和所述第Ξ轴的旋转角度值,确定为所述人脸的第二人 脸姿态估计结果。
[0141] 旋转矩阵R分别绕X轴、y轴和Z轴进行旋转,与对应的旋转角为α、β和丫的对应关系 如下:
[0142]
[0143] 根据上述对应关系和所述预设的旋转顺序,就可W对所述旋转矩阵进行矩阵分 解,分别得到与所述人脸的人脸姿态对应的旋转角α、β和γ的值,即为所述人脸的人脸姿态 估计结果。
[0144] 上述实施例中,在确定了待检测图片中人脸的多个关键点各自对应的二维坐标和 Ξ维坐标后,将相关技术中计算透视投影矩阵的过程简化为计算弱透视投影矩阵,进而可 W根据所述弱透视投影矩阵,确定人脸姿态估计结果,加快了计算速度。进一步地,在计算 弱透视投影矩阵时将相关技术中的优化计算过程简化为最小二乘法计算过程,同样简化了 计算过程,加快了计算速度。另外,上述实施例可W将所述弱透视投影矩阵进行矩阵分解得 到的旋转矩阵确定为人脸姿态。进一步地,还可W对所述旋转矩阵进行进一步分解,得到人 脸分别相对于第一轴、第二轴和第Ξ轴的旋转角度值,并将计算得到的上述旋转角度值确 定为所述人脸的人脸姿态估计结果,使得人脸姿态估计的结果更为直观。
[0145] 如图4所示,图4是根据一示例性实施例示出的另一种人脸姿态估计方法,包括W 下步骤:
[0146] 在步骤301中,通过人脸关键点检测算法对待检测图片进行人脸关键点检测,获取 所述待检测图片中人脸的多个关键点。
[0147] 本步骤中,可W按照相关技术,通过人脸关键点检测算法,例如利用SDM对待检测 图片进行人脸关键点检测,其中所述多个关键点可W覆盖所述人脸的眉毛、眼睛、鼻子、嘴 己,脸部轮廓等部位。
[0148] 在步骤302中,确定所述多个关键点各自对应的二维坐标和Ξ维坐标。
[0149] 本步骤中,可W按照相关技术,获得所述多个关键点各自对应的二维坐标和所述 关键点在预先建立的Ξ维模型中的Ξ维坐标。
[0150] 例如,所述二维坐标分别为(xi,yi),(X2,y2),…(xn,yn),其中η是所述关键点的个 数,(Xn,yn)是第η个关键点的二维坐标。
[0151] 所述Ξ维坐标分别为化,¥1,21),化瓜,22),一祐,¥。,2。),其中11是所述关键点的 个数,(Χη,Υη,Ζη)是第η个关键点的立维坐标。
[0152] 在步骤303中,确定第一矩阵和第二矩阵,其中所述第一矩阵中的值对应所述二维 坐标,所述第二矩阵中的值对应所述Ξ维坐标。
[0153] 本步骤中,分别确定了第一矩阵X和第二矩阵X。其中,所述二维坐标可W记做第一 矩阵X,如下:
[0154] x=[xi,yi;X2,y2;…;Xn,yn]T,其中,η是所述关键点的个数,(Xn,yn)是第η个关键点 的二维坐标。
[01巧]所述Ξ维坐标可W记做第二矩阵X,如下:
[0156] X=[Xl,Yl,Zl;X2,Y2,Z2;…;Xn,Yn,Zn]T,其中,n是所述关键点的个数,(Xn,Yn,Zn)是 第η个关键点的Ξ维坐标。
[0157] 在步骤304中,确定所述第二矩阵的增广矩阵。
[0158] 本公开实施例中,确定了所述第二矩阵后,可W按照相关技术,通过W下公式得到 所述第二矩阵的增广矩阵X,如下:
[0159] 左=ΡΦ]气其中X是所述第二矩阵。
[0160] 在步骤305中,根据所述第一矩阵、所述增广矩阵和弱透视投影矩阵之间的第一计 算公式,利用最小二乘法计算得到所述弱透视投影矩阵。
[0161] 其中,所述第一计算公式如下:
[0162] 交,其中X是所述第一矩阵,X是所述增广矩阵,A是所述弱透视投影矩阵。
[0163] 可选地,可W采用奇异值分解SVD算法或LU分解算法计算得到所述弱透视投影矩 阵A,得到的所述弱透视投影矩阵A是2 X 4的矩阵。
[0164] 在步骤306中,将所述弱透视投影矩阵按照第二计算公式进行矩阵分解后得到的 旋转矩阵确定为所述人脸的第一人脸姿态估计结果。
[0165] 其中,所述第二计算公式如下:
[0166] A = S[R,t],其中A是所述弱透视投影矩阵,S是缩放矩阵,R是所述旋转矩阵,t是Ξ 维平移向量。
[0167] 本公开实施例中,可W对步骤205计算得到的所述弱透视投影矩阵通过上述实施 例介绍的方法进行矩阵分解,得出旋转矩阵R是3 X 3的矩阵,即为所述人脸的人脸姿态估计 结果。
[0168] 在步骤307中,获取对所述旋转矩阵的预设旋转顺序,所述预设旋转顺序依次为相 对于第一轴、第二轴和第Ξ轴进行旋转。
[0169] 本公开实施例中,可W预先定义所述旋转矩阵的预设旋转顺序,例如所述预设旋 转顺序可W依次为相对于X轴、y轴和Z轴进行旋转,或者所述预设旋转顺序还可W依次为相 对于Z轴、X轴和y轴进行旋转。
[0170] 在步骤308中,按照所述预设旋转顺序,将对所述旋转矩阵进行矩阵分解得到的分 别相对于所述第一轴、所述第二轴和所述第Ξ轴的旋转角度值,确定为所述人脸的第二人 脸姿态估计结果。
[0171] 本步骤中,为了让人脸姿态估计结果更为直观,同样可W按照上述实施例介绍的 方法得到所述旋转角度值,将所述旋转角度值确定为所述人脸的人脸姿态估计结果。
[0172] 上述实施例中,将相关技术中计算透视投影矩阵的过程简化为计算弱透视投影矩 阵。进一步地,可W采用最小二乘法,例如SVD算法或LU分解算法计算弱透视矩阵,相比相关 技术中采用优化计算的方式计算透视矩阵的过程,计算过程较为简单,计算速度快。在得到 弱透视矩阵后,可W对所述弱透视矩阵进行矩阵分解,得到旋转矩阵了,并将所述旋转矩阵 确定为所述人脸的人脸姿态估计结果。进一步地,为了让人脸姿态估计结果更为直观,可W 对所述旋转矩阵进行进一步分解,得到所述人脸分别相对于第一轴、第二轴和第Ξ轴的旋 转
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1