人脸识别系统功能设计

926 阅读4分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第31天,点击查看活动详情 

人脸识别系统功能分析

人脸识别在功能上可分为两个部分:人脸数据存储和实时人脸识别。

先对用户的人脸数据进行预先的处理和存储,然后实时人脸识别则通过目标检测、特征映射、特征分类三个步骤来完成,其中为了提高人脸检测速度,可在检测之后加入人脸跟踪,而分类则需要依靠事先存储好的数据或其训练好的分类模型来计算。

所以首先需要一种方式对用户的人脸数据进行收集和存储,以方便接下来的识别工作。而采集人脸数据,通常使用的手段为拍照,至于数据的存储要根据用户数据的大小来判断,可以设计一个数据库来存放。

其次,在人脸识别阶段,需要一种监控设备,对实现训练好的算法模型实时传入图像数据,然后进行数据处理,将结果展示返回给用户。其中结果展示方面,可根据需要,比如人脸位置信息和人脸身份信息等,进行自由的设计。管理员除了普通用户所有的功能之外,还需要对模型进行训练,以及对信息进行管理。用例图如图所示。

在这里插入图片描述

人脸识别系统功能设计

上面一节已经对系统的功能需求做了分析,具体来说,首先用户会将自己的人脸图像进行拍摄,图像信息经过处理后,特征信息将会存入到数据库中,然后在对用户的监控过程中,会通过人脸识别算法对用户进行人脸识别,主要有三个过程,人脸检测、特征映射和类别判断,再将得出的结果返回出来。如图所示,是本文人脸识别系统的架构图。

在这里插入图片描述

界面主要用于系统与用户之间的交互,它包括各种控件和视图,比如按钮、图像监控画面、文本显示等。界面可以将识别结果或者交互信息直接展示给用户,便于实现更好的体验,比如在拍照的时候,可以实时显示人物图像,方便截取更好的人脸数据。简洁漂亮的界面会给用户良好的感受。

逻辑层是整个系统的核心部分,主要实现了各种应用功能。其中调用摄像头是用于人脸图像采集和场景监控的必备功能。此外,以深度神经网络为基础的人脸检测和特征映射模块,以及以相似度计算为基础的类别判断模块是人脸识别的核心算法模块。为了能够更精确更高效的运行人脸识别相关应用,设计好的深度网络算法和分类算法是关键。

数据存储层主要用于存储和读取数据,包括网络模型的存取和图片数据的存取。由于本系统是采用的策略是线下训练模型,所以必须预先将网络模型训练好并放在系统的资源文件目录中,检测结果的存储则会存放在指定目录中并传输到界面显示。总的使用流程可以参考下图所示。

在这里插入图片描述

人脸识别系统功能框架

由于人脸识别这个功能通常不是单独存在,而是与其他应用相结合,作为其中的一个部分,人脸识别之后的信息作为数据内容应用到其他地方。而单论人脸识别系统的话,根据上述功能分析和用户的角度来说,其主要功能可分为数据存储和监控两个部分,数据存储就是将用户的人脸信息利用拍照保存下来,然后对图片中的人脸检测出来,再将人脸数据预处理为特征信息并存储起来,用来监控阶段人脸的分类。监控则是为了对用户进行人脸识别,其中又可细分为人脸检测、特征提取、特征分类。如图所示,是系统的功能结构图。

在这里插入图片描述

根据上述所讲的内容进一步分解,可以得到数据存储和人脸识别的流程图。数据存储流程图如图所示。

在这里插入图片描述

在这里插入图片描述