Cross-Domain Image Manipulation by Demonstration

01/28/2019 ∙ by Ben Usman, et al. ∙ Google Boston University 0

In this work we propose a model that can manipulate individual visual attributes of objects in a real scene using examples of how respective attribute manipulations affect the output of a simulation. As an example, we train our model to manipulate the expression of a human face using nonphotorealistic 3D renders of a face with varied expression. Our model manages to preserve all other visual attributes of a real face, such as head orientation, even though this and other attributes are not labeled in either real or synthetic domain. Since our model learns to manipulate a specific property in isolation using only "synthetic demonstrations" of such manipulations without explicitly provided labels, it can be applied to shape, texture, lighting, and other properties that are difficult to measure or represent as real-valued vectors. We measure the degree to which our model preserves other attributes of a real image when a single specific attribute is manipulated. We use digit datasets to analyze how discrepancy in attribute distributions affects the performance of our model, and demonstrate results in a far more difficult setting: learning to manipulate real human faces using nonphotorealistic 3D renders.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Figure 1: Problem statement: we want to manipulate real images using demonstrations of respective manipulations performed in a simulation, to change mouth expression in real images using demonstrations of mouth expression manipulation in nonphotorealistic face 3D renders, or to relight real faces from examples of relighted synthetic faces, or to rotate hand-written digits using rotated typewritten digits. The proposed PuppetGAN model correctly manipulates real images and uses only unlabeled real images and synthetic demonstrations during training. Video: http://bit.ly/arxiv_puppet.
Figure 2: PuppetGAN overview: we train a domain-agnostic encoder (), a decoder for the real domain () and a decoder for the synthetic domain () to disentangle the the attribute we would like to control in real images (the “attribute of interest” - AoI - mouth expression in this example), and all other attributes (head orientation, gaze direction, microphone position in this example) that are not labeled or even not present (microphone) in the synthetic domain. Our model is trained on demonstrations of how the AoI is manipulated in synthetic images and individual examples of real images. At test time, a real image can be manipulated with a synthetic reference input by applying a real decoder to the attribute embedding of the reference image ( green capsule) combined with the remaining embedding part (purple capsule) of the real input.
Figure 3: More examples with other identities are provided in the supplementary. (a) When trained on face crops from a single 300-VW [23] video, PuppetGAN learns to manipulate mouth expression while preserving head orientation, gaze orientation, expression, etc. so well that directly “pasting” the manipulated image crop back into the frame without any stitching yields realistically manipulated images without noticeable head orientation or lighting artifacts (chin stitching artifacts area are unavoidable unless an external stitching algorithm is used); the video demonstration is available in the supplementary and at http://bit.ly/arxiv_puppet. (b) When trained on face crops of all subjects from YaleB [5] combined into a single domain, PuppetGAN learns to properly apply lighting (AoI) from a synthetic reference image and correctly preserves subjects’ identities without any identity labels; lighting of the original real image has little to no effect on the output.
Figure 2: PuppetGAN overview: we train a domain-agnostic encoder (), a decoder for the real domain () and a decoder for the synthetic domain () to disentangle the the attribute we would like to control in real images (the “attribute of interest” - AoI - mouth expression in this example), and all other attributes (head orientation, gaze direction, microphone position in this example) that are not labeled or even not present (microphone) in the synthetic domain. Our model is trained on demonstrations of how the AoI is manipulated in synthetic images and individual examples of real images. At test time, a real image can be manipulated with a synthetic reference input by applying a real decoder to the attribute embedding of the reference image ( green capsule) combined with the remaining embedding part (purple capsule) of the real input.

Recent unsupervised image-to-image translation models

[15, 22, 27] demonstrated an outstanding ability to learn semantic correspondences between images from visually distinct domains. Using these models is especially fruitful for domains that lack large labeled datasets since converting an output of an existing simulation to an image that closely resembles the real domain gives rise to a virtually infinite source of labeled training data. Unfortunately, since these models receive no supervision relating semantic structure of two domains, latent encodings of visual attributes are strongly entangled and can not be manipulated independently. For example, CycleGAN [27] can not be easily used to extract mouth expression from a synthetically rendered face image and “apply” it to an image of a real person since all attributes (face orientation, expression, lighting) are entangled. The lack of such control limits usage of image-to-image translation methods in many areas where manipulation of individual attributes is required, but vast labeled dataset can not be collected for each possible input domain, including augmented reality, virtual avatars, or semantic video post-processing.

Several methods have been proposed to enable users to exert attribute-level control over the generated data, but these methods either require a precise model (i.e. precise simulations) of the target domain [26]

or detailed attribute labels and suitable means of training a label estimator for both domains

[1, 16]. Building such estimators is not an easy task when the desired attribute(s) are difficult to measure or even represent numerically as inputs to a neural model, such as: global illumination, texture, or shape. Unsupervised cross-domain disentanglement methods [9, 13] on the other hand, do not provide means for specifying which of the shared “content” attributes should be altered.

To overcome these limitations, we propose “PuppetGAN,” a deep model for targeted and controlled modification of natural images that requires neither explicit attribute labels nor a precise simulation of the real domain. To enable control over a specific attribute in real images PuppetGAN only requires examples (“synthetic demonstrations”) of how the desired attribute manipulation affects the output of a crude simulation. It uses these synthetic demonstrations to supervise attribute disentanglement in the synthetic domain, and extends this disentanglement to the real domain by specifying which attributes are supposed to be preserved by multiple consecutive attribute manipulations. We quantitatively evaluate how well our model can preserve other attributes of the input when a single attribute is manipulated. In this work we:

  1. Introduce a new challenging “cross-domain image manipulation by demonstration” task: manipulate a specific attribute of a real image via a synthetic reference image using only examples of real images and demonstrations of the desired attribute manipulation in a synthetic domain at train time in the presence of a significant domain shift both in the domain appearance and attribute distributions.

  2. Propose a model that enables controlled manipulation of a specific attribute and correctly preserves other attributes of the real input. We are first to propose a model that enables this level of control under such data constraints at train time.

  3. Propose both proof-of-concept (digits) and realistic (faces and face renders) dataset pairs [to be published online] and a set of metrics for this task. We are first to quantitatively evaluate effects of cross-domain disentanglement on values of other (non-manipulated) attributes of images.

2 Related work

Model-based Approaches. Thanks to recent advances in differentiable graphics pipelines [18], generative neural models [6], and high-quality morphable models [21]

, great strides have been made in controlled neural image manipulation. For example, the work of Thies

et al. [26]

proposed a way to perform photo-realistic face expression manipulation and reenactment that cannot be reliably detected even by trained individuals. Unfortunately, methods like these rely on precise parametric models of the target domain and accurate fitting of these parametric models to input data: in order to manipulate a single property of an input, all other properties (such as head pose, lighting and face expression in case of face manipulation) have to be estimated from an image and passed to a generative model together with a modified attribute to essentially “rerender” a new image from scratch. This approach enables visually superb image manipulation, but requires a detailed domain model capable of precisely modeling all aspects of the domain and re-rendering any input image from a vector of its attributes - it is a challenging task, and its solution often does not generalize to other domains. Our model merely requires a crude domain model, does not require any parameter estimation from an input image, and therefore can be applied in many more contexts, achieving a good trade-off between image fidelity and costs associated with building a highly specialized domain model.

attribute labels for single-domain cross-domain
single domain Mathieu et al[20], Cycle-VAE [7], Szabó et al[25] E-CDRD [16], DiDA [1], PuppetGAN
both domains UFDN [14]
unsupervised InfoGAN [3], -VAE [8], -TCVAE [2] DRIT [13], MUNIT [9]
Table 1: Some of existing disentanglement methods that enable controlled manipulation of real images.

Single-Domain Disentanglement. One alternative to full domain simulation is learning a representation of the domain in which the property of interest and other properties could be manipulated independently - a so called “disentangled representation”. We summarized several kinds of disentanglement methods that enable such control over real images using simulated examples in Table 1. Supervised single-domain disentanglement methods require either explicit or weak (pairwise similarity) labels [7, 20, 25] for real images - a much stronger data requirement then the one we consider. As discussed in the seminal work of Mathieu et al[20] on disentangling representations using adversarial learning and partial attribute labels and later explored in more details by Szabó et al[25] and Harsh Jha et al[7], there are always degenerate solutions that satisfy proposed constraints, but cheat by ignoring one component of the embedding and hiding information in the other, we discuss steps we undertook to combat these solutions in the model and experiment sections.

Unsupervised single-domain methods [2, 3, 8] enable visually impressive manipulation of image properties without any attribute labels, but do not provide the means to select a specific property that we want to control a priori - the end user is left to the mercy of the model that might not necessarily disentangle the specific property he or she is interested in.

Unsupervised Cross-Domain Disentanglement. Recently proposed unsupervised cross-domain disentanglement methods [9, 13] focus on disentangling domain specific properties (often corresponding to the “style” of the domain) from those shared by both domains (“content”), therefore providing tools for manipulating appearance of a particular image while preserving the underlying structure in a completely unsupervised fashion. Our approach, however, can disentangle and independently manipulate a single specific “content” attribute (face expression) even if other “content” attributes (head orientation, lighting) significantly vary in both real and synthetic domains, therefore enabling much finer control over the resulting image.

Supervised Cross-Domain Disentanglement. In the presence of the second domain, one intuitive way of addressing the visual discrepancy between the two is to treat the domain label as just another attribute [14]

and perform disentanglement on the resulting single large partially labeled domain. This approach enables interpolation between domains, and training conditional generative models using labels from a single domain, but does not provide means for manipulation of existing images across domains, unless explicit labels in both domains are provided. Recent papers

[1, 16]

suggested using explicit categorical labels to train an explicit attribute classifiers on synthetic domain and adapt it to the real domain; the resulting classifier is used to (either jointly or in stages) disentangle embeddings of real images. These works showed promising results in manipulating categorical attributes of images to augment existing dataset (like face attributes in CelebA

[17] or class label in MNIST), but neither of these methods was specifically designed for or tested for their ability to preserve other attributes of an image: if we disentangle the size of a digit from its class for the purpose of, effectively, generating more target training samples for classification, we do not care whether the size is preserved when we manipulate the digit class, since that would still yield a correctly “pseudo-labeled” sample from the real domain. Therefore, high classification accuracies of adapted attribute classifiers (reported in these papers) do not guarantee the quality of disentanglement and the ability of these models to preserve unlabeled attributes of the input. Moreover, these method requires explicit labels making them not applicable to wide range of attributes that are hard to express as categorical labels (shape, texture, lighting). In this work, we specifically focus on manipulating individual attributes of images using demonstrations from another domain, in the presence of a significant domain shift (both visual and in terms of distributions of attribute values) and explicitly quantitatively evaluate the ability of our model to preserve all attributes other the the one we manipulated.

3 Method

[width=]imgs/figs/Fig4_v2.pdf

Figure 4: (Best viewed in color, a color blind friendly version is available in the supplementary). Supervised losses jointly optimized during training of the PuppetGAN. When combined, these losses ensure that the “attribute embedding” ( green capsule) affects only the attribute of interest (AoI) in generated images, and that the “rest embedding” (purple capsule) does not affect the AoI in generated images. When trained, manipulation of AoI in real images can be performed by replacing their attribute embedding components. Unsupervised (GAN) losses are not shown in this picture. An example at the top right corner illustrates sample images fed into the network to disentangle mouth expression (AoI) from other face attributes in real faces. Section 3 provides more details on the intuition behind of these losses.

In this section we formally introduce our data constraints, define a disentangled encoder and domain decoders used in the loss, and describe a set of constraints that ensure proper disentanglement of synthetic images and extension of this disentanglement to a real domain. We find “must be equal” notation more concise for our purposes, i.e. in constraint definitions below corresponds to the penalty in the loss.

Setup. Consider having access to individual real images , and triplets of synthetic images such that share the attribute of interest (AoI - the attribute that we want to control in real images), whereas the pair shares all other attributes present in the synthetic domain. See top right corner of Figure 4 for an example of inputs fed into the network to learn to control mouth expression (AoI) in real faces using crude face renders.

Model. The learned image representation consists of two real-valued vectors and denoted as green and purple capsules in Figures 3 and 4. We introduce domain-agnostic encoders for the attribute of interest and all other attributes , and two domain-specific decoders for the real and synthetic domains respectively:

To simplify the loss definitions below, we introduce the domain-specific “attribute combination operator” that takes a pair of images , each from either of two domains, combines embeddings of these images, and decodes them as an image in the specified domain :

Losses. We would like to have the AoI of and all other attributes of , but we can not enforce this directly as we did not introduce any explicit labels. Instead we jointly minimize the weighted sum of -penalties for violating the following constraints illustrated in Figure 4 with respect to all parameters of both encoders and decoders:

  1. [label=(),itemsep=-0.5ex]

  2. the reconstruction constraint ensures that encoder-decoder pairs actually learn representations of respective domains

  3. the disentanglement constraint ensures correct disentanglement of synthetic images by the shared encoder and the decoder for the synthetic domain

  4. the cycle constraint was shown [27] to improve semantic consistency in visual correspondences learned by unsupervised image-to-image translation models

  5. the pair of attribute cycle constraints prevents shared encoders and the real decoder from converging to a degenerate solution - decoding the entire real image from a single embedding and completely ignoring the other part. The first “attribute cycle constraint” (the left column in Figure 4d) ensures that the first argument of is not discarded:

    The only thing that is important about as the first argument of is its attribute value, so must not discard the attribute value of its first argument , since otherwise reconstruction of would become impossible. The “rest” component of should not influence the estimate of since it only affects the “rest” component of that is discarded by later application of . To ensure that the second “rest embedding” argument of is not always discarded, the second attribute cycle constraint (the right column in Figure 4d)

    penalizes if it ignores its second argument since the “rest” of is not recorded in and therefore can be obtained by only from its second argument.

The proposed method can be easily extended to disentangle multiple attributes at once using separate encoders and example triplets for each attribute. For example, to disentangle two attributes and using encoders and synthetic triplets where share all other attributes except (including ), and vice versa, the disentanglement constraint should look like:

In addition to supervised losses described above we apply unsupervised adversarial LS-GAN [19] losses to all generated images. Discriminators and attribute combination operators are trained in an adversarial fashion so that any combination of embeddings extracted from images from either of two domains and decoded via either real or synthetic decoder looks like a reasonable sample from the respective domain. Other technical implementation details are provided in the supplementary.

Figure 5: (a-d) The PuppetGAN model correctly manipulates a single specified attribute the real input and preserves other attributes of that input without any attribute labels at train time. (ii) Moreover, other attributes of the “synthetic reference input” have no effect on the output. (iii) The proposed model “saturates” when the AoI in the synthetic input is beyond limits observed during training. (e) The distribution of attributes is monotonically remapped to match the real domain.
Figure 6: Related methods (only DiDA is directly comparable) (a) MUNIT disentangled mouth expression from head orientation, but style spaces of two domains are not aligned, so controlled mouth manipulation is not possible; (b) Cycle-Consistent VAE is not suited for large domains shift; (c) DiDA converged to degenerate solutions that used only one input; (d) MUNIT disentangled stroke from other attributes (did not isolate rotation or size from the class label); (e) Cycle-Consistent VAE was able to extract information only from real inputs that looked “synthetic enougth”.
Figure 5: (a-d) The PuppetGAN model correctly manipulates a single specified attribute the real input and preserves other attributes of that input without any attribute labels at train time. (ii) Moreover, other attributes of the “synthetic reference input” have no effect on the output. (iii) The proposed model “saturates” when the AoI in the synthetic input is beyond limits observed during training. (e) The distribution of attributes is monotonically remapped to match the real domain.

4 Experiments and Results

Setup. We evaluated the ability of our model to disentangle and manipulate individual attributes of real images using synthetic demonstrations in multiple different settings illustrated in Figures 3 and 6.

Training Conditions Results
Model Modified Data Attribute Acc
PuppetGAN Rot 0.05 2.2 0.03 0.32 0.97 0.40 0.11 0.01
CycleGAN 0.05 0.28 0.11 0.54 0.37 0.33
PuppetGAN Size 0.27 0.78 0.24 0.04 0.73 0.85 0.02 0.02
CycleGAN 0.20 0.07 0.10 0.28 0.06 0.28
PuppetGAN smaller synth Rot 0.06 108 0.10 0.06 0.04 0.01
PuppetGAN unscaled real Size 0.90 0.92 0.27 0.05 0.64 0.28 0.07 0.01
Table 2: The quality of attribute manipulation and isolation for rotation and scaling of MNIST digits (Figure 6ab). The PuppetGAN performs significantly better then an analogous non-disentangled baseline (CycleGAN). We measure how well models preserve the class labels of real inputs (Acc), AoI of synthetic inputs , and ignore non-AoI of synthetic inputs . We investigate how larger discrepancy between synthetic and real attribute distributions affects the performance. Arrows indicate if higher or lower values are better.
  1. [wide, labelwidth=!, labelindent=0pt,itemsep=-0.5ex,topsep=0pt]

  2. Size and rotation of real digits from MNIST and USPS were manipulated using a synthetic dataset of typewritten digits rendered using a sans-serif Roboto font.

  3. Mouth expression in human face crops from the VW-300 [23] dataset was manipulated using synthetic face renders with varying face orientation and expression, but same identity and lighting, obtained using Basel parametric face model [11, 10] with the global illumination prior [4].

  4. Global illumination (spherical harmonics) in female synthetic face renders was manipulated using male renders with different head orientation and expression.

  5. Direction and power of the light source in real faces from the YaleB [5] dataset were manipulated using synthetic 3D face renders with varying lighting and identities (but constant expression and head orientation).

We used visually similar digit dataset pairs to investigate how discrepancy in attribute distributions affects the performance of the model, how it would perform if synthetic digits looked similar to real digits, but were much smaller then real ones or rotated differently. In face manipulation experiments we used a much more visually distinct synthetic domain. In VW-300 experiments we treated each identity as a separate domain, so the model had to learn to preserve head orientation and expression of the real input; we used the same set of 3D face renders across all real identities. In the experiment on reapplying environmental lighting to synthetic faces, expression and head orientation of the input had to be preserved. In the lighting manipulation experiment on the YaleB dataset we used a single large real domain with face crops of many individuals with different lighting setups each having the same face orientation across the dataset, so the model had to learn to disentangle and preserve the identity of the real input.

Metrics. In order to quantitatively evaluate the performance of our model on digits we evaluated Pearson correlation (

) between measured attribute values in inputs and generated images. We measured rotation and size of both input and generated digit images using image moments, and trained a LeNet

[12] to predict digit class attribute. Below we define metrics reported in the Table 2. The AoI measurements in images generated by an “ideal” model should strongly correlate with the AoI measurements in respective synthetic inputs ( - the arrow direction indicates if larger or smaller values of this metric is “better”), and the measurement of other attributes should strongly correlate with those in real inputs (Acc - accuracy of preserving the digit class label - higher is better), and no other correlations should be present (

lower is better). For example, in digit rotation experiments we would like the rotation of the generated digit to be strongly correlated with the rotation of the synthetic input and uncorrelated with other attributes of the synthetic input (size, class label, etc.); we want the opposite for real inputs. Also, if we use a different synthetic input with the same AoI value (and random non-AoI values) there should be no change in pixel intensities in the generated output (small variance

). Optimal values of these metrics are often unachievable in practise since attributes of real images are not independent, inclination of real digits is naturally coupled with their class label (sevens are more inclined then twos), so preserving the class label of the real input inevitably leads to non-zero correlation between rotation measurements in real and generated images. We also estimated discrepancy in attribute distributions by computing Jensen-Shannon divergence between optimal [24]kernel density estimators of respective attribute measurements between real and synthetic images () as well as real and generated images (. In order to quantitatively evaluate to what extent proposed disentanglement losses improve the quality of attribute manipulation, we report same metrics for an analogous model without disentanglement losses that translates all attributes of the synthetic input to the real domain (CycleGAN).

Hyperparameters.

We did not change any hyperparameters across tasks, the model performed well with the initial “reasonable” choice of parameters listed in the supplementary. As all adversarial methods, our model is sensitive to the choice of generator and discriminator learning rates.

Results. The proposed model successfully learned to disentangle the attribute of interest (AoI) and enabled isolated manipulation of this attribute using embeddings of synthetic images in all considered experiment settings:

  1. [wide, labelwidth=!, labelindent=0pt,itemsep=-0.5ex,topsep=0pt]

  2. In the digit rotation experiment (Figure 6a), generated images had the class label, size and style of the respective real input and rotation of the respective synthetic input, and did not change if either class or size of the synthetic (Figure 6(ii)), or rotation of the real input changed. Quantitative results in Table 2 indicate that proposed losses greatly improve the quality of isolated attribute manipulation over a non-disentangled baseline. Attributes were properly disentangled in all face manipulation experiments (Figure 3ab, 6cd), in the YaleB experiment “original” lighting of real faces and identities of synthetic faces did not effect the output, whereas identities of real faces and lighting of synthetic faces were properly preserved and combined. For the VW-300 domain that contained face crops partially occluded by a microphone, the proposed model preserved size and position of the microphone, and properly manipulated images with partially occluded mouth, even though this attribute was not modeled by the simulation.

  3. Larger discrepancy between attribute distributions in two domains (last two rows in Table 2) leads to poorer attribute disentanglement, if synthetic digits are much smaller than real (fifth row in Table 2), or much less size variation is present in the real MNIST (sixth row), or much less rotation in USPS (Figure 8). For moderate discrepancies in attribute distributions, AoI (rotation) in generated images followed the distribution of AoI in the real domain (Figure 6e). If during evaluation the property of interest in a synthetic input was beyond values observed during training, model’s outputs “saturated” (Figure 6(iii)).

  4. Ablation study results (Table 3) and the visual inspection of generated images suggest that domain-agnostic encoders help to semantically align embeddings of attributes across domains. Image level GAN losses improve “interchangeability” of embedding components from different domains. Learned representations are highly excessive, so even basic properties such as “digit rotation” required double digit embedding sizes. Attribute cycle losses together with pixel-level instance noise in attribute and disentanglement losses improved convergence speed, stability, and the resilience of the model to degenerate solutions.

Comparison to Related Methods. To our knowledge, only E-CDRD [16] and DiDA [1] considered similar input constraints at train time (both use explicit labels). We could not obtain any implementation of E-CDRD, and since authors focused on different applications (domain adaptation for digit classification, manipulation of photos using sketches), their reported results are not comparable with ours. Solutions found by DiDA were degenerate (used only one input) for both rotation and size manipulation of digits (Figure 6c), DiDA converged to plain domain translation; the available implementation of DiDA made it very difficult to apply it to faces. While MUNIT [9] (unsupervised cross-domain) and Cycle-Consistent VAE [7] (single-domain) methods have input constraints incompatible with ours, we investigated how they preforms, respectively, without attribute supervision and in the presence of the domain shift. The Figure 6a shows that MUNIT disentangled face orientation as “content” and mouth expression as “style”, as random style vectors appear to mostly influence the mouth. Unfortunately, style embedding spaces of two domains are not semantically aligned, so controlled manipulation of specific attributes (e.g. mouth) across domains is not possible. On digits MUNIT disentangled digit stroke as style and everything else as content (Figure 6d), so rotation and size could not be manipulated while preserving the class label. Cycle-Consistent VAE learned great disentangled representations and enabled controlled manipulation of synthetic images, but, when applied to images from the real domain, could only encode attributes of real images that resembled synthetic ones (Figure 6e), and could not generate plausible real faces because domains looked too different (Figure 6b).

5 Conclusion

In this paper we present a novel task of “cross-domain image manipulation by demonstration” and a model that excels in this task on a variety of realistic and proof-of-concept datasets. Our approach enables controlled manipulation of real images using crude simulations, and therefore can immediately benefit practitioners that already have imprecise models of their problem domains by enabling controlled manipulation of real data using existing imprecise models.

References

  • [1] J. Cao, O. Katzir, P. Jiang, D. Lischinski, D. Cohen-Or, C. Tu, and Y. Li. DiDA: Disentangled synthesis for domain adaptation. arXiv preprint arXiv:1805.08019, 2018.
  • [2] R. T. Q. Chen, X. Li, R. Grosse, and D. Duvenaud.

    Isolating sources of disentanglement in variational autoencoders.

    In Advances in Neural Information Processing Systems (NeurIPS), 2018.
  • [3] X. Chen, Y. Duan, R. Houthooft, J. Schulman, I. Sutskever, and P. Abbeel. InfoGAN: Interpretable representation learning by information maximizing generative adversarial nets. In Advances in Neural Information Processing Systems (NeurIPS), pages 2172–2180, 2016.
  • [4] B. Egger, S. Schönborn, A. Schneider, A. Kortylewski, A. Morel-Forster, C. Blumer, and T. Vetter. Occlusion-aware 3D morphable models and an illumination prior for face image analysis.

    International Journal of Computer Vision

    , pages 1–19, 2018.
  • [5] A. S. Georghiades, P. N. Belhumeur, and D. J. Kriegman.

    From few to many: Illumination cone models for face recognition under variable lighting and pose.

    Pattern Analysis & Machine Intelligence (PAMI), (6):643–660, 2001.
  • [6] I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, and Y. Bengio. Generative adversarial nets. In Advances in Neural Information Processing Systems (NeurIPS), pages 2672–2680, 2014.
  • [7] A. Harsh Jha, S. Anand, M. Singh, and V. Veeravasarapu. Disentangling factors of variation with cycle-consistent variational auto-encoders. In European Conference on Computer Vision (ECCV), pages 805–820, 2018.
  • [8] I. Higgins, L. Matthey, A. Pal, C. Burgess, X. Glorot, M. Botvinick, S. Mohamed, and A. Lerchner. Beta-VAE: Learning basic visual concepts with a constrained variational framework. International Conference on Learning Representations (ICLR), 2017.
  • [9] X. Huang, M.-Y. Liu, S. Belongie, and J. Kautz. Multimodal unsupervised image-to-image translation. In European Conference on Computer Vision (ECCV), 2018.
  • [10] A. Kortylewski, B. Egger, A. Schneider, T. Gerig, A. Morel-Forster, and T. Vetter. Empirically analyzing the effect of dataset biases on deep face recognition systems. In

    Computer Vision and Pattern Recognition (CVPR) Workshops

    , pages 2093–2102, 2018.
  • [11] A. Kortylewski, A. Schneider, T. Gerig, B. Egger, A. Morel-Forster, and T. Vetter. Training deep face recognition systems with synthetic data. arXiv preprint arXiv:1802.05891, 2018.
  • [12] Y. LeCun, L. Bottou, Y. Bengio, P. Haffner, et al. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 86(11):2278–2324, 1998.
  • [13] H.-Y. Lee, H.-Y. Tseng, J.-B. Huang, M. K. Singh, and M.-H. Yang. Diverse image-to-image translation via disentangled representations. In European Conference on Computer Vision (ECCV), 2018.
  • [14] A. H. Liu, Y.-C. Liu, Y.-Y. Yeh, and Y.-C. F. Wang. A unified feature disentangler for multi-domain image translation and manipulation. In Advances in Neural Information Processing Systems (NeurIPS), pages 2595–2604, 2018.
  • [15] M.-Y. Liu, T. Breuel, and J. Kautz. Unsupervised image-to-image translation networks. In Advances in Neural Information Processing Systems (NeurIPS), pages 700–708, 2017.
  • [16] Y.-C. Liu, Y.-Y. Yeh, T.-C. Fu, S.-D. Wang, W.-C. Chiu, and Y.-C. Frank Wang. Detach and adapt: Learning cross-domain disentangled deep representation. In Computer Vision and Pattern Recognition (CVPR), pages 8867–8876, 2018.
  • [17] Z. Liu, P. Luo, X. Wang, and X. Tang. Deep learning face attributes in the wild. In International Conference on Computer Vision (ICCV), pages 3730–3738, 2015.
  • [18] M. M. Loper and M. J. Black. OpenDR: An approximate differentiable renderer. In D. Fleet, T. Pajdla, B. Schiele, and T. Tuytelaars, editors, European Conference on Computer Vision (ECCV), pages 154–169, Cham, 2014. Springer International Publishing.
  • [19] X. Mao, Q. Li, H. Xie, R. Y. Lau, Z. Wang, and S. Paul Smolley. Least squares generative adversarial networks. In International Conference on Computer Vision (ICCV), pages 2794–2802, 2017.
  • [20] M. F. Mathieu, J. J. Zhao, J. Zhao, A. Ramesh, P. Sprechmann, and Y. LeCun. Disentangling factors of variation in deep representation using adversarial training. In Advances in Neural Information Processing Systems (NeurIPS), pages 5040–5048, 2016.
  • [21] P. Paysan, R. Knothe, B. Amberg, S. Romdhani, and T. Vetter. A 3D face model for pose and illumination invariant face recognition. In IEEE International Conference on Advanced Video and Signal Based Surveillance, pages 296–301. Ieee, 2009.
  • [22] A. Royer, K. Bousmalis, S. Gouws, F. Bertsch, I. Moressi, F. Cole, and K. Murphy. XGAN: Unsupervised image-to-image translation for many-to-many mappings. arXiv preprint arXiv:1711.05139, 2017.
  • [23] C. Sagonas, E. Antonakos, G. Tzimiropoulos, S. Zafeiriou, and M. Pantic. 300 Faces in-the-wild challenge: database and results. Image and Vision Computing, 47:3–18, 2016.
  • [24] D. W. Scott. Multivariate density estimation and visualization. In Handbook of computational statistics, pages 549–569. Springer, 2012.
  • [25] A. Szabó, Q. Hu, T. Portenier, M. Zwicker, and P. Favaro. Challenges in disentangling independent factors of variation. International Conference on Learning Representations (ICLR) Workshop Track, 2017.
  • [26] J. Thies, M. Zollhofer, M. Stamminger, C. Theobalt, and M. NieBner. Face2Face: Real-time face capture and reenactment of RGB videos. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 2387–2395, 2016.
  • [27] J.-Y. Zhu, T. Park, P. Isola, and A. A. Efros. Unpaired image-to-image translation using cycle-consistent adversarial networks. In International Conference on Computer Vision (ICCV), 2017.

6 Supplementary

Mod Acc
original 0.94 0.4 0.11 0.01
two enc 0.15 0.32 0.24 0.07
one dec 0.49 0.71 0.04 0.02
k=16 0.14 0.8 0.5 0.25
d=64 0.75 0.61 0.42 0.01
Table 3: Ablation study for digit rotation: two encoders instead of single shared encoder, non-shared decoder, smaller rotation embedding (same overall embedding size) and two times reduced dimensionality of both embeddings.
Figure 7:

Rotation was not disentangled, probably due to the lack thereof in USPS naturally.

Figure 8: Size disentangled in USPS digit using synthetic renders.
Figure 7: Rotation was not disentangled, probably due to the lack thereof in USPS naturally.

Please take a look at our video demonstration available at http://bit.ly/arxiv_puppet and in the attached MP4 file (x264 codec). More images with more detailed experiments on all datasets are given below.

6.1 Implementation details.

Architecture

. We used the “CycleGAN resnet” encoder (padded 7x7 conv followed by two 3x3 conv with stride 2 all with relus), followed by six residual conv blocks (two 3x3 convs with relus) a fully-connected bottleneck of size 128 and a pix2pix decoder (two bi-linear up-sampling followed by a convolution). We used LS-GAN objective in all GAN losses. It generally follows the architecture of CycleGAN implementation provided in the tfgan package

111 https://www.tensorflow.org/api_docs/python/tf/contrib/gan/CycleGANModel.

Training. We optimized the entire loss jointly with respect to all encoder-decoder weights and then all discriminator losses in two consecutive iterations of the Adam optimizer with learning rates with polynomial decay and . A model trained by updating different losses wrt different weights independently in alternating fashion did not converge, so all generator and discriminator losses must be updated together in two large steps. We also added Gaussian instance noise to each image used in disentanglement and attribute cycle losses to improve stability during training. We added stop gradient op after the application of in the second attribute cycle loss and instance noise to all intermediate images to avoid the “embedding” behaviour.

We purposefully avoid constraining embeddings themselves, penalizing Euclidean distances between embedding components of images that are known to share a particular attribute, as such penalties often cause embedding magnitudes to vanishing.

Hyperparameters. The reasonable choice of loss weights we used is given below. We did not perform any large-scale hyperparameter optimization, just tried a couple of combinations, the weight required few (2-3) manual tuning attempts to balance , (tried 1 then 5 then 3).

Metrics. The quality of attribute isolation can also be evaluated by estimating mutual information between attribute values and parts of embeddings that should or should not encode it [7]; we do not explicitly penalize our model for embedding extra information as long as decoder learns to ignore it, so this metric was not useful in our case.

Related methods. In related experiments we used a modified DiDA implementation from https://github.com/yangyanli/DiDA/ in both last and best training modes, MUNIT from https://github.com/NVlabs/MUNIT and cycle-consistent VAE https://github.com/ananyahjha93/cycle-consistent-vae.

6.2 Extended Results

“Saturated” inputs. To clarify, by “model saturates” we mean that if we pass synthetic inputs with the AoI value beyond what we used during training, model outputs reasonable “highest” or “lowest” output for respective domains instead of breaking (it could, since inputs are not typical).

Digits. You can find results for USPS in Figures 8 and 8, model did not manage to disentangle rotation in USPS probably due to the lack of thereof.

300-VW. In addition to the attached video, static examples of manipulated faces can be found in Figures 9, 10, 11 and 12. As pointed in the main paper, model properly preserves orientation and expression of the real input, and mouth expression of the synthetic input, and completely discards everything else.

YaleB. One can find more examples in Figures 13, 14, 15 and 17. Identities of real inputs are preserved most of the time (as a reminder, all YaleB images were combined into a large single domain with no identity labels, so the model had to learn to disentangle and preserve identity). In cases when too little light is available in the real scene, the model “hallusinates” an “average” identity details. When model is asked to “imagine” lighting conditions that were not present in YaleB, but present in the synthetic dataset, some identity details are corrupted.

Synthetic faces. In Figure 18 we present more examples of outputs of a model trained to disentangle lighting across synthetic identities. “Dot artifacts” disappear if model is trained long enough.

Color blind and print friendly. An alternative version of Figure 4 is given in Figure 19.

Figure 9: More random examples for an identity from 300-VW dataset with mouth expression manipulated using our model. Two first and two last rows are “saturated” examples.
Figure 10: More random examples for an identity from the 300-VW dataset with mouth expression manipulated using our model. Two first and two last rows are “saturated” examples.
Figure 11: More random examples for an identity from the 300-VW dataset with mouth expression manipulated using our model. Two first and two last rows are “saturated” examples.
Figure 12: More random examples for an identity from the 300-VW dataset with mouth expression manipulated using our model. Two first and two last rows are “saturated” examples.
Figure 13: More random examples for a single identity from the YaleB dataset with lighting expression manipulated using our model.
Figure 14: More random examples for a single identity from the YaleB dataset with lighting expression manipulated using our model.
Figure 15: More random examples for a single identity from the YaleB dataset with lighting expression manipulated using our model.
Figure 16: More random examples for a single identity from the YaleB dataset with lighting expression manipulated using our model.
Figure 17: More random examples for a single identity from the YaleB dataset with lighting expression manipulated using our model.
Figure 18: More random examples for disentanglement of spherical harmonics across synthetic identities.
Figure 19: (A color blind and print friendly version). Supervised losses jointly optimized during training of the PuppetGAN. When combined, these losses ensure that the “attribute embedding” ( green capsule without a border) affects only the attribute of interest (AoI) in generated images, and that the “rest embedding” (purple capsule with a bold border) does not affect the AoI in generated images. When trained, manipulation of AoI in real images can be performed by replacing their attribute embedding components. Unsupervised (GAN) losses are not shown in this picture. An example at the top right corner illustrates sample images fed into the network to disentangle mouth expression (AoI) from other face attributes in real faces. Section 3 provides more details on the intuition behind of these losses.