一般分类人脸属性分析、人脸属性操作两步(FAE, FAM) FAE: 相当于分类检测,检测是否具有某种属性(如戴眼镜) FAM:添加或移除某种属性
FAE可分为两种方法:基于局部的、基于整体的
- 局部:先给人脸每个位置定位,然后提取局部特征用于识别。定位的过程又可以是独立的或端到端的。独立的方法包括很多现有的人脸关键点检测、人脸语义分割
- 全局:用一个统一的网络,能够学习各属性之间的关系(和end-to-end的part-based又什么区别)。不同的层学习不同的属性。但受限于先验(?怎么理解)
FAM主要基于生成模型。根据是否映入额外的条件信息,主要可分为model-based和extra condition-based方法:
- model-based: 一个模型训一种属性
- extra condition-based:用额外的输入(如latent vector或图像),不同的额外输入将产生不同的属性编辑结果。相当于image-to-image translation。辅助的输入也不需要和原来的人同identity
- 2014-CVPR: PANDA: Pose Aligned Networks for Deep Attribute Modeling[paper][CaffeCode]
bounding box->many poselets
,combine global&local
,SVM
- 2015-ICCV: Deep Learning Face Attributes in the Wild. [paper]
coarse-to-fine face localization
,feature extraction
,SVM
- 2017-CVPR: Improving facial attribute prediction using semantic segmentation[paper][pytorchCode-notOfficial]
region-based pooling
,Semantic Segmentation-based Gating
- 2018-Trans on Affective Computing: Segment-based methods for facial attribute detection from partial faces[paper]
- To deal with the cases with partial faces.
- 2016-ECCV: Moon: A mixed objective optimization network for the recognition of facial attributes[paper][mxnetCode]
- Motivation: Multi-task is beneficial. Multi-objective training is difficult to perform data balance.
- Contribution: domain-adapted multitask loss function.
- 2017-AAAI: Attributes for improved attributes: a multi-task network utilizing implicit and explicit relationships for facial attribute classification.[paper]
- attributes grouping manually
- 2018-CVPR: Partially shared multi-task convolutional neural network with local constraint for face attribute learning.[paper]
- identity information, multi-task, information flow between tasks
- 2018-IJCAI: Harnessing synthesized abstraction images to improve facial attribute recognition[paper][caffeCode]
-
2017-CVPR: Learning residual images for face attribute manipulation(ResGAN)[tfCode][paper]
- GAN, dual inverse manipulation, residual learning, focuses on the attribute-specific face area, metric
-
2017-CVPR: Age progression/regression by conditional adversarial autoencoder[tfCode][paper]
- GAN, conditional latent vector, impose prior distribution on latent vector, one-hot age label
-
2016-NIPSW: Invertible Conditional GANS(IcGANs)[torchCode ][paper]
- change multiple attributes
-
2016-ICML: Autoencoding beyond pixels using a learned similarity metric[torchCode ][paper]
-
2017-NIPS: Fader Networks: Manipulating Images by Sliding Attributes[PytorchCode][paper]
- alter attributes continuously, latent representation, disentangle
-
2017-BMVC: GeneGAN: Learning Object Transfiguration and Attribute Subspace from Unpaired Data[tfCode][paper]
- conditioned on reference examples, Object Transfiguration, exchange attributes, disentangle
-
2018-CVPR StarGAN: Unified generative adversarial networks for multi-domain image-to-image translation[PytorchCode][paper]
- multi-dataset multi-domain, domain vector, cycle consistent
-
2018-ECCV: SaGAN: Generative Adversarial Network with Spatial Attention for Face Attribute Editing[PytorchCode][paper]
- spatial attention
-
2018-ECCV: Elegant: Exchanging latent encodings with gan for transferring multiple face attributes.[PytorchCode][paper]
- transfer multiple attributes, divide latent codes into different parts(iterative training strategy), high quality, disentangle, multi-scale descriminator
-
2018-ECCV GANimation: Anatomically-aware Facial Animation from a Single Image[code ][paper]
-
2019-IJCV GANimation: One-shot Anatomically Consistent Facial Animation[code ][paper]
- 40 labeled attributes
- 2019-ICCV Deep Single-Image Portrait Relighting[pytorchCode ][paper&dataset]