FaceNet实现人脸识别 |
您所在的位置:网站首页 › json数据集可以用来Pca人脸识别吗 › FaceNet实现人脸识别 |
FaceNet(A Unified Embedding for Face Recognition and Clustering)是一种基于深度学习的人脸识别技术,能够将人脸图像转化为高维特征向量,并通过计算特征向量之间的距离关系来进行准确的人脸比对和识别。本教程着重在于如何使用FaceNet来训练自己的数据集(以本人识别为例),并进行简单的测试。有关原理在之后课程介绍。使用FaceNet训练自己的数据集要经过以下步骤: 一、环境配置 配置环境方面采用keras=2.3.0、mtcnn=0.1.1、sklearn.anaconda选择的是python3.6版本。安装过程直接用pip命令: Pip install keras==2.3.0 Pip install mtcnn Pip install sklearm 注:其他缺失包自行下载!!! 二、下载源代码链接:https://pan.baidu.com/s/1KU_HhdIQXpNAtfkuIbGBMg 提取码:LLYH。 下载压缩文件后,保存在一个专门的文件夹中。 这里就直接在我的网盘上下载,下载后的文件结构为: (1)下载源码后打开工程文件,首先打开src文件里save_data.py文件。(这里我使用的是pycharm打开) (2)在工程中新建data文件夹,用来保存人脸的数据集,在运行代码前需要对代码文件的参数进行修改。 (3)对识别名进行设置。将ap.add_argument中default改为你待检测的识别名。(这里以我LQX为例)。 (4)对采集到的图片保存路径进行设置。path_to_save设置为’../data/’。 (5)开始运行。这里获取图片具体数量因人而异,代码里设置了图片的最大数量为50张,故在50张时程序会自动退出,当然如果你不需要这么多图(可以按’q’提前结束程序)。 (6)根据自己的需求来修改图片数,具体修改如图: (7)运行完后data文件里会生成一个名为识别名的文件,里面是刚保存的50张图片(我这里用的50张)。 四、用自己的数据集训练模型 (1)打开train_embs.py文件并修改待处理图片路径。对图片进行预处理并将处理后的图片数据保存在pickel文件。 (2)设置pickel文件名及保存路径: (3)运行train_embs.py文件,在output文件中会生成相应的pickle文件。成功会出现如下结果:
(4)打开train_class.py文件,修改pickle文件的打开路径,设置模型保存路径 ,运行运行train_classify.py程序开始训练:
(5)运行成功后会在models文件中会生成.h5文件。如图:
(1)打开video_recognition.py文件,修改模型参数。运行效果如图: 到此,就已经实现了facenet训练自己的数据集并进行测试,50张图片训练效果还不错,大家可以自行采集更多不同的数据集来训练。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |