百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python人脸识别简介(python做一个人脸识别简单的方法)

off999 2024-10-20 08:08 32 浏览 0 评论

本教程使用 Python 3.6 编写,但使用的库与 3.3 及更高版本兼容。

人脸识别软件很棒。我们能够编写能够准确地识别出某人的眼睛和鼻子在图像中的位置的事实仍然让我感到震惊,而且存在用于此类事情的库这一事实也很棒。这些库有助于降低希望编写自己的人脸识别系统的初学者的入门门槛,并允许人们做一些非常酷的事情。

ageitgey/face_recognition就是这样一个库,在撰写本文时,它的功能远远超过7,000了 github上的星星。

配置

为了开始使用该face_recognition库,您首先必须安装它,这可以通过一个简单的pip安装命令来完成,如下所示:

pip3 install face_recognition

一个简单的例子

让我们拍摄一张包含许多人的库存图像。如果我们想自动找到图像中的所有人脸,我们可以用 4 行代码轻松完成。此代码将首先接收一张图像,然后使用face_recognition.face_locations(image). 之后我们将简单地打印出找到的面数。

import face_recognition

image = face_recognition.load_image_file("My_Image.png")
face_locations = face_recognition.face_locations(image)
print("I found {} face(s) in this photograph.".format(len(face_locations)))

如果我要针对上面的图像运行它,我会得到以下输出:

 $ python3.6 simple.py
I found 5 face(s) in this photograph.

这是人脸检测的一个示例,您可以将其与安全摄像头之类的设备同步,并使用此检测算法执行实时分析,以查看是否有人刚刚走进您的房子。

识别人脸

一个更复杂的例子是识别找到的每个人脸的确切坐标,并将这些坐标转换为单独的图像。

假设我们想将上面的示例更进一步,并将我们检测到的面孔存储在我们的新安全软件中。这可以使用face_recognition库来完成 :

from PIL import Image
import face_recognition

## Load the jpg file into a numpy array
image = face_recognition.load_image_file("stock_people.jpg")

## Find all the faces in the image using the default HOG-based model.
## This method is fairly accurate, but not as accurate as the CNN model and not GPU accelerated.
## See also: find_faces_in_picture_cnn.py
face_locations = face_recognition.face_locations(image)

print("I found {} face(s) in this photograph.".format(len(face_locations)))

for face_location in face_locations:

    ## Print the location of each face in this image
    top, right, bottom, left = face_location
    print("A face is located at pixel location Top: {}, Left: {}, Bottom: {}, Right: {}".format(top, left, bottom, right))

    ## You can access the actual face itself like this:
    face_image = image[top:bottom, left:right]
    pil_image = Image.fromarray(face_image)
    pil_image.show()

运行它会给出以下输出,它会打开 5 个临时图像文件。

 $ python3.6 simple.py
I found 5 face(s) in this photograph.
A face is located at pixel location Top: 72, Left: 394, Bottom: 124, Right: 446
A face is located at pixel location Top: 32, Left: 467, Bottom: 94, Right: 529
A face is located at pixel location Top: 72, Left: 285, Bottom: 124, Right: 337
A face is located at pixel location Top: 72, Left: 170, Bottom: 124, Right: 222
A face is located at pixel location Top: 39, Left: 87, Bottom: 101, Right: 149

很酷吧?同样,您可能会在一系列视频流中运行它并捕获该视频中出现的所有面孔。

如果您对我们将在下面介绍的人脸识别等概念不感兴趣,您可能会开始做一些很酷的事情,例如情绪分析,并尝试判断视频中人们的快乐或悲伤程度。

如果您想获得有关景点在博物馆或游乐园的表现如何的实时反馈,这可能会很有用!

检查图像中是否存在人

识别图像包含多张面孔非常酷,但我们实际上可以更进一步,确定图像中存在谁。例如,假设您有一组人的照片,您可以使用face_recognition库确定您的朋友是否Alan存在于该照片中。

但是,为了使它起作用,您需要至少一张您要识别的人的参考图像。

import face_recognition

## Load in our reference image of Joe Biden
known_image = face_recognition.load_image_file("biden.jpg")
## Load in our image of a group of people
unknown_image = face_recognition.load_image_file("unknown.jpg")

## Create a biden encoding
biden_encoding = face_recognition.face_encodings(known_image)[0]
## create an encoding based off our group photo
unknown_encoding = face_recognition.face_encodings(unknown_image)[0]

## Compare the encodings and try to determine if Biden exists within a photo
results = face_recognition.compare_faces([biden_encoding], unknown_encoding)
## Print the results
print(results)

大规模的人脸识别系统倾向于建立人及其人脸的大型数据库。随着越来越多的面孔被添加到数据库中,检查一张照片或一系列照片中存在谁变得更加昂贵。

这意味着我们无法为世界上的每个人拍照,并期望我们的软件能够实时告诉我们任何给定照片中存在谁。

结论

这是对面部识别软件艺术的相当简单的介绍,希望您发现它既有用又有趣。在本教程中,我们设法涵盖了人脸检测和人脸识别。



相关推荐

最新电脑主机配置清单(2021电脑主机主流配置)

1.CPU全志a31s80元主板建议联想乐pad160元显示屏7寸分辨率建议在800*480以上约110元电源接口约0.2元wifi模块约20元蓝牙模块约20元硬盘建议金...

windows7系统界面(win7界面什么样)

关于这个问题,要将Win1系统调成Win7界面,您可以尝试以下几个步骤:1.下载并安装一个Win7主题:在网上搜索并下载一个Win7主题,例如“Windows7ThemeforWin10”,...

把文件隐藏了怎么显示出来(文件隐藏起来了怎么找)

需要显示出来因为有些文件被系统默认设置为隐藏状态,为了查看或编辑这些文件,需要将它们显示出来。如果你使用Windows操作系统,可以在文件资源管理器中点击“查看”选项卡,然后勾选“隐藏项目”复选框,隐...

mercury路由器wifi密码(mercury路由器wifi密码忘了怎么办)

水星路由器宽带密码查看的方法:一、首先登陆原来路由器管理界面,输入路由器账号密码登陆。二、进入路由器管理界面后,点击进入“备份和载入配置”,然后点击“备份配置文件”,然后将备份的配置文件存放在电脑桌...

microsoft word产品密钥(微软word产品密钥)

产品密钥是由一些字符组成的代码,用于激活对应产品。产品密钥是产品授权的证明,它是根据一定的算法(如椭圆算法)等产生的随机数。当用户输入密钥产品会根据其输入的密钥判断是否满足相应的算法,通过这样来判断,...

笔记本显卡推荐(笔记本显卡推荐性价比高)

1、微星R7850TF2GD5/OC:这款微星显卡是用GCN架构设计的图形核心,里面有1024个sp单元,执行、输出能力都非常的强悍,能完美地将DX11.1特效呈现出来。它还能够支持驳接各种大型...

hp系统重装win10(hp怎么重装系统win10)

答具体解决方法如下准备工作:  1、下载u启动u盘启动盘制作工具  2、下载win10系统镜像并存入u盘启动盘中  3、硬盘模式更改为ahci模式  安装win10系统操作步骤:  1、首先,我们提...

惠普笔记本电脑售后服务(惠普笔记本电脑售后服务维修点)

惠普笔记本电脑的售后服务包括全国联保、上门维修、24小时服务热线等多种服务。消费者可以通过官网或客户服务热线轻松预约维修服务,享受专业、高效的技术支持。同时,惠普还提供质保服务和延保服务,保障消费者的...

住房公积金管理中心官网(广州住房公积金管理中心官网)

按照《住房公积金管理条例》有关规定,住房公积金管理中心性质属于事业单位,隶属事业单位编制。使用手机查询住房公积金的方法。微信查询法1、打开微信,点击进入“我”的页面,在这个页面找到钱包;2、点击进入...

远程控制系统(路灯远程控制系统)

      汽车远程控制系统是一种通过移动终端或其他设备远程控制汽车的系统,可以实现远程锁车/解锁、远程启动车辆、远程启动空调、...

惠普1136打印机驱动(惠普1136打印机驱动用的是1130吗)

原因:1、可能是安装驱动步骤错了,下载驱动的步骤一定要按步骤检查安装。2、可能是驱动程序兼容性问题,或驱动程序损坏,建议使用驱动管理软件安装,这样简单,而且是最新的,兼容性、稳定性好。3、可能是打印机...

office2013标准版产品密钥(microsoft office2013产品密钥在哪里能找到)

win7/win8/win10系统下VisualStudio2013各个版本的密钥:VisualStudioUltimate2013KEY:BWG7X-J98B3-W34RT-33B3R-...

win7旗舰版电脑非常卡怎么办

针对Windows7旗舰版卡顿的情况,可以尝试以下几种方法来解决:1.升级硬件:如果你的电脑配置较低,可以考虑升级一下硬件,例如更换内存条、加装固态硬盘等。2.清理磁盘:清理电脑中不必要的文件、...

随身wifi怎么用的使用教程(随身wifi怎么用的使用教程图解)

1、将随身wifi插入电脑端,按照提示操作2、首次安装驱动后,随身wifi会随机生成10位默认密码,每台电脑是不相同的。为方便连接,也可手动设置为相同的密码。3、随身WiFi客户端支持3种手机连接方式...

gho文件制作u盘启动盘(ghost文件制作启动盘)

有些优盘制作工具只会制作启动盘,里面是没有包括映像文件的,需要你自己下载。后拷贝gho文件到GHO目录里。你可以检查一下优盘里的内容,尤其是GHO文件夹,没有的话,自己拷贝需要的进入就行了。(1)制作...

取消回复欢迎 发表评论: