【发布时间】:2013-06-12 00:59:11
【问题描述】:
我正在尝试使用常规网络摄像头来确定骨骼关节(或至少能够追踪单个手掌)。我浏览了整个网络,似乎找不到这样做的方法。
我发现的每个示例都使用 Kinect。我想使用一个网络摄像头。
我不需要计算关节的深度 - 我只需要能够识别它们在框架中的 X、Y 位置。这就是我使用网络摄像头而不是 Kinect 的原因。
到目前为止,我已经看过了:
- OpenCV(其中的“骨架”功能是简化图形模型的过程,但不是人体的检测和/或骨架化)。
- OpenNI(使用 NiTE)- 获得关节的唯一方法是使用 Kinect 设备,因此这不适用于网络摄像头。
我正在寻找可以执行以下操作的 C/C++ 库(但此时会查看任何其他语言),最好是开源的(但同样会考虑任何许可):
- 给定一张图像(来自网络摄像头的一帧),计算可见关节的 X、Y 位置
- [可选] 给定一个视频捕获流回调到我的代码中,其中包含关节位置的事件
- 不必非常精确,但希望它非常快(每帧处理时间不到 0.1 秒)
如果有人能帮我解决这个问题,我将不胜感激。我已经被困在这个问题上几天了,没有明确的路径可以继续。
更新
2 年后找到了解决方案:http://dlib.net/imaging.html#shape_predictor
【问题讨论】:
-
这对于单个网络摄像头来说真的很困难,在实时情况下更是如此。因此,Kinect。要仅跟踪单个手掌,您应该能够修改此实时跟踪器来完成这项工作:www4.comp.polyu.edu.hk/~cslzhang/CT/CT.htm。 IT 工作得非常好,他们的 C++ 代码使用 OpenCV。
-
这不是 StackOverflow 之类的问题,是吗?
-
如果你能提供更多的上下文会有所帮助,所以我们知道为什么它绝对不应该涉及 Kinect(并且可能会在这个上下文的范围内提出一个可行的替代方案)
-
既然您使用的是红外摄像机,我想您在某处有红外 LED?
-
您好,我只是想问一下您是否能够继续执行此操作。目前我也在研究骨架化,但不能使用 OpenNI 或任何其他针对 Kinect 使用的 NI 库。目前,我们已经能够使用基于收集到的数据的图像处理和分析来继续我们的项目,但我宁愿继续进行骨骼跟踪。
标签: opencv webcam tracking gesture-recognition human-interface