上身骨架检测

时间:2013-04-21 16:09:58

标签: opencv emgucv

对于教育项目,我们目前正在研究基本的动作和手势检测系统。我们的主要目标是在相机流上检测人体。使用这些信息,我们想要检测身体的基本骨架,以进一步检测人的姿势。

我们正在使用EmguCV / OpenCV来处理我们的流。我在Youtube上发现了这个视频:http://www.youtube.com/watch?v=fYZtmkfWh5g。他能够检测到上半身并在其中放置一个基本骨架,但是如何?他没有提到任何使用的算法。

我们已经尝试使用背景减法(BackgroundSubtractorMOG2)检测身体轮廓,但相机噪音和闪电条件使我们失败。

是否有人想要检测身体,就像视频中显示的一样?

4 个答案:

答案 0 :(得分:1)

我认为你应该实施下一步:

  1. 检测脸部。
  2. 检测手。
  3. 估计身体形象的比例。
  4. 使用头部位置放置上身运动模型(骨架) 信息并设置其比例usung检测头部大小。
  5. 在人类的位置之前检测模型的头部和手部 头和手。
  6. 更新模型的反向运动学以获得人体姿势估计。
  7. 我想,使用某些统计数据应该非常好 过滤器,如粒子滤波器或卡尔曼滤波器。
  8. 转到第1步。
  9. 对于运动学模型,您可以使用一些2D物理结构(例如Box2D)。

答案 1 :(得分:0)

This将是一个很好的起点,在C ++中实现Upperbody检测算法。 (http://www.robots.ox.ac.uk/~vgg/software/UpperBody/

答案 2 :(得分:0)

我喜欢这种精益" js-opendetect"解决方案,参考线程 js-objectdetect with LBP cascades

如果您想要使用Matlab-Model和VS进行试验,这是一个历史性的样本 http://groups.inf.ed.ac.uk/calvin/articulated_human_pose_estimation_code/

答案 3 :(得分:0)

使用像Caffe这样的NeuralNetworks的更复杂的模型可以通过Websearch找到 - > "人体姿势估计",例如https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation 似乎较新的操作系统不容易安装(较旧的编译器......?)和一点资源饥饿(在我的旧1 GB-HW上,它赢得了现在的运行)。

最后可能有趣的是,deeplearnjs将如何升级或整合(到现在它需要镀铬,样品显示物体识别,但看起来很有希望)。