## 3 Proposed Method
### Details of the H-G Discriminator  
As shown in Figure 1, the H-G discriminator also used the high-frequency information of the image to impose discriminant constraints on the generated image from the perspectives of both the high-frequency and the global parts. Similarly, a bilateral filter was used to extract the high-frequency part of the image. Two parallel convolutional layers were used to extract the high-frequency features and global features, and feature fusion was then carried out. The result was sent to the network for processing.  
The structure of the H-G discriminator is shown in Table 2. Both 1.1 and 1.2 represent the two parallel convolutional layers that extracted the high-frequency and the global features. Their strides were three and five. The global feature was the main part of the image, due to which a large convolutional kernel was used for it. The network in its later part had four convolutional and pooling layers that changed the size of the feature map to 1/256. The input to layer 2-1 was the sum of the outputs of layers 1.2 and 1.1, with weights h\({}_{1}\) and h\({}_{2}\), respectively. The sigmoid activation function was used in the last layer to map the result to the interval [0, 1].  
On the whole, the goal of the H-G discriminator as follows:  
\[\begin{split} F_{\text{D}}^{\eta}\left(\overline{Y},\widetilde{ \overline{Y}}\right)&\to 0\\ F_{\text{D}}^{\eta}\left(Y,\widetilde{Y}\right)& \to 1\end{split} \tag{10}\]  
where \(F_{\text{D}}^{\eta}\) represents the H-G discriminator. \(\widetilde{\overline{Y}}\) represents the high-frequency part of \(\overline{Y}\), and \(\widetilde{Y}\) represents the high-frequency part of \(\text{Y}\).  
\begin{table}
\begin{tabular}{c c c c c c c c c} \hline
**No.** & **Layer** & **K \({}^{1}\)** & **ST \({}^{2}\)** & **In-Out Channel** & **BN** & **A \({}^{3}\)** & **F \({}^{4}\)** & **Output** \\ \hline
1 & Conv & \(5\times 5\) & 1 & 3-64 & Yes & LReLU & 1 \({}^{5}\) & 320 \(\times\) 480 \(\times\) 64 \\
2 & Conv \({}^{6}\) & 3 \(\times\) 3 & 1 & 64-64 & Yes & LReLU & 1 & 320 \(\times\) 480 \(\times\) 64 \\
3 & Conv & 3 \(\times\) 3 & 2 & 64-64 & Yes & LReLU & 1/4 & 160 \(\times\) 240 \(\times\) 64 \\
4 & Conv & 3 \(\times\) 3 & 1 & 64-128 & Yes & LReLU & 1/4 & 160 \(\times\) 240 \(\times\) 128 \\
5 & Conv & 3 \(\times\) 3 & 2 & 128-128 & Yes & LReLU & 1/16 & 80 \(\times\) 120 \(\times\) 128 \\
6 & Conv & 3 \(\times\) 3 & 1 & 128-256 & Yes & LReLU & 1/16 & 80 \(\times\) 120 \(\times\) 256 \\
7 & Conv & 3 \(\times\) 3 & 2 & 256-256 & Yes & LReLU & 1/64 & 40 \(\times\) 60 \(\times\) 256 \\
8 & Conv & 3 \(\times\) 3 & 1 & 256-512 & Yes & LReLU & 1/64 & 40 \(\times\) 60 \(\times\) 512 \\
9 & DeConv \({}^{7}\) & 3 \(\times\) 3 & 2 & 512-256 & No & LReLU & 1/16 & 80 \(\times\) 120 \(\times\) 256 \\
10 & Conv & 3 \(\times\) 3 & 1 & 512-256 & Yes & LReLU & 1/16 & 80 \(\times\) 120 \(\times\) 256 \\
11 & DeConv & 3 \(\times\) 3 & 2 & 256-128 & No & LReLU & 1/4 & 160 \(\times\) 240 \(\times\) 128 \\
12 & Conv & 3 \(\times\) 3 & 1 & 256-128 & Yes & LReLU & 1/4 & 160 \(\times\) 240 \(\times\) 128 \\
13 & DeConv & 3 \(\times\) 3 & 2 & 128-64 & No & LReLU & 1 & 320 \(\times\) 480 \(\times\) 64 \\
14 & Conv & 3 \(\times\) 3 & 1 & 128-64 & Yes & LReLU & 1 & 320 \(\times\) 480 \(\times\) 64 \\
15 & Conv & 3 \(\times\) 3 & 1 & 64-3 & No & Tanh & 1 & 320 \(\times\) 480 \(\times\) 32 \\ \hline \end{tabular} \({}^{1}\) K = kernel,size, \({}^{2}\) ST = stride, \({}^{3}\) A = activation function, \({}^{4}\) F = feature map, \({}^{5}\) I = input image, \({}^{6}\) Conv = convolutional layer, \({}^{7}\) Deconv = Deconvolutional layer.  
\end{table}
Table 1: The specific structure of Rain Streaks Removal Network.