## 3 Proposed Method
### Distortion Correction Network
\(c_{1}\) and \(c_{1}\) are constants used to stabilize the division by a small denominator, which were 0.0001 and 0.001, respectively. \[K_{ssim}=\frac{1}{N}\sum_{n}^{N}\left(1-SSIM(I_{1n},I_{1n}^{\prime})\right) \tag{6}\]  
Figure 6 shows the schematic diagram before and after the distortion correction. Figure 6: (**a**) Expanded image of the circular elevation. (**b**) The corresponding distortion correction image. After reconstruction, it was necessary to conduct crack detection and the patch traversal on the image. Therefore, it was necessary to conduct up-sampling on the distorted image. For example, as [PERSON] et al. [23] did, we processed the image. The schematic diagram of the up-sampling network is shown in Figure 7. The detailed structure of the distortion correction network is shown in Table 2. Because the lower sampling was different from the upper sampling, the lost information was abstract and high-dimensional. As a result, we adopted the method of bicubic down-sampling to conduct lower sampling on the collected original large images to make labels. Using the learned up-sampling filters effectively suppressed reconstruction artifacts caused by the bicubic interpolation. The crack characteristics in different scales could be learned by comparing the label values after each sampling rate reduction. Since the L2 loss function made the image smooth and lost many features of details when learning the mapping of super pixels, we used the Charbonnier function to learn the mapping, which is defined as:  
\[\varepsilon(\overline{I^{\prime}_{1n}},I^{\prime}_{1n},\theta)=\frac{1}{N} \sum_{i=1}^{N}\sum_{S=1}^{L}\rho(\overline{I^{\prime}_{1 nS}}-I^{\prime}_{1 nS} ), \tag{7}\]  
where \(\overline{I^{\prime}_{1n}}\) represents the input frame, \(I^{\prime}_{1n}\) represents the up-sampling frame, and \(\theta\) represents the nonlinear function relationship between the two frames. \(\rho(x)=\sqrt{x^{2}+\epsilon^{2}}\) is the Charbonnier penalty function. \(N\) is the number of training samples in each batch, and \(L\) is the number of levels in our pyramid (\(L=3\), in our paper). We empirically set \(\varepsilon\) to \(1\times 10^{-3}\). We used the method of [PERSON] et al. [24] to up-sample the distorted image and used the loss function. The output of each transposed convolution layer was connected to two different layers:  
1. [label=(0)]
2. Convolution layer 1, which was used to reconstruct residual images at this level;
3. \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Layers (Size, Kernel Size, Stride)** & **Step** & **Type** & **Input** & **Output** \\ \hline ImageInputLayer (408 \(\times\) 568) & - & & 1 & 64 \\ Conv\_ Relu (3 \(\times\) 3,1) & (1–3) & Pad (same) & 64 & 64 \\ Conv\_ Relu (3 \(\times\) 3,1) & (1–3) & Pad (same) & 64 & 64 \\ Drop\_Out & (1–3) & 50\% & 64 & 64 \\ \({}^{*}\) TransConv\_ UpRelu (2 \(\times\) 2,2) & (1–3) & Crop (0,0) & 64 & 64 \\ Final\_Conv\_Reg\_Out (3264 \(\times\) 4544) & - & & 1 & Pixel-Pr \\ \hline \hline \end{tabular}  
* Tag \({}^{*}\) means that the characteristics of this layer were compared with the corresponding label layer by layer, and the deviation value was returned.  
\end{table} 
Table 2: The detailed structure of the distortion correction network. Figure 7: Schematic diagram of the up-sampling network. (2) Convolution layer 2, which was used to extract features at the finer s+1 level.