# GAN-Based Inversion of Crosshole GPR Data to Characterize Subsurface Structures
## 2 Methodology
### High-Resolution GAN
\begin{table}
\begin{tabular}{c c c c} \hline \hline \multicolumn{2}{c}{**Low-Resolution Generator**} & \multicolumn{2}{c}{**High-Resolution Generator**} \\ \hline \multirow{2}{*}{**Model Layer**} & **Output Shape** & \multirow{2}{*}{**Model Layer**} & **Output Shape** \\  & **(W, H, C)** & & **(W, H, C)** \\ \hline FC\_1 & (64, 64, 1024) & Deconv2d\_16 & (128, 128, 8) \\ ResNet 101 & (2, 2, 2048) & Deconv2d\_17 & (256, 256, 16) \\ Deconv2d\_1 & (4, 4, 256) & ResNet 50 & (8, 8, 2048) \\ BN\_1 and Dropout\_1 & (4, 4, 256) & Deconv2d\_18 & (8, 8, 256) \\ Deconv2d\_2 & (4, 4, 256) & BN\_14 and Dropout\_14 & (8, 8, 256) \\ BN\_2 and Dropout\_2 & (4, 4, 256) & Deconv2d\_19 & (16, 16, 128) \\ Deconv2d\_3 & (8, 8, 64) & BN\_15 and Dropout\_15 & (16, 16, 128) \\ BN\_3 and Dropout\_3 & (8, 8, 64) & Deconv2d\_20 & (16, 16, 128) \\ Deconv2d\_4 & (8, 8, 64) & BN\_16 and Dropout\_16 & (16, 16, 128) \\ BN\_4 and Dropout\_4 & (8, 8, 64) & Deconv2d\_21 & (32, 32, 64) \\ Deconv2d\_5 & (16, 16, 64) & BN\_17 and Dropout\_17 & (32, 32, 64) \\ BN\_5 and Dropout\_5 & (16, 16, 64) & Deconv2d\_22 & (32, 32, 64) \\ Deconv2d\_6 & (16, 16, 64) & BN\_18 and Dropout\_18 & (32, 32, 64) \\ BN\_6 and Dropout\_6 & (16, 16, 64) & Deconv2d\_23 & (64, 64, 32) \\ Deconv2d\_7 & (32, 32, 64) & BN\_19 and Dropout\_19 & (64, 64, 32) \\ BN\_7 and Dropout\_7 & (32, 32, 64) & Deconv2d\_24 & (64, 64, 32) \\ Deconv2d\_8 & (32, 32, 64) & BN\_20 and Dropout\_20 & (64, 64, 32) \\ BN\_8 and Dropout\_8 & (32, 32, 64) & Deconv2d\_25 & (128, 128, 16) \\ Deconv2d\_9 & (64, 64, 32) & BN\_21 and Dropout\_21 & (128, 128, 16) \\ BN\_9 and Dropout\_9 & (64, 64, 32) & Deconv2d\_26 & (128, 128, 16) \\ Deconv2d\_10 & (64, 64, 32) & BN\_22 and Dropout\_22 & (128, 128, 16) \\ Conv2d\_1 & (32, 32, 16) & Deconv2d\_26 & (256, 256, 8) \\ Conv2d\_2 & (16, 16, 32) & BN\_23 and Dropout\_23 & (256, 256, 8) \\ Conv2d\_3 & (8, 8, 64) & Deconv2d\_26 & (256, 256, 1) \\ Conv2d\_4 & (4, 4, 128) & Conv2d\_6 & (128, 16) \\ Conv2d\_5 & (4, 4, 256) & Conv2d\_7 & (64, 64, 32) \\ Deconv2d\_11 & (4, 4, 256) & Conv2d\_8 & (32, 32, 64) \\ BN\_10 and Dropout\_10 & (4, 4, 256) & Conv2d\_9 & (16, 16, 128) \\ Deconv2d\_12 & (8, 8, 128) & Conv2d\_10 & (16, 16, 256) \\ BN\_11 and Dropout\_11 & (8, 8, 128) & Deconv2d\_27 & (16, 16, 256) \\ Deconv2d\_13 & (16, 16, 64) & BN\_24 and Dropout\_24 & (16, 16, 256) \\ BN\_12 and Dropout\_12 & (16, 16, 64) & Deconv2d\_28 & (16, 16, 128) \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Architecture of the proposed network. In addition, we use the Gaussian blur algorithm to remove random noise from the inverted defect reconstruction images and the Canny edge detection algorithm to extract pixel coordinates of the target edge and obtain the target centroid position [36]. Figure 2a presents an example of a GAN-inverted defect reconstruction image that contains random noise. After having been processed by the Gaussian blur algorithm, the noise was suppressed, yet the target edge became unclear (Figure 2b). Then, the Canny edge detection algorithm was used to extract the target boundary (Figure 2c), so that the position and shape of the target could be determined. In this work, a 15 \(\times\) 15 Gaussian kernel with zero standard deviation was used to remove random noise, and the weak and strong edge thresholds of the Canny edge detector were 50 and 150, respectively.