我正在做一个项目,在这个项目中,我需要在非常混乱的视频中检测人脸(从以自我为中心的角度来记录,所以你可以想象)。人脸的偏航角度可以在-90到+90之间变化,音高变化几乎相同(嗯,由于人体的限制,偏低一点)。可能还有一些滚动变体。
我花了很多时间去寻找一些姿态独立的人脸探测器。在我的项目中,我使用的是OpenCV,但是OpenCV人脸检测器甚至不接近我所需要的检测率。它对正面面有很好的效果,而在轮廓面上几乎没有结果。使用对配置文件图像进行培训的haar级联.xml文件并没有真正的帮助。结合正面和侧面级联产生略好的结果,但仍然,甚至没有接近我的需要。
自庞大的计算(或时间)需求以来,培训我自己的haar级联将是我最后的资源。
到现在为止,我要求的是关于这件事的任何帮助或建议。我可以使用的人脸检测器的要求是:
到目前为止,实时并不是一个问题,我现在最关心的是检测率。
我看到了很多论文实现了这些结果,但我找不到任何代码,我可以使用。
我衷心感谢你能提供的任何帮助。
发布于 2013-08-05 05:51:20
也许不是一个答案,但太长,不能发表评论。
您可以使用opencv_traincascade.exe来训练一种新的检测器,它可以检测更多的姿势。这篇文章可能会有所帮助。http://note.sonots.com/SciSoftware/haartraining.html。我已经成功地训练了一个在-50:+50偏航范围内使用feret数据集敏感的探测器。对于我的情况,我们不想发现纯粹的侧面,因此培训数据准备了相应。由于feret已经提供了方便的姿态变化,所以也许可以训练一个与您的规格有点接近的探测器。如果您使用lbp功能,那么时间就不是问题,培训最多在4-5小时内完成,通过设置适当的参数和使用较少的培训数据(用于确定检测器是否将产生您预期的输出),培训速度更快(15-30分钟)。
https://stackoverflow.com/questions/18044196
复制相似问题