人脸识别insightface库环境搭建

AI 实战 - 基于 insightface 的人脸识别 face 深度学习, cnn, insightface 阅读详情

基础环境

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

        2、由于InsightFace是一个开源的人脸识别框架,它基于深度学习技术,能够提供高精度的人脸识别服务,因此需要支持所需的GPU环境,这个在之前博客有详细教程:https://blog.youkuaiyun.com/ddazz0621/article/details/149071101这里不在赘述。基础环境截图如下:

环境搭建

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

conda create -n insightface_env python=3.8 -y

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

conda activate insightface_env

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

        3、conda install 安装所需依赖库命令如下:

conda install numpy scipy matplotlib pandas scikit-learn -y

        上述命令安装成功后,conda list 查看安装库部分截图如下:

        4、pip 安装所需依赖库命令如下:

pip install mxnet-cu112  onnxruntime-gpu -i https://pypi.tuna.tsinghua.edu.cn/simple

        安装成功截图如下:

        5、安装insightface库命令如下:

pip install insightface -i https://pypi.tuna.tsinghua.edu.cn/simple

        执行上述命令在我的环境中报错,这是因为我的基础环境中g++版本过低,两种方案:1、升级系统g++版本;2、conda 环境安装高版本g++。我选的是方案2:,命令如下:

conda install gxx_linux-64=11.2.0

        执行成功截图如下:

        后续再安装insightface库执行成功截图如下:

        测试库调用成功截图如下:

案例测试

        测试insightface库的简单代码如下:

import cv2
import numpy as np
from insightface.app import FaceAnalysis
import os

# 初始化人脸识别模型
app = FaceAnalysis(name="buffalo_l",providers=['CUDAExecutionProvider', 'CPUExecutionProvider'])
print("----------------111------------------")
app.prepare(ctx_id=0, det_size=(640, 640))



def load_and_detect_face(image_path):
    if not os.path.exists(image_path):
        print(f"错误: 找不到图像: {image_path}")
        return None, None

    image = cv2.imread(image_path)
    if image is None:
        print(f"错误: 无法读取图像: {image_path}")
        return None, None

    faces = app.get(image)

    if len(faces) == 0:
        print(f"未能在图像中检测到人脸: {image_path}")
        return None, None
    else:
        return image, faces[0].embedding

def compare_faces(embedding1, embedding2):
    if embedding1 is None or embedding2 is None:
        return None

    cosine_similarity = np.dot(embedding1, embedding2) / (np.linalg.norm(embedding1) * np.linalg.norm(embedding2))
    return cosine_similarity

if __name__ == "__main__":
    # 替换为你的图片路径
    image1_path = r'./pic/bao1.png'  # 第一个人的图像路径
    image2_path = r'./pic/bao2.png'  # 第二个人的图像路径

    # 加载并检测第一张图像
    image1, embedding1 = load_and_detect_face(image1_path)
    
    # 加载并检测第二张图像
    image2, embedding2 = load_and_detect_face(image2_path)

    # 比较两张人脸
    similarity = compare_faces(embedding1, embedding2)

    if similarity is not None:
        print(f"两张人脸的相似度: {similarity:.4f}")

        # 设置阈值以判断是否为同一人
        threshold = 0.5  # 根据需要调整阈值
        if similarity > threshold:
            print("这两张人脸是同一个人。")
        else:
            print("这两张人脸不是同一个人。")


        执行截图如下:

        由于第一次执行会下载模型,因此相对较慢。上述代码案例用的两张识别图片如下:

 

        上述两张图片用face_recognition库识别时出错(出错的原因是第一张图没发现有人脸),但用insightface库检测通过。通过多次比对测试,笔者觉得insightface库人脸识别能力比较准确。

人脸识别开源项目--insightface 1 insightface简介 最近人脸识别等机器学习的项目很火,偶然间发现了一个开源的人脸识别的开源项目insightface。 人脸识别技术可以准确识别出图像中的人脸和身份,具有丰富的应用场景,譬如金融场景下的刷脸支付、安防场景下的罪犯识别和医学场景下的新冠流行病学调查等等。人脸识别的算法演变经历了以 PCA 为代表的早期阶段,再到以“人工特征+分类器”为主的统计学习方法阶段,近几年,随着大数据及 GPU 算力的爆发,人脸识别进入到深度学习算法为绝对主角的阶段。 InsightFace是基于 M. 阅读详情

相关推荐

基于Insightface的人脸识别

Insightface是在人脸识别方向继facenet:https://github.com/davidsandberg/facenet后又一个比较完善的开源项目。 先给出论文地址:https://arxiv.org/pdf/1801.07698.pdf 项目源码地址:deepinsight/insightface 这里也提供一个如何运行该项...

Danbinbo的博客 1万+

【全网最详细】ComfyUI下,Insightface安装指南-聚梦小课堂

​ComfyUI下使用IP-adapter下的faceID模型的时候,大家可能会遇到如下错误: Error occurred when executing InsightFaceLoader: No module named 'insightface' File "F:\ComfyUI-aki\execution.py"...那这个InsightFace应该怎么安装呢?这篇温江就详细介绍一下。

聚梦小课堂 3万+

windows insightface库 人脸识别入门教程

初学insightface,在网上找了几天的博客,但是大多都是在Linux上运行的教程。而且我下的源代码跟他们的结构完全不一样,一度怀疑自己下错了。后来发现是因为作者一直在迭代更新,到现在跟之前已经有很大不同了。为了便于自己入门,所以我去github上下载了作者19年的版本。 环境配置 环境配置按照https://zhuanlan.zhihu.com/p/33750684所说就行,cuda10.1也可以运行。 源码下载 https://github.com/deepinsight/insightface#t

weixin_43974261的博客 5433

人脸识别2:InsightFace实现人脸识别Face Recognition(含源码下载)

InsightFace人脸识别,基于开源ArcFace(也称InsightFace)模型搭建一套完整的Python版本人脸识别系统(Face Recognition or Face Identification);整套人脸识别系统核心算法包含人脸检测和人脸关键点检测,人脸校准,人脸特征提取以及人脸比对(1:1)和人脸搜索(1:N)。

AI吃大瓜的博客 3万+

mxnet+insightface搭建

文章目录mxnet+insightface框架搭建1. 安装 python22. 安装 mxnet3. 克隆insightface仓库到本地4. 基本配置5. 试运行5.1 训练5.2 验证5.3 特征提取5.4 人脸对齐5.5 人脸检测 mxnet+insightface框架搭建 1. 安装 python2 insightface使用python2.7(2010年1月就退役了emmm),安装an...

quyan的博客 5189

人脸识别与insightFace梳理

一、基础知识 1.相关信息链接(总览): http://www.sohu.com/a/225358405_473283 https://www.cnblogs.com/shouhuxianjian/p/9789243.html 人脸识别文献综述——学术版(Deep face recognition: a survey v4) http://www.elecfans.com/d/709424...

zcc的博客 3332

insightface搭建+测试+代码编写

环境搭建 本教程的人脸识别是使用的是insightface库进行开发的,该库使用的框架为ONNX,使用的是Anaconda环境。 2.

DreamWeaver_Zhou 1047

基于insightface实现的人脸检测,人脸识别,insightface源码讲解。

基于insightface实现的人脸检测,人脸识别,insightface源码讲解。

m0_55674689的博客 1万+

最简单的人脸识别系统搭建

前言:人脸识别系统目前已经非常的成熟了,所以也有一些优秀的开源项目,比如我们今天要用的到insightface,它包含了人脸检测和识别模块。 配置 Windows 10 python3.6 mxnet-cu100 1.5.0 cuda10 numpy 1.14.5 首先我们了解一下这里的人脸识别是怎么做的分为一下几步骤。 1.检测人脸,就是从图片检测出来人脸所在的位置。 2.根据返回出来的的人脸位...

cszhangjinchao的博客 6977

InsightFace 人脸识别算法实现过程解析

insightface算法实现

weixin_43366149的博客 1359

Flask人脸识别签到系统实战:从选型到避坑

人脸识别签到系统通过摄像头采集人脸图像,利用深度学习模型提取特征并与底库比对,实现身份验证与自动记录。其技术价值在于替代纸质签到,提升效率与准确性,适用于活动签到、考勤管理等场景。在Python生态中,Flask框架凭借轻量灵活的特性,与face_recognition、InsightFace等识别库无缝集成,成为搭建签到系统的理想后端选择。本文围绕Flask人脸识别签到系统的完整实现,涵盖技术选型、代码落地及部署避坑,帮助开发者快速构建稳定可用的签到应用。

weixin_32175665的博客 266

RK3588与香橙派5 Plus端侧人脸识别实战:从RetinaFace到ArcFace

人脸识别作为计算机视觉的核心技术,已广泛应用于门禁、考勤与安防场景。传统云端方案虽易实现,却面临延迟、隐私与成本问题,而端侧推理直接将模型部署到边缘设备,在本地完成特征提取与比对。瑞芯微RK3588芯片凭借4颗A76大核与6 TOPS NPU,成为运行ONNX Runtime推理的理想平台。在香橙派5 Plus上,借助insightface工具库,使用RetinaFace进行精确的人脸检测,配合基于ArcFace损失的识别模型,可输出鲁棒的512维人脸特征向量,仅靠CPU即可实现每秒2-3帧的实时识别。本文

weixin_33937499的博客 415

伺服电机入门01

编码器输出 旋转信号 , 接收端: 使用ADC 捕捉旋转信号 ,转成数字信号,驱动器得到数字处理, 因为信号量是模拟信号, mcu mpu 等芯片通常内部处理是数字,通过adc 得到数字cpu 才能识别 传输过来的pos 等信息。IPM 芯片示例, IRAM256A 这个芯片已经停产,有换新的,,下面示例来自stmbl 高功率方案,4 步进电机 有全步控制,半步控制 ,微步控制,FOC控制,步进电机也是可以做伺服系统的。以下面几种信号是可以细分,也就是通过细分增加编码器的分辨率,

qq_25160559的博客 969

基于insightface实现的人脸识别和人脸注册

为了方便,写一个类完成所有的识别流程,开始编写人脸识别和人脸注册工具类,使用`insightface.app.FaceAnalysis()`可以获取模型对象,这里包含了三个模型,首先是人脸检测模型,然后是人脸特征提取模型,和最后的性别年龄识别模型。使用`model.prepare()`可以配置`ctx_id`指定使用哪一块GPU,如果是负数则是使用CPU执行预测,`det_thresh`配置的是人脸检测的阈值。`load_faces()`函数是加载人脸库中的人脸,用于之后的人脸识别对比。...

夜雨飘零 2万+

LEC/FORMAL --- PARTIII debug

lec(logic equivalence checking)又叫formal check,是对ic design的综合,PR前后的设计进行逻辑对比检查的工具/手段,保证综合不改变rtl原始的logic function。目前用的较多的就是C家的formal工具。接下来介绍一下lec过程中遇到的问题以及debug手段。...

sinat_27691203的博客 7709

忆阻器(二)——忆阻模拟器

除了真实的器件,我们也可以用运放和乘法器来搭忆阻模拟器。这节将介绍数学模型、matlab仿真及multisim仿真。 一、数学模型 忆阻分为磁控和荷控两种,这里介绍三次非线性磁控忆阻模型: {I=W(φ)VW(φ)=a+3bφ2dφdt=V \begin{cases} I=W(\varphi)V \\ W(\varphi)=a+3b \varphi ^2\\ \frac{d \varphi }{dt}=V \end{cases} ⎩⎪⎨⎪⎧​I=W(φ)VW(φ)=a+3bφ2dtdφ​=V​ 这里的WWW

http://www.icfgblog.com/ 1万+

人脸识别3:C/C++ InsightFace实现人脸识别Face Recognition(含源码)

C++人脸识别,人脸检测,opencv人脸识别,opencv人脸检测;整套人脸识别系统核心算法包含人脸检测和人脸关键点检测,人脸校准,人脸特征提取以及人脸比对(1:1)和人脸搜索(1:N)

AI吃大瓜的博客 1万+

SARScape实战:集成GACOS数据优化InSAR大气校正全流程

本文详细介绍了如何在SARScape软件中集成GACOS数据,以优化InSAR大气校正的全流程。通过实战步骤,从GACOS数据申请、下载、导入,到在单景干涉图和SBAS-InSAR流程中应用,有效剥离大气相位延迟,显著提升形变监测结果的精度与可靠性,实现从“雾里看花”到“拨云见日”的转变。

weixin_28419039的博客 399

【亲测免费】 Android InsightFace:轻松实现人脸识别

Android InsightFace:轻松实现人脸识别 【下载地址】AndroidInsightFace实现人脸识别含源码 Android InsightFace实现人脸识别(含源码) 项目地址: https://gitcode...

gitblog_06684的博客 1647

使用Termux在Android设备上编译运行SpecCPU2006

SPEC2006搭配Termux,竟然还能这么玩?!

菜菜的菜园子 2960

用化学方法nmp溶剂从佳能cmos传感器上剥离拜耳矩阵和微透镜

将光刻胶暴露于 NMP 溶剂中 10-15 分钟,并进行轻微的机械搅拌,将溶解的光刻胶从基材表面带走,即可去除大部分光刻胶,之后再进行第二次溶剂浴,以洗去微量含有光刻胶的溶剂。我还担心传感器的校准问题,我觉得可以大致解决这个问题,比如在安装面上用刻度尺标记三个螺丝的位置,然后数着拧出螺丝的圈数,直到听到“咔哒”声(螺纹完全拧出)。我还担心传感器的校准问题,我觉得可以大致解决这个问题,比如在安装面上用刻度尺标记三个螺丝的位置,然后数着拧出螺丝的圈数,直到听到“咔哒”声(螺纹完全拧出)。在我看来,这是必读的;

qq_40247880的博客 1475

30分钟搭建高校实验室人脸识别系统:基于InsightFace的完整教学案例

你是否还在为实验室门禁管理繁琐、考勤统计耗时而烦恼?是否想快速搭建一套低成本、高准确率的人脸识别系统?本文将带你从零开始,基于开源项目InsightFace,用30分钟完成一套适用于高校实验室的人脸识别系统,解决实验室安全管理与人员考勤的双重需求。读完本文,你将掌握环境搭建、模型部署、系统集成的全流程,还能获得可直接运行的代码模板和优化建议。 ## 系统架构概览 高校实验室人脸识别系统主要包含...

gitblog_00090的博客 1277

SAP S/4HANA 中 RAP 业务对象接口的消费模式

本文探讨了SAP S/4HANA中RAP业务对象接口的消费模式,重点介绍了通过EML直接调用和CDS投影两种Clean Core开发路径。文章分析了BO Interface作为稳定契约的价值,并提供了BAdI集成、OData服务发布等实际场景案例,同时对比了OData V2/V4的技术选型考量,最后强调了ADT向导使用中的DCL权限注意事项。全文旨在帮助开发者构建升级友好的业务对象消费方案。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 757

python 人脸识别项目insightface

人脸识别项目insightface

Ding_Jie_的博客 5349

大语言模型原理与工程实践:手把手教你训练 7B 大语言模型 自动化训练框架

近年来,大语言模型(Large Language Models,LLMs)在自然语言处理领域取得了突破性进展。从GPT-3到ChatGPT,再到最新的GPT-4,这些模型展现出了惊人的语言理解和生成能力,引发了学术界和产业界的广泛关注。然而,训练如此庞大的模型不仅需要海量的数据和计算资源,还需要复杂的工程实践和优化技巧。本文将深入探讨大语言模型的原理,并以7B参数规模的模型为例,详细介绍如何构建一个自动化训练框架,使读者能够亲自动手训练自己的大语言模型。

AI天才研究院 1921

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: 人脸识别face_recognition库环境搭建
下一篇: AI代码生成插件continue用vscode源码编译步骤
码农诗人
博客等级 码龄11年 987粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值