finding an active shooter with gnuradio
TRANSCRIPT
Finding an Active Shooter with GNURadio
ASTRA 09/16/2017 1
Active Shooter Tactical Response AssistantTeam ASTRA:
George Mason University Students:Ben McCall, Puja Patel, Joel Williams, Rohini Shah, Aryan Toughiry
GMU Sponsors: Dr. Kenneth Hintz & Dr. Kathleen WageASTRA 09/16/2017 2
TDoA Network ● timing issues (only using 1pps from GPS) ● Simple-ish hardware
Direction Finding/Acoustic Phased array ● Timing between elements easier than TdoA ● Hard to capture distance to source
Network of Direction Finding/Acoustic Phased arrays ● Best of both worlds● Geographic spacing with no node-to-node timing needed● Gather distance to source through node intersections
ASTRA
Possible Approaches and Barriers
09/16/2017 3
Node 1
ASTRAData
Receiver
Node 3
Node 2
ASTRA
ASTRA Walkthrough
09/16/2017 4
Node 1
ASTRAData
Receiver
Node 3
Node 2
ASTRA
Shot is detected by Acoustic Sensor Array of Nodes
09/16/2017 5
Node 1
ASTRAData
Receiver
Node 3
Node 2
ASTRA
Each Node plots back a directional vector back to the source
09/16/2017 6
Node 1
ASTRAData Receiver
Node 3
Node 2
ASTRA
Vector Data is sent to the ASTRA Data Receiver
09/16/2017 7
ASTRA User Terminal
ASTRA
Intersection of Directional Vectors Shows Approx. Shooter Location
09/16/2017 8
ASTRA
Approach
09/16/2017 9
Detecting the Gunshot:● Matched Filtering● Tested FFT multiply vs time domain convolution
– FFT Multipy produced %30 increase in processor efficiency● Fixed threshold using visual observation (for now)
Determining the Direction of the Gunshot:● Auto/Cross Correlation to extract delays (lags)
Locate the Gunshot (and Hopefully the Shooter)● Determine Region of Intersection● Determine Region of Uncertainty
ASTRA
2D Phased Array
09/16/2017 10
Detector Mic
Spatial Mic1
Thanks to M. Rhudy Univ Pitt
Spatial Mic2 Spatial Mic3
SOUNDSOURCE
Omni Mic
A/DBank of Matched
Filters
WirelessBackhaul
GPS/TCP packetization
GPS position
Omni Mic
Omni Mic
Omni Mic
Phased ArrayDirection
Calculation
LINUX CPU runningGnuradio, python, java
ASTRA
Single Node Architecture
09/16/2017 11
Google earth
Data Receiver
JAVA to KML
script
KML file
ASTRA TCP
server
ASTRA node
TCP Message
GNURadio
DirectionFinding
ASTRA node
TCP Message
GNURadio
DirectionFinding
Wireless network
connectionASTRAUser
Terminal
ASTRA
ASTRA System Architecture
09/16/2017 12
GNURadio
TCP Message
GNURadio
DirectionFinding
GNURadio
ASTRA node
AutoCAD designs
Physical implementation
PHYSICAL ARRAY DESIGN AND IMPLEMENTATION
09/16/2017ASTRA
Materials list:NODE (replicated 3x):(1) Tascam US4x4 4 channel A/D converter
(1) Ubiquity Networks Loco M900 900MHz wireless transceiver(4) MOVO LV4 Omnidirectional Lavalier Microphone
13
IT’S “EASY”● Flowgraphs are easily manipulatable● Out-of-Tree Blocks meet custom needs● Visualizations give Quick Sanity Checks
IT’S FREE
IT’S “SUPPORTED”● Message boards● GNURadio Forum
ASTRA
Why GNURadio?
09/16/2017 14
Benchtop Testing: single node implementation GNURadio Flowgraph
09/16/2017ASTRA 14/28
09/16/2017ASTRA 16
Matched Filter Outputsof Multiple Firearms
Detection
Benchtop Testing: single node Implementation plotting direction
09/16/2017ASTRA
AUTOCORRELATIONMIC1/MIC1
CROSS-CORRELATIONMIC1/MIC3
CROSS-CORRELATIONMIC1/MIC4
CROSS-CORRELATIONMIC1/MIC2
PLOTTING OF ANGLE
17
Speaker Testing: Single Node Implementation
09/16/2017ASTRA
SOUND SOURCE
SOUND SOURCE
ASTRANODE
ASTRANODE
18
Speaker Testing: Single Node Implementation
09/16/2017ASTRA 17/28
Umbrella Engineering
UmbrellaLaptop
Node
Raw audio streams from microphones
Cross-correlations with peaks highlighted
Accurately plotting location of sound source
09/16/2017ASTRA 18/28
Speaker Testing: Single Node Implementation Results
.308 (Sniper Rifle)
AR15 AR15
.22 Rifle
AK 47
Glock 26
Glock17Glock19
ASTRA
Live Fire Single Node Testing and Matched Filter Data Collection
09/16/2017 21
US ARMY INFANTRY SOLDIER FIRING VARIOUS FIREARMS DURING TEST
09/16/2017ASTRA
Live Fire Testing: Single Node Implementation
22
Sighting in Angles with Lensatic Compass
Direction Finding ArrayWith shooter in background
Collecting waveforms and Observing system operation
09/16/2017ASTRA
shooter
Live Fire Testing: Single Node Implementation
23
09/16/2017ASTRA 24/32
Raw audio streams from microphones
Cross-correlations with peaks highlighted
Accurately plotting location of sound
source
Live Fire Testing: Single Node Implementation
Outdoor Shooting Range Test Layout
ASTRA
FIRING LINE
DirectionOf Fire
09/16/2017 25
09/16/2017ASTRA 26
VIDEO
Mean Angle Error(degrees)
STDEV GPS Error(meters)
CircularError ofProbabilityradius (meters)
CombinedStandardDeviation(meters)
ASTRA
System Error Results
Node 1 Latitude
Node 1 Longitude
Node 2 Latitude
Node 2 Longitude
Node 3 Latitude
Node 3 Longitude
1.22 1.54 2.07 0.67 1.29 3.28
Node 1 Node 2 Node 3
1.035 4.275 5.342
CSD
1.22
CEP
2.15
09/16/2017 27
CEP Shown in ASTRA User Terminal View
ASTRA
PRE-SHOT DISPLAY POST-SHOT DISPLAY
09/16/2017 28
Circular Error Probability (CEP) on ASTRA User Terminal
09/16/2017ASTRA
4.28m
CEP=0.62 σy+0.56 σx
σy= 1.06 meters
σx= 2.66 meters
Novatel Study: APN-029 Rev 1, 3DEC2003
29
ASTRA
Threshold
Samples
Ma
gnitu
de (
DB
) = Threshold= Data
Thresh Xing
09/16/2017 30
CA-CFAR Plot Using Recorded Gunshot Data
ASTRA
Team ASTRA
09/16/2017 31