python3.8动态人脸识别的实现示例


Posted in Python onSeptember 21, 2020

一、准备依赖库

pip install dlib
pip python-opencv

二、代码实现 

#coding: utf-8
"""
从视屏中识别人脸,并实时标出面部特征点
"""
import dlib           #人脸识别的库dlib

import cv2           #图像处理的库OpenCv

# 使用特征提取器get_frontal_face_detector
detector = dlib.get_frontal_face_detector()
# 读入视频文件
# cap = cv2.VideoCapture("row.MP4")
#建cv2摄像头对象,这里使用电脑自带摄像头,如果接了外部摄像头,则自动切换到外部摄像头
cap = cv2.VideoCapture(0)

# 设置视频参数,propId设置的视频参数,value设置的参数值
cap.set(3, 480)
# 截图screenshoot的计数器
cnt = 0
# cap.isOpened() 返回true/false 检查初始化是否成功
while(cap.isOpened()):

  # cap.read()
  # 返回两个值:
  #  一个布尔值true/false,用来判断读取视频是否成功/是否到视频末尾
  #  图像对象,图像的三维矩阵
  flag, im_rd = cap.read()

  # 每帧数据延时1ms,延时为0读取的是静态帧
  k = cv2.waitKey(1)

  # 取灰度
  img_gray = cv2.cvtColor(im_rd, cv2.COLOR_RGB2GRAY)

  # 使用人脸检测器检测每一帧图像中的人脸。并返回人脸数rects
  faces = detector(img_gray, 0)

  # 待会要显示在屏幕上的字体
  font = cv2.FONT_HERSHEY_SIMPLEX

  # 如果检测到人脸
  if(len(faces)!=0):

    # 对每个人脸都画出框框
    for i in range(len(faces)):
      # enumerate方法同时返回数据对象的索引和数据,k为索引,d为faces中的对象
      for k, d in enumerate(faces):
        # 用红色矩形框出人脸
        cv2.rectangle(im_rd, (d.left(), d.top()), (d.right(), d.bottom()), (0, 255, 0),2)
        # 计算人脸热别框边长
        face_width = d.right() - d.left()
        #在上方显示文字
        cv2.putText(im_rd, str(face_width) , (d.left(), d.top()-20), font, 0.5, (255, 0, 0), 1)
    # 标出人脸数
    cv2.putText(im_rd, "Faces: "+str(len(faces)), (20,50), font, 1, (0, 0, 255), 1, cv2.LINE_AA)
  else:
    # 没有检测到人脸
    cv2.putText(im_rd, "No Face", (20, 50), font, 1, (0, 0, 255), 1, cv2.LINE_AA)

  # 添加说明
  im_rd = cv2.putText(im_rd, "S: screenshot", (20, 400), font, 0.8, (0, 0, 255), 1, cv2.LINE_AA)
  im_rd = cv2.putText(im_rd, "Q: quit", (20, 450), font, 0.8, (0, 0, 255), 1, cv2.LINE_AA)


  #检测按键
  k = cv2.waitKey(1)
  # 按下s键截图保存
  if (k == ord('s')):
    cnt+=1
    cv2.imwrite("screenshoot"+str(cnt)+".jpg", im_rd)
  # 按下q键退出
  if(k == ord('q')):
    break

  # 窗口显示
  cv2.imshow("camera", im_rd)

# 释放摄像头
cap.release()
# 删除建立的窗口
cv2.destroyAllWindows()

三、实验结果

python3.8动态人脸识别的实现示例

到此这篇关于python3.8动态人脸识别的实现示例的文章就介绍到这了,更多相关python3.8动态人脸识别内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python翻译软件实现代码(使用google api完成)
Nov 26 Python
python获得文件创建时间和修改时间的方法
Jun 30 Python
Python松散正则表达式用法分析
Apr 29 Python
django使用图片延时加载引起后台404错误
Apr 18 Python
python的concat等多种用法详解
Nov 28 Python
Python 异步协程函数原理及实例详解
Nov 13 Python
Django中使用MySQL5.5的教程
Dec 18 Python
python实现银行实战系统
Feb 26 Python
Python3如何在服务器打印资产信息
Aug 27 Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
Sep 01 Python
python性能测试工具locust的使用
Dec 28 Python
python3 字符串str和bytes相互转换
Mar 23 Python
如何在Anaconda中打开python自带idle
Sep 21 #Python
Python 实现国产SM3加密算法的示例代码
Sep 21 #Python
python如何实现DES加密
Sep 21 #Python
如何从csv文件构建Tensorflow的数据集
Sep 21 #Python
python打包多类型文件的操作方法
Sep 21 #Python
python 星号(*)的多种用途
Sep 21 #Python
Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框
Sep 21 #Python
You might like
PHP获取表单textarea数据中的换行问题
2010/09/10 PHP
PHP入门学习笔记之一
2010/10/12 PHP
php的SimpleXML方法读写XML接口文件实例解析
2014/06/16 PHP
PHP字符串与数组处理函数用法小结
2020/01/07 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
合并table相同单元格的jquery插件分享(很精简)
2011/06/20 Javascript
IE 当eval遇上function的处理
2011/08/09 Javascript
jquery实现图片渐变切换兼容ie6/Chrome/Firefox
2013/08/02 Javascript
用jquery统计子菜单的条数示例代码
2013/10/18 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
javascript正则表达式之search()用法实例
2015/01/19 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
2015/03/04 Javascript
JS控制网页动态生成任意行列数表格的方法
2015/03/09 Javascript
Web开发必知Javascript技巧大全
2016/02/23 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
2016/08/24 Javascript
AngularJs Understanding the Controller Component
2016/09/02 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
2016/09/28 Javascript
微信小程序自定义toast实现方法详解【附demo源码下载】
2017/11/28 Javascript
对angularJs中ng-style动态改变样式的实例讲解
2018/09/30 Javascript
vue图片上传组件使用详解
2019/12/23 Javascript
Python判断某个用户对某个文件的权限
2016/10/13 Python
Python基于正则表达式实现检查文件内容的方法【文件检索】
2017/08/30 Python
matplotlib之pyplot模块坐标轴标签设置使用(xlabel()、ylabel())
2021/02/22 Python
利用HTML5实现使用按钮控制背景音乐开关
2015/09/21 HTML / CSS
公共汽车、火车和飞机票的通用在线预订和销售平台:INFOBUS
2019/11/30 全球购物
表扬信格式
2014/01/12 职场文书
汽车专业学生自我评价
2014/01/19 职场文书
军训考核自我鉴定
2014/02/13 职场文书
地质灾害防治方案
2014/05/14 职场文书
运输企业安全生产责任书
2014/07/28 职场文书
关于国庆节的演讲稿
2014/09/05 职场文书
面试通知短信
2015/04/20 职场文书
成绩单家长意见
2015/06/03 职场文书
2016年记者节感言
2015/12/08 职场文书
描述鲁迅的名言整理,一生受用
2019/08/08 职场文书
python图片灰度化处理的几种方法
2021/06/23 Python