1 Introduction

Event cameras, as an asynchronous vision sensor, hold substantial promise for groundbreaking advancements in fields like autonomous driving, robotics, and surveillance [1,2,3,4,5]. In contrast to frame-based cameras, which operate with fixed exposure durations, event cameras capture luminance changes individually at each pixel [6, 7]. The resultant output manifests as a pixel-specific event stream that directly encapsulates changes in scene reflectance, thereby mitigating data redundancy and preserving precise temporal data [1, 8, 9]. Therefore, merits of the event camera include high temporal resolution (microsecond order), low power consumption (milliwatt), and high dynamic range (~ 120 dB) [1, 10]. Exploiting these salient attributes, event cameras proficiently capture scene details, even in challenging environments such as poor lighting and high-speed motion, without necessitating extensive storage resources.

In theory, event cameras are designed to produce responses and relay event data exclusively in response to changes in light intensity or the presence of object motion [1, 4]. However, without log intensity changes, or even without any scene activity, spurious events could be inadvertently generated by the camera [8, 11, 12]. Such aberrant occurrences can critically compromise the quality of event data, potentially undermining the utility of event cameras for subsequent tasks, including optical flow, target detection, and object recognition. Therefore, it is crucial to remove these spurious event data. However, prior to distilling meaningful event data amidst such noise, certain considerations must be taken into account. For instance, in static scenarios devoid of motion or brightness fluctuations, is it necessary to allocate significant computational resources to process the false events induced by inherent camera hardware limitations? Additionally, in dynamic scenarios, what strategies can be effectively employed to mitigate the pervasive noise?

To address these issues, we propose a two-step denoising algorithm (referred as GMCM), composed of robust Gaussian denoising preprocessing and motion denoising. In the first step, the Gaussian denoising preprocessing employs a Gaussian time distribution coupled with adaptive thresholds, thereby preliminarily ascertaining the presence or absence of motion information within the event stream. If no motion information is present, the corresponding data are promptly discarded. Conversely, discernible motion cues prompt the activation of the subsequent denoising step. Here, event streams with and without motion information are referred as Motion Stream and Noise Stream, respectively. Experimental results demonstrate that our GMCM algorithm effectively distinguishes Motion Stream and Noise Stream. Furthermore, compared to the conventional contrast maximization (CM) algorithm, GMCM algorithm can more effectively distinguish effective events from noise events, resulting in an enhanced denoising outcome. In addition, compared to other SOTA denoising algorithms, GMCM algorithm achieves the best denoising performance on benchmark datasets such as DVSNOISE20 [13] and DVSCLEAN [14].

In general, our contributions are as follows:

  1. 1.

    A novel two-step denoising algorithm, consisting of Gaussian denoising preprocessing and motion denoising, is proposed.

  2. 2.

    To elevate computational efficiency, it is for the first time that Gaussian denoising preprocessing is introduced to preliminarily ascertain whether the event data stream encompasses motion information.

  3. 3.

    To expand the application range of the motion denoising algorithm and improve its robustness, nonlinear terms are incorporated into the motion equation of the motion denoising model.

2 Related works

In this section, the types of noise events and previous researches on event denoising algorithms are mainly reviewed.

2.1 Noise events

In event cameras, the primary sources of noise events can be attributed to background activity (BA) and hot pixels [11, 15,16,17,18,19,20,21]. BA refers to spurious signals emitted in the absence of notable shifts in luminance or motion. Such events may be triggered by the factors such as charge injection, leakage from the reset switching transistor section, and the thermal noise [12, 17,18,19,20,21,22]. Compared to real events, which exhibit higher spatiotemporal correlation, BAs occur randomly and with lower frequency [17,18,19,20]. As a result, in event streams, the distribution of real events tends to be denser, while the distribution of BA is sparser. In addition, hot pixels in event cameras are often the result of inadequate pixel resetting processes, the same as in the frame-based camera [7, 23, 24].

2.2 Event denoising algorithm

Given that event cameras produce asynchronous event streams rather than standard frames, traditional frame-based denoising algorithms cannot be applied directly. As a result, some researchers have proposed a strategy where the sparse event data was firstly mapped to dense image frames, subsequently undergoing traditional denoising methods [25, 26]. However, this approach worked at the expense of temporal information. Moreover, the mapping of event streams to image frames is irreversible. In other words, the denoised event stream cannot be recovered from the denoised image frames later. Here, in our proposed algorithm, the motion information of the event stream is obtained and employed for denoising without the need for translation from event data to event frames. Furthermore, our denoised output is retained as an event stream, facilitating subsequent analyses to directly leverage the intrinsic benefits of the event stream eigenvalue.

To harness the temporal information and asynchronous sparsity inherent in event streams, several denoising algorithms employing filtering techniques have been proposed, such as temporal filtering [27], spatial filtering [28], and spatiotemporal filtering [16, 17, 29, 30]. Baldwin et al. [27] introduced a temporal filter using a time-surface approach, aiming to eliminate redundant events and noise. Wang et al. [28] proposed a spatial filter grounded in the notion that events triggered by the same edge motion exhibit similar spatiotemporal motion projections. Liu et al. [31] established a spatiotemporal correlation-based filter by considering the temporal correlation of event groups partitioned by subsampling. These aforementioned filters are primarily suitable for denoising simple scenes and may struggle to differentiate between noise and genuine events in high dynamic or high noise ratio scenes.

Recently, deep learning has gained significant attention in the denoising of event cameras, particularly for complex scenes [13, 18, 32, 33]. Baldwin et al. [13] utilized the EPM tags, which are consisted of APS, IMU, and camera parameters, to convert neighboring events into multiple time surfaces which were then fed into the convolutional neural network, EDnCNN, for denoising. Duan et al. [18] proposed EventZoom, a 3D U-Net neural network, aimed at both event denoising and super-resolution. Although EventZoom employed a noise-to-noise strategy, it did incorporated event-to-image modules, which introduced the concept of frames to some extent [18]. In a word, existing neural network-based denoising algorithms often require preprocessing steps that deviate from the intrinsic properties of event data. Extracting accurate features for matching the underlying information of events which is challenging due to their asynchronous and sparse nature, thereby affecting denoising performance. Moreover, the scarcity of real-world datasets poses a significant obstacle for the widespread adoption of neural network-based denoising algorithms. In contrast, our GMCM algorithm does not rely on vast datasets or annotated samples for learning. Additionally, the Gaussian denoising preprocessing step integrated within the GMCM algorithm aids in optimizing computational efficiency.

3 Proposed methods

In this section, a two-step GMCM algorithm is proposed for event denoising, as shown in Fig. 1. The first step focuses on denoising preprocessing, utilizing a Gaussian time distribution and an adaptive threshold. The second step engages in motion denoising by utilizing an enhanced contrast maximization technique.

Fig. 1
figure 1

Illustration is the framework for the proposed two-step GMCM algorithm. The input consists of sparse events, asynchronously generated by event cameras. Stage (I) Gaussian Denoising Preprocessing: first, all data are uniformly segmented into N groups of events. Then, the Gaussian time distribution for each event group is deduced. Finally, by contrasting the derived Gaussian maximum value with the adaptive threshold, a determination is made regarding whether it constitutes a Motion Stream or a Noise Stream. Stage (II) Motion Denoise: first, the motion trajectory is estimated by the modified contrast maximization algorithm. Then, based on the optimal motion trajectory, the event number obtained by each pixel is calculated. If the event number is below a certain threshold, it is noise. The final output is the event stream that has been denoised. Blue/Pink dot: Real/Noise event

3.1 First step: Gaussian denoising preprocessing

In the GMCM algorithm, event streams are first segmented into temporal bins, acting as the fundamental processing units. Conventionally, the events are mapped to representations using either a constant time window or a fixed number of events. In this case, a fixed number of events is selected as the basic processing unit. The rationale for this choice is elaborated subsequently.

According to Section II.A, noise events occur randomly with a low probability, whereas real events caused by motion occur in a large number within a short period of time. As a result, compared to the Noise Stream, the temporal distribution of the Motion Stream is more compact. Furthermore, in the processing units with a constant number of events, the Gaussian time distribution of the Motion Stream is more concentrated than that of the Noise Stream. (The equation for Gaussian time distribution is presented in Eq. 1.) However, with fixed time window units, due to the constant timeframe, the Gaussian time distributions of both Noise Stream and Motion Stream tend to be analogous, complicating the differentiation of the presence of motion information within the event stream (as illustrated in Fig. 2). To address this, the Gaussian maximum probability density value, specifically MS-Max versus NS-Max, is employed to discern between the Motion Stream and Noise Stream.

$$ {\text{Gaussian}}\left( t \right) = \frac{1}{{\sqrt {2\pi } \sigma }}\exp \left( { - \frac{{\left( {t - \mu } \right)^{2} }}{{2\sigma^{2} }}} \right) $$
(1)

where, t is the timestamp of each event, μ is the average timestamp of this series of events, and σ is the variance of timestamps in this event series.

Fig. 2
figure 2

Comparison of Gaussian time distribution based on constant time window and constant number of events

However, varying event counts can influence the Gaussian threshold for distinguishing the Noise Stream and Motion Stream. To circumvent the manual recalibration necessitated by alterations in event counts, an adaptive threshold method is proposed to distinguish between the Motion Stream and Noise Stream (as shown in Eq. 2).

$$ \rho = \exp \left( {a + bn + cn^{2} } \right) + \varepsilon $$
(2)

where n is the number of events in a basic processing unit (referred as Event Num); a, b, and c are related to the material and the motion of the object; \(\varepsilon\) is related to the light intensity.

3.2 Second step: Motion denoising

Contrast maximization (CM), a prevalent technique for object trajectory estimation, has demonstrated efficacy in applications such as target detection, feature tracking, and motion compensation [34,35,36,37]. Researchers optimize the CM algorithm by minimizing the loss function [34, 35, 38]. However, it is also important to refine the trajectory equation.

3.2.1 Linear motion

Currently, the CM algorithm is grounded on linear motion equations, which postulates that an object moves at a constant velocity within a very short time interval. However, these equations may not suffice in accurately delineating complex linear motions, such as accelerated motion. To mitigate this limitation, the introduction of nonlinear terms to the CM motion equations is proposed. This modification seeks to accommodate intricate linear motions and permits the employment of arbitrarily chosen time intervals, thereby augmenting the algorithm’s versatility and precision in portraying a variety of motion patterns:

$$ \left( {\begin{array}{*{20}c} {x_{k}^{\prime } } \\ {y_{k}^{\prime } } \\ \end{array} } \right) = \left( {\begin{array}{*{20}c} {x_{k} } \\ {y_{k} } \\ \end{array} } \right) - \left( {t_{k} - t_{{{\text{ref}}}} } \right)\left( {\begin{array}{*{20}c} {v_{x} } \\ {v_{y} } \\ \end{array} } \right) - \left( {t_{k} - t_{ref} } \right)^{2} \left( {\begin{array}{*{20}c} {\lambda_{x} } \\ {\lambda_{y} } \\ \end{array} } \right) $$
(3)

where, \(x_{k}^{\prime } ,y_{k}^{\prime }\) are the event coordinates after motion projection; \(x_{k} ,y_{k} ,t_{k}\) are the original coordinates and timestamp, respectively; \(v_{x} ,v_{y}\) are the motion speeds; \(\lambda_{x} ,\lambda_{y}\) are the nonlinear parameters;\(t_{ref}\) is the reference time, which is the timestamp of the last event.

3.2.2 Rotational motion

The rotational motion model of the CM method is specifically designed for scenarios typified by pure rotational motions with constant angular velocities. However, in situations where these velocities subject to unpredictable fluctuations intrinsic to complex scenarios, the model encounters palpable challenges. Many naturally occurring rotational dynamics, particularly those swayed by external perturbations or intrinsic nonlinear forces, manifest characteristics which challenge the descriptive capacity of a strictly linear model. Building on the foundational work of Gallego et al. [34] regarding the motion equation, we propose the incorporation of a nonlinear component to aptly represent these nuanced motion behaviors:

$$ \zeta = \left[ {\left( {t_{k} - t_{{{\text{ref}}}} } \right)\left( {\begin{array}{*{20}c} {v_{x} } \\ {\nu_{y} } \\ \end{array} } \right) + \left( {t_{k} - t_{{{\text{ref}}}} } \right)^{2} \left( {\begin{array}{*{20}c} {v_{x}^{\prime } } \\ {\nu_{y}^{\prime } } \\ \end{array} } \right)} \right]*\left( {\begin{array}{*{20}c} {\lambda_{x} } \\ {\lambda_{y} } \\ \end{array} } \right) $$
(4)
$$ \left( {\begin{array}{*{20}c} {x_{k}^{\prime } } \\ {y_{k}^{\prime } } \\ \end{array} } \right) = \left( {\begin{array}{*{20}c} {x_{k} } \\ {y_{k} } \\ \end{array} } \right) - \left( {t_{k} - t_{ref} } \right)\left( {\begin{array}{*{20}c} {w_{x} } \\ {w_{y} } \\ \end{array} } \right) \otimes \left( {\begin{array}{*{20}c} {x_{k} } \\ {y_{k} } \\ \end{array} } \right) - \zeta $$
(5)

where \(w_{x} ,w_{y}\) represent the angular velocity of the rotational motion, \(\otimes\) represents the multiplication of the corresponding position, and \(\upzeta \) is a nonlinear term. Subsequent experimental evaluations, exemplified by experiments with rolling spheres, substantiate that this modification yields a more faithful portrayal of rotational dynamics, especially those experiencing variable angular velocities. This innovation effectively augments the versatility of the CM algorithm in addressing a broader spectrum of rotational motion scenarios.

3.2.3 Motion trajectory estimation

Accurately estimating the motion trajectory is crucial for subsequent processing steps. In this approach, the motion trajectory is firstly initialized, following which events are mapped onto a reference time plane based on this trajectory. Thus, the events are aligned in a consistent temporal reference frame, facilitating ensuing analysis and processing:

$$ H(x_{k} ,y_{k} ,p_{k} ;\theta ) = \mathop \sum \limits_{k = 1}^{m} p_{k}^{{}} \delta ((x_{k} ,y_{k} ) - (x_{k}^{\prime } ,y_{k}^{\prime } )) $$
(6)
$$ \theta = \left\{ {\begin{array}{*{20}l} {\left( {v_{x} ,v_{y} ,\lambda_{x} ,\lambda_{y} } \right)} \\ {(w_{x} ,w_{y} ,v_{x} \cdot \lambda_{x} ,v_{y} \cdot \lambda_{y} ,v_{x}^{\prime } \cdot \lambda_{x} ,v_{y}^{\prime } \cdot \lambda_{y} )} \\ \end{array} } \right. $$
(7)

where \(\delta\) is the Dirac function, \(\theta\) is the motion trajectory.

Subsequently, the reference time plane is processed via a reward function. Stoffregen et al. [35] categorized the reward function utilized in the CM algorithm into the sparsity reward and magnitude reward. The former excels in dealing with image uncertainty, while the latter demonstrates greater tolerance to noise. To harness the advantages of both sparsity reward and magnitude reward, a hybrid reward function was deemed beneficial. In our approach, the hybrid reward function, denoted as R, is directly applied to process the reference time plane, aiming to obtain the optimal trajectory. The equations for the reward function and the contrast maximization are delineated below:

$$ R\left( H \right) = \mathop \sum \limits_{x,y} h\left( {x,y} \right)^{2} + \mathop \sum \limits_{x,y} \exp \left( { - h\left( {x,y} \right) * p_{k} } \right) $$
(8)
$$ \theta^{*} = \arg {\text{max}}_{\theta } R\left( {H(x_{k} ,y_{k} ,p_{k} ;\theta )} \right) $$
(9)

3.2.4 Distinguishing between real and noise events

To distinguish events and noise, event streams are projected onto the reference time plane using accurate motion estimates \(\theta^{*}\), and the quantity is enumerated at each pixel location on the time plane:

$$ H(x_{k} ,y_{k} ,p_{k} ;\theta^{ * } ) = \left\{ \begin{gathered} 0 \hfill \\ 1 \hfill \\ {\text{otherwise}} \hfill \\ \end{gathered} \right.\;\begin{array}{*{20}c} {{\text{None}}} \\ {{\text{Noise}}} \\ {{\text{Event}}} \\ \end{array} $$
(10)

In this process, pixel locations manifesting a higher event count are indicative of actual real events, while those exhibiting a lower event count are likely to be associated with noise or spurious events. By establishing an appropriate threshold, a demarcation between actual events and noise can be effected based on the event count at each pixel location on the reprojected time plane.

4 Experiments and results

In this section, real-world scenes are captured by an event camera (DAVIS346). The data obtained is then processed with the proposed two-step GMCM algorithm to evaluate its applicability. Furthermore, for a comprehensive performance comparison of our GMCM algorithm with other denoising methods, both the DENOISE20 and DVSCLEAN benchmark dataset are employed. Our algorithm, along with other conventional algorithms, is operationalized on a CPU (Intel i7-12700F, 64-bit). Conversely, the denoising models based on neural networks operate on a GPU (GeForce RTX 3080Ti GPU), utilizing a software framework inclusive of PyTorch 1.13.0 and CUDA Toolkit 11.3.1. The encompassing software milieu was constructed with Python 3.9.12 and PyCharm 2022.2.

4.1 Dataset

4.1.1 Experimental setup of our dataset

During the experimental phase, we utilized the DAVIS346 camera, which boasts a spatial resolution of 346 × 260 pixels. The camera was securely mounted on a stand, maintaining a distance of 60 cm from the object in motion. We captured three distinct indoor motion scenarios, each involving objects with varying refractive indices. Each object was recorded under three different lighting conditions, with each condition being replicated thrice. An exhaustive description of the experimental conditions is provided in Table 1.

Table 1 Experimental parameters about object material, movement, and light intensity

4.1.2 Benchmark datasets

DVSNOISE20 [13] is a genuine dataset that mirrors real-world scenarios, embracing 16 distinctive indoor and outdoor environments. Each of these locations has been carefully documented three times, each capture lasting approximately 16 seconds, culminating in a total of 48 sequences that cover a wide range of movements.

Regarding DVSCLEAN [14], our primary focus is on the simulated section of the dataset. This simulated portion is generated by utilizing the ESIM [39] technique to convert real scene videos into simulated real-world events, after which artificial random noise is intentionally added. The dataset houses 49 distinct scenes. Within each scene, noise is introduced at two separate magnitudes: one corresponding to 50% of the simulated real event frequency, and the other matching 100% of that frequency. To stay consistent with the terminology used by the primary researchers, these are denominated as the 50% noise ratio and the 100% noise ratio, respectively.

4.2 Impact of the event num on the GMCM algorithm

The Event Num is a key factor affecting the denoising performance of the GMCM algorithm. Here, a series of GMCM algorithms, each accommodating a different Event Num, are applied to perform denoising processes on the DVSCLEAN benchmark dataset, and the corresponding SNR scores are calculated, as depicted in the Fig. 3. It reveals that the GMCM algorithm attains approximately the highest SNR scores when the Event Num is between 10,000 and 20,000. Moreover, with an increase in the Event Num, the SNR scores experience only a slight decline. This demonstrates that our denoising algorithm exhibits robustness with respect to the number of events. Furthermore, unless otherwise specified, in subsequent experiments, we will employ the GMCM algorithm with an event number of 10,000 and compare it to other advanced denoising algorithms (Table 2).

Fig. 3
figure 3

The SNR scores of the GMCM Algorithm Under Different Event Num

Table 2 Comparison of SNR scores on DVSCLEAN dataset

4.3 First step of GMCM: Gaussian denoising preprocessing

First, all data are impartially segregated into distinct groups of event streams, predicated on the pre-established Event Num values. As shown in Fig. 4, for each Event Num, the MS-Max surpasses NS-Max. Concomitant with the augmentation of Event Num, both MS-Max and NS-Max exhibit a gradual diminution. Furthermore, at identical Event Num, MS-Max and NS-Max manifest discrepancies under varying illumination conditions, namely low, normal, and overexposure. Additionally, different objects, such as diffuse objects and highly reflective objects (e.g., Statue and Metal Iron), alongside varying motion paradigms (e.g., linear motion and rolling as observed in Statue and Basketball), impart distinct impacts on MS-Max and NS-Max. The experimental results demonstrate that the proposed adaptive threshold effectively incorporates the impacts of object material, motion modality, light intensity, and Event Num on MS-Max and NS-Max. The adaptive threshold can successfully distinguish Motion Stream and Noise Stream.

Fig. 4
figure 4

Histograms and curves showing the Gaussian maximum value and threshold value under different object materials, motion modes, light brightness, and Event Numbers. In addition, the Gaussian maximum value of Noise Stream (abbreviated as NS-Max) refers to the largest Gaussian maximum value in all Noise Streams; the Gaussian maximum value of Motion Stream (abbreviated as MS-Max) refers to the smallest Gaussian maximum value in all Motion Streams

4.4 Second step of GMCM: Motion denoising

Comparisons between the GMCM and CM algorithms are performed to evaluate their denoising performances in terms of motion, lighting scenes, and object materials. As shown in Figs. 5, 6, 7, for low light, normal light, and overexposure scenes, although the CM algorithm effectively eliminates noise in the event stream generated by the linear motion of both diffuse reflection objects and highly reflective objects, it also eliminates a significant large number of valid events. In addition, subsequent to processing via the CM algorithm, a considerable amount of noise still remains in the events generated by the rolling. However, regardless of the type of scene, our GMCM algorithm manifests superior capability, mitigating extensive noise and concurrently retaining a more considerable number of valid events.

Fig. 5
figure 5

Raw event data, the CM denoised, and the GMCM denoised event data under low illumination

Fig. 6
figure 6

Raw event data, the CM denoised, and the GMCM denoised event data under normal illumination

Fig. 7
figure 7

Raw event data, the CM denoised, and the GMCM denoised event data under overexposure

Moreover, the denoising performance of our GMCM algorithm demonstrates diminished sensitivity to Event Num. As shown in Fig. 8, with the reduction of Event Num from 30,000 to 10,000, the CM algorithm eradicates numerous valid events. In contrast, the GMCM algorithm still well preserves of valid events. These results indicate that the GMCM algorithm exhibits enhanced stability and robustness, making it more reliable in denoising event data across different event densities.

Fig. 8
figure 8

Raw event data, the CM denoised, and the GMCM denoised CM denoised event data at different Event Num

4.5 Comparison with other denoising algorithms

Leveraging the DVSNOISE20 dataset [13], the denoising performance of the proposed GMCM algorithm is compared to other algorithms, including the spatiotemporal correlation filter [31], Ev-gait [32], GEF [33], EDnCNN [13], and EventZoom [18]. The DVSNOISE20 dataset is a benchmark dataset, encompassing 16 disparate scenes captured with minimal camera movement and static objects. It is important to acknowledge that, due to the unavailability of the source code for the majority of denoising algorithms, we refer to the data graph from ref. [18]. Although DVSNOISE20 dataset was collected by DAVIS346, whose output size is 346 × 260, ref. [18] modified its dimensions.

Consequently, to maintain consistency in comparison, our images preserve the original camera dimensions.

Both our GMCM algorithm and the spatial–temporal correlation-based filter algorithm[31] are entrenched in model-based denoising methods. When contrasted with the filter algorithm, our GMCM algorithm can more effectively distinguish noise and real events (as shown in Fig. 9). Additionally, compared to the neural network-based denoising algorithms, our GMCM algorithm surpasses several, including GEF and EV-gait (as shown in Fig. 10), and it is slightly inferior to state-of-the-art methods such as EDnCNN and EventZoom. However, neural network-based denoising algorithms necessitate substantial volumes of labeled data for training—a prerequisite often elusive for event datasets, particularly within intricate scenes. Therefore, our GMCM algorithm emerges as a prospective alternative in the domain of event denoising, mitigating the aforementioned challenges.

Fig. 9
figure 9

a APS frame. b Raw event frame c denoising results based on filters. d Denoising results of the GMCM algorithm

Fig. 10
figure 10

ad Denoising algorithm based on neural network. (e) Denoising results of the GMCM algorithm

To quantitatively evaluate the denoising performance, we employ the DVSCLEAN dataset [14] which provides distinct labels for the simulated data. Here, the index of SNR proposed in ref [14] is adopted to evaluate the performance of denoising. The SNR for benchmarking denoising performance is described as:

$$ {\text{SNR}} = 20 \cdot \log_{10} ({\text{EN}}/{\text{NN}}) $$
(11)

where EN and NN refer to the number of real events and noise events remaining after denoising, respectively. As shown in Eq. 11, a higher SNR value denotes superior denoising efficacy. Compared to other SOTA denoising algorithms, such as EDnCNN [13], AEDNet [14], ICM [22], Liu et al. [31], and STP [40], our GMCM algorithm achieves the highest SNR scores at both 50% and 100% noise ratio. Specifically, at a 50% noise ratio, our GMCM algorithm achieves the SNR score of 37.22, and at a 100% noise ratio, it achieves the SNR score of 26.79. These outcomes underline the proficiency of our GMCM algorithm in discriminating between noise and valid events, even in environments saturated with substantial noise levels within the experimental spectrum.

4.6 Computational time

Benchmarking of the runtime for traditional denoising algorithms is summarized in Table 3. Experimental outcomes illustrate that, in contrast to the enhanced CM algorithm without Gaussian denoising preprocessing (denoted as MCM), our GMCM algorithm showcases a markedly improved runtime. This suggests that Gaussian denoising preprocessing can bolster computational efficiency, curbing unnecessary computational drain. Compared with Liu et al.[31], GMCM algorithm outperforms in terms of runtime, realizing a boost in computational efficiency of 166%.

Table 3 Comparison of average denoising runtimes for DVSNOISE20, DVSCLEAN, and our proprietary experimental dataset. (Units: seconds)

5 Conclusion

In conclusion, a two-step GMCM algorithm for event denoising is proposed, encompassing Gaussian denoising preprocessing and motion denoising algorithm. The experimental results show that the GMCM algorithm not only effectively distinguishes the Motion Stream and Noise Stream but also curtails unnecessary computational resource expenditure. Compared to the advanced spatiotemporal filter algorithm, the GMCM algorithm has achieved an upgraded computational efficiency of 166% in run time. Moreover, the GMCM algorithm achieves excellent denoising performances on DVSNOISE20 dataset and obtains the highest SNR score on DVSCLEAN dataset. In addition, low sensitivity to the number of events and high robustness to noise exhibited by the GMCM algorithm are other merits. The proposed two-step GMCM algorithm framework provides a new way to implement event denoising.