## 2 Approach
### Wasserstein Loss  
In this study, we trained 2D and 3D cWGAN models with Wasserstein loss. Wasserstein loss, represented by W, calculates the Wasserstein distance, proposed by [PERSON] in 1970 [21] and is defined as  
\[\text{W}\big{(}P_{r},P_{g}\big{)}=inf_{\gamma\in\pi(P_{r},P_{g})}E_{(x,y)\sim \tau}[d(x(w),y(w))], \tag{1}\]  
where \(w\) represents a sample from population \(\Omega\) and \(\pi\big{(}P_{r},P_{g}\big{)}\) represents the set of all joint probability distributions \(\gamma(x,y)\), with \(P_{r}=\int\gamma(x,y)dy\) and \(P_{g}=\int\gamma(x,y)dx\). In other words, \(\text{W}\big{(}P_{r},P_{g}\big{)}\) is the estimated value that minimizes the expected value of \(d(x,y)\) among \(\pi\big{(}P_{r},P_{g}\big{)}\). As the sampling is repeated, \(\gamma(x,y)\) converges to the optimal connection, and the distribution of \(d(x,y)\) varies depending on the connection between \(x\) and \(y\). In this way, the Wasserstein distance has a probability distribution with the minimum expected value of \(d(x,y)\) among many \(\gamma(x,y)\)[21].  
\begin{table}
\begin{tabular}{c c} \hline \hline
**Layer (Type)** & **Output Size** \\ \hline input\_1 (Input layer) & (80, 80, 80, 2) \\ conv3d (Conv3D) & (80, 80, 80, 64) \\ conv3d\_1 (Conv3D) & (80, 80, 80, 64) \\ max\_pooling3d (MaxPooling3D) & (40, 40, 40, 64) \\ conv3d\_2 (Conv3D) & (40, 40, 40, 128) \\ conv3d\_3 (Conv3D) & (40, 40, 40, 128) \\ max\_pooling3d\_1 (MaxPooling3D) & (20, 20, 20, 128) \\ conv3d\_4 (Conv3D) & (20, 20, 20, 256) \\ conv3d\_5 (Conv3D) & (20, 20, 20, 256) \\ max\_pooling3d\_2 (MaxPooling3D) & (10, 10, 10, 256) \\ conv3d\_6 (Conv3D) & (10, 10, 10, 512) \\ conv3d\_7 (Conv3D) & (10, 10, 10, 512) \\ max\_pooling3d\_3 (MaxPooling3D) & (5, 5, 5, 512) \\ conv3d\_8 (Conv3D) & (5, 5, 5, 1024) \\ conv3d\_9 (Conv3D) & (5, 5, 5, 1024) \\ max\_pooling3d\_4 (MaxPooling3D) & (2, 2, 2, 1024) \\ flatten (Flatten) & (8192) \\ dense (Dense) & (1) \\ \hline \hline \end{tabular}
\end{table}
Table 4: Structure of 3D discriminator.  
\begin{table}
\begin{tabular}{c c} \hline \hline
**Layer (Type)** & **Output Size** \\ \hline input\_1 (Input layer) & (80, 80, 2) \\ conv2d (Conv2D) & (80, 80, 64) \\ conv2d\_1 (Conv2D) & (80, 80, 64) \\ max\_pooling2d (MaxPooling2D) & (80, 80, 64) \\ max\_pooling2d (MaxPooling2D) & (40, 40, 64) \\ conv2d\_2 (Conv2D) & (40, 40, 128) \\ conv2d\_3 (Conv2D) & (40, 40, 128) \\ max\_pooling2d\_1 (MaxPooling2D) & (20, 20, 128) \\ conv2d\_4 (Conv2D) & (20, 20, 256) \\ conv2d\_5 (Conv2D) & (20, 20, 256) \\ max\_pooling2d\_2 (MaxPooling2D) & (10, 10, 256) \\ conv2d\_6 (Conv2D) & (10, 10, 512) \\ conv2d\_7 (Conv2D) & (10, 10, 512) \\ max\_pooling2d\_3 (MaxPooling2D) & (5, 5, 512) \\ conv2d\_8 (Conv2D) & (5, 5, 1024) \\ conv2d\_9 (Conv2D) & (2, 2, 1024) \\ max\_pooling2d\_4 (MaxPooling2D) & (10, 10, 10, 256) \\ flatten (Flatten) & (10, 10, 10, 512) \\ dense (Dense) & (5, 5, 5, 512) \\ conv3d\_8 (Conv3D) & (5, 5, 5, 1024) \\ conv3d\_9 (Conv3D) & (5, 5, 5, 1024) \\ max\_pooling3d\_4 (MaxPooling3D) & (2, 2, 2, 1024) \\ flatten (Flatten) & (8192) \\ dense (Dense) & (1) \\ \hline \hline \end{tabular}
\end{table}
Table 3: Structure of 2D discriminator.  
The KL (Kullback-Leibler) divergence or JS (Jensen-Shannon) divergence is discontinuous when \(P_{r}\) and \(P_{g}\) do not overlap with each other, whereas the Wasserstein distance is continuous, which is an advantage in determining convergence because it is flexible. If \(d(x,y)\) is specified as the Euclidean distance \(\|x-y\|\), and the probability measures of \(P_{r}\) and \(P_{g}\) are defined as \(\mu\) and \(\
u\), respectively, it can be derived according to the Kantorovich-Rubinstein duality as  
\[\begin{split}\text{W}\big{(}P_{r},P_{g}\big{)}=_{\|f\|_{L}\leq 1} \big{\{}E_{y\sim\mu}[f(x)]-E_{x\sim\
u}[f(x)]\big{\}}.\end{split} \tag{2}\]  
\(\|f\|_{L}\leq 1\) means that the function \(f\) is 1-Lipschitz continuous, and a 1-Lipschitz continuous function is a function that satisfies the following equation for all \(x,y\) within its domain [22; 23].  
\[|f(y)-f(x)|\leq\|y-x\|. \tag{3}\]