## 3 Methods
### Detection Layer for Small Objects  
YOLOv3 uses different detection layers to detect objects of various sizes. For a 416 \(\times\) 416 input image, the sizes of the three detection layers are 13 \(\times\) 13, 26 \(\times\) 26, and 52 \(\times\) 52, i.e., the feature maps of the three detection layers are downsampled 8 times, 16 times, and 32 times, respectively. The smaller the size of the feature map, the larger the area corresponding to each grid cell in the input image; in contrast, the larger the size of the feature map, the smaller the area corresponding to each grid cell in the input image.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Layers** & **Filters** & **Size** & **Output Size** \\ \hline Convolutional & 32 & k = 3, s = 1, p = 1 & 416 \(\times\) 416 \(\times\) 32 \\ Convolutional & 64 & k = 3, s = 2, p = 1 & 208 \(\times\) 208 \(\times\) 64 \\ Convolutional & 32 & k = 1, s = 1, p = 0 & 208 \(\times\) 208 \(\times\) 32 \\ SGEresidual & 64 & k = 3, s = 1, p = 1 & 208 \(\times\) 208 \(\times\) 64 \\ Convolutional & 128 & k = 3, s = 2, p = 1 & 104 \(\times\) 104 \(\times\) 128 \\ \(2\times\) Convolutional & 64 & k = 1, s = 1, p = 0 & 104 \(\times\) 104 \(\times\) 64 \\ \(2\times\) SGEresidual & 128 & k = 3, s = 1, p = 1 & 104 \(\times\) 104 \(\times\) 128 \\ Convolutional & 256 & k = 3, s = 2, p = 1 & 52 \(\times\) 52 \(\times\) 256 \\ \(8\times\) Convolutional & 128 & k = 1, s = 1, p = 0 & 52 \(\times\) 52 \(\times\) 128 \\ \(8\times\) SGEresidual & 256 & k = 3, s = 1, p = 1 & 52 \(\times\) 52 \(\times\) 256 \\ Convolutional & 512 & k = 3, s = 2, p = 1 & 26 \(\times\) 26 \(\times\) 512 \\ \(8\times\) Convolutional & 256 & k = 1, s = 1, p = 0 & 26 \(\times\) 26 \(\times\) 256 \\ \(8\times\) SGEresidual & 512 & k = 3, s = 1, p = 1 & 26 \(\times\) 26 \(\times\) 512 \\ Convolutional & 1024 & k = 3, s = 2, p = 1 & 13 \(\times\) 13 \(\times\) 1024 \\ \(4\times\) Convolutional & 512 & k = 1, s = 1, p = 0 & 13 \(\times\) 13 \(\times\) 512 \\ \(4\times\) SGEresidual & 1024 & k = 3, s = 1, p = 1 & 13 \(\times\) 13 \(\times\) 1024 \\ \hline \hline \end{tabular}
\end{table}
Table 1: The parameters of SGEDarknet53, where k represents kernel size, s represents stride, and p represents padding.  
Figure 4: The structure of SGEResN. BN represents batch normalization, and CBL represents conv, BN, and leaky relu.  
Figure 3: The structure of the SGE module.  
Thus, the 13 \(\times\) 13 detection layer is suitable for detecting large objects, while the 52 \(\times\) 52 detection layer is suitable for detecting small objects. However, when compared with the original map, the 52 \(\times\) 52 detection layer is downsampled 8 times, i.e., when the size of the object is smaller than 8 \(\times\) 8, the space it occupies in the feature map may be less than 1 pixel after the feature extraction process, which makes it difficult to detect small objects. In general, remote sensing images contain a large number of small objects. To further improve the detection capability of small objects in remote sensing images, one of the most direct and effective ways is to perform object detection directly on the feature map with larger resolution. Although it will increase the computational cost to a certain extent, but in the feature fusion stage, the feature maps under high resolution have relatively low dimension, the increase in the number of parameters is only concentrated in the prediction layer so that the increase in the number of parameters is relatively limited. We add a 104 \(\times\) 104 detection layer to detect small objects, and compared with the original image, it downsampled four times. Theoretically, even the resolution is 4 \(\times\) 4, the feature information can also be retained on this detection layer, which greatly improves the detection performance of small objects. The improved network structure with the 104 \(\times\) 104 \(\times\) 255 small object detection layer is called P2 layers in Figure 2.