python 人脸检测 大胡子_Python人脸识别——人脸检测(libfacedetection)

Python人脸识别——人脸检测(libfacedetection)

admin • 2020 年 02 月 04 日

前言

好早就想自己捣鼓捣鼓实现个人脸识别了,目前在装修,想买个人脸识别的门铃,看了市场上比较火的两款,评价和测评里说不尽人意,就想自己用树莓派实现一个,再加上个语音识别,距离感应啥的,想想就激动…扯远了,不过要实现我想的这些功能,就以我新手的角度来看,需要实现的有:人脸检测(有无人脸)、人脸识别(这脸是谁)、眼睛检测、眼睛识别(闭眼识别)、人机交互界面、语义识别、声纹识别、语音合成等等,也不知道我能走到哪一步,先实现个人脸检测吧。

人脸检测

环境Windows10+Pycharm+Python3.6+opencv

看了一些教程和示例

Face_recognition

这个是国外大神制作的库,能实现人脸识别,但是对亚裔人和小孩的识别率不太好,本来想重新训练模型,但是据说要数以千万级的数据才有效,我光是利用爬虫下载20,000张明星人脸就花了将近两天,想想还是搁浅了,等大神解救

(说的挺详细的,很容易就能实现人脸识别了,但是用的是opencv自带的人脸检测库haarcascade.xml,据说重新训练这个库也挺麻烦,要正向和负向样本,数据集小了也不行,好多人失败了,(有没有在现有的haarcascade.xml库的基础上继续训练的方法,欢迎讨论),这也就引出了今天我要写的这个库libfacedetection)

该库于2019年3月份左右宣布开源,可用于商业开发。据说识别率和速度都比opencv自带的库要好,于是就想用一下,结果发现是基于C++的,没有python接口,这让我一个学机械的咋整,再捣鼓捣鼓C++?,放过我吧…

黄天不负有心人,第二天的上午,让我找到了Github上的大神做好的接口,有三四个,其中一个叫PyFaceDet的项目居然能用pip安装,于是就试了试。

根据文档说明先安装PyFaceDet,

pip install PyFaceDet

如果是Pycharm也可以在设置里安装(清华源)。

由于官方没有示例,让我这菜鸟鼓捣了一会儿,才简单实现功能,下面是我的代码:

from PyFaceDet import facedetectcnn

import cv2

path=(r'D:\Users\BC\PycharmProjects\F_C_05_PyFaceDet(libfacedetection)\000010.jpg')

img=cv2.imread(path)

Faces=facedetectcnn.facedetect_cnn(path)

x=Faces[0][0]

y=Faces[0][1]

L=Faces[0][2]

W=Faces[0][3]

confidence=Faces[0][4]

angle=Faces[0][5]

font = cv2.FONT_HERSHEY_SIMPLEX

cv2.rectangle(img,(x,y),(x+L,y+W),(255,0,0),2)

roi_color = img[y:y+W, x:x+L]

cv2.putText(img, str(confidence), (x+5, y-5), font, 1, (0, 0, 255), 1)

cv2.imshow('camera', img)

k = cv2.waitKey(10)

实现其实很简单,最后看看效果

貌似还可以,侧脸也能认出来,一会儿自己接上摄像头试试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值