人脸识别

黑人人脸检测

对着背影说爱祢 提交于 2019-12-24 18:01:26
黑人人脸检测 由于黑人肤色偏深,往往无法直接被检测到人脸,我将处理黑人人脸的问题转化为不均匀光照下人脸检测的问题,通过边缘增强和明暗均衡的两个滤波器实现黑人人脸检测 import cv2 import dlib import numpy as np from PIL import Image , ImageFilter path = "C:/Users/gufei/Desktop/black/black1.jpg" path = "black.png" img = Image . open ( path ) org = cv2 . imread ( path ) def face_enhance ( img ) : enhance = img . filter ( ImageFilter . EDGE_ENHANCE_MORE ) #大阈值边缘增强 result = cv2 . cvtColor ( np . asarray ( enhance ) , cv2 . COLOR_RGB2BGR ) gamma = 0.2 scale = float ( np . iinfo ( result . dtype ) . max - np . iinfo ( result . dtype ) . min ) result = ( ( result . astype ( np .

人脸识别常用数据集大全(12/20更新)

早过忘川 提交于 2019-12-24 01:06:02
人脸识别常用数据集大全(12/20更新) 原文首发地址: 人脸识别常用数据集大全(12/20更新) - 极市博客 1.PubFig: Public Figures Face Database(哥伦比亚大学公众人物脸部数据库) The PubFig database is a large, real-world face dataset consisting of 58,797 images of 200 people collected from the internet. Unlike most other existing face datasets, these images are taken in completely uncontrolled situations with non-cooperative subjects. 这是哥伦比亚大学的公众人物脸部数据集,包含有200个人的58k+人脸图像,主要用于非限制场景下的人脸识别。 2.Large-scale CelebFaces Attributes (CelebA) Dataset CelebFaces Attributes Dataset (CelebA) is a large-scale face attributes dataset with more than 200K celebrity images,

人脸框抠图如何实现

帅比萌擦擦* 提交于 2019-12-23 11:44:25
最近在尝试做一个人脸识别项目,在对比几款主流人脸识别SDK后,采用了虹软的Arcface SDK,因为它提供了免费版本,并且可以离线使用,接入难度也比较低。项目中有一个需求就是显示检测到的人脸,但是如何从一张图片中抠取合适大小的人脸呢?本文将从以下步骤来介绍如何实现: 1. 如何获得人脸框 2. 如何根据人脸框裁剪 3. 如何进行结果图旋转 4. 应用场景举例 1. 如何获得人脸框 首先我们来看一下虹软Android ArcFace SDK用于人脸检测的detectFaces函数以及人脸数据类FaceInfo: detectFaces函数: 参数 类型 说明 data byte[] 图像数据的内存 width int 图像的宽 height int 图像的高 format int 图像的格式 faceInfoList List<FaceInfo> 人脸检测结果列表 FaceInfo定义: 参数 类型 说明 rect Rect 人脸在图像中的坐标 orient int 人脸的朝向 faceId int 人脸id,用于标识人脸 人脸检测函数介绍的文章有很多,这里就不多做介绍了。FaceInfo中的rect就是我们用来抠取人脸的重要参数,下图就是根据它画出的人脸框。 2. 如何根据人脸框裁剪 以Android平台为例,Bitmap类提供了函数 createBitmap (Bitmap

指纹识别人脸识别 iOS

依然范特西╮ 提交于 2019-12-23 03:20:11
/*--> */ /*--> */ //1.判断iOS8及以后的版本 if ([UIDevice currentDevice ].systemVersion .doubleValue >= 8.0 ){ //从iPhone5S开始,出现指纹识别技术,所以说在此处可以进一步判断是否是5S以后机型 //2.创建本地验证上下文对象-->这里导入框架LocalAuthentication LAContext *context = [ LAContext new]; // 3.判断能否使用指纹识别 //Evaluate: 评估 //Policy: 策略 //LAPolicyDeviceOwnerAuthenticationWithBiometrics: 设备拥有者授权 用 生物识别技术 if ([context canEvaluatePolicy :LAPolicyDeviceOwnerAuthenticationWithBiometrics error : nil ]){ //4.在可以使用的前提下就会调用 //localizedReason本地原因alert显示 NSString *localizedReason = @"指纹登录"; if ( @available(iOS 11.0, *)) { if (context. biometryType ==

python3 人脸识别

会有一股神秘感。 提交于 2019-12-22 04:16:05
需要一张名为2.png的图片 1.在cmd中下载baidu-aip 2.在cmd中运行 生成一个txt文件,点开就是数据 代码: import base64 from aip import AipFace from collections import OrderedDict # 导入OrderedDict类 import json APP_ID = '16374788' API_KEY = 'KZvxjNG1BI1eP4uubRADf9DT' SECRET_KEY = 'q1gIx1x0DU9shcBMrby0XDpvLG4yXhGL' client = AipFace ( APP_ID , API_KEY , SECRET_KEY ) def face_check ( img_data ) : """ 人脸识别demo :param img_data: 二进制的图片数据 :return: """ data = base64 . b64encode ( img_data ) image = data . decode ( ) imageType = "BASE64" """ 调用人脸检测 """ client . detect ( image , imageType ) """ 如果有可选参数 """ options = { } options [ "face_field" ]

虹软最新版 python 接口 完整版

廉价感情. 提交于 2019-12-19 11:51:18
虹软最新版 python 接口 完整版 当前开源的人脸检测模型,识别很多,很多小伙伴也踩过不少坑。相信不少使用过dlib和facenet人脸识别的小伙伴都有这样的疑惑,为什么论文里高达99.8以上的准确率,自己实际使用下来的准确率却并不好,甚至用来落实到百人以内的人脸识别,都经常出现误识别现象,造成这样的现象最主要的原因来自于训练人脸识别模型的样本和国内人脸有差距。因此,这些看似准确率很高的模型,直接拿来做项目使用是不行的,测试两种模型在使用几百人的考勤图片上的表现,准确率上dlib和facenet 都很不理想。 综合比较,发现使用虹软的人脸识别接口是目前开源,在国内人脸识别准确度上最好的选择。 遗憾的是当前虹软暂时没有提供python 接口代码,目前网上也有部分使用python调用虹软接口的案例,但是类似文章千篇一律,基本都是同一个代码,反复转载,也并没有能一个完整调用虹软全部功能的python接口,函数名称也随意定义并不好记,使用pycharm 开发也没有类函数成员代码编写提示,代码部分不合理的地方也重复出现… 实在是不能忍受当前已发布 的python api 接口参差不齐的现象,为此,特意用了几天时间将虹软当前版本的全部功能写出一个完整好用的python api接口。 出发点 本质上python接口是使用 ctypes 调用 虹软的动态链接库,需要去虹软官网 去选择 C/C+

paper 50 :人脸识别简史与近期进展

萝らか妹 提交于 2019-12-18 02:02:11
自动人脸识别的经典流程分为三个步骤:人脸检测、面部特征点定位(又称Face Alignment人脸对齐)、特征提取与分类器设计。一般而言,狭义的人脸识别指的是"特征提取+分类器"两部分的算法研究。 在深度学习出现以前,人脸识别方法一般分为高维人工特征提取(例如:LBP, Gabor等)和降维两个步骤,代表性的降维方法有PCA, LDA等子空间学习方法和LPP等流行学习方法。在深度学习方法流行之后,代表性方法为从原始的图像空间直接学习判别性的人脸表示。 一般而言,人脸识别的研究历史可以分为三个阶段。在第一阶段(1950s-1980s),人脸识别被当作一个一般性的模式识别问题,主流技术基于人脸的几何结构特征。在第二阶段(1990s)人脸识别迅速发展,出现了很多经典的方法,例如Eigen Face, Fisher Face和弹性图匹配,此时主流的技术路线为人脸表观建模。在第三阶段(1990s末期到现在),人脸识别的研究不断深入,研究者开始关注面向真实条件的人脸识别问题,主要包括以下四个方面的研究:1)提出不同的人脸空间模型,包括以线性判别分析为代表的线性建模方法,以Kernel方法为代表的非线性建模方法和基于3D信息的3D人脸识别方法。2)深入分析和研究影响人脸识别的因素,包括光照不变人脸识别、姿态不变人脸识别和表情不变人脸识别等。3)利用新的特征表示,包括局部描述子(Gabor

python同时识别多张人脸(运用face_recognition)

泄露秘密 提交于 2019-12-14 12:03:56
之前发的博客和网上流传的代码严格来说都只算得上是人脸检测,不能区别人脸,今天来说说真的人脸 识别 篇幅所限,就举两张人脸的例子了,本程序需要安装face_recognition 下面是全部源代码: import face_recognition from PIL import Image , ImageDraw # This is an example of running face recognition on a single image # and drawing a box around each person that was identified. # Load a sample picture and learn how to recognize it. obama_image = face_recognition . load_image_file ( "C:/Users/CJK/Desktop/1.jpg" ) obama_face_encoding = face_recognition . face_encodings ( obama_image ) [ 0 ] # Load a second sample picture and learn how to recognize it. biden_image = face_recognition . load

15行python代码实现人脸识别(face_recognition)

Deadly 提交于 2019-12-14 06:02:49
import cv2 import face_recognition img_path = "C:/Users/CJK/Desktop/1.jpg" #图片目录 im_fr = face_recognition . load_image_file ( img_path ) face_ = face_recognition . face_locations ( im_fr , number_of_times_to_upsample = 1 , model = "cnn" ) print ( face_ ) im = cv2 . imread ( img_path ) print ( "img size " , im . shape ) cv2 . namedWindow ( "result" , cv2 . WINDOW_NORMAL ) for _ in face_ : top , right , bottom , left = _ cv2 . rectangle ( im , ( left , top ) , ( right , bottom ) , ( 0 , 200 , 0 ) , 2 ) cv2 . imshow ( "result" , im ) cv2 . imwrite ( "C:/Users/CJK/Desktop/1_cnn.jpg" , im ) #图片目录加上

虹软人脸识别3.0 - 图像数据结构介绍(C++)

时光怂恿深爱的人放手 提交于 2019-12-13 09:01:54
从虹软开放了2.0版本SDK以来,由于具有免费、离线使用的特点,我们公司在人脸识别门禁应用中使用了虹软SDK,识别效果还不错,因此比较关注虹软SDK的官方动态。近期上线了ArcFace 3.0 SDK版本,确实做了比较大的更新。上一篇主要介绍了关于Android平台算法的改进,本篇将介绍一下关于Windows平台算法的更新。 特征比对支持比对模型选择,有 生活照比对模型 和 人证比对模型 识别率、防***效果显著提升 特征值更新,升级后人脸库需重新注册 人脸检测同时支持全角度及单一角度 新增了一种图像数据传入方式 在V3.0版本接入过程中,发现使用新的图像数据结构还是具有一定难度的,本文将从以下几点对该图像数据结构及使用方式进行介绍 SDK接口变动 图像数据结构 步长的作用 OpenCV图像数据结构转换为虹软图像数据结构 一、SDK 接口变动 在接入ArcFace 3.0 SDK时,发现新增了ASFDetectFacesEx、ASFFaceFeatureExtractEx、ASFProcessEx、ASFProcessEx_IR一组接口,该组接口使用 LPASF_ImageData 结构体指针的方式传入图像数据,以人脸检测接口为例,具体接口比对如下: 原始接口: MRESULT ASFDetectFaces( MHandle hEngine, // [in] 引擎handle