# A Convolutional Neural Network SAR Image Denoising Algorithm Based on Self-Learning Strategies
## 2 SAR Image Denoising Algorithm Based on Self-Learning Strategy DnCNN
### Network Structure
The formula for Gaussian filter kernel is  
\[G(x,y)=\frac{1}{2\pi\sigma^{2}}e^{-\frac{x^{2}+y^{2}}{2\sigma^{2}}} \tag{3}\]  
where \(x\) and \(y\) are the distances from the origin to the horizontal and vertical axes, \(\sigma\) is the standard deviation of Gaussian distribution. The denoising effect of the image after applying Gaussian filtering is shown in Figure 3.  
Median filtering is a denoising method that processes in the spatial domain. The filtering method involves selecting a template and performing corresponding operations within it. Firstly, the pixel values in the template are sorted, and the median of the pixels in the sequence is selected as the central pixel value of the template. This can remove noise points in the image that differ significantly from the surrounding pixels, thus achieving the goal of denoising. The selection of filtering templates is diverse, which can be square or rectangular matrices, circular, or cross shaped. The denoising effect of the image after applying median filtering is shown in Figure 3.  
Bilateral filtering is also a denoising method that processes in the spatial domain. By considering the influence of distance factors and pixel value differences, it can effectively preserve the feature information of the image while denoising. The denoising effect of the image after applying bilateral filtering is shown in Figure 2.0  
Non-local average denoising uses redundant information commonly found in natural images to remove noise. Unlike commonly used bilinear filtering, median filtering, and other methods that utilize local information in the image for filtering, it uses the entire image for denoising, searching for similar regions in the image on a block by block basis, and then averaging these regions to effectively remove Gaussian noise present in the image. Algorithms consume more time, but the results are better. The image denoising effect after applying non-local average denoising is shown in Figure 2.1  
From the denoising results, it can be concluded that although the above five classic image denoising algorithms have a certain filtering effect on the noise of single channel noise simulation images, the effect is not good and there is still a lot of room for improvement. We train the DnCNN network based on self-learning by adding Gaussian noise to the original dataset, enabling the algorithm to fully utilize the advantages of deep neural networks in feature extraction and improve denoising performance. Specifically, as shown in Figure 4, the main structure of the DnCNN model includes:  
Layer 1 Conv + ReLU: The input is a 35 \(\times\) 35 \(\times\) c image, and after 64 3 \(\times\) 3 \(\times\) 3 convolution kernels, the output is 64 35 \(\times\) 35 feature maps, which are 35 \(\times\) 35 \(\times\) 64 images. Layer (2-(d-1)) Conv + BN + ReLU: There are 64 3 \(\times\) 3 \(\times\) 64 convolution kernels, so the input and output of these layers are all 35 \(\times\) 35 \(\times\) 64 images. Add batch normalization between convolution and activation functions. The last layer Conv: Reconstruct a c  
Figure 2.2 DnCNN model structure. -dimensional image using c 3 \(\times\) 3 \(\times\) 64 convolution kernels as output. Each layer has zero padding to ensure consistent input and output sizes. This prevents the generation of boundary artifacts. DnCNN combines ResNet's residual learning, also known as residual learning. The difference is that DnCNN does not add connections between neural network layers, but directly changes the output of the network learning process to residuals. Assuming the clean image is x and the noisy image is y, then y = x + n, where n is the residual, which is the noise. In the learning process of DnCNN, the optimization goal is no longer the loss between clean images and network output, but the error between residuals and network output. The effect of directly using the DnCNN model to load pre training parameters for denoising single channel noise simulation images is as follows.