我正在开发一个需要检测视频流中人脸位置的应用程序,该应用程序使用放置在桌面高度的网络摄像头(稍微偏离用户一侧)。
我已经实现了一个版本的OpenCV(使用他们的 Haar 检测),它工作正常......问题是如果用户将头转向一边(或抬头),它往往会丢失面部的位置。
由于网络摄像头位于桌面上,因此它以 30 度角向上倾斜。OpenCV 检测算法是使用完全正面的图像进行训练的,而不是像我使用的那样的上角图像。我知道 OpenCV 也有一个可以使用的配置文件 Haar 文件。但从我的研究看来,配置文件检测的结果参差不齐。此外,我并不能真正控制图像的背景或照明......所以这有时也会影响 OpenCV 检测算法的功效。
所以,我想我要问的是......是否有其他人脸检测算法(希望是免费的,因为这是我大学研究的一部分)更适合检测这种设置的人脸?似乎某些内置网络摄像头(用于 Mac 和 PC)实际上具有相当强大的算法来检测面部(然后在面部上覆盖俗气的卡通图像)......但无论背景或照明如何,它们似乎都能正常工作。你有什么建议?谢谢。