1 Star 2 Fork 0

斌哥开源/face_recognition

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
serverRemote.py 1.60 KB
一键复制 编辑 原始数据 按行查看 历史
斌哥开源 提交于 2024-04-28 22:05 . 把方法提取到utils
import cv2
from utils import faceUtils
def capture_video_and_mark_faces():
# 打开默认摄像头
cap = cv2.VideoCapture(0)
if not cap.isOpened():
print("无法打开摄像头")
return
while True:
# 逐帧捕获
ret, frame = cap.read()
# 如果正确读取帧,ret为Trueq
if not ret:
print("无法接收帧(流结束?)。退出...")
break
# 在图像中标记出人脸
frame_with_faces = faceUtils.mark_faces_in_image(frame)
face_encoding = faceUtils.get_face_encodings(frame_with_faces)
# 检查face_encoding是否为None
if face_encoding is not None:
best_match, best_distance = faceUtils.compare_faces(face_encoding)
else:
# 处理没有检测到人脸的情况,例如设置默认值或者打印一条消息
best_match = None
best_distance = None
print("未检测到人脸,无法进行比对。")
if best_match is not None:
text = f"User: {best_match}"
cv2.putText(frame_with_faces, text, (50, 50), cv2.FONT_HERSHEY_DUPLEX, 1.0, (0, 0, 255), 2)
# 显示结果帧
cv2.imshow('人脸检测', frame_with_faces)
# 等待按键,按'q'键退出循环
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放摄像头资源并销毁所有OpenCV创建的窗口
cap.release()
cv2.destroyAllWindows()
def main():
faceUtils.load_known_face_encodings()
capture_video_and_mark_faces()
if __name__ == "__main__":
main()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/suzhaobin/face_recognition.git
git@gitee.com:suzhaobin/face_recognition.git
suzhaobin
face_recognition
face_recognition
master

搜索帮助