## 3 Implementation of Proposed Method
### Fusion Classification Network  
In order to make full use of the object features extracted by the single feature extraction network in Section 2.2 and achieve better results, we fuse the features of the two parts and use the fusion features for object classification. In the process of feature extraction, the shallow features of the network reflect more original information of the image, while the deep features of the network are more suitable for object classification. Therefore, we complete the fusion operation in the position of the last convolution layer of the single feature extraction network. In general, the classification of objects can be realized by using the full connection layer with fixed input channel. However, the structure of the image may be damaged if we adjust all images to the same size forcibly when the size of the sonar image is different. Spatial pyramid pooling [30,31] can convert a feature map of any size into a feature vector of fixed size, which can be sent to the full connection layer. Moreover, pyramid pooling can extract multi-scale features and improve the effect of object classification [32,33].  
Pyramid pooling is added to the classification part, and the structure of the classification network is seen in Figure 5. Firstly, the output of the last convolution layer of the two single feature extraction networks is fused by Equation (11), where \(input_{1}\) is the highlight images of the input, \(F_{1}\) is the single feature extraction network, and \(F_{1}(input_{1})\) is the highlight feature map of the last layer of the feature extraction network. The shadow region is in the same way. \(F\) is the fusion feature map to realize the combination of highlight and shadow features.  
\[F=Concate(F_{1}(input_{1}),F_{2}(input_{2})), \tag{11}\]  
Secondly, after fusing the features, a pyramid pooling layer is added to obtain the features of fixed size. Thirdly, full connection layer1 is added to reduce data dimension, and full connection layer2 is applied to realize object classification.  
In order to improve the network fitting, the dropout function is added after both full connection layers to randomly drop out some cells; and the drop-out rate is set to 0.5. The output value of multiple categories can be converted into probability distribution in the  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Layer** & **Kernel Size** & **Activation Function** \\ \hline Convolution & \(1\times 1\) & ReLU \\ Depthwise Convolution & \(3\times 3\) & ReLU \\ Pointwise Convolution & \(1\times 1\) & Linear \\ \hline \hline \end{tabular}
\end{table}
Table 1: Structure of improved depth separation module.  
Figure 4: Structure of single feature extraction network.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Layer** & **\(t\)** & **\(c\)** & **\(n\)** & **s** \\ \hline Conv1 & - & 32 & 1 & 2 \\ Block1 & 1 & 16 & 1 & 1 \\ Block2 & 6 & 24 & 2 & 2 \\ Block3 & 6 & 32 & 3 & 2 \\ Block4 & 6 & 64 & 4 & 2 \\ Block5 & 6 & 96 & 3 & 1 \\ Block6 & 6 & 160 & 3 & 2 \\ Block7 & 6 & 320 & 1 & 1 \\ Conv2 & - & 128 & 1 & 1 \\ \hline \hline \end{tabular}
\end{table}
Table 2: Structure of feature extraction network.  
range of [0, 1] by Softmax function, as shown in Equation (12), where \(z_{i}\) is the output value of the \(i\)th node and \(C\) is the number of output nodes, the number of classification categories.  
\[Softmax(z_{i})=\frac{e^{z_{i}}}{\sum_{c=1}^{C}e^{z_{i}}}, \tag{12}\]