## 2 Materials and Methods
### The Training Method  
The hardware environment deployed for this study consists of an RTX 3090 (24 GB) GPU and 16 vCPU Intel(R) Xeon(R) Platinum 8350C CPU @ 2.60 GHz. The host operating system used is Ubuntu 20.04. For AMS_YOLO and AMSpiking-VGG trained on the GEN1 dataset, we used the Adam optimizer and set the learning rate as \(1\times 10^{-3}\), trained for approximately 50 epochs. For the AMS_YOLO model we trained on the COCO2017 dataset, we used the SDG optimizer with a learning rate of \(1\times 10^{-2}\), and trained for about 300 epochs.  
The training strategies for deep SNNs are mainly classified into ANN-SNN conversion and direct training of SNNs. The essence of ANN-SNN conversion is to approximate the average discharge rate of SNNs as continuous activation values in ANNs using ReLU as a nonlinearity. The performance of the converted SNN depends on the original ANN, which makes it difficult to obtain a high performance SNN with low latency and suffers from performance loss during the conversion process.  
TDBN is trained using spatio-temporal backpropagation [9] for backpropagation. This method enables the training of deep SNNs, increasing the number of layers from less than 10 to 50. Not only does it solve the problem of gradient vanishing or explosion, but it can also adjust the overall firing rate of the network. It uses a residual network structure and adjusts the short connections within it, making its structure suitable for the training of deep SNNs.  
As a fundamental component of DNNs, batch normalization (BatchNorm) has become a prevalent technique in current neural networks, facilitating stable convergence and deeper networks. However, due to the additional temporal dimension and the unique activation mechanisms, we employ the specially designed normalization method, TDBN, when directly training deep SNNs.  
The issue of indistinguishable spikes in backpropagation, and surrogate gradients, can be expressed as:  
\[\frac{\partial\chi_{\rm i}^{\rm m}}{\partial V_{\rm i}^{\rm m}}=\frac{1}{b} \operatorname{sign}\left(\left|V_{\rm i}^{\rm t}-V_{\rm th}\right|\leq\frac{ b}{2}\right) \tag{6}\]  
where b ensures the integral of the gradient is I and determines the curve steepness. We use a threshold-dependent normalization method in both spatial and temporal domains, known as TDBN [10]. The training of TDBN based on spike timing dependent backpropagation (STBP) can be expressed as:  
\[cV_{\rm i}^{\rm t+1,n+1}=\tau V_{\rm i}^{\rm t,n+1}\left(1-\chi_{\rm i}^{\rm t,n+1}\right)+\mathrm{TDBN}\left(\mathrm{I}_{\rm i}^{\rm t+1}\right) \tag{7}\]  
\[\mathrm{TDBN}\left(\mathrm{I}_{\rm i}^{\rm t+1}\right)=\lambda_{\rm i}\frac{ \alpha V_{\rm th}\left(\mathrm{I}_{\rm i}^{\rm t+1}-\mu_{\rm ci}\right)}{ \sqrt{\sigma_{\rm ci}^{2}+\epsilon}}+\beta_{\rm i} \tag{8}\]  
where \(\mu_{\rm ci}\) and \(\sigma_{\rm ci}^{2}\) represent the mean and variance of the mini-batch sequence input for each channel, respectively. The input is defined as: \(\left\{\mathrm{I}_{\rm i}^{\rm t+1}=\Sigma_{\rm j}W_{\rm ij}^{\rm m}\chi_{\rm j }^{\rm t+1,n}\mid\mathrm{t}=0,\ldots,\mathrm{T}-1\right\}\) where \(\epsilon\) is a small constant introduced to avoid division by zero; \(a\) and \(b\) are two trainable parameters, and \(V_{\rm th}\) is a threshold-related hyperparameter.  
In traditional spiking neural networks, the unstable gradient propagation of pulse signals leads to issues such as underfitting and exploding gradients in deep SNNs, which ultimately hinders effective network learning ability. Therefore, we implement the TDBN training method in our network to ensure stable and accurate propagation of pulse signals.