Python最短代码实现人脸识别,打造自己专用人脸识别!

  • A+
所属分类:编程语言

Python最短代码实现人脸识别,打造自己专用人脸识别!

对于类似于人脸的对象,你或许需要不少于 6000个分类器,每一个都需要成功匹配(当然,有容错率),才能检测出人脸。但这有一个问题:对于人脸识别,算法从左上角开始计算一个个数据块,不停问“这是张脸吗”。每个数据块有超过 6000个检测,加起来的计算量会达到数百万级别,计算机很可能会让你等得花儿都谢了。

Python最短代码实现人脸识别,打造自己专用人脸识别!

Python最短代码实现人脸识别,打造自己专用人脸识别!

Python最短代码实现人脸识别,打造自己专用人脸识别!

实现人脸识别

实例1:

1、 首先你需要提供一个文件夹,里面是所有你希望系统认识的人的图片。其中每个人一张图片,图片以人的名字命名:

Python最短代码实现人脸识别,打造自己专用人脸识别!

known_people 文件夹下有 babe、成龙、容祖儿的照片

2、 接下来,你需要准备另一个文件夹,里面是你要识别的图片:

Python最短代码实现人脸识别,打造自己专用人脸识别!

unknown_pic 文件夹下是要识别的图片,其中韩红是机器不认识的

3、 然后你就可以运行 face_recognition 命令了,把刚刚准备的两个文件夹作为参数传入,命令就会返回需要识别的图片中都出现了谁:

Python最短代码实现人脸识别,打造自己专用人脸识别!

识别成功!

自动识别出人脸特征

实例2(通过多张图片对比,识别出是哪一个人):

[html] view plain copy

  1. # filename : recognize_faces_in_pictures.py

  2. # -*- conding: utf-8 -*-

  3. # 导入face_recogntion模块,可用命令安装 pip install face_recognition

  4. import face_recognition

  5. #将jpg文件加载到numpy数组中

  6. babe_image = face_recognition.load_image_file("/opt/face/known_people/babe.jpeg")

  7. Rong_zhu_er_image = face_recognition.load_image_file("/opt/face/known_people/Rong zhu er.jpg")

  8. unknown_image = face_recognition.load_image_file("/opt/face/unknown_pic/babe2.jpg")

  9. #获取每个图像文件中每个面部的面部编码

  10. #由于每个图像中可能有多个面,所以返回一个编码列表。

  11. #但是由于我知道每个图像只有一个脸,我只关心每个图像中的第一个编码,所以我取索引0。

  12. babe_face_encoding = face_recognition.face_encodings(babe_image)[0]

  13. Rong_zhu_er_face_encoding = face_recognition.face_encodings(Rong_zhu_er_image)[0]

  14. unknown_face_encoding = face_recognition.face_encodings(unknown_image)[0]

  15. known_faces = [

  16. babe_face_encoding,

  17. Rong_zhu_er_face_encoding

  18. ]

  19. #结果是True/false的数组,未知面孔known_faces阵列中的任何人相匹配的结果

  20. results = face_recognition.compare_faces(known_faces, unknown_face_encoding)

  21. print("这个未知面孔是 Babe 吗? {}".format(results[0]))

  22. print("这个未知面孔是 容祖儿 吗? {}".format(results[1]))

  23. print("这个未知面孔是 我们从未见过的新面孔吗? {}".format(not True in results))

Python最短代码实现人脸识别,打造自己专用人脸识别!

为true代表是相符的

Python最短代码实现人脸识别,打造自己专用人脸识别!

好了,今天就分享到这里,学习python有什么好的学习方法和技巧欢迎在下面评论区留言和小编交流,有惊喜哦!

weinxin
我的微信公众号
爱真理,得永生!          爱在灵灵久博客,网罗天下,福利大家!

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: