本页概述了 face_recognition 库的示例脚本和常见用法模式。它作为指南,帮助用户了解如何有效地使用该库来执行各种面部检测和识别任务。
有关特定用例的详细实现,请参阅以下子页面
face_recognition 库提供了几种核心工作流程,构成了大多数应用程序的基础。以下图表说明了这些基本模式:
来源: README.md27-32 README.md40-44 README.md58-66
最简单的用法模式是在图像中检测面部
这将返回一个元组列表,其中包含图像中检测到的每个面部的坐标(上、右、下、左)。
来源: README.md27-32
为了进行更详细的分析,您可以检测面部特征点
这将返回一个字典列表,其中每个字典将面部特征名称映射到坐标列表。
来源: README.md40-44
完整的面部识别工作流程包括
来源: README.md58-66 examples/recognize_faces_in_pictures.py1-29
该库提供了跨多个类别的全面示例集,如下所示:
来源: README.md334-359
该存储库包含许多演示各种用例的示例脚本。以下是按类别组织的密钥示例表:
| 类别 | 示例 | 描述 |
|---|---|---|
| 人脸检测 | find_faces_in_picture.py | 使用 HOG 在静态图像中查找面部 |
| find_faces_in_picture_cnn.py | 使用 CNN 模型查找面部(更准确) | |
| find_faces_in_batches.py | 使用 GPU 批量处理多个图像 | |
| blur_faces_on_webcam.py | 摄像头实时面部模糊 | |
| 面部特征 | find_facial_features_in_picture.py | 定位图像中的面部特征 |
| digital_makeup.py | 使用面部特征应用数字妆容 | |
| 面部识别 | recognize_faces_in_pictures.py | 从静态图像进行基本面部识别 |
| identify_and_draw_boxes_on_faces.py | 识别面部并在其周围绘制框 | |
| face_distance.py | 演示如何使用面部距离进行相似性比较 | |
| facerec_from_webcam.py | 摄像头面部识别(基本版本) | |
| facerec_from_webcam_faster.py | 摄像头实时面部识别优化 | |
| facerec_from_video_file.py | 处理视频文件进行面部识别 | |
| facerec_on_raspberry_pi.py | 在 Raspberry Pi 硬件上进行识别 | |
| 高级 | face_recognition_knn.py | 用于面部识别的 KNN 分类器 |
| face_recognition_svm.py | 用于面部识别的 SVM 分类器 | |
| web_service_example.py | 通过 HTTP 进行面部识别的 Web 服务 |
来源: README.md338-359
下图说明了从编码已知面部到识别未知面部的基本面部识别工作流程
来源: examples/recognize_faces_in_pictures.py1-29 README.md57-66
此模式通过将未知面部与已知面部编码数据库进行比较,来处理静态图像上的面部识别。
来源: examples/recognize_faces_in_pictures.py1-29
此模式处理来自视频源的实时面部识别
来源: README.md353-355
下图显示了数据如何流经面部识别系统的关键组件
来源: README.md257-325
在为您的应用程序实现面部识别时,请考虑以下因素:
以下决策树可以帮助您选择合适的示例作为起点:
来源: README.md332-359
recognize_faces_in_pictures.py 来理解核心概念facerec_from_webcam_faster.py 以了解效率技术请记住,示例脚本旨在用于教学并提供起点——您可能需要根据具体用例进行调整。
来源: README.md332-359
刷新此 Wiki
最后索引时间2025 年 4 月 18 日(2e2dcc)