Image processing 基于三维点云的鼻尖检测

Image processing 基于三维点云的鼻尖检测,image-processing,3d,computer-vision,face-detection,face-recognition,Image Processing,3d,Computer Vision,Face Detection,Face Recognition,我正在尝试实现一个头部姿势估计算法,我正在使用飞行时间相机。我需要从相机获取的点云数据中检测鼻尖。 在我知道了鼻尖的位置后,我将采样它周围的N个最近邻点,并在点云的该部分上进行最小二乘误差平面拟合,以检索偏航和俯仰角度。 鼻子检测应该适用于不同的头部姿势,而不仅仅是完全正面的头部姿势 我实现了平面拟合,效果很好,但我不知道如何从3D数据中检测鼻尖 任何关于如何做到这一点的建议都将不胜感激 问候,, V.我曾经处理过深度限制为z>0.5m的Kinect图像,见下文。我希望你的ToF相机没有这个限制

我正在尝试实现一个头部姿势估计算法,我正在使用飞行时间相机。我需要从相机获取的点云数据中检测鼻尖。 在我知道了鼻尖的位置后,我将采样它周围的N个最近邻点,并在点云的该部分上进行最小二乘误差平面拟合,以检索偏航和俯仰角度。 鼻子检测应该适用于不同的头部姿势,而不仅仅是完全正面的头部姿势

我实现了平面拟合,效果很好,但我不知道如何从3D数据中检测鼻尖

任何关于如何做到这一点的建议都将不胜感激

问候,,
V.

我曾经处理过深度限制为z>0.5m的Kinect图像,见下文。我希望你的ToF相机没有这个限制。鼻子作为一个物体不是很明显,但可能可以通过使用深度图像上的连接组件来检测。你必须在其他平面上找到一个斑点。通过比较面部深度、鼻子深度以及鼻子相对于面部的位置,可以进一步确认它是鼻子。这当然不适用于非正面姿势,因为在非正面姿势中,鼻子的位置应该有所不同

我建议颠倒你的逻辑处理链:先找到鼻子,然后找到脸,然后开始寻找头部(作为一个更大的物体,可能有更好的深度对比),然后是鼻子。头部在3D中的大小和形状可以很好地定义,面部2D检测还可以使用3D中的相似性变换将原始头部模型拟合到3D点云中


我曾尝试使用OpenCV中的haar cascade在我也从TOF相机获得的灰度图像中检测它。我知道2D到3D的对应关系,所以也可以这样做。在二维图像中查找鼻尖并检索其三维位置。问题是它只适用于正面姿势。在2D中,我使用测地线来比较曲线的长度与图形内部的长度:同样的方法也适用于3D点云。这有助于找到局部内凸点和外凸点。