# Conditional Generative Adversarial Networks for Domain Transfer: A Survey
## 2 The Development Methods of CGAN
### The Improvement of CGAN
#### 2.2.2 Cycle Consistency
In short, in order to realize the mutual transformation of multi-domain images, the generative network must receive two kinds of information, the input images and the target domain to be transformed. To this end, the target domain information is equivalent to the conditional constraint of the generated network. Cycle consistency is used to avoid a situation where the generated images and the input images have nothing to do with each other. Figure 2: The framework of CycleGAN. It consists of two generative networks and two discriminative networks. \(G\) is a converter from domain \(X\) to \(Y\), and \(F\) is the reverse. The cycle-consistency loss monitors whether the data are distorted in the transformation of \(X\)-\(Y\)-\(X\) and \(Y\)-\(X\)-\(Y\). DTN  
The cycle transformation in CycleGAN and StarGAN is relatively simple; in order to make this process dig out more information, DTN [46] introduces perceptual loss and strives to produce images that are consistent with the target on high-level semantics. This strategy allows DTN to achieve linear regression of significantly different images. The DTN framework is shown in Figure 4.  
Normally, DTN consists of a generative network and a discriminative network. Among them, the generative network is composed of feature extractor \(f\) and image generator \(g\). \(f\) is used to extract the image features of the input image, which is actually the semantic style of the image, and then \(g\) is used to generate the images. Two types of images will be taken as the input data: the source domain images (e.g., real face) and the target domain images (e.g., cartoon face). Firstly, the network will generate target domain images with similar semantic feature information. In order to ensure the generated images have a semantic similarity with source domain images, DTN will send the generated images to feature extractor \(f\) again to render it for extraction of the feature, and then compare this feature with that of the source domain images. The difference between them will be set as the loss function, i.e., \(L_{\text{CONST}}\), which will be minimized to guarantee the feature matching. Secondly, in order to facilitate the generative network capturing the characteristics of target domain images, the target domain images will be  
Figure 4: The framework of DTN. The generative network \(G\) is composed of feature extractor \(f\) and image generative network \(g\), where \(f\) will extract the image features of the input image, and \(g\) is used to generate the image. As to loss function, \(L_{\text{CONST}}\) supervises the difference of features between two domains, \(L_{\text{TID}}\) supervises the difference between output and input, and \(L_{\text{GAND}}/L_{\text{GANG}}\) distinguishes the authenticity of the images. Figure 3: The framework of StarGAN. (**a**) \(D\) is composed of two modules and receives the real images and fake images. One is to distinguish real images from fake ones, and the other is to classify them into different domains. (**b**) \(G\) receives the target domain and input data and generates fake images. (**c**) \(G\) reconstructs the raw images using the fake image and original domain information. (**d**) \(D\) distinguishes the source of the image and its domain. A well-trained \(G\) can make \(D\) fail to complete this task. transferred to themselves by the generative network, minimizing the difference between them, i.e., \(L_{\text{TID}}\). For the discriminative network, it takes in three different types of images: real source domain images, target domain images generated from the target domain and target domain images generated from the source domain. The discriminant network will judge whether the input image is realistic, which is rated as a high score or a low score and vice versa.