python-3.x - 对于 OpenCV 人脸检测和识别,人脸是否略微失真是否重要?
问题描述
我正在编写一个使用 OpenCV 人脸检测和识别的程序,以此为指导
人脸扭曲有关系吗?例如,我正在考虑将相机*放在门上的窥视孔上,这会产生内在的失真。OpenCV 还能检测和识别吗?
系统:树莓派 4 操作系统
Python 版本:3.x
*PS:如果有人能推荐一个好的 RPi 相机,它会在一个很棒的窥视孔上工作。目前正在考虑 RPi V2 相机。
谢谢!:-)
解决方案
首先,相机质量对于检测面部(或其他物体)并不那么重要,因为即使在这些相机上,我也使用更差的(低分辨率,如 0.5 Mpx)相机,结果很好。关于检测对象的要点取决于您使用的算法。流行的算法:
- OpenCV 中的 Haar 级联人脸检测器
- OpenCV中基于深度学习的人脸检测器
- Dlib 中的 HoG 人脸检测器
- Dlib 中基于深度学习的人脸检测器
根据您共享的文档,Haar Cascade 是您正在考虑使用的算法。Haar Cascade 可以更快地工作,但也可能存在一些问题(如遮挡、许多人脸的问题以及一些扭曲的人脸图像等。)在这个链接中有一个关于这些算法比较的非常好的文档。
这里还有一个关于 haar 级联人脸检测的教程。
我认为使用人孔摄像头检测人脸不会有问题。
推荐阅读
- angular - 找不到未定义的属性
- java - 如何在spring boot中返回响应但继续执行循环?
- kubernetes - 更改 kubernetes 和 openshift 中模板的受限字段
- typescript - 无法模拟 API 请求
- java - 重新安装 Windows 后 Flutter 构建失败
- apache-spark - PySpark ETL 更新数据框
- python-sphinx - 如何在 python-sphinx 中创建等式末尾的数字?
- php - Laravel:获取数据透视表关联
- ruby-on-rails - Rails 5:删除按钮 link_to 没有按预期工作
- android - 带有标题的 Android 概述布局