Download as pdf or txt
Download as pdf or txt
You are on page 1of 193

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/299115975

Acoustic Sniper Positioning Systems

Thesis · January 2015

CITATIONS READS

2 192

1 author:

António Luiz Lopes Ramos


University of South-Eastern Norway
27 PUBLICATIONS   121 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

NorBraInterships View project

Sniper Positioning Systems View project

All content following this page was uploaded by António Luiz Lopes Ramos on 18 September 2018.

The user has requested enhancement of the downloaded file.


UNIVERSITY OF OSLO
Department of Informatics

Acoustic Sniper
Positioning
Systems

Ph.D. Thesis

António L. L. Ramos

January 16, 2015


© António L. L. Ramos, 2015

Series of dissertations submitted to the


Faculty of Mathematics and Natural Sciences, University of Oslo
No. 1596

ISSN 1501-7710

All rights reserved. No part of this publication may be


reproduced or transmitted, in any form or by any means, without permission.

Cover: Hanne Baadsgaard Utigard.


Printed in Norway: AIT Oslo AS.

Produced in co-operation with Akademika Publishing.


The thesis is produced by Akademika Publishing merely in connection with the
thesis defence. Kindly direct all inquiries regarding the thesis to the copyright
holder or the unit which grants the doctorate.
Preface

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).

II A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei. ”A spectral subtraction based


algo- rithm for real-time noise cancellation with application to gunshot acoustics.“ Inter-
national Journal Of Electronics And Telecommunications, 59(1), p. 93–98, April 2013.

III A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei. ”A multi-band spectral subtrac-


tion based algorithm for real-time noise cancellation applied to gunshot acoustics.“ In
Proc. SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I)
Technologies for Homeland Security and Homeland Defense XII, 871109 (June 6, 2013).

IV A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei.


”Noise Cancellation Techniques Applied to Gunshot Acoustics.“ Submitted.

V A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei. ”The multipath propagation


effect in gunshot acoustics and its impact on the design of sniper positioning systems.“ In
Proc. SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I)
Technologies for Homeland Security and Homeland Defense XII, 87110A (June 6, 2013).

vii
Related Publications

Preliminary results of some of the publications in this thesis were partially published in the
following journal paper and conference papers:

VI A. L. L. Ramos, J. A. Apolinário Jr., S. Werner, “Multichannel fast QRD-LS adaptive


filtering: Block-channel and sequential-channel algorithms based on updating backward
prediction errors.” Signal Processing vol. 87 no. 7, pp. 1782–1798, July 2007.

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.

VIII A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei, “A modified spectral subtrac-


tion 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.

IX A. L. L. Ramos, J. A. Apolinário Jr., 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, pp. 1–4, September 2005.

ix
Contents

Preface iii

Abstract iv

List of Publications vi

Related Publications viii

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

2 Noise Cancellation and DOA Estimation Algorithms 21


1 Signal Model and Data Acquisition . . . . . . . . . . . . . . . . . . . . . . . . 21
2 Adaptive Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1 The Minimization Problem . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2 LMS Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3 The RLS Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.4 QRD-RLS Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.5 Fast QRD-RLS Algorithms . . . . . . . . . . . . . . . . . . . . . . . . 30
2.6 The Adaptive Noise Cancellation Problem . . . . . . . . . . . . . . . . 33
3 The Spectral Subtraction Algorithm . . . . . . . . . . . . . . . . . . . . . . . 33
3.1 Amplitude Spectral Subtraction . . . . . . . . . . . . . . . . . . . . . 35
3.2 Power Spectral Subtraction . . . . . . . . . . . . . . . . . . . . . . . . 35
4 Beamforming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1 The 3D Delay-and-sum Beamforming for DOA Estimation . . . . . . . 38

xi
Contents

4.2 The Steered-response Power (SRP) Algorithm . . . . . . . . . . . . . . 39


5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3 Discussion and future works 43


1 Technical Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2 Overview of Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.1 Book Chapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2 Papers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3 Future Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

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.

1 The Sniper Localization Problem


A sniper can be defined as any concealed gunman firing a rifle [1]. Police and military snipers
are usually highly trained individuals working in teams of two members that, when on mission,
have each a very specific but interchangeable task: spotting and sniping. Snipers can target or be
targeted by other snipers with or without equivalent training. In conventional military situations
it can take several days before the threat posed by an enemy sniper is eliminated, simply because
skilled snipers are also experts in remaining invisible to their foes. Modern technology applied
to this problem has the potential to hasten the process of localizing a sniper reducing the time
to less than two seconds after a gun has been fired. In some cases, the presence of an enemy
sniper can be detected even without a single shot has been fired [1].

1.1 Sniping and Counter Sniping Tactics and Techniques


Professional snipers must master a great variety of techniques, including how to effectively use
the sniping tools, the ability to adapt to different environments and weather conditions, and
choosing the best sniping positions [1]. In some rescue missions, the sniper might be required
to shoot effectively from many different platforms, e.g., helicopter, medium-sized vessels, and
even rigid-hull inflatable boats [2]. Counter sniping tactics and techniques are designed with
the primary goal of restricting the ability of an enemy sniper to cause damage to whomever his
target might be. Therefore, understanding how snipers operate plays a key role in successful
counter-sniping missions. Indeed, most sniping tactics and techniques are more effectively
counteracted by a friendly sniper team with equivalent training while others might pose greater
challenges to the human senses. This is the case, for example, when the sniper exploits effects
like echoes, specially in urban environments, in order to confuse their foes.
A traditional sniper localization method is the so called “crack & bang” technique, also
known as “crack & thump” [3]. It relies on the ability of the soldier to quickly estimate the
time-difference of arrival (TDO) between the shockwave, generated by the supersonic bullet
(the crack), and the muzzle wave that follows the explosion in the gun barrel (the bang). It is
meant to be a very simple method that provides a rough estimate of the sniper’s range. The

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.

1.2 State of the Art


As mentioned, the firing of a gun generates acoustic and electromagnetic signatures that convey
enough information to determine the location of the shooter with reasonable accuracy. Signals
in the infrared range of the electromagnetic spectrum and audible acoustic waves have yielded
very promising results so far. The electromagnetic signatures in the visible range reflected by
some of the sniper tools, like rifle scopes, spotting scopes, and trench periscopes can also be
useful. When the amount of natural light available is insufficient, these tools can still be detected
using laser beams which can also be used to estimate the range to the shooter.
The detection and positioning processes can be based on different technologies depending
on what kind of signature, acoustic or electromagnetic, is processed. The former, referred to in
this text as acoustic sniper positioning systems, is based on the processing of the muzzle blast
and the ballistic shockwave signatures, whereas the latter can be based on the processing of
infrared signatures or lasers [4]. Laser-based counter-sniper systems are not strictly dependent
on the occurrence of a gunshot event. A few decades ago, the USA and Russia worked indepen-
dently on laser-based sniper localization system that could detect and engage enemy soldier by
neutralizing any telescope or night vision device in range. As described by Major John Plaster
in [1], these devices were designed to emit a visible laser beam powerful enough to blind enemy
soldiers wearing night vision devices or using scopes. Later, the U.S.A. government reconsid-
ered and decided to deploy its version of this laser-based sniper localization system without the
engaging functionality [1].

Some examples of systems currently available on the market

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.

1.3 Acoustic Sniper Positioning Systems


Acoustic Sniper Positioning Systems rely solely on the detection of the muzzle blast and the
shockwave acoustic signatures to estimate the position of a potential enemy sniper. There are
also mechanically originated sounds, associated with the trigger, the hammer, and ejection of
spent cartridges, which are detectable only if a sensor is placed in the proximity of the gun.
These events are useful in forensics analysis [12, 13], but are of no special interest in the design
of sniper positioning systems. For this reason, they are not further considered in this work.

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.

The SNIPOS system

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:

– Total system mass: less than 10 kg;

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:

– Acoustic gunfire detection using muzzle blast and shockwave [14];


– Provides azimuth, elevation, and range to shooter from moving vehicle;
– Full 360 deg. in azimuth and 90 deg. in elevation;
– Determines position of and/or direction to the target;
– Caliber detection: 5.56, 7.62, and 12.7;
– Audio and visual alert with graphical presentation;
– Detects shots from manually triggered weapons;
– Reports storage and presentation.

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.

2.1 The Muzzle Blast


The muzzle blast is a consequence of the sudden expansion of gas following the explosion in
the gun barrel. The generated acoustic energy is directly proportional to the volume of gas flow
rate (volume velocity) at the source and propagates at the speed of sound. The speed of sound
depends on the properties of the medium through which it propagates. In air, for example, it
varies with temperature according to [18]

T
c = c0 1 + , (1.1)
273
where T is the air temperature in degree Celsius and c0 = 331 m/s is the sound velocity at
T = 0 o C. This gives, for example, a propagation velocity of 343 m/s at a temperature of 20
degrees Celsius.
Although the acoustic energy radiates in all directions, the sound pressure is highest in the
direction the gun barrel is pointing to. The cause of the attenuation measured in the rear sound
pressure can be attributed mainly to the presence of the shooter’s body and the physical char-
acteristics of the firearm [19]. The angular peak overpressure (radiation pattern) is, therefore, a
function of the azimuth angle, φ, measured with respect to the line-of-fire. One of the proposed
models for the angular peak overpressure is given by [20]
  
P0o − P180o φ
p(φ) = P0o 1 − sin , (1.2)
P0o 2

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

The magnitude spectrum in (1.5) has a peak at

1√ 2
wmax = −b + 4b − 2,
T0

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)1 or higher [18]. Figure 1.4 illustrates a theoretical
small firearm muzzle blast modeled using the Friedlander’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 (1.3) results in a
blast duration, TM , of approximately 3 ms, which is consistent with the duration of an actual
small firearm muzzle blast.
1
Unit conversion is carried out using the reference (hearing threshold) pressure p0 = 20μPa.

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)

Figure 1.4: Ideal time-domain signature and corresponding analytical frequency


spectrum of a typical small firearm muzzle blast according to Friedlander’s model.
Setting b = 1, T0 = 0.5 ms, with P0 and Ps = 0 equal to 0 and 300 Pa, respectively,
results in a total blast duration, TM , of approximately 3 ms.

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.

2.2 The Shockwave


A ballistic shockwave, present only when the bullet is moving at supersonic speed, is character-
ized by a sudden rise in pressure followed by an approximately linear decline to a value nearly
as far below as the original rise and then an almost instantly return to the atmospheric pressure
[21]. In reality, there are two different types of shockwaves involved: a compression shock
and an expansion shock. In this work, the combination of these two events is referred to as a
ballistic shockwave, or simply a shockwave. The shape of the time-domain representation of
the shockwave resembles that of an “N” (see Figure 1.5a) and is sometimes referred to as the
N-wave. In Figure 1.5, H and T stand for head an tail, respectively, and represent the peak pos-
itive and negative pressures caused by the head and tail of the bullet as it travels through the air
at supersonic speed. The head discontinuity is also called 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.

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.

Figure 1.5: The Shockwave.

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

Figure 1.6: A typical configuration for gunshot recording. θM is the Mach


angle, and varies inversely proportional to the bullet velocity.

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

θM = sin−1 (1) = 90o .

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

Miss distance Expanding


Shockwave

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.

2.3 The Multipath Propagation Effect


The additive background noise and the multipath propagation effects are two central issues
that cannot be overlooked in the design of acoustic sniper localizations systems. This section
presents a brief discussion of the multipath propagation effect in gunshot acoustics, while the
additive background noise problem is treated in Chapter 2.
In multipath propagation environments, the received signal is composed of a direct-path
signal, which is present only when there is an unobstructed line-of-sight from source to re-
ceiver, plus N scaled delayed copies of the direct-path signal. The scaling factor is frequency
dependent and determined by the characteristics of reflective surface and the traveling distance,
whereas the associated time-delay is determined by propagation path and the respective angle-
of-arrival. The multipath propagation effect poses less problems in open field environments,
characterized by the absence of objects in the vicinity of the recording apparatus, but the anal-
ysis of recorded gunshot signals has shown that a shockwave ground reflection (please, see the
illustration in Figure 1.7) is almost always present [23].
The muzzle blast behaves like an ordinary acoustic pulse and thus its reflection at a given
boundary follows the same principles governing the reflection of ordinary sound waves. Bal-
listic shock waves, however, are nonlinear phenomena and behave in a very peculiar way when
reflecting off a surface. The first experimental study on the shock waves reflection phenomenon

14
Gunshot Acoustics

I I

vi
vi

vr
Mach Stem

R Tp
vr

Slipstream

(a) Regular reflection. (b) Mach reflection.

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

Figure 1.9: Reference frame of a moving ballistic shockwave front reflecting at an


oblique air-solid interface. Legend: Ic →incident shock of compression; Ir →incident
shock of rarefaction; Rc →reflected shock of compression; and Rr →reflected shock of
rarefaction; The period of the reflected shockwave, T2 , increases relative to the period
of the incident shockwave, T1 .

15
Introduction

5
x 10
1

0.8 Direct path shockwave

0.6

0.4 Third path shockwave


Muzzle sound
Amplitude

0.2

−0.2

−0.4 Fourth path shockwave

−0.6 Second path shockwave


−0.8

−1
0 100 200 300 400 500
Time (ms)

Figure 1.10: Gunshot recording with reflections. The signal is upscaled by 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.

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

Direct path shockwave


1 Fourth path shockwave
0.8

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.

3 Main Contributions in this Thesis


The main goal of this project was to investigate means to improve the reliability of the under-
development SNIPOS system. Three priority topics were identified: direction-of-arrival (DOA)
estimation, multipath propagation, and noise cancellation. A combination of theoretical and
applied signal processing work has been carried out based on actual gunshot acoustic signals
recorded using the SNIPOS prototype. The end results are summarized below.

• 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

With application to gunshot acoustics

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.

1 Signal Model and Data Acquisition


Signal model

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

Noise Cancellation and


Array Processing Algorithms

Figure 2.1: Signal model.

25
0m
m

(a) Array layout. (b) Sensors geometry.

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)

Figure 2.3: Basic configuration of an adaptive filter.

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

w = [w0 w1 ··· w N ]T . (2.2)

Furthermore, assume that the input vector, x(k), is a taped-delay-line given by

x(k) = [x(k) x(k − 1) ··· x(k − N )]T . (2.3)

The output of the adaptive filter, y(k), is then given by

N
y(k) = wi x(k − i)
i=0
= w x(k).
T
(2.4)

2.1 The Minimization Problem

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

The MSE cost function is defined as



ξ(k) = E|d(k) − wT x(k)|2 , (2.5)

where E| · | denotes the expectation operator. Using (2.4) in (2.5) one can write

ξ(k) = Ed2 (k) − 2wT E[d2 (k)x(k)] + wT E[x(k)xT (k)]w


= σd2 (k) − 2wT p + wT Rw, (2.6)

where σd2 (k) is the variance of the reference signal, whereas p and R, defined as,

p = E[d2 (k)x(k)], and (2.7)


R = E[x(k)x (k)], T
(2.8)

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.

∇w ξ(k) = −2p + 2Rw = 0. (2.9)

Solving for w, and assuming that R is positive definite, the optimal solution can finally be
expressed as
wo = R−1 p. (2.10)

The weighted least-squares

The WLS cost function is defined as

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

The error vector in (2.11) can be expressed using matrix notation as

e(k) = d(k) − XT (k)w(k), (2.13)

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

R(k) = X(k)XT (k), (2.16)

and

p(k) = X(k)d(k). (2.17)

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

w(k) = R−1 (k)p(k), (2.18)

provided that correlation matrix R(k) is invertible.


The solutions in (2.10) and (2.18) require that the statistics of the signal of interest are
known in advance which makes them of very little practical use. The Least-Mean-Squares and
the Recursive Least-Squares are two very well known algorithms that solve the minimization
problem recursively. Both algorithms belong to the so-called stochastic-gradient method and
are briefly described next.

2.2 LMS Algorithms


The least-mean-squares (LMS) family of algorithms stem from the steepest-descent method
that is based on the idea that the solution to the minimization problem can be obtained using an
iterative procedure stated as
w(k) = w(k − 1) + μq, (2.19)
where μp represents a correction term added recursively to the old guess w(k − 1) in order to
obtain the new guess w(k). The scalar μ is commonly referred to as the step-size and q, the
update direction, is chosen as the opposite direction of the gradient of the cost function. Any q
of the form
q = −B [∇w ξ(k − 1)] (2.20)

25
Noise Cancellation and DOA Estimation Algorithms

can be used in (2.19). A popular choice for B is

B = [(k)I + ∇2w ξ(k − 1)]−1 = [(k)I + R]−1 , (2.21)

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

R̂ = x(k)xT (k), and


d̂ = d(k)x(k), (2.22)

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.

2.3 The RLS Algorithm

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,

w(k) = R−1 (k)p(k),

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)

Auxiliary vector k(k) in (2.26), defined as

k(k) = R−1 (k − 1)x(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

w(k) = w(k − 1) + R−1 (k)x(k)[d(k) − wT (k − 1)x(k)]


= w(k − 1) + ε(k)κ(k). (2.27)

In the above expression, ε(k) is the a priori error given by

ε(k) = d(k) − wT (k − 1)x(k),

and auxiliary vector κ(k) is defined as

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.

2.4 QRD-RLS Algorithms


The recursive least-squares algorithm presented in the previous section is good alternative to the
LMS and the NLMS algorithms, especially in applications where speed of convergence is an
asset. Indeed, the RLS algorithm exhibits a better tracking ability and performs better in non-
stationary environments. These benefits, however, come at a price in terms of computational
complexity and, more importantly, stability. The latter is due to the fact that the RLS recursion
propagates the inverse of the correlation matrix, R(k), which can easily become ill-conditioned
as a consequence of round-off errors or lack of persistent excitation in the input signal [36,
37]. To overcome that problem, the RLS algorithm is usually used in its array variants that
propagates either the square-root of the correlation matrix or its respective inverse, which is
usually obtained via the QR Decomposition. Propagating the square-root of R(k) instead of
R(k) itself has the advantage of providing a wider dynamic range for arithmetic operations,
1
[A + BCD]−1 = A−1 − A−1 B[DA−1 B + C−1 ]−1 DA−1

27
Noise Cancellation and DOA Estimation Algorithms

Table 2.1: The RLS algorithm

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)

w(k) = w(k − 1) + ε(k)κ(k)


}

thereby stabilizing the algorithm.

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

R(k) = X(k)XT (k),

is Hermitian and positive definite by definition. It can thus be factored using the Cholesky
decomposition [38] according to

R(k) = X(k)QTθ (k)Qθ (k)XT (k)


= UT (k)U(k), (2.28)

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

QTθ (k)Qθ (k) = Qθ (k)QTθ (k) = I.

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

The conventional QRD-RLS algorithm

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

R(k) = x(k)xT (k) + λR(k − 1),

can now be written as

UT (k)U(k) = x(k)xT (k) + λUT (k − 1)U(k − 1), (2.31)

which correspond to a Cholesky product whose factor is


   
0T xT (k)
= Qθ (k) 1/2 . (2.32)
U(k) λ U(k − 1)

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

e(k) = d(k) − XT (k)w(k)

29
Noise Cancellation and DOA Estimation Algorithms

by an ever increasing order orthogonal matrix Q(k) as


⎧ ⎫

⎪ ⎪


⎨    ⎪

d(k) x (k)
T
Q(k)e(k) = Q(k) 1/2 − 1/2 w(k)

⎪ λ d(k − 1) λ X(k − 1) ⎪


⎩   ⎪

d(k)
     
eq1 (k) dq1 (k) 0
= = − w(k), (2.33)
eq2 (k) dq2 (k) U(k)
  
dq (k)

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

w(k) = U−1 (k)dq2 (k). (2.34)

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

e(k) = γ(k)eq1 (k), (2.36)

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 ).

2.5 Fast QRD-RLS Algorithms


The Conventional and the Inverse QRD-RLS variants of the RLS algorithm are considered sta-
ble alternatives, but their computational complexity are still of the same order O(N 2 ) as the
RLS algorithm. In the variants of the QRD-RLS algorithm known as Fast QRD-RLS algo-
rithms, matrix operations are reduced to vector operations, thereby lowering the order of the
computational complexity from O(N 2 ) to O(N ). This section presents a short overview on

30
Adaptive Filtering

Table 2.2: The conventional QRD-RLS algorithm.

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)

Find the a posteriori error according to:


ε(k) = eq1 (k)γ(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

First: Note that matrix Qθ (k) is orthogonal and, therefore,


  
γ(k) gT (k) γ(k) f T (k)
IN = Qθ (k)QTθ (k) = QTθ (k)Qθ (k) =
f (k) E(k) g(k) ET (k)
  
γ(k) f (k)
T
γ(k) g (k)
T
= .
g(k) ET (k) f (k) E(k)
(2.38)

Using the definition of the identity matrix, it then follows from (2.38) that

γ(k)f (k) + E(k)g(k) = 0 . (2.39)

Second: Using (2.37), the equality in (2.32), can be rewritten as


    
0T γ(k) gT (k) xT (k)
= . (2.40)
U(k) f (k) E(k) λ1/2 U(k − 1)
  
Qθ (k)

Premultiplying both sides of (2.40) by their respective transposes results in

UT (k)U(k) = x(k)xT (k) + λUT (k − 1)U(k − 1) . (2.41)

Third: From (2.40) we can also write that

U(k) = f (k)xT (k) + λ1/2 E(k)U(k − 1), (2.42)

which pre-multiplied by UT (k) gives

UT (k)U(k) = UT (k)f (k)xT (k) + λ1/2 UT (k)E(k)U(k − 1) . (2.43)

Now, by comparing (2.43) with (2.41), the following relationships can be established:

E(k) = λ1/2 U−T (k)UT (k − 1), and (2.44)


−T
f (k) = U (k)x(k). (2.45)

Finally, replacing (2.45) and (2.44) in (2.39) yields



g(k) = −γ(k)U−T (k − 1)x(k)/ λ = −γ(k)a(k). (2.46)

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)

Adaptive Filter d(k)


Algorithm
+
v̂(k) = x(k) y(k) ŝ(k)
w(k) Σ

e(k)

Figure 2.4: Noise cancellation configuration of an adaptive filter.

2.6 The Adaptive Noise Cancellation Problem


Figure 2.4 depicts an adaptive filtering configuration for noise cancellation. Here the corrupted
version of the signal, s(k) + v(k), is used as reference signal and a highly correlated version
of the noise component, v̂(k), is used as input to the adaptive filter. The coefficients vector,
w(k), is adjusted in a way such that the output of the adaptive filter, y(k), tends to approximate
the noise component, v(k), as the algorithm approaches convergence. The error signal e(k) =
s(k) + v(k) − v̂(k) is then an estimate of the signal of interest, s(k), denoted as ŝ(k). In most
practical situations, however, the greatest challenge lies on the difficulty in having available a
highly enough correlated version of the noise component. Fortunately, long noise-only periods
are available in the sniper localization application and a delayed version of the noisy signal,
s(k) + v(k), can then be used to replace v̂(k), i.e.,

v̂(k) = s(k − Δt) + v(k − Δt). (2.47)

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.

3 The Spectral Subtraction Algorithm


The spectral subtraction algorithm was introduced in [42] applied to the problem of noise reduc-
tion in speech signals. Since then, the algorithm has been widely studied and numerous variants
have been proposed for many different applications, e.g., speech enhancement [43, 44, 45, 46],
automotive and biomedical engineering [47, 48], and gunshot acoustics [49, 50]. Two interest-

33
Noise Cancellation and DOA Estimation Algorithms

Spectral estimation frames

... ... time


}
}

Impulse detection sub-frames

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

xm [n] = s[n − τm (φ, θ)] + vm (n), (2.49)

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

Xm (ejω ) = S(ejω )e−jτm (φ,θ) + Vm (ejω ). (2.50)

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

X(ejω ) = S(ejω ) + V (ejω ). (2.51)

34
The Spectral Subtraction Algorithm

3.1 Amplitude Spectral Subtraction


It follows directly from (2.51) that the amplitude spectrum of the signal of interest, |S(ejω )|,
can be estimate according to

|Ŝ(ejω )| = |X(ejω )| − [V (ejω )], (2.52)

and its respective Fourier transform can be given by


" # 21 jω )
Ŝ(ejω ) = |X(ejω )|2 − [V (ejω )]2 ej∠X(e , (2.53)

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 −

X(ejω )
|X(ejω )|2
= H(e )X(ejω ),

(2.55)

where H(ejω ) is the so-called spectral subtraction filter.


" #
The term |X(ejω )|2 − α[V (ejω )]2 = |Ŝ(ejω )|2 in (2.54) can exhibit negative values at
some frequencies whenever there is little or no energy in |X(ejω )|2 , and the additive noise
component is less than the average value, V (ejω ). To overcome this problem one can use a
nonlinear rectification which consists of replacing the possible negative values in |Ŝ(ejω )| by
zero [42, 44, 46]. This approach, however, can introduce a specific type of undesirable distur-
bance known as “musical noise” that has a significant impact in the case of speech enhancement
applications. An alternative solution is to floor possible negative values according to
$
jω 2 |Ŝ(ejω )|2 |Ŝ(ejω )|2 > 0
|Ŝ(e )| = (2.56)
β[V (ejω )]2 else,

where β is a parameter that controls the spectral floor.

3.2 Power Spectral Subtraction


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

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

P̂v (w, λ) = σ P̂v (w, λ − 1) + (1 − σ)|X(w, λ)|2 , (2.57)

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

SNRi = 10 log &ei , bi ≤ k ≤ e i , (2.58)


k=bi P̂v,i (k)

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.

in equation (2.54) it then becomes


  21
Ŝi (k) = |Xi (k)|2 − δi αi P̂v (w, λ) ej∠Xi (k) . (2.59)

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

Figure 2.7: Discrete-time delay-and-sum beamformer.

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].

4.1 The 3D Delay-and-sum Beamforming for DOA Estimation

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]

x[n, p] = [x(n − τ0 ) x(n − τ1 ) ··· x(n − τM −1 )]T , (2.60)

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

a = [− sin θ cos φ − sin θ sin φ cos θ]T . (2.62)

Vector pm contains the xyz-coordinates of the m-th sensor and is given by


" #T
pm = px m py m pz m . (2.63)

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.

4.2 The Steered-response Power (SRP) Algorithm


The SRP algorithm is a broadband method that can be implemented in both time- and frequency-
domains [58]. In [59] a 2-dimensional version of this algorithm is discussed in a general frame-
work, including aspects like non-uniform weighting. This section addresses the DOA estimation
problem for a 3-dimensional scenario, applied to the sniper localization problem, in particular,
and using the same array prototype that have been used for data acquisition in this project.
For the time being, let us assume an array with an arbitrary number of sensors, M . The
average received power, taken over a window of length L and steered to the direction (φ, θ), is
given by

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

PL (φ, θ) = wT E{xφ,θ [n]xTφ,θ [n]}w = wT R̂φ,θ w. (2.67)

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

xφ,θ [n] = [ x0 [n + Δ0 (φ, θ)] x1 [n + Δ1 (φ, θ)] · · · xM −1 [n + ΔM −1 (φ, θ)] ]T . (2.69)

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

Muzzle blast DOA

(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

Θ̂(φ, θ) = arg max 1T R̂φ,θ 1, (2.71)


(φ,θ)

or equivalently,
( ) *+
Θ̂(φ, θ) = arg max T
tr E[yφ,θ yφ,θ ]{L×L} , (2.72)
(φ,θ)

where tr (·) denotes the trace of a matrix, and E[yφ,θ yφ,θ


T
] is an estimate of the correlation matrix

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.

Sniper rifle accessories

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.

On noise cancellation techniques

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.

2.1 Book Chapter


Multichannel Fast QRD-RLS Algorithms
António L. L. Ramos and Stefan Werner
In QRD-RLS Adaptive Filtering,
Springer, March 2009.

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

As discussed in Chapter 2, the QR Decomposition Recursive Least-Squares (QRD-RLS)


algorithm makes use of stable unitary Givens rotations in order to stabilize the plain recur-
sive least-squares (RLS) algorithm, but the order of the computational complexity remains the
same, i.e., O(P 2 ), with P being the number of coefficients. In the Fast QRD-RLS algorithms,
originally developed for single-input single-output applications, matrix operations are reduced
to vector operations, thereby reducing the computational complexity from O(P 2 ) to O(P ).
MC-FQRD-RLS algorithms are regarded as natural extensions of the basic single-channel Fast
QRD-RLS algorithms, which is achieved by exploiting the time-shift structure in each of the M
channels. The resulting computational complexity is of order O(M P ) or O(M 2 P ), depending
on how channels are processed.
The derivation of the algorithms presented in this book chapter is carried out in a general
and unified framework in which channels are allowed to have arbitrary orders, widening the ap-
plication possibilities. Two distinct approaches are considered: (1) sequential approach, where
channels are processed individually and in a sequential manner, and (2) block approach, where
all channels are processed simultaneously. While the sequential multichannel Fast QRD-RLS
algorithms are of lower computational complexity, the block-type algorithms are more favor-
able for parallel processing implementations. The application of these algorithms is illustrated
in a particular example of a Volterra systems which can be regarded as a multichannel problem
with channels of different orders.

2.2 Papers

Paper I

Delay-and-sum Beamforming for Direction of Arrival Estimation Applied to Gunshot


Acoustics
António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei
Proc. SPIE 8019, April 2011.

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

A Spectral Subtraction Based Algorithm for Real-time Noise Cancellation with


Application to Gunshot Acoustics
António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei
International Journal of Electronics and Telecommunications, April 2013.

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

A Multi-band Spectral Subtraction Based Algorithm for Real-time Noise Cancellation


Applied to Gunshot Acoustics
António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei
Proc. SPIE 8711, April 2013.

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

Noise Cancellation Techniques Applied to Gunshot Acoustics


António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei
Submitted.

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.

• Direction-of-arrival (DOA): the use of beamforming, as discussed in Paper I, provides


means to effectively discard signals from improbable DOA, e.g., ground reflections. The
received signals can eventually overlap causing deformations it their shapes, but they can
still be recognized and discriminated using a combination of beamforming and frequency
domain analysis.

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

• Exploit the idea of hybrid systems by combining different technologies.

• 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.

[4] M. Kastek, R. Dulski, P. Trzaskawka, T. Sosnowski, and H. Madura, “Concept of infrared


sensor module for sniper detection system,” in Infrared Millimeter and Terahertz Waves
(IRMMW-THz), 2010 35th International Conference on, 2010, pp. 1–2.

[5] J. Sallai, W. Hedgecock, P. Volgyesi, A. Nadas, G. Balogh, and A. Ledeczi, “Weapon


classification and shooter localization using distributed multichannel acoustic sensors,”
Journal of Systems Architecture, vol. 57, no. 10, pp. 869–885, November 2011.

[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.

[7] Boomerang Shooter Detection System, “Raytheon, BBN Technologies,” http://www.bbn.


com, accessed October 15, 2013.

[8] REDOWL, “iRobot,” http://www.irobot.com, accessed October 15, 2013.

[9] WeaponWatch, “Radiance technologies,” http://www.radiancetech.com, accessed October


15, 2013.

[10] ShotSpotter, “SST, Inc,” http://www.shotspotter.com, accessed December 30, 2013.

[11] 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.

[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.

[13] B. M. Brustad and J. C. Freytag, “A survey of audio forensic gunshot investigations,” in


Audio Engineering Society 26th International Conference: Audio Forensics in the Digital
Age, July 2005.

[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.

[17] PILARw, “01dB-Metravib, Gunshot Detection Systems,”


http://www.militarysystems-tech.com/suppliers/01db-metravib, accessed October 15,
2013.

[18] R. C. Maher, “Acoustical characterization of gunshots,” in SAFE ’07: IEEE Workshop on


Signal Processing Applications for Public Security and Forensics, April 2007, pp. 109–
113.

[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.

[21] 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.

[22] A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei, “The multipath propagation


effect in gunshot acoustics and its impact on the design of sniper positioning systems,”
in Proc. SPIE, Sensors, and Command, Control, Communications, and Intelligence (C3I)
Technologies for Homeland Security and Homeland Defense XII, vol. 8711, June 2013, p.
87110A.

[23] R. C. Maher and S. R. Shaw, “Deciphering gunshot recordings,” in Audio Engineering


Society 33rd International Conference: Audio Forensics - Theory and Practice, June 2008.

[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.

[25] A. N. Semenov, M. K. Berezkina, and I. V. Krassovskaya, “Classification of pseudo-steady


shock wave reflection types,” Shock Waves, vol. 22, pp. 307–316, July 2012.

[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.

[35] Z. Rosenberg and E. Dekel, Terminal Ballistics. Springer, March 2012.

[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.

[39] J. G. McWhirter, “Recursive least-squares minimization using a systolic array,” in Proc.


SPIE 0431, Real-Time Signal Processing VI, K. Bromley, Ed., November 1983, pp. 105–
112.

[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.

[43] M. Berouti, R. Schwartz, and J. Makhoul, “Enhancement of speech corrupted by acous-


tic noise,” in Acoustics, Speech, and Signal Processing, Proceedings of the 1979 IEEE
International Conference on, vol. 4, 1979, pp. 208–211.

[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

[45] M. Mizumachi and M. Akagi, “Noise reduction by paired-microphones using spectral


subtraction,” in Acoustics, Speech and Signal Processing. Proceedings of the 1998 IEEE
International Conference on, vol. 2, May 1998, pp. 1001–1004 vol.2.

[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.

[49] A. L. L. Ramos, S. Holm, S. Gudvangen, and R. Otterlei, “A spectral subtraction based


algorithm for real-time noise cancellation with application to gunshot acoustics,” Inter-
national Journal of Electronics and Telecommunications, vol. 59, no. 1, pp. 93–98, April
2013.

[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.

[58] J. H. DiBiase, H. F. Silverman, and M. S. Brandstein, “Robust localization in rever-


berant rooms,” in Microphone Arrays: Signal Processing Techniques and Applications,
M. Brandstein and D. Ward, Eds. Berlin, Germany: Springer-Verlag, 2001, pp. 157–180.

[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.

[60] A. L. L. Ramos and S. Werner, “QRD-RLS Adaptive Filtering,” in QRD-RLS Adaptive


Filtering, 1st ed., J. A. Apolinário Jr., Ed. New York: Springer, March 2009, ch. Multi-
channel Fast QRD-RLS Algorithms, pp. 147–180.

[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

Multichannel Fast QRD-RLS Algorithms

António L. L. Ramos and Stefan Werner

In QRD-RLS Adaptive Filtering,


Springer, March 2009.

61
Multichannel Fast QRD-RLS Algorithms

António L. L. Ramos and Stefan Werner

Abstract: When considering multichannel adaptive implementations, it is often possible to


directly apply standard single-channel algorithms to the multichannel problem, e.g., the numer-
ically stable and fast converging QR decomposition RLS algorithm (QRD-RLS). Even though
such a solution would provide fast convergence, it may be computationally too complex due
to a large number of coefficients. In order to obtain a computationally efficient solution, RLS-
type algorithms specially tailored for the multichannel setup are a good option. This chapter
introduces various Multichannel Fast QRD-RLS (MC-FQRD-RLS) algorithms that can be seen
as extensions of the basic single-channel FQRD-RLS algorithms to the case of a multichannel
input vector, where it can be assumed that each channel has a time-shift structure. We provide,
in a general framework, a comprehensive and up-to-date discussion of the MC-FQRD-RLS al-
gorithms, addressing issues such as derivation, implementation, and comparison in terms of
computational complexity.

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

Stefan Werner was with the


Helsinki University of Technology, Helsinki – Finland
and is now with the
Aalto University School of Electrical Engineering, Aalto – Finland
e-mail: stefan.werner@aalto.fi

In QRD-RLS Adaptive Filtering, J.A. Apolinário Jr. (ed.)


ISBN: 978-0-387-09733-6 e-ISBN: 978-0-387-09734-3
DOI 10.1007/978-0-387-09734-3_6, © Springer Science+Business Media, LLC 2009
Book Chapter: Multichannel Fast QRD-RLS Algorithms

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.

Table 1: Classification of the MCFQRD-RLS algorithms.

Error Approach Structure References Algorithm


Type and Order
Equal Lattice [4] 1
BLOCK-CHANNEL Order Transversal [4]-[6] 2
Multiple Lattice — 3
MCFQR Order Transversal [7, 8] 4
POS_B Equal Lattice Implicit in 7 [9] 5
SEQUENTIAL-CHANNEL Order Transversal Suggested in [5] 6
Multiple Lattice [9] 7
Order Transversal [10, 8] 8
Equal Lattice [11] 9
BLOCK-CHANNEL Order Transversal [4, 6, 11] 10
Multiple Lattice — 11
MCFQR Order Transversal [7] 12
PRI_B Equal Lattice Implicit in 15 [11] 13
SEQUENTIAL-CHANNEL Order Transversal Implicit in 16 [11] 14
Multiple Lattice [11] 15
Order Transversal [11] 16

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

with desirable low-complexity feature of single-channel FQRD-RLS algorithms that rely on


scalar operations only. Nevertheless, many good solutions to these problems exist and are
addressed in the following text.
The reminder of this chapter is organized as follows. In Section 2 we introduce the standard
MC-FQRD-RLS problem formulation along with a new definition of the input vector that allows
for a more general setup where the various channels may have different orders. The sequential-
and block-type algorithms are discussed in Sections 3 and 4, respectively, while order-recursive
implementations are addressed in Section 5. An application example and computational com-
plexity issues are presented in Sections 6.1 and 6.2, respectively. Finally, closing remarks are
given in Section 7.

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

where e(k) is the weighted error vector defined as


⎡ ⎤ ⎡ ⎤
d(k) xTP (k)
⎢ λ1/2 d(k − 1) ⎥ ⎢ 1/2 T
λ xP (k − 1) ⎥
⎢ ⎥ ⎢ ⎥
e(k) = ⎢ .. ⎥−⎢ .. ⎥ wP (k)
⎣ . ⎦ ⎣ . ⎦
λk/2 d(0) λk/2 xTP (0)
= d(k) − XP (k)wP (k), (2)

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)

Figure 1: Multichannel adaptive filter: case of equal order.

     
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.

Redefining the input vector


Let us define N1 , N2 , · · · , NM as the number of taps in each of the M channels tapped delay–
&M
lines. Thus, the total number of taps in the input vector is P = r=1 Nr . Without loss of
generality, we will assume N1 ≥ N2 ≥ · · · ≥ NM .
Figure 2 shows an example of a multichannel scenario with M = 3 channels of unequal
orders where N1 = 4, N2 = 3, N3 = 2, i.e., P = 4 + 3 + 2 = 9. The following approach
to construct the input vector, xP (k), was considered in [11] : the first N1 − N2 samples from

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.

2.1 Input vector for sequential-type multichannel algorithms

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)

Figure 2: Example of input vector defined as in [11].

constitute the input vector of the next iteration, i.e.,

xTP +M (k + 1) = [xTP (k + 1) x1 (k − N1 + 1) ··· xM (k − NM + 1)].

2.2 Input vector for block-type multichannel algorithms


For the case of block-channel multichannel algorithms, the expanded input vector, xP +M (k+1),
is given by
" #
xTP +M (k + 1) = x1 (k + 1) x2 (k + 1) ··· xM (k + 1) xTP (k) P
" #
= xTk+1 xTP (k) P, (10)

where P = PM PM −1 · · · P1 is a product of M permutation matrices that moves the most


recent sample of the ith channel (for i = 1, 2, · · · , M ) to position pi (given by Eq. (9)) in vector
xP +M (k + 1).
After the above process is terminated, we have xTP +M (k + 1) = [xTP (k + 1) x1 (k − N1 +
1) · · · xM (k−NM +1)], such that the first P elements of xTP +M (k+1) provide the input vector
for the next iteration. In order to illustrate the role of the permutation matrix P, let us return to
the example depicted in Figure 2. In this example, the expanded input vector xP +M (k + 1) is
obtained by inserting the new samples in positions p1 = 1, p2 = 3, and p3 = 6, respectively,

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)

3 Sequential-type Multichannel Fast QRD-RLS Algorithms

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).

3.1 Triangularization of the information matrix

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)

XP +1 (k) can be defined as


⎡ ⎤
x1 (k)
⎢ 1/2
λ x1 (k − 1) XP (k − 1) ⎥  
⎢ ⎥ (1) XP (k − 1)
XP +1 (k) = ⎢ .. ⎥ = df (k) , (13)
⎣ . ⎦ 0T
λk/2 x1 (0) 0T

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

To complete the triangularization process of XP +1 (k) leading to UP +1 (k), we premultiply


(14) by two other Givens rotation matrices as follows
⎡ (1) ⎤
  ef q1 (k) 0
0 (1) ⎢ ⎥
= Qf (k)Qf (1) (k) ⎣ d(1) f q2 (k) UP (k − 1) ⎦
UP +1 (k)
λk/2 x1 (0) 0T
⎡ ⎤
0 0
(1) ⎢ (1) ⎥
= Qf (k) ⎣ df q2 (k) UP (k − 1) ⎦ . (15)
(1)
ef P (k) 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)

Following steps (i > 1)

The input information matrix XP +i (k) is related to XP +i−1 (k) according to


⎡ ⎤
xi (k)
⎢ λ1/2 xi (k − 1) ⎥
⎢ ⎥
XP +i (k) = ⎢ .. XP +i−1 (k) ⎥ Pi . (21)
⎣ . ⎦
λk/2 xi (0)

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.

The procedure above can be written in a more compact form as



(i)
 (i) df q2 (k) UP +i−1 (k)
UP +i (k) = Pi Qθf (k) (i) Pi . (23)
efP +i−1 (k) 0T

From (23), the following relation can be derived

[UP +i (k + 1)]−1 = PTi


⎡ 1

0T (i)
(k+1)
⎢ ef
P +i−1 ⎥  T (i)
× ⎣ −1 U−1
(i)
P +i−1 (k+1)df q2 (k+1)
⎦ × Q θf (k + 1)Pi .
T
(24)
UP +i−1 (k + 1) − (i)
ef (k+1)
P +i−1

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

3.2 A PRIORI and A POSTERIORI versions


The a priori and the a posteriori versions of the sequential-channel algorithm are based on
updating expanded vectors aP +i (k + 1) or fP +i (k + 1) given by

 
−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)

For the a priori case, the equivalent relations are


 
(i)
1/γP +i (k + 1) (i) 1
= QθP +i (k + 1) , for i ≥ 1. (37)
0 aP +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

Table 2: Algorithm number 8 of Table 1 [10].


The multiple order sequential-type MC-FQRD_POS_B
Initializations:
(i) (M ) (0)
df q2 = zeros(P, 1); fj (0) = 0; dq2 = 0; γP (0) = 1;
(i)
efP (0) = μ; i = 1, 2, · · · , M, all cosines = 1, and all sines = 0.
for k = 1, 2, · · ·
(1) (0)
{ γ0 = 1; eq1 (k + 1) = d(k + 1);
for i = 1 : M,
(i)
{ ef q10 (k + 1) = xi (k + 1);
(i) (i)
for j = 1 : P, % Obtaining
 ef q1(k + 1) and df q2 (k + 1):  
(i) (i−1) (i) (i−1) (i)
{ef q1j (k + 1) = cos θj (k) ef q1j−1 (k + 1) + λ1/2 sin θj (k) df q2P −j+1 (k);
   
(i) 1/2 (i−1) (i) ∗ (i−1) (i)
df q2P −j+1 (k + 1) = λ cos θj (k) df q2P −j+1 (k) − sin θj (k) ef q1j−1 (k + 1);
}  2
(i) (i) (i)
efP (k + 1) = λ1/2 efP (k) + ef q1P (k + 1)2 ;
(i)
, % Obtaining Qθf
for j = P : −1 : pi, (k + 1):
(i) (i) (i)
{efj−1 (k + 1) = efj (k + 1)2 + df q2P −j+1 (k + 1)2 ;
(i) (i) (i)
cos θf j (k + 1) = efj (k + 1)/efj−1 (k + 1);
 ∗
(i) (i) (i) (i)
sin θf j (k + 1) = cos θf j (k + 1) df q2P −j+1 (k + 1)/efj (k + 1) ;
}  ∗
(i) (i−1) (i) (i)
pP (k + 1) = γP (k) ef q1P (k + 1) /efP (k + 1);
for j = P : −1 : pi , % Obtaining f (i) (k + 1):  ∗
(i) (i) (i−1) (i) (i)
{fP −j+1 (k + 1) = cos θf j (k + 1)fP −j+2 (k + 1) − sin θf j (k + 1) pj (k + 1);
(i) (i) (i−1) (i) (i)
pj−1 (k + 1) = sin θf j (k + 1)fP −j+2 (k + 1) + cos θf j (k + 1)pj (k + 1);
}
(i) (i)
fP +1−pi +1 (k + 1) = ppi −1 (k + 1);
(i)
for j = pi : P, % Obtaining Qθ (k): ∗
(i) (i) (i)
{sin θj (k) = − fP −j+2 (k + 1) /γj−1 (k);
,
(i) (i)
cos θj (k) = 1 −  sin θj (k)2 ;
(i) (i) (i)
γj (k) = cos θj (k)γj−1 (k);
}
} for i
for j = 1 : P, % Joint process estimation:
(j) (0) (j−1) (0) (P −j+1)
{eq1 (k + 1) = cos θj (k + 1)eq1 (k + 1) + λ1/2 sin θj (k + 1)dq2 (k);
 ∗
(P −j+1) 1/2 (0) (P −j+1) (0) (j−1)
dq2 (k + 1) = λ cos θj (k + 1)dq2 (k) − sin θj (k + 1) eq1 (k + 1);
}   ∗
(P ) (0)
e(k + 1) = eq1 (k + 1) /γP (k); } for k
(M ) (0) (M ) (0)
Obs.: θj (k) = θj (k
+ 1) and fP −j+2 (k) = fP −j+2 (k + 1).
The asterisk (∗) denotes complex conjugation.

Tab. 2 and Tab. 3, respectively.

3.3 Alternative implementations


As observed before, when all channels are of equal order, matrix Pi in (23) degenerates to
identity and, after carrying out the multiplication by Qθf (i) (k) on the right side of that equation,

75
Book Chapter: Multichannel Fast QRD-RLS Algorithms

Table 3: Algorithm number 16 of Table 1 [11].


The multiple order sequential-type MC-FQRD_PRI_B
Initializations:
(i) (M ) (0)
df q2 = zeros(P, 1); aj (0) = 0; dq2 = 0; γP (0) = 1;
(i)
efP (0) = μ; i = 1, 2, · · · , M, all cosines = 1, and all sines = 0.
for k = 1, 2, · · ·
(1) (0)
{ γ0 = 1; eq1 (k + 1) = d(k + 1);
for i = 1 : M,
(i)
{ ef q10 (k + 1) = xi (k + 1);
(i) (i)
for j = 1 : P, % Obtaining
 ef q1(k + 1) and df q2 (k + 1):  
(i) (i−1) (i) (i−1) (i)
{ef q1j (k + 1) = cos θj (k) ef q1j−1 (k + 1) + λ1/2 sin θj (k) df q2P −j+1 (k);
   
(i) 1/2 (i−1) (i) ∗ (i−1) (i)
df q2P −j+1 (k + 1) = λ cos θj (k) df q2P −j+1 (k) − sin θj (k) ef q1j−1 (k + 1);
}  
(i) (i) (i−1) (i)
rP (k + 1) = λ−1/2 [ef q1j (k + 1)]∗ / γP (k)efP (k) ;
for j = P : −1 : pi , % Obtaining a(i) (k + 1):  ∗
(i) (i) (i−1) (i) (i)
{aP −j+1 (k + 1) = cos θf j (k)aP −j+2 (k + 1) − sin θf j (k) rj (k + 1);
(i) (i) (i−1) (i) (i)
rj−1 (k + 1) = sin θf j (k)aP −j+2 (k + 1) + cos θf j (k)rj (k + 1);
}
(i) (i)
aP +1−pi +1 (k + 1) = rpi −1 (k + 1);
 2
(i) (i) (i)
efP (k + 1) = λ1/2 efP (k) + ef q1P (k + 1)2 ;
(i)
, % Obtaining Qθf
for j = P : −1 : pi, (k + 1):
(i) (i) (i)
{efj−1 (k + 1) = efj (k + 1)2 + df q2P −j+1 (k + 1)2 ;
 (i) (i) (i)
cos θf j (k + 1) = efj (k + 1)/efj−1 (k + 1);
 ∗
(i) (i) (i) (i)
sin θf j (k + 1) = cos θf j (k + 1) df q2P −j+1 (k + 1)/efj (k + 1) ;
}
(i)
for j = pi : P,,
% Obtaining Qθ (k):
(i) (i) (i)
{γj (k) = 1/ (1/γj−1 (k))2 + (aP −j+2 (k + 1))2
(i) (i) (i)
cos θj (k) = γj (k)/γj−1 (k);
 ∗
(i) (i) (i) (i)
sin θj (k) = aP −j+2 (k + 1) cos θj (k)/γj−1 (k) ;
}
} for i
for j = 1 : P, % Joint process estimation:
(j) (0) (j−1) (0) (P −j+1)
{eq1 (k + 1) = cos θj (k + 1)eq1 (k + 1) + λ1/2 sin θj (k + 1)dq2 (k);
 ∗
(P −j+1) 1/2 (0) (P −j+1) (0) (j−1)
dq2 (k + 1) = λ cos θj (k + 1)dq2 (k) − sin θj (k + 1) eq1 (k + 1);
}   ∗
(P ) (0)
e(k + 1) = eq1 (k + 1) /γP (k + 1);
} for k
(M ) (0) (M ) (0)
Obs.: θj (k) = θj (k + 1) and aP −j+2 (k) = aP −j+2 (k + 1).
The asterisk (∗) denotes complex conjugation.

UP +i (k) can be partitioned as follows.



0 B
UP +i (k + 1) = (i) , for i = 1, 2, · · · , M. (39)
ef 0 (k + 1) C

76
Block-type Multichannel Fast QRD-RLS Algorithms

Taking the inverse of (39) yields


 −1  −1
(i) (i)
−1 − ef 0 (k + 1) CB−1 ef 0 (k + 1)
[UP +i (k + 1)] = . (40)
B−1 0

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.

4 Block-type Multichannel Fast QRD-RLS Algorithms


This section discusses a general framework for block-type multichannel algorithms using the
extended input signal vector xP +M (k + 1) defined in Section 2.2. These algorithms, despite
exhibiting a higher computational burden as compared to the sequential-type ones, have some
attractive features, e.g., suitability for parallel implementation.
To begin with, in Section 4.1 we shall revisit the backward and forward prediction problems
applied to a block-multichannel scenario from where some fundamental equations are derived.
The a priori and the a posteriori versions are discussed in Section 4.2 followed by a brief
overview of some alternative implementations in Section 4.3.

4.1 The backward and forward prediction problems


Using the definition of the input vector for the multiple order channels case as given by (10),
define the input data matrix XP +M (k + 1) as follows.
⎡ ⎤
xTP +M (k + 1)
⎢ λ1/2 xT (k) ⎥
⎢ P +M ⎥
XP +M (k + 1) = ⎢ .. ⎥ (43)
⎣ . ⎦
λ(k+1)/2 xTP +M (0)

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)

where Q(k) contains QP (k + 1) as a submatrix which triangulates XP (k + 1), generating


UP (k +1). Matrix Qb (k +1) is responsible for generating the lower triangular matrix Eb (k +1)
from Ebq1 (k + 1).
By removing the ever-increasing null section in (46), UP +M (k + 1) can be finally written
as follows.
 
0 Eb (k + 1)
UP +M (k + 1) = (47)
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

Now, define forward prediction error matrix Ef (k + 1) as


   
XP (k) XP (k)
Ef (k + 1) = Df (k + 1) − Wf (k + 1) = Df (k + 1)
0 0T
   
I I
× = XP +M (k + 1) , (49)
Wf (k + 1) Wf (k + 1)

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

incorporating permutation matrix P is defined as follows.2


⎡ ⎤
xTP +M (k + 1)
⎡ ⎤
⎢ λ1/2 xTP +M (k) ⎥ XP (k)
⎢ ⎥
⎢ .. ⎥ ⎢ Df (k + 1) ⎥
X̄P +M (k + 1) = ⎢ . ⎥=⎣ 0T ⎦P (50)
⎢ ⎥
⎣ λ(k+1)/2 xTP +M (0) ⎦ 0(M −1)×(P +M )
0(M −1)×(P +M )

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.

Qf (k + 1)Qf (k + 1)Q(k)X̄P +M (k + 1) = Qf (k + 1)Qf (k + 1)


⎡ ⎤
Ef q1 (k + 1) 0 ⎡ ⎤
⎢ ⎥ 0 0
⎢ Df q2 (k + 1) UP (k) ⎥
×⎢ ⎥ P = Qf (k + 1) ⎣ Df q2 (k + 1) UP (k) ⎦ P (51)
⎣ λ(k+1)/2 xT0 0T ⎦
Ef (k + 1) 0
0(M −1)×(P +M )

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).

Remark 3. Let Efx (k + 1) = [Ef (k + 1)]T Ef (k + 1) be the forward prediction error


covariance matrix, where Ef (k + 1) is the forward prediction error matrix defined in (49).
Using ŪP +M (k+1) as defined in (52) instead of X̄P +M (k+1), it is straightforward to show
that Efx (k + 1) = ETf (k + 1)Ef (k + 1). Thus, M × M lower-triangular matrix Ef (k + 1)
in (52) and (54) can be interpreted as the Cholesky factor of the forward prediction error
covariance matrix.

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

where permutation matrix P = P1 P2 · · · PM .

80
Block-type Multichannel Fast QRD-RLS Algorithms

From (55), it is possible to obtain

[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.

4.2 A PRIORI and A POSTERIORI versions


If matrix UP +M (k) is used to denote the Cholesky factor of XTP +M (k)XP +M (k), we can define
the a priori and a posteriori backward error vectors, aP +M (k + 1) and fP +M (k + 1), as follows

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)

Vectors aP (k + 1) and fP (k + 1) are contained within matrix Qθ (k + 1) [11, 5].


From (10), (56), and (58), we can write
 
aP (k)
aP +M (k + 1) = Pλ−1/2 Qθf (k) , (60)
r(k + 1)

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

tion in (61) can be avoided using the solution in [11], i.e.,


   
∗ 1/γ(k)
= Qf (k + 1) . (63)
0 −r(k + 1)

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)

Proof. From (54), it is clear that Ef (k + 1) is the Cholesky factor of

[ẽf q1 λ1/2 ETf (k)][ẽf q1 λ1/2 ETf (k)]T . (71)

Hence, (54) can be written in a product form as follows [14].

ETf (k + 1)Ef (k + 1) = ẽf q1 (k + 1)ẽTf q1 (k + 1) + λETf (k)Ef (k) (72)

Premultiply and postmultiply (72) by E−T 2 −1


f (k + 1)γ (k) and Ef (k + 1), respectively. After
some algebraic manipulations, we have

γ 2 (k)I = p(k + 1)pT (k + 1) + Ψ (73)

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)

where Q is an orthogonal matrix.


If we recall our starting point in (54), we can see that Q is related to Qf (k + 1). Moreover,
T
from the knowledge of the internal structure of Qf (k +1), we can conclude that Q = Qf (k +1)
satisfies (75) leading to (70). Vector p(k + 1) can be easily obtained from (70) because γ(k)
and Qf (k + 1) are known quantities. This concludes the proof. The reader can use similar
arguments in order to prove (63).

The rotation angles in matrix Qθ (k) are obtained using


   
1 γ(k + 1)
Qθ (k + 1) = , (76)
0 fP (k + 1)

for the a posteriori case, and


   
1/γ(k + 1) 1
= Qθ (k + 1) , (77)
0 −aP (k + 1)

for the a priori case.

83
Book Chapter: Multichannel Fast QRD-RLS Algorithms

Table 4: Equations of the a posteriori block-MCFQRD based on the update


of backward prediction errors [6, 5, 7].
MCFQRD_POS_B

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)

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)
}

Finally, the joint process estimation is performed as


   
eq1 (k + 1) d(k + 1)
= Qθ (k + 1) , (78)
dq2 (k + 1) λ1/2 dq2 (k)

and the a priori error is given by [5, 11]

e(k + 1) = eq1 (k + 1)/γ(k + 1). (79)

The a posteriori and a priori block-MC-FQRD-RLS algorithms are summarized in Tables 4


and 5, respectively. In these tables, the common equations are in gray in order to highlight the
difference between both algorithms.

4.3 Alternative implementations


Similarly to their sequential-channel processing counterparts, alternative implementations for
the block-channel algorithms are available when the M channels are of equal order, i.e., Ni = N

84
Block-type Multichannel Fast QRD-RLS Algorithms

Table 5: Equations of the a priori block-MCFQRD based on the update of


backward prediction errors [6, 11, 7].
MCFQRD_PRI_B

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)
}

and P = M N . In this particular case, the last M elements of vectors aP +M (k + 1) and


fP +M (k + 1) are known prior to their updating through Equations (58) and (59), respectively
[6].

Assuming P = P = I, after the multiplication by Qθf (k + 1) is carried out in (55), matrix


UP +M (k + 1) can be partitioned as
 
0 B
UP +M (k + 1) = (80)
E0f (k + 1) C

and by taking its inverse, yields


" #−1 " #−1
−1 − E0f (k + 1) CB−1 E0f (k + 1)
[UP +M (k + 1)] = −1
. (81)
B 0

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

can be written, respectively, as




aP +M (k + 1) = " #−T , and (82)
λ−1/2 E0f (k) xk+1


fP +M (k + 1) = " 0 #−T . (83)
Ef (k + 1) xk+1

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.

5 Order-recursive Multichannel Fast QRD-RLS Algorithms


Block multichannel algorithms are more suitable for order-recursive implementations and paral-
lel processing as compared to their sequential channel counterparts. Therefore, only the formers
shall be addressed in this section. Sequential channel processing algorithms can also be imple-
mented order-recursively up to a certain degree [9, 11], however, adding order-recursiveness to
the already existing channel recursive nature, leads to more complicated structures.
For sake of simplicity, the special case of all M channels having equal orders, i.e., Ni = N ,
is considred. We shall start by revisiting the definitions of Cholesky factor of the information
matrix, UP +M (k + 1), given by Equations (47) and (55), obtained from solving the backward
and the forward prediction problems, respectively, and reproduced below assuming channels of
equal orders.
 
0 ENb (k + 1)
UP +M (k + 1) = UN +1 (k + 1) = (84)
UN (k + 1) DN bq2 (k + 1)
 N 
 Df q2 (k + 1) UN (k)
= Qθf (k + 1) (85)
ENf (k + 1) 0

The superscript N added to variables Eb (k + 1), Dbq2 , Df q2 (k + 1), and Ef (k + 1) emphasizes


that these quantities are related to the N th-order prediction problem. 5 The last two equations
can be written in a generalized form as

(j)
0 Eb (k + 1)
Uj+1 (k + 1) = (j) (86)
Uj (k + 1) Dbq2 (k + 1)

(j)
(j) Df q2 (k + 1) Uj (k)
= Qθf (k + 1) (j) , (87)
Ef (k + 1) 0

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

equations (65) and (69) from Section 4.2, respectively, as


(j) −T (j)
a(j) (k + 1) = λ−1/2 [Eb (k)] eb (k + 1) (88)

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)

where pj (k + 1) is the jth order normalized a posteriori forward error vector.


Equation (93) implements the order-recursive counterpart of step 5 (Table 4) of the a pos-
teriori version of the MC-FQRD-RLS algorithm whereas (92) stands for corresponding order-
recursive implementation of step 4 (Table 5) of the a priori version.
Now we shall see how to compute the set of Given rotations in Qθf (j) (k + 1). Specifically,
we shall find a way to carry out steps 4 and 5 of algorithms in Tables 4 and 5, respectively, in an
order-recursive manner. We begin with noting that previous arguments support the partitioning
of matrix Df q2 (k + 1) into N M × M -blocks as follows.

87
Book Chapter: Multichannel Fast QRD-RLS Algorithms

⎡(1) ⎤
Df q2 (k + 1)
⎢ .. ⎥
Df q2 (k + 1) = ⎣ . ⎦ (94)
(N )
Df q2 (k + 1)

Now, recalling (87), we realize that (57) can be rewritten as


⎡ ⎤
⎡ ⎤ 0M (j−1)×M
0M (N −j+1)×M ⎢ D(j) (k + 1) ⎥
⎢ ⎥  (j) ⎢ ⎥
⎣ 0M (j−1)×M ⎦ = Qθf (k + 1) ⎢ f q2 ⎥ (95)
(j−1) ⎣ 0M (N −j)×M ⎦
Ef (k + 1) (j)
Ef (k + 1)

for j = 1, 2, · · · , N . Moreover, the inherent order-recursiveness of previous equation leads us


to conclude that matrix Qθf (k + 1) in (57) can be regarded as a product of the form
(N ) (N −1) (1)
Qθf (k + 1) = Qθf (k + 1)Qθf (k + 1) · · · Qθf (k + 1) (96)

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 priori algorithm, and


   
(j) γj−1 (k + 1) γj (k + 1)
Qθ (k + 1) = (98)
0 f (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.

6 Application Example and Computational Complexity


Issues
In this section the effectiveness of the algorithms addressed in this work is illustrated in a non-
linear filtering problem. In addition, we provide a brief discussion on computational complexity
issues.

88
Application Example and Computational Complexity Issues

Table 6: Algorithm number 1 of Table 1 [4].


Lattice block-MCFQRD_POS_B
Initializations:
fP (0) = 0; Df q2 (0) = 0; γ0 (0) = 1; dq2 (0) = 0; Ejf (0) = μI,
μ = small number, all cosines = 1, and all sines = 0;
For each k, do
(0) T
{ - ef q1 (k + 1) = xTk+1 ;
(0)
Obtaining Ef (k + 1) and p0 (k + 1):

0T ∗ (0) T
(0) -
ef q1 (k + 1) γ0 (k)
(0) = Qf (k + 1) ;
Ef (k + 1) p0 (k + 1) (0)
λ1/2 Ef (k) 0
f (N +1) (k + 1) = p0 (k + 1); γ0 (k + 1) = 1;
eq1 (k + 1) = d(k + 1);
for j = 1 : N
(j) (j)
{ 1. Obtaining Df q2 (k + 1) and ef q1 (k + 1):
T
(j) (j−1) T
-
ef q1 (k + 1) (j) -
ef q1 (k + 1)
(j)
= Qθ (k) (j)
;
Df q2 (k + 1) λ1/2 Df q2 (k)
(j)
2. Obtaining Ef (k + 1) and pj (k + 1):

(j) T
0 T
∗ (j) -
ef q1 (k + 1) γj (k)
(j) = Qf (k + 1) ;
Ef (k + 1) pj (k + 1) (j)
λ1/2 Ef (k) 0
(j)
3. Obtaining Qθf (k + 1): ⎡ ⎤
⎡ ⎤ 0M (j−1)×M
0M (N −j+1)×M ⎢ D(j) (k + 1) ⎥
⎣ 0M (j−1)×M ⎦ = Qθf (j) (k + 1) ⎢ ⎢ f q2

⎥;
(j−1) ⎣ 0M (N −j)×M ⎦
Ef (k + 1) (j)
Ef (k + 1)
(j)
⎡ Obtaining f ⎤
4. (k + 1): ⎡ ⎤
0M (N −j) 0M (N −j)
⎢ f (j) (k + 1) ⎥ ⎢ f (j−1) (k) ⎥
⎢ ⎥  (j) ⎢ ⎥
⎣ 0M (j−1) ⎦ = Qθf (k + 1) ⎣ 0M (j−1) ⎦ ;
pj−1 (k + 1) pj (k + 1)
(j)
5. Obtaining Qθ (k + 1) andγj (k  + 1): 
(j) γj−1 (k + 1) γj (k + 1)
Qθ (k + 1) = (j−1) ;
0 f (k + 1)
6.
Joint Estimation:

(j) (j−1)
eq1 (k + 1) (j) eq1 (k + 1)
(j) = Qθ (k + 1) (j) ;
dq2 (k + 1) λ1/2 dq2 (k)
7. Obtaining the a priori error:
(j)
ej (k + 1) = eq1 (k + 1)/γj (k + 1);
} % for j
} % for k

6.1 Application example

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

Table 7: Algorithm number 9 of Table 1 [11].


Lattice block-MCFQR_PRI_B
Initializations:
aP (0) = 0; Df q2 (0) = 0; γ0 (0) = 1; dq2 (0) = 0; Ejf (0) = μI,
μ = small number, all cosines = 1, and all sines = 0;
For each k, do
(0) T
{ -
ef q1 (k + 1) = xTk+1 ;
(0)
Obtaining Ef (k + 1) and r0 (k + 1):

0T ∗ (0) T
(0) -
ef q1 (k + 1) 1/γ0 (k)
(0) = Qf (k + 1) ;
Ef (k + 1) 0 (0)
λ1/2 Ef (k) −r0 (k + 1)
a(0) (k + 1) = r0 (k + 1); γ0 (k + 1) = 1;
eq1 (k + 1) = d(k + 1);
for j = 1 : N
(j) (j)
{ 1. Obtaining Df q2 (k + 1) and ef q1 (k + 1):
T
(j) (j−1) T
-
ef q1 (k + 1) (j) -
ef q1 (k + 1)
(j)
= Qθ (k) (j)
;
Df q2 (k + 1) λ1/2 Df q2 (k)
(j)
2. Obtaining Ef (k + 1) and pj (k + 1):

(j) T
0 T
∗ (j) -
ef q1 (k + 1) 1/γj (k)
(j) = Qf (k + 1) ;
Ef (k + 1) 0 (j)
λ1/2 Ef (k) −rj (k + 1)
3. Obtaining a(j)⎤(k + 1):
⎡ ⎡ ⎤
0M (N −j) 0M (N −j)
⎢ a(j) (k + 1) ⎥ ⎢ a(j−1) (k) ⎥
⎢ ⎥  (j) ⎢ ⎥
⎣ 0M (j−1) ⎦ = Qθf (k) ⎣ 0M (j−1) ⎦ ;
rj−1 (k + 1) rj (k + 1)
(j)
4. Obtaining Qθf (k + 1): ⎡ ⎤
⎡ ⎤ 0M (j−1)×M
0M (N −j+1)×M ⎢ D(j) (k + 1) ⎥
⎣ 0M (j−1)×M ⎦ = Qθf (j) (k + 1) ⎢ ⎢ f q2

⎥;
(j−1) ⎣ 0M (N −j)×M ⎦
Ef (k + 1) (j)
Ef (k + 1)
(j)
 Obtaining Qθ (k + 1) and γj (k
5.  + 1): 
1/γj (k + 1) (j) 1/γj−1 (k + 1)
= Qθ (k + 1) (j−1) ;
0 −a (k + 1)
6.
Joint Estimation:

(j) (j−1)
eq1 (k + 1) (j) eq1 (k + 1)
(j) = Qθ (k + 1) (j) ;
dq2 (k + 1) λ1/2 dq2 (k)
7. Obtaining the a priori error:
(j)
ej (k + 1) = eq1 (k + 1)/γj (k + 1);
} % for j
} % for k

Equation (100) can be easily reformulated as a multichannel problem with M = L + 1


channels, where the most recent sample of the i-th channel is
.
x(k), i = 1,
xi (k) =
x(k)x(k − i + 2), i = 2, · · · , L + 1,

90
Application Example and Computational Complexity Issues

x(k) x2 (k) x(k)x(k − 1) x(k)x(k − 2) x(k)x(k − 3)

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.

and the i-th channel order is


.
L, i = 1, 2,
Ni =
L − i + 2, i = 3, · · · , L + 1.

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.

6.2 Computational complexity issues


The computational complexity of the Multichannel Fast QRD-RLS algorithms, in terms of mul-
tiplication, divisions, and square roots per input sample, is summarized in Table 8, according
to the classification introduced earlier in Table 1. Generally speaking, when the same structure
and approach are considered, algorithms based on the a posteriori backward prediction errors
updating have lower computational burden when compared to their a priori counterparts.
6
The updating of the coefficient vector for the NLMS algorithm was performed according to
μ
w(k) = w(k − 1) + x(x)e∗ (k),
σ + x(k)2

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

Figure 6: Learning curves of the non-linear system identification experiment.

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

Table 8: Computational complexity of Multichannel Fast QRD-RLS algorithms, according to


Table 1.

ALGORITHM MULTIPLICATIONS DIVISIONS SQUARED ROOTS


Algs. 2, 4 [5]-[7], 4N M 2 + 11N M + 2N M + 2M + N − 2N M + M + N −
& &
summarized 5M 2 + 6M + 7N − 2M M i=1 (pi − i) 2M M i=1 (pi − i)
&
in Table 4 (4M 2 + 6M ) M i=1 (pi − i)
Algs. 10, 12 [6, 7, 11], 2
4N M + 11N M + 2N M + 3M + 2N − 2N M + M + N −
& &
summarized 5M 2 + 6M + 9N − 2M M i=1 (pi − i) 2M M i=1 (pi − i)
&
in Table 5 (4M 2 + 6M ) M i=1 (pi − i) +2
Alg. 1 [4], sum- 4M 3 N + 17M 2 N + 2M 2 N + 3M N M 2 N + 2M N
marized in Tab 6 12M N + 5M 2 + 5M +2M +M
Alg. 9 [11] sum- 4M 3 N + 17M 2 N + 2M 2 N + 5M N M 2 N + 2M N
marized in Tab 7 14M N + 5M 2 + 6M +3M +M
Algs. 6, 8 [10], sum- 14N M + 13M + 3N M + 4M − 2N M + 3M −
& & &
marized in Tab 2 5N − 9 M i=1 pi 3 M i=1 pi 2 M i=1 pi
Algs. 14, 16 [11] sum- 15N M + 14M + 4N M + 5M − 2N M + 3M −
& & &
marized in Tab 3 5N − 10 M i=1 pi 4 M i=1 pi 2 M i=1 pi
Algs. 5, 7 [9] 14N M + 13M + 4N M + 5M − 2N M + 3M −
& & &
5N − 9 M i=1 pi 4 M i=1 pi 2 M i=1 pi
Algs. 13, 15 [11] 15N M + 14M + 5N M + 6M − 2N M + 3M −
& & &
5N − 10 M i=1 pi 5 M i=1 pi 2 M i=1 pi

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)

[2] V. J. Mathews, G. L. Sicuranza, Polynomial Signal Processing. Wiley-Intercience: John


Wiley & Sons, New York, USA (2000)

[3] A. L. L. Ramos, J. A. Apolinário Jr., S. Werner, Multichannel fast QRD-LS adaptive


filtering: Block-channel and sequential-channel algorithms based on updating backward
prediction errors. Signal Processing vol. 87 no. 7, pp. 1782–1798 (July 2007)

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)

[7] A. L. L. Ramos, J. A. Apolinário Jr., 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, pp. 1–4 (2005)

[8] M. A. Syed, V. J. Mathews, QR-decomposition based algorithms for adaptive Volterra


filtering. IEEE Transactions on Circuits and Systems I: Fundamental Theory and Appli-
cations vol. 40 no. 6 pp. 372–382 (1993)

[9] A. L. L. Ramos, J. A. Apolinário Jr., M. G. Siqueira, A new order recursive multiple


order multichannel fast QRD algorithm. In: Proc. 38th Midwest Asilomar Conference on
Signals, Systems, and Computers, Pacific Grove, USA, vol. 1, pp. 965–969 (2004)

[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)

[11] A. A. Rontogiannis, S. Theodoridis, Multichannel fast QRD-LS adaptive filtering: New


technique and algorithms. IEEE Transactions on Signal Processing vol. 46 no. 11 pp.
2862–2876 (1998)

[12] M. A. Syed, QRD-based fast multichannel adaptive algorithms. International Conference


on Acoustics, Speech, and Signal Processing vol. 3 no. 6 pp. 1837–1840 (1991)

[13] M. Harteneck, J. G. McWhirter, I. K. Proudler, R. W. Stewart, Algorithmically engineered


fast multichannel adaptive filter based qr-rls. IEE Proc.-Vis Image Signal Process. vol. 146
no. 1, pp. 7–13 (1999)

[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

Delay-and-sum Beamforming for Direction of Arrival


Estimation Applied to Gunshot Acoustics

António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei


Proc. SPIE 8019, April 2011.

97
Delay-and-sum Beamforming for Direction of
Arrival Estimation Applied to Gunshot Acoustics

António L.L. Ramosa , Sverre Holmb , Sigmund Gudvangena , Ragnvald Otterleic


a Department of Technology, Buskerud University College,
Pb. 235, 3603 Kongsberg, Norway
b Department of Informatics, University of Oslo,
P.O.Box 1080, Blindern, N-0316 Oslo, Norway
c SNIPOS - Døvikveien 21, 3178 Våle, Norway

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.

2 Overview of the acoustics of gunshots


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 [14], comprise three different sounds whose origin are associated with the

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).

2.1 The Muzzle Blast


The muzzle blast results as a consequence of the sudden expansion of gas following the explo-
sion in the gun barrel. It radiates in all directions propagating at the speed of sound (e.g., 343
m/s at 20 degrees Celsius) and lasts typically for less than 3 ms. Although the sound pressure
is strongest in the direction the gun barrel is pointing to, 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.
The muzzle blast is not always detectable, specially if sound suppressors are used. In some
cases, the sensor, or array of sensors, can be several hundred meters away from the firing gun.
In those cases, due to propagation losses, the muzzle sound pressure may drop below the noise
floor and therefore become difficult to detect. Unfortunately, this issue has not received due
attention in the context of sniper positioning systems, even though its correct detection and
estimation is as important as the shockwave’s in the sniper positioning systems context.

2.2 The Shockwave


A ballistic shockwave, present only when the bullet is moving at supersonic speed, is character-
ized by a sudden rise in pressure followed by an approximately linear decline to a value nearly
as far below as the original rise and then an almost instantaneous return to the atmospheric pres-
sure [1]. The shape of the resulting wave form resembles that of an “N” (see Figure 2) and is
sometimes referred to as the N-wave. In Figure 2, 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

x Receiver

Shockwave
front
Muzzle wave
front
Bullet

Detach
point

y
Shooter Position

Figure 1: A typical configuration for gunshot recording.

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

Figure 2: The N-wave as a function of time.

x L
Bullet

Trajectory

T
H

Figure 3: Path of Energy transfer from bullet to shock


wave. x: miss-distance; L: wavelength.

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.

3 Delay-and-sum beamforming for gunshots acoustics

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.

3.1 Signal model


Consider the 3-D geometry array as illustrated in Figure 4 and its block diagram counterpart
depicted in Figure 5. Let φ and θ denote the azimuth and elevation angles, respectively. The
signal received at the mth microphone from a signal f (t) propagating from the far field and
impinging the array from the direction φ and θ can be expressed as

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.

3.2 The 3-dimensional geometry delay-and-sum beamforming


The wave-field sampled by an array of M sensors (see Figure 5) can be expressed as a function
of time and space as [15]

x[n, p] = [x(n − τ0 ) x(n − τ1 ) ··· x(n − τM −1 )]T , (4)

Table 1: Actual position of the


sensors on the Cartesian plane.

Mic Mic position (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
4 0 0 1.704

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

Figure 5: Discrete-time delay-and-sum beamformer.

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

a = [− sin θ cos φ − sin θ sin φ cos θ]T , (6)

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

3.3 The steered-response power algorithm (SRP) applied to gunshots acous-


tics
The SRP method is a broadband algorithm that can be implemented in both time- and frequency-
domain [16]. In [18] a 2-dimensional geometry version is described in a general framework
including the non-uniform weighting case. In this section, we describe the equations governing
a 3-dimensional geometry array with fixed uniform weighting as the one in Figure 4 that is
currently used in our system. The corresponding sensors’ xyz-coordinates are listed in Table 1.
The average output power of a beamformer steered to the direction (φ, θ), taken over a
window of length L, is given by

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

PL (φ, θ) = wT E{xφ,θ [n]xTφ,θ [n]}w = wT R̂φ,θ w, (11)

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

xφ,θ [n] = [ x0 [n + Δ0 (φ, θ)] x1 [n + Δ1 (φ, θ)] · · · xM −1 [n + ΔM −1 (φ, θ)] ]T . (13)

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:

Θ̂(φ, θ) = arg max 1T R̂φ,θ 1, (15)


(φ,θ)

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

multiplications and L − 1 additions to evaluate the trace of E[yφ,θ yφ,θ


T
] at each (φ, θ) iteration.
The main advantage of using this method as compared to those based on TDOA, which
require the incoming signals to be detected individually in each channel, is that the signal de-
tection is carried out with the contribution of all channels simultaneously, benefiting therefore
from the array gain (AG) given by [15].
SN Rarray
AGdB = 20 log = 10 log(M ). (17)
SN Rsensor
This result is illustrated in next section using a numerical example.

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

Signal Energy (dB)


14
12
Signal Energy (dB)

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.

5 Conclusion and Future Works


This paper presented an alternative approach to estimate the DOA of gunshots acoustical sig-
nals, i.e., the shockwave and the muzzle blast. Estimating the DOA using this method, as
opposed to those based on the TDOA commonly used in sniper positioning systems available
in the current literature, opens new possibilities to the design of more robust and reliable sniper
positioning systems that can be used more effectively in low SNR environments.
Enhanced performance is also expected in environments where gunshot events might occur
more intensively, e.g., a battle field. Furthermore, the beamforming method offers major advan-
tages namely, the possibility of increasing the system’s detection range and lowering the false
alarm and miss-detection rates by taking advantage of the improved SNR signal at the beam-
former’s output. Noise cancellation algorithms can further improve the the SNR and thereby
extend the range. Also, multi-path propagation can adversely affect the performance of the sys-
tem and needs to be dealt with. This issue, however, is out of the scope of this paper and will
be addressed separately within the beamforming context.

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.

[3] A. D. Pierce, “Statistical theory of atmospheric turbulence effects on sonic-boom rise


times,” Journal of the Acoustical Society of America, vol. 49, no. 3B, pp. 906–924, 1971.

[4] H. E. Bass, B. A. Layton, L. N. Bolen, and R. Raspet, “Propagation of medium strength


shock waves through the atmosphere,” Journal of the Acoustical Society of America,
vol. 82, no. 1, pp. 306–310, 1987.

[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.

[11] A. Lédeczi, P. Völgyesi, M. Maróti, G. Simon, G. Balogh, A. Nádas, B. Kusy, S. Dóra,


and G. Pap, “Multiple simultaneous acoustic source localization in urban terrain,” in IPSN
’05: Proceedings of the 4th international symposium on Information processing in sensor
networks. Piscataway, NJ, USA: IEEE Press, 2005, p. 69.

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.

[14] B. M. Brustad and J. C. Freytag, “A survey of audio forensic gunshot investigations,” in


Audio Engineering Society 26th International Conference: Audio Forensics in the Digital
Age, July 2005.

[15] H. L. V. Trees, Optimum Array Processing (Part IV of Detection, Estimation, and Modu-
lation Theory), 1st ed. New York: Wiley-Interscience, 2002.

[16] J. H. DiBiase, H. F. Silverman, and M. S. Brandstein, “Robust localization in rever-


berant rooms,” in Microphone Arrays: Signal Processing Techniques and Applications,
M. Brandstein and D. Ward, Eds. Berlin, Germany: Springer-Verlag, 2001, pp. 157–180.

[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

A Spectral Subtraction Based Algorithm for Real-time Noise


Cancellation with Application to Gunshot Acoustics

António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei


International Journal of Electronics and Telecommunications, April 2013.

111
A Spectral Subtraction Based Algorithm for
Real-time Noise Cancellation with Application to
Gunshot Acoustics

António L.L. Ramosa , Sverre Holmb , Sigmund Gudvangena , Ragnvald Otterleic


a Department of Technology, Buskerud University College,
Pb. 235, 3603 Kongsberg, Norway
b Department of Informatics, University of Oslo,
P.O.Box 1080, Blindern, N-0316 Oslo, Norway
c SNIPOS - Døvikveien 21, 3178 Våle, Norway

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.

International Journal of Electronics and Telecommunications. Volume 59, Issue 1,


Pages 93–98, ISSN (Print) 0867-6747, April 2013.
DOI: 10.2478/eletel-2013-0011
Paper II

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.

7 OVERVIEW OF THE ACOUSTICS OF GUNSHOTS


There are three different types of sound associated with the firing of a gun: the mechanical ac-
tion sound, the muzzle blast, and the shockwave. The mechanical action originated sounds,
useful in forensics [14], comprise three different sounds whose origin are associated with the

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).

7.1 The Muzzle Blast


The muzzle blast results as a consequence of the sudden expansion of gas following the explo-
sion in the gun barrel. It radiates in all directions propagating at the speed of sound (e.g., 343
m/s at 20 degrees Celsius) and lasts typically for less than 3 ms. Although the sound pressure
is strongest in the direction the gun barrel is pointing to, 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.
The muzzle blast is not always detectable, specially if sound suppressors are used. In some
cases, the sensor, or array of sensors, can be several hundred meters away from the firing gun.
In those cases, due to propagation losses, the muzzle sound pressure may drop below the noise
floor and therefore become difficult to detect. Unfortunately, this issue has not received due
attention in the context of sniper positioning systems, even though its correct detection and
estimation is as important as the shockwave’s in the sniper positioning systems context.

7.2 The Shockwave


A ballistic shockwave, present only when the bullet is moving at supersonic speed, is char-
acterized by a sudden rise in pressure followed by an approximately linear decline to a value

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

Figure 3: Signal model.

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.

8 The Spectral Subtraction Method


The spectral suppression algorithm was introduced in [15] in the context of noise reduction in
speech signals. Since then, the algorithm has been widely studied and various improvements
or modifications have been proposed for many different application, e.g., speech enhancement
[16, 17, 18], and automotive [19] and biomedical engineering [20]. This paper discusses the
application of the spectral subtraction method for denoising of acoustic gunshot signals in the
context of sniper positioning systems. Usually, these systems make use of an array of mi-
crophones spatially distributed in a 3-D geometry and various signal processing algorithms are

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.

8.1 The signal model for noise reduction

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.

8.2 The Spectral Subtraction Algorithm Revisited

Taking the Fourier transform of both sides of (3) yields

Xm (ejw ) = S(ejw )e−jτm (φ,θ) + Vm (ejw ). (4)

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

X(ejw ) = S(ejw ) + V (ejw ). (5)

The power spectrum of the signal of interest, |S(ejw )|2 , can be estimate according to

|Ŝ(ejw )|2 = |X(ejw )|2 − [V (ejw )]2 , (6)

and its respective Fourier transform can be expressed as


" # 12 jw )
Ŝ(ejw ) = |X(ejw )|2 − [V (ejw )]2 ejX(e , (7)

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

Equation (7) can be rearranged into the following form


  12
|V (ejw )|2
Ŝ(ejw ) = 1− X(ejw )
|X(ejw )|2
= H(ejw )X(ejw ), (8)

where H(ejw ) is the so called spectral subtraction filter.


" #
The term |X(ejw )|2 − [V (ejw )]2 in (7) can exhibit negative values at frequencies where
there is no or little signal energy in |X(ejw )|, and the additive noise component is less than
the average value, V (ejw ). To overcome this problem one can use the so called nonlinear rec-
" #
tification which consists of replacing the possible negative values in |X(ejw )| − V (ejw ) by
zero [15, 16, 18]. This approach, however, can introduce a specific type of undesirable distur-
bance known as “musical noise” that has a significant impact in the case of speech enhancement
applications.

8.3 The Modified Spectral Subtraction Algorithm


Let Pv (w, λ) denote the smoothed power spectrum of the background noise, v(n), at frequency
bin w, and frame index λ of length L samples. The background noise is assumed to be short-
time stationary and uncorrelated to the gunshot signals. The smoothed power spectrum can then
be estimated recursively during periods of noise only according to

Pv (w, λ) = αPv (w, λ − 1) + (1 − α)|X(w, λ)|2 , (9)

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

stage. The algorithm is summarized in Figure 4b.

Spectral estimation frames

... ... time

}
}
Impulse detection sub-frames
(a)

Initialize

Get frame

FFT

Power Spectral Subtraction

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.

8.4 Implementation Issues


In [15], a number of other key issues regarding the implementation of the spectral subtrac-
tion algorithm, e.g, residual noise reduction, additional noise reduction during noise only peri-
ods, magnitude averaging, input-output data buffering, have been discussed, in the context of a
speech enhancement application. Although most of these ideas can also be implemented here
in a straightforward manner, we highlight the fact that there are two fundamental differences
in connection with the nature of speech and gunshot signals. The first one has to do with the
windowing method as illustrated in Figure 4. The second one is regarding magnitude averaging
using neighbor frames that must be avoided when denoising gunshot signals using the spectral
suppression method, given their impulsive nature.

Table 1: Actual position of the sensors on the Cartesian plane.

Mic Mic position (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
4 0 0 1.704

9 Application Results on Real Data


This section discusses the results of applying the modified spectral subtraction algorithm pre-
sented in this work on real data.

9.1 Data Acquisition


The experiment was carried out using real gunshot acoustical data acquired using a 4-microphone
array that is currently being used in our sniper positioning system prototype. Our data base com-
prises shooting samples from various ranges (60 − 800 meters), and miss-distances. The array

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

Figure 6: Impulse detection.

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.

9.2 Experimental Results


The spectral suppression algorithm was run using a (Hamming window) frame of 500 samples
to estimate the power spectrum and a (rectangular window) sub-frame of 100 samples for the
impulse detector, yielding a total of 5 sub-frames. In our implementation, we used the robust
impulse detector of [23]. Its application is illustrate in Figure 6 under additive white Gaussian
noise, with both shockwave and muzzle blast included. The final experimental results are plot-
ted in Figure 7. Here we highlight the muzzle sound which is most affected by additive noise.
Figure 7a illustrates the result of applying the impulse detector to the noisy muzzle blast signal
whereas Figure 7b illustrates the result of applying the modified spectral suppression algorithm
to the same signal. The input SNR was set to about 0 dB and the measured SNR at the output
was roughly 5 dB. As can be seen from the comparison of the spectrograms of the noisy and
denoised signals, figures 7a and 7b, respectively, the algorithm performed very well.

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.

[2] A. D. Pierce, “Statistical theory of atmospheric turbulence effects on sonic-boom rise


times,” Journal of the Acoustical Society of America, vol. 49, no. 3B, pp. 906–924, 1971.

[3] H. E. Bass, B. A. Layton, L. N. Bolen, and R. Raspet, “Propagation of medium strength


shock waves through the atmosphere,” Journal of the Acoustical Society of America,
vol. 82, no. 1, pp. 306–310, 1987.

[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.

[8] R. C. Maher, “Acoustical characterization of gunshots,” in SAFE ’07: IEEE Workshop on


Signal Processing Applications for Public Security and Forensics, April 2007, pp. 109–
113.

[9] A. Lédeczi, P. Völgyesi, M. Maróti, G. Simon, G. Balogh, A. Nádas, B. Kusy, S. Dóra,


and G. Pap, “Multiple simultaneous acoustic source localization in urban terrain,” in IPSN
’05: Proceedings of the 4th international symposium on Information processing in sensor
networks. Piscataway, NJ, USA: IEEE Press, 2005, p. 69.

[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.

[11] 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.

[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.

[14] B. M. Brustad and J. C. Freytag, “A survey of audio forensic gunshot investigations,” in


Audio Engineering Society 26th International Conference: Audio Forensics in the Digital
Age, July 2005.

[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.

[17] M. Mizumachi and M. Akagi, “Noise reduction by paired-microphones using spectral


subtraction,” in Acoustics, Speech and Signal Processing. Proceedings of the 1998 IEEE
International Conference on, vol. 2, May 1998, pp. 1001–1004 vol.2.

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

A Multi-band Spectral Subtraction Based Algorithm for


Real-time Noise Cancellation Applied to Gunshot Acoustics

António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei


Proc. SPIE 8711, April 2013.

127
A Multi-band spectral subtraction based algorithm
for real-time noise cancellation applied to gunshot
acoustics

António L.L. Ramosa , Sverre Holmb , Sigmund Gudvangena , Ragnvald Otterleic


a Department of Technology, Buskerud University College,
Pb. 235, 3603 Kongsberg, Norway
b Department of Informatics, University of Oslo,
P.O.Box 1080, Blindern, N-0316 Oslo, Norway
c SNIPOS - Døvikveien 21, 3178 Våle, Norway

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.

2 OVERVIEW OF GUNSHOT ACOUSTICS


In this section we present a brief overview of gunshot acoustics. Some of these issues have been
partially addressed in previous works by the authors, and are included here in order to make this
work self contained.
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 sounds comprise
three different sounds originated from the trigger, the hammer, and the ejection of spent car-
tridges. These sounds are detectable only if a sensor is placed in the proximity of the gun.
They can useful in forensics investigations [11], but are of no special use in sniper positioning

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.

2.1 The Muzzle Blast


The muzzle blast results as a consequence of the sudden expansion of gas following the explo-
sion in the gun barrel. It radiates in all directions propagating at the speed of sound (e.g., 343
m/s at 20 degrees Celsius) and lasts typically for less than 3 ms. Although the sound pressure
is strongest in the direction the gun barrel is pointing to, 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. The muzzle blast is not always detectable, specially
if sound suppressors are used. In some cases, the sensor, or array of sensors, can be several
hundred meters away from the firing gun. In those cases, due to propagation losses, the muzzle
sound pressure may drop below the noise floor and therefore become difficult to detect.

2.2 The Shockwave


A ballistic shockwave, present only when the bullet is moving at supersonic speed, is character-
ized by a sudden rise in pressure followed by an approximately linear decline to a value nearly
as far below as the original rise and then an almost instantaneous return to the atmospheric pres-
sure [12]. The shape of the resulting wave form resembles that of an “N” (see Figure 2a) and

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 shock-
wave that reaches a given sensor is generated.

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.

Figure 2: The shockwave.

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

Table 1: Actual position of the sensors


on the Cartesian plane.

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.

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 [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.

2.3 Data Acquisition and Analysis


Our data base comprises gunshot acoustical signatures acquired using a 4-microphone array as
depicted in Figure 3. The actual position of the microphones is given in Table 1. The shootings
are performed from various ranges (60 − 800 meters) and miss-distances, and the signals are
recorded as cleanly as possible at a sampling rate of 96 kHz. Figure 4 shows the shockwave and
muzzle blast amplitude spectra 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 5-10 kHz, whereas most of
the energy of the muzzle blast signal is concentrated around 1-2 kHz. This information will be
useful when specifying some of the parameters of the algorithm presented in this work.

3 The Spectral Subtraction Method Revisited


This section presents a short overview of the spectral subtraction method for denoising of acous-
tical signals. We shall introduce the signal model, followed by a brief description of the basic
spectral subtraction algorithm.

133
Paper III

3.1 Signal model


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 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.

3.2 The Spectral Subtraction Algorithm


The spectral subtraction algorithm was introduced in [4] in the context of noise reduction in
speech signals. Since then, the algorithm has been widely studied and numerous variants have
been proposed for many different applications, e.g., speech enhancement [14, 5, 6, 7], automo-
tive [9] and biomedical [10] engineering, and gunshot acoustics [3].

Amplitude Spectra
150

140

130

120
Amplitude (dB)

110

100

90

80

70 Shock wave
Muzzle blast
60
3 4
10 10
Hz

Figure 4: Amplitude spectra of a 5.56 mm bullet acoustical signature fired from


approximately 737 meters from the sensors location with a passing distance of
roughly 108 meters.

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

Figure 5: Signal model.

Taking the Fourier transform of both sides of (3) yields

Xm (ejω ) = S(ejω )e−jτm (φ,θ) + Vm (ejω ). (4)

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

X(ejω ) = S(ejω ) + V (ejω ). (5)

The power spectrum of the signal of interest, |S(ejω )|2 , can be estimate according to

|Ŝ(ejω )|2 = |X(ejω )|2 − [V (ejω )]2 , (6)

and its respective Fourier transform can be expressed as


" # 21 jω )
Ŝ(ejω ) = |X(ejω )|2 − [V (ejω )]2 ejX(e , (7)

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

which can be rearranged into


  21
α|V (ejω )|2
Ŝ(ejω ) = 1− X(ejω )
|X(ejω )|2
= H(ejω )X(ejω ), (9)

where H(ejω ) is known as the spectral subtraction filter.


" #
The term |X(ejω )|2 − α[V (ejω )]2 = |Ŝ(ejω )|2 in (8) can exhibit negative values at fre-
quencies where there is no or little signal energy in |X(ejω )|, and the additive noise component
is less than the average value, V (ejω ). To overcome this problem one can use the so called
nonlinear rectification which consists of replacing the possible negative values in |Ŝ(ejω )| by
zero [4, 5, 7]. This approach, however, can introduce a specific type of undesirable disturbance
known as “musical noise” that has a significant impact in the case of speech enhancement ap-
plications. An alternative approach is to floor possible negative values according to
$
|Ŝ(ejω )|2 |Ŝ(ejω )|2 > 0
|Ŝ(ejω )|2 = jω 2 (10)
β[V (e )] else,

where β is a parameter that controls the spectral floor.

3.3 Power Spectral Subtraction

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

P̂v (w, λ) = σ P̂v (w, λ − 1) + (1 − σ)|X(w, λ)|2 , (11)

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

Spectral estimation frames

... ... time

}
}
Impulse detection sub-frames
(a) Signal framing: 50% overlapping samples for power spec-
trum estimation; and smaller non-overlapping sub-frames for
impulse detection.

Initialize Compute Power Spectral


Band 1 SNR Subtraction
IFFT

Get frame
Compute Power Spectral
Band 2 SNR Subtraction Overlap-add

FFT ŝ(t)
... ... ...
Impulse Detector

Compute Power Spectral


Band N Subtraction
SNR
Update Spectral No Impulse
Power Estimate Detected?

Yes
(b) Algorithm flow-cart.

Figure 6: Summary of the proposed multi-band spectral subtraction algorithm.

4 The Proposed Multi-band Spectral Subtraction Algorithm


The multi-band spectral subtraction algorithm was originally proposed by Kamath and Loizou
[8], with application to speech enhancement. The idea was motivated by the fact that additive
colored noise affects signals differently in different frequencies. As has been illustrated in Sec-
tion 2.3, the same applies to typical additive noise that might be found in a sniper positioning
scenario. The available bandwidth is divided into N non-overlapping channels under some cri-
teria based on the characteristic power spectral distribution of gunshot signals. The estimated
power spectrum of the background noise is subtracted from each of these channels indepen-
dently, using different subtraction factors, αi , calculated based on the segmental SNR of each
sub-band or channel, and estimated according to
% &e '
2
k=bi |Xi (k)|
i

SNRi = 10 log &ei , bi ≤ k ≤ e i , (12)


k=bi P̂v,i (k)

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,

whereas the values of δi were set to




⎪ 1.5, fi > F2s − 8 kHz


3, 10 kHz < fi ≤ F2s − 8 kHz
δi = (15)

⎪ 1, 1 kHz ≤ fi ≤ 10 kHz

⎩ 2.5, fi < 1 kHz.

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.

[6] M. Mizumachi and M. Akagi, “Noise reduction by paired-microphones using spectral


subtraction,” in Acoustics, Speech and Signal Processing. Proceedings of the 1998 IEEE
International Conference on, vol. 2, May 1998, pp. 1001–1004 vol.2.

[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.

[11] B. M. Brustad and J. C. Freytag, “A survey of audio forensic gunshot investigations,” in


Audio Engineering Society 26th International Conference: Audio Forensics in the Digital
Age, July 2005.

[12] 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.

[13] R. C. Maher, “Acoustical characterization of gunshots,” in SAFE ’07: IEEE Workshop on


Signal Processing Applications for Public Security and Forensics, April 2007, pp. 109–
113.

141
Paper III

[14] M. Berouti, R. Schwartz, and J. Makhoul, “Enhancement of speech corrupted by acous-


tic noise,” in Acoustics, Speech, and Signal Processing, Proceedings of the 1979 IEEE
International Conference on, vol. 4, 1979, pp. 208–211.

[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

Noise Cancellation Techniques Applied to Gunshot Acoustics

António L. L. Ramos, Sverre Holm, Sigmund Gudvangen, and Ragnvald Otterlei


Submitted.

143
Noise Cancellation Techniques Applied to Gunshot
Acoustics

António L.L. Ramosa , Sverre Holmb , Sigmund Gudvangena , Ragnvald Otterleic


a Department of Technology, Buskerud and Vestfold University College,
Pb. 235, 3603 Kongsberg, Norway
b Department of Informatics, University of Oslo,
P.O.Box 1080, Blindern, N-0316 Oslo, Norway
c POSICOM, Nedre Storgate 6, 3015 Drammen, Norway
http://www.posicom.no

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).

2.1 The Muzzle Blast


The muzzle blast is a consequence of the sudden expansion of gas following the explosion in
the gun barrel. The generated acoustic energy is directly proportional to the volume of gas flow
rate (volume velocity) at the source and propagates at the speed of sound. The speed of sound
depends on properties of the medium through which it propagates, and in air, it varies with
temperature according to [9] 
T
c = c0 1 + , (1)
273
where T is the air temperature in degree Celsius and c0 = 331 m/s is the sound velocity at
T = 0 o C. This gives, for example, a propagation velocity of 343 m/s at a temperature of 20
degrees Celsius.
Although the acoustic energy radiates in all directions, the sound pressure is highest in the
direction the gun barrel is pointing to. The cause of the attenuation measured in the rear sound
pressure can be attributed mainly to the presence of the shooter’s body and the physical char-
acteristics of the firearm [16]. The angular peak overpressure (radiation pattern) is, therefore, a
function of the azimuth angle, φ, measured with respect to the line-of-fire. One of the proposed
models for the angular peak overpressure is given by [17]
  
P0o − P180o φ
p(φ) = P0o 1 − sin , (2)
P0o 2

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

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)

Figure 2: Ideal time-domain signature and corresponding analytical frequency spectrum of a


typical small firearm muzzle blast according to Friedlander’s model. Setting b = 1, T0 = 0.5
ms, with P0 and Ps = 0 equal to 0 and 300 Pa, respectively, results in a total blast duration, TM ,
of approximately 3 ms.

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

The magnitude spectrum in (5) has a peak at


1√ 2
wmax = −b + 4b − 2,
T0

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

Figure 4: Path of Energy transfer from bullet


to the shockwave. x: miss-distance; L: wave-
length.

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.

2.2 The Shockwave


A ballistic shockwave, present only when the bullet is moving at supersonic speed, is character-
ized by a sudden rise in pressure followed by an approximately linear decline to a value nearly
as far below the atmospheric pressure as the original rise, and then an almost instantaneous
return to the atmospheric pressure [1]. The shape of the resulting wave form resembles that of
an “N” (see Figure 3) and is sometimes referred to as the N-wave. In figures 3 and 4, H and T
stand 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. The head
8
Unit conversion is carried out using the reference (hearing threshold) pressure p0 = 20μPa.

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

3 Noise Cancellation Techniques for Gunshot Acoustics


This section provides a brief overview of the three noise cancellation techniques, namely beam-
forming, spectral subtraction, and adaptive filtering. These are well known signal processing
tools that have been used successfully in a large variety of applications, including signal en-
hancement which is the problem under investigation in this work with application to gunshot
acoustics.

3.1 Signal model


Our model assumes the background noise as being short-time stationary and uncorrelated to
the impulsive gunshot signals. Cars and typical military vehicles are potential noise sources
candidates to be frequently present in the automatic sniper localization application. Generally,
gunshot signals have a spiky autocorrelation, while typical vehicle noise is periodic and exhibits
a wider autocorrelation.
Consider the block diagram of a 3-D geometry array as illustrated in Figure 6. Let φ and θ
denote the azimuth and elevation angles, respectively. The signal received at the m-th micro-
phone 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], (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.

3.2 Delay-and-sum Beamforming


Assuming the far field case, the output of the discrete-time delay-and-sum beamformer, as il-
lustrated in Figure 6, can then be expressed according to

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

x[n − τ1 ] z1 [n] w1 y[n]

A/D Converters
+Δ1 Σ
Source
Spatial
Noise zM −1 [n] wM −1
x[n − τM −1 ]
+ΔM −1
Array of
Sensors

Noise Cancellation and


Array Processing Algorithms

Figure 6: Signal model.

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.

3.3 Spectral Subtraction


The the original spectral subtraction algorithm for noise reduction was originally proposed by
Boll et al. in [19]. The method is based on the assumption that the necessary information
needed to estimate the noise spectrum is available. This can be difficult in practice, but, given
the impulsive nature of the gunshot signals and the short-time stationarity of the background
noise, it can be assumed that the noise field remains invariant during the short period where the
gunshot event takes place. Equation (7) suggests that the amplitude spectrum of the signal of
interest, |S(ejω )|, can be estimate using

|Ŝ(ejω )| = |X(ejω )| − [V (ejω )], (11)

and its respective Fourier transform can be given by


" # 21 jω )
Ŝ(ejω ) = |X(ejω )|2 − [V (ejω )]2 ej∠X(e , (12)

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

... ... time 10

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 −

X(ejω )
|X(ejω )|2
= H(ejω )X(ejω ), (14)

where H(ejω ) is the so-called spectral subtraction filter.


" #
The term |X(ejω )|2 − α[V (ejω )]2 = |Ŝ(ejω )|2 in (13) can exhibit negative values at some
frequencies whenever there is little or no energy in |X(ejω )|2 , and the additive noise component
is less than the average value, V (ejω ). To overcome this problem one can use a nonlinear
rectification which consists of replacing the possible negative values in |Ŝ(ejω )| by zero [19, 21,
22]. This approach, however, can introduce a specific type of undesirable disturbance, known as
“musical noise”, that has a significant impact in the case of speech enhancement applications.
An alternative solution is to floor possible negative values according to
$
jω 2 |Ŝ(ejω )|2 |Ŝ(ejω )|2 > 0
|Ŝ(e )| = jω 2 (15)
β[V (e )] else,

153
Paper IV

where β is a parameter that controls the spectral floor.

The Spectral Subtraction Algorithm for Gunshot Acoustics

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

P̂v (w, λ) = σ P̂v (w, λ − 1) + (1 − σ)|X(w, λ)|2 , (16)

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

SNRi = 10 log & ei i , bi ≤ k ≤ e i , (17)


k=bi P̂v,i (k)

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.

3.4 Adaptive Filtering


Consider the adaptive filtering configuration for noise cancellation as depicted in Figure 10.
Here the noisy signal, s(k) + v(k), is used as reference signal and a highly correlated version
of the noise component, v̂(k), is used as input to the adaptive filter, u(k). In this case, the

155
Paper IV

Initialize Compute Power Spectral


Band 1 SNR Subtraction
IFFT

Get frame
Compute Power Spectral
Band 2 SNR Subtraction Overlap-add

FFT ŝ(t)
... ... ...
Impulse Detector

Compute Power Spectral


Band N Subtraction
SNR
Update Spectral No Impulse
Power Estimate Detected?

Yes

Figure 9: Summary of the multiband spectral subtraction algorithm.

s(k) + v(k)

Adaptive Filter
Algorithm
d(k)
+
v̂(k) = u(k) y(k) ŝ(k)
w(k) Σ

e(k)

Figure 10: Noise cancellation configuration of an adaptive filter.

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

e(k) = s(k) + v(k) − v̂(k) = ŝ(k),

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

v̂(k) = s(k − Δt ) + v(k − Δt ).

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

w(k) = [w(k) w(k − 1) ··· w(k − N )]T (20)

and

u(k) = [u(k) u(k − 1) ··· u(k − N )]T , (21)

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.

4.2 Adaptive Filtering


Figure 13 shows the results of using the NLMS adaptive filter in the same experiment. The
algorithm was run using an input SNR of −15 dB, and the corresponding SNR measured on
the out was around 7 dB. Figure 13b shows clearly how the harmonic noise affect the impulsive
signal making it difficult if not impossible to detect. It can also be seen from the same figure
that the background noise component was almost completely removed.

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.

4.3 Spectral Subtraction


Noise cancellation algorithms based on the spectral subtraction method have some known in-
herent limitations, e.g., amplitude and phase distortions, which cannot always be neglected [29].
Nonetheless, these constraints become less relevant in applications such as automatic sniper lo-
calization systems, where the resynthesized time domain version of the signal is not the primary
objective.
Figure 14a shows a time-domain example of a noisy muzzle wave signal and its respective
spectrogram, for an input SNR of approximately 0 dB, whereas Figure 14b shows the result of
running the broadband spectral subtraction algorithm for gunshot acoustics of [13] for several
values of input and output SNR. As can be observed from Figure 14a, the SNR gain drops dra-
matically for input SNRs close to 0 dB and below, which constitutes one of the major drawbacks
of the spectral subtraction method [29].
Figures 15a and 15b illustrate, respectively, the results of applying the broadband and the
multi-band spectral subtraction algorithms to the noisy muzzle blast signal of Figure 14a. As
can be seen, the multiband spectral subtraction algorithm (Figure 15b) tends to introduce less
distortions in the frequency spectrum of the denoised gunshot signal as compared to its broad-
band counterpart (Figure 15a). These differences are noticeable at the frequencies around 4-6
kHz and at frequencies above 8 kHz.

5 Conclusions and future works


This paper presented a comparative analysis on the beamforming, spectral subtraction, and
adaptive filtering techniques applied to noise reduction in gunshot acoustic signals. 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 com-
plexity and performance in terms of SNR gain. Regarding the spectral subtraction method, one

159
Paper IV

SNR Gain Using Spectral Subtration


15

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.

[3] A. D. Pierce, “Statistical theory of atmospheric turbulence effects on sonic-boom rise


times,” Journal of the Acoustical Society of America, vol. 49, no. 3B, pp. 906–924, 1971.

[4] H. E. Bass, B. A. Layton, L. N. Bolen, and R. Raspet, “Propagation of medium strength


shock waves through the atmosphere,” Journal of the Acoustical Society of America,
vol. 82, no. 1, pp. 306–310, 1987.

[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

[9] R. C. Maher, “Acoustical characterization of gunshots,” in SAFE ’07: IEEE Workshop on


Signal Processing Applications for Public Security and Forensics, April 2007, pp. 109–
113.

[10] A. Lédeczi, P. Völgyesi, M. Maróti, G. Simon, G. Balogh, A. Nádas, B. Kusy, S. Dóra,


and G. Pap, “Multiple simultaneous acoustic source localization in urban terrain,” in IPSN
’05: Proceedings of the 4th international symposium on Information processing in sensor
networks. Piscataway, NJ, USA: IEEE Press, 2005, p. 69.

[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.

[12] 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.

[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.

[15] B. M. Brustad and J. C. Freytag, “A survey of audio forensic gunshot investigations,” in


Audio Engineering Society 26th International Conference: Audio Forensics in the Digital
Age, July 2005.

[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.

[20] M. Berouti, R. Schwartz, and J. Makhoul, “Enhancement of speech corrupted by acous-


tic noise,” in Acoustics, Speech, and Signal Processing, Proceedings of the 1979 IEEE
International Conference on, vol. 4, 1979, pp. 208–211.

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.

[26] M. Mizumachi and M. Akagi, “Noise reduction by paired-microphones using spectral


subtraction,” in Acoustics, Speech and Signal Processing. Proceedings of the 1998 IEEE
International Conference on, vol. 2, May 1998, pp. 1001–1004 vol.2.

[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

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.

165
The multipath propagation effect in gunshot
acoustics and its impact on the design of sniper
positioning systems

António L.L. Ramosa , Sverre Holmb , Sigmund Gudvangena , Ragnvald Otterleic


a Department of Technology, Buskerud University College,
Pb. 235, 3603 Kongsberg, Norway
b Department of Informatics, University of Oslo,
P.O.Box 1080, Blindern, N-0316 Oslo, Norway
c SNIPOS - Døvikveien 21, 3178 Våle, Norway

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

Figure 1: A typical configuration for gunshot recording. θM is the Mach


angle and varies inversely proportional to the bullet velocity.

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.

2.1 The Muzzle Blast


The muzzle blast results as a consequence of the sudden expansion of gas following the ex-
plosion in the gun barrel. It radiates in all directions propagating at the speed of sound (e.g.,
343 m/s at 20 degrees Celsius) and lasts typically for less than 3 ms. The muzzle blast is not
always detectable, specially if sound suppressors are used. In some cases, the array of sensors
used in the detection process, can be several hundred meters away from the firing gun and, due
to propagation losses and additive background noise, the muzzle sound pressure may drop be-
low the noise floor before it reaches the array of sensors, resulting in increased difficulty in the
detection process.

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 .

Figure 2: Simulation of an impulsive acoustic monopole in a multipath environment.

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.

Figure 3: The Shockwave.

2.3 The Shockwave


A ballistic shockwave, present only when the bullet is moving at supersonic speed, is char-
acterized by a sudden rise in pressure followed by an approximately linear decline to a value
nearly as far below as the original rise and then an almost instantly return to the atmospheric
pressure [1]. Therefore, there are two different types of shock waves involved: a compression
shock and and expansion shock. In this work, we sometimes refer to these events as the ballistic
shockwave, or simply the shockwave. The shape of the shock waveform in the time domain
resembles that of an “N” (see Figure 3a) and is sometimes referred to as the N-wave. In Fig-
ure 3, 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. The head discontinuity is also called an oblique shock, when it is inclined with respect
to the bullet trajectory, or a bow-shock when it is curved, and the tail discontinuity is referred
to as the trailing-shock. The two shocks 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. When a bullet moves
through the air at a higher velocity than that of the local speed of sound, there is an increase of
the entropy in 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 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 an important
implication in ballistic shock waves reflections and is discussed in more detail in Section 2.4.

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.

2.4 The shock wave reflection phenomenon


A shock wave can be generated either by a supersonic fluid flow meeting an edge or by an object
moving in a fluid faster that the local speed of sound. As they propagate, ballistic shock waves
can be reflected off the surfaces of surrounding objects e.g., cars and buildings. Depending
on how the incident shock wave interacts with the boundary, its strength, and the angle of
incidence, the reflection pattern that follows can be characterized as either regular or irregular
(see Figure 4). Irregular reflections can be further subdivided in two categories: Mach reflection
and von Neumann reflection. The Mach reflection exhibits a three-wave configuration where
an incident sock wave gives rises to a reflected shock wave and the Mach stem which exhibits
itself the properties of a shock wave. The point where the three shockwaves meet is called the
triple point (see Figure 4b).
In a ballistic shockwave reflection, two incident shock waves, one of compression and one
of rarefaction, reach the boundary separated by a small time interval, T  , the period of the
shockwave. The numerical analysis presented in [22, 23] shows that both regular and Mach
reflections can occur in the case of shock waves induced by supersonic projectiles. In a broader
perspective, this can be regarded as two-shock configuration, one of compression followed by
an other one of rarefaction. This is illustrated in Figure 5 for the case of regular reflection. Due
to differences in traveling times, the period of the reflected shockwave, T2 , measured at a given
point in space is greater than the period of the direct-path shockwave, T  .
As discussed by Ben-Dor et al.[18], the two shock waves do not interact with each other

172
I
I
vi vi

vr
Mach Stem
R Tp
vr

Slipstream

(a) Regular reflection. (b) Mach reflection.

Figure 4: 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.

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.

3 Multipath propagation in gunshot acoustics


3.1 Problem formulation
Under multipath propagation, the received signal is generally composed of a direct-path signal,
which is not always present, plus N scaled delayed copies of the direct-path signal. Thus, under
the assumption that an additive noise component is present, the problem can be modeled as

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

Figure 5: Reference frame of a moving ballistic shockwave front reflecting


at an oblique air-solid interface. Legend: Ic →incident shock of compression;
Ir →incident shock of rarefaction; Rc →reflected shock of compression; and
Rr →reflected shock of rarefaction; The period of the reflected shockwave, T2 ,
increases relative to the period of the incident shockwave, T1 .

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.8 Direct path shockwave

0.6

0.4 Third path shockwave


Muzzle sound
Amplitude

0.2

−0.2

−0.4 Fourth path shockwave

−0.6 Second path shockwave


−0.8

−1
0 100 200 300 400 500
Time (ms)

Figure 6: Gunshot recording with reflections. The signal is upscaled by an expo-


nential 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.

3.2 Proposed solution


So far, we have discussed issues related to the propagation of gunshots acoustical signals, with
special emphasis on the shockwave that reflects at boundaries in a somewhat unusual manner.
Based on what has been discussed, we summarize a set of features that can be used to discrimi-
nate direct-path shockwaves signals from reflected ones, as follows:

• 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.

3.3 Actual data analysis


Figure 7 illustrates some of the points discussed in this paper regarding the ballistic shockwave.
The analysis is performed in the same signal plotted earlier in Figure 6. Figures 7a, 7b, and
7c compare the spectral content of the direct-path shockwave to the first, second, and third
reflections, respectively. The power spectra has been normalized for convenience. The actual
energy content in the reflected shockwaves is much less than that in the direct-path shockwave.
Also, as can be seen in Figure 7d, the period of the reflected shockwave has increased, as
expected. The observation and analysis of these features provide means to infer whether a
detected shockwave belongs to a direct-path signal arriving from the trajectory of a supersonic
bullet passing by at a given miss-distance, or to a reflection of that same signal.

4 Conclusion and future works


This paper presented an analysis of the multipath propagation problem in gunshot acoustics
applied to sniper positioning 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 gunshot signals. The idea can easily be extended to multi shots scenarios adding
thereby more flexibility and robustness to sniper positioning systems. Furthermore, since acous-
tic 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 at a
given DOA as improbable actual sources, e.g., ground reflections. As future works, it would

176
Shockwaves Power Spectra Shockwaves Power Spectra

0 0

−10 −10
Normalized Power (dB)

Normalized Power (dB)


−20 −20

−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)

Shockwaves Power Spectra

Direct path shockwave


0 1 Fourth path shockwave
0.8
−10 0.6
Normalized Power (dB)

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)

Figure 7: (7a)–(7c) Spectral content of the direct-path shockwave compared to the


spectral content of the reflected shockwaves; and (7d) Period of the direct-path shock-
wave versus the period of the fourth-path shockwave.

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.

[3] A. D. Pierce, “Statistical theory of atmospheric turbulence effects on sonic-boom rise


times,” Journal of the Acoustical Society of America, vol. 49, no. 3B, pp. 906–924, 1971.

[4] H. E. Bass, B. A. Layton, L. N. Bolen, and R. Raspet, “Propagation of medium strength


shock waves through the atmosphere,” Journal of the Acoustical Society of America,
vol. 82, no. 1, pp. 306–310, 1987.

[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.

[11] A. Lédeczi, P. Völgyesi, M. Maróti, G. Simon, G. Balogh, A. Nádas, B. Kusy, S. Dóra,


and G. Pap, “Multiple simultaneous acoustic source localization in urban terrain,” in IPSN
’05: Proceedings of the 4th international symposium on Information processing in sensor
networks. Piscataway, NJ, USA: IEEE Press, 2005, p. 69.

[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] 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.

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.

[17] A. N. Semenov, M. K. Berezkina, and I. V. Krassovskaya, “Classification of pseudo-steady


shock wave reflection types,” Shock Waves, vol. 22, pp. 307–316, July 2012.

[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.

[20] B. M. Brustad and J. C. Freytag, “A survey of audio forensic gunshot investigations,” in


Audio Engineering Society 26th International Conference: Audio Forensics in the Digital
Age, July 2005.

[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

You might also like