public class WhistleDelays
extends java.lang.Object
Existing FFT (spectrgram) data is used during the calculation.
The correlation function is calculated for each time partition along the length of the whistle and these correlations summed to overcome the problem of aliassing.
As the correlations are caculated, the spectrum is band limited in each time partition to only include acoustic energy close to the whistle contour. In this way, it is possible to independently calculate bearings to simultaneously occurring overlapping whistles.
Modifier and Type | Field and Description |
---|---|
static int |
INVALID_DELAY |
static int |
NO_CHANNEL_DATA |
Constructor and Description |
---|
WhistleDelays() |
Modifier and Type | Method and Description |
---|---|
static int |
getDelay(PamDataBlock fftDataBlock,
WhistleShape whistle,
int delayChannel)
Calculate the delay.
|
public static final int INVALID_DELAY
public static final int NO_CHANNEL_DATA
public static int getDelay(PamDataBlock fftDataBlock, WhistleShape whistle, int delayChannel)
The whistle knows which channel it was detected on. Tell this functin which channel to calculate the dealy to. If FFT data for that channel does not exist, then return NO_CHANNEL_DATA
fftDataBlock
- PamDataBlock of spectrgram datawhistle
- Whistle contour from the whistle detectordelayChannel
- channel to measure the delay to