Professional Documents
Culture Documents
PHD Thesis Ramos
PHD Thesis Ramos
PHD Thesis Ramos
net/publication/299115975
CITATIONS READS
2 186
1 author:
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by António Luiz Lopes Ramos on 18 September 2018.
Acoustic Sniper
Positioning
Systems
Ph.D. Thesis
António L. L. Ramos
ISSN 1501-7710
This thesis is submitted to the Department of Informatics (IFI) at the University of Oslo (UiO)
for the degree of Doctor of Philosophy (Ph.D.). The research work has been carried out under
the supervision of Doctor Sigmund Gudvangen at the Buskerud and Vestfold University Col-
lege, and Professor Sverre Holm at the University of Oslo. The project was co-financed for a
four years fellowship by the Buskerud University College and by Snipos AS.
Dedication
I dedicate this work to my family, specially to Lucas and Laila, the joy of my life, for their
unconditional love. I am very grateful to my wife Vera, my son Lucas, and my daughter Laila
for their love, patience, and support throughout these years. I am also deeply grateful to my late
parents for their love, support, hard work, and personal sacrifices. I am immensely thankful for
the freedom and encouragement they gave me to seek my own path.
Acknowledgments
First and foremost, I would like to express my sincere and deepest gratitude to my supervisors
Dr. Sigmund Gudvangen and Professor Sverre Holm for their guidance, encouragement, and
inspiring ideas that made this process so much easier. I am also deeply thankful to Professor
Sverre Holm for having accepted to co-supervise this work and to share his immense knowledge
and experience in the field of signal processing.
I am grateful to Dr. Sigmund Gudvangen and Mr. Ragnvald Otterlei (CEO at Snipos AS) for the
invitation to work on this project. To Mr. Ragnvald Otterlei I am also very thankful for all his
effort to make the necessary arrangements to record the data I needed. I thank the Norwegian
Army Combat Lab for their amazing support and collaboration in the data recording process.
A special thanks goes to all my friends and colleagues at HBV in general, specially our amazing
secretary Barbro Gulbrandsen, Jamal Safi, Zoran Ðokić, and Professor Aurilla Aurelie Arntzen.
I am also thankful to Professor Arvid Siqveland, our former head of department at HiBu, for his
great support. I would also like thank Professor José Antonio Apolinário Jr. for introducing me
to the amazing field of signal processing and for the great experience to have worked with him
at the Military Institute of Engineering, Brazil. And finally, I would like to thank my co-author
Dr. Stefan Werner for the opportunity to have worked with him with such great results.
António L. L. Ramos
Kongsberg, Norway, January 2015
iii
Abstract
Automatic sniper localization systems have gained popularity in recent years, both for police
and military use. The capabilities of such systems have been gradually improving as new tech-
niques emerging from research laboratories are incorporated into the design. A gunshot event
produces characteristic acoustic and electromagnetic signatures containing sufficient informa-
tion to estimate the trajectory of the bullet and, ultimately, the sniper’s location. The acoustic
signatures comprise three distinct events: sounds of a mechanical origin (from the trigger, the
hammer, and the ejection of spent cartridges), the muzzle blast, and the ballistic shockwave.
The heat from the gun, the muzzle flash, and the bullet itself, also produce electromagnetic
signatures in the infrared and visible light range. The heat from the sniper’s body can also be
useful in some cases.
This research is concerned with acoustic counter-sniper systems. Propagation models both
for the muzzle blast and the shockwave are analyzed, and three specific problems related to the
processing of gunshot acoustic signatures are addressed: direction-of-arrival (DOA) estimation,
noise cancellation, and issues related to multipath propagation. It is shown how delay-and-
sum beamforming can be applied to obtain improved direction-of-arrival estimation of both the
shockwave and the muzzle blast. This is achieved by taking advantage of the array gain that
enhances the signal-to-noise ratio, thereby increasing the detection range. In addition, new noise
cancellation algorithms based on the spectral subtraction and the adaptive filtering methods have
been developed and applied to further improve the signal-to-noise ratio and, consequently, the
robustness and the reliability of the system.
v
List of Publications
This thesis is based on the following six publications, one book chapter and five papers which
are referred to in the text as Paper I–V.
Book Chapter:
• A. L. L. Ramos and S. Werner, “Multichannel Fast QRD-RLS Algorithms.“ In QRD-RLS
Adaptive Filtering, J. A. Apolinário Jr (Ed), pages 147–180. 1st Edition, Springer, New
York, March 2009.
Papers:
I A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei. ”Delay-and-sum beamforming
for direction of arrival estimation applied to gunshot acoustics.“ In Proc. SPIE, Sen-
sors, and Command, Control, Communications, and Intelligence (C3I) Technologies for
Homeland Security and Homeland Defense X, 80190U (May 13, 2011).
vii
Related Publications
Preliminary results of some of the publications in this thesis were partially published in the
following journal paper and conference papers:
VII A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei. ”Real-time vehicle noise cancel-
lation techniques for gunshot acoustics.“ In Proc. SPIE, Sensors, and Command, Con-
trol, Communications, and Intelligence (C3I) Technologies for Homeland Security and
Homeland Defense XI, volume 8359, pages 835917–835917–9, May 2012.
ix
Contents
Preface iii
Abstract iv
List of Publications vi
I Introductory Chapters 1
1 Introduction 3
1 The Sniper Localization Problem . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1 Sniping and Counter Sniping Tactics and Techniques . . . . . . . . . . 4
1.2 State of the Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Acoustic Sniper Positioning Systems . . . . . . . . . . . . . . . . . . . 6
2 Gunshot Acoustics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 The Muzzle Blast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 The Shockwave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 The Multipath Propagation Effect . . . . . . . . . . . . . . . . . . . . 14
2.4 Ballistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3 Main Contributions in this Thesis . . . . . . . . . . . . . . . . . . . . . . . . . 19
xi
Contents
4 Conclusion 51
References 53
II Publications 59
Book Chapter: Multichannel Fast QRD-RLS Algorithms 61
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
2.1 Input vector for sequential-type multichannel algorithms . . . . . . . . 67
2.2 Input vector for block-type multichannel algorithms . . . . . . . . . . . 68
3 Sequential-type Multichannel Fast QRD-RLS Algorithms . . . . . . . . . . . . 69
3.1 Triangularization of the information matrix . . . . . . . . . . . . . . . 69
3.2 A PRIORI and A POSTERIORI versions . . . . . . . . . . . . . . . . . 73
3.3 Alternative implementations . . . . . . . . . . . . . . . . . . . . . . . 75
4 Block-type Multichannel Fast QRD-RLS Algorithms . . . . . . . . . . . . . . 77
4.1 The backward and forward prediction problems . . . . . . . . . . . . . 77
4.2 A PRIORI and A POSTERIORI versions . . . . . . . . . . . . . . . . . 81
4.3 Alternative implementations . . . . . . . . . . . . . . . . . . . . . . . 84
5 Order-recursive Multichannel Fast QRD-RLS Algorithms . . . . . . . . . . . . 86
6 Application Example and Computational Complexity Issues . . . . . . . . . . 88
6.1 Application example . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.2 Computational complexity issues . . . . . . . . . . . . . . . . . . . . . 91
7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Papers 95
Paper I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Paper II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Paper III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Paper IV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Paper V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
xii
Part I
Introductory Chapters
1
1 | Introduction
Figure 1.1: Supersonic bullet traveling at about 1.5 times the speed of sound. Image courtesy
of Professor Andrew Davidhazy, School of Photographic Arts and Sciences, Rochester Institute
of Technology.
Automatic sniper localization devices have gained popularity in recent years and some com-
panies have launched their sniper positioning systems designed for civil protection, law en-
forcement, and protection of soldiers on missions where enemy snipers pose a serious threat.
Locating highly trained enemy snipers using traditional methods based on human senses is very
inefficient and might require more than one attempt. This is usually enough to allow the sniper
to exit the local or simply move to a different spot and continue to cause casualties before get-
ting away. Strictly speaking, sniper positioning systems are passive devices designed to detect
and locate enemy snipers. The beginning of the interest in the topic can be traced back to the
early 1990’s and was pioneered by countries like the United States of America, Russia, France,
3
Introduction
and Canada. The primary objective is to develop automatic surveillance systems that can be
useful to both police and military forces. But, despite recent advances in the field, there is still
a long way to go towards making these devices more efficient, reliable, and capable of perform-
ing under adverse conditions. As will become clear from the following discussion, there are
multiple possible approaches to addressing this problem, depending on what kind of gunshot
signatures (electromagnetic, acoustic, or even both) one chooses to process.
This work is concerned with the problem of designing acoustic sniper localization systems
where the sniper’s location is estimated by processing the acoustic signatures of the muzzle
blast and the ballistic shockwave associated with the firing of a gun. Issues related to noise can-
cellation, direction-of-arrival (DOA) estimation, multipath propagation, and algorithm imple-
mentations have been investigated and results have been reported in a number of publications.
Some of these publications are included in this thesis and the remainder are referenced where
appropriate.
4
The Sniper Localization Problem
range estimation is carried out as follows. If the two signals are detected almost simultaneously
then the shooter must be within a 300 meters range. If a small delay is perceived (one second or
slightly more) then the range is between 300 and 600 meters. Larger delays would give a range
of over 600 meters. Even under favorable conditions, i.e., high SNR and the absence of the
multipath propagation effect, the method can only provide a very rough estimate and is totally
unreliable for shooting ranges over 450 meters [1].
These limitations can be overcome using a properly designed sniper positioning system.
This work shows that the understanding of the physics of ballistics shock waves propagation
allows for a clear distinction between direct-path shock waves and reflected ones. And this is
a desirable capability to have implemented in the system. The time interval from recognizing
the presence or activities of a sniper to pin pointing his probable location is crucial to reducing
the number of casualties as much as possible. This is the main reason why the idea of using
automatic gunshot location systems has become so popular.
Sniper localization systems can be based on different technologies and are available in many
different configurations, depending on where and how the apparatus will be used. Some ex-
amples are vehicle mounted and stationary devices. Even soldier-wearable solutions have been
investigated recently [5, 6]. Below is a short description of some sniper detection and localiza-
tion systems that are currently available on the market.
5
Introduction
• BBN Boomerang [7]: Acoustic sniper detection system that uses an array of
seven microphones. The system has been deployed by U.S. forces in Iraq and
Afghanistan.
• REDOWL [8], by iRobot and Boston University Photonics Center: Sniper
Detection System for iRobot PackBot Combat-Proven Robot equipped with
infrared camera, acoustic system, and laser range finder that aims at the source
of the noise.
• WeaponWatch [9]:
– Detects weapon fire in real-time day or night across a wide 120o field of
view; sensors may be stationary or “on the move”; WeaponWatch can
identify individual weapons fired during simultaneous fire from dozens
of weapons;
– Locates fired weapons by translating azimuth, elevation, and range to
actionable geocoordinates;
– Classifies detected weapons using a vast database of weapon fire sig-
natures for small arms, sniper rifles, machine guns, Rocket-Propelled
Grenades (RPGs), Man-Portable Air-Defense systems (MANPADs), tanks,
mortars, artillery, and others. Weapon-Watch claims to be able to detect
fire from each of these weapons from beyond its effective range.
• ShotSpotter [10]: This system is primarily designed for wide-area acoustic
surveillance. When a gun goes off, the system then uses the data provided
by multiple collaborative acoustic sensors deployed throughout the coverage
area to triangulate and estimate the location each round were fired from. The
gathered data can then be used not only to support a faster, safer, and more
effective response, but also as evidence in forensic analysis and investigations.
No specific implementation details are available for any of the systems described above, but,
as far as the author can tell, available literature on the matter by the time this research project
started describes only the acoustics of gunshots and the geometrical approach used to estimate
the position of the sniper [11]. Current trends suggest that in the near future smart counter-sniper
devices can be developed with the full capability of detecting, locating, and engaging enemy
snipers without violating the military rules of engagement in place. Even so, the engagement
methods may eventually raise some ethical questions and should be subject to scrutiny under
international laws.
6
The Sniper Localization Problem
Shooter
A B C D
θM
Shock wave
front
Target
Muzle wave
front
Array of
microphones
Figure 1.2: Sniper localization. A, B, C, and D are the detach points of the shockwaves that
reach each of the four microphones in the array. The Mach angle, θM , must be calculated before
the bullet trajectory can be estimated.
Figure 1.2 illustrates the underlying principle of acoustic sniper localization systems design.
It basically consists of three steps: (1) Detect the shockwave and the muzzle blast acoustic sig-
natures; (2) Estimate their respective direction-of-arrival; and (3) Estimate the Mach angle of
the ballistic shockwave and triangulate to finally find the shooter’s location. The problem is
that these two signals are not always present or easily detectable. This is related to a number of
reasons, e.g., low signal-to-noise ratio due to additive background noise, and multipath propa-
gation that results from reflections at the surface of buildings, mountains, or even the ground.
These issues are further discussed in the remaining sections of this chapter and in the subsequent
chapters.
This work is a step forward in the development of an existing acoustic sniper positioning system
called SNIPOS. When this project started, the specifications and technical description of this
system were as follows.
• System Specifications:
7
Introduction
– Component dimensions:
* Display: As defined by the laptop in question;
* Processing Unit: “L334 × “W150 × “H302 (millimeter);
* Microphones: omnidirectional, placed at the vertices of a regular tetrahedron
with edge of length 250 mm;
– Power: 24 VDC (Extreme values 18 – 30 VDC);
– Operating temp (microphone): −100 C to +500 C (in shade);
– Installation time: 15 minutes;
– Returns: azimuth, elevation, and range of the sniper and weapon caliber.
• Technical description:
The system exhibited a satisfactory performance with regards to azimuth, elevation, range
estimation, and caliber classification errors only in open field and high SNR environments. Its
performance suffered serious degradation when the signals are subject to noise interference and
multipath propagation effect.
Table 1.1: Specification of some known sniper positioning systems compared to SNIPOS.
Bearing Ranging Elevation Response Caliber
System Manufacturer Accuracy Accuracy error time Esti-
Error Error mation
Boomerang Raytheon BBN[7] < 2.5o ±10% < 2.5o < 1.5 sec
PDCue AAI [15] ±1o < ±10% ±1o < 0.1 sec
SpotLite Rafael[16] ±2o − 3o ±2o − 3o
Pilar 01dB-Metravib[17] ±5o moving ±10 − 20% ±5o 2 − 3 sec
±2o stationary
SNIPOS Snipos AS ±1o < ±10% ±1o < 1 sec yes
Table 1.1 above benchmarks the main attributes of the underdevelopment SNIPOS system
against similar acoustic sniper localization systems. The systems listed in this table exhibit
very similar performance characteristics, as advertised by their respective developers. However,
no specific details have been provided regarding the conditions under which the tests were
conducted.
8
Gunshot Acoustics
2 Gunshot Acoustics
This section presents a summary of gunshot acoustics, addressing aspects related to the physics
of the muzzle blast and the ballistic shockwave. It also includes some considerations about
reflections and a quick overview of ballistics.
where P0o and P180o are the peak forward and rear pressures, respectively. Figure 1.3 illustrates
the radiation pattern given by this model when P0o and P180o are set to 200 Pa and 120 Pa,
respectively.
The source’s sound pressure decreases exponentially with time and therefore the muzzle
blast signal becomes very sensitive to additive background noise with increasing range. The
rate of decrease depends on the flow characteristics of the source, but muzzle blasts can be
generally described using the Friedlander equation [19], a model for blast waves or explosions
in air. Let P0 and Ps denote, respectively, the atmospheric pressure and the peak overpressure
generated by the muzzle explosion. The Friedlander equation can then be written as
t
p(t) = P0 + Ps 1 − e−bt/T0 , (1.3)
T0
where T0 is the positive phase duration and b is the rate of exponential decay. The analytical
spectrum of the Friedlander’s sound pressure model, obtained by taking the Fourier transform
9
Introduction
90 200
120 60
150
150 100 30
50
180 0
210 330
240 300
270
Figure 1.3: Angular propagation model of the muzzle blast peak overpressure. Pres-
sure values are in Pascal (Pa).
of (1.3), is given by
Ps ((b − 1) + jwT0 )
P (w) = 2 , (1.4)
T0 Tb0 + jw
where w is the angular frequency (rad/s) and j is the imaginary unit. The corresponding mag-
nitude spectrum, |P (w)|, is given by
Ps (b − 1)2 + T02 w2
|P (w)| = 2 . (1.5)
T0 b
T0
+ w2
1√ 2
wmax = −b + 4b − 2,
T0
10
Gunshot Acoustics
TM
300
Presure (Pa)
200
100
T0
0
−100
0 0.5 1 1.5 2 2.5 3 3.5 4
Time (ms)
0.08
Spectrum (Pa/Hz)
0.06
0.04
0.02
0
0 318 1000 1500 2000 2500 3000
Frequency (Hz)
The muzzle blast is not always detectable, specially if sound suppressors are used or when
the array of sensors is located several hundred meters away from the firing gun. In the latter
case, due to propagation losses and additive background noise, the muzzle sound pressure may
drop below the noise floor before it reaches the array of sensors, thereby resulting in increased
difficulty in the detection process.
11
Introduction
H
T x L
Peak Bullet
Amplitude
t → time
Trajectory
T
(a) The N-wave. b
H
(b) Path of Energy transfer from bullet to shock wave. x: miss
distance; L: wavelength.
The head and the trail discontinuities are separated by a small time interval, T , known as the
period of the N-wave, that varies proportionally to the bullet length and the propagation time.
The last holds because the two discontinuities H and T travel at different speeds. Specifically,
the head and tail discontinuities travel at velocities slightly higher and lower than that of the
local speed of sound, respectively [21]. This is illustrated in Figure 1.5b, where the increase
in the time interval T , separating the head and trail discontinuities as they propagate outwards
from the bullet trajectory, is evident. Figure 1.5b also illustrates how the energy is transferred
from the bullet to the shockwave. As the shockwave propagates through the medium, the av-
erage energy decreases and tends to dissipate relatively quickly due to three main factors: (1)
increase in the mean radius x; (2) increase in the wave-length L; and (3) dissipation into heat.
In between the two main shock waves there can also be secondary compression and expan-
sion shock waves. As these secondary shock waves propagate, they can merge into the main
shocks waves or give rise to new shock waves if they have enough power [21]. This is illustrated
in the shadowgraph image of a supersonic bullet in Figure 1.1 in the beginning of this chapter.
By extrapolating this image (in a simplified version in Figure 1.5b) to the three-dimensional
space, one can realize that the shockwave exhibits a cone shape involving the bullet trajectory,
called the Mach cone. For this reason, the shockwave cannot be detected when the bullet is
moving away from the sensor.
The angle of propagation of the shockwave with respect to the bullet trajectory, θM , referred
to as Mach angle (see Figure 1.6), varies inversely proportional to the bullet velocity and is
given by
1
−1 c −1
θM = sin = sin , (1.6)
v M
12
Gunshot Acoustics
x Receiver
Shockwave
front
Bullet
Muzzle wave
front
θM
Detach
point
y
Shooter Position
where v and c are, respectively, the instantaneous bullet velocity and the speed of sound. It is
common to use the terms subsonic and supersonic to refer to projectile velocities or flow speeds
which are below and above the local speed of sound, respectively.
The ratio M = v/c is a dimensionless quantity known as the Mach number, named after the
Austrian physicist and philosopher Ernst Mach (1838-1916). The Mach number is often used in
some disciplines, e.g., aerodynamics, to describe particular regimes. For example, v = c results
in M = 1, which corresponds to a Mach angle
This point, know as the sonic regime, is where shock waves start to form or vanishing, depend-
ing on whether v is increasing or decreasing. In fact, Mach numbers in the range 0.8 ≤ M < 1.2
characterize a regime known as the transonic regime, a transition phase between the subsonic
regime (M < 0.8) and the supersonic regime (1.2 ≤ M < 5). The top-left corner of the shad-
owgraph image in Figure 1.1 shows a fragment traveling at almost transonic speed and lagging
behind the supersonic bullet which is traveling at a velocity of approximately Mach 1.5. NASA2
defines additional regimes such as the low hypersonic regime (5 < M < 10) to account for air-
craft speeds which are much higher than the speed of sound, and the high hypersonic regime
(M > 10) to account for atmospheric reentry speeds.
When a bullet moves through the air at a velocity higher than that of the local speed of
sound, there is an increase in the entropy of the air caused by: (1) a compressive shock wave
that propagates at a supersonic velocity relative to the air ahead of it and at a subsonic velocity
2
The National Aeronautics and Space Administration (NASA) is the agency of the United States govern-
ment that is responsible for the nation’s civilian space program and for aeronautics and aerospace research
(http://www.nasa.gov).
13
Introduction
Sensors
Ground Surface
Figure 1.7: Example of shockwave ground reflection. Bullet into paper sheet.
Reader is at the sniper’s position, and the muzzle sound travels in a strait path
from reader to the sensors.
relative to the air behind it; and (2) an expansive shock wave that propagates at subsonic velocity
relative to the material ahead of it, and at a supersonic velocity relative to the material behind
it. This fact has important implications in the reflection of ballistic shockwaves and is treated
in Paper V [22]. For the sake of completeness, however, an overview of this topic is presented
in the next section.
14
Gunshot Acoustics
I I
vi
vi
vr
Mach Stem
R Tp
vr
Slipstream
Figure 1.8: Main types of a moderate shock wave reflection. Legend: I→incident shock;
R→reflected shock; vi →velocity of the incident shock; and vr →velocity of the reflected shock.
Ir Ic
T1
Rc
T2
Rr
15
Introduction
5
x 10
1
0.6
0.2
−0.2
−1
0 100 200 300 400 500
Time (ms)
was conducted by Ernst Mach and published in 1878 [24]. Mach identified two types of re-
flections: a regular reflection (see Figure 1.8a) that results in a two-shock configuration; and
a three-shock structure, as illustrated in Figure 1.8b, which is nowadays referred to as the
Mach reflection. A new type of reflection, initially named the non-Mach reflection, was ob-
served by von Neumann and would later be known as the von Neumann reflection [25]. Today,
shock wave reflections are classified into two main types: regular reflection and irregular re-
flections. Irregular reflections are believed to comprise several subtypes as recently reported by
Semenov et al. [25]. This topic is still receiving the attention of many researchers from different
fields, e.g., fluid dynamics and solid mechanics [26, 27].
In a ballistic shockwave reflection, two incident shock waves, one of compression and one of
rarefaction, reach the boundary separated by the small time interval T , the period of the shock-
wave. The numerical analysis presented in [28, 29] shows that both regular and Mach reflec-
tions can occur in the case of shock waves induced by supersonic projectiles. As illustrated in
Figure 1.9, a regular reflection of shock waves induced by supersonic projectiles, bullets in par-
ticular, can be regarded as a four-shocks configuration, comprised of: two incident shockwaves,
one of compression followed by another one of rarefaction, plus two reflected shockwaves. As
discussed by Ben-Dor et al. in [26], the two incident shock waves do not interact with each other
at the boundary the same way they do when moving through the air. Indeed, the compression
and rarefaction shock waves meet the reflecting surface at different angles of incidence altering
the flow conditions at the reflecting surface and the relative speeds between the compression
and expansion shock waves. Moreover, the period of the m-th reflected shockwave, Tm , mea-
16
Gunshot Acoustics
0.6
Normalized Amplitude
0.4
0.2
−0.2
−0.4
−0.6
−0.8
−1
0 10 20 30 40 50 60
Samples
Figure 1.11: Period of the direct-path shockwave versus the period of the fourth-
path shockwave. Signals have been normalized for better comparability.
sured at a given point in space will be greater than the period of the direct-path shockwave, T .
The increase verified in Tm is therefore a consequence of two main factors, namely, the longer
traveling time of the reflected shockwave, and the interaction of the compression and expansion
shock waves at the reflective boundary.
Figure 1.10 illustrates a typical gunshot acoustic signal recorded in a multipath environment.
The signature belongs to a 12.7 mm bullet fired from approximately 540 meters with a passing
distance relative to the sensors of roughly 62 meters. In this configuration, the power of the
primary shockwave is much higher than the power of its reflections and the power of the muzzle
blast. For a better visualization, the recorded signal was scaled using an exponential factor of
n3/2 during the first 83 ms, with n being the sample index. The scaling factor is kept constant
from t = 83 ms on. As can be seen from the figure, the direct-path shockwave signal is followed
closely by some reflections before the muzzle blast arrives.
Figure 1.11 compares the period of the direct-path shockwave with the period of the fourth-
path shockwave. As can be seen, the period of the reflected shockwave has increased, as ex-
pected. This observation, in conjunction with the previous considerations about energy and
spectral content made earlier, provide means to discriminate between direct-path and reflected
shockwaves. This distinction is very important and can be used to increase accuracy in range
estimation, thereby improving the performance and reliability of acoustic sniper localization
systems, specially under multipath propagation which is characteristic of urban environments.
17
Introduction
2.4 Ballistics
Ballistics is the discipline that studies the motion of projectiles, e.g., bullets, from the moment
of acceleration to the moment of impact on the target. The problem is very complex and can
be traced back to the invention of gunpowder in China many centuries ago [30]. It is usually
divided into four main subfields: Interior Ballistics, Intermediate Ballistics, Exterior Ballis-
tics, and Terminal Ballistics. These subfields, briefly described next, analyze specific physics
problems and have been extensively studied using a combination of theoretical and empirical
approaches. Although gun and projectile design engineers must master all these four subfields
of ballistics very well, professional snipers are required to know just enough to be able to chose
the right tools and how to use them successfully. While considerations about Interior, Interme-
diate, and Terminal Ballistics have a strong influence in the mission preparation phase, External
Ballistics plays a very important role when carrying out the mission. The counter sniper system
designer, on the other hand, should understand the sniper’s methods in order to be able to design
effective counter-sniper systems. This issue is further discussed in Chapter 3.
Interior Ballistics
Interior ballistics [31] studies the motion of a projectile from the moment the firing pin strikes
the primer until the time it exits the gun barrel. It can be divided into two distinct time intervals:
• Ignition time, the time from when the primer is struck until the projectile starts to move;
• Barrel time, the time from when the projectile starts to move until it exits the barrel.
The lock time, the time from sear release until the primer is struck is also sometimes treated as
part of Interior Ballistics.
Intermediate Ballistics
Intermediate ballistics is the study of the projectile behavior from immediately when it leaves
the gun barrel and starts its motion through the media, in this case air. This regime gained its
own field recently, but used to be considered as part of the Interior Ballistics.
Exterior Ballistics
Exterior ballistics plays a very important role in long-range shootings. It is the study of the
projectile’s motion through the air, from the gun to the target. It also includes the analysis of the
effect of non-deterministic factors such as wind velocity on the bullet trajectory [32, 33]. Under
ideal conditions, the trajectory and the effective range of the projectile are solely determine
by the ballistic coefficient (BC) and the muzzle velocity. The ballistic coefficient is a measure
of a projectile’s ability to overcome air drag in flight [34]. In the case of bullets, the ballistic
coefficient is given by [32, 34]
M
BC = 2 , (1.7)
id
where M and d are, respectively, the mass and the diameter of the bullet. The quantity i, known
as the form factor, is dimensionless and is defined as the ratio between the drag coefficient of
18
Main Contributions in this Thesis
the bullet and the drag coefficient of a predefined standard bullet model. Bullets with higher
ballistic coefficient are less affected by air resistance and, consequently, retain more of their
initial kinetic energy for a given distance. This results in a less sensitivity to wind drift, a flatter
trajectory, and thus a better precision.
Terminal Ballistics
Terminal ballistics, or wound ballistics [35], is the study of the interaction of the projectile with
the target. This field is of particular interest to police and military snipers, specially in rescue
missions where the use of non-lethal armaments is common. In the case of lethal weapons, it
is also important to understand the possible lethality associated with the fragment spray effect,
over penetration (when a bullet passes through and out of its target), behind armor effects,
effective range, etc.
• DOA estimation:
It features a new application for the well known delay-and-sum beamforming technique,
which is used to estimate the DOA for both the shockwave and the muzzle blast. The
method has the twofold advantage of (1) adding an array gain of 10 log M , where M is
the number of microphones. This results in an increased SNR of 6 dB for a 4-microphone
array, which is equivalent to doubling the detection range, assuming free-field propaga-
tion; and (2) offering improved robustness in handling both single and multiple gunshot
events, as well as reflections, by taking advantage of the spatial filtering capability pro-
vided by the array of microphones.
• Multipath propagation:
Propagation models for both the muzzle blast and the shockwave are considered and
analyzed, with special emphasis on the latter, which is a rather peculiar phenomenon. A
simple and effective solution to the shockwave multipath problem that avoids the need
for determining the channel’s impulse response is proposed. However, attempt should
be made towards producing quantitative numerical results, despite the inherent difficulty
and costs that might be involved in producing real data for such scenarios, e.g., urban
environments.
• Noise cancellation: Two different methods of denoising impulsive gunshot signals are
considered, namely, adaptive filtering and spectral subtraction. Besides showing how
noise cancellation techniques can be applied to the sniper localization problem, new al-
gorithms were developed based on both the spectral subtraction and the adaptive filtering
19
Introduction
methods, with special emphasis on the latter. Potential further applications of these al-
gorithms span a very wide range, including sonar, color image processing, multispectral
remote sensing imagery, biomedicine, channel equalization, stereophonic echo cancella-
tion, multidimensional signal processing, etc.
The remainder of Part I of this thesis is organized as follows. Chapter 2 presents an overview
of the adaptive filtering, spectral subtraction, and beamforming techniques applied to the sniper
localization problem. Chapter 3 discusses the extent of the contributions to knowledge pre-
sented in the publications that compose this work, as well as some suggestions for future work,
while conclusions are given in Chapter 4. The original publications in this thesis, comprised of
one book chapter, four peer-reviewed articles (one journal and three conference papers), plus
one journal paper that has been submitted, are included in Part II.
20
2 | Noise Cancellation and DOA
Estimation Algorithms
This chapter provides an overview of the signal processing techniques that have been investi-
gated and applied to the acoustic sniper positioning problem treated in this work. These include
adaptive filtering and the spectral subtraction algorithms for signal enhancement, and beam-
forming for direction-of-arrival (DOA) estimation.
Consider the block diagram shown in Figure 2.1, and assume that all microphones in the array
are properly calibrated. Moreover, let φ and θ denote the azimuth and elevation angles, respec-
tively. The signal received at the m-th microphone from a source in the far field emitting a
signal s(t) impinging the array from the direction (φ, θ) can be expressed as
xm [n] = xm (nT )
= s[n − τm (φ, θ)] + vm [n], (2.1)
where xm [n] denotes a noisy discrete-time version of the signal received at the m-th sensor, with
T being the sampling period. The quantity τm (φ, θ) represents the time-delay measured at the
m-th microphone with respect to a predefined origin, whereas vm [n] is the additive noise compo-
nent measured at the m-th microphone. Furthermore, s[n − τm (φ, θ)] represents a discrete-time
version of s(t) measured at the m-th sensor. The model, as given by Equation (2.1), is simple
and robust, which favors an integrated treatment of both the noise cancellation and the direction-
of-arrival (DOA) estimation problems. The former is discussed in the next two sections while
the latter is addressed in Section 4.
Data acquisition
All the experiments described in the papers that are included in this thesis are based on actual
gunshot acoustic signals acquired using the 4-microphone array depicted in Figure 2.2. Mi-
21
Noise Cancellation and DOA Estimation Algorithms
x[n − τ0 ] z0 [n]
+Δ0
w0
Signatures recognition
x[n − τ1 ] z1 [n] y[n]
A/D Converters
Spatial +Δ1 Σ
Noise w1
Source
x[n − τM −1 ] zM −1 [n]
+ΔM −1
wM −1
Array of
Sensors
25
0m
m
Figure 2.2: Layout of the array used for the gunshot data acquisition.
Microphones are placed 250 mm apart from each other.
crophones are omnidirectional and located at the vertices of a regular tetrahedron with edge of
length 250 mm. The shootings are performed from various ranges (60 − 800 meters) and miss-
distances and the acoustic signatures are recorded at a sampling rate of 96 kHz, and as cleanly
as possible. The noise component was generated using a steel tracked military tank running on
asphalt and recorded using the same microphone array of Figure 2.2. It is added to the clean
gunshot signals artificially during each experiment in order to have better control over the input
SNR.
22
Adaptive Filtering
d(k)
+
y(k)
Adaptive
x(k)
Filter Σ
w _
e(k)
2 Adaptive Filtering
Adaptive filtering is a well known signal processing tool that has been used successfully in a
large variety of applications, including noise cancellation, system identification, channel equal-
ization, to name a few. An adaptive filter is a digital filter that adjusts its coefficients in order to
minimize some metric of the error signal. Figure 2.3 depicts a basic configuration of an adap-
tive filter, where w is the coefficient vector, e(k) is the error signal, defined as the difference
between the desired output d(k) and the actual output of the adaptive filter, y(k).
Let coefficient vector w be expressed as
N
y(k) = wi x(k − i)
i=0
= w x(k).
T
(2.4)
The adaptive filter adjusts the coefficient vector, w, using a procedure that minimizes a given
cost function, usually defined as a norm of the error. The mean-square-error (MSE) and the
the weighted least-squares (WLS) are two commonly employed norms of the error that lead to
different algorithms with different properties.
23
Noise Cancellation and DOA Estimation Algorithms
The mean-square-error
where E| · | denotes the expectation operator. Using (2.4) in (2.5) one can write
where σd2 (k) is the variance of the reference signal, whereas p and R, defined as,
are, respectively, the cross-correlation vector between the desired signal and the input signal
and the correlation matrix of the input signal. The cost function is then minimized by taking its
gradient and setting it to zero.
Solving for w, and assuming that R is positive definite, the optimal solution can finally be
expressed as
wo = R−1 p. (2.10)
k
ξ(k) = λk−i |d(k) − wT x(i)|2 = eT (k)e(k). (2.11)
i=0
In this case, the problem becomes the one of finding the set of coefficients w(k) that minimizes
the norm of the error vector e(k), i.e.,
k
2
min λ k−i
|d(k) − w x(i)|
T
. (2.12)
w
i=0
24
Adaptive Filtering
where weighted vector d(k) and the input data matrix X(k) are given by
⎡ ⎤
d(k)
⎢ 1/2
λ d(k − 1) ⎥
⎢ ⎥ d(k)
d(k) = ⎢ .. ⎥= , (2.14)
⎣ . ⎦ λ1/2 d(k − 1)
λk/2 d(0)
and ⎡ ⎤
xT (k)
⎢ 1/2 T
λ x (k − 1) ⎥
⎢ ⎥ xT (k)
XT (k) = ⎢ .. ⎥= . (2.15)
⎣ . ⎦ λ1/2 xT (k − 1)
λk/2 xT (0)
Using the definitions of d(k) and XT (k) in equations (2.14) and (2.15), the autocorrelation
matrix R(k) and the cross-correlation vector p(k) are now given by
and
The so-called Wiener solution to this problem can be derived using arguments similar to those
used to minimize the MSE cost function. This solution can be compactly expressed as
25
Noise Cancellation and DOA Estimation Algorithms
where (k)I is a regularization parameter that guarantees the existence of the inverse, at least
at initialization. Replacing (2.21) and (2.20) in (2.19), and making use of the instantaneous
approximations of R and p given, respectively, by
yields
μ
w(k) = w(k − 1) + x(k)e(k) , (2.23)
(k) + xT (k)x(k)
which is known as the normalized LMS (NLMS) recursion. This is the preferred version for
practical implementations because the use of parameter (k) prevents the occurrence of division
by zero. When a constant regularization parameter is used, the above expression is sometimes
referred to as the -NLMS recursion.
Contrary to the LMS and the NLMS algorithms, the Recursive-Least-Squares (RLS) algorithm
offers an exact solution to the least-squares (LS) problem. We start by noticing that both the au-
tocorrelation matrix, R(k), and the cross-correlation vector, p(k), can be computed recursively
according to
k
R(k) = X(k)XT (k) = λk−i x(i)xT (i)
i=0
= x(k)xT (k) + λR(k − 1), (2.24)
and
k
p(k) = X(k)d(k) = λk−i x(i)d(i)
i=0
= x(k)d(k) + λp(k − 1). (2.25)
Now, replacing (2.24) and (2.25) in the optimal solution to the weighted least-squares problem,
26
Adaptive Filtering
and making use of the matrix inversion lemma,1 it can be shown that R−1 (k) can also be updated
recursively according to
1 k(k)kT (k)
R−1 (k) = R−1 (k − 1) − . (2.26)
λ λ + xT (k)k(k)
is known as the Kalman gain. A recursive expression to update the coefficient vector, w, can be
obtained directly by replacing (2.24), (2.25), and (2.26) into (2.18) which, after a few algebraic
manipulations, yields
k(k)
κ(k) = .
λ + xT (k)k(k)
The complete RLS algorithm is summarized in Table 2.1. The initialization of the inverse
of the correlation matrix as R−1 (k) = I in Table 2.1 is somewhat intuitive and assures that
the matrix is invertible during the initial stages. However, this does not provide any guaran-
tees of robustness against round-off errors, the main cause of numerical instability in the RLS
algorithm.
27
Noise Cancellation and DOA Estimation Algorithms
RLS
Initialize:
w(0) = 0, 0 λ ≤ 1, and
R−1 (−1) = I, where is a small positive constant.
For each k:
{
e(k) = d(k) − wT (k − 1)x(k)
k(k) = R−1 (k − 1)x(k)
κ(k) = λ+xTk(k)
(k)k(k)
k(k)kT (k)
R−1 (k) = λ1 R−1 (k − 1) − λ+x T (k)k(k)
The QR Decomposition
The QR factorization, also referred to as the QR Decomposition (QRD), factors a matrix A into
a product of the form A = QR, of an orthogonal matrix Q and an upper or lower triangular
matrix R. The factorization process can be carried out using different methods that includes
unitary Givens rotations and Householder transformations [38].
The autocorrelation matrix R(k), previously defined as
is Hermitian and positive definite by definition. It can thus be factored using the Cholesky
decomposition [38] according to
where matrix U(k) is lower triangular with real and positive main diagonal entries, whereas
matrix Qθ (k) is an (N + 1) × (N + 1) orthogonal matrix satisfying
Matrix Qθ (k) is actually a product of Givens rotations matrices [38] of the form
0
Qθ (k) = Qθi (k),
i=N
28
Adaptive Filtering
responsible for the unitary triangularization of matrix X(k). For sake of an example, for N = 2,
Qθ (k) would be given by
⎡ ⎤
cθ2 cθ1 cθ0 −s∗ θ2 −cθ2 s∗ θ1 −cθ2 cθ1 s∗ θ0
⎢ ⎥
⎢ sθ cθ cθ cθ2 −sθ2 s∗ θ1 −sθ2 cθ1 s∗ θ0 ⎥
Qθ (k) = ⎢ 2 1 0 ∗ ⎥. (2.29)
⎣ sθ1 cθ0 0 cθ1 −sθ1 s θ0 ⎦
sθ0 0 0 cθ2
To illustrate the application of unitary Givens rotations, let us consider the following 2 × 1
example:
0 a cos θ0 − sin θ0 a
= Qθ0 = , (2.30)
r b sin θ0 cos θ0 b
where r = |a|2 + |b|2 , for some given real-valued scalars a and b, with cos θ and sin θ being
given by
b
cos θ1 =
r
and
a
sin θi = .
r
Despite being inspired in the QR decomposition, QRD-RLS adaptive filtering algorithms do not
require explicit computation of the QR factorization. Indeed, only a few unitary rotations are
required at each iteration to complete the factorization process explained next.
Making use of (2.28), the recursion for the autocorrelation matrix R(k), given by
Since matrix U(k − 1) is lower-triangular, the role of the product of unitary Givens rotations
in Qθ (k) is to annihilate the elements of vector xT (k) against the main diagonal of U(k − 1)
leading to its updated version U(k). This process is not only numerically robust, but it is also
computationally efficient because it takes advantages of previously structured data.
Now, pre-multiplying the weighted least-squares error vector
29
Noise Cancellation and DOA Estimation Algorithms
one realizes that, in order to minimize e(k), eq1 (k) must be equal to dq1 (k) and the optimal
coefficients vector w(k) should satisfy
Then, by replacing dq1 (k) with eq1 (k) in vector dq (k), and using fixed-order matrix Qθ (k)
instead of the ever increasing order matrix Q(k), it follows directly from (2.33) that
eq1 (k) d(k)
= Qθ (k) , (2.35)
dq2 (k) λ1/2 dq2 (k − 1)
where eq1 (k), known as the rotated a posteriori error, is the leading element in vector eq1 (k),
the first partition of Q(k)e(k). McWhirter noted in [39] that the a posteriori error, e(k), corre-
sponding to the first element in vector e(k), is related to eq1 (k) according to
where γ(k) is the product of cosines in the leading entry of Qθ (k) as given by (2.29). Equation
(2.36) is particularly useful in applications such as noise cancellation where the error signal is
the desired estimate and explicit computation of the coefficient vector is therefore not required.
This is a property shared by all QR Decomposition Recursive Least-Squares (QRD-RLS) adap-
tive filtering algorithms.
The complete QRD-RLS algorithm is summarized in Table 2.2. It is worth noticing that this
algorithm, in its simplest form, does not provide an efficient way to compute the weights vector
w(k). If the weights vector must be available, the Inverse QRD-RLS (IQRD-RLS) algorithm
proposed in [40] would then be a better choice. The computational complexity of the Inverse
QRD-RLS algorithm is also of order O(N 2 ).
30
Adaptive Filtering
QRD-RLS
For each k:
{ Find Qθ (k) U(k):
and update
0 xT (k)
= Qθ (k)
U(k) λ1/2 U(k − 1)
Find
eq1 (k) dq2 (k):
and updating
eq1 (k) d(k)
= Qθ (k)
dq2 (k) λ1/2 dq2 (k − 1)
Finding γ(k):
!
γ(k) = N i=0 cos θi (k)
some important details regarding the Fast QRD-RLS algorithms. This is necessary for under-
standing the more comprehensive treatment of these algorithms presented in the book chapter
included in the second part of this thesis.
As has been pointed out, the first element of matrix Qθ (k) is a product of cosines given by
N
γ(k) = cos θi (k).
i=0
Analyzing the structure of matrix Qθ (k) as given by (2.29) more closely, one realizes that it can
be partitioned as
γ(k) gT (k)
Qθ (k) = , (2.37)
f (k) E(k)
where g(k) and f (k) are known, respectively, as the a priori and the a posteriori error vectors.
These two vectors play an important role in the derivation of the Fast QRD-RLS algorithms. In
particular, both vectors are related to the input data matrix, U(k), and the input vector, x(k).
As such, they can be used to propagate the input information instead of matrix U(k) itself.
The immediate consequence of this is that the order of the computational complexity of the
algorithm is reduced from O(N 2 ) to O(N ). Sub matrix E(k) is related to both U−T (k) and
UT (k − 1), but is of no special interest in the current discussion. The relationships among
vectors g(k) and f (k), the lower triangular data matrix, U(k), and the input vector, x(k), can
be established using the following set of arguments.
31
Noise Cancellation and DOA Estimation Algorithms
Using the definition of the identity matrix, it then follows from (2.38) that
Now, by comparing (2.43) with (2.41), the following relationships can be established:
Updating vector g(k) or vector f (k), respectively, the a priori and the a posteriori error
vectors, and also depending on type of triangularization applied to the input data matrix X(k)
to obtain U(k), leads to different classes of algorithms with different properties [41].
32
The Spectral Subtraction Algorithm
s(k) + v(k)
e(k)
Moreover, given the impulsive nature of acoustic gunshot signals, s(k − Δt ) can be forced to
zero, thus reducing (2.47) to
v̂(k) = v(k − Δt). (2.48)
The equality in (2.48) can be preserved by using an impulse detection algorithm to freeze the
adaptation process under the occurrence of impulsive events. The same idea can also be applied
when using other approaches to enhance impulsive signals corrupted by noise, as is the case of
the spectral subtraction method discussed in the next section.
33
Noise Cancellation and DOA Estimation Algorithms
Figure 2.5: Signal framing: 50% overlapping samples for power spectrum
estimation; and smaller non-overlapping sub-frames for impulse detection.
ing variants are: (1) the broadband spectral subtraction, where the subtraction is applied to the
whole spectrum at once; and (2) the multi-band spectral subtraction, where the spectrum of the
noisy signal is divided into several sub-bands and the subtraction is carried out at each sub-band
using different subtraction factors.
Basics
Recall the 3-D model introduced in Section 1 (illustrated in Figure 2.1). It was seen that the
discrete-time version of the signal xm [n] received at the m-th microphone is composed of the
signal of interest, s[n], plus a noise component, vm (n), and could be expressed as
where τm (φ, θ), the time-delay measured at the m-th microphone, is a function of the azimuth
and elevation angles, φ and θ, respectively. The spectrum of xm [n] is found by taking the Fourier
transform of both sides of (2.49) yielding
Now, let us assume that the signal of interest, s(t), and the background noise component are
uncorrelated. If available, an estimate of the background noise spectrum can be subtract from
the spectrum of the received signal, Xm (ejω ), resulting in the spectrum of the signal of interest
S(ejω ). Since the microphones in the array are relatively close to one another, the spectral sub-
traction can be applied to all channels using one single estimate of the noise spectrum [11, 51].
The influence of the time-delay, τm , is thus neglected and the notation simplified by dropping
the subscript m. By doing so, Equation (2.50) can then be rewritten as
34
The Spectral Subtraction Algorithm
where ∠X(ejω ) denotes the phase of X(ejω ), and [V (ejω )]2 is the average value of the back-
ground noise power, Pv = |V (ejω )|2 , estimated using successive overlapping frames as illus-
trated in Figure 2.5.
Shortly after the original spectral subtraction algorithm had been proposed by Boll et al. in
[42], Berouti et al. [43] suggested an alternative method to estimate the clean signal from the
received noisy signal that makes use of an SNR dependent over-subtraction factor, α. Plugging
this new factor into Equation (2.53) it then becomes
" # 12 jω )
Ŝ(ejω ) = |X(ejω )|2 − α[V (ejω )]2 ej∠X(e . (2.54)
jω )
From the knowledge that X(ejω ) = |X(ejω )|ej∠X(e , Equation (2.54) can be further rear-
ranged into
21
α|V (ejω )|2
Ŝ(e ) = 1 −
jω
X(ejω )
|X(ejω )|2
= H(e )X(ejω ),
jω
(2.55)
35
Noise Cancellation and DOA Estimation Algorithms
occur can be used to effectively estimate the spectrum of the background noise. The estima-
tion process can be carried out recursively using successive overlapping frames of a predefined
length and controlled by a smoothing parameter, as follows. Let Pv (w, λ) denote the back-
ground noise power at frequency bin w, estimated over a given frame λ of length L samples.
An estimate of P (w, λ), denoted by P̂v (w, λ), can be then obtained using
where 0 < σ < 1 is the so-called smoothing parameter. It was shown in [52] that in speech en-
hancement applications the background noise is considered as being non-stationary and, there-
fore, the smoothing of Equation (2.57) with a fixed parameter σ might lead to estimation inac-
curacies. When denoising impulsive signals, however, the short-time stationarity of background
noise guarantees good estimates of the noise spectrum, for 0.94 < σ < 0.98. In this case, the
background noise power estimate is updated during noise only periods and frozen if an impul-
sive event is detected. This is easily accomplished using a simple impulse detector [53, 54].
As mentioned, the noise component can be removed using either broadband or multi-band
spectral subtraction. The broadband approach was used in the earlier versions of the algorithm
[42, 43] and in a number of publications that followed discussing and analyzing its properties
and new applications [45, 47, 48, 55]. A version of this algorithm for denoising of gunshot
acoustic signals was also developed during this research project and presented in Paper II [49].
As for the multi-band spectral subtraction, the idea was originally proposed by Kamath and
Loizou with application to speech enhancement [56]. It was motivated by the fact that additive
colored noise affects signals differently in different frequencies, which also includes typical
additive noise that might be found in a sniper localization scenario. Therefore, a multi-band
spectral subtraction algorithm for gunshot acoustics was developed based on the same concept
and presented in Paper III [50]. A brief overview of the key elements of this algorithm follows.
Figure 2.6 shows the amplitude spectra of the ballistic shockwave and the muzzle blast
of a 5.56 mm bullet fired from approximately 737 meters with a passing distance relative to
the sensors of roughly 108 meters. As can be seen from that figure, most of the energy of
the shockwave signal is concentrated around the frequencies from 5 to 10 kHz, whereas the
energy of the muzzle blast signal is centered around 1-2 kHz. This information is useful when
specifying some of the parameters of the multi-band spectral subtraction algorithm. First, the
available bandwidth is divided into N non-overlapping channels under some criteria based on
the characteristic power spectral distribution of the gunshot signals. Next, the estimated power
spectrum of the background noise is subtracted from each of these channels independently,
using different subtraction factors, αi , calculated based on the segmental SNR of each sub-band
or channel according to
% &e '
2
k=bi |Xi (k)|
i
where bi and ei represent, respectively, the first and the last frequency bin in the i-th channel.
Parameter αi in (2.54) can be further scaled using a tweaking factor, δi , allowing even more
flexibility and control over the noise removal properties at each channel. Including this factor
36
Beamforming
Amplitude Spectra
150
140
130
120
Amplitude (dB)
110
100
90
80
70 Shock wave
Muzzle blast
60
3 4
10 10
Hz
Figure 2.6: Amplitude spectra of the shockwave and the muzzle blast acoustic
signatures of a 5.56 mm bullet fired from a distance of approximately 737 meters
away from the sensors and with a passing distance of roughly 108 meters.
Usually, the additive noise component is colored and the spectral subtraction based noise re-
duction method as in (2.59) allows for more flexibility in the noise removal process, thereby
contributing to further reducing the presence of artifacts and distortions in the denoised signal.
This is one of the major advantages of the multi-band spectral subtraction approach over its
broadband counterpart.
4 Beamforming
Sensors for acoustic sniper localization systems are required to have a wide dynamic range in
order to capture both the high sound pressure from the ballistic shockwave and the possibly
weak muzzle blast signal, while being able to withstand adverse environmental conditions.
Microphones that meet these requirements are expensive and, therefore, it is desirable to keep
the number of sensors to a minimum. This aspect imposes some technological constraints,
specially when it comes to applying the beamforming technique for direction-of-arrival (DOA)
estimation and signal enhancement.
This section discusses the delay-and-sum beamforming method applied to gunshot acous-
tics. This technique is very simple and consists basically of applying predefined amounts of
37
Noise Cancellation and DOA Estimation Algorithms
e
x[n − τ0 ] z0 [n] w0
+Δ0
A/D Converters
x[n − τ1 ] z1 [n] w1 y[n]
+Δ1 +
x[n − τM −1 ] zM −1 [n] wM −1
+ΔM −1
delays to each sensor in order to enhance the signal impinging the array from a given direction
of interest [57]. This is usually referred to in the literature as steering the array. The DOA of the
signal of interest must be known prior to the steering process. Otherwise, it must be estimated
so that the array can be properly steered. Algorithms for DOA estimation can be divided into
categories, depending on the source localization strategy they are based on, e.g., maximizing
the steered response power (SRP) and measuring the time-difference of arrival (TDOA) [58].
The wave-field sampled by an array of M sensors (see Figure 2.7) can be expressed as a function
of space and time as [57]
where τm denotes the time-delay of the signal received by the m-th sensor with respect to an
arbitrary origin, and is given by
aT pm
τm = , m = 0, 1, . . . , M − 1, (2.61)
c
with c being the speed of sound, and a is a unit vector given by
38
Beamforming
In the far-field wave propagation case, the output of the discrete-time delay-and-sum beam-
former, illustrated in Figure 2.7, can be expressed as
M −1
y[n] = wm zm [n]
m=0
M −1
= wm x[n + Δm − τm ]. (2.64)
m=0
Finally, if Δm = τm is chosen, the signals then add constructively and (2.64) simplifies to
M −1
y[n] = x[n] wm . (2.65)
m=0
The beamformer output, y[n], can therefore be regarded as a scaled version of the input signal,
f (t). The quantities Δm and τm are functions of the azimuth and elevation angles, φ and θ,
respectively, and the task of the DOA estimator is therefore to provide estimates of these angles
of arrival in the presence of potential signals of interest. More details on this matter are provided
in the next subsection.
L−1 M −1
PL (φ, θ) = wm E{xm [n − l + Δm (φ, θ)]xm [n − l + Δm (φ, θ)]}wm , (2.66)
l=0 m=0
where E denotes the expectation operator. The above expression can be written using matrix
notation as
In the case of uniformly weighted microphones, vectors w and xφ,θ [n] are given by
1
w = [w0 w1 · · · wM −1 ]T = 1, (2.68)
M
and
39
Noise Cancellation and DOA Estimation Algorithms
Array of sensors 11
00
00
11
mi
θM
ss-
di
sta
nce
Shockwave front
(90 o
−θ
M) θM
Shockwave DOA
Bullet
(90o − θM )
Detach point
Shooter position
Figure 2.8: Direction-of-arrival and range estimation. The detach point is the point lying on the
bullet trajectory where the shockwave that reaches a given sensor has been generated, and θM
is the Mach angle.
Matrix R̂φ,θ in Equation (2.67) denotes an estimate of the spatial correlation matrix obtained by
averaging the incoming samples within a window of length L according to
L−1
R̂φ,θ = xφ,θ [n − l]xTφ,θ [n − l]. (2.70)
L l=0
The DOA estimator searches for the set of angles (φ, θ) that maximize the array’s output
power as given by Equation (2.67). The DOA estimate, Θ̂(φ, θ), can therefore be obtained from
or equivalently,
( ) *+
Θ̂(φ, θ) = arg max T
tr E[yφ,θ yφ,θ ]{L×L} , (2.72)
(φ,θ)
40
Summary
of the beamformer output evaluated across a window of length L. The estimator as given by
Equation (2.72) follows directly from Equation (2.67) and can easily implemented in practice.
However, it only provides the angles-of-arrival of the muzzle sound and the ballistic shockwave.
As illustrated in Figure 2.8, to estimate the actual position of the sniper one must first estimate
the bullet trajectory which in turn requires knowledge of the bullet speed and its passing distance
relative to the sensors. But this topic is outside the scope of this work.
5 Summary
This chapter presents an overview of the adaptive filtering, the spectral subtraction, and the
beamforming techniques in the context of acoustic sniper localization systems. The first two
techniques are applied to the noise cancellation problem, whereas the third one is used for
direction-of-arrival estimation. Basic adaptive filtering algorithms, namely, the least-mean-
squares (LMS) and the recursive-least-squares (RLS), are considered. In addition, stable array
variants of the RLS algorithm based on the QR Decomposition, more tailored for practical
implementations, are motivated and briefly discussed. Detailed treatments of this subject can
be found in [36, 37, 41]. The main purpose of this overview is to lay the theoretical background
to motivate and support the discussion presented in Chapter 3, while providing an introduction
to the original contributions in the publications that form the second part of this thesis.
41
3 | Discussion and Future Works
This chapter discusses of the original contributions in this thesis and their underlying motiva-
tion. These contributions have been published in peer-reviewed journal and conference papers,
plus one book chapter.
1 Technical Analysis
Recall that the acoustic sniper localization problem can be divided in three steps: (1) Detect
the shockwave and the muzzle blast acoustic signals; (2) Estimate their respective Direction-
of-Arrival (DOA); and (3) Estimate the Mach angle of the ballistic shock wave and triangulate
to determine the shooter’s position. The whole process is obviously dependent on whether
step one is carried out successfully, i.e., on whether the two acoustic signatures of interest are
detectable. At the beginning of this research project, an algorithm that performs step three was
already available and, therefore, it was decided that developing robust solutions to increase the
reliability of the algorithms used in steps one and two should be a priority.
There is a combination of factors that can prevent the muzzle blast and the shockwave
acoustic signatures from being properly detected. To begin with, both signals can be masked
by the background noise. Indeed, considering the fact that the sound pressure is inversely
proportional to the distance from the source, this is very likely to happen, specially in long range
detection. The muzzle blast can also be suppressed at the origin if the gun is equipped with a
silencer. As for the shockwave, the only way to guarantee its total absence is by using subsonic
ammunition. Nonetheless, being able to detect the signals is a necessary but not sufficient
condition for solving the sniper localization problem. For instance, the multipath propagation
effect, briefly described in Section 2.3 of Chapter 1, can introduce ghost sources that make the
localization problem even harder to solve.
Today, there is a huge variety of gun accessories designed to help the sniper in many different
ways. These include, muzzle sound and flash suppressors, and muzzle brakes to counteract the
backward momentum of the firing gun, known as recoil. However, muzzle blast suppressors,
or silencers, have no effect on the ballistic shockwave associated with the supersonic projectile.
43
Discussion and future works
The only way to suppress both the muzzle blast and the ballistic shockwave acoustic signatures
is by using a combination of silencer and subsonic ammunition. While a soldier using the “crack
& bang” technique (see Section 1.1 of Chapter 1) would need to detect both the muzzle blast
and the ballistic shockwave in order to be able to estimate the range and the direction a potential
enemy sniper would be shooting from, an automatic acoustic sniper localization system is able
to provide an estimate of the bullet trajectory even when only the shockwave is detected.
Ballistics implications
The use of silencer with subsonic ammunition is a viable option only under certain circum-
stances and is restricted to short-range shootings only. That is because such configuration has
a negative impact on both external and terminal ballistics, by lowering the speed and, conse-
quently the effective range and the lethality of the projectile. In addition, the use of silencer
makes it more difficult for the sniper to account for factors such as wind drift and gravity.
Indeed, at lower speeds, the deflection caused by these two factors combined becomes much
harder to compensate for, which compromises accuracy. Remaining silent is, therefore, not one
of the sniper’s major concerns when shooting from long distances (several hundred meters).
This fact alone is enough to justify the idea of developing sniper localization systems based on
the processing of the acoustic signatures from muzzle blast and the ballistic shockwave.
Adaptive filtering and spectral subtraction are two well known techniques that have been ap-
plied successfully to enhance signals corrupted by noise in a wide variety of scenarios. This
work shows that both methods can also be used for denoising of impulsive gunshot acoustic
signals with satisfactory results. The Least-Mean-Squares (LMS) and the Recursive Least-
Squares (RLS) are two popular families of adaptive filtering algorithms with different proper-
ties concerning rate of convergence, stability, and computational complexity. The LMS algo-
rithm is particularly known for its low computational complexity and stability. Nonetheless, in
applications where higher rate of convergence and tracking capability are desirable, the RLS
algorithm is a better option, specially in its stable array versions based on the QR decomposi-
tion. These benefits however come at a price of increased computational complexity of order
O[N 2 ]. This fact motivated the development of the so-called fast QRD-RLS algorithms which
have a computational complexity of O[N ], while exhibiting the same attractive numerical and
convergence properties of the basic QRD-RLS algorithm. This topic is discussed in the book
chapter included in the second part of this thesis. More details are provided in the overview of
publications presented in the next section.
The spectral subtraction algorithm for denoising of gunshot acoustic signals, initially pro-
posed in Paper II [49] and later on in an alternative version in Paper III [50], is a simple and
effective method that offers some advantages, specially in terms of computational complexity.
Another major advantage is related to the fact that these algorithms operate in the frequency do-
main. This aspect can be exploited when implementing feature extraction algorithms for signal
recognition that usually requires frequency domain analysis as well. However, noise cancella-
tion algorithms based on the spectral subtraction method have some known inherent limitations,
e.g., amplitude and phase distortions, which cannot always be neglected [55]. Nonetheless, the
44
Overview of Publications
impact of these constraints becomes less relevant in applications where the resynthesized time
domain version of the signal is not the primary objective. Another fundamental drawback of
the spectral subtraction method has to do with the fact that it provides a very low SNR gain for
input SNRs close to 0 dB and lower [55].
The array of microphones can also provide a significant SNR gain with supplementary ben-
efits. For instance, in the presence of a single source, and assuming the free field propagation
case, the sound pressure falls off as 1/r, where r is the range. In the case of four sensors with
coherent averaging, the sound pressure becomes four times as large. The noise component will
√
also increase, but only with 4 = 2 (averaging of power), resulting therefore in an array gain
of
AGdB = 10 log (4/2) = 6 dB.
This means that, under ideal conditions, i.e., no reflecting surfaces, absence of background noise
or other sources of interference, an array of M = 4 microphones would provide an increase in
the voltage SNR by a factor of 2. That would be the same as if the sound pressure fell off with
2/r = 1/(r/2), and is therefore equivalent to doubling the detection range [57]. Moreover, the
improved SNR signal at the array’s output can be used for features recognition purpose, thereby
contributing to lowering false alarm and miss-detection rates.
2 Overview of Publications
This section gives an overview of the publications included in this thesis, comprising a book
chapter and five papers. The book chapter deals with a special class of adaptive filters known as
Multichannel Fast QRD-RLS algorithms. Paper I addresses the direction-of-arrival estimation
problem, while Paper II-IV are concerned with the issue of noise cancellation in gunshot acous-
tics. Finally, the multipath propagation effect in gunshot acoustics is discussed in Paper V. The
original contributions in each of these publications are detailed in the next subsections.
This book chapter, originally published in [60], features algorithms proposed by other re-
searchers, but also includes some new algorithms [61, 62, 63] developed based on original
ideas by António Ramos, in collaboration with Dr. José A. Apolinário Jr. from the Military
Institute of Engineering (IME), Brazil, and Dr. Stefan Werner, who was then with the Helsinki
University of Technology, Finland, and is now with the Department of Signal Processing and
Acoustics at the Aalto University School of Electrical Engineering, Aalto, Finland. The book
chapter provides a comprehensive and up-to-date discussion of the Multichannel Fast QR De-
composition Recursive Least Squares (MC-FQRD-RLS) algorithms, addressing issues such as
derivation, implementation, and comparison in terms of computational complexity.
45
Discussion and future works
2.2 Papers
Paper I
This paper presents an alternative approach to estimate the DOA of the muzzle blast and the bal-
listic shockwave acoustic signals, as required in the acoustic sniper localization application. Es-
timating the DOA using this method, as opposed to those based on Time-Difference-of-Arrival
(TDOA) commonly used in sniper positioning systems described in the available literature,
opens new possibilities to the design of more robust and reliable sniper positioning systems.
Time-domain delay-and-sum beamforming algorithms require signals to be interpolated [64]
(up-sampled) in order to achieve a good performance. Alternatively, a high sampling rate can
be used. The SNIPOS system uses a sampling rate of 96 kHz so that the shockwave signal is
well sampled, despite its very short duration and wide band-width. Therefore, it was possible to
use a broadband time-domain version of the Steered Response Power (SRP) algorithm without
the need for interpolation. The beamforming method offers major advantages, e.g., the possi-
bility of increasing the system’s detection range by exploiting the improved SNR signal at the
beamformer’s output. This has the direct and desirable consequence of lowering the system’s
false alarm and miss-detection rates.
46
Overview of Publications
Paper II
This paper introduces a broadband spectral subtraction based algorithm for real-time noise can-
cellation, with application to gunshot acoustic signals. The fact that the spectral subtraction
method is implemented in the frequency domain is potentially advantageous, specially in terms
of computational complexity. That is because the proposed algorithm can be integrated with
other frequency domain based algorithms to perform different tasks required by the system,
e.g., signal recognition.
One of the requirements for a successful implementation of any spectral subtraction based
algorithm for noise cancellation is the possibility of estimating the power or amplitude spectra of
the additive background noise component. In the sniper positioning application, relatively long
periods without gunshot signals occur which turns the process of estimating the noise spectrum
into a relatively easy task. The experimental results using real data are very promising and show
that the algorithm can be used effectively in order to improve the reliability of sniper positioning
systems, specially in low SNR environments.
The proposed algorithm was tested using a dataset generated by combining signals from real
gunshots and real vehicle noise. The noise component was generated using a steel tracked mil-
itary tank running on asphalt and includes, therefore, the sound from the vehicle engine, which
varies slightly in frequency over time according to the engine’s rpm, and the sound from the
steel tracks as the vehicle moves. The algorithm can potentially be used in other applications,
such as seismic exploration and underwater acoustics.
Paper III
This paper proposes a multi-band spectral subtraction algorithm for real-time denoising of
acoustic gunshot signals. This algorithm is an alternative to the one introduced in [51] and,
shortly after, in an extended version in Paper II. The muzzle blast and the ballistic shockwave
signatures exhibit distinct spectral signatures that are affected differently by additive back-
ground noise. In most real-life situations, the noise component is colored and a multi-band
spectral subtraction approach for noise reduction contributes to reducing the presence of ar-
tifacts in denoised signals. The proposed algorithm was tested using the same dataset use in
Paper II which is generated by combining signals from real gunshots and real noise from a
steel tracked military tank running on asphalt.
47
Discussion and future works
Paper IV
This paper presents a comparative analysis on the performance of different real-time noise
reduction techniques applied to gunshot acoustics. Three different methods are investigated,
namely adaptive filtering, spectral subtraction, and beamforming. The adaptive filtering and
spectral subtraction methods require that a strongly correlated version of the background noise
must be available. That is guaranteed owing to the short-time stationarity of the background
noise relative to the impulsive gunshot signals, and the relatively long periods of noise only that
occurs in this application. Specifically, these facts make it possible to estimate the background
noise spectrum, as required by the spectral subtraction algorithm, while a delayed version of
the same background noise can be used in the adaptive filtering technique which requires the
availability of a strongly correlated version of the background noise when used in a signal en-
hancement configuration.
Both the adaptive filtering and the spectral subtraction techniques suited very well into the
application. Adaptive filtering algorithms such as the NLMS offer a good trade-off between
arithmetic complexity and performance in terms of SNR gain. Regarding the spectral subtrac-
tion method, one of its major advantages relies on the fact that it operates in the frequency
domain. This aspect can be taken advantage of when implementing feature extraction algo-
rithms for signal recognition that usually require frequency domain analysis as well. As for the
beamforming technique, it provides a significant SNR gain and, owing to its flexibility, it can
also be used in combination with either the spectral subtraction method or with any suitable
adaptive filtering algorithm. The simulation results based on real data show that these tech-
niques are effective and can contribute to improve the reliability of sniper positioning systems,
specially in low SNR environments.
Paper V
The Multipath Propagation Effect in Gunshot Acoustics and its Impact on the Design of
Sniper Positioning Systems
António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei
Proc. SPIE 8711, April 2013.
This paper discusses the multipath propagation problem in gunshot acoustics applied to the
design of sniper localization systems. Evidences from actual data show that a solution based on
features extraction is feasible and can lead to unambiguous distinction between direct-path and
reflected ballistic shockwaves. The idea can easily be extended to multi shots scenarios, thereby
adding more flexibility and robustness to acoustic sniper localization systems. Moreover, since
acoustic sniper localization systems use an array of sensors, knowledge of the Direction-of-
Arrival Estimation (DOA), can also be used to further improve the performance of the system
under multipath propagation by providing means to help characterizing reflected signals arriving
from a given direction as improbable actual sources, e.g., ground reflections.
48
Future Works
Below is a set of features that can be used to discriminate direct-path shockwaves signals
from reflected ones.
• Energy Dissipation: the energy in a shockwave tends to dissipate much quicker than in
an ordinary sound wave because part of that energy is converted into heat [21]. It is also
known that, in the far field, the ratio between the shockwave overpressure and its period
is asymptotically independent of the shape of the bullet [65].
• Variations in the Period: the period of the shockwave increases directly proportional
to the fourth root of the miss-distance [65]. As such, it is expected that the period of
reflected shockwaves will be longer compared to the period of the respective direct-path
shockwave.
• Energy Absorption: when reflecting off a given surface, part of the energy will be ab-
sorbed as a transmitted shock into the body of the object. The energy absorption is fre-
quency dependent and, because high-frequencies are more affected, reflect shockwaves
will exhibit a frequency spectrum with less energy in its high frequency band as compared
to the direct-path shockwave signal.
3 Future Works
The author have been involved with this project since the year 2008, from 2009 on a part-time
basis. During this period, many contributions have been made, not only on the understanding
of the problem but also on proposing solutions to some of the issues identified when testing the
original SNIPOS prototype. However, many interesting ideas for further improvements in the
acoustic sniper localization system are left for future work, either because they are outside the
scope of the initial proposal or because there was simply not enough time to address all of them.
I am glad to share some of them in the list below.
• Evaluate the performance of features recognition techniques in noisy environments, with
and without the implementation of the noise cancellation methods discussed in this work.
• The problem of multiple shots and multiple shooters, is also worth investigating; this
could be treated in a unified and general framework where the multipath propagation
effect would be considered as a particular case.
• Study the triangularization method based on the muzzle blast and the shockwave models.
• The sniper localization problem becomes very complicated in the case of multiple shoot-
ers and consecutive shots from the same or from different locations, and is worth inves-
tigating. A possible way to go would be to explore correlation in order to sort out the
different gunshot acoustic signatures.
49
Discussion and future works
• System integration to support decision making, specially in cases where immediate en-
gagement might be considered.
50
4 | Conclusion
The firing of a gun generates signatures in the acoustic and electromagnetic infrared spectra that
can be used to estimate the location of a sniper. The position of the sniper can be estimated if
both the ballistic shockwave and muzzle blast acoustic signatures are detected. Another method
of locating snipers is by using a laser range finder in combination with infrared signatures or
visible light signals reflected from snipers tools. This thesis presented a comprehensive analy-
sis of the acoustical sniper position problem. The research work was carried out in connection
with the development of an acoustic sniper positioning system. Reliability and robustness are
two fundamental requirements of such a system. It is expected that, when deployed, the system
should be able to exhibit a satisfactory performance under adverse conditions involving low
SNR and multipath propagation. The problem is analyzed, not only from a technical stand-
point, but also from the sniper’s perspective. This view motivates and helps understanding the
effectiveness of acoustic sniper localization systems.
Propagation models for both the muzzle blast and the shockwave are analyzed, and three
specific problems related to the processing of the signals of interest are addressed: direction-of-
arrival (DOA) estimation, noise cancellation, and the multipath propagation effect. It is shown
how the delay-and-sum beamforming technique can be effectively applied to estimate the DOA
of both the ballistic shockwave and the muzzle blast acoustic signatures by taking advantage
of the array gain to improve the signal-to-noise ratio, thereby increasing the detection range.
Besides showing how noise cancellation techniques can be applied to the problem of enhanc-
ing gunshot acoustic signals, new algorithms were also developed based on both the spectral
subtraction and the adaptive filtering methods. These new algorithms are also applicable to
numerous other fields, including sonar, color image processing, multi-spectral remote sensing
imagery, biomedicine, channel equalization, acoustic echo cancellation, and multidimensional
signal processing.
51
References
[1] J. L. Plaster, The Ultimate Sniper: An Advanced Training Manual for Military and Police
Snipers, 2nd ed. Boulder, Colorado, USA: Paladin Press, January 2006.
[2] F. C. Jonsson, Maritime Sniper Manual: Precision Fire from Seaborne Platforms, 1st ed.
Boulder, Colorado, USA: Paladin Press, December 2010.
[3] US Government, M14 and M14A1 Rifles and Rifle Marksmanship (FM 23-8). Desert
Pubns, June 1994.
[6] M. V. Scanlon, “Helmet-mounted acoustic array for hostile fire detection and localiza-
tion in an urban environment,” in Proc. SPIE Unattended Ground, Sea, and Air Sensor
Technologies and Applications X, vol. 6963, April 2008, pp. 69 630D1–8.
[12] S. D. Beck, H. Nakasone, and K. W. Marr, “An introduction to forensic gunshot acoustics,”
in 162nd Meeting of the Acoustical Society of America, San Diego, California, 31 October–
4 November 2011.
[14] R. Stoughton, “Measurements of small-caliber ballistic shock waves in air,” Journal of the
Acoustical Society of America, vol. 102, pp. 781–787, August 1997.
53
Part I: Introductory chapters
[15] Projectile Detection and Cueing, “AAI,” http://www.aaicorp.com, accessed October 15,
2013.
[16] SpotLite: Electro-Optic Enemy Fire Detection Systems, “Rafael, Advanced Defense Sys-
tems LTD,” http://www.rafael.co.il, accessed October 15, 2013.
[19] S. D. Beck, H. Nakasone, and K. W. Marr, “Variations in recorded acoustic gunshot wave-
forms generated by small firearms,” Journal of the Acoustical Society of America, vol.
129, no. 4, pp. 1748–1759, April 2011.
[20] W. E. Baker, Explosions in Air. Texas, USA: University of Texas Press, November 1973.
[24] E. Mach, “Über den Verlauf der Funkenwellen in der Ebene und im Räume (On the prop-
agation of radio waves in the plane and in space),” Vienna Acad. Sitzungsbr., vol. 78, pp.
819–838, 1878.
[26] G. Ben-Dor, T. Elperin, H. Li, and E. Vasiliev, “The influence of the downstream pressure
on the shock wave reflection phenomenon in steady flows,” Journal of Fluid Mechanics,
vol. 386, pp. 213–232, May 1999.
[27] J. L. Brown, “High pressure hugoniot measurements in solids using mach reflections,”
Ph.D. dissertation, California Institute of Technology, 2011.
[28] Z. Jiang, Y. Huang, and K. Takayama, “Shocked flows induced by supersonic projectiles
moving in tubes,” Computers & Fluids, vol. 33, no. 7, pp. 953–966, July 2004.
54
References
[29] B. Zhang, H. Liu, F. Chen, and G. Wang, “Numerical simulation of flow fields induced by
a supersonic projectile moving in tubes,” Shock Waves, vol. 22, pp. 417–425, July 2012.
[30] D. E. Carlucci and S. S. Jacobson, Ballistics: Theory and Design of Guns and Ammunition,
2nd ed. NW, USA: CRC Press, August 2013.
[31] Headquarters, U.S. Army Materiel Command, Interior Ballistics of Guns. U.S. De-
partment of Commerce, Springfield, VA. 22161: National Technical Information Service,
February 1965.
[32] R. L. McCoy, Modern Exterior Ballistics, 2nd ed. Schiffer Publishing, Ltd., May 2012.
[33] L. K. Miller and K. A. Cunningham, The Wind Book For Rifle Shooters. Boulder, Col-
orado, USA: Paladin Press, January 2007.
[34] B. Litz, Applied Ballistics For Long-Range Shooting, 2nd ed. USA: Applied Ballistics,
LLC, 2011.
[36] P. S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementations, 3rd ed.
New York: Springer, July 2008.
[37] A. H. Sayed, Fundamentals of Adaptive Filtering. New Jersey: Wiley-IEEE Press, June
2003.
[38] G. H. Golub and C. F. V. Loan, Matrix Computations. Baltimore: The Johns Hopkins
University Press, 1983.
[40] S. Alexander and A. Ghimikar, “A method for recursive least squares filtering based upon
an inverse qr decomposition,” Signal Processing, IEEE Transactions on, vol. 41, no. 1, pp.
20–30, January 1993.
[41] J. A. Apolinário Jr., Ed., QRD-RLS Adaptive Filtering, 1st ed. New York: Springer,
March 2009.
[42] S. Boll, “Suppression of acoustic noise in speech using spectral subtraction,” Acoustics,
Speech and Signal Processing, IEEE Transactions on, vol. 27, no. 2, pp. 113–120, April
1979.
[44] Y. Ephraim and D. Malah, “Speech enhancement using a minimum-mean square error
short-time spectral amplitude estimator,” Acoustics, Speech and Signal Processing, IEEE
Transactions on, vol. 32, no. 6, pp. 1109–1121, December 1984.
55
Part I: Introductory chapters
[46] H. Gustafsson, S. Nordholm, and I. Claesson, “Spectral subtraction using reduced delay
convolution and adaptive averaging,” Speech and Audio Processing, IEEE Transactions
on, vol. 9, no. 8, pp. 799–807, November 2001.
[47] J. Meyer and K. Simmer, “Multi-channel speech enhancement in a car environment using
Wiener filtering and spectral subtraction,” in Acoustics, Speech, and Signal Processing,
Proceedings of the 1997 IEEE International Conference on, vol. 2, April 1997, pp. 1167–
1170.
[48] T. Tosanguan, R. Dickinson, and E. Drakakis, “Modified spectral subtraction for de-
noising heart sounds: Interference suppression via spectral comparison,” in IEEE Biomed-
ical Circuits and Systems Conference – BioCAS 2008., November 2008, pp. 29–32.
[50] ——, “A multi-band spectral subtraction based algorithm for real-time noise cancellation
applied to gunshot acoustics,” in Proc. SPIE, Sensors, and Command, Control, Commu-
nications, and Intelligence (C3I) Technologies for Homeland Security and Homeland De-
fense XII, vol. 8711, June 2013, p. 871109.
[51] ——, “Real-time vehicle noise cancellation techniques for gunshot acoustics,” in Proc.
SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I) Tech-
nologies for Homeland Security and Homeland Defense XI, vol. 8359, May 2012, pp.
835 917–835 917–9.
[52] R. Martin, “Noise power spectral density estimation based on optimal smoothing and min-
imum statistics,” Speech and Audio Processing, IEEE Transactions on, vol. 9, no. 5, pp.
504–512, July 2001.
[53] T. Kasparis and J. Lane, “Suppression of impulsive disturbances from audio signals,” Elec-
tronics Letters, vol. 29, no. 22, pp. 1926–1927, October 1993.
[54] A. Dufaux, “Detection and recognition of impulsive sound signals,” Ph.D. dissertation,
University of Neuchâtel, Switzerland, 2001.
[55] N. Evans, J. S. D. Mason, W. Liu, and B. Fauve, “An assessment on the fundamental lim-
itations of spectral subtraction,” in Acoustics, Speech and Signal Processing, Proceedings
of the 2006 IEEE International Conference on, vol. 1, May 2006, pp. I – 145–148.
[56] S. Kamath and P. Loizou, “A multi-band spectral subtraction method for enhancing speech
corrupted by colored noise,” in Acoustics, Speech, and Signal Processing, Proceedings of
the IEEE International Conference on, vol. 4, May 2002, pp. IV–4164.
56
References
[57] H. L. V. Trees, Optimum Array Processing (Part IV of Detection, Estimation, and Modu-
lation Theory), 1st ed. New York: Wiley-Interscience, 2002.
[59] J. Dmochowski, J. Benesty, and S. Affes, “Direction of arrival estimation using the pa-
rameterized spatial correlation matrix,” Audio, Speech, and Language Processing, IEEE
Transactions on, vol. 15, no. 4, pp. 1327–1339, May 2007.
[61] A. L. L. Ramos and J. A. Apolinário Jr., “A lattice version of the multichannel fast QRD
algorithm based on a posteriori backward errors,” Lecture Notes in Computer Science,
vol. 3124, pp. 488–497, August 2004.
[62] A. L. L. Ramos, J. A. Apolinário Jr., and S. Werner, “A general approach to the derivation
of block multichannel fast QRD-RLS algorithms,” in Proc. European Signal Processing
Conference EUSIPCO’2005, Antalya, Turkey, vol. 1, September 2005, pp. 1–4.
[63] A. L. L. Ramos, J. A. A. Jr., and S. Werner, “Multichannel fast QRD-RLS adaptive filter-
ing: Block-channel and sequential-channel algorithms based on updating backward pre-
diction errors,” Signal Processing, pp. 1781–1798, 2007.
[64] D. Rathjen, G. Bodecker, and M. Siegel, “Omnidirectional beam forming for linear an-
tennas by means of interpolated signals,” Oceanic Engineering, IEEE Journal of, vol. 10,
no. 3, pp. 260–268, July 1985.
[65] J. R. Aguilar, R. A. Salinas, and M. A. Abidi, “Acoustical model of small calibre ballistic
shock waves in air for automatic sniper localization applications,” in Proc. SPIE, Sen-
sors, and Command, Control, Communications, and Intelligence (C3I) Technologies for
Homeland Security and Homeland Defense VI, vol. 6538, May 2007, p. 65381D.
57
Part II
Publications
59
Book Chapter
61
Multichannel Fast QRD-RLS Algorithms
1 Introduction
Multichannel signal processing can be found in various applications such as color image pro-
cessing, multispectral remote sensing imagery, biomedicine, channel equalization, stereophonic
echo cancelation, multidimensional signal processing, Volterra-type nonlinear system identifi-
cation, and speech enhancement [1, 2]. When choosing among the adaptive algorithms that
can cope with multichannel signals, the choice is more than often based on stability, conver-
gence speed, and computational complexity. The standard QR decomposition recursive least-
squares (QRD-RLS) algorithm stands out as potential good option because of its well known
fast convergence property and excellent numerical behavior. However, its O(P 2 ) computational
complexity makes its use prohibitive when higher order filters are required.
António L. L. Ramos
Buskerud University College, Kongsberg – Norway
e-mail: antonio.ramos@hbv.no
The FQRD-RLS algorithms, in general, offer the same fast converging feature as the stan-
dard QRD-RLS algorithm, while attaining a lower computational complexity, which is achieved
by exploiting the underlying time-shift structure of the input signal vector. Historically, the first
solutions were presented for the case where the input signal is just a “tapped-delay” line, i.e.,
a single-channel signal, and MC-FQRD-RLS algorithms arise as a natural extensions of basic
FQRD-RLS algorithms making them useful also in multichannel applications. The MC-FQRD-
RLS algorithms can be classified in three distinct ways, according to [3]: (1) which error vector
is being updated (a priori or a posteriori); (2) the type of prediction used (forward or back-
ward), 1 and; (3) the approach taken for the derivation (sequential- or block-type). The first two
are inherited from the single-channel case, whereas the last one, specific for multichannel algo-
rithms, determines how new multichannel input samples are processed. These three concepts
are combined in Table 1 for the case of MC-FQRD-RLS algorithms based on backward predic-
tion errors, which are the ones addressed in this work. The structure parameter introduced in
this table simply denotes the way a particular algorithm is implemented.
Depending on the approach taken for the derivation, the O(P 2 ) computational complex-
ity of the standard QRD-RLS implementation can be reduced to O(M P ) and O(M 2 P ), for
sequential- and block-channel processing algorithms, respectively; with P being the total num-
ber of filter coefficients and M the number of channels. Although the computational cost of
block-channel algorithms is slightly higher than sequential-channel algorithms, they are more
suitable for parallel processing implementations.
After reformulating the problem for the multichannel case, most of the equations are turned
into matrix form, with some involving matrix inversion operations. Beside being potential
sources of numerical instability, the computational burden is also greatly increased contrasting
1
This work does not consider FQRD-RLS algorithms based on the updating of the forward error vector. These
algorithms are reported to be unstable, in contrast with their backward error vector updating based counterparts.
64
Problem Formulation
2 Problem Formulation
The MC-FQRD-RLS problem for channels of equal orders was addressed in early 90’s in [5],
where the sequential approach was introduced to avoid complicated matrix operations, and in
[12] where both sequential and block approaches were addressed. Later, multiple-order block-
multichannel algorithms comprising scalar operations only were introduced in [3, 8, 11, 13].
For the multichannel problem, the weighted least-squares (WLS) objective function, intro-
duced in Chapter 2, is given as
k
ξ(k) = λk−i [d(i) − xTP (i)wP (k)]2 = eT (k)e(k), (1)
i=0
and
" #
xTP (k) = xTk xTk−1 ··· xTk−N +1 , (3)
where xTk = [x1 (k) x2 (k) · · · xM (k)] is the input signal vector at instant k. As illustrated
in Figure 1, N is the number of filter coefficients per channel, M is the number of input chan-
nels, and wP (k) is the P × 1 coefficient vector at time instant k, P = M N being the total
number of elements for the case of channels with equal orders.
The good numerical behavior of the QR-decomposition based RLS algorithms is due to
the fact that they make use of the square root UP (k) of the input-data autocorrelation matrix
XTP (k)XP (k). The lower triangular matrix UP (k) is also known as the Cholesky factor of
XTP (k)XP (k) and can be obtained by applying a set of Givens rotations QP (k) onto XP (k).
Hence, premultiplying both sides of (2) by unitary matrix QP (k) does not alter its norm yielding
65
Book Chapter: Multichannel Fast QRD-RLS Algorithms
xP (k)
xk
x1 (k)
x2 (k)
xM (k) d(k)
z −1 xk−1
+
y(k) &
wP −
z −1 xk−N +1
e(k)
eq1 (k) dq1 (k) 0
eq (k) = QP (k)e(k) = = − wP (k). (4)
eq2 (k) dq2 (k) UP (k)
Again, minimizing eq (k)2 is equivalent to minimizing the cost function of (1). In other
words, Equation (1) is minimized by choosing wP (k) in (4) such that dq2 (k) − UP (k)wP (k)
equals zero, i.e.,
wP (k) = U−1 P (k)dq2 (k). (5)
In many applications we may come across the need of dealing with different channel orders
which is referred to as the multiple-order case. In such a scenario the elements of the input
vector are arranged in a slightly different manner than for the equal-order case treated above.
Below we explain how to build the input vector such that we can cope with both equal- and
multiple-order channels.
66
Problem Formulation
the first channel are chosen to be the leading elements of xP (k), followed by N2 − N3 pairs
of samples from the first and second channels, followed by N3 − N4 triples of samples of the
first three channels and so on till the NM − NM +1 M –tuples of samples of all channels. It is
assumed that NM +1 = 0.
Alternatively, consider the N1 × M matrix X̃(k) whose ith row contains the Ni input data
samples of channel i, i.e.,
⎡ ⎤
x1 (k) x1 (k − 1) x1 (k − 2) . . . x1 (k − N1 + 1)
⎢ 01×(N −N ) x2 (k) x2 (k − 1) . . . x2 (k − N2 + 1) ⎥
⎢ 1 2 ⎥
X̃(k) = ⎢ .. .. .. ⎥ (6)
⎣ . . . ⎦
01×(N1 −NM ) xM (k) . . . xM (k − NM + 1)
where the zero-vectors appearing to the left in each row are of proper size to maintain the
dimension of X̃(k) (if N1 = N2 = . . . = NM , the zeros will disappear). The multichannel
input vector xP (k) is obtained by simply stacking the columns of matrix X̃(k) and excluding
the zeros that were inserted in (6). We see from (6) that the last M samples of vector xP (k)
are {xl (k − Ni )}Mi=1 . As a result, updating the input vector from one time instant to the next,
i.e., from xP (k) to xP (k + 1), becomes particularly simple. This is because we know that, by
construction, the last M samples of xP (k) are to be removed when shifting in the new input
samples {xi (k + 1)}M i=1 .
The procedure detailed above gives rise to two distinct ways of obtaining the expanded
input vector, xP +M (k + 1): 1) The new samples from each channel are shifted in one by one
and processed recursively, from the first to the last channel and; 2) All new samples from the
different channels are shifted in together and processed simultaneously.
The first approach leads to sequential-type multichannel algorithms and the second one
results in block-type multichannel algorithms. Before presenting the different algorithms, we
take a closer look at the sequential- and block-type input vectors.
For the sequential-channel case, the extended input vector, xP +M (k + 1), is constructed from
xP (k) in M successive steps as
" #
xTP +1 (k + 1) = x1 (k + 1) xTP (k) , (7)
" #
xTP +i (k + 1) = xi (k + 1) xP +i−1T (k+1) Pi , (8)
where Pi is a permutation matrix which takes the most recent sample xi (k+1) of the ith channel
to position pi and left shifts the first pi − 1 elements of xTP +i−1 (k + 1), where
i−1
pi = r(Nr − Nr+1 ) + i, i = 1, 2, · · · , M. (9)
r=1
After processing all M channels, the first P elements of the updated extended input vector
67
Book Chapter: Multichannel Fast QRD-RLS Algorithms
N1 − N2 samples from
x1 (k) x1 (k) the first channel.
z −1
x1 (k − 1) N2 − N3 pairs of
z −1 samples from the first
x2 (k) and second channels.
−1
z
x1 (k − 2)
x2 (k) x2 (k − 1)
z −1 N3 − N4 triplets
x3 (k) of samples from
z −1 the first, second,
x1 (k − 3) and third channels.
x3 (k) x2 (k − 2)
z −1
x3 (k − 1)
xP (k)
68
Sequential-type Multichannel Fast QRD-RLS Algorithms
i.e.,
⎡ ⎤ ⎡ ⎤
x1 (k + 1) x1 (k + 1)
⎢ x2 (k + 1) ⎥ ⎢ x1 (k) ⎥
⎢ ⎥ ⎢ ⎥
⎢ x3 (k + 1) ⎥ ⎢ x2 (k + 1) ⎥
⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎡ ⎤ ⎢ x1 (k) ⎥ ⎢ x1 (k − 1) ⎥ ⎡ ⎤
⎢ ⎥ ⎢ ⎥
x1 (k + 1) ⎢ x1 (k − 1) ⎥ ⎢ x2 (k) ⎥ xP (k + 1)
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ x2 (k + 1) ⎥ ⎢
T⎢ x2 (k) ⎥ ⎢ x3 (k + 1) ⎥ ⎢ x1 (k − 3) ⎥
PT ⎢ ⎥=P ⎢ ⎥=⎢ ⎥=⎢ ⎥. (11)
⎣ x3 (k + 1) ⎦ x1 (k − 2) ⎥ ⎢ x1 (k − 2) ⎥ ⎣ x2 (k − 2) ⎦
⎢ ⎥ ⎢ ⎥
xP (k) ⎢ x2 (k − 1) ⎥ ⎢ x2 (k − 1) ⎥ x3 (k − 1)
⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢ x3 (k) ⎥ ⎢ x3 (k) ⎥
⎢ ⎥ ⎢ ⎥
⎢ x1 (k − 3) ⎥ ⎢ x1 (k − 3) ⎥
⎢ ⎥ ⎢ ⎥
⎣ x2 (k − 2) ⎦ ⎣ x2 (k − 2) ⎦
x3 (k − 1) x3 (k − 1)
In this section we consider algorithms that process the channels sequentially. In the following,
we shall derive the a priori [11] and the a posteriori [3] versions of sequential MC-FQRD-RLS
algorithms based on updating backward error vectors.
Due to close similarities with the single channel case, basic concepts on how to solve the
backward and forward prediction problems are omitted. Indeed, the sequential processing of
multichannel signals corresponds to solving the single channel algorithm M times, with M
being the number of channels. Moreover, from the forward prediction problem, the extended
input data matrices used in sequential-channel algorithms are defined as
⎡ ⎤
xTP +i (k)
⎢ 1/2 T
λ xP +i (k − 1) ⎥
⎢ ⎥
XP +i (k) = ⎢ .. ⎥ , i = 1, 2, · · · , M, (12)
⎣ . ⎦
λk/2 xTP +i (0)
where vector xP +i (k) is the extended input vector defined in Equation (8).
Equation (12) suggests that the updating of the information matrix is performed in M forward
steps for each iteration.
69
Book Chapter: Multichannel Fast QRD-RLS Algorithms
First step (i = 1)
where d(1)
f 1 (k) = [x1 (k) λ
1/2 x (k − 1)
1 ··· λk/2 x1 (0)].
(1)
Let QP (k) be the orthogonal matrix associated with the Cholesky factor UP (k − 1) of
matrix XTP (k − 1)XP (k − 1). Then, from (13), we can write
⎡ (1) ⎤
e q1 (k) 0
(1)
QP (k) 0 (1) XP (k − 1) ⎢ f(1) ⎥
df (k) = ⎣ d (k) U P (k − 1) ⎦. (14)
0 I1×1 0T f q2
λ x1 (0)
k/2
0 T
(1)
In the previous equation, Qf (1) (k) is the orthogonal matrix zeroing ef q1 (k) generating
(1) (1)
ef P (k). Matrix Qf (1) (k) completes the triangularization process by zeroing df q2 (k) from (15)
(1)
in a top down procedure against ef P (k). Removing the resulting null section in the upper part
of (15) gives
(1)
(1) df q2 (k) UP (k − 1)
UP +1 (k) = Qθf (k) (1) . (16)
ef P (k) 0T
From (16), we get the following relation that is useful for the updating of aP (k) and fP (k),
the a priori and the a posteriori error vectors, respectively.
[UP +1 (k + 1)]−1 =
⎡ 1
⎤
0T (1)
ef P (k+1)
T
⎣ (1)
⎦ Qθf (1) (k + 1) (17)
U−1
P (k) − (1) 1 U−1 (k)df q2 (k + 1)
ef P (k+1) P
Also from (16), we see that Qθf (1) (k) is the Givens rotation matrix responsible for zeroing
70
Sequential-type Multichannel Fast QRD-RLS Algorithms
(1) (1)
df q2 (k) against ef P (k), i.e.,
(1)
0 (1) df q2 (k + 1)
(1) = Qθf (k + 1) (1) . (18)
ef 0 (k + 1) ef P (k + 1)
(1)
The updating of df q2 (k) is performed according to
(1)
ẽf q1 (k + 1) (0) x1 (k + 1)
(1) = QθP (k) (1) , (19)
df q2 (k + 1) λ1/2 df q2 (k)
(0) (M )
where QθP (k) = QθP (k − 1), i.e., the values obtained after processing the M th channel on
(i)
last iteration. For 1 < i ≤ M , df q2 (k) is updated according to
(i)
ẽf q1 (k + 1) (i−1) xi (k + 1)
(i) = QθP +i−1 (k + 1) (i) . (20)
df q2 (k + 1) λ1/2 df q2 (k)
As in the first step, matrix XP +i (k) must be triangularized to obtain UP +i (k) (Cholesky
factor of XTP +i (k)XP +i (k)). This process is detailed in the following. Let QθP +i−1 (k) denote
the orthogonal matrix associated with the QR decomposition of XP +i−1 (k). From (21), we can
write
(i) QP +i−1 (k) 0 XP +i (k)
Qf (k) =
0T 1 0T
⎡ (i) ⎤ ⎡ ⎤
ef q1P +i−1 (k) 0 0 0
(i) ⎢ ⎥ ⎢ (i) ⎥
Qf (k) ⎣ d(i) f q2 (k) UP +i−1 (k) ⎦ Pi = ⎣ df q2 (k) UP +i−1 (k) ⎦ Pi .
(i)
λk/2 xi (0) 0T efP +i−1 (k) 0T
(22)
(i)
Equation (22) is obtained by annihilating ef q1P +i−1 (k) into the first element of the last row
(i)
of the matrix using an appropriate orthogonal matrix, Qf (k), and thereafter removing the
resulting null section.
The existence of the permutation matrix Pi in (22) prevents us from directly annihilating
(i) (i)
df q2 (k) into efP +i−1 (k) to complete the triangularization of matrix XP +i (k) (i.e., generating
UP +i (k)). Figure 3 illustrates the application of Givens rotations under these circumstances.
71
Book Chapter: Multichannel Fast QRD-RLS Algorithms
I II III IV
(i)
Pi Qθf (k) Pi
Figure 3: Obtaining the lower triangular factor UP +i (k). The lighter color tone on top of parts
III and IV represents the matrix elements that have been rotated against the bottom line by the
(i)
set of Given rotations in Qθf (k).
(i)
The process is summarized as follows. The permutation factor, Pi , right shifts df q2 (k) to the
ith position as shown in the first part of the figure. Then, the set of P + i − pi Given rotation
(i)
matrices, Qθf (i) , nullifies the first P + i − pi elements of df q2 (k) by rotating them against
(i)
efP +i−1 (k) in a top down procedure. The desired triangular structure is finally reached using
another permutation factor that moves the last row of the matrix to the P − pi + 1 position, after
downshifting the previous P − pi rows. This permutation factor coincides with Pi .
Remark 1. The lower triangular matrix UP +i (k), obtained as described above must be
(i)
positive definite. That is guaranteed if its diagonal elements and efP +i−1 (k) are positive.
(i)
Recalling that efP +i−1 (k) is the absolute value of the forward error, UP +i (k) will be positive
definite if it is initialized properly.
From (23), we realize that Qθf (i) (k) is the Givens rotation matrix responsible for zeroing
(i) (i)
df q2 (k) against ef P (k), which yields
(i)
0 (i) df q2 (k + 1)
(i) = Qθf (k + 1) (i) . (25)
ef 0 (k + 1) ef P (k + 1)
72
Sequential-type Multichannel Fast QRD-RLS Algorithms
−1/2 a(i) (k + 1)
aP +i (k + 1) = λ U−T
P +i (k
+ 1)xP +i (k + 1) = , and (26)
aP (k + 1)
(i)
f (k + 1)
fP +i (k + 1) = U−T
P +i (k + 1)x P +i (k + 1) = , (27)
fP (k + 1)
for i = 1, 2, · · · , M .
In (26) and (27), a(i) (k + 1) and f (i) (k + 1) are vectors containing the first i elements of
aP +i (k + 1) fP +i (k + 1), respectively. Recall that for i = 1, U−1
P +i (k + 1) in (26) and (27) equals
U−1
P +1 (k) as defined in (17).
The updating of aP +i (k + 1) and fP +i (k + 1) is accomplished in M forward steps at each
instant k:
aP (k) → aP +1 (k + 1) → · · · → aP +M (k + 1),
fP (k) → fP +1 (k + 1) → · · · → fP +M (k + 1).
From (24), (8), and (27), we get the following recursive expression for fP +i (k + 1):
(i) fP +i−1 (k + 1)
fP +i (k + 1) = Pi Q θf (k + 1) (i) , (28)
pP +i−1 (k + 1)
where
(i)
(i) eP +i−1 (k + 1)
pP +i−1 (k + 1) = (i)
, for i = 1, 2, · · · , M. (29)
|efP +i−1 (k + 1)|
(i)
The scalar quantity eP +i−1 (k +1) is the a posteriori forward prediction error for the ith channel,
(i)
and |efP +i−1 (k + 1)| is given by
2
(i) (i) (i)
|efP +i−1 (k + 1)| = λ1/2 |efP +i−1 (k)| + |ef q1P +i−1 (k + 1)|2 . (30)
For i = 1, rather than (8), we would use (7) in obtaining (28), which simply means that
P1 = I, i.e,
(1) fP (k)
fP +1 (k + 1) = Qθf (k + 1) , (31)
p(1) (k + 1)
with eP (1) (k + 1) denoting the a posteriori forward prediction error of the first channel, and
73
Book Chapter: Multichannel Fast QRD-RLS Algorithms
(1)
|efP (k + 1)| is given by
2
(1) (1) (i)
|efP (k + 1)| = λ1/2 |efP (k)| + |(ef q1P (k + 1)|2 . (32)
Similarly, using (24), (8), and (26), we get the following recursive expression for aP +i (k + 1):
−1/2 (i) aP +i−1 (k + 1)
aP +i (k + 1) = λ Pi Q θf (k + 1) (i) , (33)
rP +i−1 (k + 1)
where
(i)
(i) eP +i−1 (k + 1)
rP +i−1 (k + 1) = √ (i) , for i = 1, 2, · · · , M, (34)
γ (i−1) λ|efP +i−1 (k)|
(i)
and scalar quantity eP +i−1 (k) is the a priori forward prediction error for the ith channel. Again,
for i = 1, we use (7) in obtaining (33) instead of (8), yielding
(1) aP (k)
aP +1 (k + 1) = λ−1/2 Qθf (k + 1) . (35)
r(1) (k + 1)
Remark 2. Examining (28) and recalling the definitions of Q θf (i) (k+1) and Pi , we realize
that the last pi − 1 elements of fP +i (k + 1) and fP +i−1 (k + 1) are identical. Indeed, Givens
rotations in Q θf (i) (k + 1) are such that they act on a smaller portion of fP +i (k + 1) at each
i; then Pi shifts down the unchanged elements which remain unchanged for next i. This
fact reduces the computational cost. The same observation holds for vectors aP +i (k + 1)
and aP +i−1 (k + 1).
For the algorithm based on updating the a posteriori backward errors, the Givens rotations
matrices QθP +i (k + 1) needed in the next forward steps are obtained from
(i)
(i) 1 γP +i (k + 1)
QθP +i (k + 1) = , for i ≥ 1. (36)
0 fP +i (k + 1)
After the M th channel is processed, the joint process estimation is performed according to
eq1 (k + 1) (0) eq1 (k)
= Qθ (k + 1) . (38)
dq2 (k + 1) dq2 (k)
The a posteriori and the a priori multiple order sequential algorithms are summarized in
74
Sequential-type Multichannel Fast QRD-RLS Algorithms
75
Book Chapter: Multichannel Fast QRD-RLS Algorithms
76
Block-type Multichannel Fast QRD-RLS Algorithms
Using (40), and recalling (26), (27), and the definition of the input vector given in (8), we
can now write vectors aP +i (k + 1) and fP +i (k + 1), respectively, as
∗
aP +i (k + 1) = √ (i) (41)
xi (k + 1)/ λef 0 (k) , and
∗
fP +i (k + 1) = (i) (42)
xi (k + 1)/ef 0 (k).
As we can see from (41) and (42), the last element of aP +i (k + 1) and fP +i (k + 1) are known at
each iteration i (for i = 1, 2, · · · , M ) prior to the updating process. That observation is the key
step leading to two alternative implementations of these algorithms for the special case when
the channels are of the same order. Thus, the recursive updating of vectors aP +i (k + 1) and
fP +i (k + 1) are performed now based on this assumption.
The above matrix can be partioned in two distinct ways, depending onto the prediction problem,
backward or forward, to be solved.
77
Book Chapter: Multichannel Fast QRD-RLS Algorithms
Define the backward prediction error matrix for block processing of equal order channels
as
Eb (k + 1) = Db (k + 1) − XP (k + 1)Wb (k + 1)
" # −Wb (k + 1)
= XP (k + 1) Db (k + 1) , (44)
I
where Db (k + 1) and Wb (k + 1) are the respective desired response and coefficient vector
matrices of the backward prediction problem.
Using the relation in (44), and assuming that the post multiplication by permutation matrix
P is already carried out, XP +M (k + 1) can be partitioned as
" #
XP +M (k + 1) = XP (k + 1) Db (k + 1) . (45)
The process of obtaining lower triangular matrix UP +M (k +1) from XP +M (k +1) is performed
as follows.
0 Ebq1 (k + 1)
Qb (k + 1)Q(k)XP +M (k + 1) = Qb (k + 1)
UP (k + 1) Dbq2 (k + 1)
⎡ ⎤
0 0
= ⎣ 0 Eb (k + 1) ⎦ , (46)
UP (k + 1) Dbq2 (k + 1)
The inverse of UP +M (k + 1) as given by (47) will be useful in further steps and is defined
as
−1 −U−1 −1
P (k + 1)Dbq2 (k + 1)Eb (k + 1) U−1
P (k + 1)
[UP +M (k + 1)] = −1 . (48)
Eb (k + 1) 0
where where Df (k+1) and Wf (k+1) are the desired response and the coefficient vector matrix
of the backward prediction problem, respectively. A modified input data matrix X̄P +M (k + 1)
78
Block-type Multichannel Fast QRD-RLS Algorithms
In order to triangulate X̄P +M (k + 1) in (50) and obtain UP +M (k + 1), three sets of Givens
rotation matrices Q(k), Qf (k + 1), and Qf (k + 1) are needed [4, 5, 11]. The role of each
matrix in the triangulation process is illustrated in the following equation.
In (51), Q(k) contains QP (k) as a sub-matrix which triangulates XP (k), generating UP (k).
Matrix Qf (k + 1) is responsible for the zeroing of matrix Ef q1 (k + 1). Note that, when working
with fixed-order (or fixed-dimension, as opposed to the ever increasing dimension of QP (k)),
this is equivalent to annihilating eTf q1 (k + 1), the first row of Ef q1 (k + 1), against the diagonal
of λ1/2 Ef (k), generating Ef (k + 1), as shown in (54).
Removing the ever-increasing null section in (51), and using the fixed-order matrix Qθf (k +
1) embedded in Qf (k + 1), we obtain
Df q2 (k + 1) UP (k)
ŪP +M (k + 1) = Qθf (k + 1) P. (52)
Ef (k + 1) 0
Also starting from (51) and by using the fixed-order matrices Qθ (k) embedded in QP (k) and
Qf (k +1) embedded in Qf (k +1), we obtaine after some algebraic manipulations the following
equations T
ef q1 (k + 1) xTk+1
= Qθ (k) , (53)
Df q2 (k + 1) λ1/2 Df q2 (k)
where xTk+1 = [x1 (k +1) x2 (k +1) · · · xM (k +1)] is the forward reference signal and eTf q1 (k +
1) is the rotated forward error, and
0T eTf q1 (k + 1)
= Qf (k + 1) . (54)
Ef (k + 1) λ1/2 Ef (k)
2
Note that X̄P +M (k + 1) is formed by adding M − 1 rows of zeros to XP +M (k + 1) such that UP +M (k + 1)
has the correct dimension in (55), i.e., (P + M ) × (P + M ).
79
Book Chapter: Multichannel Fast QRD-RLS Algorithms
I II III IV
Qθf (k + 1) P P
Figure 4: Obtaining the lower triangular UP +M (k + 1). The lighter color tone on top of parts
II-IV denotes the matrix elements that have been rotated against the third line from the bottom
by the third (and last) set of Given rotations embedded in Qθf (k + 1).
Note that the permutation matrix P in (52) prevents a direct annihilation of the first M
(1) (2) (M )
columns — corresponding to matrix Df q2 (k + 1) = [df q2 (k + 1) df q2 (k + 1) · · · df q2 (k + 1)]
— against the anti-diagonal of Ef (k + 1) using the set of Givens rotations Qθf (k + 1) =
Qθf (N ) (k + 1) · · · Qθf (2) (k + 1)Qθf (1) (k + 1). From (52) it can be seen that this permutation
factor, P = PM PM −1 · · · P1 , will right-shift the first M columns to position pi , for i = M to
(i)
1, in this order. Thus, only the first P + i − pi elements of each df q2 (k + 1) will be rotated
against the anti-diagonal of Ef (k + 1) using the set of Givens rotations in Qθf (k + 1). It is
straightforward to see that, when the position pi = i, the corresponding permutation factor Pi
degenerates to an identity matrix. If this is true for all M channels, this formulation leads to the
equal-order algorithms of [4, 5, 6, 11].
The process explained above is illustrated in Figure 4 (parts I-III) for a three-channels case
with the first two channels having equal length, i.e., p1 = 1 and p2 = 2; consequently, P1 =
P2 = I. Part one of this figure shows the initial state as in (52) but with reduced dimension,
and the operations involving matrices Qθf (k + 1) and P are illustrated in parts two and three,
respectively. As we can see, the resulting matrix ŪP +M (k + 1) in (52) does not have the desired
lower triangular shape, as depicted in part III of this figure. Hence, another permutation factor,
P, is needed for up-shifting the (P + M − i + 1)th row to the (P + M − pi + 1)th position is
needed (see Figure 4 – parts III-IV) leading to
Df q2 (k + 1) UP (k)
UP +M (k + 1) = PQθf (k + 1) P, (55)
Ef (k + 1) 0
80
Block-type Multichannel Fast QRD-RLS Algorithms
[UP +M (k + 1)]−1 = PT
0 E−1
f (k + 1) T
Q θf (k + 1)P ,
T
× (56)
U−1 −1 −1
P (k) −UP (k)Df q2 (k + 1)Ef (k + 1)
which will be used in the next section to derive the a priori and the a posteriori versions of the
algorithm. Also from (55), we can write
⎡ ⎤
0
⎣ ∗ ⎦ = Qθf (k + 1) Df q2 (k + 1) , (57)
Ef (k + 1)
E0f (k + 1)
where E0f (k + 1) is the Cholesky factor of the zero-order error covariance matrix3 . The asterisk
∗ denotes possible non-zero elements according to the process explained above.
aP +M (k + 1) = λ−1/2 U−T
P +M (k)xP +M (k + 1), and (58)
fP +M (k + 1) = U−T
P +M (k + 1)xP +M (k + 1). (59)
where
" #
r(k + 1) = λ−1/2 E−T
f (k) xk+1 − Wf (k)xP (k)
T
= λ−1/2 E−T
f (k)ef (k + 1), (61)
with ef (k + 1) being the a priori forward error vector. Thus, r(k + 1) can be interpreted as the
N th-order normalized a priori forward error vector. Matrix, Wf (k) given by
Wf (k) = U−1
P (k − 1)Df q2 (k), (62)
contains the coefficient vectors of the forward prediction problem. The matrix inversion opera-
(0)
3
The term is coined due to the fact that, in the single channel case, the corresponding scalar ef (k + 1) =
&k+1 (k+1−i) 2
i=0 λ x (i) is the norm of the zero-order forward prediction error which is an estimate (albeit biased)
of the input variance. Also note that, for zero-order prediction, the forward prediction error vector equals its
(0) (0)
backward counterpart, and ef (k) = eb (k).
81
Book Chapter: Multichannel Fast QRD-RLS Algorithms
Combining (48), (58), and the definition of the input vector in (10), aP +M (k + 1) can be
expressed as (N )
a (k + 1)
aP +M (k + 1) = , (64)
aP (k + 1)
where the M × 1 element vector of aP +M (k + 1), a(N ) (k + 1), is given by
" #
a(N ) (k + 1) = λ−1/2 E−T
b (k) xk−N +1 − Wb (k)xP (k + 1)
T
= λ−1/2 E−T
b (k)eb (k + 1), (65)
with eb (k + 1) being the N th-order a priori backward error vector and matrix Wb (k) contains
the coefficient vectors of the backward prediction problem. From the last equation, a(N ) (k + 1)
can be thought as the N th-order normalized a priori backward error vector 4 .
Using similar procedure, combining equations (10), (56), and (59), yields
fP (k)
fP +M (k + 1) = PQθf (k + 1) , (66)
p(k + 1)
where
" #
p(k + 1) = E−T
f (k + 1) xk+1 − Wf (k + 1)xP (k)
T
= E−T
f (k + 1)ef (k + 1), (67)
with ef (k + 1) being the a posteriori forward error vector. Therefore, p(k + 1) is interpreted
as the N th-order normalized a posteriori forward error vector. Matrix Wf (k + 1) contains the
coefficient vectors of the forward prediction problem.
Now, from (48), (59), and the definition of the input vector in (10), fP +M (k + 1) can be
partitioned as (N )
f (k + 1)
fP +M (k + 1) = , (68)
fP (k + 1)
where vector f (N ) (k + 1) is given by
" #
f (N ) (k + 1) = E−T
b (k + 1) xk−N +1 − Wb (k + 1)xP (k + 1)
T
= E−T
b (k + 1)eb (k + 1), (69)
with eb (k + 1) being the N th-order a posteriori backward error vector and matrix Wb (k + 1)
contains the coefficient vectors of the backward prediction problem. Hence, f (N ) (k + 1) can be
regarded as the N th-order normalized a posteriori backward error vector.
4
As shall be seen in Section 5, this argument can be taken further to demonstrate that aP +M (k + 1) is actually a
nesting of vectors a(j) (k +1) of size M ×1, for j = 0, 1, .., N . Similar observation holds for vector fP +M (k +1).
82
Block-type Multichannel Fast QRD-RLS Algorithms
To solve for p(k + 1) avoiding the matrix inversion in (67), we can use
γ(k) ∗
Qf (k + 1) = . (70)
0 p(k + 1)
where Ψ = λγ 2 (k)E−T −1
f (k + 1)Ef (k)Ef (k)Ef (k + 1).
T
Finally, after premultiplying and postmultiplying (73) by pT (k + 1) and p(k + 1), respec-
tively, and dividing the result by pT (k + 1)p(k + 1), we obtain
pT (k + 1)Ψp(k + 1)
γ 2 (k) = pT (k + 1)p(k + 1) +
pT (k + 1)p(k + 1)
= p (k + 1)p(k + 1) + ∗2 .
T
(74)
The expression in (74) can be regarded as a Cholesky product. Hence, it can be factored as
γ(k) ∗
=Q , (75)
0 p(k + 1)
83
Book Chapter: Multichannel Fast QRD-RLS Algorithms
For each k, do
{ 1. Obtaining Dfq2 (k + 1) and ef q1 (k + 1)
eTf q1 (k + 1) xTk+1
= Qθ (k) (53)
Df q2 (k + 1) λ1/2 Df q2 (k)
2.
Obtaining E f (k + 1) and Qf (kT + 1)
0T ef q1 (k + 1)
= Qf (k + 1) 1/2 (54)
Ef (k + 1) λ Ef (k)
3. Obtainingp(k + 1)
∗ γ(k)
= Qf (k + 1) implements (67)
p(k + 1) 0
⎡4. Obtaining Q⎤θf (k + 1)
0
⎣ ∗ ⎦ = Qθf (k + 1) Df q2 (k + 1) (57)
Ef (k + 1)
E0f (k + 1)
5. Obtaining fP (k + 1)
fP (k)
fP +M (k + 1) = PQθf (k + 1) (66)
p(k + 1)
6. Obtaining Qθ(k +1) and γ(k +1)
1 γ(k + 1)
Qθ (k + 1) = (76)
0 fP (k + 1)
84
Block-type Multichannel Fast QRD-RLS Algorithms
For each k, do
{ 1. Obtaining Df q2 (k + 1) and
ef q1 (k + 1)
eTf q1 (k + 1) xTk+1
= Qθ (k) (53)
Df q2 (k + 1) λ1/2 Df q2 (k)
2.
Obtaining E f
(k + 1) and Q f (kT+ 1)
0T ef q1 (k + 1)
= Qf (k + 1) 1/2 (54)
Ef (k + 1) λ Ef (k)
3. Obtaining
r(k + 1)
∗ 1/γ(k)
= Qf (k + 1) implements (61)
0 −r(k + 1)
4. Obtaining aP (k + 1)
aP (k)
aP +M (k + 1) = PQθf (k) (60)
r(k + 1)
⎡ Obtaining Q⎤θf (k + 1)
5.
0
⎣ ∗ ⎦ = Qθf (k + 1) Df q2 (k + 1) (57)
Ef (k + 1)
E0f (k + 1)
Obtaining Q
6. θ (k + 1) and γ(k
+ 1)
1/γ(k + 1) 1
= Qθ (k + 1) (77)
0 −aP (k + 1)
7.
Joint Estimation
eq1 (k + 1) d(k + 1)
= Qθ (k + 1) 1/2 (78)
dq2 (k + 1) λ dq2 (k)
8. Obtaining the a priori error
e(k + 1) = eq1 (k + 1)/γ(k + 1) (79)
}
If we now use (81) together with (58), (59), and (10), vectors aP +M (k + 1) and fP +M (k + 1)
85
Book Chapter: Multichannel Fast QRD-RLS Algorithms
From (82) and (83), we can see that the last M elements of aP +M (k + 1) and fP +M (k + 1) are
known quantities. The alternative implementations of these algorithms arise when the recursive
updating of these vectors is performed based on this a priori knowledge.
for j = 0, 1, · · · , N . This property is the key to derive the order-recursive versions of the
algorithms. Indeed, the information provided by (86) and (87) justifies the generalization of
5
Note that the subscripts P +M and N +1 are interchangeable and N +1 is used whenever the order of the prediction
problems needs to be highlighted whereas P +M emphasizes vectors or matrices dimensions.
86
Order-recursive Multichannel Fast QRD-RLS Algorithms
and
(j) −T (j)
f (j) (k + 1) = [Eb (k + 1)] eb (k + 1) (89)
(j) (j)
where eb (k + 1) and eb (k + 1) are, respectively, the jth-order a priori and a posteriori
backward error vectors, for j = 0, 1, · · · , N . Therefore, vectors aP +M (k + 1) and fP +M (k + 1)
can be regarded as a nesting of N + 1 subvectors of size M × 1, i.e.,
⎡ (N ) ⎤
a (k + 1)
⎢ a(N −1) (k + 1) ⎥ (N )
⎢ ⎥ a (k + 1)
aN +1 (k + 1) = ⎢ .. ⎥= (90)
⎣ . ⎦ aN (k + 1)
a(0) (k + 1)
and
⎡ ⎤
f (N ) (k + 1)
⎢ (N −1)
(k + 1) ⎥ (N )
⎢ f ⎥ f (k + 1)
fN +1 (k + 1) = ⎢ .. ⎥= . (91)
⎣ . ⎦ fN (k + 1)
f (0) (k + 1)
Recalling that Qθf (k) and Qθf (k + 1) are used to update aN +1 (k) and fN +1 (k), respectively,
we can finally rewrite Equations (60) and (66) into an order-recursive form, i.e., for j =
1, 2, · · · , N , as ⎡ ⎤ ⎡ ⎤
0M (N −j) 0M (N −j)
⎢ (j) ⎥ ⎢ (j−1) ⎥
⎢ a (k + 1) ⎥ (j) ⎢ a (k) ⎥
⎢ ⎥ = Qθf (k) ⎢ ⎥, (92)
⎣ 0M (j−1) ⎦ ⎣ 0M (j−1) ⎦
rj−1 (k + 1) rj (k + 1)
where rj (k + 1) is the jth order normalized a priori forward error vector, and
⎡ ⎤ ⎡ ⎤
0M (N −j) 0M (N −j)
⎢ (j) ⎥ ⎢ (j−1) ⎥
⎢ f (k + 1) ⎥ (j) ⎢ f (k) ⎥
⎢ ⎥ = Qθf (k + 1) ⎢ ⎥ (93)
⎣ 0M (j−1) ⎦ ⎣ 0M (j−1) ⎦
pj−1 (k + 1) pj (k + 1)
87
Book Chapter: Multichannel Fast QRD-RLS Algorithms
⎡(1) ⎤
Df q2 (k + 1)
⎢ .. ⎥
Df q2 (k + 1) = ⎣ . ⎦ (94)
(N )
Df q2 (k + 1)
where each Qθf (j) (k + 1), for j = 1, 2, · · · , N , is a product itself of M 2 elementary Given
rotation matrices.
(j)
As for step 6 (Tables 4 and 5), it is straightforward to see that the rotation angles Qθ (k + 1)
are now obtained through
1/γj (k + 1) (j) 1/γj−1 (k + 1)
= Qθ (k + 1) (97)
0 −a(j−1) (k + 1)
for the a posteriori case. The joint estimation (step 7) is performed according to
(j) (j−1)
eq1 (k + 1) (j) eq1 (k + 1)
(j) = Qθ (k + 1) (j) . (99)
dq2 (k + 1) λ1/2 dq2 (k)
Finally, in order to adjust the equations of steps 1 to 3 of the algorithms in Tables. 4 and 5 to
this formulation, it suffices to observe that they can be split up into blocks that will be processed
in an order-recursive way. The resulting lattice (or order-recursive) versions of the block-type
multichannel Fast QRD-RLS algorithms based on a posteriori and a priori backward prediction
errors are summarized in Table. 6 and Table. 7, respectively.
88
Application Example and Computational Complexity Issues
The computer experiment consists of a nonlinear system identification. The plant is a simple
truncated second-order Volterra system [2] which can be summarized as
L−1
L−1
L−1
d(k) = wn1 (k)x(k − n1 ) + wn1 ,n2 (k)x(k − n1 )x(k − n2 ) + ρ(k). (100)
n1 =0 n1 =0 n2 =0
89
Book Chapter: Multichannel Fast QRD-RLS Algorithms
90
Application Example and Computational Complexity Issues
w5
z −1
z −1
z −1
z −1 w4
w3
w1 w2
z −1 z −1 z −1
z −1 z −1
&
d(k)
Figure 5: Multichannel set-up for a truncated second order Volterra system, L = 4.
In the experiment, we have used L = 4 and the resulting multichannel system is depicted
in Figure 5. The forgetting factor was set to λ = 0.98, and the power of the observation noise
ρ(k) was chosen such that the signal-to-noise-ratio (SNR) is 60 dB. The learning curves of
the multichannel FQRD-RLS algorithms are compared to the normalized least-mean-squares6
(NLMS) [15]-[17] and the result is plotted in Figure 6 for an average of 100 independent runs.
The trade-off between computational complexity and speed of convergence is also illustrated in
that figure.
where x(k) is the input signal vector, σ is a small constant, and parameter μ was set equal to 1.
91
Book Chapter: Multichannel Fast QRD-RLS Algorithms
20
10
−10
NLMS Algorithm
MSE (dB)
−20
−30
−40
−50
MC-FQRD-RLS Algorithms
−60
−70
0 100 200 300 400 500 600 700 800 900 1000
k
The suitability of the lattice structure for real-time implementations comes at the cost of a
slight increase in the computational burden of the algorithms. On the other hand, sequential-
type algorithms O(M P ) computational complexity is lower by one order as compared to the
O(M 2 P ) block-type multichannel algorithms computational complexity. It is also evident that
the MC-FQRD-RLS algorithms outperform the conventional QRD-RLS and inverse QRD-RLS
algorithms, O(P 2 ), in terms of computational costs, while maintaining the good numerical
stability features. The computational advantage of block-type MC-FQRD-RLS algorithms is
increasing for larger number of coefficients per channel, N , (P = M N for channels of equal
orders).
7 Conclusion
The multichannel FQRD-RLS (MC-FQRD-RLS) algorithms exploit the time-shift structure in
each channel to reduce the computational complexity of the conventional QRD-RLS algorithm
which is of order O(P 2 ), P being the number of coefficients. This chapter introduced various
MC-FQRD-RLS algorithms based on the updating of the backward prediction error vector.
Channels are allowed to have arbitrary orders, which enables us to deal with more general
multichannel systems, e.g., Volterra systems. The algorithms presented in this chapter were
derived using two distinct approaches: 1) sequential approach where channels are processed
processed individually in a sequential manner, and; 2) block approach that jointly processes
all channels. Considering the case of M channels, the computational complexities associated
with block and sequential algorithms are O(M P ) and O(M 2 P ), respectively. That is, taking
92
References
a sequential approach will render the lowest complexity. The main advantages of the block
algorithms are that they favor parallel processing implementations and can easily be turned into
an order-recursive form. To clarify the differences among the many versions available in the
literature, we provided a classification of these algorithms and their associated computational
complexities.
Acknowledgement
This work was partially funded by the Academy of Finland, Smart and Novel Radios (SMARAD)
Center of Excellence and by the Buskerud University College (HIBU), Norway.
References
[1] N. Kalouptsidis, S. Theodoridis, Adaptive Systems Identification and Signal Processing
Algorithms. Prentice-Hall, Upper Saddle River, USA (1993)
93
Book Chapter: Multichannel Fast QRD-RLS Algorithms
[4] A. L. L. Ramos, J. A. Apolinário Jr., A lattice version of the multichannel FQRD algo-
rithm based on a posteriori backward errors. In: Proc. 11th Internacional Conference on
Telecommunications (LNCS), vol. 1, pp. 488–497 (2004)
[5] M. G. Bellanger, P. A. Regalia, The FLS-QR algorithm for adaptive filtering: the case of
multichannel signals. (EURASIP) Signal Processing vol. 22 no. 2, pp. 115–126 (1991)
[6] C. A. Medina S., J. A. Apolinário Jr., M. G. Siqueira, A unified framework for multi-
channel fast QRD-LS adaptive filters based on backward prediction errors. In: Proc. 45th
Midwest Symposium on Circuits and Systems, vol. 3, pp. 668–671 Tulsa, USA (2002)
[10] A. L. L. Ramos, J. A. Apolinário Jr., A new multiple order multichannel fast QRD al-
gorithm and its application to non-linear system identification. In: Proc. XXI Simpósio
Brasileiro de Telecomunicações (SBT), Belém, Brazil, vol. 1, pp. 1–4 (2004)
[14] G. H. Golub, C. F. Van Loan, Matrix Computations. 3rd edition The Johns Hopkins Uni-
versity Press, Baltimore, USA (1996)
[15] P. S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation. 3rd edition
Springer, New York, NY, USA (2008)
[16] S. Haykin, Adaptive Filter Theory. 4th Edition Prentice-Hall, Englewood-Cliffs, New
Jersey, USA (2002)
[17] A. H. Sayed, Fundamentals of Adaptive Filtering. John Wiley & Sons, New Jersey, USA
(2003)
94
Papers
95
Paper I
97
Delay-and-sum Beamforming for Direction of
Arrival Estimation Applied to Gunshot Acoustics
Abstract: Sniper positioning systems described in the literature use a two-step algorithm to
estimate the sniper’s location. First, the shockwave and the muzzle blast acoustic signatures
must be detected and recognized, followed by an estimation of their respective direction-of-
arrival (DOA). Second, the actual sniper’s position is calculated based on the estimated DOA
via an iterative algorithm that varies from system to system. The overall performance of such
a system, however, is highly compromised when the first step is not carried out successfully.
Currently available systems rely on a simple calculation of differences of time-of-arrival to es-
timate angles-of-arrival. This approach, however, lacks robustness by not taking full advantage
of the array of sensors. This paper shows how the delay-and-sum beamforming technique can
be applied to estimate the DOA for both the shockwave and the muzzle blast. The method has
the twofold advantage of 1) adding an array gain of 10 log M , i.e., an increased SNR of 6 dB for
a 4-microphone array, which is equivalent to doubling the detection range assuming free-field
propagation; and 2) offering improved robustness in handling single- and multi-shots events as
well as reflections by taking advantage of the spatial filtering capability.
Copyright 2011 Society of Photo Optical Instrumentation Engineers. One print or electronic
copy may be made for personal use only. Systematic electronic or print reproduction and dis-
tribution, duplication of any material in this paper for a fee or for commercial purposes, or
modification of the content of the paper are prohibited.
http://dx.doi.org/10.1117/12.886833
Paper I
1 Introduction
Gunshot acoustics is a research topic that finds application in forensics and development of
sniper positioning systems. The first comprehensive work on the matter dates from 1946 by
Jesse W. M. Du Mond et al. [1]. Later, in 1969, W. Snow [2] set the foundations for the
sniper position estimation algorithms largely used today in sniper positioning systems. Other
relevant early works addressing the physics of the sonic-boom propagation appeared later in
[3, 4, 5, 6]. Detection and parameter estimation algorithms applied to the shockwave signal have
also received some attention [7, 8] and the subject have been revisited in recent publications [9,
10, 11, 12] applied to sniper localization systems. However, issues affecting the detection of the
muzzle wave, e.g., background noise, reflecting surfaces, amplitude losses due to geometrical
spreading, to name but a few, are yet to be addressed.
Sniper positioning systems described in the literature use a two-step algorithm to estimate
the sniper’s location. First, the shockwave and the muzzle blast acoustic signatures must be de-
tected and recognized, followed by an estimation of their respective direction-of-arrival (DOA).
Second, an estimate of the actual sniper’s position is calculated based on the DOA obtained
from the first step, via an iterative algorithm that varies from system to system. Field tests have
shown that detecting and estimating the DOA of the muzzle blast is a rather difficult task in
real life situations. This is particularly true for long range detection in noisy environments and
absorbing terrains, e.g., snow. Currently available systems rely on a simple calculation of dif-
ferences of time-of-arrival (DTOA) to estimate angles-of-arrival. This method, however, lacks
robustness by relying on the individual detection of the signals of interest at each channel prior
to calculating the DTOA. Consequently, if the signal is miss-detected in one single channel,
which is very likely to occur at low SNR, the whole process is compromised.
This paper reports on how the delay-and-sum beamforming technique can be applied to
estimate the DOA for both the shockwave and the muzzle blast more effectively. The method
has the twofold advantage of 1) adding an array gain of 10 log M dB to the output of an M -
microphone array. For example, a 4-microphone array provides a SNR gain of 6 dB, which
is equivalent to doubling the detection range, assuming free-field propagation; and 2) offering
improved robustness in handling single- and multi-shots events as well as reflections by taking
advantage of the spatial filtering capability. Nevertheless, in order to take advantage of this
increased flexibility, the interactive algorithms used to estimate the actual sniper’s position [13]
must be redesigned accordingly if these systems are to be used in environments such as a battle
field, for example. This issue, however, is out of the scope of this work.
The reminder of this work is organized as follows. Section 2 presents an overview of gun-
shots acoustics. The delay-and-sum beamforming is addressed in Section 3 in the context of
3-dimensional DOA estimation applied to gunshot acoustics. Simulation results are discussed
in Section 4 and, finally, conclusions and future works are addressed in Section 5.
100
Delay-and-sum Beamforming for DOA Estimation Applied to Gunshot Acoustics
trigger, the hammer, and ejection of spent cartridges, respectively. These sounds are detectable
only if a sensor is placed in the proximity of the gun. For sniper positioning applications,
however, only the muzzle blast and the shockwave events are of interest (see Figure 1).
x Receiver
Shockwave
front
Muzzle wave
front
Bullet
Detach
point
y
Shooter Position
101
Paper I
it travels through the air at supersonic speed. These two discontinuities, usually referred to as
Bow-shock and Trailing-shock, respectively, are separated by a time interval T known as the
period of the N-wave.
H
T
Peak
Amplitude
t → time
x L
Bullet
Trajectory
T
H
The period T varies proportionally to the bullet length and the propagation time. The
last holds because the two discontinuities H and T travel at different speeds. Moreover, the
head discontinuity travels at a velocity slightly higher than the speed of sound whereas the
tail discontinuity travels at a slightly slower velocity than the speed of sound. These facts are
depicted in Figure 3, where the increasing on the time interval, T , between the bow and trailing
shocks as they propagate outwards from the bullet trajectory is evident. Figure 3 also illustrates
how the energy is transferred from the bullet to the shockwave. The average energy decreases
as the shockwave propagates due to three main factors: 1) increase in the mean radius x; 2)
increase in the wave-length L; and 3) dissipation into heat. In between the two main shock
waves there can also be secondary shockwaves which are commonly referred to as compression
and expansion waves. As they propagate, they can merge into the main shock waves, or give
origin to new shock waves if they have enough power.
102
Delay-and-sum Beamforming for DOA Estimation Applied to Gunshot Acoustics
By extrapolating the sketch in Figure 3 to the three-dimensional space, one can realize that
the shockwave exhibits a cone shape involving the bullet trajectory and, therefore, it is not
detectable when the bullet is moving away from the sensor. The angle of propagation θM with
regard to the bullet trajectory is referred to as Mach angle and is given by
1
θM = sin−1 , (1)
M
where M = v/c is the Mach number, with v and c being the instantaneous bullet velocity and
the speed of sound, respectively. The sound velocity in air is related to the air temperature
according to [10]
T
c = c0 1 + , (2)
273
where T is the air temperature in degree Celsius and c0 = 331 m/s is the sound velocity at
T = 0 o C.
Having a good estimate of the sound velocity is crucial for estimating both the Mach angle,
which gives an estimate of the bullet’s trajectory, and also for the delay-and-sum beamforming
technique discussed in the next section.
This section discusses the delay-and-sum beamforming technique applied to gunshot acoustics.
The idea behind this technique is very simple and consists basically of applying predefined
amounts of delays to the signals received by an array of sensors in order to enhance the signal
from the direction-of-arrival (DOA) of interest [15]. This is usually referred to in the literature
as steering the array. When the DOA of the signal of interest is unknown though, it must be
estimated prior to the steering process. To that end, many source location algorithms have been
developed and they can be divided into categories according to the underlying strategy, e.g.,
maximizing the steered response power (SRP), high-resolution spectral estimation, and time-
difference of arrival (TDOA) [16].
Microphones are required to have a wide dynamic range in order to capture both the high
sound pressure from the shockwave and the possibly weak muzzle blast signal, while being able
to withstand adverse environmental conditions. This can be expensive and, therefore, it is de-
sirable to use a limited number of sensors. This aspect imposes some technological constraints,
specially when it comes to applying the beamforming technique.
In order to achieve a good performance, time-domain-delay-and-sum beamforming algo-
rithms require the signals to be interpolated [17] (up-sampled) or, alternatively, a high sampling
rate must be used. Our system uses a sampling rate of 96 kHz so that the shockwave is well
sampled, despite its very short duration and wide band-width. Therefore, we can afford to use
a broadband time-domain version of the Steered Response Power (SRP) algorithm without the
need for interpolation. The procedure is explained next in Section 3.3. But first, let us introduce
the signal model.
103
Paper I
25
0m
m
(a) Array layout. (b) Sensors geometry.
Figure 4: Layout of the current prototype’s array. Sensors are placed 250 mm apart from each
other. Actual sensors’ xyz-coordinates are listed in Table 1.
xm [n] = xm (nT )
= f [n − τm (φ, θ)] + vm (n), (3)
where xm [n] denotes a discrete-time version of the propagating signal received at the mth sensor
and sampled at a sampling period T . The quantity τm (φ, θ) represent the time-delay measured
at microphone m with respect to a predefined origin, whereas v[n] is the additive noise compo-
nent measured at the mth microphone. Furthermore, f [n − τm (φ, θ)] represents a discrete-time
version of f (t). The model as given by Equation (3) assumes that all microphones on the array
are properly calibrated.
104
Delay-and-sum Beamforming for DOA Estimation Applied to Gunshot Acoustics
x[n − τ0 ] z0 [n] w0
+Δ0
A/D Converters
x[n − τ1 ] z1 [n] w1 y[n]
+Δ1 +
x[n − τM −1 ] zM −1 [n] wM −1
+ΔM −1
where τm denotes the time-delay of the signal received by the mth sensor with respect to a
arbitrary origin, and is given by:
aT pm
τm = , m = 0, 1, . . . , M − 1, (5)
c
with c being the speed of sound, a is a unit vector given by
and pm is a vector with the xyz-coordinates of the mth sensor and is given by
" #T
pm = px m py m pz m . (7)
Assuming the far field case, the output of the discrete-time delay-and-sum beamformer, as
illustrated in Figure 5, can be expressed as
M −1
y[n] = wm zm [n]
m=0
M −1
= wm x[n + Δm − τm ]. (8)
m=0
If we choose Δm = τm the signals then add constructively and the output finally becomes
M −1
y[n] = x[n] wm . (9)
m=0
Therefore, the array’s output, y(t), can be regarded as a scaled version of the input f (t). Gen-
erally, the quantities Δm and τm are functions of the angles of arrival φ and θ and the task of
the DOA estimator is to provide estimates of these angles of arrival in the presence of potential
sources. This issue is addressed in the next subsection in the context of 3-Dimensional gunshot
DOA estimation.
105
Paper I
L−1 M −1
PL (φ, θ) = wm E{xm [n − l + Δm (φ, θ)]xm [n − l + Δm (φ, θ)]}wm , (10)
l=0 m=0
where E denotes the expectation operator. The above expression can be written in matrix nota-
tion as
where vectors w and xφ,θ [n], assuming an array of M uniformly weighted sensors, are given,
respectively, by
1
w = [w0 w1 · · · wM −1 ]T = 1, (12)
M
and
Matrix R̂φ,θ in Equation (11) denotes an estimate of the spatial correlation matrix obtained by
averaging the incoming samples within a window of length L according to:
L−1
R̂φ,θ = xφ,θ [n − l]xTφ,θ [n − l]. (14)
L l=0
The DOA estimator searches for the set of angles (φ, θ) that maximize the array’s output
power as given by Equation (11) and, therefore, the DOA estimate is obtained from:
or equivalently,
( ) *+
Θ̂(φ, θ) = arg max T
trace E[yφ,θ yφ,θ ]{L×L} , (16)
(φ,θ)
T
where the quantity E[yφ,θ yφ,θ ] is an estimate of the correlation matrix of the beamformer output
evaluated across a window of length L. The estimator as given by Equation (16) follows directly
from Equation (11) and is straightforward to implement in practice. Indeed, it takes only L
106
Delay-and-sum Beamforming for DOA Estimation Applied to Gunshot Acoustics
18
18
Azimuth: 45.6 16
Azimuth: 91.2
Elevation: −1.2 16 Elevation: 1.2
Output Energy: 18
20 Output Energy: 17.83
20 14
15
15 12
10
10 10
[dB]
10
[dB] 8
8
5
6
5 6
0 4
4
0 50
100 2
50 100 2 0 0
0 0
−50 −100 0
−50 −100 0
θ (deg) φ (deg)
θ (deg) φ (deg)
(a) Estimated DOA for shockwave signal. (b) Muzzle wave detected arriving 351.86 ms after the
shockwave.
6 5
x 10 x 10
4 14
Mic 1 Mic 1
Mic 2 12 Mic 2
3 Mic 3 Mic 3
Mic 4 Mic 4
10
Beamformer Output Beamformer Output
2
8
Amplitude
Amplitude
1 6
0 4
2
−1
0
−2
−2
−3 −4
0 50 100 150 0 50 100 150
Samples Samples
(c) A beamformer output for the Shockwave. (d) A beamformer output for the Muzzle Wave
arriving 351.86 ms after the shockwave.
Figure 6: Results of the DOA estimation for both the Shockwave and the Muzzle Blast using
the SRP algorithm. The output energy is normalized in (6a) and (6b) for easy visualization. The
amplitude is not to scale in (6c) and (6d) and the sample index is with respect to and arbitrary
time-window.
4 Simulation results
This section describes the application of the SRP algorithm to the DOA estimation of the shock-
wave and the muzzle blast. Simulations were carried out using real gunshot acoustical data sam-
107
Paper I
pled at 96 kHz. The signals were acquired using a 4-microphone array as detailed in Figure 4.
Due to the impulsive nature of these acoustical events, a window of length L = 600 samples
(6.25 ms) with 50% overlap was used. The overlapping is need in order to make sure that the
impulsive events will not be miss-detected in case their energy is split between two neighboring
windows.
Figures 6a and 6b show the results of the DOA estimation for both the shockwave and the
muzzle blast. As can been seen from those figures, both events are correctly detected. As
the system is running, subsequent events can be detected sequentially for either the cases of
multiple shots from a single shooter or multiple shots from multiple shooters. However, finding
the actual shooter’s position in those cases using an iterative algorithm can be a rather difficult
task if the events are overlapping.
As for the array gain, in the presence of one single source, and assuming the free field
propagation case, the sound pressure falls off as 1/r, where r is the range. In the case of four
sensors with coherent averaging the sound pressure becomes four times as large, as can be seen
√
in Figs. 6c and 6d. The noise component will also increase, but only with 4 = 2 (averaging
of power). Therefore the array gain becomes:
4
AGdb = 10 log = 6 dB.
2
This means that, under ideal conditions, i.e., no reflecting surfaces or background noise or other
sources of interference, an array of M = 4 microphones provides an increase in the voltage SNR
by a factor of 2. That would be the same as if the sound pressure fell off with 2/r = 1/(r/2)
which is equivalent to doubling the detection range [15]. Moreover, the improved SNR signal
at the array’s output (see figures 6c and 6d) can be used at the recognition stage7 contributing
to lowering the false alarm and miss-detection rates.
7
When a potential impulsive source is detected the system must be able to tell whether it is a gunshot or not.
108
Delay-and-sum Beamforming for DOA Estimation Applied to Gunshot Acoustics
Acknowledgments
This work was partly financed by the BTV project Multifunctional Sensor Systems.
The authors would like to thank the Norwegian Army Combat Lab for partly supporting this
work.
References
[1] J. W. M. DuMond, E. R. Cohen, W. K. H. Panofsky, and E. Deeds, “A determination of
the wave forms and laws of propagation and dissipation of ballistic shock waves,” Journal
of the Acoustical Society of America, vol. 18, no. 1, pp. 97–118, 1946.
[2] W. B. Snow, “Survey of acoustic characteristics of bullet shock waves,” Audio and Elec-
troacoustics, IEEE Transactions on, vol. 15, no. 4, pp. 161–176, 1967.
[5] R. Raspet, H. E. Bass, L. Yao, P. Boulanger, and W. E. McBride, “Statistical and numerical
study of the relationship between turbulence and sonic boom characteristics,” Journal of
the Acoustical Society of America, vol. 96, no. 6, pp. 3621–3626, 1994.
[6] P. Boulanger, R. Raspet, and H. E. Bass, “Sonic boom propagation through a realistic
turbulent atmosphere,” Journal of the Acoustical Society of America, vol. 98, no. 6, pp.
3412–3417, 1995.
[7] B. M. Sadler, L. C. Sadler, and T. Pham, “Optimal and robust shockwave detection and
estimation,” in Acoustics, Speech, and Signal Processing, Proceedings of the 1997 IEEE
International Conference on, vol. 3, Apr 1997, pp. 1889–1892.
[8] B. M. Sadler, T. Pham, and L. C. Sadler, “Optimal and wavelet-based shock wave detection
and estimation,” Journal of the Acoustical Society of America, vol. 104, no. 2, pp. 955–
963, 1998.
[9] R. C. Maher, “Modeling and signal processing of acoustic gunshot recordings,” in Proc.
IEEE Signal Processing Society 12th DSP Workshop, 2006, pp. 257–261.
[10] ——, “Acoustical characterization of gunshots,” in SAFE ’07: IEEE Workshop on Signal
Processing Applications for Public Security and Forensics, April 2007, pp. 109–113.
109
Paper I
[12] J. R. Aguilar, R. A. Salinas, and M. A. Abidi, “Acoustical model of small calibre ballistic
shock waves in air for automatic sniper localization applications,” in Proc. SPIE, Sen-
sors, and Command, Control, Communications, and Intelligence (C3I) Technologies for
Homeland Security and Homeland Defense VI, vol. 6538, May 2007, p. 65381D.
[13] J. Bédard and S. Paré, “Ferret, a small arms’ fire detection system: Localization concepts,”
in Proceedings of SPIE: Sensors, and Command, Control, Communications, and Intelli-
gence (C3I) Technologies for Homeland Defense and Law Enforcement, E. M. Carapezza,
Ed., vol. 5071, 2003, pp. 497–509.
[15] H. L. V. Trees, Optimum Array Processing (Part IV of Detection, Estimation, and Modu-
lation Theory), 1st ed. New York: Wiley-Interscience, 2002.
[17] D. Rathjen, G. Bodecker, and M. Siegel, “Omnidirectional beam forming for linear an-
tennas by means of interpolated signals,” Oceanic Engineering, IEEE Journal of, vol. 10,
no. 3, pp. 260–268, July 1985.
[18] J. Dmochowski, J. Benesty, and S. Affes, “Direction of arrival estimation using the pa-
rameterized spatial correlation matrix,” Audio, Speech, and Language Processing, IEEE
Transactions on, vol. 15, no. 4, pp. 1327–1339, May 2007.
110
Paper II
111
A Spectral Subtraction Based Algorithm for
Real-time Noise Cancellation with Application to
Gunshot Acoustics
Abstract: This paper introduces an improved spectral subtraction based algorithm for real-time
noise cancellation, applied to gunshot acoustical signals. The derivation is based on the fact that,
in practice, relatively long periods without gunshot signals occur and the background noise can
be modeled as being short-time stationary and uncorrelated to the impulsive gunshot signals.
Moreover, gunshot signals, in general, have a spiky autocorrelation while typical vehicle noise,
or related, is periodic and exhibits a wider autocorrelation. The Spectral Subtraction algorithm
is applied using the pre-filtering approach, as oposed to post-filtering which requires a priori
knowledge of the direction of arrival of the signals of interest, namely, the Muzzle blast and the
Shockwave. The results presented in this work are based on a dataset generated by combining
signals from real gunshots and real vehicle noise.
6 Introduction
Gunshot acoustics is a research topic that finds application in forensics and development of
sniper positioning systems. These systems, as currently described in the literature, use a two-
step algorithm to estimate the sniper’s location. First, the shockwave and the muzzle blast
acoustic signatures must be detected and recognized, followed by an estimation of their respec-
tive direction-of-arrival (DOA). Second, an estimate of the actual sniper’s position is calculated
based on the DOA obtained from the first step, via an iterative algorithm that varies from system
to system.
The first comprehensive work on the acoustics of gunshots dates from 1946 by Jesse W.
M. Du Mond et al. [1], where the authors address the issue of propagation and dissipation
of ballistic shock waves. The physics of the sonic-boom propagation has been revisited in a
broader context in [2, 3, 4, 5]. In 1969, W. Snow [6] laid the foundations for the sniper position
estimation algorithms largely used today in sniper positioning systems. Detection and DOA
estimation algorithms applied to the shockwave signal have also received some attention in
relatively recent works [7, 8, 9, 10] in the context of sniper localization systems.
Field tests have shown that detecting and estimating the DOA of the muzzle blast is a rather
difficult task in real life situations. This is particularly true for long range detection in noisy
environments and absorbing terrains, e.g., snow. At low SNR, the miss-detection rate increases
and the system’s performance is compromised. In [11, 12] the authors address, respectively,
the DOA estimation and the background noise cancellation problems, making use of the beam-
forming, adaptive filtering, and spectral subtraction techniques in a unified approach.
This paper introduces a spectral subtraction based algorithm for real-time noise cancellation,
applied to gunshot acoustical signals. This work has been partially presented in [13]. In our
derivation, the background noise is modeled as being short-time stationary and uncorrelated
with the impulsive gunshot signals. In the sniper positioning application, relatively long periods
without signal occur and can be used to estimate the noise spectrum, as required in the spectral
subtraction technique. Moreover, gunshot signals have a spiky autocorrelation in general, while
typical vehicle noise, or related, is periodic and exhibits a wider autocorrelation. Nonetheless,
sniper positioning systems require recognition and classification algorithms to be implemented
for robustness sake, allowing them to discriminate gunshot signals from other possible sources
of impulsive sounds, e.g., vehicle door slams, scrims, etc.
This work is organized as follows. Section 7 presents an overview of gunshots acoustics.
The spectral subtraction technique is discussed in Section 8 in the context of gunshot acoustics,
and the modified spectral suppression algorithm for gunshot signals is introduced. Application
results using real data are presented in Section 9 and, finally, conclusions are summarized in
Section 10.
114
A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
trigger, the hammer, and the ejection of spent cartridges, respectively. These sounds are de-
tectable only if a sensor is placed in the proximity of the gun.
For sniper positioning applications, however, only the muzzle blast and the shockwave are
the events of interest (see Figure 1).
x Receiver
Shockwave
front
Muzzle wave
front
Bullet
θM
Detach
point
Shooter position
Figure 1: A typical configuration for gunshot recording. θM is the Mach angle, and varies
inversely proportional to the bullet velocity. The detach point is the point on the bullet trajectory
where the shockwave that reaches a given sensor is generated.
115
Paper II
H
T
Peak
Amplitude
t → time
T
(a)
x L
Bullet
Trajectory
T
H
(b)
Figure 2: The Shockwave. (a) The N-wave. (b) Path of Energy transfer from bullet to shock
wave. x: miss-distance; L: wavelength.
nearly as far below as the original rise and then an almost instantly return to the atmospheric
pressure [1]. The shape of the resulting wave form resembles that of an “N” (see Figure 2a) and
is sometimes referred to as the N-wave. In figures 2a and 2b, H and T stands for head an tail,
respectively, and represent the sudden rise and decline in pressure caused by the head and tail
of the bullet as it travels through the air at supersonic speed. These two discontinuities, usually
referred to as Bow-shock and Trailing-shock, respectively, are separated by a time interval T
known as the period of the N-wave.
The period T varies proportionally to the bullet length and the propagation time. The
last holds because the two discontinuities H and T travel at different speeds. Moreover, the
head discontinuity travels at a velocity slightly higher than the speed of sound whereas the
tail discontinuity travels at a slightly slower velocity than the speed of sound. These facts are
depicted in Figure 2b, where the increase of the time interval, T , between the bow and trailing
shocks as they propagate outwards from the bullet trajectory is evident. Figure 2b also illustrates
how the energy is transferred from the bullet to the shockwave. The average energy decreases
as the shockwave propagates due to three main factors [1]: 1) increase in the mean radius x, the
distance from the measured shockwave pulse to the bullet trajectory, also known as the miss-
distance; 2) increase in the wave-length L; and 3) dissipation into heat. In between the two
116
A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
x[n − τ0 ] z0 [n] w0
+Δ0
z1 [n]
A/D Converters
x[n − τ1 ] w1 y[n]
+Δ1 Σ
Source
Spatial
Noise
x[n − τM −1 ] +Δ zM −1 [n] wM −1
M −1
Array of
Sensors
Noise Cancellation and
Array Processing Algorithms
main shock waves there can also be secondary shockwaves which are commonly referred to
as compression and expansion waves. As they propagate, they can merge into the main shock
waves, or give rise to new shock waves if they have enough power.
By extrapolating the sketch in Figure 2b to three-dimensional space, it is evident that the
shockwave exhibits a cone shape involving the bullet trajectory and, therefore, it is not de-
tectable when the bullet is moving away from the sensor. The angle of propagation θM with
regard to the bullet trajectory is referred to as Mach angle and is given by
−1 1
θM = sin , (1)
M
where M = v/c is the Mach number, with v and c being the instantaneous bullet velocity and
the speed of sound, respectively. The sound velocity in air is related to the air temperature
according to [8]
T
c = c0 1 + , (2)
273
where T is the air temperature in degree Celsius and c0 = 331 m/s is the sound velocity at
T = 0 o C.
117
Paper II
needed either for preprocessing, e.g., noise reduction, or for estimation of parameters of interest
such as the direction-of-arrival of the incoming signals. A complete signal model is illustrated
in Figure 3 above, where effect of spatially distributed noise sources is also accounted for.
The Spectral Subtraction algorithm is applied using a pre-filtering approach, as oposed to post-
filtering which requires a priori knowledge of the direction of arrival of the signals of interest,
namely, the Muzzle blast and the Shockwave.
Consider a 3-D geometry array of microphones and a signal s(t) propagating from a source
located in the far field. The signal received at the mth microphone is given by
xm [n] = xm (nT )
= s[n − τm (φ, θ)] + vm [n], (3)
where xm [n] denotes a discrete-time version of the propagating signal received at the mth sen-
sor and sampled at a sampling period T and φ and θ are the azimuth and elevation angles,
respectively. The quantity τm (φ, θ) represent the time-delay measured at microphone m with
respect to a predefined origin, whereas vm [n] is the additive noise component measured at the
mth microphone. Furthermore, s[n−τm (φ, θ)] represents a discrete-time version of the signal of
interest, s(t). The model as given by (3) assumes that all microphones are properly calibrated.
The spectral subtraction algorithm is applied to each channel before the beamforming [11, 12]
using same spectrum estimate and runs independently of the time delay, τm . We can therefore
simplify the notation by dropping the subscript and disregarding τm in (4), yielding
The power spectrum of the signal of interest, |S(ejw )|2 , can be estimate according to
where X(ejw ) denotes the phase of X(ejw ) and [V (ejw )]2 is the average value of the back-
ground noise power, |V (ejw )|2 , estimated using successive overlapping frames.
118
A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
where 0 < α < 1 is the so called smoothing parameter. It was shown in [21] that, for the case
of speech enhancement applications, the background noise can be considered as non-stationary
and, therefore, the smoothing of (9) with a fixed parameter α might lead to estimation inaccu-
racies. When denoising short-time or impulsive events, however, the background noise can be
considered as being short-time stationary and (9) provides good estimates for 0.94 < λ < 0.98.
The background noise power estimate is updated during noise only periods and frozen during
the occurrence of a impulsive event. This is easily accomplished using a simple impulse detec-
tor [22, 23]. In a broader framework, recognition is also required in order to select the impulsive
events of interest for further processing, e.g., DOA and caliber estimation.
The algorithm can be summarized as follows. During the initialization stage, a few frames
are used to generate an initial spectral power estimate. The power spectral subtraction is not
applied at this stage. After the algorithm is initialized, the power spectral subtraction is then ap-
plied for each subsequent frame. The output signal, ŝ(t), is then obtained using the overlap-add
method. This generates a pre-processed block of samples in the time-domain at each iteration.
This larger block of samples is then subdivided into smaller frames using a rectangular win-
dow (see Figure 4a) in order to search for the occurrence of impulsive events using the impulse
detector sub-routine. The updating of Pv (w, λ) will depend on whether an impulse signal is
detected or not.
The advantage of this approach for denoising gunshot signals is two-fold: 1) Having the
impulse detector operating on a signal with higher SNR, improving thereby the detection rate;
and 2) Providing an enhanced output signal that can be used at the recognition and classification
119
Paper II
}
}
Impulse detection sub-frames
(a)
Initialize
Get frame
FFT
IFFT
Overlap-add
ŝ(t)
Impulse Detector
Yes Impulse
Detected?
No
Update Spectral
Power Estimate
(b)
Figure 4: Summary of the modified spectral subtraction algorithm. (a) Signal framing: 40%
overlapping samples for spectral estimation; and smaller non-overlapping sub-frames for im-
pulse detection. (b) Algorithm flow-cart.
120
A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
25
0m
m
(a) (b)
Figure 5: Layout of the current prototype’s array. Sensors are placed 250 mm apart from each
other. Actual sensors’ xyz-coordinates are listed in Table 1. (a) Array layout. (b) Sensors
geometry.
121
Paper II
Gunshot Signal
10
Amplitude
0
−10
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Sample 4
x 10
Noisy Gunshot Signal
10
Amplitude
0
−10
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Sample 4
x 10
Impulse Detection
10
0
100 200 300 400 500 600 700 800 900
Frame
layout is as depicted in Figure 5, and the actual position of the sensors are as given in Table 1.
The signals were recorded as cleanly as possible, with both shockwave and the muzzle blast
signatures present, and using a sampling rate of 96 kHz. The noise was added during the exper-
iment in order to have better control over the input SNR. The noise component was generated
using a steel tracked military tank running on asphalt and includes, therefore, the sound from
the vehicle engine, which varies slightly in frequency over time according to the engine’s rpm,
and the sound from the steel tracks as the vehicle moves.
10 Conclusion
This paper presented an improved spectral subtraction based algorithm for real-time noise can-
cellation, with application to gunshot acoustical signals. The experimental results using real
data are very promising and show that the algorithm can be used effectively in order to improve
the reliability of sniper positioning systems, specially in low SNR environments such as a battle
field. The algorithm can potentially be used in other applications, such as seismic exploration
and underwater acoustics.
122
A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
(a) (b)
Figure 7: Simulation results: denoised output emphasizing the muzzle blast signal. (a) Input
signal. (b) Output signal.
Acknowledgment
The authors would like to thank the Norwegian Army Combat Lab for partially supporting this
work.
This work was also partly financed by the BTV project Multifunctional Sensor Systems.
References
[1] J. W. M. DuMond, E. R. Cohen, W. K. H. Panofsky, and E. Deeds, “A determination of
the wave forms and laws of propagation and dissipation of ballistic shock waves,” Journal
of the Acoustical Society of America, vol. 18, no. 1, pp. 97–118, 1946.
[4] R. Raspet, H. E. Bass, L. Yao, P. Boulanger, and W. E. McBride, “Statistical and numerical
study of the relationship between turbulence and sonic boom characteristics,” Journal of
the Acoustical Society of America, vol. 96, no. 6, pp. 3621–3626, 1994.
[5] P. Boulanger, R. Raspet, and H. E. Bass, “Sonic boom propagation through a realistic
turbulent atmosphere,” Journal of the Acoustical Society of America, vol. 98, no. 6, pp.
3412–3417, 1995.
[6] W. B. Snow, “Survey of acoustic characteristics of bullet shock waves,” Audio and Elec-
troacoustics, IEEE Transactions on, vol. 15, no. 4, pp. 161–176, 1967.
123
Paper II
[7] B. M. Sadler, T. Pham, and L. C. Sadler, “Optimal and wavelet-based shock wave detection
and estimation,” Journal of the Acoustical Society of America, vol. 104, no. 2, pp. 955–
963, 1998.
[10] J. R. Aguilar, R. A. Salinas, and M. A. Abidi, “Acoustical model of small calibre ballistic
shock waves in air for automatic sniper localization applications,” in Proc. SPIE, Sen-
sors, and Command, Control, Communications, and Intelligence (C3I) Technologies for
Homeland Security and Homeland Defense VI, vol. 6538, May 2007, p. 65381D.
[12] ——, “Real-time vehicle noise cancellation techniques for gunshot acoustics,” in Proc.
SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I) Tech-
nologies for Homeland Security and Homeland Defense XI, vol. 8359, May 2012, pp.
835 917–835 917–9.
[13] ——, “A modified spectral subtraction algorithm for real-time noise reduction applied to
gunshot acoustics,” in Proc. of the International Conference on Signals and Electronic
Systems, ICSES 2012, Wroclaw, Poland, September 2012.
[15] S. Boll, “Suppression of acoustic noise in speech using spectral subtraction,” Acoustics,
Speech and Signal Processing, IEEE Transactions on, vol. 27, no. 2, pp. 113–120, April
1979.
[16] Y. Ephraim and D. Malah, “Speech enhancement using a minimum-mean square error
short-time spectral amplitude estimator,” Acoustics, Speech and Signal Processing, IEEE
Transactions on, vol. 32, no. 6, pp. 1109–1121, December 1984.
124
A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
[18] H. Gustafsson, S. Nordholm, and I. Claesson, “Spectral subtraction using reduced delay
convolution and adaptive averaging,” Speech and Audio Processing, IEEE Transactions
on, vol. 9, no. 8, pp. 799–807, November 2001.
[19] J. Meyer and K. Simmer, “Multi-channel speech enhancement in a car environment using
Wiener filtering and spectral subtraction,” in Acoustics, Speech, and Signal Processing,
Proceedings of the 1997 IEEE International Conference on, vol. 2, April 1997, pp. 1167–
1170.
[20] T. Tosanguan, R. Dickinson, and E. Drakakis, “Modified spectral subtraction for de-
noising heart sounds: Interference suppression via spectral comparison,” in IEEE Biomed-
ical Circuits and Systems Conference – BioCAS 2008., November 2008, pp. 29–32.
[21] R. Martin, “Noise power spectral density estimation based on optimal smoothing and min-
imum statistics,” Speech and Audio Processing, IEEE Transactions on, vol. 9, no. 5, pp.
504–512, July 2001.
[22] T. Kasparis and J. Lane, “Suppression of impulsive disturbances from audio signals,” Elec-
tronics Letters, vol. 29, no. 22, pp. 1926–1927, October 1993.
[23] A. Dufaux, “Detection and recognition of impulsive sound signals,” Ph.D. dissertation,
University of Neuchâtel, Switzerland, 2001.
125
Paper III
127
A Multi-band spectral subtraction based algorithm
for real-time noise cancellation applied to gunshot
acoustics
Abstract: Acoustical sniper positioning is based on the detection and direction-of-arrival es-
timation of the shockwave and the muzzle blast acoustical signals. In real-life situations, the
detection and direction-of-arrival estimation processes is usually performed under the influence
of background noise sources, e.g., vehicles noise, and might result in non-negligible inaccura-
cies than can affect the system performance and reliability negatively, specially when detecting
the muzzle sound under long range distance and absorbing terrains. This paper introduces a
multi-band spectral subtraction based algorithm for real-time noise reduction, applied to gun-
shot acoustical signals. The ballistic shockwave and the muzzle blast signals exhibit distinct
frequency contents that are affected differently by additive noise. In most real situations, the
noise component is colored and a multi-band spectral subtraction approach for noise reduction
contributes to reducing the presence of artifacts in denoised signals. The proposed algorithm is
tested using a dataset generated by combining signals from real gunshots and real vehicle noise.
The noise component was generated using a steel tracked military tank running on asphalt and
includes, therefore, the sound from the vehicle engine, which varies slightly in frequency over
time according to the engine’s rpm, and the sound from the steel tracks as the vehicle moves.
Copyright 2013 Society of Photo Optical Instrumentation Engineers. One print or electronic
copy may be made for personal use only. Systematic electronic or print reproduction and dis-
tribution, duplication of any material in this paper for a fee or for commercial purposes, or
modification of the content of the paper are prohibited.
http://dx.doi.org/10.1117/12.2018589
Paper III
1 INTRODUCTION
Gunshot acoustics is a research topic that finds application in forensics and in the development
of sniper positioning systems. These systems, as currently described in the literature, use a
two-step algorithm to estimate the sniper location. First, the shockwave and the muzzle blast
acoustic signatures must be detected and recognized, followed by an estimation of their re-
spective direction-of-arrival (DOA)[1]. Second, an estimate of the actual position of the sniper
is calculated based on the DOA obtained from the first step, using an iterative algorithm that
varies from system to system. Detecting and estimating the DOA of the muzzle blast is a rather
difficult task in real life situations, specially on long range detection in noisy environments and
absorbing terrains, e.g., snow. Indeed, under low SNR, miss-detection rate increases and the
system reliability is compromised. Therefore, a noise cancellation mechanism must be imple-
mented in order to minimize this problem. Previous results presented by the authors[1, 2] show
that techniques such as beamforming, adaptive filtering, and spectral subtraction can be used
effectively to reduce the effect of additive background noise in gunshot acoustical signals.
This paper presents a multi-band spectral subtraction algorithm for real-time denoising of
acoustical gunshot signals. The proposed algorithm is an improvement of the one introduced
by the authors in [2] and shortly after in an extended version in [3]. The original spectral
subtraction algorithm was introduced by Boll [4] applied to the problem of enhancing speech
signals corrupted by noise. Since then, the algorithm has been widely studied and various
improvements or modifications have been proposed for many different application, e.g., speech
enhancement [5, 6, 7, 8], automotive [9], biomedical engineering [10], and gunshot acoustics
[3]. One of the requirements for a successful implementation of any spectral subtraction based
algorithm for noise cancellation is the possibility estimate the power or amplitude spectra of
the additive background noise component. In the sniper positioning application, relatively long
periods without gunshot signals occur which turns the process of estimating the noise spectrum
into a relatively easy task. Moreover, the background noise can be considered as being short-
time stationary and uncorrelated with the impulsive gunshot signals.
This work is organized as follows. Section 2 presents an overview of gunshots acoustics.
The spectral subtraction technique is discussed in Section 3 in the context of gunshot acoustics,
and the multi-band spectral subtraction algorithm for gunshot acoustical signals is introduced
in Section 4. Application results using real data are presented in Section 5, and conclusions are
summarized in Section 6.
130
A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
applications. For such applications, only the muzzle blast and the shockwave are the events of
interest (see Figure 1). These are discussed in the following subsections.
x Receiver
Shockwave
front
Muzzle wave
front
Bullet
θM
Detach
point
Shooter position
131
Paper III
H
T x L
Peak Bullet
Amplitude t → time
Trajectory
T
(a) The ideal N-wave.
b
H
(b) Path of Energy transfer from bullet to shock wave. x: miss-
distance; L: wavelength.
is sometimes referred to as the N-wave. In figures 2a and 2b, H and T stands for head an tail,
respectively, and represent the sudden rise and decline in pressure caused by the head and tail
of the bullet as it travels through the air at supersonic speed. These two discontinuities, usually
referred to as Bow-shock and Trailing-shock, respectively, are separated by a time interval T
known as the period of the N-wave.
The period T varies proportionally to the bullet length and the propagation time. The last
holds because the two discontinuities H and T travel at different speeds. Indeed, the head dis-
continuity travels at a supersonic velocity relative to the air ahead of it and at a subsonic velocity
relative to the air behind it; whereas the tail discontinuity travels at subsonic velocity relative
to the material ahead of it and at a supersonic velocity relative to the material behind it. These
facts are depicted in Figure 2b, where the increase of the time interval, T , between the bow and
trailing shocks as they propagate outwards from the bullet trajectory is evident. Figure 2b also
illustrates how the energy is transferred from the bullet to the shockwave. The average energy
decreases as the shockwave propagates due to three main factors [12]: 1) increase in the mean
radius x, the distance from the measured shockwave pulse to the bullet trajectory, also known as
the miss-distance; 2) increase in the wave-length L; and 3) dissipation into heat. In between the
two main shock waves there can also be secondary shock waves which are commonly referred
to as compression and expansion waves. As they propagate, they can merge into the main shock
waves, or give rise to new shock waves if they have enough power.
By extrapolating the sketch in Figure 2b to three-dimensional space, it is evident that the
shockwave exhibits a cone shape involving the bullet trajectory and, therefore, it is not de-
tectable when the bullet is moving away from the sensor. The angle of propagation θM with
132
A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
25
Mic Mic position (m)
0m
m
Number x y z
1 0.144 0 1.5
2 -0.072 0.125 1.5
3 -0.072 -0.125 1.5
(a) Array layout. (b) Sensors geometry. 4 0 0 1.704
Figure 3: Layout of the current prototype’s array. Sensors are placed 250 mm apart from each
other.
where M = v/c is the Mach number, with v and c being the instantaneous bullet velocity and
the speed of sound, respectively. The sound velocity in air is related to the air temperature
according to [13]
T
c = c0 1 + , (2)
273
where T is the air temperature in degree Celsius and c0 = 331 m/s is the sound velocity at
T = 0 o C.
133
Paper III
xm [n] = xm (nT )
= s[n − τm (φ, θ)] + vm [n], (3)
where xm [n] denotes a discrete-time version of the propagating signal received at the mth sen-
sor and sampled at a sampling period T , and φ and θ are the azimuth and elevation angles,
respectively. The quantity τm (φ, θ) represent the time-delay measured at microphone m with
respect to a predefined origin, whereas vm [n] is the additive noise component measured at the
mth microphone. Furthermore, s[n − τm (φ, θ)] represents a discrete-time version of the signal
of interest, s(t). The model as given by (3) assumes that all microphones are properly cali-
brated. A complete signal model is illustrated in Figure 5 above, where the effect of spatially
distributed noise sources is also accounted for. The spectral subtraction algorithm is applied
using a pre-filtering approach, as oposed to post-filtering which requires a priori knowledge of
the direction of arrival of the signals of interest, i.e, the Muzzle blast and the Shockwave.
Amplitude Spectra
150
140
130
120
Amplitude (dB)
110
100
90
80
70 Shock wave
Muzzle blast
60
3 4
10 10
Hz
134
A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
x[n − τ0 ] z0 [n] w0
+Δ0
z1 [n]
A/D Converters
x[n − τ1 ] w1 y[n]
+Δ1 Σ
Source
Spatial
Noise
x[n − τM −1 ] +Δ zM −1 [n] wM −1
M −1
Array of
Sensors
Noise Cancellation and
Array Processing Algorithms
The spectral subtraction algorithm is applied to each channel before the beamforming [1, 2]
using the same spectrum estimate and running independently of the time delay, τm . We can
therefore simplify the notation by dropping the subscript and disregarding τm in (4), yielding
The power spectrum of the signal of interest, |S(ejω )|2 , can be estimate according to
where X(ejω ) denotes the phase of X(ejω ), and [V (ejω )]2 is the average value of the back-
ground noise power, Pv = |V (ejω )|2 , estimated using successive overlapping frames.
Shortly after Boll et al.[4] proposed the original algorithm, Berouti et al. [14] introduced an
alternative method to estimate the clean signal from the noisy received signal by making use of
an SNR dependent over-subtraction factor α. Equation (7) is then rewritten as
" # 12 jω )
Ŝ(ejω ) = |X(ejω )|2 − α[V (ejω )]2 ejX(e , (8)
135
Paper III
When denoising impulsive events such as gunshot signals, the background noise can be consid-
ered as short-time stationary. Moreover, owing to the fact that relatively long periods of noise
only occur in real situations, the noise spectrum can be estimated effectively using a recursive
method applied over successive overlapping frames of predefined length and controlled by a
smoothing parameter.
Let Pv (w, λ) denote the background noise power at frequency bin w, estimated over a given
frame λ of length L samples. An estimate of P (w, λ) denoted by P̂v (w, λ) can be obtained
recursively according to
where 0 < σ < 1 is the so called smoothing parameter. It was shown in [15] that, for the case
of speech enhancement applications, the background noise can be considered as non-stationary
and, therefore, the smoothing of Equation (11) with a fixed parameter σ might lead to estimation
inaccuracies. When denoising impulsive signals, however, the short-time stationarity of back-
ground noise guaranties good estimates of the background noise power, for 0.94 < σ < 0.98.
The estimated background noise power is then updated during noise only periods and frozen
when an impulsive event is detected. This is accomplished by implementing a simple impulse
detector [16, 17].
136
A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
}
}
Impulse detection sub-frames
(a) Signal framing: 50% overlapping samples for power spec-
trum estimation; and smaller non-overlapping sub-frames for
impulse detection.
Get frame
Compute Power Spectral
Band 2 SNR Subtraction Overlap-add
FFT ŝ(t)
... ... ...
Impulse Detector
Yes
(b) Algorithm flow-cart.
where bi and ei represent, respectively, the first and the last frequency bins of the i-th channel.
137
Paper III
Parameter αi can be further scaled using a tweaking factor, δi , allowing even more flexibility
and control over the noise removal properties at each channel. Equation (8) can then finally be
rewritten as
12
Ŝi (k) = |Xi (k)|2 − δi αi P̂v (w, λ) ejXi (k) . (13)
Usually, the additive noise component is colored and the spectral subtraction based noise re-
duction method as in (13) contributes to reducing the presence of artifacts and distortions in the
output signal.
The proposed algorithm can be summarized as follows. At the beginning, the algorithm
must be initialized using a few frames to generate an initial estimate of the background noise
spectral power. The power spectral subtraction is then applied to the subsequent frames after the
initialization stage is completed. The output signal, ŝ(t), is reconstructed using the overlap-add
method. This generates a pre-processed block of samples in the time-domain at each iteration.
This larger block of samples is then subdivided into smaller frames using a rectangular window
(see Figure 6a) in order to search for the occurrence of impulsive events using the impulse
detector sub-routine. The background noise power spectral estimate, P̂v (w, λ − 1), is updated
using Equation (11) case no impulsive event is detected. Otherwise, P̂v (w, λ) is set equal to
P̂v (w, λ − 1).
Parameter αi was determined according to[8]
⎧
⎨ 5 SNRi < −5
3
αi = 4 - 20 (SNRi ) −5 ≤ SNRi ≤ 20 (14)
⎩
1 SNRi > 20,
The values in (15) were chosen based on the spectral characteristics of gunshot signals as de-
scribed in Section 2.3.
5 Application Results
This section illustrates the application the multi-band spectral subtraction algorithm presented
in this work compared to the one presented in[3]. The experiment was carried out using real
gunshot acoustical data acquired as explained in Section 2.3. The noise component was gener-
ated using a steel tracked military tank running on asphalt and recorded using the same micro-
phone array of Figure 3. It comprises the sound from the vehicle engine, which varies slightly
in frequency over time according to the engine’s rpm, and the sound from the steel tracks as
the vehicle moves. It is added to the clean gunshot signals artificially during the experiment in
order to have better control over the input SNR. The spectral subtraction algorithm was imple-
138
A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
Gunshot Signal
10
Amplitude
−10
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Sample 4
x 10
Noisy Gunshot Signal
10
Amplitude
−10
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Sample 4
x 10
Impulse Detection
10
0
100 200 300 400 500 600 700 800 900
Frame
(a) (b)
Figure 7: Simulation results part I: (a) Gunshot detection in the noisy input signal, including
both the shockwave and the muzzle blast; and (b) Noisy input signal emphasizing the muzzle
blast.
mented using a 50% overlapping (Hamming windowed) frame of 600 samples to estimate the
background noise power spectrum, and a non-overlapping (rectangular windowed) sub-frame
of 200 samples for the impulse detection algorithm, yielding a total of 3 sub-frames. The im-
pulse detector used in the implementation is the one proposed by Dufaux [17]. Its application
in detecting a gunshot event, including both the shockwave and the muzzle blast, is illustrate in
Figure 7b.
The spectrum of the noisy input signal is plotted in Figure 7a, emphasizing the muzzle sound
because it is more sensitive to the additive background noise effect than the shockwave. The
final experimental results are plotted in Figure 8. Figure 8a illustrates the result of applying the
proposed multi-band spectral subtraction algorithm to the noisy muzzle blast signal, whereas
Figure 8b shows the result of applying the spectral subtraction algorithm of [3] to the same
signal. Both algorithms are controlled by the impulse detector, and when no impulsive event is
detected, the background noise is floored according to Equation (10), and the two algorithms
perform equivalently. However, when an impulsive event occurs, the algorithm proposed in this
work (Figure 8a) introduces less distortions in the frequency spectrum of the denoised gunshot
signal as compared to the previous algorithm introduced in [2, 3] (Figure 8b). These differences
are noticeable at the frequencies around 4-6 kHz and at frequencies above 8 kHz. This is an im-
portant feature that has a positive impact at the recognition stage of sniper positioning systems
that might use a noise cancellation method based on spectral subtraction. Additionally, the new
algorithm provides a higher SNR at the output owing to the non-uniform spectral subtraction
method used in its implementation. The SNR gain is dependent on the SNR at the input and, in
the particular example presented in this work, we noticed an improvement of roughly 1.5 dB in
comparison to the SNR gain of the previous algorithm.
139
Paper III
(a) (b)
Figure 8: Simulation results part 2: (8a) Denoised signal using the proposed multi-band spectral
subtraction algorithm; and (8b) Denoised signal using the algorithm of [3].
6 Conclusion
This paper presented a multi-band spectral subtraction based algorithm for real-time noise can-
cellation, with application to gunshot acoustical signals. The algorithm takes advantage of the a
priori knowledge of the spectral power distribution of gunshot acoustical signals and applies a
non-uniform power spectral subtraction of the estimated background ground noise component.
Besides providing higher SNR at the output, the proposed algorithm introduces less distortions
in the denoised acoustical gunshot signals. The latter is an important feature that will have a
positive impact at the signal recognition stage of the sniper positioning system, and thereby
improve its reliability.
Acknowledgments
This work was partly financed by the BTV project Multifunctional Sensor Systems.
The authors would like to thank the Norwegian Army Combat Lab for partially supporting this
work.
References
[1] A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei, “Delay-and-sum beamforming
for direction of arrival estimation applied to gunshot acoustics,” in Proc. SPIE, Sensors,
and Command, Control, Communications, and Intelligence (C3I) Technologies for Home-
land Security and Homeland Defense X, vol. 8019, May 2011, pp. 80 190U 1–9.
[2] ——, “Real-time vehicle noise cancellation techniques for gunshot acoustics,” in Proc.
SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I) Tech-
140
A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation
nologies for Homeland Security and Homeland Defense XI, vol. 8359, May 2012, pp.
835 917–835 917–9.
[3] ——, “A spectral subtraction based algorithm for real-time noise cancellation with ap-
plication to gunshot acoustics,” International Journal of Electronics and Telecommunica-
tions, vol. 59, no. 1, pp. 93–98, April 2013.
[4] S. Boll, “Suppression of acoustic noise in speech using spectral subtraction,” Acoustics,
Speech and Signal Processing, IEEE Transactions on, vol. 27, no. 2, pp. 113–120, April
1979.
[5] Y. Ephraim and D. Malah, “Speech enhancement using a minimum-mean square error
short-time spectral amplitude estimator,” Acoustics, Speech and Signal Processing, IEEE
Transactions on, vol. 32, no. 6, pp. 1109–1121, December 1984.
[7] H. Gustafsson, S. Nordholm, and I. Claesson, “Spectral subtraction using reduced delay
convolution and adaptive averaging,” Speech and Audio Processing, IEEE Transactions
on, vol. 9, no. 8, pp. 799–807, November 2001.
[8] S. Kamath and P. Loizou, “A multi-band spectral subtraction method for enhancing speech
corrupted by colored noise,” in Acoustics, Speech, and Signal Processing, Proceedings of
the IEEE International Conference on, vol. 4, May 2002, pp. IV–4164.
[9] J. Meyer and K. Simmer, “Multi-channel speech enhancement in a car environment using
Wiener filtering and spectral subtraction,” in Acoustics, Speech, and Signal Processing,
Proceedings of the 1997 IEEE International Conference on, vol. 2, April 1997, pp. 1167–
1170.
[10] T. Tosanguan, R. Dickinson, and E. Drakakis, “Modified spectral subtraction for de-
noising heart sounds: Interference suppression via spectral comparison,” in IEEE Biomed-
ical Circuits and Systems Conference – BioCAS 2008., November 2008, pp. 29–32.
141
Paper III
[15] R. Martin, “Noise power spectral density estimation based on optimal smoothing and min-
imum statistics,” Speech and Audio Processing, IEEE Transactions on, vol. 9, no. 5, pp.
504–512, July 2001.
[16] T. Kasparis and J. Lane, “Suppression of impulsive disturbances from audio signals,” Elec-
tronics Letters, vol. 29, no. 22, pp. 1926–1927, October 1993.
[17] A. Dufaux, “Detection and recognition of impulsive sound signals,” Ph.D. dissertation,
University of Neuchâtel, Switzerland, 2001.
142
Paper IV
143
Noise Cancellation Techniques Applied to Gunshot
Acoustics
Abstract: Acoustical sniper localization systems rely on the detection and direction-of-arrival
estimation of the ballistic shockwave and the muzzle blast in order to provide an estimate of
a sniper’s position. Detecting the muzzle blast and estimating the corresponding azimuth and
elevation angles of arrival in noisy environments, however, is a rather difficult task, especially in
long-range detection and absorbing terrains. This paper reports on real-time noise cancellation
techniques for gunshot acoustics. Three different methods are investigated, namely adaptive
filtering, spectral subtraction, and beamforming. Application results are supported with simu-
lations based on real data.
keywords: Counter Sniper Systems; Gunshot Acoustics; Noise Reduction; Adaptive Filtering;
Multi-band Spectral Subtraction; Beamforming
Submitted.
Paper IV
1 INTRODUCTION
Gunshot acoustics is a research topic that finds application in forensics and development of
sniper positioning systems. The first comprehensive work on the matter dates from 1946 by
Jesse W. M. Du Mond et al. [1]. Later, in 1969, W. Snow [2] set the foundations for the
sniper position estimation algorithms largely used today in sniper positioning systems. Other
relevant early works addressing the physics of the sonic-boom propagation appeared later in
[3, 4, 5, 6]. Detection and parameter estimation algorithms applied to the shockwave signal
have also received some attention [7, 8] and the subject has been revisited in recent publications
[9, 10, 11, 12], applied to automatic sniper localization systems. These devices have gained
popularity in recent years and some companies have launched their sniper positioning systems
designed for civil protection, law enforcement, and protection of soldiers on missions where
enemy snipers pose a serious threat. Despite the increasing interest on the topic the available
literature is still scarce. Most attention has been devoted to algorithms to estimate the sniper’s
location that consist basically of the following two-steps. First, the shockwave and the muzzle
blast acoustic signatures must be detected and recognized, followed by an estimation of their
respective direction-of-arrival (DOA). Second, an estimate of the actual sniper’s position is
calculated based on the DOA obtained from the first step, via an iterative procedure that varies
from system to system. However, key issues affecting the detection of the muzzle wave, e.g.,
background noise, reflecting surfaces, amplitude losses due to geometrical spreading, to name
but a few, have only been addressed recently [12, 13, 14].
Field tests have shown that detecting and estimating the DOA of the muzzle blast is a rather
difficult task in real-life situations. This is particularly true for long range detection in noisy
environments and absorbing terrains, e.g., snow. Indeed, at low SNR the miss-detection rate
increases, thereby compromising the performance and reliability of the system. This paper
reports on real-time noise cancellation techniques, namely beamforming, spectral subtraction,
and adaptive filtering, applied to gunshot acoustic signals enhancement.
The reminder of this work is organized as follows. Section 2 presents an overview of gun-
shot acoustics, while noise cancellation techniques for gunshot acoustics are discussed in Sec-
tion 3. Simulation results are presented in Section 4 and, finally, conclusions and future works
are addressed in Section 5.
2 GUNSHOT ACOUSTICS
There are three different types of sound associated with the firing of a gun: the mechanical
action sound, the muzzle blast, and the shockwave. The mechanical action originated sounds,
useful in forensics [15], comprise three different sounds whose origin are associated with the
trigger, the hammer, and ejection of spent cartridges, respectively. These sounds are detectable
only if a sensor is placed in the proximity of the gun. In automatic sniper localization applica-
tions, however, only the muzzle blast and the ballistic shockwave events are of special interest.
146
Noise Cancellation Techniques Applied to Gunshot Acoustics
90 200
120 60
150
150 100 30
50
180 0
210 330
240 300
270
Figure 1: Angular propagation model of the muzzle blast pick overpressure. Pressure values
are in Pascal (Pa).
where P0o and P180o are the peak forward and rear pressures, respectively. Figure 1 illustrates
the radiation pattern given by this model when P0o and P180o are set to 200 Pa and 120 Pa,
respectively.
The source’s sound pressure decreases exponentially with time and consequently the muzzle
blast signal becomes very sensitive to additive background noise with increasing range. The rate
of decrease depends on the flow characteristics of the source, but muzzle blasts can be generally
147
Paper IV
TM
300
100
T0
0
−100
0 0.5 1 1.5 2 2.5 3 3.5 4
Time (ms)
0.08
Spectrum (Pa/Hz)
0.06
0.04
0.02
0
0 318 1000 1500 2000 2500 3000
Frequency (Hz)
described using the Friedlander equation [16], a model for blast waves or explosions in air. Let
P0 and Ps denote, respectively, the atmospheric pressure and the peak overpressure generated
by the muzzle explosion. The Friedlander equation can then be written as
t
p(t) = P0 + Ps 1 − e−bt/T0 , (3)
T0
where T0 is the positive phase duration and b is the rate of exponential decay. The analytical
spectrum of the Friedlander’s sound pressure model, obtained by taking the Fourier transform
of (3), is given by
Ps ((b − 1) + jwT0 )
P (w) = 2 , (4)
T0 Tb0 + jw
where w is the angular frequency (rad/s) and j is the imaginary unit. The corresponding mag-
nitude spectrum, |P (w)|, is given by
Ps (b − 1)2 + T02 w2
|P (w)| = 2 . (5)
T0 b
T0
+ w 2
148
Noise Cancellation Techniques Applied to Gunshot Acoustics
T
11111
00000
00000
11111
00000
11111
00000
11111 0
1
0
1
011111
00000
00
11
1 0
1
00
1100
11
00000
11111
00
11
00
11 0
1
00000
11111
00
11
0011
11 0
1 0
1
H
11111
00000 0
1001
0 0
1 0
1 0
1
L1
0
T
00000
11111
00000
11111 x1
0
Peak 00000
11111
00000
11111
0000
1111
00000
11111 0
1 1
0
00000
11111
00000
11111 00
11
0000
1111
000
111 0 1
1 0
Bullet
00000
11111
Amplitude
t → time
0000
1111
00000
11111
00000
1111100
11
0000
1111
000
111 0
1 0
1
0000
1111
0000
1111
0000
1111 00
11
000
111 00
110
1 0
1
00
11
0000
1111
0000
1111 0011
000
111 001
0 Trajectory
0000
1111
0000
1111 11
000
111
0000
1111
0000
1111000
111 00
11
0000
1111
0000
1111 00
11
00
11
0000
1111 0
1 00
11
0
100
11 00 b 00
11 11
T
11111
00000
0
10
1 00
11
0
1
0
111111
00000
0
10
1
011111
Figure 3: The N-wave as a 10000011111
00000
function of time.
11111
00000
11111
00000
T 11111
00000
H
which is found by setting its gradient to zero and solving for w. Typically, small firearms muzzle
blasts sound pulses last for approximately 3 ms, with a sound pressure level (SPL) of 140 dB
(200 Pa)8 or higher [9].
Figure 2 illustrates a theoretical small firearm muzzle blast signal modeled using the Fried-
lander’s equation. In this example, the rate of exponential decay, b, was set to 1, the positive
phase duration, T0 , was set to 0.5 ms, and the peak overpressure, Ps , was set to 300 Pa (144
dB). Replacing these values in (3) results in a blast duration, TM , of approximately 3 ms, which
is consistent with the duration of an actual small firearm muzzle blast.
The muzzle blast is not always detectable, specially if sound suppressors are used or when
the array of sensors is located several hundred meters away from the firing gun. In the latter
case, due to propagation losses and additive background noise, the muzzle sound pressure may
drop below the noise floor before it reaches the array of sensors, thereby resulting in increased
difficulty in the detection process.
149
Paper IV
x Receiver
Shockwave
front
Bullet
Muzzle wave
front
θM
Detach
point
y
Shooter Position
Figure 5: A typical configuration for gunshot recording. θM is the Mach
angle and varies inversely proportional to the bullet velocity.
discontinuity is also referred to as an oblique shock when it is inclined with respect to the bullet
trajectory, or a bow shock when it is curved. The tail discontinuity is simply referred to as the
trailing-shock.
The head and the trail discontinuities are separated by a small time interval, T , known as
the period of the N-wave, that varies proportionally to the bullet length and the propagation
time. The last holds because discontinuities H and T travel at different speeds. Specifically,
the head and tail discontinuities travel at velocities slightly higher and lower than that of the
local speed of sound, respectively. These facts are illustrated in Figure 4, where the increase
in the time interval, T , between the bow and trailing shocks as they propagate outwards from
the bullet trajectory is evident. Figure 4 also illustrates how the energy is transferred from the
bullet to the shockwave. The average energy decreases as the shockwave propagates and tends
to dissipate relatively quickly with distance due to three main factors: 1) increase in the mean
radius x; 2) increase in the wave-length L; and 3) dissipation into heat.
In between the two main shock waves there can also be secondary shockwaves which are
commonly referred to as compression and expansion waves. As they propagate, they can merge
into the main shock waves, or give origin to new shock waves if they have enough power. By
extrapolating the sketch in Figure 4 to the three-dimensional space, one can realize that the
shockwave exhibits a conical shape involving the bullet trajectory and, therefore, it cannot be
detected when the bullet is moving away from the sensor.
The angle of propagation of the shockwave with respect to the bullet trajectory, θM , referred
to as the Mach angle, varies inversely proportional to the bullet velocity (see Figure 5) and is
given by
c 1
θM = sin−1 = sin−1 , (6)
v M
with v and c being the instantaneous bullet velocity and the speed of sound, respectively, and
M is a dimensionless quantity known as the Mach number, named after the Austrian physicist
and philosopher Ernst Mach (1838-1916).
150
Noise Cancellation Techniques Applied to Gunshot Acoustics
xm [n] = xm (nT )
= s[n − τm (φ, θ)] + vm [n], (7)
where xm [n] denotes a discrete-time version of the signal sampled at a sampling period T . The
quantity τm (φ, θ) represents the time-delay measured at microphone m with respect to a prede-
fined origin, whereas vm [n] is the additive noise component measured at the m-th microphone.
Furthermore, s[n − τm (φ, θ)] represents a discrete-time version of the signal of interest, s(t).
The model, as given by Equation (7), assumes that all microphones are properly calibrated.
It is simple and robust and allows for an integrated treatment of the noise cancellation and
the direction-of-arrival (DOA) estimation problems. The spectral subtraction and the adaptive
filtering techniques are applied using the pre-filtering approach as opposed to post-filtering
because the latter requires a priori knowledge of the direction of arrival of the signals of interest,
i.e., the Muzzle blast and the Shockwave. Moreover, the noise field is regarded as being spatially
distributed which can be exploited using the beamforming technique.
M −1
y[n] = wm zm [n]
m=0
M −1
= wm x[n + Δm − τm ]. (8)
m=0
151
Paper IV
x[n − τ0 ] z0 [n] w0
+Δ0
A/D Converters
+Δ1 Σ
Source
Spatial
Noise zM −1 [n] wM −1
x[n − τM −1 ]
+ΔM −1
Array of
Sensors
If we choose Δm = τm , the signals add constructively and the output finally becomes
M −1
y[n] = x[n] wm . (9)
m=0
Therefore, the array’s output, y(t), can be regarded as a scaled version of the input f (t). It can
be easily shown that the array gain (AG) under the Additive White Gaussian Noise (AWGN)
assumption is given by [18, 12].
SN Rarray
AGdB = 20 log = 10 log(M ), (10)
SN Rsensor
where M is the number of sensors.
152
Noise Cancellation Techniques Applied to Gunshot Acoustics
Gunshot Signal
10
Amplitude
0
−10
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Sample 4
Spectral estimation frames Noisy Gunshot Signal
x 10
10
Amplitude
0
−10
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Sample 4
x 10
Impulse Detection
5
}
}
0
100 200 300 400 500 600 700 800 900
Frame
Impulse detection sub-frames
(a) (b)
Figure 7: (a) Signal framing: 50% overlapping frames for spectrum estimation; and non-
overlapping sub-frames for impulse detection. (b) Example of shockwave and the muzzle blast
detection in a noisy signal.
where ∠X(ejω ) denotes the phase of X(ejω ), and [V (ejω )]2 is the average value of the back-
ground noise power, Pv = |V (ejω )|2 , estimated using successive overlapping frames as illus-
trated in Figure 7a.
Shortly after the original spectral subtraction algorithm had been proposed, Berouti et al.
[20] suggested an alternative method to estimate the clean signal from the received noisy signal
that makes use of an SNR dependent over-subtraction factor, α. Plugging this new factor into
Equation (12) it then becomes
" # 12 jω )
Ŝ(ejω ) = |X(ejω )|2 − α[V (ejω )]2 ej∠X(e . (13)
jω )
Knowing that X(ejω ) = |X(ejω )|ej∠X(e , Equation (13) can be further rearranged into
21
α|V (ejω )|2
Ŝ(e ) = 1 −
jω
X(ejω )
|X(ejω )|2
= H(ejω )X(ejω ), (14)
153
Paper IV
When denoising impulsive events such as gunshot acoustic signals, the background noise can
be considered as short-time stationary. Moreover, the relatively long periods of noise only that
occur can be used to effectively estimate the spectrum of the background noise. The estima-
tion process can be carried out recursively using successive overlapping frames of a predefined
length and controlled by a smoothing parameter, as follows. Let Pv (w, λ) denote the back-
ground noise power at frequency bin w, estimated over a given frame λ of length L samples.
An estimate of P (w, λ), denoted by P̂v (w, λ), can be then obtained using
where 0 < σ < 1 is the so-called smoothing parameter. It was shown in [23] that in speech en-
hancement applications the background noise is considered as being non-stationary and, there-
fore, the smoothing of Equation (16) with a fixed parameter σ might lead to estimation inaccu-
racies. When denoising impulsive signals, however, the short-time stationarity of background
noise guarantees good estimates of the noise spectrum, for 0.94 < σ < 0.98. In this case, the
background noise power estimate is updated during noise only periods and frozen if an impul-
sive event is detected. This is easily accomplished using a simple impulse detector [24, 25], as
illustrated in Figure 7b.
As mentioned, the noise component can be removed using either broadband or multi-band
spectral subtraction. The broadband approach was used in the earlier versions of the algorithm
[19, 20] and in a number of publications that followed discussing and analyzing its properties
and new applications [26, 27, 28, 29]. The first version of this algorithm for denoising of gun-
shot acoustic signals was introduced in [13]. The multi-band spectral subtraction algorithm was
originally proposed by Kamath and Loizou with application to speech enhancement [30]. It
was motivated by the fact that additive colored noise affects signals differently in different fre-
quencies, which also includes typical additive noise that might be found in a sniper localization
scenario. This fact motivated the development of a multi-band spectral subtraction version of
the algorithm for gunshot acoustics which was presented in [14]. A brief overview of the key
elements of this algorithm is given next.
Figure 8 shows the amplitude spectra of the ballistic shockwave and the muzzle blast of
a 5.56 mm bullet fired from approximately 737 meters with a passing distance relative to the
sensors of roughly 108 meters. As can be seen from that figure, most of the energy of the
shockwave signal is concentrated around the frequencies from 5 to 10 kHz, whereas the en-
ergy of the muzzle blast signal is centered around 1-2 kHz. This information is useful when
specifying some of the parameters of the multi-band spectral subtraction algorithm. First, the
available bandwidth is divided into N non-overlapping channels, under some criteria based on
the characteristic power spectral distribution of the gunshot signals. Next, the estimated power
spectrum of the background noise is subtracted from each of these channels independently, us-
ing different subtraction factors, αi , calculated based on the segmental SNR of each sub-band
154
Noise Cancellation Techniques Applied to Gunshot Acoustics
Amplitude Spectra
150
140
130
120
Amplitude (dB)
110
100
90
80
70 Shock wave
Muzzle blast
60
3 4
10 10
Hz
Figure 8: Amplitude spectra of the acoustic signatures generated by a 5.56 mm bullet fired
from approximately 737 meters away from the sensors, with a passing distance of roughly 108
meters.
or channel according to
% &e '
2
k=b |Xi (k)|
i
where bi and ei represent, respectively, the first and the last frequency bin in the i-th channel.
Parameter αi in (13) can be further scaled using a tweaking factor, δi , allowing even more
flexibility and control over the noise removal properties at each channel. Plugging in factor δi
into equation (13) it then becomes
21
Ŝi (k) = |Xi (k)|2 − δi αi P̂v (w, λ) ej∠Xi (k) . (18)
Again, because the additive noise component is colored, the spectral subtraction based noise
reduction method as in (18) allows for more flexibility in the noise removal process, thereby
contributing to further reducing the presence of artifacts and distortions in the denoised signal.
This is one of the major advantages of the multi-band spectral subtraction approach over its
broadband counterpart. The multi-band spectral subtraction algorithm is summarized in the
block diagram of Figure 9.
155
Paper IV
Get frame
Compute Power Spectral
Band 2 SNR Subtraction Overlap-add
FFT ŝ(t)
... ... ...
Impulse Detector
Yes
s(k) + v(k)
Adaptive Filter
Algorithm
d(k)
+
v̂(k) = u(k) y(k) ŝ(k)
w(k) Σ
−
e(k)
filter coefficients, w(k), are adjusted in a way such that the output of the adaptive filter, y(k),
approximates the noise component, v(k), and the estimate of the signal of interest, ŝ(k) is then
provided through the error signal as
since v(k) − v̂(k) ≈ 0 after the algorithm has converged. In most practical situations, the
greatest challenge lies on the difficulty in providing a highly enough correlated version of the
noise component. In this application, however, long periods of noise only are available and a
delayed version of the noisy signal, s(k) + v(k), can be used to replace v̂(k), i.e., one can force
156
Noise Cancellation Techniques Applied to Gunshot Acoustics
25
0m
m
(a) Array layout. (b) Sensors geometry.
Figure 11: Layout of the current prototype’s array. Sensors are placed 250 mm apart from each
other.
Among the large variety of adaptive filtering algorithms available in the literature, the Nor-
malized Least-Mean-Squares (NLMS) was the one chosen to be used in the experiments dis-
cussed in this work. This decision was made based on a number of reasons, e.g., the algorithm’s
simplicity and robustness. In addition, the algorithm’s inherent normalized step-size and its abil-
ity to distinguish between signals with narrow and wide autocorrelation are important properties
that allow it to cope very well with the transient nature of the gunshot acoustic signals.
The N th-order coefficient vector, w(k), for the NLMS algorithm is updated according to
[31]
μ
w(k) = w(k − 1) + u(k)e(k), (19)
ε + u(k)||2
where μ is the step-size and ε is a small constant that is used to prevent division by zero. The
coefficient vector, w(k), and the input vector, u(k), are both taped-delay-lines given by
and
respectively.
4 Application Examples
This section presents some results of the application of the three noise reduction techniques
briefly described in this work. Simulations were carried out using real gunshot acoustical data
sampled at 96 kHz acquired using a 4-microphone array as detailed in Figure 11. The gunshot
signals were recorded as clean as possible and the noise component was added accordingly
157
Paper IV
40 40
35 35
30 30
25 25
20 20
SNR out/dB
SNR out/dB
15 15
10 10
5 5
0 0
−5 −5
−10 −10
−10 −5 0 5 10 15 20 25 30 35 40 −10 −5 0 5 10 15 20 25 30 35 40
SNR in/dB SNR in/dB
(a) (b)
Figure 12: Example of array gain under spatial white noise assumption for various values of
SNR. (a) SNR out versus SNR in for the Shockwave; and (b) SNR out versus SNR in for the
Muzzle wave.
in each experiment. The spectral subtraction and adaptive filtering experiments were carried
out using the pre-filtering configuration, where the DOA of the signals of interest assumed as
unknown. The noise component was generated using a steel tracked military tank running on
asphalt and recorded separately using the same microphone array. It comprises, therefore, the
sound from the vehicle engine, which varies slightly in frequency over time according to the
engine’s rpm, and the sound from the steel track as the vehicle moves.
4.1 Beamforming
It has been pointed out that the beamforming technique provides an array gain of 10 log M dB
at the output of an M -microphone array. For instance, under ideal conditions, i.e., no reflecting
surfaces, absence of background noise or other sources of interference, an array of M = 4
microphones would provide an increase in the voltage SNR by a factor of 2, which is equivalent
to doubling the detection range.
Figures 12a and 12b show the results of computing the SNR gain from the beamforming
under spatial white noise using the 4-microphones array of Figure 11. The experiment was run
for several input SNR values, for both the Shockwave and the Muzzle blast. As can be seen
from those two figures, the array provides an SNR gain of 6 dB in average, which is consistent
with the theoretical value.
158
Noise Cancellation Techniques Applied to Gunshot Acoustics
60
Noisy Signal Noisy Signal
8
Processed Signal Processed Signal
40 6
4
20
2
0 0
−2
−20
−4
−40 −6
−8
−60
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 3.715 3.72 3.725 3.73 3.735 3.74
4 4
x 10 x 10
(a) (b)
Figure 13: Noise cancellation using NLMS adaptive filter. (a) Time-domain signals: the noisy
input versus the denoised output signal. (b) Zoomed-in signals for an SNR at the input of −15
dB (computed over the whole signal). The SNR at measured at the output was roughly 7 dB.
159
Paper IV
14
13
SNR out/dB
12
11
10
8
−10 −5 0 5 10 15 20
SNR in/dB
(a) (b)
Figure 14: Spectral subtraction part I: output SNR versus input SNR. (a) Noisy input signal
emphasizing the muzzle blast; and (b) The SNR gain decreases as the input SNR increases.
(a) (b)
Figure 15: Spectral subtraction part 2: (15a) Denoised signal using the broadband spectral
subtraction algorithm; and (15b) Denoised signal using the multi-band algorithm.
160
Noise Cancellation Techniques Applied to Gunshot Acoustics
of its major advantages is related to the fact that it operates in the frequency domain. This aspect
can be taken advantage of when implementing feature extraction algorithms for signal recogni-
tion that usually require frequency domain analysis as well. As for the beamforming technique,
it provides a significant SNR gain and, owing to its flexibility, it can also be used in combination
with either the spectral subtraction method or with any suitable adaptive filtering algorithm. As
future work, it would be interesting to carry out a quantitative performance evaluation of fea-
tures recognition algorithms in noisy environments, with and without the implementation of the
noise cancellation methods discussed in this paper.
Acknowledgments
This work was partly financed by the BTV project Multifunctional Sensor Systems. The authors
would like to thank the Norwegian Army Combat Lab for partially supporting this work.
References
[1] J. W. M. DuMond, E. R. Cohen, W. K. H. Panofsky, and E. Deeds, “A determination of
the wave forms and laws of propagation and dissipation of ballistic shock waves,” Journal
of the Acoustical Society of America, vol. 18, no. 1, pp. 97–118, 1946.
[2] W. B. Snow, “Survey of acoustic characteristics of bullet shock waves,” Audio and Elec-
troacoustics, IEEE Transactions on, vol. 15, no. 4, pp. 161–176, 1967.
[5] R. Raspet, H. E. Bass, L. Yao, P. Boulanger, and W. E. McBride, “Statistical and numerical
study of the relationship between turbulence and sonic boom characteristics,” Journal of
the Acoustical Society of America, vol. 96, no. 6, pp. 3621–3626, 1994.
[6] P. Boulanger, R. Raspet, and H. E. Bass, “Sonic boom propagation through a realistic
turbulent atmosphere,” Journal of the Acoustical Society of America, vol. 98, no. 6, pp.
3412–3417, 1995.
[7] B. M. Sadler, L. C. Sadler, and T. Pham, “Optimal and robust shockwave detection and
estimation,” in Acoustics, Speech, and Signal Processing, Proceedings of the 1997 IEEE
International Conference on, vol. 3, Apr 1997, pp. 1889–1892.
[8] B. M. Sadler, T. Pham, and L. C. Sadler, “Optimal and wavelet-based shock wave detection
and estimation,” Journal of the Acoustical Society of America, vol. 104, no. 2, pp. 955–
963, 1998.
161
Paper IV
[11] J. R. Aguilar, R. A. Salinas, and M. A. Abidi, “Acoustical model of small calibre ballistic
shock waves in air for automatic sniper localization applications,” in Proc. SPIE, Sen-
sors, and Command, Control, Communications, and Intelligence (C3I) Technologies for
Homeland Security and Homeland Defense VI, vol. 6538, May 2007, p. 65381D.
[13] ——, “A spectral subtraction based algorithm for real-time noise cancellation with ap-
plication to gunshot acoustics,” International Journal of Electronics and Telecommunica-
tions, vol. 59, no. 1, pp. 93–98, April 2013.
[14] ——, “A multi-band spectral subtraction based algorithm for real-time noise cancellation
applied to gunshot acoustics,” in Proc. SPIE, Sensors, and Command, Control, Commu-
nications, and Intelligence (C3I) Technologies for Homeland Security and Homeland De-
fense XII, vol. 8711, June 2013, p. 871109.
[16] S. D. Beck, H. Nakasone, and K. W. Marr, “Variations in recorded acoustic gunshot wave-
forms generated by small firearms,” Journal of the Acoustical Society of America, vol.
129, no. 4, pp. 1748–1759, April 2011.
[17] W. E. Baker, Explosions in Air. Texas, USA: University of Texas Press, November 1973.
[18] H. L. V. Trees, Optimum Array Processing (Part IV of Detection, Estimation, and Modu-
lation Theory), 1st ed. New York: Wiley-Interscience, 2002.
[19] S. Boll, “Suppression of acoustic noise in speech using spectral subtraction,” Acoustics,
Speech and Signal Processing, IEEE Transactions on, vol. 27, no. 2, pp. 113–120, April
1979.
162
Noise Cancellation Techniques Applied to Gunshot Acoustics
[21] Y. Ephraim and D. Malah, “Speech enhancement using a minimum-mean square error
short-time spectral amplitude estimator,” Acoustics, Speech and Signal Processing, IEEE
Transactions on, vol. 32, no. 6, pp. 1109–1121, December 1984.
[22] H. Gustafsson, S. Nordholm, and I. Claesson, “Spectral subtraction using reduced delay
convolution and adaptive averaging,” Speech and Audio Processing, IEEE Transactions
on, vol. 9, no. 8, pp. 799–807, November 2001.
[23] R. Martin, “Noise power spectral density estimation based on optimal smoothing and min-
imum statistics,” Speech and Audio Processing, IEEE Transactions on, vol. 9, no. 5, pp.
504–512, July 2001.
[24] T. Kasparis and J. Lane, “Suppression of impulsive disturbances from audio signals,” Elec-
tronics Letters, vol. 29, no. 22, pp. 1926–1927, October 1993.
[25] A. Dufaux, “Detection and recognition of impulsive sound signals,” Ph.D. dissertation,
University of Neuchâtel, Switzerland, 2001.
[27] J. Meyer and K. Simmer, “Multi-channel speech enhancement in a car environment using
Wiener filtering and spectral subtraction,” in Acoustics, Speech, and Signal Processing,
Proceedings of the 1997 IEEE International Conference on, vol. 2, April 1997, pp. 1167–
1170.
[28] T. Tosanguan, R. Dickinson, and E. Drakakis, “Modified spectral subtraction for de-
noising heart sounds: Interference suppression via spectral comparison,” in IEEE Biomed-
ical Circuits and Systems Conference – BioCAS 2008., November 2008, pp. 29–32.
[29] N. Evans, J. S. D. Mason, W. Liu, and B. Fauve, “An assessment on the fundamental lim-
itations of spectral subtraction,” in Acoustics, Speech and Signal Processing, Proceedings
of the 2006 IEEE International Conference on, vol. 1, May 2006, pp. I – 145–148.
[30] S. Kamath and P. Loizou, “A multi-band spectral subtraction method for enhancing speech
corrupted by colored noise,” in Acoustics, Speech, and Signal Processing, Proceedings of
the IEEE International Conference on, vol. 4, May 2002, pp. IV–4164.
[31] A. H. Sayed, Fundamentals of Adaptive Filtering. New Jersey: Wiley-IEEE Press, June
2003.
163
Paper V
165
The multipath propagation effect in gunshot
acoustics and its impact on the design of sniper
positioning systems
Abstract: Counter sniper systems rely on the detection and parameter estimation of the shock-
wave and the muzzle blast in order to determine the sniper location. In real-world situations,
these acoustical signals can be disturbed by natural phenomena like weather and climate condi-
tions, multipath propagation effect, and background noise. While some of these issues have re-
ceived some attention in recent publications with application to gunshot acoustics, the multipath
propagation phenomenon whose effect can not be neglected, specially in urban environments,
has not yet been discussed in details in the technical literature in the same context. Propagating
sound waves can be reflected at the boundaries in the vicinity of sound sources or receivers,
whenever there is a difference in acoustical impedance between the reflective material and the
air. Therefore, the received signal can be composed of a direct-path signal plus N scaled de-
layed copies of that signal. This paper presents a discussion on the multipath propagation effect
and its impact on the performance and reliability of sniper positioning systems. In our formu-
lation, propagation models for both the shockwave and the muzzle blast are considered and
analyzed. Conclusions following the theoretical analysis of the problem are fully supported by
actual gunshots acoustical signatures.
Copyright 2013 Society of Photo Optical Instrumentation Engineers. One print or electronic
copy may be made for personal use only. Systematic electronic or print reproduction and dis-
tribution, duplication of any material in this paper for a fee or for commercial purposes, or
modification of the content of the paper are prohibited.
http://dx.doi.org/10.1117/12.2018739
1 INTRODUCTION
received signal is generally composed of a direct-path signal, which is not always present, plus
M scaled delayed copies of the direct-path signal. The scaling factors are dependent on the
characteristics of reflective surfaces, whereas the time delays are determined by the respective
angles-of-arrival. This paper presents a discussion of the multipath propagation effect and its
impact on the performance and reliability of sniper positioning systems. In our formulation,
propagation models for both the shockwave and the muzzle blast are considered and analyzed.
Conclusions following the theoretical analysis of the problem are fully supported by actual
gunshots acoustical signatures.
Gunshot acoustics is a research topic that finds application in forensics and in the design of
sniper positioning systems. Some of the earlier works on the subject date from 1946 by Jesse Du
Mond et al.[1] and 1969 by W. Snow [2], addressing, respectively, the physics of the shockwave
phenomenon and the geometry of the gunshot event, including the muzzle blast. Other relevant
early works addressing the physics of the sonic-boom propagation appeared later in [3, 4, 5, 6].
Some specific issues related to the ballistic shockwave signal have been discussed earlier, e.g.,
detection and parameter estimation [7, 8], and revisited in recent publications [9, 10, 11, 12, 13]
applied to sniper localization systems. The background noise cancellation problem has also
been addressed in recent works by the authors. [14, 15]
This paper presents a discussion on the multipath propagation effect in gunshot acoustics
and its impact on the performance and reliability of sniper positioning systems. Propagation
models for both the muzzle blast and the shockwave are considered and analyzed, with special
emphasis on the latter, and a simple and effective solution to the problem that avoids the need
for determining the channel’s impulse response is proposed. In multipath propagation envi-
ronments, the received signal is usually composed of a direct-path signal, which is not always
present, plus N scaled delayed copies of the direct-path signal. The scaling factors are depen-
dent on the characteristics of reflective surfaces, whereas the time delays are determined by the
respective angles-of-arrival. The muzzle blast behaves like an ordinary impulsive acoustical
wave and its reflection on a given boundary follows the same principle as that of any ordinary
linear sound wave. A ballistic shockwave, however, is a nonlinear phenomenon that behaves in
a very peculiar way when reflecting off a surface. To the best of the authors’ knowledge, this
issue has not yet been discussed in the technical literature in the context of acoustical sniper
positioning systems.
The first experimental study on the shock waves reflection phenomenon was conducted by
the Austrian physicist and philosopher Ernst Mach and published in 1878 [16]. Mach identified
two types of reflections: a regular reflection that results in a two-shock configuration; and a
three-shock structure called the Mach reflection. Later, a new type of reflection, initially named
the non-Mach reflection, was observed by von Neumann and would later be known as the von
Neumann reflection. This led to the idea of dividing the shock wave reflections into two main
types: regular reflection; and irregular reflections. Today, irregular shock waves reflections are
believed to comprise several subtypes as recently reported by Semenov et al.[17] The topic is
still receiving the attention of many researchers from different fields, e.g., fluid dynamics and
solid mechanics. See for example Ben-Dor et al.[18] and Brown [19], respectively.
The reminder of this paper is organized as follows. Section 2 presents a discussion on the
168
x Receiver
Shockwave
front
Muzzle wave
front
Bullet
θM
Detach
point
Shooter Position
acoustics of gunshots, including some considerations about the ballistic shock wave reflection
phenomenon. The multipath propagation problem, implications, and proposed solution are
discussed in Section 3. Conclusions and future works are presented in Sections 4.
2 GUNSHOTS ACOUSTICS
This section provides an overview of gunshot acoustics, including some considerations about
reflections. Special attention is paid to the ballistic shockwave reflection which is a very inter-
esting phenomenon and worth analyzing in this context. The sound events associated with the
firing of a gun are: the mechanical sounds, the muzzle blast, and the ballistic shockwave. The
mechanical sounds, useful in forensics [20], comprise three different types of sounds whose ori-
gin are associated with the trigger, the hammer, and ejection of spent cartridges. These sounds
are detectable only if a sensor is placed in the proximity of the gun and are, therefore, of little
or no importance in sniper positioning applications. Only the muzzle blast and the shockwave
are events of interest, as illustrated in Figure 1.
169
2.2 The muzzle blast reflection
(a) Sound field at time t = t1 (b) Sound field at time t = t2 (c) Sound field at time t = t3
(d) Sound field at time t = t4 . (e) Sound field at time t = t5 . (f) Sound field at time t = t6 .
The sound pressure resulting from the muzzle blast is strongest in the direction the gun
barrel is pointing to. Nonetheless, the muzzle sound can be modeled as an acoustical monopole
in the far-field. Furthermore, the sound pulse energy is directly proportional to the volume of
gas flow rate (volume velocity) at the source and becomes very sensitive to background noise
and other sources of interference with increasing range. Indeed, the source’s sound pressure
decreases exponentially with time and the rate of decrease depends on the flow characteristics
of the source. When the muzzle pulse meets a boundary, part of its energy is absorbed and part
is reflected. The relationship between the amount of energy that is reflected and that that is
absorbed is governed by the reflection coefficient which is frequency dependent. This is a well
known fact that has been exploited in seismic exploration [21]. Therefore, not only the detected
reflect pulse will have lower energy due to propagation losses, but will also exhibit different
amplitude spectrum compared to the direct-path signal. That is because its frequency content is
not affected the same way throughout the entire bandwidth.
Figure 2 illustrates an impulsive sound propagating from a point source in space. The re-
flection coefficient at the boundaries was set to R = −1, and, for sake of simplicity, an input
signal composed of only one single frequency was used. The figure also illustrates how the
impulse can be affected in amplitude and in phase with propagation time, and when reflecting
off a surface.
170
H
H
T x L
Peak Bullet
Amplitude t → time
Trajectory
T
(a) The N-wave.
b
H
(b) Path of Energy transfer from bullet to shock wave. x: miss-
distance; L: wavelength.
171
In between the two main shock waves there can also be secondary compression and expansion
shock waves which can merge into the main shock waves as they propagate, or give origin to
new shock waves if they have enough power.
This is illustrated in Figure 3b, where the increasing in the time interval, T , between the
head and trailing shocks as they propagate outwards from the bullet trajectory is evident. Fig-
ure 3b also illustrates how the energy is transferred from the bullet to the shockwave. The
average energy decreases as the shockwave propagates due to three main factors: 1) increase in
the mean radius x; 2) increase in the wave-length L; and 3) dissipation into heat. By extrapolat-
ing the sketch in Figure 3b to the three-dimensional space, one can realize that the shockwave
exhibits a cone shape involving the bullet trajectory called the Mach cone and, therefore, can
not be detected when the bullet is moving away from the sensor. The angle of propagation θM
with regard to the bullet trajectory is referred to as Mach angle and given by
−1 1
θM = sin , (1)
M
where M = v/c is the Mach number, with v and c being the instantaneous bullet velocity and
the speed of sound, respectively. The sound velocity in air is related to the air temperature
according to [10]
T
c = c0 1 + , (2)
273
where T is the air temperature in degree Celsius and c0 = 331 m/s is the sound velocity at
T = 0 o C.
172
I
I
vi vi
vr
Mach Stem
R Tp
vr
Slipstream
at the boundary the same way they do when moving through the air. Indeed, the compression
and rarefaction shock waves meet the reflecting surface at different angles of incidence and,
therefore, the period of the reflected ballistic shockwave can be affected since the flow condi-
tions at the reflecting surface are no longer the same as when the (compression and expansion)
shock waves are approaching it. This will result in changes in the relative speeds between the
compression and expansion shock waves. If the shock wave front is normal to the boundary,
depending on the acoustic impedances of the two media, it may also happen that the incoming
compression and rarefaction shock waves are reflected back as two shock waves of opposite
kind, resulting in a phase shift of 180 degrees. This can be regarded as a special case of regular
reflection.
N
x(t) = ak s(t − tk ) + v(t), (3)
k=0
where ak is the scaling coefficient associated with the k-th path signal delayed by tk seconds.
Figure 6 illustrates a typical gunshot acoustical signal with multipath components. The
signature belongs to a 12.7 mm bullet fired from approximately 540 meters with a passing
173
Ic
Ir
T1
Rc
T2
Rr
distance relative to the sensors of roughly 62 meters. In this configuration, the power of the
primary shockwave is much higher than the power of its reflections and the power of the muzzle
blast. For a better visualization, the recorder signal was scaled using an exponential factor of
n3/2 during the first 83 ms, with n being the sample index. As can be seen from the figure, the
direct-path shockwave signal arrives first, followed closely by some reflections, and then the
muzzle blast. The scaling factor is kept constant from t = 83 ms on.
Recalling Figure 1, it is easy to realized that, when both the shockwave and the muzzle blast
signals are detectable, not only they will arrive at different times, but they will also arrive from
different angles. The problem becomes even more complicated if more shooters from different
shooting positions are included in the analysis. Therefore, multipath propagation effects in
gunshot acoustics poses a rather different challenges in the design of sniper localization systems
when compared to those found in the design of communication systems. Given the nature of
the sniper positioning application, determining the channel’s impulse response to the gunshot
signals would be a rather unpractical approach, specially when the system is being used in civil
areas. A simple and effective solution to this problem that avoids the need for determining the
channel’s impulse response is discussed next.
174
5
x 10
1
0.6
0.2
−0.2
−1
0 100 200 300 400 500
Time (ms)
• Energy Dissipation: the energy in a shockwave tends to dissipate much quicker than in
an ordinary sound wave because part of that energy is converted into heat [1]. It is also
known that, in the far field, the ratio between the shockwave overpressure and its period
is asymptotically independent of the shape of the bullet [12].
• Variations in the Period: the period of the shockwave increases directly proportional
to the fourth root of the miss-distance[12]. As such, it is expected that the period of
reflected shockwaves will be longer compared to the period of the respective direct-path
shockwave.
• Energy Absorption: when reflecting off a given surface, part of the energy will be ab-
sorbed as a transmitted shock into the body of the object. Therefore, reflect shockwaves
will have lower energy as a result of propagation losses and interaction with absorbing
boundaries. Energy absorption is frequency dependent and, therefore, the frequency spec-
tra are not affected the same way in the whole bandwidth.
175
• Direction-of-arrival (DOA): the use of beamforming as discussed by Ramos et al. [13]
can provide means to effectively discard signals arriving from improbable direction, e.g.,
ground reflections.
• Others: the received signals can eventually overlap, and cause deformations it their
shapes, but they can still be recognized and discriminated based on their frequency con-
tents.
The set of features listed above can also be useful in more complex situations where burst
shot might occur or even multiple snipers shooting from different locations and aiming at differ-
ent targets. These are likely scenarios and should be considered. Based on what have been said,
one can now realize that the period of direct-path shock waves from a burst shot (single sniper)
aiming at the same target will be approximately constant. Possible reflections will follow a pat-
tern that make them easily distinguishable from the direct-path signal. As for the muzzle blast,
its detection in long range distances has been more problematic than the multipath effect itself.
However, its power spectrum also varies under multipath propagation and this could be used,
alongside the beamforming technique, to cope with the problem.
Implementing the solution based on features extraction would not be costly knowing that
robust Sniper Position Systems must have a recognition system, based on features extraction as
well, to discriminate gunshots from others types of impulsive signals.
176
Shockwaves Power Spectra Shockwaves Power Spectra
0 0
−10 −10
Normalized Power (dB)
−30 −30
−40 −40
−50 −50
Direct Path Signal Direct Path Signal
First Reflected Signal Second Reflected Signal
−60 −60
2 3 4 2 3 4
10 10 10 10 10 10
Frequency (Hz) Frequency (Hz)
(a) (b)
Normalized Amplitude
0.4
−20
0.2
0
−30
−0.2
−0.4
−40
−0.6
−50 −0.8
Direct Path Signal
−1
Third Reflected Signal
−60
2 3 4 0 10 20 30 40 50 60
10 10 10
Frequency (Hz) Samples
(c) (d)
be interesting to investigate the situation when the sniper localization system is mounted in a
moving vehicle in which case the Doppler effect must be taken into account.
Acknowledgments
This work was partly financed by the BTV project Multifunctional Sensor Systems.
The authors would like to thank the Norwegian Army Combat Lab for partially supporting this
work.
References
[1] J. W. M. DuMond, E. R. Cohen, W. K. H. Panofsky, and E. Deeds, “A determination of
the wave forms and laws of propagation and dissipation of ballistic shock waves,” Journal
of the Acoustical Society of America, vol. 18, no. 1, pp. 97–118, 1946.
177
[2] W. B. Snow, “Survey of acoustic characteristics of bullet shock waves,” Audio and Elec-
troacoustics, IEEE Transactions on, vol. 15, no. 4, pp. 161–176, 1967.
[5] R. Raspet, H. E. Bass, L. Yao, P. Boulanger, and W. E. McBride, “Statistical and numerical
study of the relationship between turbulence and sonic boom characteristics,” Journal of
the Acoustical Society of America, vol. 96, no. 6, pp. 3621–3626, 1994.
[6] P. Boulanger, R. Raspet, and H. E. Bass, “Sonic boom propagation through a realistic
turbulent atmosphere,” Journal of the Acoustical Society of America, vol. 98, no. 6, pp.
3412–3417, 1995.
[7] B. M. Sadler, L. C. Sadler, and T. Pham, “Optimal and robust shockwave detection and
estimation,” in Acoustics, Speech, and Signal Processing, Proceedings of the 1997 IEEE
International Conference on, vol. 3, Apr 1997, pp. 1889–1892.
[8] B. M. Sadler, T. Pham, and L. C. Sadler, “Optimal and wavelet-based shock wave detection
and estimation,” Journal of the Acoustical Society of America, vol. 104, no. 2, pp. 955–
963, 1998.
[9] R. C. Maher, “Modeling and signal processing of acoustic gunshot recordings,” in Proc.
IEEE Signal Processing Society 12th DSP Workshop, 2006, pp. 257–261.
[10] ——, “Acoustical characterization of gunshots,” in SAFE ’07: IEEE Workshop on Signal
Processing Applications for Public Security and Forensics, April 2007, pp. 109–113.
[12] J. R. Aguilar, R. A. Salinas, and M. A. Abidi, “Acoustical model of small calibre ballistic
shock waves in air for automatic sniper localization applications,” in Proc. SPIE, Sen-
sors, and Command, Control, Communications, and Intelligence (C3I) Technologies for
Homeland Security and Homeland Defense VI, vol. 6538, May 2007, p. 65381D.
178
[14] ——, “Real-time vehicle noise cancellation techniques for gunshot acoustics,” in Proc.
SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I) Tech-
nologies for Homeland Security and Homeland Defense XI, vol. 8359, May 2012, pp.
835 917–835 917–9.
[15] ——, “A spectral subtraction based algorithm for real-time noise cancellation with ap-
plication to gunshot acoustics,” International Journal of Electronics and Telecommunica-
tions, vol. 59, no. 1, pp. 93–98, April 2013.
[16] E. Mach, “Über den Verlauf der Funkenwellen in der Ebene und im Räume (On the prop-
agation of radio waves in the plane and in space),” Vienna Acad. Sitzungsbr., vol. 78, pp.
819–838, 1878.
[18] G. Ben-Dor, T. Elperin, H. Li, and E. Vasiliev, “The influence of the downstream pressure
on the shock wave reflection phenomenon in steady flows,” Journal of Fluid Mechanics,
vol. 386, pp. 213–232, May 1999.
[19] J. L. Brown, “High pressure hugoniot measurements in solids using mach reflections,”
Ph.D. dissertation, California Institute of Technology, 2011.
[21] D. Xu, Y. Wang, Q. Gan, and J. Tang, “Frequency-dependent seismic reflection coefficient
for discriminating gas reservoirs,” Journal of Geophysics and Engineering, vol. 8, no. 4,
p. 508, 2011. [Online]. Available: http://stacks.iop.org/1742-2140/8/i=4/a=003
[22] Z. Jiang, Y. Huang, and K. Takayama, “Shocked flows induced by supersonic projectiles
moving in tubes,” Computers & Fluids, vol. 33, no. 7, pp. 953–966, July 2004.
[23] B. Zhang, H. Liu, F. Chen, and G. Wang, “Numerical simulation of flow fields induced by
a supersonic projectile moving in tubes,” Shock Waves, vol. 22, pp. 417–425, July 2012.
179
View publication stats