人脸识别开源算法库和开源数据库

目录

1. 人脸识别开源算法库

1.1 OpenCV人脸识别模块

1.2 Dlib人脸识别模块

1.3 SeetaFace6

1.4 DeepFace

1.5 InsightFace

2. 人脸识别开源数据库

2.1 CelebA

2.2 LFW

2.3 MegaFace

2.4 Glint360K

2.5 WebFace260M


        人脸识别 (Face Recognition) 是一种基于人的面部特征信息进行身份识别的生物特征识别技术。近年来,随着人工智能、计算机视觉、大数据、云计算、芯片等技术的迅速发展,人脸识别技术取得了长足的进步并且在众多场景中得以成功应用 。

        人脸识别的应用模式主要包括三种:

  • 人脸验证 (Face Verification): 判定两张人脸图像是否属于同一个人,常用于身份认证如人证核验。

  • 人脸辨识 (Face Identification): 给定一张人脸图像,判断是否在注册库中,若在则返回具体的身份信息 , 常用于静态检索或动态布控 。

  • 人脸聚类 (Face Clustering): 给定一批人脸图像,将相同人的图像归类到同一个类,不同人的划分为不同的类,常见的应用有智能相册、一人一档等。

        本文旨在介绍一些人脸识别开源算法库和开源数据集,并在后续博文陆续分享人脸识别开源算法库的C++和Python实现代码调用Demo,以帮助开发人员加速人脸识别技术应用。

1. 人脸识别开源算法库

1.1 OpenCV人脸识别模块

        OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它提供了很多函数,这些函数非常高效地实现了计算机视觉算法。

        官网:https://opencv.org/

        Github: https://github.com/opencv/opencv

        中国镜像: https://gitcode.net/opencv/opencv

        OpenCV 的应用领域非常广泛,包括图像拼接、图像降噪、产品质检、人机交互、人脸识别、动作识别、动作跟踪、无人驾驶等。

        OpenCV 4.5.4版本开始,DNN模块集成了高性能的人脸检测算法(使用模型YuNet,由OpenCV China团队贡献)和人脸识别算法(使用模型SFace,由北京邮电大学邓伟洪教授课题组贡献)。详见 https://github.com/opencv/opencv_zoo

Face Detection with YuNet

Face Recognition with SFace

1.2 Dlib人脸识别模块

        Dlib 是一个十分优秀好用的机器学习库,其源码均由 C++ 实现,并提供了 Python 接口,可广泛适用于很多场景。

        官网:http://www.dlib.net/ml.html

        Github: https://github.com/davisking/dlib

        Dlib提供训练好的人脸检测、人脸关键点检测、人脸识别模型供开发者使用,所以Dlib很适合用于人脸识别开发。模型下载地址: http://dlib.net/files/

 

1.3 SeetaFace6

        2016年9月和2019年8月,中科视拓分别开源了SeetaFace1.0人脸识别引擎、SeetaFace2.0商用级人脸识别算法(Github: https://github.com/seetaface)。

        2020年3月31日,中科视拓宣布开放SeetaFace6人脸识别算法(Github: https://github.com/SeetaFace6Open/index)。

        SeetaFace6是最新开放的正式级商业版本,突破了之前社区版和企业版错开发布的情况,此次v6版本与商用版本同步推出。

        SeetaFace6包含人脸识别的基本能力:人脸检测、关键点定位、人脸识别,同时增加了活体检测、质量评估、年龄性别估计,并且顺应实际应用需求,开放口罩检测以及口罩佩戴场景下的人脸识别模型。

        为了满足不同级别的应用需求,SeetaFace6将开放三个版本模型:

模型名称网络结构速度(I7-6700)速度(RK3399)特征长度
通用人脸识别ResNet-5057ms300ms1024
带口罩人脸识别ResNet-5034ms150ms512
通用人脸识别(小)Mobile FaceNet9ms70ms512

1.4 DeepFace

        DeepFace 是一个轻量级的 Python 人脸识别和面部属性分析(年龄、性别、情感和种族)框架。它是一个混合人脸识别框架,包含最先进的模型:VGG-Face、Google FaceNet、OpenFace、Facebook DeepFace、DeepID、ArcFace、Dlib 和 SFace.

        主要功能:人脸检测、人脸对齐特征提取、人脸验证、人脸搜索、人脸聚类、人脸属性识别、人脸跟踪、人脸表情识别、人种识别、性别识别等。

        Github:https://github.com/serengil/deepface

1.5 InsightFace

        InsightFace 是一个开源的 2D 和 3D 深度人脸分析工具箱,主要基于 PyTorch 和 MXNet。它可以有效实现丰富多样的人脸识别、人脸检测和人脸对齐,并对训练和部署进行了优化。

        Github:https://github.com/deepinsight/insightface

2. 人脸识别开源数据库

2.1 CelebA

        CelebA 是由香港中文大学开源的人脸属性数据集,广泛用于人脸相关的计算机视觉任务,可用于人脸属性标识、人脸检测以及 landmark 标记等。该数据集包含 10177 个名人身份的 202599 张人脸图片,每张图片都做了特征标记,包含人脸 bbox 标注框、5 个人脸特征点坐标以及 40 个属性标记。

        后续基于 CelebA 还开源了一些相关数据集:CelebA-Dialog 、CelebAMask-HQ、CelebA-Spoof。其中 CelebA-Dialog 是一个大规模的视觉-语言人脸数据集,含有丰富的细粒度标签,并根据其语义将一个属性划分为多个等级;CelebAMask-HQ 是由从 CelebA 数据集中挑选的 3 万张高分辨率人脸图像组成,每张图像都有对应 CelebA 的人脸属性的分割掩码。CelebAMask-HQ 的 mask 大小为 512 × 512,有 19 类属性特征,包括皮肤、鼻子、眼睛、眉毛、耳朵、嘴巴、嘴唇、头发、帽子、眼镜、耳环、项链、脖子、布等面部部位和装饰配件;CelebA-Spoof 是一个人脸活体检测数据集,包含 10177 个主题的 625537 张图像,43 个丰富的人脸、光照、环境和欺骗类型属性。在 43 个丰富的属性中,40 个属性属于活体图像,包括所有面部信息,如皮肤、鼻子、眼睛、眉毛、嘴唇、头发、帽子、眼镜;3个属性属于欺骗图像,包括欺骗类型、环境和照明条件。

        下载地址:https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html

2.2 LFW

        全名是Labeled Faces in the Wild。无约束自然场景人脸识别数据集,该数据集由13000多张全世界知名人士互联网自然场景不同朝向、表情和光照环境人脸图片组成,共有5000多人,其中有1680人有2张或2张以上人脸图片。每张人脸图片都有其唯一的姓名ID和序号加以区分。

        LFW数据集主要测试人脸识别的准确率,该数据库从中随机选择了6000对人脸组成了人脸辨识图片对,其中3000对属于同一个人2张人脸照片,3000对属于不同的人每人1张人脸照片。测试过程LFW给出一对照片,询问测试中的系统两张照片是不是同一个人,系统给出“是”或“否”的答案。通过6000对人脸测试结果的系统答案与真实答案的比值可以得到人脸识别准确率。

        这个数据集是人脸评估一定会用到的一个数据集,基本都是正脸。这个数据集也是最简单的,基本主流算法都能跑到99%以上,貌似有6对label错了,所以最高正确率应该是99.9%左右。这个都跑不到99%的话别的数据集表现效果会更差。一般来说这个数据集是用来做人脸识别验证的。

        下载链接:http://vis-www.cs.umass.edu/lfw/

2.3 MegaFace

        MegaFace 是由华盛顿大学(University of Washington)计算机科学与工程实验室于2015年针对名为 ”MegaFace Challenge” 的挑战而发布并维护的公开人脸数据集,是目前最为权威热门的评价人脸识别性能的指标之一。数据集中的人脸图像均采集自Flickr creative commons dataset,共包含690,572个身份共1,027,060张图像。这是第一个在百万规模级别的人脸识别算法测试标准。

        同LFW数据集,MegaFace 数据集中的图像也产生于自然场景,具备光照、表情、姿势和遮挡等干扰因素。但与LFW不同的是,MegaFace数据集中的人物身份均为普通人而非公众人物,并在收集过程中选取了图像的分辨率,并且保证了在图片来源在世界范围内的均匀分布。另外,在评测方法上,MegaFace 着眼于在百万级别的数据库中的1:N搜索性能。因此,相比于LFW数据集,MegaFace更贴近实际应用。

        MegaFace挑战将从Flickr Dataset中挑选的百万张人脸图像作为测试时的干扰项(distractors),而使用的搜索测试集(probes)来自于FaceScrub 数据集,共包含530个名人的10万张人脸图像,且性别比例大致相同(男性265人共55,472张,女性265人共52,076张),同一身份间人脸图像的差异也较大。为了保证同LFW的可比性,发布方随机选择了其中80个超过50张图像的身份,共4000张图片,作为最终的搜索测试集。

        与LFW相同,MegaFace评测也允许使用数据集以外的图片对模型进行训练。但由于MegaFace的百万人脸数据库均来自于普通人,在训练过程中作弊的难度很大,因此评测结果更加可信。

        下载地址:https://megaface.cs.washington.edu/dataset/download.html

2.4 Glint360K

        Glint360K是格灵深瞳开源,通过清理,合并和发布的面部识别数据集,包含 36 万类别的 1800 万张图像。

        下载地址:https://github.com/deepinsight/insightface/tree/master/recognition/partial_fc#glint360k

2.5 WebFace260M

        WebFace260M由芯翌科技与清华大学自动化系智能视觉实验室合作推出,完全基于全球互联网公开人脸数据。它的问世,一举打破了此前人脸数据集的规模:不仅规模最大,也是首次在人脸ID数目和图片数,分别达到了400万和2.6亿的规模。

        在对WebFace260M进行清洗操作后,便得到了WebFace42M。据介绍,它是目前全球规模最大、可直接用于训练的干净人脸数据集:包含200万ID、4200万图片。

        该数据集及其子集只能用于学术研究。目前,它仅对学校和研究所等非营利机构开放,对公司和企业不开放。如果要下载WebFace260M,请发送电子邮件至 info@face-benchmark.org

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/5146.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无人机反制:雷达探测+信号干扰器技术详解

固定翼无人机、旋翼无人机等,可折叠式无机、DIY无人机等。黑飞,监管困难给航空业带来了诸多隐患;给恐怖袭击及间谍侦察带来新的方式、引发了各国地区政府的忧虑,在中国存在的问题更加严峻。 反无人飞行器防御系统(AUDS)&#xff0…

【C++】手撕list(list的模拟实现)

目录 01.节点 02.迭代器 迭代器运算符重载 03.list类 (1)构造与析构 (2)迭代器相关 (3)容量相关 (4)访问操作 (5)插入删除 我们在学习数据结构的时候…

使用 GitHub Actions 实现项目的持续集成(CI)

目录 什么是 GitHub Actions 基础概念 Workflow 文件 Workflow 语法 实例:编译 OpenWrt 什么是 GitHub Actions GitHub Actions 是 GitHub 推出的持续集成(Continuous Integration,简称 CI)服务它允许你创建自定义工作流&am…

黑马面试篇1(续)

黑马面试篇1-CSDN博客(续集) 六、消息中间件篇 6.1 RabbitMQ 1)使用场景: 异步发送(验证码、短信、邮件…)MYSQL和Redis , ES之间的数据同步分布式事务削峰填谷… 2)RabbitMQ消息的重复消费问…

分享三款可以给pdf做批注的软件

PDF文件不像Word一样可以直接编辑更改,想要在PDF文件上进行编辑批注需要用到一些专业的软件,我自己常用的有三款,全都是官方专业正版的软件,功能丰富强大,使用起来非常方便! 1.edge浏览器 这个浏览器不仅可…

【Spring】Spring中AOP的简介和基本使用,SpringBoot使用AOP

📝个人主页:哈__ 期待您的关注 一、AOP简介 AOP的全称是Aspect-Oriented Programming,即面向切面编程(也称面向方面编程)。它是面向对象编程(OOP)的一种补充,目前已成为一种比较成…

ton-http-api安装部署

1、拉取github代码 mkdir /data git clone https://github.com/toncenter/ton-http-api.git cd ton-http-api2、创建环境变量 ./configure.py cat .env TON_API_CACHE_ENABLED0 TON_API_CACHE_REDIS_ENDPOINTcache_redis TON_API_CACHE_REDIS_PORT6379 TON_API_CACHE_REDIS_T…

Facebook’s Tectonic Filesystem: Efficiency from Exascale——论文阅读

FAST 2021 Paper 分布式元数据论文阅读笔记整理 背景 Blob storage 用来存放大量的文本、图片、视频等非结构化数据 包含 EB 级别的数据 存储内容大小不一,大小几KB到几MB不等 要求低时延 使用 Haystack 和 F4 Data warehouse 存放用于数据分析和机器学习的…

Leetcode—1232. 缀点成线【简单】

2024每日刷题&#xff08;122&#xff09; Leetcode—1232. 缀点成线 算法思想 实现代码 class Solution { public:bool checkStraightLine(vector<vector<int>>& coordinates) {int x0 coordinates[0][0];int y0 coordinates[0][1];int x1 coordinates[1…

Excel 中用于在一个范围中查找特定的值,并返回同一行中指定列的值 顺序不一样 可以处理吗

一、需求 Excel 中&#xff0c;在一列&#xff08;某范围内&#xff09;查找另一列特定的值&#xff0c;并返回同一行中另一指定列的值&#xff0c; 查找列和返回列的顺序不一样 二、 实现 1、下面是一个使用 INDEX 和 MATCH 函数的例子&#xff1a; 假设你有以下数据&…

python数据可视化:雷达图

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 python数据可视化&#xff1a; 雷达图 选择题 关于以下代码输出的雷达图中&#xff0c;以下说法正确的是&#xff1f; import numpy as np import matplotlib.pyplot as plt from pylab impor…

看懂原理图

EL3H7光耦 作用&#xff1a; 光耦还可以隔离驱动电机什么的、485隔离通讯啊、pwm信号传输&#xff0c;韦根&#xff0c;强电压。 参考&#xff1a;光耦应用及参数设计_el3h7光耦中文资料-CSDN博客

C# winform 漂亮的日期时间控件

源代码下载&#xff1a; https://download.csdn.net/download/gaoxiang19820514/89242240 效果图 在 HZH-Controls控件 基础上修改的日期控件 因为HZH_Controls控件 中的日期控件太大了&#xff0c; 我的程序中需要多个日期时间的控件放不下&#xff0c;主题是绿色的&#…

【介绍下Selenium】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

SpringWebFlux RequestBody多出双引号问题——ProxyPin抓包揪出真凶

缘起 公司有个服务做埋点收集的&#xff0c;可以参考我之前的文章埋点日志最终解决方案&#xff0c;今天突然发现有些数据日志可以输出&#xff0c;但是没法入库。 多出的双引号 查看Flink日志发现了JSON解析失败&#xff0c;Flink是从Kafka拿数据&#xff0c;Kafka本身不处…

C++信息学奥赛 数据结构认识

数据结构 1.1数据结构分类 1.2基本数据类型 1.3数字编码 1.4字符编码 1.1数据结构分类 数据结构如同一副稳固而多样的框架。为数据的有序组织提供了蓝图&#xff0c;算法得以在此基础上生动起来。 常用的数据结构包括哪些 &#xff0c; &#xff0c; &…

摩根大通推出创新工具 FlowMind,引领金融自动化新变革

近日&#xff0c;摩根大通人工智能研究部推出了一款极具创新性的工具——FlowMind&#xff0c;为金融行业带来了全新的工作模式和效率提升。 FlowMind 能够自动化金融工作流程&#xff0c;在信贷审批、风险评估、合规监测等重要任务中发挥着关键作用。它利用 GPT 自动生成工作…

蓝网科技临床浏览系统 deleteStudy SQL注入漏洞复现(CVE-2024-4257)

0x01 产品简介 蓝网科技临床浏览系统是一个专门用于医疗行业的软件系统,主要用于医生、护士和其他医疗专业人员在临床工作中进行信息浏览、查询和管理。 0x02 漏洞概述 蓝网科技临床浏览系统 deleteStudy接口处SQL注入漏洞,未经身份验证的恶意攻击者利用 SQL 注入漏洞获取…

Zynq 7000 系列之启动模式—NOR启动

NOR Boot是一种启动模式&#xff0c;它指的是当芯片上电时&#xff0c;芯片从NOR Flash的起始位置开始取代码执行。在NOR Flash的开头处&#xff0c;通常存储着8个向量表&#xff0c;其中包含了用于引导系统的指令。这些指令中的b reset是一个相对跳转指令&#xff0c;意味着不…

windows11家庭版开启Hyper-v

前提&#xff1a;如果在控制面板中-->程序和功能-->启用和关闭windows功能-->没有Hyper-v 1.什么是Hyper-v&#xff1f; Hyper-v分为两个部分&#xff1a;底层的虚拟机平台、上层的虚拟机管理软件 2.Hyper-v安装 2.1新建hyper.cmd文件&#xff0c;写入下面的内容&…