人脸识别face_recognition库环境搭建

face_recognition(人脸识别) 是一个非常流行的 Python 库,专门用于人脸识别任务。它基于 dlib 库和 HOG(Histogram of Oriented Gradients)特征以及深度学习模型,提供了简单易用的接口来进行人脸检测、面部特征点定位和人脸识别。库由 Adam Geitgey 开发,旨在简化人脸识别任务,使其更加容易上手。 阅读详情

基础环境

        该实验是在Anaconda或Miniconda独立环境中测试部署的,由于Anaconda或Miniconda环境部署网上资料较多,这里就不在赘述。

环境搭建

        1、创建python独立环境命令:

conda create -n py310 python=3.10 -y

        2、进入新创建的python独立环境命令:

conda activate py310

        查看当前python独立环境的相关库如下:

        3、由于face_recognition依赖dlib库;而dlib库pip安装比较容易报错,因此用conda install 安装。命令如下:

conda install -c conda-forge dlib==19.24.0

        执行成功后conda list查看所包含库如下:

        测试库相关截图如下:

        4、安装face_recognition库及第三方依赖库命令如下:

pip install face_recognition==1.3.0 setuptools==75.8.0 opencv-python==4.11.0.86 -i https://pypi.tuna.tsinghua.edu.cn/simple

        执行成功后pip list查看所包含库如下:

案例测试

        上述过程完成了环境的搭建,下来用一个简单案例测试一下环境是否搭建成功。

        1、测试dlib库的简单代码如下:

import dlib
import cv2  # 用于图像读取和显示

# 1. 加载 dlib 的人脸检测器(基于 HOG 特征 + 线性分类器)
detector = dlib.get_frontal_face_detector()

# 2. 读取图片文件(替换为你的图片路径)
image_path = "1.jpeg"  # 示例图片,需用户自行准备
image = cv2.imread(image_path)

# 检查图片是否加载成功
if image is None:
    print(f"错误:无法读取图片文件 '{image_path}',请检查路径!")
    exit()

# 3. 将图片转换为 dlib 的格式(HOG 检测器需要)
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
image_gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)


# 4. 执行人脸检测
# 参数说明:1 表示图像金字塔上采样次数(检测更小人脸)
faces = detector(image_gray, 1)

# 5. 在图片上标注检测到的人脸
for face in faces:
    # 获取人脸边界框坐标
    x, y, w, h = face.left(), face.top(), face.width(), face.height()
    # 用绿色矩形框标注人脸
    cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)

# 6. 显示结果
cv2.imwrite("result_fr.jpeg", image)


# 7. 输出检测结果
print(f"检测到 {len(faces)} 张人脸!")

执行上述代码运行如下:

2、测试face_recognition库的简单代码如下:

import face_recognition

class FaceCompare:
    """人脸特征比对工具类
    
    Attributes:
        known_face_encoding (numpy.ndarray): 已知人脸编码
        unknown_face_encoding (numpy.ndarray): 待识别人脸编码
        tolerance (float): 相似度阈值(默认0.6)
    """
    
    def __init__(self, known_image_path, unknown_image_path, tolerance=0.6):
        """初始化人脸编码器
        
        Args:
            known_image_path (str): 基准图像路径
            unknown_image_path (str): 待比对图像路径
            tolerance (float, optional): 匹配阈值
        """
        self.known_face_encoding = None
        self.unknown_face_encoding = None
        self.tolerance = tolerance
        
        try:
            known_image = face_recognition.load_image_file(known_image_path)
            self.known_face_encoding = face_recognition.face_encodings(known_image)[0]
        except IndexError:
            print("错误:基准图像未检测到人脸")
        except Exception as e:
            print(f"基准图像加载失败: {e}")
            
        try:
            unknown_image = face_recognition.load_image_file(unknown_image_path)
            self.unknown_face_encoding = face_recognition.face_encodings(unknown_image)[0]
        except IndexError:
            print("错误:待比对图像未检测到人脸")
        except Exception as e:
            print(f"待比对图像加载失败: {e}")
    
    def compare(self):
        """执行人脸特征比对
        
        Returns:
            tuple: (匹配结果bool, 相似度float)
        """

        # 返回比较结果    
        # match_result = face_recognition.compare_faces([self.known_face_encoding],  self.unknown_face_encoding, tolerance=self.tolerance)
        
        match_score = face_recognition.face_distance([self.known_face_encoding], self.unknown_face_encoding)
        similarity = 1.0 - abs(match_score)  # 标准化相似度
        print(f"self.tolerance : {self.tolerance}, similarity : {similarity}")
        return similarity > self.tolerance, similarity

if __name__ == "__main__":
    comparator = FaceCompare(
        known_image_path=r"./pic/bao1.png",
        unknown_image_path=r"./pic/bao2.png"
    )
    is_match, score = comparator.compare()
    print(f"匹配结果: {is_match}\n相似度: {score}")

        执行上述代码运行如下:

深度学习-人脸识别环境搭建与demo演示(windows+face_recognition+dlib+pycharm) 文章目录搭建windows的python环境下载pycharm下载face_recognition源码demo演示源码初步分析人脸定位参考find_faces_in_picture.py人脸编码和识别参考identify_and_draw_boxes_on_faces.py 搭建windows的python环境 推荐直接安装anaconda 5.2(自带python3.6.8) 安装地址:http... 阅读详情

相关推荐

MTCNN结合Face_recognition实现图片中人脸识别

二 算法环境搭建以及相关库安装 创建虚拟环境: conda create -n face_recognize python=3.5 1. mtcnn环境配置 在新创建的环境中安装: pip install tensorflow-gpu==1.14 pip install opencv-python 将训练好的mtcnn人脸检测代码放入project中 2. face-recognition依赖...

BlackBBY的博客 714

最简单的人脸识别(超详解)

在前面一些章节的铺垫下,终于可以来到最终目的--人脸识别。本次使用的最基础的人脸识别,不具备深度学习功能,各位看官可以根据自己需要了解,珍惜自己时间。 本章主要根据人脸的关键点,结合欧式距离,在数据库进行人脸比较,最终识别出人脸。 环境:python 3.8 + opencv 4.7.0.72 + dlib + face-recognition 1.3

qq_29541895的博客 2757

树莓派实现简单的人脸识别

前言 这篇文章属于此系列: 一个用树莓派做的会聊天,能人脸识别(支持云台追踪)和发送邮件的小玩具 https://blog.csdn.net/yonglisikao/article/details/82804318 前提 一.硬件要求 树莓派及基本配件,树莓派摄像头模块(Picamera)或USB摄像头(Webcam)。 二.系统要求 Raspbian系统(其他Linux系统应该也...

yonglisikao的博客 1万+

小白手把手教你如何安装face_recognition

cmake安装成功以后,开始安装DLIB,网上搜索dlib-19.22.99-cp39-cp39-win_amd64.whl下载到D:\后,然后回到控制台 pip install d:\dlib-19.22.99-cp39-cp39-win_amd64.whl。创建好项目以后,来到这个命令控制台,输入pip install cmake -i https://pypi.tuna.tsinghua.edu.cn/simple/ 然后回车。然后就完成了,face_recognition的安装。

qq_34278764的博客 4896

face-recognition的安装与实现简单的人脸比对服务

一、 目标: 找一个开源的人脸识别库,实现一个简单的人脸比对服务;提供api,通过提交文件或base64图片等,比对出图片的相似度等; 二、 开始是计划找java实现,但各种查询搜索后,发现还是python下的人脸识别库丰富简单强大且活跃; face_recognition是使用世界上最简单的人脸识别库,在Python或命令行中识别和操作人脸。使用dlib最先进的人脸...

林星语 2092

(运行人脸识别)安装python+opencv+dlib+face_recognition详细步骤

1,安装环境miniconda (python2.7): Miniconda - Conda 配置好环境变量:https://mp.csdn.net/postedit/86750969 添加一个清华的镜像服务器来加速以后文件的下载: 在cmd中输入命令:conda config --add channels https://mirrors.tuna....

kalinux的博客 7311

python人脸识别环境搭建_Win10:Python3.6安装face_recognition人脸识别库

face_recognition简介face_recognition是Python的一个开源人脸识别库,支持Python 3.3+和Python 2.7。引用官网介绍:Recognize and manipulate faces from Python or from the command line with the world's simplest face recognition libra...

weixin_31514917的博客 405

(5-1)face_recognition人脸识别:安装face_recognition

face_recognition 是一个基于深度学习的人脸识别库,它提供了简单易用的接口,用于在图像和视频中进行人脸检测、人脸对齐和人脸识别等任务。通过使用face_recognition,可以在Python程序中实现人脸识别功能。在本章的内容中,将详细讲解使用face_recognition实现人脸识别的知识,为读者步入本书后面知识的学习打下基础。

码农三叔 2208

Windows系统 安装dlib库 安装face_recognition库,基于Python实现人脸识别系统

Windows系统 Python3.7 安装dlib库 安装face_recognition库,实现人脸识别系统项目背景环境搭建安装dlib过程详解操作系统准备安装编译器插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 项目背景 公司近期有个储备项目,用于向客户演示人脸识别系统的简单应用,正

IT人生 80后老吴 1453

使用Python的face_recognition库进行个人脸检测

人脸检测是计算机视觉领域的一个重要任务,它可以识别和定位图像或视频中的人脸。Python提供了许多优秀的库来实现人脸检测,其中face_recognition库是一个功能强大且易于使用的选择。通过使用face_recognition库,我们可以轻松地实现人脸检测功能,并将其应用于各种应用程序,如人脸识别、表情分析等。接下来,我们将加载图像并使用face_recognition库进行人脸检测。运行结果将在图像上显示检测到的人脸,并输出人脸的数量。函数检测图像中的人脸,并将结果保存在。希望本文对你有帮助!

CyberLynxX的博客 538

ADS与MATLAB数据互通全指南:从Snp文件导入到TXT导出完整流程

本文详细介绍了在射频与微波工程中,实现ADS与MATLAB高效数据互通的完整流程。核心内容包括利用SPOutput控件、数据显示窗口及测量方程等多种方法,将ADS仿真数据(如S参数)导出为Touchstone或TXT格式,并导入MATLAB进行深度分析与可视化;同时指导如何将MATLAB处理后的数据回灌至ADS,用于模型验证与协同仿真,旨在构建自动化、无损的数据交换工作流,提升工程师的工作效率。

pluto的博客 391

基于Python的face_recognition库实现人脸识别

一、face_recognition库简介 face_recognition是Python的一个开源人脸识别库,支持Python 3.3+和Python 2.7。引用官网介绍: Recognize and manipulate faces from Python or from the command line with the world's simplest face recognitio...

qaswzh的专栏 7813

Linux下Catapro酶动力学预测工具保姆级安装指南(PyTorch+CUDA11.8适配版)

本文提供了Linux系统下Catapro酶动力学预测工具的详细安装指南,特别适配PyTorch+CUDA11.8环境。从环境准备、源码获取到虚拟环境创建、依赖包安装和模型配置,逐步指导用户完成安装流程,并包含常见问题排查和性能优化建议,帮助研究者快速部署这一高效酶动力学参数预测工具。

weixin_29278805的博客 212

一文教你用1行代码实现人脸识别 -- Python Face_recognition

个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 环境要求: Ubuntu17.10 Python 2.7.14 环境搭建: 1. 安装Ubuntu17.10> 安装步骤在这里 2. 安装 Python2.7.14 (Ubuntu17.10 默认Python版本为2.7.14) 3. 安装 git 、cmake 、 python-pip # 安装 ...

weixin_41663412的博客 244

手把手教你学PCIE(10.5)--PCIE故障排除方法的分步排查法介绍

通过以上分步排查法,你可以系统地诊断和解决 PCIe 设备的故障。每个步骤都有助于逐步缩小问题范围,最终找到并解决问题。

MHD0815的博客 1873

【学习系列】SAP RAP 29:如何创建Application Jobs(下)

本文介绍了在SAP系统中通过API创建和使用Application Jobs的方法。主要内容包括:1) 创建RAP应用并通过Action调用API创建Jobs;2) 使用事件驱动方式异步更新Job状态;3) 通过URL跳转到标准日志页面;4) 使用Custom Entity获取Job日志;5) 演示遗留接口IF_APJ_DT_EXEC_OBJECT和IF_APJ_RT_EXEC_OBJECT的使用。文章提供了详细的代码示例,展示了如何通过CL_APJ_RT_API=>SCHEDULE_JOB调度作业,

DeveloperMrMeng的博客 376

Python环境下face_recognition库的安装指南

本文详细介绍了在Python 3.7.16环境下安装face_recognition库的方法。由于该库依赖dlib,而不同Python版本兼容性存在差异,直接安装常会失败。文章提供了两种安装dlib的解决方案:通过pip指定版本安装或下载whl文件手动安装,并推荐使用豆瓣pip源加速下载。最后指导安装face_recognition库并验证安装结果,帮助开发者顺利实现人脸识别功能集成。

得塔云的博客 1021

【OpenClaw从入门到精通】第12篇:OpenClaw 2026子代理实战全攻略:用ACP架构搭建多智能体协作网络(附完整代码)

本文聚焦OpenClaw 2026.3.2版本默认启用的ACP(Agent Communication Protocol)子代理机制,从核心概念、底层原理到企业级实操全流程拆解。先解析子代理的定义、ACP协议通信原理及主从代理分工逻辑,再提供环境准备的详细步骤(版本验证、配置调整、技能安装);随后通过三个递进式虚拟案例(客服分流、智能文档处理、企业级招聘全流程),提供可直接运行的完整代码、执行结果及技术要点解析;最后补充子代理管理运维、性能优化与避坑指南。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 2381

初尝人脸比对-环境搭建 python + face_recognition

网上关于face_recognition的文章很多,但好多都说不全,而且python版本众多,坑也比较多,经过一天的折腾终于配置成功,归纳总结一下: 一、python的版本要3.6,而且要下载64位的,可以到 https://repo.continuum.io/archive/下载历史版本Anaconda3-5.2.0-Windows-x86_64.exe 二、安装dlib ,这个包要...

yowen的专栏 502

SAP_FICO模块-资产减值功能对折旧和残值的影响

SAP_FICO模块-资产减值操作对资产历史折旧以及后续折旧的影响,包括减值操作的配置前提

风沙的博客 2805

人脸识别开源库face_recognition

原文出处: https://blog.xugaoxiang.com/ai/face-recognition-cnn.html 软硬件环境 ubuntu 18.04 64bit GTX 1070Ti anaconda with python 3.6 face_recognition 1.2.3 dlib opencv face_recognition简介 face_recognition号称是世...

8345

STM32入门教程:水位传感器应用

这是一个简单的STM32水位检测系统的入门教程。希望通过学习本教程,您能对STM32微控制器的基本应用有更深入的了解,并能成功构建一个水位检测系统。如果您需要更详细的代码实例和教程,请参考相关的STM32开发手册和应用笔记。STM32是一款功能丰富且广泛应用于嵌入式系统的微控制器系列。在本教程中,我们将介绍如何使用STM32微控制器和水位传感器构建一个水位检测系统。

wx_linying1029的博客 533

树莓派+python+Opencv+face_confignition实现实时人脸识别(人脸识别门禁系统)

使用树莓派+python+Opencv+face_confignition来实现一个人脸识别系统。 1.安装树莓派系统 1.1配置树莓派需要的设备和工具 SD卡,读卡器,SDimage和SD 2.配置python虚拟环境 3.安装opencv库 4.安装face_confignition库 5.安装Rpi.gpio库 6.为系统分配动态内存 7.人脸识别程序代码与执行 ...

weixin_43347758的博客 2008

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Win10使用Face_ recognition+openCV人脸检测以及识别

文章目录Face_ recognition+openCV人脸识别Face_ recognition的安装配置配置PycharmFace_recognition API测试照片中的人脸识别视频中实时人脸识别参考链接 Face_ recognition+openCV人脸识别 本章利用face-recognition库进行图片、视频端的人脸识别 环境:win10,python3.6,dlib19.7.0...

qq_22979337的博客 1197

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

python 人脸识别需要什么工具_简单机器学习人脸识别工具face-recognition python小试,一行代码实现人脸识别...

环境要求:环境搭建:2. 安装 Python2.7.14 (Ubuntu17.10 默认Python版本为2.7.14)3. 安装 git 、cmake 、 python-pip# 安装 git$ sudo apt-get install -y git# 安装 cmake$ sudo apt-get install -y cmake# 安装 python-pip$ sudo apt-get ins...

weixin_39869432的博客 221

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: Ubuntu22.04搭建基于GPU的Yolov8环境
下一篇: 人脸识别insightface库环境搭建
码农诗人
博客等级 码龄11年 987粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值