1 Introduction

In different neutron measurement experiments, the goal is often to measure neutron absorption cross-sections at different neutron energies. Alternatively, a neutron source from a research reactor or from an accelerator can be detected using a scintillation detector in the presence of a high degree of gamma background. Accordingly, the discrimination between neutron and gamma events is a very vital process for nuclear physics applications. The basis for discrimination is that neutrons are detected through proton recoil, which has slower scintillation response than that of gamma ray detection performed through Compton electron scattering. Thus, the pulses from the detector will have a faster decay for gamma interactions and a slower decay for neutron interactions, as shown in Fig. 1.

Fig. 1
figure 1

Decay from neutron and gamma induced scintillation pulses

In most nuclear applications, Pulse Shape Discrimination (PSD) is used for the discrimination of radiation type. For example, the neutron-gamma discrimination is based on the detector response time variation, as it gives different rise or decay times when stimulated by a gamma or a neutron pulse. Conventionally, this phenomenon has been extensively studied using analogue PSD techniques including two widely used methods. The first one depends on the rising time and is characterized by a simple measurement of the time interval between the 10% and 90% of the amplitude of the integrated pulse [1]. The second method is the charge comparison that implies the determination of the relative weight of the amount of light emitted respectively in the fast and slow components of the light pulse [2].

The availability of high-speed waveform digitizers with sampling times of orders less than 1 ns has made possible the complete digitization of pulses from liquid scintillators on an event-by-event basis. Accordingly, all the signal information as energy, time, and pulse shape can be acquired. Moreover, complicated data analysis that is difficult in analogue systems can be performed. For example, Jastaniah et al. [3] used the digital pulse rise time to achieve good neutron-gamma discrimination in boron loaded liquid scintillator. In 2014, Al-Shbatat [4] presented a time domain method for the neutron-gamma discrimination based on pulse integration using numerical methods like trapezoidal, Simpson’s, and rectangular integration methods. The discrimination results indicated that all methods of integration are satisfactory although they did not give complete discrimination at low energies. However, the Simpson’s method and Trapezoidal method achieved better discrimination than the rectangular method, especially at low energies.

Recently, Chuan et al. [5] presented four neutron-gamma discrimination methods with EJ-301 scintillator. The four methods are Threshold Crossing Time (TCT), Pulsed Gradient Analysis (PGA), Charge Comparison (CC), and Correlation Pattern Recognition (CPR). The results indicated that the TCT method has an average glade neutron gamma resolution but it is simple and noise-resistant. It could be applied for simple cases, where high resolution is not required. The CPR and CC methods have good discrimination, but limited performance at low energy thresholds. The CC strongly depends on linearity and deformation of the pulse tail, leading to the dependence on linearity and noise resistance of the preamplifier. The CPR depends on the typical pulse. Therefore, in case of dispersed pulses, its performance is limited. Qiao et al. [6] used the convolution neural networks to discriminate between double the beta decay signal and background from high energy gamma rays.

Liang et al. [7] designed an array of Silicon Photo-Multiplier (SiPM) coupled to lithium-loaded scintillators for neutron and gamma-ray detection. Three types of Li-loaded scintillators, CLYC, CLLB, and NaIL, have been tested with a custom-designed SiPM array for temperatures between − 20 and 50 °C. Results indicated that poor discrimination occurs at high temperatures because of the thermal noise in SiPMs. A comparison of the energy resolution of neutron and gamma-ray discrimination for the three scintillators coupled to the custom SiPM array was presented in. Yang et al. [8] investigated and compared four FPGA-based digital PSD methods: Charge Comparison Method (CCM), Pulse Peak Analysis (PPA), PGA, and finite impulse response Filter Comparison Method (FCM). Yang et al. [9] incorporated Li into the matrix of NaI under an optimized crystal growth process for efficient neutron detection. They demonstrated the use of exceptional gamma-neutron PSD.

This paper presents different proposed algorithms for the discrimination process of neutron and gamma pulses by extracting the discriminating features from them by applying different signal processing techniques in both time and frequency domains. The utilized signal processing tools are matched filtering and the DWT. SVM and ANN discriminators are used for the discrimination purpose. Results of the proposed algorithm are compared with the conventional charge integration method that uses trapezoidal integration.

2 Traditional PSD based on charge-integration method

A traditional technique for PSD was introduced in [2] with a charge-integrating ADC. Two windows with different window sizes were used in this method: one to integrate the entire charge of the pulse, and the other to integrate the charge from the first prompt component or equivalently the tail component. The comparison of the two charge magnitudes reveals which particle creates the pulse, neutron or gamma ray. This method takes advantage of the difference between the expected time distribution for a heavily ionizing particle featuring a noticeable tail, and that of an electron with a much shorter tail. The choice of the two timing intervals, at which the integration of the pulse should be measured, is based upon the measurement setup and may differ from one setup to another. Similar techniques comparing the short and long, total and delayed, or total and tail components of the pulse have been proposed or used by researchers [10,11,12,13,14,15,16,17,18,19,20,21,22]. The choices are made to be consistent with the expected time distribution for a heavily ionizing particle or with that of an electron.

For example, in [10], the integral ratios of two different pulse intervals, one covering the tail and the other covering the total pulse have been calculated. These two intervals on a light pulse shape are shown in Fig. 2. T1 is the starting point of the total integral (A1), T2 is the starting point of the tail integral (A2) and Tend is the ending point of both.

Fig. 2
figure 2

Tail and total pulse integral regions for traditional charge-integration method

The timing for T2 and Tend are decided empirically based on a specific detector used to achieve optimal results. Since pulses for heavy particles have a larger fraction of light in the tail, a larger ratio of tail-to-total will be obtained for neutrons compared to lighter γ-rays. The calculated feature R of Eq. (1) accordingly is used as a discriminating feature that is used by the discriminator to distinguish neutron pulses from γ-ray pulses. The discrimination surface in this single feature case will be a discrimination line.

$$R = \frac{{ {\textit{Tail}}\; {\textit{integral}} }}{{ {\textit{Total}}\; {\textit{integral}} }} = \frac{{A_{2} }}{{A_{1} }}$$
(1)

3 Proposed PSD methods

The process of discriminating neutron and gamma rays is based on the fact that neutrons and gamma rays produce light scintillations with significantly different decay characteristics. Traditionally, neutron-gamma discrimination has been performed in the analog domain by special PSD modules. These modules work on either a part of the pulse or the entire pulse. The availability of high-speed digitizers has made it possible to digitize directly the detector signal, and several digital signal processing techniques have been reported for this purpose [22, 23]. Digital techniques can work selectively on the decaying part of the pulse resulting in better discrimination results. These digital techniques process the detector output signals with a different discriminating criterion, such as the ratio of charge integrated over two time ranges, pulse amplitude versus charge and pulse duration over a threshold. A proposed technique which is based on using different tools of signal processing for extracting features consists of two phases; a training phase and a testing phase as configured in Fig. 3.

Fig. 3
figure 3

General block diagram of the proposed pulse shape discrimination algorithm

The extracted features in the training phase are used for building a database model for each signal type. These models can be used during the testing phase to perform feature matching to discriminate the type of the input pulse.

3.1 Data description

To test the proposed PSD algorithm, simulated input signals are generated using MATLAB simulation environment and tested with the proposed methods. The mathematical fitting model presented in [24] was used for the generation of these simulated signals. This model presents a one parameter procedure for fitting the shapes of pulses produced by liquid scintillators for gamma rays and neutrons. The energy of the generated pulse is controlled by controlling the generated pulse height. The simulated pulse shape is discretized with 0.1 ns sampling time. The height of the pulse is chosen to cover low and high energies so as to observe clearly the ability of the proposed approach at lower and higher energies [10, 11]. The applied database consists of 25,000 gamma events and 22,000 neutron events with different energies. The effect of pulse height variation on the performance of the proposed algorithm can be studied by normalizing the applied input data to unity using Eq. (2) as shown in Fig. 4.

$$ x\left( n \right) = \frac{{x\left( n \right) - { \hbox{min} }\left( {x\left( n \right)} \right)}}{{\left[ {\hbox{max} \left( {x\left( n \right)} \right) - { \hbox{min} }\left( {x\left( n \right)} \right)} \right]}} $$
(2)

where x(n), min(x(n)), and max(x(n)) are the applied input radiation event, its minimum and maximum values, respectively. The proposed algorithm is then applied to both direct and normalized databases, separately.

Fig. 4
figure 4

Normalized plot of light decay from neutron and gamma induced scintillation pulses

3.2 Feature extraction

Feature extraction process in both phases is performed using two different signal processing tools and the results obtained are compared with the traditional charge integration method. This paper discusses the ability of these tools to remove or reduce the effect of noise in order to increase the discrimination rate. The DWT and matched filtering are utilized in this paper.

3.2.1 Feature extraction using matched filter

Matched filter is a linear filter designed for detecting the waveform presence of a known structure buried in noise. The output of a matched filter will typically exhibit a sharp peak in response to the presence of the desired waveform (or pulse) at its input, which will maximize the Signal-to-Noise Ratio (SNR) of the detected signal. The configured system shown in Fig. 5 is used to deduce the impulse response of a matched filter that improves the SNR.

Fig. 5
figure 5

Basic matched filter

In this configuration, the matched filter is represented as a linear time invariant (LTI) system that has a time-domain impulse response h(t) and a frequency response H(ω). The input to the system is assumed to be corrupted with noise n(t). Accordingly, the output of the LTI system consists of a signal component y(t) and a noise component no(t), which can be estimated as follows [25]:

$$y_{m} \left( t \right) = x\left( t \right){ \circledast }h\left( t \right) = F^{ - 1} \left\{ {X\left( \omega \right)H\left( \omega \right)} \right\}$$
(3)
$$n_{o} \left( t \right) = n\left( t \right){ \circledast }h\left( t \right) = F^{ - 1} \left\{ {N\left( \omega \right)H\left( \omega \right)} \right\}$$
(4)

where X(ω) and N(ω) are the Fourier transforms of the input signal and noise, respectively. Signal power component of the matched filter output can be expressed in terms of signal amplitude at time td as:

$$\left| {{{y}_m}\left( {{{t}}_{{d}} } \right)} \right|^{2} = \frac{1}{{2\uppi}}\left| {\mathop \smallint \limits_{ - \infty }^{\infty } {{\text{H}}}\left(\omega \right)X\left(\omega \right)e^{{{{j}}\omega{{\it t}}_{{ d}} }} {{d}}\omega} \right|^{2}$$
(5)

The average noise power at the output of the LTI system can also be estimated in terms of spectral density Sn(ω) of the noise entered to that system as [25]:

$$ \left| {{{\rm n}}_{{\rm o}} \left( {{\rm t}} \right)} \right|^{2} = \mathop \smallint \limits_{ - \infty }^{\infty } {{\rm S}}_{{\rm n}} \left(\upomega \right)\left| {{{\rm H}}\left(\upomega \right)} \right|^{2} {{\rm d}}\upomega $$
(6)

Now, by estimating signal and noise power at the output of the filter, it is easy to estimate the SNR at the output of the matched filter by the following equation: [25]

$$SNR = \frac{{\left| {y_{m} \left( {t_{d} } \right)} \right|^{2} }}{{\left| {n_{o} \left( t \right)} \right|^{2} }} = \frac{{\frac{1}{{2\uppi}}\left| {\mathop \smallint \nolimits_{ - \infty }^{\infty } {{\rm H}}\left(\upomega \right)X\left(\upomega \right){{\rm e}}^{{{{\rm j}}\upomega{{\rm t}}_{{\rm d}} }} {{\rm d}}\upomega} \right|^{2} }}{{\mathop \smallint \nolimits_{ - \infty }^{\infty } {{\rm S}}_{{\rm n}} \left(\upomega \right)\left| {{{\rm H}}\left(\upomega \right)} \right|^{2} {{\rm d}}\upomega}}$$
(7)

The objective now is to find the impulse response and frequency response of the filter that maximizes this SNR. To do this, we make use of the mathematical relationship called Cauchy–Schwartz inequality. Using some simplification processes, it is possible to find that the maximum SNR at time td can be obtained when the frequency response of the LTI model equals: [25]

$$H\left( \omega \right) = k \cdot \frac{{X^{*} \left( \omega \right)}}{{S_{n} \left( \omega \right)}}e^{{ - j\omega t_{d} }}$$
(8)

where X*(ω) is the complex conjugate of X(ω) and k is a real constant, usually positive and often set to unity. For the special case of white noise with zero mean and flat power spectrum, Sn(ω) is constant. So, the impulse and frequency response of this filter become [25]:

$$H\left( \omega \right) = k \cdot X^{*} \left( \omega \right)e^{{ - j\omega t_{d} }}$$
(9)
$$h\left( t \right) = k \cdot x^{*} \left( {t_{d} - t} \right)$$
(10)

This matched filter equation is in its continuous time-domain, however in the discrete case, it will have the form of Eq. (11) to be suitable with our input signals.

$$h\left( n \right) = k \cdot x^{*} \left( {n_{d} - n} \right),\quad n = 1,2, \ldots ,N$$
(11)

where N is the sample of length of the input radiation event. The final result indicates that the impulse response of the matched filter that enhances the SNR is equal to a time reversed copy of the input signal. Hence, for the proposed PSD algorithm, the impulse response of the matched filter will have one of two forms to reduce the effect of noise on the discrimination process. The first form is the time reversal of a gamma pulse and the other matched filter form is the time reversal of a neutron pulse. The output of each matched filter form to the different types of the input events will give different feature values according to the applied input signal. The proposed algorithm accordingly deals with each form, separately, to be able to know which of the two forms will be able to discriminate efficiently between neutron and gamma pulses. As we have also two types of databases (direct and normalized), the proposed PSD based on matched filtering will have four different organizations.

3.2.2 Feature extraction using discrete wavelet transform

The time-domain features of the signal are commonly used in most of the discrimination methods in scintillation detection systems. This paper concentrates on studying the frequency characteristics of the gamma and neutron radiation pulses. Wavelet analysis provides an exciting alternative method to Fourier analysis for signal processing. It is a mathematical operation used to segment a given input signal into different sub-bands of different scales for the purpose of separately studying each scale. Representing a signal as a series of approximation and details is the main idea of the DWT. The decomposition process is performed as indicated in Fig. 6, where signals are passed through a low-pass filter Ho(z) to produce the approximation component yWA of the applied signal and through a high-pass filtered H1(z) to get the signal detail component yWD.

Fig. 6
figure 6

The two-band decomposition-reconstruction wavelet filter bank

The wavelet basis function is chosen such that a perfect reconstruction can be achieved. For this filter bank to achieve perfect reconstruction, the following two equations must be satisfied [26].

$$H_{0} \left( z \right)G_{0} \left( z \right) + H_{1} \left( z \right)G_{1} = 2$$
(12)
$$H_{1} \left( z \right) = z^{ - k} G_{0} \left( { - z} \right)\quad and \quad G_{1} \left( z \right) = z^{k} H_{0} \left( z \right)$$
(13)

For the Haar wavelet transform, the transfer functions of the filters are given by the following transfer functions [26]:

$$H_{0} \left( z \right) = \frac{1}{2}\left( {1 + z^{ - 1} } \right),\;G_{0} \left( z \right) = \left( {z + 1} \right),\;G_{1} \left( z \right) = \frac{1}{2}\left( {z - 1} \right),\;{{\rm and}}\;H_{1} \left( z \right) = \left( {z^{ - 1} - 1} \right)$$
(14)

The approximation component of the DWT is only used for training and testing of the discriminator as the detail or high frequency component is contaminated with noise, while approximately all signal information is concentrated in the low-frequency component. Hence, removing the detailed component will remove most of the signal noise. Haar wavelet transform is used in this paper.

3.3 Discriminator

The extracted features using the different signal processing techniques discussed above are used to feed the discriminator in order to discriminate between the applied signals. In this paper, two discriminators are considered: ANN and SVM [27]. A comparison between the obtained results using SVM and ANN discriminators is performed to determine which of them is suitable for discriminating between signals.

3.3.1 Discrimination using artificial neural networks

In the proposed approach, a Multi-Layer Perceptrons (MLPs) neural network is used for the feature matching process. In this approach, the input vector X is a vector of the discriminating features with a size that differs based on the used signal processing technique. The used hidden layer of the network consists of 125 neurons. The output vector of the network is a vector containing an output for each signal type. So, the output vector in this approach consists of two outputs. ANN training is performed through adjusting the weights by minimizing the sum of the squared error between the desired output Do and the actual output Zo given by [28, 29];

$$E = \frac{1}{2}\mathop \sum \limits_{o = 1}^{O} \left( {D_{o} - Z_{o} } \right)^{2}$$
(15)

where O is the number of neurons in the output layer. The network weights are adjusted through several training iterations until a satisfactorily small value of E is obtained. Then, these weights are used for building a database model for each radiation type. During the testing phase, the discriminating feature is extracted from a noisy input database using the different estimation techniques, and then feature matching between the extracted features and the saved database models is performed. The last stage in the recognition system is the decision making that takes the matching score as its input and makes the final decision about the type of radiation.

3.3.2 Discrimination using Support Vector Machines

SVMs are a set of related supervised learning methods used for discrimination and regression [30]. They belong to a family of generalized linear identification. A special property of SVMs is that they simultaneously maximize the geometric margin and minimize the empirical discrimination error. So, SVMs are called maximum margin discriminators. A maximal separating hyperplane is constructed by mapping an input vector to a higher dimensional space. On each side of the hyperplane that separates the data, there will be a parallel hyperplane. The separating hyperplane is the hyperplane that maximizes the distance between the two parallel hyperplanes [30]. Support vectors are those training points laying on one of the two parallel hyperplanes, and whose removal would change the solution [30].

4 Results and discussion

The digital database of neutron and gamma radiation events has been analyzed for the PSD using charge integration method, matched filter response, and DWT. MATLAB simulation environment has been used for the verification of these proposed PSD algorithms. For the PSD, usually, a two dimensional scatter plot of the shape parameter versus the total charge or pulse height is used to show the ability of the system for discrimination as this shape parameter is based on the total charge or pulse height of particles.

Discrimination rate and error have been used in this paper as metrics for performance evaluation of the discrimination method. This discrimination rate represents the ability of the discrimination method to discriminate between the signals correctly even in high noisy environments. Also, discrimination error is used to clarify the ability of the proposed methods in identifying one type of the signals, while they fail in identifying the other type. White Gaussian noise has been added to the database with different SNRs to study the performance of the proposed algorithm in the presence of noise. The following results have been obtained by applying the traditional and the proposed discrimination methods to the direct and normalized signals separately using two the different discriminators.

4.1 ANN discriminator results

The discrimination has been performed using both direct and normalized noisy databases. Figure 7 illustrates the obtained discrimination rates for the different proposed PSD algorithms with ANN as a discriminator. The normalization case is illustrated in this figure by dotted lines. The obtained results of the figure represent the total error in the discrimination process which is the summation of the percentage of mis-classification in each signal type. However, the percentage of mis-classification in each signal type which is not clear from that figure is also needed to be able to know which type is identified properly by this approach. So, it is useful to reconfigure the results into a form of table, which shows the error of discriminating each type of the input radiation and the discrimination rate as illustrated in Tables 1, 2, 3 and 4. The mis-classification percentage of each signal type shown in these tables depends on the number of signal types identified incorrectly.

Fig. 7
figure 7

Discrimination rates for the different proposed PSD methods with ANN discriminator

Table 1 Discrimination results using traditional charge integration method with ANN discriminator
Table 2 Discrimination results using matched filter based on gamma pulse with ANN discriminator
Table 3 Discrimination results using matched filter based on Neutron pulse with ANN discriminator
Table 4 Discrimination results using DWT with ANN discriminator

Table 1 shows the discrimination results obtained using the traditional charge integration method with ANN for both direct and normalized database. It indicates that normalizing the input database distorts the obtained results largely as this normalization scales the area under the pulse by a factor equal to the difference between the maximum and minimum values of the pulse resulting in a reduction of the area difference between pulses. Accordingly, it degrades the discrimination rate since the main factor of the discrimination process is this area value. The indicated results confirm the ability of the charge integration method to discriminate gamma signals with a very small percentage of error in the case of applying the method on the direct signal without normalization. But, it fails in identifying neutron pulses with the same small percent of error.

Table 2 indicates the discrimination results obtained from the application of matched filter with a transfer function equal to a time-reversed radiation gamma pulse. It shows a slight enhancement in the discrimination rates compared to those of the traditional method in Table 1 for both direct and normalized input pulses. Also, it confirms the same conclusion of Table 1 that the process of normalizing the radiation pulses before applying the discrimination method negatively affects the discrimination results. The obtained results for the case of pulse normalization as shown do not improve until a value of SNR equal to 25 dB. Comparing the results of Tables 1 and 2, applying matched filter for neutron and gamma discrimination reachs a full percentage of identification rates at 15 dB compared to 20 dB for the traditional charge integration method. So, a matched filter with this impulse response slightly improves the discrimination process.

The obtained discrimination results from the application of matched filter with a transfer function equal to the time reversed radiation neutron pulse are summarized in Table 3. This transfer function approximately does not enhance the performance compared to results of Table 2 for matched filter based on gamma pulse that gives a slightly better discrimination performance. The obtained results for the normalized input database have been improved compared to Tables 1 and 2. However, slightly better results are still obtained when using direct signals. Generally, applying a matched filter with a transfer function equal to the time reversed gamma radiation pulse on the direct database signals performs better.

Table 4 shows the discrimination results of applying DWT on both direct and normalized input databases. It indicates that both the direct and normalized databases give nearly the same discrimination rates. The discrimination performance as shown in this table has been improved largely compared to the charge integration and matched filter based methods. Hence, in the case of using an ANN discriminator, it is useful to apply this DWT based approach for the discrimination of neutron and gamma events, especially when these events are detected at high noisy conditions. Also, all other approaches can be used for this purpose, but with slightly larger errors.

4.2 SVM discriminator results

In this section, an SVM with a linear kernel function has been used as a discriminator instead of the ANN discriminator. Tables 5, 6, 7 and 8 show the discrimination results using the same four discrimination methods with SVM. Figure 8 illustrate the obtained discrimination rates for the different proposed PSD algorithms with SVM as a discriminator. The normalization case is illustrated also in this figure by dotted lines.

Table 5 Discrimination results using traditional charge integration method with SVM discriminator
Table 6 Discrimination results using matched filter based on gamma pulse with SVM discriminator
Table 7 Discrimination results using matched filter based on Neutron pulse with SVM discriminator
Table 8 Discrimination results using DWT with SVM discriminator
Fig. 8
figure 8

Discrimination rates for the different proposed PSD methods with SVM discriminator

The obtained discrimination result of Fig. 8 is reconfigured in the form of tables as shown in Tables 5, 6, 7 and 8 to be able to have information about the mis-classification percentage of each signal type. The obtained results of Tables 5, 6 and 7 reveal the same conclusion where applying the normalization process did not enhance the discrimination performance as in the case of using direct not normalized inputs. Although the process of normalizing input data reduces the effect of the different energy values of the applied signals, it also increases the similarity between them and hence minimizes the discrimination rate. The obtained results for the DWT based approach in contrary achieve the highest discrimination rates when using a normalized input database as shown in Table 8 for two reasons. The first reason is that it benefits from reducing the effect of signal energy by the normalization process. The second reason is that it is not affected by the time-domain similarity between applied signals as it is based on dealing with them in the frequency domain.

It is clear from the obtained results that the extracted features from the DWT of the neutron and gamma radiation pulses succeeded efficiently for discriminating between them. The other signal processing tools can be used also for this purpose, but with slightly larger discrimination errors. The SVM discriminator results agree with the same approved idea by ANN results that normalizing the input database before applying the discrimination process does not improve the performance of the traditional and the matched filter based discrimination methods. Also, to decide which type of discriminators gives the highest discrimination rates, the obtained results using SVMs as discriminators are compared with those obtained using ANNs. The comparison proved the superiority of SVM discriminators as they achieved better performance than those of the ANN discriminators at the same noise level. Utilizing the SVM discriminator achieves another advantage as it needs slightly shorter discrimination times than the ANN discriminator. Accordingly, it is preferable for good neutron and gamma discrimination to apply the DWT based method on the normalized database with the use of the SVMs discriminator.

5 Conclusion

This paper presented different methods for discriminating between neutron and gamma radiation events. In the proposed algorithms, features from input pulses were extracted using different signal processing tools as matched filter, or DWT. The extracted features are then fed to SVM or ANN discriminators. The obtained results show that the SVM discriminator succeeded in achieving both higher discrimination rates compared to ANN discriminator at the same noise level, and shorter processing times in the identification process. This work gives a conclusion that the proposed DWT based approach can be used efficiently for the discrimination of neutron and gamma pulses in noisy conditions when applied on a normalized input database with the utilization of the SVM as a discriminator.