hyb1234hi Goto Github PK
Type: User
Type: User
定位综述 目前用于人脸定位的有两种主流方法,一种是基于级联形状回归模型,另一种就是基于深度学习的方法。级联形状回归方法就是使用回归模型,直接学习从人脸表征到人脸形状的映射函数,进而建立从表观到形状的对应关系。这种方法的学习依赖于训练集的选取,如果训练集中包含了复杂的姿态变化,学习到的函数测试性能就会比较好。现有很多基于回归的方法,其中比较突出的有颜水成的DCR(Deep Cascaded Regression)、ESR(Explicitly Shape Regression)方法、LBF(Local Binary Features)方法以及SDM(Supervised Decent Method)方法。但是,上述方法也存在一定的问题,例如,基于提取到的局部图像特征来定位时很难找到具有全局信息的关键点。基于点分布模型的方法和基于形状回归的方法都很依赖于初始值,其中,初始值通常由训练集的平均形状来给定,如果初始值或者设定的平均形状远远偏离目标位置,很难收敛到正确位置。比如,训练集中大部分都是正脸,那么对于测试集中大偏转角度人脸图像的定位就比较困难。 于是引入深度学习来解决较大面部偏转姿态的回归问题,深度学习的最大的优点是有强大的表达能力,可以自学习图像的特征,不需要人为的寻找特征。目前用的基本网络有(1)级联方式:由粗到精一级一级的优化前一步得到的形状,比如香港中文大学汤晓鸥老师的研究团队采用深度卷积神经网络的3个级联结构,逐步细化特征点位置。(2)沙漏网络:密集堆叠连接的U-Nets来进行人脸关键点定位,如CU-Nets通过卷积-反卷积,下采样与上采样网络,跨越不同U-Nets进行全局梯度传播,融合多尺度特征,不断迭代优化关键点坐标。但是深度学习方法的缺点是模型过于复杂,参数非常多,耗时比较长。 深度学习的国内外方法优化:(1)最早的有将人脸进行五官分区域定位回归,但很容易使最终结果陷入局部最优值而不是全局最优。(2)heatmap热图的方法,对数据标签进行处理生成高斯热图,从而更好的回归关键点位置。(3)风格聚合方法,对数据集进行处理生成不同风格的图片,以应对复杂的真实环境如光照强弱。(4)基于边缘感知的人脸关键点检测算法,首先通过消息传递并结合对抗学习得到高精度的边缘线检测结果,再将边缘线信息融合到关键点检测中,来提升算法在大侧脸、夸张表情、遮挡、模糊等极端情况下的鲁棒性。(5)3D人脸模型方法,一种方式是结合3D人脸姿态估计与投影来确定特征点初始位置,然后使用经典的回归树集成ERT方法来更好的进行位置回归;另一种是直接从单幅人脸图像中同时回归出3D人脸结构和密集对齐点;该类方法通过回归位置图,来获得3D几何以及语义信息。(6)人脸特征点检测与形状拟合方法,基于“特征提取”+“回归坐标”的方法,把形状拟合的坐标回归问题,转化为坐标PCA压缩后系数与形状整体仿射变换系数的回归问题(相当于将传统的SDM算法用于深度学习算法当中)。 目前定位方法的改进是: 1.基于深度学习的方法:改进如下: (1)受人体关键点定位 难例挖掘方法的启发,在全局的globalnet之后继续对损失较大的点继续进行微调。 (2)并行集成的方式同时训练两个网络globalnet、refinenet,测试时,第一个网络输出的l2 loss 取top k loss作为refinenet的辅助损失继续微调回归关键点位置。(在300w 有缺失块的数据集上最终的测试结果,平均定位误差为5.9%) 300-W数据库: 68点定位库,包含4个数据集,比如AFW,LFPW,HELLE,还包含135张IBUG里面的图片,IBUG图片对于定位来说都是非常具有挑战性的,不管是旋转角度还是遮挡程度都是非常大的。我们用HELEN的2000张,LFPW的811张,AFW的337张,总共3148张图片作为训练集。用HELEN的554张,IBUG的135张图片,总共689张图片作为测试集。一般测试集分为3个标准:简单,有挑战,全集。简单的测试集就是前面554张图片,有挑战的就是后面那135张图片,全集即689张图片。对三个测试集分别测试,得出测试结果,并与其它方法进行比较。测试标准为定位的平均误差,是被双瞳孔距离归一化后的,平均误差越低代表这一算法越好。
停车场系统源码,停车场小程序,智能停车,Parking system,【功能介绍】:①兼容市面上主流的多家相机,理论上兼容所有硬件,可灵活扩展,②相机识别后数据自动上传到云端并记录,校验相机唯一id和硬件序列号,防止非法数据录入,③用户手机查询停车记录详情可自主缴费(支持微信,支付宝,银行接口支付,支持每个停车场指定不同的商户进行收款),支付后出场在免费时间内会自动抬杆。④支持app上查询附近停车场(导航,可用车位数,停车场费用,优惠券,评分,评论等),可预约车位。⑤断电断网支持岗亭人员使用app可接管硬件进行停车记录的录入。 【技术架构】:后端开发语言java,框架oauth2+springboot2+dubble,数据库mysql/mongodb/redis,即时通讯底层框架netty4,安卓和ios均为原生开发,后台管理模板vue专业定制
理论基础、实现过程、样本生成、采样、训练、测试使用等全部代码。
this is a demo project show how to use the VideoToolBox.framework to decode h.264 stream data
This repository implements a demo of the networks described in "How far are we from solving the 2D & 3D Face Alignment problem? (and a dataset of 230,000 3D facial landmarks)" paper.
Project a 3D mesh with texture onto a 2D surface
The code (pytorch for testing & matlab for 3D plot and evaluation) for our project: Joint 3D Face Reconstruction and Dense Face Alignment from A Single Image with 2D-Assisted Self-Supervised Learning (2DASL)
A project to synthesize a 3D texture from a 2D exemplar
3D Face Reconstruction Project in Java
My project that reconstructs a 3D face model from a single image. Used C++, Qt, OpenCV, OpenGL with the help of Surrey Face Model.
The PyTorch improved version of TPAMI 2017 paper: Face Alignment in Full Pose Range: A 3D Total Solution.
Fit 3DMM to front and side face images simultaneously.
An implementation of the classical 3DMM fitting algorithm
Real-time 3D face tracking and reconstruction from 2D video
Accept bitcoin payments using Node.js
actionhero.js is a multi-transport nodejs API Server with integrated cluster capabilities and delayed tasks
Router activities and methods with url for android
(Android advanced plan) 一系列Android进阶文章。持续更新中.....
Client-server library for using voice macros from Dragon NaturallySpeaking and Dragonfly on remote/non-windows hosts.
C++ AES compatible with AES/CBC/PKCS5Padding for Java and C# (AES 加密, 兼容 C# and JAVA)
C++ AES implementation
C++ implementation of a 128-bit AES encryption/decryption tool.
AgentWeb is a powerful library based on Android WebView.
An excellent Android OpenGL Framework
Dedicated Game Server Hosting and Scaling for Multiplayer Games on Kubernetes
Using artificial intelligence and genetic algorithms to automatically write programs. Tutorial: http://www.primaryobjects.com/cms/article149
🔥AidLearning build Linux running on the Android devices with GUI, Deep-Learning and Python Visual Programming support. One-click install🔥
AI make up based on face-detection
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.