{%hackmd SybccZ6XD %} Goal > image generation How > GAN learns to generate image background and foregrounds separately and recursively. ## example generated background images > ![](https://hackmd.io/_uploads/HkiT53yKh.png) foreground images > ![](https://hackmd.io/_uploads/SJO1jhJt3.png) foreground masks ![](https://hackmd.io/_uploads/B1sxshkKh.png) carved foreground images > ![](https://hackmd.io/_uploads/H1wzj2JFh.png) carved and transformed foreground images > ![](https://hackmd.io/_uploads/rk3ZhhyYn.png) final composite images > ![](https://hackmd.io/_uploads/SkPmnn1Yn.png) Layered structure of image > $x = f\odot m + b\odot (1-m)$ > $f\odot m$: foreground > $b\odot (1-m)$: background LAYERED RECURSIVE GAN (LR-GAN) > $x_t = ST(m_t,a_t)\odot ST(f_t,a_t) + (1 -ST(m_t,a_t))\odot x_{t-1}$ > $ST(m_t,a_t)$: affine transformed mask > $ST(f_t,a_t)$: affine transformed appearance > $(1 -ST(m_t,a_t))\odot x_{t-1}$: pasting on image composed so far architecture > ![](https://hackmd.io/_uploads/BJltbigbth.png)