2022-05-13 16:37:00 索炜达电子 858
文件编号:A292
文件大小:9M
开发环境:Python3.8、OpenCV4.5、PyCharm2020
猿创承诺:该项目亲测正常运行,需远程调试部署需另外收费,确保正常使用,不能正常使用全额退款。
简要概述:init_window部分是程序的UI设计部分,然后就是实现图中三个按钮的点击事件,其中“请选择图片”的两个按钮功能一样,都是点击选择文件,并加载到页面上,替换掉首页的图片。
提交按钮实现的就是两张人脸图片比对的逻辑了:
有一个需要注意的地方是:opencv不能加载带中文图片路径,所以程序中用PIL的Image.open()加载图片,并使用Image.save()重新保存一份到自己定义的文件夹,然后还定义了一个resize_img()函数,对过大的图片进行等比例缩放,并保存下来,提高运算的效率。
人脸比对使用了最简单的人脸识别库:face_recogniton,首先通过face_recognition.load_image_file()加载图片,毕竟用了别人的库,就得按照人家的方式进行加载。
然后通过face_recognition.face_encodings()提取人脸的特征,提取出来的是一个128维的向量,最后使用face_recognition.face_distance()计算两个128向量的欧式距离,计算方式如下
当然这里就不用自己计算了,face_distance()已经帮你实现好了。
人脸比对还有很多其他的方法,比如facenet,arcface。这里框架已经搭好了,剩下的你们可以根据需要去替换自己的算法。
好了,我们来运行一下吧。
python main.py
按需写作:
演示视频:
点击查看:系统演示视频
运行界面:
远程协助:
温馨提示:索炜达.猿创官方提供收费远程协助,确保您项目运行成功。
点击查看:远程协助相关事项
我们提供完整项目文件清单如下:
文件目录
├ 1.项目源码
├ 2.运行截图
└ 3.演示视频