{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/ganimation-anatomically-aware-facial","title":"GANimation: Anatomically-aware Facial Animation from a Single Image","arxiv_id":"1807.09251","date":"2018-07-24","proceeding":"ECCV 2018 9","authors":["Albert Pumarola","Antonio Agudo","Aleix M. Martinez","Alberto Sanfeliu","Francesc Moreno-Noguer"],"abstract":"Recent advances in Generative Adversarial Networks (GANs) have shown\nimpressive results for task of facial expression synthesis. The most successful\narchitecture is StarGAN, that conditions GANs generation process with images of\na specific domain, namely a set of images of persons sharing the same\nexpression. While effective, this approach can only generate a discrete number\nof expressions, determined by the content of the dataset. To address this\nlimitation, in this paper, we introduce a novel GAN conditioning scheme based\non Action Units (AU) annotations, which describes in a continuous manifold the\nanatomical facial movements defining a human expression. Our approach allows\ncontrolling the magnitude of activation of each AU and combine several of them.\nAdditionally, we propose a fully unsupervised strategy to train the model, that\nonly requires images annotated with their activated AUs, and exploit attention\nmechanisms that make our network robust to changing backgrounds and lighting\nconditions. Extensive evaluation show that our approach goes beyond competing\nconditional generators both in the capability to synthesize a much wider range\nof expressions ruled by anatomically feasible muscle movements, as in the\ncapacity of dealing with images in the wild.","url_abs":"http://arxiv.org/abs/1807.09251v2","url_pdf":"http://arxiv.org/pdf/1807.09251v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/albertpumarola/GANimation","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/donydchen/ganimation_replicate","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/hao-qiang/GANimation-tf","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/shuliyao/GANimation_TL","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/tgeorgy/mgan","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/vipermu/ganimation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/vpsg-research/waveguard","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/MindSpore-scientific-2/code-10/tree/main/mgan-mindspore","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null},{"paper_slug":"ganimation-anatomically-aware-facial","repo_url":"https://github.com/MindSpore-scientific-2/code-4/tree/main/mgan-mindspore","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null}],"tasks":[{"task_slug":"conditional-image-generation","task_name":"Conditional Image Generation"},{"task_slug":"face-generation","task_name":"Face Generation"},{"task_slug":"image-to-image-translation","task_name":"Image-to-Image Translation"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1807.09251","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1807.09251"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MindSpore-scientific-2/code-4/tree/main/mgan-mindspore","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/albertpumarola/GANimation","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hao-qiang/GANimation-tf","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/shuliyao/GANimation_TL","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vipermu/ganimation","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MindSpore-scientific-2/code-10/tree/main/mgan-mindspore","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tgeorgy/mgan","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/donydchen/ganimation_replicate","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vpsg-research/waveguard","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":1,"unverified":2},"by_repo_kind":{"listed":{"samples":3,"ran":1,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"10fdae626d954364","entry":"init_net","repo":"donydchen/ganimation_replicate","repo_kind":"listed","path":"model/model_utils.py","file_url":"https://github.com/donydchen/ganimation_replicate/blob/HEAD/model/model_utils.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"10fdae626d954364"}},{"code_sha256_prefix":"b97e9bcc9c7ca168","entry":"get_norm_layer","repo":"donydchen/ganimation_replicate","repo_kind":"listed","path":"model/model_utils.py","file_url":"https://github.com/donydchen/ganimation_replicate/blob/HEAD/model/model_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b97e9bcc9c7ca168"}},{"code_sha256_prefix":"f4ecb472fd266452","entry":"get_scheduler","repo":"donydchen/ganimation_replicate","repo_kind":"listed","path":"model/model_utils.py","file_url":"https://github.com/donydchen/ganimation_replicate/blob/HEAD/model/model_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f4ecb472fd266452"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}