人脸识别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

《生成式AI引发的“认知污染”:社交媒体虚假信息的治理困局》

认知污染与生成式AI“认知污染”指信息环境被大量虚假、误导性内容所充斥,干扰公众对事实的认知判断。在社交媒体时代,虚假信息的生产和传播门槛大幅降低,呈现出工业化、规模化的趋势。近年兴起的生成式人工智能(Generative AI)技术,如大型语言模型(LLM)和深度伪造(deepfake),更是加剧了这一问题。AI可以自动生成看似真实的文本、图像、音视频,将虚假信息批量生产并快速散播到社交平台上。

那谁的博客 5912

基于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

双足肌肉骨骼机器人

Clone Alpha的技术突破标志着人类进入生物-机械融合的新纪元,但其影响远超技术范畴。从伦理框架重建(如拉马克进化算法中的知识传递机制)到经济模式革新(如UBI应对机器人失业潮),需全球协作制定前瞻性政策。若放任技术无序扩张,人类社会或将面临“能力断层”与“控制权丧失”的双重危机;反之,若以人类福祉为核心导向,仿生机器人亦可成为弥合残障歧视、提升整体文明层级的钥匙。当下选择,将决定人类究竟是技术的创造者,还是被重构的客体。

百态·数智思维 | 聚焦大数据、量化与未来AI 985

一文教你用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

不会ps,你也可以成为ps高手,最强傻瓜式人像一键磨皮美白瘦脸美妆PS插件

比如:美肤是用来去斑点的,如果效果不太理想,就加大百分比,反之就减小。瘦脸如果脸胖的就打开,正常的就关闭。所谓的一键调节,要不只能调节一种效果,要不就是个预设,然后让你自己再调。同时,该软件还加入了贴心的批量处理功能,能同时处理上千张照片,让您喝着茶也能将工作做完。、自动检测照片中的人脸,包括鼻子,嘴巴,耳朵,眼睛和眉毛。、依托强大的脸部识别功能,可以高效的对人物全身皮肤进行智能识别,处理,使肤质平滑、过渡均匀。,这是网上下载的模糊照片,经过简单处理,你可以发现,眼睛变的更亮,皮肤更白,眼袋消失。

心语家园 - www.xinyucn.cc 2899

MoveIt2 Servo实战:解锁UR机械臂在ROS2中的实时遥操作与动态响应

本文深入探讨了MoveIt2 Servo在UR机械臂实时遥操作中的应用,展示了如何通过ROS2实现毫秒级动态响应。文章详细解析了Servo的核心价值、环境配置、控制器适配及高级调优技巧,特别适用于需要高精度控制的工业场景,如VR手术训练和汽车装配线。

weixin_29044157的博客 247

Python环境下face_recognition库的安装指南

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

得塔云的博客 1021

SAP开发顾问简历模板范文(精选篇)

SAP开发顾问简历该怎么写呢?

Huanzhucv的博客 1568

初尝人脸比对-环境搭建 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

机器人视觉实战:用OpenCV搞定手眼标定(附完整C++代码)

本文详细介绍了使用OpenCV实现机器人视觉中的手眼标定技术,包括核心算法、工业场景优化及完整C++代码示例。通过解析坐标系转换问题,提供从数据采集到标定验证的全流程解决方案,帮助开发者在复杂工业环境中实现高精度机械臂与视觉系统的协同作业。

weixin_29306571的博客 481

Supervisor 安装与使用

一、Supervisor 介绍 Supervisor 是一个用 Python 编写的进程管理工具,它可以用于监控和控制类 UNIX 操作系统上的多个进程。它是一个客户端/服务器系统,其中 Supervisor 的服务器端称为 supervisord,负责启动管理的子进程、响应客户端命令、重启崩溃或退出的子进程、记录子进程的 stdout 和 stderr 输出,以及处理子进程生命周期中的事件。客...

疯子丶pony的博客 3863

人脸识别开源库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

HQChart实战教程19 - PC端分时图定制tooltip

HQChart实战教程19 - PC端分时图定制tooltip序效果步骤1. 创建一个外部tooltip的div2. 注册标题绘制事件3. 标题绘制回调函数格式说明eventdataobjtooltip显示函数HQChart代码地址 序 hqchart分时图是不带tooltip, 如果我们需要在PC端页面显示tooltip,我们可以通过注册绘制标题事件,来自己做一个div显示数据。 参考教程HQChart实战教程7-自定义显示手势点击K线显示信息 效果 步骤 1. 创建一个外部tooltip的div 在外

小银 2447

树莓派+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

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

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

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

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

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
上一篇: 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、付费专栏及课程。

余额充值