Class SgramCorrProcess

All Implemented Interfaces:
PamObserver, ProcessAnnotator

public class SgramCorrProcess extends IshDetFnProcess
This implements the spectrogram correlation detector. See Mellinger and Clark, J. Acoust. Soc. Am. 107(6):3518-3529 (2000).
Author:
Dave Mellinger and Hisham Qayum
  • Constructor Details

  • Method Details

    • getLongName

      public String getLongName()
      Specified by:
      getLongName in class IshDetFnProcess
    • getNumberName

      public String getNumberName()
    • inputDataClass

      public Class inputDataClass()
      Specified by:
      inputDataClass in class IshDetFnProcess
    • getDetSampleRate

      public float getDetSampleRate()
      Specified by:
      getDetSampleRate in class IshDetFnProcess
    • makeKernel

      public void makeKernel(SgramCorrParams p, double sRate, double fRate, int gramHeight)
      Create a spectrogram correlation kernel.
      Parameters:
      SgramCorrParams - p -- defines what the kernel is shaped like
      double - sRate -- sample rate
      double - fRate -- frame rate of the spectrogram (slices/s)
      int - gramHeight -- in cells; equal to FFT size / 2
    • getHiFreq

      public float getHiFreq()
      Specified by:
      getHiFreq in class IshDetFnProcess
      Returns:
      the highest frequency of the detection - e.g. sampleRate/2 or the upper bound of the detection kernel
    • getLoFreq

      public float getLoFreq()
      Specified by:
      getLoFreq in class IshDetFnProcess
      Returns:
      the lowest frequency of the detection - e.g. 0 or the lower bound of the detection kernel
    • hat

      public double hat(double x)
      The derivative of the Gaussian function -- i.e., the 'Mexican hat' function -- with mean 0 and variance 1.
    • newData

      public void newData(PamObservable o, PamDataUnit arg1)
      Overrides:
      newData in class PamProcess
    • gramDotProd

      public double gramDotProd(double[][] ker, double[][] gram, int startI)
    • renewPerChannelInfo

      public void renewPerChannelInfo()
    • pamStart

      public void pamStart()
      Description copied from class: PamProcess
      Called for each process to tell it to start (may not be necessary for processes which are listening for data anyway).
      Overrides:
      pamStart in class IshDetFnProcess