Python中人脸识别的人脸反欺骗方法

我正在开发一个人脸识别项目,我可以先注册自己,然后启动一个识别脚本,该脚本将启动我的网络摄像头,它会识别我自己。

我注意到,如果我向相机展示照片而不是在相机前展示自己,它仍然会检测并识别我的脸。其中不涉及反欺骗。我想在代码中包含反欺骗方法,以便它可以检测检测到/识别的面部是否真实。为此,我想到了以下方法:

1.眨眼检测:最初我以为我会实现一个眨眼检测算法,但它也有它的缺点。如果一个真脸的人有一段时间没有眨眼怎么办,在这种情况下,我们的代码会将该脸标记为假脸。此外,在距摄像机 1-1.5 米的距离内也没有检测到眼睛。

2.使用温度传感器:我还接口了欧姆龙热传感器,这样我就可以得到脸部的温度。在正常人脸上,温度总是高于阈值。如果照片中出现人脸,它将始终低于该阈值。我实现了这个并且运行良好。但后来意识到,如果有人在手机中显示照片,那么由于手机屏幕温度很高,它总是超过阈值,因此它被标记为真实照片。

上述方法对我来说不起作用。我正在寻找一个可以适用于所有场景的简单解决方案。我正在树莓派上做这个项目,所以寻找一个与树莓派兼容的解决方案。请帮忙。谢谢


暮色呼如
浏览 114回答 3
3回答

jeck猫

对于任何错误,我深表歉意,因为我不是来自树莓派的背景,但作为一个帮助人们的正派人,我认为你应该尝试分辨率检查(如果可能的话),因为手机屏幕的分辨率总是低于真实的脸部。然后您可以使用它与眨眼方法来抓住手机,因为照片不会眨眼。人类平均每分钟眨眼 12 次,即每 5 秒眨眼 1 次。这将帮助您抓住打印的照片。希望这会有所帮助。

慕标琳琳

您应该在人脸检测器顶部使用物体检测器。它绝对可以检测到手机。您可以重新训练它来检测是否有照片被举起。首先运行对象检测器,保存手机的边界框坐标,然后查看面部边界框坐标是否位于手机内部。

慕的地6264312

我现在正在研究面部识别系统作为我的论文项目。说它可以在 Raspberry Pi 中使用,但这意味着我们必须安装 TensorFlow 和 Keras 才能做到这一点。我认为这会有所帮助。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python