上一章节中,我们讲解了简单的python人脸识别,本章我们从这个基础上添加一些功能python之人脸识别
本节课我们的目标就是多人的图片,怎么样使用目标图片进行定位,
实验目标:
1.首先我们在百度查找图片,如下图所示:
目标:上图是詹姆斯和科比,我们把图片1和图片2在图片3中定位。
上一章节中,小编也讲述过:人脸识别首先需要加载图片--编码图片--对比图片。
实验部分
这里我们首先学习一下些face_recognition库的一个函数,该函数的作用是定位作用face_recognition.face_locations(),locations意思是定位。什么叫做定位呢,例如你的大学合照,小编首先需要知道你的样子,小编才能在你的大学的合照找到你的位置在哪。
1.加载图片:
kobe_load_image=face_recognition.load_image_file("Kobe.jpg")#加载科比的图片James_load_image=face_recognition.load_image_file("James.jpg")#詹姆斯
2.对图片编码
kobe_image_encoding=face_recognition.face_encodings(kobe_image)[0]#编码图片James_image_encoding=face_recognition.face_encodings(James_image)[0]#编码图片
3.创建两个列表分别存储人名和编码
#创建列表存图片的人名image_names=["kebi","James"]#创建列表存储图片编码image_encodings=[kobe_image_encoding,James_image_encoding]
4.加载他们的合照
Kobe_and_James_image=face_recognition.load_image_file("Kobe_and_James.jpeg")
5.对他们的合照定位
image_locations=face_recognition.face_locations(Kobe_and_James_image)#定位位置
上述的函数的作用就是识别图片的人数,如果三个人,那么对他们进行框框处理。
6.对他们的合照编码
face_encodings=face_recognition.face_encodings(Kobe_and_James_image,image_locations)
7.导入Image和ImageDraw库,该库主要描述图片的
fromPILimportImage,ImageDraw#图片绘画库importnumpyasnp#数组库
8.我们可以引用这位楼主的写法使用一个框框起来: