用Python进行人脸识别「包括源代码」

网站建设4年前发布
41 0 0

人脸检测与识别是计算机视觉领域的研究热点之一。,人脸识别的应用包括人脸解锁、安全防护等,医生和医务人员利用人脸识别来获取病历和病史,更好地诊断疾病。,在这个python项目中,我们将构建一个机器学习模型,该模型从图像中识别人。我们在项目中使用了人脸识别API和OpenCV。,随时了解最新的技术趋势,加入DataFlair的电报!,若要安装上述软件包,请使用以下命令。,要安装FaceRecognition,首先安装dlib包。,现在,使用以下命令安装面部识别模块,请下载python面部识别项目的源代码: 人脸识别工程代码,我们可以使用我们自己的数据集来完成这个人脸识别项目。对于这个项目,让我们以受欢迎的美国网络系列“老友记”为数据集。该数据集包含在面部识别项目代码中,您在上一节中下载了该代码。,在继续之前,让我们知道什么是人脸识别和检测。,人脸识别是从照片和视频帧中识别或验证一个人的脸的过程。,人脸检测是指在图像中定位和提取人脸(位置和大小)以供人脸检测算法使用的过程。,人脸识别方法用于定位图像中唯一指定的特征。在大多数情况下,面部图片已经被移除、裁剪、缩放和转换为灰度。人脸识别包括三个步骤:人脸检测、特征提取、人脸识别。,OpenCV是一个用C++编写的开源库.它包含了用于计算机视觉任务的各种算法和深度神经网络的实现。,创建2个目录,训练和测试。从互联网上为每个演员选择一个图片,并下载到我们的“火车”目录中。确保您所选择的图像能够很好地显示人脸的特征,以便对分类器进行分类。,为了测试模型,让我们拍摄一张包含所有强制转换的图片,并将其放到我们的“test”目录中。,为了您的舒适,我们增加了培训和测试数据与项目代码。,首先导入必要的模块。,人脸识别库包含帮助人脸识别过程的各种实用程序的实现。,现在,创建2个列表来存储图像(人员)的名称及其各自的脸编码。,人脸编码是一种值的矢量,它代表着脸部特征之间的重要度量,如眼睛之间的距离、额头的宽度等。,我们循环遍历火车目录中的每个图像,提取图像中的人的姓名,计算其脸编码向量,并将信息存储在相应的列表中。,如前所述,我们的测试数据集只包含一个包含所有人员的图像。,使用CV2 imread()方法读取测试映像。,人脸识别库提供了一种名为Face_Locations()的有用方法,它定位图像中检测到的每个人脸的坐标(左、下、右、上)。使用这些位置值,我们可以很容易地找到脸编码。,我们循环遍历每个面部位置及其在图像中的编码。然后,我们将这种编码与“列车”数据集中的人脸编码进行比较。,然后计算人脸距离,即计算测试图像编码和训练图像编码之间的相似性。现在,我们从它选取最小值距离,表示测试图像的这张脸是训练数据集中的人之一。,现在,使用CV2模块中的方法绘制一个带有面部位置坐标的矩形。,使用CV2模块的imShow()方法显示图像。,使用imwrite()方法将图像保存到当前工作目录中。,释放未被释放的资源(如果有的话)。,Python人脸识别输出,让我们看看模型的输出。,

© 版权声明

相关文章