神经网络和深度学习目前为处理图像识别的许多问题提供了最佳解决方案,而基于MTCNN(多任务级联卷积神经网络)的人脸检测算法也解决了传统算法对环境要求高、人脸要求高、检测耗时高的弊端。
基于MTCNN多任务级联卷积神经网络进行的人脸识别——
MTCNN主要包括三个部分,PNet,RNet,ONet
测试阶段大概过程
首先图像经过金字塔,生成多个尺度的图像,然后输入PNet。
PNet由于尺寸很小,所以可以很快的选出候选区域,但是准确率不高,然后采用NMS算法,合并候选框,然后根据候选框提取图像。
作为RNet的输入,RNet可以精确的选取边框,一般最后只剩几个边框,最后输入ONet。
ONet虽然速度较慢,但是由于经过前两个网络,已经得到了高概率的边框,所以输入ONet的图像较少,然后ONet输出精确的边框和关键点信息。
训练主要包括三个任务——
人脸分类任务:利用正样本和负样本进行训练
人脸边框回归任务:利用正样本和部分样本进行训练
关键点检测任务:利用关键点样本进行训练
实例——
了解了MTCNN多任务级联卷积神经网络,世纪晟科技主要利用MTCNN多任务级联卷积神经网络进行人脸识别任务,从世纪晟人脸识别技术可以直观的体验全连接神经网络的威力,而且可以看到其过程与结果的可视化。
世纪晟人脸识别技术使用的这种级联的结构进行人脸检测和特征点检测,速度快效果好,可以考虑在移动设备上使用。这种方法也是一种由粗到细的方法,和Viola-Jones的级联AdaBoost思路相似。
在深度学习的动态3D人脸识别技术中,世纪晟人脸检测在10亿人脸数据库中进行3D人脸特征比对,其中包含了边框标注数据及5个点以上的关键点信息。
总结——
本文参考世纪晟人脸识别技术使用的MTCNN级联结构进行人脸检测和特征点检测学习。
MTCNN多任务级联卷积神经网络使得人脸识别速度快效果好,在人脸检测和特征点定位的任务上,MTCNN具有实时处理的性能,利用了检测和对准之间固有的关系来增强他们的性能。特别在预测人脸及脸部标记点的时候,通过三阶的级联卷积神经网络对任务进行从粗到精的处理。世纪晟人脸识别检测就是这种由粗到细的方法,和Viola-Jones的级联AdaBoost思路相似。
简单而言,世纪晟人脸识别检测技术就是基于MTCNN多任务级联卷积神经网络,第一步让机器思考如何选择待检测区域:图像金字塔+P-Net;第二步思考如何提取目标特征:CNN;最后将在检测和特征提取的基础上判断是不是指定目标:级联判断。
---------------------
作者:Centrizen
来源:CSDN
原文:https://blog.csdn.net/Centrizen/article/details/82983197?utm_source=copy
版权声明:本文为博主原创文章,转载请附上博文链接!
基于MTCNN多任务级联卷积神经网络进行的人脸识别 世纪晟人脸检测的更多相关文章
-
基于MNIST数据的卷积神经网络CNN
基于tensorflow使用CNN识别MNIST 参数数量:第一个卷积层5x5x1x32=800个参数,第二个卷积层5x5x32x64=51200个参数,第三个全连接层7x7x64x1024=3211 ...
-
[DeeplearningAI笔记]卷积神经网络3.1-3.5目标定位/特征点检测/目标检测/滑动窗口的卷积神经网络实现/YOLO算法
4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1目标定位 对象定位localization和目标检测detection 判断图像中的对象是不是汽车--Image clas ...
-
字符型图片验证码,使用tensorflow实现卷积神经网络,进行验证码识别CNN
本项目使用卷积神经网络识别字符型图片验证码,其基于 TensorFlow 框架.它封装了非常通用的校验.训练.验证.识别和调用 API,极大地减低了识别字符型验证码花费的时间和精力. 项目地址: ht ...
-
deeplearning4j——卷积神经网络对验证码进行识别
一.前言 计算机视觉长久以来没有大的突破,卷积神经网络的出现,给这一领域带来了突破,本篇博客,将通过具体的实例来看看卷积神经网络在图像识别上的应用. 导读 1.问题描述 2.解决问题的思路 3.用DL ...
-
tensorflow卷积神经网络与手写字识别
1.知识点 """ 基础知识: 1.神经网络(neural networks)的基本组成包括输入层.隐藏层.输出层.而卷积神经网络的特点在于隐藏层分为卷积层和池化层(po ...
-
TensorFlow 卷积神经网络手写数字识别数据集介绍
欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 手写数字识别 接下来将会以 MNIST 数据集为例,使用卷积层和池 ...
-
优化基于FPGA的深度卷积神经网络的加速器设计
英文论文链接:http://cadlab.cs.ucla.edu/~cong/slides/fpga2015_chen.pdf 翻译:卜居 转载请注明出处:http://blog.csdn.net/k ...
-
深度学习(五)基于tensorflow实现简单卷积神经网络Lenet5
原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/8954892.html 参考博客:https://blog.csdn.net/u01287127 ...
-
基于theano的深度卷积神经网络
使用了两个卷积层.一个全连接层和一个softmax分类器. 在测试数据集上正确率可以达到99.22%. 代码参考了neural-networks-and-deep-learning #coding:u ...
随机推荐
-
重命名PDF打印文件名
Odoo系统默认打印出来的PDF文件都是以当前文档模型对象对应的模板文件名命名的,对用户来说,这样的命名很不友好. 我们希望能够将打印出来的文件名以单号命名,下面是实现这种目的的方法. 在report ...
-
MySQL中concat函数
MySQL中concat函数使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意:如果所有参数均为非二进制字符串 ...
-
WebService传递XML数据 C#DataSet操作XML 解析WebService返回的XML数据
Webservice传递的数据只能是序列化的数据,典型的就是xml数据. /// <summary> /// 通过用户名和密码 返回下行数据 /// & ...
-
SSL 通信原理及Tomcat SSL 双向配置
SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................. ...
-
DB2物化视图——MQT 物化查询表的正确使用(materialized query tables)
我们今天主要向大家讲述的是DB2物化视图——MQT 物化查询表使用,以下就是对DB2物化视图之MQT物化查询表的正确使用的主要内容的详细描述,望大家在浏览之后会对其有更深的了解. MQT 的定义基于查 ...
-
Heartbeat实现集群高可用热备
公司最近需要针对服务器实现热可用热备,这几天也一直在琢磨这个方面的东西,今天做了一些Heartbeat方面的工作,在此记录下来,给需要的人以参考. Heartbeat 项目是 Linux-HA 工程的 ...
-
python insert所用 插入到自定的位置
a = list(range(50)) b = list(range(50)) c = [] for x in a: c.insert(x, [a[x], b[x]]) print(c)
-
linux 下配置svn
1.以前配置好的,没做笔记,忘记了.现在重新回忆 查找svn目录:find / -name svn 找到/projects/svn cd /projects/svn 看里面的配置: 查看配置 [roo ...
-
未能加载文件或程序集“Oracle.DataAccess”或它的某一个 依赖项。如何解决?
之前项目做大数据批量添加使用了OracleBulkCopy,这个是引用Oracle.DataAccess.Client的命名空间,所以项目要引用一个Oracle.DataAccess.dll, 但是运 ...
-
idea过期激活
1.进到文件夹中:C:\Windows\System32\drivers\etc ,找到hosts文件,用记事本编辑 2.将“ 0.0.0.0 account.jetbrains.com ”添加到h ...