图像识别

OCR识别技术推动AI发展

怎甘沉沦 提交于 2020-01-02 12:04:36
如今互联网技术的发展,无论是民生、交通、环保、旅游、机场,还是金融、银行等,都开始利用新兴技术实现跨界融合和价值体验。 电子护照读取识别设备,在读护照时,往往有机读码(MRZ):把可读的光学字符打印到证卡等载体上,识别时用专用的识别器判读。机读码已建立了国际ICAO标准,能快速准确地查验护照等证卡。国际上使用机读码的种类大致有3种,即多用于护照的2行44个字符类型,多用于签证的2行36个字符类型,多用于身份证卡3行30个字符类型。机读码包含持有证卡人的身份信息。 《人脸比对系统》采用最新人脸识别深度学习算法,将人脸识别多个核心算法的人脸定位、人脸特征建模、人脸识别比对等进行了专门优化,支持特征值,空间,三维(多姿)多种比对算法,具有获取方式直接隐蔽、人脸特征信息编码数据量小、识别速度快、识别准确率高、拒识率低、甄别简便、安全性高、使用简便等特点,是一款能适应各种复杂环境的人脸识别高技术产品。 人脸识别技术流程主要包括四个组成部分: 人脸图像采集及检测、人脸图像预处理、人脸图像特征提取以及与证件资料照片匹配与识别,实现了人证合 来源: CSDN 作者: 赵保良 链接: https://blog.csdn.net/weixin_45816494/article/details/103799966

Android 实现人脸识别教程[运用虹软人脸识别SDK]

让人想犯罪 __ 提交于 2019-12-29 03:43:03
基于虹软人脸识别引擎,在 Android 平台上实现人脸识别功能,即使在离线的情况下依旧运行,不被人采集个人照片的感觉,还是爽爽的。经过整个 测试 过来,虹软的人脸识别还是很强大的,人脸检测可以控制在20ms之内,人脸识别大概在200ms左右。今天就来分享一下开发经验 项目的目标 我们需要实现一个人脸识别功能。简单来说,就是机的后置摄像头,识别摄像头中实时拍到的人脸信息,如果人库注册过,则显示识别后的人脸信息,如登记的名字;如果不在,提示未注册。 这个功能具有多个应用场景,比如,火车站或者打卡和门禁系统中。 人脸识别的过程 人脸识别包括两个必备的过程,人脸注册和实时识别。 人脸注册是指把人脸的特征信息注册到人脸信息库中。人脸注册的来源可以有很多种,比如 国家身份证库 企业自建人脸识别库 互联网大 数据库 人脸特征提取是一个不可逆的过程,你无法从人脸特征信息还原一个人的脸部照片。 1 1 在线库在使用时,需要传递照片信息,或者提取图像特征值, 1 1 离线的SDK相对安全,但是,在线的SDK通常提供更多的接入和调用方式,这个要结合实际情况来选择。 1 1 人脸注册和识别的过程可以用下面的图来表示。 准备工作 在开发之前需要到虹软的官网 http://www.arcsoft.com.cn/ai/arcface.html 下载用到的 android 库,下载的压缩包中有3个压缩包,如下图

Python快速实现人脸识别

梦想与她 提交于 2019-12-27 02:19:36
一、前言 今天给大家带了的人脸识别非常简单,不需要大家了解TensorFlow,只需要对Python基本语法有一定了解。由于TensorFlow的火爆,把人脸识别再度推向我们的视线。像前段时间比较火的dee pfake,和人脸支付技术。虽然现阶段人脸识别仍有很大的争议性,但是它已经走进我们的视线当中了。很多小区在门禁系统中加入了人脸识别的功能,有些景区也添加了刷脸通道。但是对于技术的争议不是今天探讨的课题。下面开始我们的准备工作。 二、准备工作 今天是通过使用百度的SDK来实现的,首先我们要进入 AI开放平台 。 我们选择 开放能力->人脸与人体识别->人脸识别 ,进入后或出现下面page1的界面,点击 立即使用 。 点击后出现page2的界面。登录自己的账号就可以了。进去后我们会看到如下page3界面。如果没有应用就创建应用: 如果应用的话就管理应用。然后我们看到page4中几个重要的参数。分别是AppID、API Key、Secret Key。到这里我们的准备工作就完成了。初步准备工作完成了,我们还需要做一件事,就是下载人脸识别的SDK。我们可以点击page4中的服务端SDK下载Python对应的SDK,也可以使用pip下载: pip install baidu - aip 接下来我们就可以着手代码的编写了。 三、实现人脸识别 使用SDK实现人脸识别非常简单

Python如何实现人脸识别

删除回忆录丶 提交于 2019-12-26 14:53:57
Python如何实现人脸识别 1.python有个人脸识别库叫opencv 2.去百度查查如何安装这个库,会py的小伙伴们安装个库应该不是问题。 3.接下来就是直接上代码了 #!/usr/bin/python3 # -*- coding: utf-8 -*- import cv2 import sys class opencvs(): def main(self): int_ = 0 cap = cv2.VideoCapture(0) #告诉OpenCV使用人脸识别分类器 classfier = cv2.CascadeClassifier("haarcascade_frontalface_default.xml") while cap.isOpened(): #读取一帧数据 ok, frame = cap.read() #显示方向 frame = cv2.flip(frame,1) #将当前帧转换成灰度图像 grey = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) #人脸检测 faceRects = classfier.detectMultiScale(grey, scaleFactor = 1.8, minNeighbors = 4, minSize = (64, 64)) #第一个参数是灰度图像 #第三个参数是人脸检测次数,设置越高

SIFT/SURF、haar特征、广义hough变换的特性对比分析[z]

南笙酒味 提交于 2019-12-26 03:31:07
SIFT/SURF基于灰度图, 一、首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值,然后进行在极值点周围26个点进行NMS,从而得到粗略的特征点,再使用二次插值法得到精确特征点所在的层(尺度),即完成了尺度不变。 二、在特征点选取一个与尺度相应的邻域,求出主方向,其中SIFT采用在一个正方形邻域内统计所有点的梯度方向,找到占80%以上的方向作为主方向;而SURF则选择圆形邻域,并且使用活动扇形的方法求出特征点主方向,以主方向对齐即完成旋转不变。 三、以主方向为轴可以在每个特征点建立坐标,SIFT在特征点选择一块大小与尺度相应的方形区域,分成16块,统计每一块沿着八个方向占的比例,于是特征点形成了128维特征向量,对图像进行归一化则完成强度不变;而SURF分成64块,统计每一块的dx,dy,|dx|,|dy|的累积和,同样形成128维向量,再进行归一化则完成了对比度不变与强度不变。 haar特征也是基于灰度图, 首先通过大量的具有比较明显的haar特征(矩形)的物体图像用模式识别的方法训练出分类器,分类器是个级联的,每级都以大概相同的识别率保留进入下一级的具有物体特征的候选物体,而每一级的子分类器则由许多haar特征构成(由积分图像计算得到,并保存下位置),有水平的、竖直的、倾斜的,并且每个特征带一个阈值和两个分支值,每级子分类器带一个总的阈值

【图像识别】残差神经网络Resnet-tensorflow

这一生的挚爱 提交于 2019-12-24 10:59:58
残差神经网络ResNet-tensorflow 已经在我的Github账号更新~ 写的比较简单,传送门: https://github.com/Sharpiless/RESNET-tensorflow 论文传送门: https://arxiv.org/abs/1512.03385 我用的是ImageNet的一个小数据集(原来是1000分类,小数据集使用了8个分类),使用别的数据集时注意修改一下read_data.py。 来源: CSDN 作者: Memory逆光 链接: https://blog.csdn.net/weixin_44936889/article/details/103586141

人脸框抠图如何实现

帅比萌擦擦* 提交于 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

虹软最新版 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

深度学习项目——基于卷积神经网络(CNN)的人脸在线识别系统

谁都会走 提交于 2019-12-16 20:30:45
基于卷积神经网络(CNN)的人脸在线识别系统   本设计研究人脸识别技术,基于卷积神经网络构建了一套人脸在线检测识别系统,系统将由以下几个部分构成: 制作人脸数据集、 CNN 神经网络模型训练、 人脸检测、人脸识别 。经过实验,确定该系统可对本人的人脸进行快速并准确的检测与识别。 关键词 : 神经网络; 图像处理; 人脸检测;人脸识别; TensorFlow ;模型训练 一、设计目标 1.掌握人脸识别原理; 2.掌握卷积神经网络算法原理 3.掌握卷积神经网络模型训练过程; 4.掌握常用图像处理技术; 设计内容与要求 1.完成基于卷积神经网络的人脸在线识别系统算法设计; 2.完成基于卷积神经网络的人脸在线识别系统模型训练; 3.检测并且识别出人脸; 二、制作人脸数据集 2.1、制作我的人脸数据集   人脸检测出人脸位置,返回坐标、尺寸把脸用数组切片的方法截取下来,把截取的小图片保存下来作为数据集。 本系统获取本人的人脸数据集 10000 张,使用的是 dlib 来识别人脸,虽然速度比 OpenCV 识别慢,但是识别效果更好。 其中,人脸大小: 64*64 。 2.2、主要步骤 ( 1 ) 加载 dlib 机器学习的开源库 ( 2 ) 图像预处理 cvtColor (灰度化)。 ( 3 ) 使用 dlib 自带的 frontal_face_detector 进行特征提取 。 ( 4 )