舱内视觉第一章 人脸关键点检测文章目录舱内视觉人脸关键点坐标转化为3D坐标一、相机的内参矩阵和畸变系数二、通用人脸库三、相机的外参人脸关键点坐标转化为3D坐标一、相机的内参矩阵和畸变系数相机的焦距(fx, fy)和光心坐标(cx, cy)畸变系数 (coef):这是一个包含 5 个元素的向量(k1, k2, p1, p2, k3),用来描述镜头的径向畸变和切向畸变。二、通用人脸库GitHub 开源项目:在 GitHub 上搜索关键词 “3D Generic Face Model 68 points”、“BFM 68 landmarks” 或 “FacePose 3D model points”,会发现大量的人脸姿态估计(Head Pose Estimation)或 3D 人脸重建项目中都包含了几乎一模一样的坐标数组。数据来源:BFM 模型是由瑞士巴塞尔大学(University of Basel)通过分析大量真实人脸的 3D 扫描数据,统计得出的一个“平均人脸”的 3D 网格。本次代码中使用的是BFM 68 landmarks的68个关键点点分布逻辑:本代码里的 cv::Point3f 坐标,就是这个平均人脸在特定部位(那 68 个关键点)的三维空间位,代码中前 17 个点是下颌轮廓,接着是左右眉毛(各 5 个点)、鼻子(9 个点)、左右眼睛(各 6 个点)以及嘴巴(内外唇共 20 个点)三、相机的外参3.1 旋转矩阵3.1.1. 数学上展开假设偏航角为 ψ(Yaw),俯仰角为θ(Pitch),翻滚角为ϕ(Roll),矩阵中的每一个值 R(i,j) 如下:第一行(描述新坐标系的 X 轴方向)• R(0,0) = cos⁡ψ⋅cos⁡θ• R(0,1) = cos