Python库从68个地标点检索面部姿势
有人能告诉我一个库的方向吗?这个库可以从Python中的68个里程碑点估计面部姿势 更具体地说,存在许多这样的库。然而,它们通常从图像开始。我想跳过地标检测,因为我已经有了它。我只想将68个点的地标输入到一个函数中,并检索人脸的旋转和平移 如果我不是一个完整的Python新手,我可能能够从现有库中提取相关的部分,但我发现这很难做到Python库从68个地标点检索面部姿势,python,pose-estimation,Python,Pose Estimation,有人能告诉我一个库的方向吗?这个库可以从Python中的68个里程碑点估计面部姿势 更具体地说,存在许多这样的库。然而,它们通常从图像开始。我想跳过地标检测,因为我已经有了它。我只想将68个点的地标输入到一个函数中,并检索人脸的旋转和平移 如果我不是一个完整的Python新手,我可能能够从现有库中提取相关的部分,但我发现这很难做到 谢谢。这个库似乎能帮你完成任务 它似乎分三步工作 人脸检测 地标探测 姿势估计。在获得68个面部标志点后,通过互PnP算法计算出姿态 因此,您应该查看此双向PnP算
谢谢。这个库似乎能帮你完成任务 它似乎分三步工作
双向PnP算法的代码库,该算法将68个地标作为输入
为您简要总结整个姿势估计代码文件
PoseEstimator
类包含所有相关函数
\uuuu init\uuuu
功能正在将self.model\u点
建立为鼻尖、下巴、嘴坐标。它还处理相机内部、旋转和平移向量。所有这些都是进行姿势估计的PnP算法的基本输入
self.\u get\u full\u model\u points()
从文件中读取地标点并将其存储在self.model\u points\u 68
- 这个类有一个重要的函数,叫做
solve\u pose\u by\u 68\u points
,它正在做你需要的事情。它需要输入您的地标
- 使用此
通过_68_点求解_姿势()
函数
- 该函数的输入是一个名为
marks
您需要找到一种方法,以标记
变量为指导,将您自己的地标点输入此通过68点解决姿势
函数
或者,只需从pose\u estimator.py
文件和其中的solve\u pose\u by_68_points
函数中重新创建代码
旁注-该函数只是调用了cv2.solvePnP
,我猜是PnP算法的openCVs实现。非常感谢您的指点!看起来解决方案确实在此文件中。我会尝试一下,然后汇报。我取得了一些进展,但也有一些瓶颈。当我调用solve_pose_by_68_points()时,我需要提供一个OpenCV Mat对象。我有一个二维数组。目前,我正在使用这段代码将我的points数组转换为Numpy数组,根据我在其他地方读到的内容,该数组应该与Python中的Mat对象相同:Numpy.array(points,np.float32)。我不知道这是否正确。我试着使用旋转数据,但数字太小,以至于我无法注意到实际的姿势变化…请在某个地方共享您的代码,帮助我运行它。给我你的点数组,给我解68点的姿势()函数谢谢你回复我。我把我目前掌握的东西大致放在哪里。我确实在最后得到了数字,但我不认为他们是对的。。。我不知道如何从数组创建cv.Mat。要点如下: