The Design and Implementation of a SelfCalibrating Distributed Acoustic Sensing Platform

1 / 53
About This Presentation
Title:

The Design and Implementation of a SelfCalibrating Distributed Acoustic Sensing Platform

Description:

The Design and Implementation of a SelfCalibrating Distributed Acoustic Sensing Platform –

Number of Views:80
Avg rating:3.0/5.0
Slides: 54
Provided by: gir84
Category:

less

Transcript and Presenter's Notes

Title: The Design and Implementation of a SelfCalibrating Distributed Acoustic Sensing Platform


1
The Design and Implementation of a
Self-Calibrating Distributed Acoustic Sensing
Platform
  • Lewis Girod
  • MIT CSAIL

Collaborators Deborah Estrin, Martin Lukac
(UCLA/CENS) Vladimir Trifa (EPFL) This material
is based upon work supported by the National
Science Foundation under Grant No. CCF-0120778.
2
Distributed Acoustic Sensing Applications
Animal call detection
GoalDevelop a platform to support distributed
acoustic sensing
Highway safety
Vehicle tracking
Node location
3
Platform Objective SupportAcoustic Source
Localization
Each node hosts an acoustic array and local
processing capability.
Node1
  • Algorithm
  • Filter,
  • Detect,
  • Compute Bearing,
  • Collaborate.

Node2
Node3
4
Platform Objective SupportAcoustic Source
Localization
In the final step, bearing estimates from each
node are combined to estimate target location.
Node1
  • NEED
  • Array orientation
  • Array position
  • Synchronized, buffered sampling across nodes
  • Network primitives for collaboration

Node2
Node3
5
The Acoustic ENSBox
4 condenser mics 4 piezo tweeters Wind screens
Raised mic for 3D bearing estimates
400 MHz ARM/Linux CPU, 64MB/1GB, 802.11,
4x48KHz 3.5W max power
Plus, a software stack that addresses the needs
of source localization applications
6
ENSBox Software Enables Source Localization
  • NEED
  • Array orientation
  • Array position
  • Synchronized, buffered sampling across nodes
  • Network primitives for collaboration

Location and orientation self-calibration system
5 cm position error, 1.5 degree orientation error
in 50x80 m outdoor urban environment 9 cm
average error in forest environment.
Sampling API Sync across nodes accurate to
within a sample Look-back buffer simplifies
system timing.
StateSync Efficient, reliable publish/subscribe
of K-V pairs to N-hop
neighbors. Flooding with Hop by Hop time
conversion
7
Outline
  • Synchronized sampling implementation
  • Network Primitives
  • Self-calibration system design
  • Experiments and results
  • Ranging component tests
  • Bearing component tests
  • System test UCLA Courtyard
  • System test James Reserve
  • External users
  • Antbird detection and recognition

8
Synchronized Sampling and the Look-back buffer
  • Sampling system provides continuous, monotonic
    indices
  • Sampling API supports streaming and buffered
    access
  • Timesync enables conversion of sample indices
    across nodes
  • Local Example
  • At time T, detect feature in Ch0.
  • Local look-back Extract Ch0-3 from past data
    T-d,T.
  • Queue data for enhancement using beamforming.

9
Look-back buffer Multi-node example
Bird 1
Node1
T
Bird 2
Converted via Syncd
T
Node2
Node3
Node 2s fast detector might initially miss
bird 1, yet later find it using hints from Node 1
10
How Time Conversion Works
Node1
Node2
Sample1
Sample2
CPU1
CPU2
Node3
Observed linear conversion metric relating two
clocks Message containing timestamp in C2
timebase
Key idea Observe and convert rather than
synchronize.
TC2
CPU3
11
Network PrimitiveFlooding with Time Conversion
  • Simple, low latency flooding algorithm
  • Upon receipt of message containing timestamp
  • Attempts to convert to local time
  • Drops/forgets packet if no conversion available

Drop (no conversion)
X
TC1
TC1
TC2
TC2
TC3
Node1
Node2
Node3
CPU1
CPU2
CPU3
12
Network PrimitiveReliable N-hop
Publish/Subscribe
  • Publish/Subscribe API
  • Data model is tables of key-value pairs
  • Each publisher has independent key-space (no
    contention)
  • Implemented as sequenced log of add/delete
    entries
  • Low cost to replacing single key
  • Low quiescent cost
  • Used for publishing
  • Fault reports (Node1/Mic1 Fail)
  • Range/Bearing data
  • Position maps
  • Configuration data

Node1
Node2
Node3
1X1 2X2 2Y3
1X1 2X2 2Y3
1X1 2X2 2Y3
13
Outline
  • Synchronized sampling implementation
  • Network Primitives
  • Self-calibration system design
  • Experiments and results
  • Ranging component tests
  • Bearing component tests
  • System test UCLA Courtyard
  • System test James Reserve
  • External users
  • Antbird detection and recognition

14
Implementation of the Self-Calibration System
  • Problem definition
  • For each node, estimate
  • 3D position (X,Y,Z)
  • Array orientation T
  • Fit relative coordinates to survey points
  • Relate to fixed system
  • Correct for environmental scaling
  • Assume all arrays are level
  • Metric (given ground truth)
  • Avg 2D, 3D position error
  • Avg orientation error

(X,Y,Z,T)
15
Components of the system
  • Range/Bearing Estimation
  • Emitter chirps, other nodes detect phase of chirp
    via correlation
  • Estimate AOA using local TDOA
  • Report (R,?) data to position layer
  • Position Estimation
  • Centralized algorithm
  • Triggers each node to chirp in turn, receives
    (R,?) estimates
  • Least squares algorithm to compute relative map
    (X,Y,Z,T)
  • Fit map to surveyed locations

Web UI
Position/Orient Estimates
User Input
Position Estimation Algorithm
Range/Bearing to neighbors
Trigger
Range/Bearing Estimation
Ranging is a distributed component that is
greatly simplified by our sampling and network
features
16
Range and Bearing EstimationSystem Overview
Receiver Node
Emitter Node
Emit Coded Signal
Sampling Service Lookback Buffer
Sampling Service Lookback Buffer
Ranging Layer
Detection Algorithm
Select Code
Detection Algorithm
ltRange, ?, ?gt
Trigger
ltCode, Detect Timegt
ltCode, Detect Timegt
Flooding Time Conversion
17
Range and Bearing EstimationAlgorithm
  • Inputs
  • The input signals from the microphones
  • The time the signal was emitted (used to select
    from input signal)
  • The PN code index used
  • Outputs
  • Peak phase (i.e. range) R
  • The 3-D direction of arrival ?, ?
  • Signal to Noise Ratio (SNR)

18
Correlation
  • Signal detection via matched filter constructed
    from PN code
  • Observed signal S is convolved with the reference
    signal
  • Peaks in resulting correlation function
    correspond to arrivals
  • Earliest peak is most direct path

19
DOA Estimation and Combining Stage
  • 6-way cross-correlation of peak region ? DOA
    Estimator
  • Filtered signals from each pair of microphones
    are correlated
  • Offset of maximum correlation between pair
    (lag) recorded
  • DOA Estimator least squares fit of lags to
    array geometry
  • Key Resilient to perturbations in microphone
    placement
  • DOA estimate used to recombine signals to improve
    SNR
  • Final peak detection yields final range estimate R

20
Position Estimation
  • Problem
  • Given pair-wise range and DOA estimates
  • Estimate X,Y,Z locations and orientation T for
    each node

R,?,?
21
Position Estimation Solution
  • Iterative refinement
  • Non-linear least squares position estimation
  • Interleaved orientation estimation
  • Filtering out bad data is key to good results
  • Pre-filtering step
  • Over-constrained system ? reject inconsistent data

22
Use DOA for Initial Estimate
Difference of forward and reverse DOA used to
estimate orientation
R
?
23
Iterative Refinement
  • Non-linear Least Squares (NLLS)
  • Express range constraints separately from angle
    constraints
  • Does not result in a linear system
  • Linearize, gradient descent
  • Orientation estimated in a separate, interleaved
    step
  • Average residual represents bias caused by array
    orientation
  • Values converge rapidly keep fixed after 10
    iterations while NLLS converges.

24
Rejecting Inconsistent Data
  • Rejecting data from inconsistent angles
  • Angular error likely caused by reflections
  • Pre-filter data
  • Perform multiple trials, keep data from median
    angle value
  • After orientation estimation converges
  • Drop ranges associated with angles that differ
    significantly from angles computed from estimated
    positions
  • Rejecting outlier constraints
  • Use studentized residuals
  • Divides each residual by its variance
  • Intuition Large residuals with low variance are
    inconsistent

25
Mapping to real coordinates and environmental
compensation
  • Two problems
  • Position estimates are relative, e.g. not related
    to GPS
  • Temperature, humidity, etc cause scaling
  • Temperature compensation is challenging
  • Difficult to get required accuracy
  • Temp along path vs. at a point
  • Solve both at once
  • Fit the position map to survey coordinates
  • Allow translation and rotation to map coordinate
    systems
  • Allow scaling to compensate for environment

26
Fitting to Surveyed Points
Surveyed
Computed
Corresponding Points
27
Experiments
  • Component Testing
  • Azimuth angle test
  • Zenith angle test
  • Range test
  • System Testing
  • Court of Sciences
  • James Reserve

28
Experimental Setup for Angular Tests
29
Azimuth Errors as aFunction of Angle
30
Overall Distribution of Azimuth Errors
31
Zenith Errors as aFunction of Angle
  • Angles under -30 degrees are obstructed by the
    array itself, and have much worse variance.

32
Overall distributions of Zenith Angle
  • The zenith data does not fit well to a normal
    distribution .
  • To improve things slightly, we computed
    statistics on subsets of the data. The NLLS
    algorithm accepts parameterized ? values.

33
Experimental Setup for Range Tests
Semi-enclosed environment (lot 9). Tests at
different scales assess precision at a range of
distances.
34
Range Measurements with Mean Error
35
Overall Distribution of Range Errors
  • The tighter distribution results from rejecting
    all errors over 10 cm

36
System Tests
  • Experimental Process
  • Lay out 10 nodes, and use survey tool to record
    ground truth
  • Using UI, request 5 ranging trials and record
    positioning results
  • Restart system and repeat
  • Compare results to ground truth
  • Test locations
  • Selected challenging test locations
  • Obstructions, reflections, noise
  • Metric Average Position Error
  • Fit estimated map to ground truth
  • Then compute average distance between
  • corresponding points

37
System test UCLA Court of Sciences
  • 10 nodes
  • Two Deployments
  • Surveyed to 1cm
  • Each node pointed at a neighbor by laser
  • 65-70 dB noise
  • Tall hedges planters
  • Reflecting buildings
  • 5 cm avg 2D error
  • 45 cm avg 3D error
  • 1.3 deg avg orient err

38
System testJames Reserve
  • 10 nodes
  • Surveyed to 1cm
  • Each node approximately oriented west by compass
  • Low noise, some echoes
  • Significant obstructions from dense foliage
  • Hilly terrain 5m variation from low to high
    point
  • 9 cm avg 2D error
  • 22 cm avg 3D error
  • 2.7 deg avg orient err
  • Some of this increase is due to errors in
    ground truth and poor array leveling

39
Courtyard test Distribution of deviation from
ground truth
40
Comparison to Related Work
  • More accurate than other outdoor systems
  • Vanderbilt Sallai and UIUC Kwon
  • 15-25 cm std. dev. range error (vs. 1.7-3.8 cm)
  • Low detection range 20-30 m (vs. 80 m)
  • 2.46 m 2D position error (vs. 0.05 m)
  • Solves more difficult problem
  • 3D position array orientation
  • Tested in much more challenging environments
  • Much easier to prototype with than Mote-based
    systems

41
External users
  • Several external users are taking up Acoustic
    ENSBox as a platform for prototyping
  • Basic source localization research (UCLA EE)
  • Intelligent roadway project (Industrial partner)
  • USC embedded sensing class
  • Antbird recognition project

42
Antbird Recognition Project (UCLA biology / EPFL)
  • Early results obtained from masters thesis
    experiments
  • Applied AML bearing estimation algorithm to
    enhance antbird calls and apply HMM recognizer

Antbird Species Recognition, for varying HMM
parameters
AML Bearing Estimator
Courtesy of Vlad Trifa, EPFL
43
  • The End
  • Thank you!
  • More information at
  • http//lecs.cs.ucla.edu/girod/aensbox

44
(No Transcript)
45
James Reserve test Deviation from ground truth
46
Dataflow Within Source Localization Application
  • Time Synchronization
  • Continuous Sampling
  • Networking primitives
  • Array location and orientation calibration

47
Anomalous Behavior at 50m
  • Due to bug in time synchronization service that
    has since been fixed, or to environmental
    variables.

48
Emit Coded Signal
Time-Synchonized Sampling Service Layer
Ranging Layer
Detection Algorithm
Select Code
Detection Algorithm
ltRange, ?, ?gt
ltCode, Detect Timegt
ltCode, Detect Timegt
Time Sync Control Traffic
Trigger
Multi-hop Network Layer
ltRange, ?, ?gt
ltX, Y, Z, ?gt
Trigger
Multilateration Layer
49
Filtering and Correlation Stage
  • Time conversion and sampling services abstract
    application from synchronization details
  • Correlation
  • Generate reference signal from PN code index
  • Correlate against the incoming signal

50
Correlation
  • Signal detection via matched filter constructed
    from PN code
  • Observed signal S is convolved with the reference
    signal
  • Peaks in resulting correlation function
    correspond to arrivals
  • Earliest peak is most direct path

51
Detection Stage
  • Want to detect first peak above noise floor
  • Locate peak region later refine detection
  • Noise floor is time varying and must be estimated
  • Use EWMA to compute running mean and variance
    estimate
  • Define threshold to be a multiple of the standard
    deviation
  • First value over threshold considered peak
  • Interpolation of peak region

52
Zooming in.. 8x Interpolation
  • Sub-sample phase comparison is critical to DOA
    estimation
  • Otherwise, large quantization errors 1 sample
    offset 5
  • Once a peak region is identified
  • Zoom in by interpolating
  • Use Fourier coefficients to expand the signal at
    higher resolution
  • Equivalent to phase shift in FD
  • But enables direct TD processing of correlation
    outputs

53
DOA Estimation and Combining Stage
  • 6-way cross-correlation of correlations ? DOA
    Estimator
  • Filtered signals from each pair of microphones
    are correlated
  • Offset of maximum correlation between pair
    (lag) recorded
  • DOA Estimator uses least squares to fit lags to
    array geometry
  • Key Resilient to perturbations in microphone
    placement
  • DOA estimate used to recombine signals to improve
    SNR
  • Final peak detection yields range estimate
Write a Comment
User Comments (0)
About PowerShow.com