Reverberation suppression using nonnegative matrix factorization to detect lowDoppler target with continuous wave active sonar
Abstract
In active sonar systems, the detection of echo from targets can deteriorate due to reverberation. Detection becomes more difficult if targets have lowDoppler frequency and are located near the reverberation band, especially in an environment with low signaltoreverberation ratio. In this paper, we propose an algorithm for the reverberation suppression of continuous wave signals using nonnegative matrix factorization. To extract the target echo signal mixed with reverberations, the bases for the target echo and the reverberation are independently defined, and different constraints are applied for their corresponding estimation. We also derive constraints on temporal continuity and temporal length to estimate bases for the target echo. Experiments using simulated reverberations are performed to evaluate the proposed algorithm, and the results show an enhancement in the signaltonoise ratio by 6–15 dB, as well as in the detection probability at several signaltoreverberation ratios. Moreover, an experiment is conducted using reverberation measured from an ocean, and the results show that the proposed algorithm can effectively suppress reverberation and enhance detection performance in practical settings.
Keywords
Active sonar Reverberation Continuous wave signal Nonnegative matrix factorizationAbbreviations
 AR
Autoregressive
 CW
Continuous wave
 FP
False positive
 NMF
Nonnegative matrix factorization
 PCI
Principal component inverse
 ROC
Receiver operating characteristic
 SNR
Signaltonoise ratio
 SRR
Signaltoreverberation ratio
 SSE
Signal subspace extraction
 TLL
Temporal length limitation
 TP
True positive
1 Introduction
Active sonar is used to detect a target under water using a reflected ping. However, in addition to reflection from the target, the received signal contains reverberations caused by reflection from scatterers. Conventional target detection algorithms, including the matched filter, are sensitive to reverberations, and extensive research has been conducted to improve detection in this condition [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].
Although the reverberation can be addressed by the beamformer, adequate suppression of the reverberation is not achieved. In case of the lowDoppler target, the target echo is located in the mainlobe and sidelobe of the beamformer, so additional algorithm is required to suppress the reverberation [1, 2]. Methods of reverberation mitigation are twofold: transmission pulse design at the transmitter and signal processing for reverberation suppression at the receiver. Continuous wave (CW) pulses are commonly used active sonar signals used to detect targets because this type of pulse allows the easy location of targets in the rangeDoppler resolution but is vulnerable to reverberations [3]. On the contrary, linear frequencymodulated pulses are robust against reverberation but deliver a lowDoppler resolution [4]. Some research has focused on the generation of specific types of pulses, such as the geometric comb [5], tripletpair comb [4], and other Dopplersensitive pulses [2, 3], to handle reverberations. Although such pulses can mitigate the effects of reverberations, they cannot suppress them. Moreover, CW pulses and some variants [2] are still widely used in active sonar systems. Consequently, signal processing for suppressing reverberation at the receiver is needed, and some algorithms have been proposed in this vein [6, 7, 8, 9, 10, 11].
For instance, algorithms based on whitening with autoregressive (AR) models have been developed [6, 7] for reverberation suppression. However, the effectiveness of this approach deteriorates when the Doppler shifts of the reverberation and the target echo are similar. To overcome this limitation, algorithms based on principal component inversion (PCI) have been developed [8, 9, 10]. The signal subspace extraction (SSE) algorithm has recently been proposed as an improvement to the PCIbased algorithm by expressing the reverberation model as a sum of higher and lower reverberation echoes [11].
In this paper, we focus on reverberation suppression for the detection of lowDoppler targets. Such targets can be easily confused with clutter in reverberation. The lowDoppler target detection problem occurs more frequently when the receiver moves because the energy of the reverberation spreads over a frequency range proportional to the speed of the receiver [12]. Therefore, we also consider a moving receiver to develop a reverberationsuppression algorithm. Specifically, we use nonnegative matrix factorization (NMF), a segmented signal representation [13], to suppress reverberations. While PCIbased algorithms detect the desired signal using only low ranks, we propose using signal characteristics in the time–frequency domain.
NMF decomposes a nonnegative matrix into a multiplication of two nonnegative matrices [13]. The spectrogram of frequency and the time basis matrices can then be analyzed, as has been shown for sound signals [14]. Iterative algorithms for the NMF based on the multiplicative update rule were first developed for the cost functions of the Euclidean distance and the Kullback–Leibler divergence [15] and were then expanded to other distance measures, such as Itakura–Saito divergence [16] and beta divergence [17]. Several update rules have also been researched, such as the alternating least squares [18] and expectationmaximization [19] algorithms. The application of NMF to music and speech signal processing have been researched actively to analyze music signals [20, 21], separate the desired source signals from the received signals [22, 23], and to denoise speech signals [24, 25]. NMFbased algorithms are not limited to the processing of monochannel signals and can also deal with multichannel acoustic signals [19, 26]. Although NMFbased algorithms for music and speech signals have been researched, it is challenging to find NMFbased sonar signal processing algorithms, excluding those for sonar image recognition [27]. Both the PCA and NMF algorithms are matrix decomposition techniques, and the NMF algorithm has advantage for analyzing the sparse components of a matrix, which is called “the partbased representation,” compared to the PCA algorithm [13]. It is expected that the NMF algorithm is also suitable for finding the target echo because the spectrogram of the target echo is a sparse component of the spectrogram of the entire received signal.
The main contribution of this research article is the design of NMFbased reverberation suppression in continuous wave active sonar, as no research has applied the NMF method to this problem, to the best of the authors’ knowledge. To develop the reverberation suppression algorithm, we divide NMF bases into two parts—echo bases and reverberation bases—and design a constraint to discriminate between them. We apply two constraints, on the temporal length and temporal continuity. The former constraint and its estimation algorithm are novel whereas the latter constraint is developed by Virtanen [22].
The remainder of this paper is organized as follows: Section 2 presents the problem statement for this study and describes the time–frequency characteristics of the target echo and reverberation considering a moving receiver. Section 3 details the proposed NMFbased algorithm, and Section 4 describes the results of simulation and measurements using the proposed algorithm. Finally, we draw the conclusions of this article in Section 5.
Notation used in the paper
A  Matrix A 
a  Vector a 
\(\mathbf {A} \in \mathbb {R}_{K \times N}^{+}\)  K×N matrix whose elements are nonnegative real numbers 
\(\mathbf {A} \in \mathbb {R}_{K \times N}\)  K×N matrix whose elements are real numbers 
1 _{ K× N}  A K×N matrix whose elements are all one. 
a_{(k,n)} or [A]_{(k,n)}  An element of the matrix A in kth row and nth column 
a ^{( t)}  The updated value of a after t iterations 
A⊗B  Hadamard (elementwise) multiplication of A and B 
A/B  Elementwise division of A and B 
A ^{ T}  Transpose of A 
A _{ ↑ d}  Upward shift of matrix A by d rows 
A _{← d}  Left shift of matrix A by d columns 
A _{→ d}  Right shift of matrix A by d columns 
∇_{A}C  The gradient of C with respect to A 
\(\nabla ^{+}_{\mathbf {A}}C\)  Positive parts of the gradient of C with respect to A 
\(\nabla ^{}_{\mathbf {A}}C\)  Negative parts of the gradient of C with respect to A 
2 Problem statement
where S_{t}(f) is the Fourier transform of s_{t}(t).
where V is the speed of the receiver, c is the speed of sound, and ψ_{i} is the angle between the direction of motion of the sonar and each scatterer. Equation (5) shows that the spectrum of reverberation has a range of frequency \(  \left (\frac {2V}{c}\right) f_{0} < f < \left (\frac {2V}{c} \right) f_{0}\) and, hence, has a wider band than the echo signal when the sonar receiver moves.
In this study, we extract the target echo signal from a received signal that contains reverberation. To this end, we analyze the spectrogram of the mixed signal by using NMF with distinctive characteristics of the target echo signal, as detailed below.
3 Proposed method
3.1 Nonnegative matrix factorization
and C(W,H) is an arbitrary cost function containing a divergence function and additional constraints.
3.2 Basis estimation

Is a frequencyshifted replica of the transmitted ping

Has continuous values along the time axis (unlike those of reverberations, which randomly fluctuate)

Is short and limited in the time domain (unlike reverberations, which are persistent)
where \(\mathbf {W_{P}} \in \mathbb {R}_{K \times R_{P}}^{+}\) and \(\mathbf {H_{P}} \in \mathbb {R}_{R_{P} \times N}^{+}\) are the frequency and time bases of the echo basis group, \(\mathbf {W_{R}} \in \mathbb {R}_{K \times R_{R}}^{+}\) and \(\mathbf {H_{R}} \in \mathbb {R}_{R_{R} \times N}^{+}\) are those of the reverberation basis group, respectively, and R_{P} and R_{R} are numbers of echo and reverberation bases, respectively. Then, each basis group should be estimated separately as described below.
Therefore, the strategy of dividing into basis groups can help identify the energy contribution of each group to the spectrogram, if we apply appropriate constraints. This strategy enables easy application of prior knowledge of frequency and temporal structures, so it is widely used in current research for source separation and speech signal denoising problems [28].
3.2.1 Echo bases
As the target echo signal has a frequency similar in structure to the Dopplershifted transmitted ping, the frequency basis matrix consists of Dopplershifted replicas of frequency basis w_{T} of the transmitted ping.
where w_{T,↑d} is a dbinshifted version of w_{T}, and D is the maximum number of bins of the Doppler shift to be observed. As shown in Eq. (19), the number of echo bases R_{P} is 2D+1. Equations (17)–(19) depend only on the transmitted ping and not on the received signal. Hence, the iterative process can be carried out initially and W_{P} is fixed during runtime.
where [A]_{(r,n)} is the (r,n) element of matrix A.
3.2.2 Reverberation bases
3.2.3 Reconstruction of the target echo signal
To construct a complex spectrogram, phase information is needed. In several NMFbased algorithms, either the phase from the original spectrogram is used [22] or an approach based on the Wiener filter is applied to the original spectrogram [19]. We observed a similar performance by both methods, but prefer the phase of the original spectrogram because it allows the easy construction of the complex spectrogram. The estimated target echo signal \(\hat {s}_{e} (t)\) is then obtained by the inverse shorttime Fourier transform.
Proposed algorithm
H_{P}, W_{R}, and H_{R} are randomly initialized with nonnegative values, and W_{P} is initialized using (17), (18), and (19). Following initialization, the following process is iteratively performed until convergence: 
1. \(\nabla _{\mathbf {H_{P}}}^{+}C_{E}\), \(\nabla _{\mathbf {H_{P}}}^{}C_{E}\), \(\nabla _{\mathbf {H_{P}}}^{+}C_{T}\), \(\nabla _{\mathbf {H_{P}}}^{}C_{T}\), \(\nabla _{\mathbf {H_{P}}}^{+}C_{L}\), and \(\nabla _{\mathbf {H_{P}}}^{}C_{L}\) are calculated using (27), (28), (31), (32), (36), and (37), respectively; 
2. \(\nabla _{\mathbf {H_{P}}}^{+}C\) and \(\nabla _{\mathbf {H_{P}}}^{}C\) are calculated using (23) and (24), respectively, and H_{P} is updated using (25); 
3. H_{R} is updated using (38); 
4. H is updated with H_{P} and H_{R} using (14); 
5. W_{R} is updated using (39); 
6. W is updated with W_{R} using (13). 
Following convergence, the resulting spectrogram \(\mathbf {\hat {V}}_{\text {out}}\) is calculated using (40). 
3.2.4 Considerations on the convergence of the algorithm
Lee and Seung [15] proved that the cost function is nonincreasing when the multiplicative update processes (Eqs. (9) and (10)) minimize the Kullback–Leibler divergence. Convergence is proved by designing an auxiliary function for the objective functions. The detailed proof can be found in [15, 17] and is briefly reviewed in Appendix 2.
It is difficult to show that convergence is guaranteed when the NMF contains additional constraints because finding an appropriate auxiliary function is difficult. However, we expect that the iterative algorithm converges well if α and β are small, owing to the nonincreasing property of the multiplicative update rules for the Kullback–Leibler divergence. Instead of a theoretical analysis of the convergence condition, we check the convergence of the objective function with varying α and β in the simulation experiments presented in Section 4. We observe that the objective function converges well in most cases except for those with very large values of α and β, such as 10^{4}.
4 Results and discussion
4.1 Simulation with synthesized reverberation
To evaluate the proposed algorithm, we perform simulations with synthesized reverberations. Specifically, a sonar system transmits CW ping signals of 50 ms and moves forward with speed V such that \(\frac {2V}{c}=0.07\). The reverberation is synthesized using the nonRayleigh underwater reverberation model [29]. Moreover, the target echo signal is received at 600 ms and the normalized Doppler (f_{d}/f_{0}) of the target echo is 0.036 for this simulation.
To apply the proposed algorithm, we use the shorttime Fourier transform for the received signal with a 16ms Hamming window, a 75% overlap, and 128 Fourier transform points. The number of basis vectors for the echo R_{P} and reverberation R_{R} of the proposed algorithm are set to 19 and 60, respectively, and the weight factors for temporal continuity and TLL constraints, α and β, are set to 1.0 and 10.0, respectively. The expected ping length l_{n} is set to 50 ms. The proposed algorithm is compared with the PCI [9], autoregressive (AR) prewhitening [10], and SSE [11] algorithms. The length of the time frame and the order of the AR model are set to 64 ms and 20, respectively, and these values are selected as the optimal ones through trial and error. The thresholds for eigenvalues of the PCI and SSE algorithms are set to optimal values, assuming that the power of the reverberation is known.
Because the computational complexities of the SSE and PCI algorithms depend on the singularvalue decomposition used, it is challenging to compare the complexities of the algorithms. We thus measure the computation times on a laptop with a 3.5GHz CPU and 16 GB of memory. All the tested algorithms are implemented in MATLAB, and the SSE and PCI algorithms use the builtin functions for singularvalue decomposition. For a 1s long signal, the proposed algorithm with 200 iterations requires 0.7 s, whereas the AR and SSE (PCI) algorithms require 0.025 and 0.6 s, respectively. The calculation times of the SSE and PCI algorithms are nearly identical. The proposed algorithm thus requires more calculation time than the conventional algorithms.
4.2 Simulation with measured reverberation
Having verified the performance of the proposed algorithm through a simulation, we test it on reverberation measurements acquired at the Eastern Sea of Pohang in the Republic of Korea from a 1s transmitted CW ping. The reverberation of the CW signal is measured by a nested towed array consisting of 48 sensors moving at four knots.
During this experiment, we assume an input SRR of −12 dB, and the target echo is received after 2 s with a normalized Doppler of 1.0025. Its signal is thus interfering with the reverberation. We apply the shorttime Fourier transform to the received signal with a 133ms Hamming window, 75% overlap, and 2048 transform points. As for the simulations with synthesized reverberation, temporal continuity, and TLL weights, α and β are set to 1.0 and 10.0, respectively, and the expected ping length l_{n} is set to 1 s. The length of the time frame and the order of the AR model are set to 530 ms and 50, respectively, and these values are selected as the optimal ones through trial and error. The thresholds for eigenvalues of the PCI and SSE algorithms are set to optimal values, assuming that the power of the reverberation is known.
5 Conclusion
In this work, the detection performance of the target echo from CW ping signals is enhanced in the presence of reverberations. To this end, a reverberation suppression algorithm is proposed based on NMF and distinguishing characteristics between the target echo and reverberations. Specifically, three characteristics of the target are considered: the frequency structure of the target echo is similar to that of the Dopplershifted transmitted signal, the target echo has timecontinuous values, and the target echo has relatively short and finite duration. To use these characteristics, the frequency bases of the target echo are fixed by frequencyshifted transmitted pings, and constraints on the temporal continuity and TLL are developed.
Experiments are conducted with both simulated and measured reverberations to evaluate the proposed algorithm. The results of the simulations show the ability of the proposed algorithm to find the target echo signal by enhancing SNR from 6 to 15 dB compared to that of the received signal. ROC curves calculated by a Monte Carlo simulation confirm that the proposed algorithm enhances detection probability with a low false alarm rate. The performance of the proposed algorithm is also verified in an ocean by measuring the reverberations. Overall, the results show that the proposed algorithm suppresses reverberations and enhances detection performance in simulations and practice. Expanding our algorithm to multichannel sonar signals and analyzing the convergence of the constrained NMF are expected to be considered in our future work.
6 Appendix 1: Gradients of the TLL constraints
The TLL penalty takes values between zero and one per basis r. As shown in (46), the maximum value of \({\sum \nolimits }_{m=n}^{n+l_{n}1} \hat {h}_{p,(r,m)}\) is one, thus limiting the value of the constraint.
and \(\forall \hat {h}_{p,(r,m)} \ge 0\).
Figure 16f shows the TLL constraint using softmax, which has a similar structure to that obtained using max, as shown in Fig. 16e. Thus, softmax can be used instead of max to design the constraint for the lengthlimited basis.
7 Appendix 2: Review of convergence analysis of the NMF algorithm
Lee and Seung [15] and Nakano et al. [17] showed the nonincreasing property of multiplicative update algorithms by designing an auxiliary function that satisfies Eqs. (53) and (54) based on Jensen’s inequality [17] and by deriving the multiplicative update algorithm from Eq. (55).
Notes
Acknowledgements
This paper was supported by the Agency for Defense Development (ADD) in Korea (UD160015DD).
Authors’ contributions
SL and JSL conceived and designed the study. JSL defined the problem and directed the study. SL developed the detailed algorithm and performed the experiments. Both authors read and approved the final manuscript.
Competing interests
The authors declare that they have no competing interests.
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
References
 1.K. Mio, Y. Chocheyras, Y. Doisy, in Oceans 2000 MTS/IEEE Conference and Exhibition, vol. 2. Space time adaptive processing for low frequency sonar (IEEEPiscataway, 2000), pp. 1315–1319.CrossRefGoogle Scholar
 2.Y. Doisy, L. Deruaz, S. van IJsselmuide, S. Beerens, R. Been, Reverberation suppression using wideband Dopplersensitive pulses. IEEE J. Oceanic Eng. 33(4), 419–433 (2008).CrossRefGoogle Scholar
 3.T. Collins, P. Atkins, Dopplersensitive active sonar pulse designs for reverberation processing. IEE Proc.Radar, Sonar Navig. 145(6), 347–353 (1998).CrossRefGoogle Scholar
 4.J. Alsup, in 33rd Asilomar Conference on Signals, Systems, and Computers, vol. 2. Comb Waveforms for Sonar (IEEEPiscataway, 1999), pp. 864–869.Google Scholar
 5.H. Cox, H. Lai, in Proceedings of 28th Asilomar Conference on Signals, Systems and Computers, vol. 2. Geometric comb waveforms for reverberation suppression (IEEEPiscataway, 1994), pp. 1185–1189.Google Scholar
 6.S. Kay, J. Salisbury, Improved active sonar detection using autoregressive prewhiteners. J. Acoust. Soc. Am. 87(4), 1603–1611 (1990).CrossRefGoogle Scholar
 7.V. Carmillet, G. Jourdain, in OCEANS’96 MTS/IEEE Prospects for the 21st Century, vol. 3. Wideband sonar detection in reverberation using autoregressive models (IEEEPiscataway, 1996), pp. 1435–1440.CrossRefGoogle Scholar
 8.G. Ginolhac, G. Jourdain, in OCEANS 2000 MTS/IEEE Conference and Exhibition, vol. 2. Detection in presence of reverberation (IEEEPiscataway, 2000), pp. 1043–1046.CrossRefGoogle Scholar
 9.G. Ginolhac, G. Jourdain, “Principal component inverse” algorithm for detection in the presence of reverberation. IEEE J. Oceanic Eng. 27(2), 310–321 (2002).CrossRefGoogle Scholar
 10.W. Li, X. Ma, Y. Zhu, J. Yang, C. Hou, Detection in reverberation using space time adaptive prewhiteners. J. Acoust. Soc. Am. 124(4), 236–242 (2008).CrossRefGoogle Scholar
 11.W. Li, Q. Zhang, X. Ma, C. Hou, Active sonar detection in reverberation via signal subspace extraction algorithm. EURASIP J. Wirel. Commun. Netw. 2010(1), 11 (2010).CrossRefGoogle Scholar
 12.W. Burdic, Underwater Acoustic System Analysis (Prentice Hall, NJ, 1991).Google Scholar
 13.D. Lee, H. Seung, Learning the parts of objects by nonnegative matrix factorization. Nature. 401(6755), 788–791 (1999).CrossRefGoogle Scholar
 14.P. Smaragdis, J. C. Brown, in IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, vol. 3. Nonnegative matrix factorization for polyphonic music transcription (IEEEPiscataway, 2003), pp. 177–180.Google Scholar
 15.D. D. Lee, H. S. Seung, in Advances in Neural Information Processing Systems. Algorithms for nonnegative matrix factorization (MIT PressCambridge, 2001), pp. 556–562.Google Scholar
 16.C. Févotte, N. Bertin, J. L. Durrieu, Nonnegative matrix factorization with the ItakuraSaito divergence: with application to music analysis. Neural Comput. 21(3), 793–830 (2009).CrossRefGoogle Scholar
 17.M. Nakano, H. Kameoka, J. Le Roux, Y. Kitano, N. Ono, S. Sagayama, in Machine Learning for Signal Processing (MLSP), 2010 IEEE International Workshop On. Convergenceguaranteed multiplicative algorithms for nonnegative matrix factorization with βdivergence (IEEEPiscataway, 2010), pp. 283–288.CrossRefGoogle Scholar
 18.H. Kim, H. Park, Nonnegative matrix factorization based on alternating nonnegativity constrained least squares and active set method. SIAM J. Matrix Anal. Appl. 30(2), 713–730 (2008).MathSciNetCrossRefGoogle Scholar
 19.A. Ozerov, C. Févotte, Multichannel nonnegative matrix factorization in convolutive mixtures for audio source separation. IEEE Trans. Audio Speech Lang. Process. 18(3), 550–563 (2010).CrossRefGoogle Scholar
 20.E. Vincent, N. Bertin, R. Badeau, in Acoustics, Speech and Signal Processing, 2008. ICASSP 2008. IEEE International Conference On. Harmonic and inharmonic nonnegative matrix factorization for polyphonic pitch transcription (IEEEPiscataway, 2008), pp. 109–112.CrossRefGoogle Scholar
 21.E. Benetos, S. Cherla, T. Weyde, in 6th International Workshop on Machine Learning and Music. An efficient shiftinvariant model for polyphonic music transcription (ACMNew York, 2013).Google Scholar
 22.T. Virtanen, Monaural sound source separation by nonnegative matrix factorization with temporal continuity and sparseness criteria. IEEE Trans. Audio Speech Lang. Process. 15(3), 1066–1074 (2007).CrossRefGoogle Scholar
 23.S. Ewert, M. Müller, in Acoustics, Speech and Signal Processing (ICASSP), 2012 IEEE International Conference On. Using scoreinformed constraints for NMFbased source separation (IEEEPiscataway, 2012), pp. 129–132.CrossRefGoogle Scholar
 24.K. W. Wilson, B. Raj, P. Smaragdis, A. Divakaran, in Acoustics, Speech and Signal Processing, 2008. ICASSP 2008. IEEE International Conference On. Speech denoising using nonnegative matrix factorization with priors (IEEEPiscataway, 2008), pp. 4029–4032.CrossRefGoogle Scholar
 25.N. Mohammadiha, P. Smaragdis, A. Leijon, Supervised and unsupervised speech enhancement using nonnegative matrix factorization. IEEE Trans. Audio Speech Lang. Process. 21(10), 2140–2151 (2013).CrossRefGoogle Scholar
 26.S. Lee, S. H. Park, K. M. Sung, Beamspacedomain multichannel nonnegative matrix factorization for audio source separation. IEEE Sign. Process. Lett. 19(1), 43–46 (2012).CrossRefGoogle Scholar
 27.Y. L. Hao, L. Wang, in Advanced Materials Research, vol. 383. Compressed sensing recognition algorithm for sonar image based on nonnegative matrix factorization and adjacency spectra feature (Trans Tech PublSingapore, 2012), pp. 5818–5823.Google Scholar
 28.C. Joder, F. Weninger, F. Eyben, D. Virette, B. Schuller, in International Conference on Latent Variable Analysis and Signal Separation. Realtime speech separation by semisupervised nonnegative matrix factorization (SpringerBerlin, 2012), pp. 322–329.CrossRefGoogle Scholar
 29.D. Abraham, A. Lyons, Simulation of nonrayleigh reverberation and clutter. IEEE J. Oceanic Eng. 29(2), 347–362 (2004).CrossRefGoogle Scholar
Copyright information
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.