# EXOLOv3: An Efficient Real-Time Detection Model for Floating Object on River
## 3 Proposed Method
### EYOLOv3: Optimized YOLOv3 Model
#### 3.3.1 Multi-Scale Feature Extraction and Fusion Network  
The multi-scale feature extraction of EYOLOv3 uses the YOLOv3 backbone network and adds the auxiliary convolution layer at its end to obtain a variety of feature maps with different scales and resolutions. We use 3 \(\times\) 3 and 1 \(\times\) 1 convolution kernel, the activation function is Leaky Relu, and batch normalization (BN) is used to prevent overfitting after each 2D convolution calculation. The calculation formula of BN is shown in Formulas (1) and (2):  
\[\hat{x}^{(k)} =\frac{x^{(k)}-E\Big{[}x^{(k)}\Big{]}}{\sqrt{Var\big{[}x^{(k)} \big{]}}} \tag{1}\] \[y^{(k)} =\gamma^{(k)}\hat{x}^{(k)}+\beta^{(k)} \tag{2}\]  
where \(x^{(k)}\) denotes the linear activation of neurons in the current layer, \(\gamma\) and \(\beta\) is the regulatory parameter of neurons, \(E\) represents the mean within Batch, and \(Var\) is the variance.  
The Feature Pyramid Network (FPN) can use feature fusion to achieve multi-scale object detection in multi-layer features. The lower-level features have higher resolution and contain more location and detail information. However, due to less convolutions, they have lower semantics and more noise. High level features have stronger semantic information, but their resolution is lower and their perception ability is poor. Hence, we combine the up-sampling of FPN and feature fusion of different layers, and propose a multi-scale jump connection method to achieve multi-scale feature fusion and improve the detection accuracy of multi-scale objects of the model.  
In order to obtain more features and higher semantic, we add four new convolution (Cnv17_1, Conv17_2, Conv18_1, Conv18_2) layers at the end of feature extraction network, and a fusion branch is constructed to fuse the features output by the new convolution layers with multi-scale features to obtain feature maps of three sizes. One is the fusion of Conv12 layer and Conv18_2 layer, which is used to predict the three largest anchors and is suitable for large object detection; the second is the fusion of Conv14 layer and Conv17_2 layer, which is used to predict three anchors of medium size and is suitable for medium size object detection; the third is obtained by convolving the feature map of Conv16 layer, which is used to predict the minimum three anchors and is suitable for small object detection. After the down-sampling operations, the sizes of feature maps obtained by different convolutional layers are different, so it is impossible to directly fuse the features of convolutional neural networks. Take the fusion of Conv12 layer and Conv18_2 layer as an example, firstly, the feature map of the Conv18_2 layer is up-sampled; secondly, we use  
Figure 3: Backbone network structure of YOLOv3.  
L2-Norm to normalize the eigenvalue of the two layers to the same level, because Conv12 layer is shallow and its eigenvalue is large, and Conv18_2 layer is deep and its eigenvalue is small, so the direct connection is not feasible; thirdly, the two corresponding feature maps are merged to increase the number of channels; finally, through \(1\times 1\) convolution layer to fuse and reduce the dimension of the merged feature map, so the fused feature map contains both high-level feature semantic and low-level high-resolution detail information. The feature fusion module is shown in Figure 4. And Figure 5 shows the visualization process of the module. It can be seen from the Figure 5 that the fused feature maps have more information.