## 3 Methods
### Structure of the Specific Network  
#### 3.2.1 Structure of the Generators  
Unlike traditional CycleGAN, a heterogeneous generator structure, in which the two generators utilize different network structures, is employed in FA-CycleGAN. Image dehazing is performed on the input hazy image by the G\({}_{\text{D}}\). The model structure is shown in Figure 3. The pseudocode is shown in Algorithm 2. The depth information of the image is estimated through feature extraction and residual fusion by the transmittance estimation module. The scattering coefficient of the image is estimated through feature extraction and average pooling operations by the scattering coefficient estimation module. G\({}_{\text{D}}\) is first used to extract features from the input image, \(H\). The extracted features at differ ent levels are processed to obtain the image's transmittance, \(\hat{t}\), and scattering coefficient, \(\hat{\beta}\), as follows:  
\[(\hat{t},\hat{\beta})=\text{G}_{\text{D}}(H) \tag{3}\]  
The generated haze-free image, \(\hat{\mathcal{C}}\), can be calculated based on the atmospheric scattering model as follows:  
\[\hat{\mathcal{C}}=\frac{H-\hat{A}}{\hat{t}}+\hat{A} \tag{4}\]  
where \(\hat{A}\) is the atmospheric light value estimated from the dark channel prior, \(H\) is the hazy images, and \(\hat{t}\) is the image's transmittance. ```
Input: Input_Hazy.// hazy images. Output: Generated_Dehazy. 1: Initialize:
2: Build the multi-layer feature extraction block(MFEB)
3: Build the feature fusion attention block(FBCA)
4: Build the output layers(output_Conv)
5: Method forward_get_A(input_image)
6: If use_dc_A
7: then Estimate atmospheric light A via dark channel method
8: else Set A as the maximum RGB value over spatial dimensions
9: return A
10: Method forward(Input_Hazy)
11: features = MFEB(Input_Hazy)
12: t = output_Conv(FBCA(features))
13: \(\beta\) = AvgPooling(features)
14: Normalize t and \(\beta\) into valid ranges
15: A = forward_get_A(Input_Hazy)
16: Compute Generated_Dehazy according to Equation (4)
```  
**Algorithm 2** Process flow of the generator, \(\text{G}_{\text{D}}\)  
As shown in Figure 4, the multi-layer feature extraction block (MFEB) is built based on the EfficientNet-lite3 network. The backbone network is divided into four layers to gradually extract advanced features from the image. Through layered feature extraction, the network can gradually learn low-level details and high-level semantic information, which aids in learning complex structures and patterns in the image, enabling the network to better understand the input data. Figure 3: The transmittance and scattering coefficients are estimated through the generator \(\text{G}_{\text{D}}\) using feature extraction and fusion, and a haze-free image is obtained by calculating Equation (4). The feature fusion attention module (FBCA) performs multi-scale feature fusion on extracted features of different levels. Its structure is shown in Figure 5. The idea of residual connection is adopted in FBCA, where different levels of features are separately fed into different feature fusion blocks for fusion. The output of the previous layer's feature fusion block is processed by a residual unit and added to the input features of the current layer. The result of this addition is then processed by the residual unit to obtain the output of the current layer. This approach allows for improved retention of low-level features while promoting the learning of high-level features, thus improving the dehazing effect. To enhance the model's attention to input data, the CA attention module is introduced to improve the model's performance in handling complex tasks. In this module, the model can focus on complex areas to recover details more efficiently. Most current attention mechanisms (e.g., SE attention mechanism) significantly enhance model performance.