Class CommonParameters
Common parameters needed from a config file to detect components.
Each generic acoustic event algorithm shares these common parameters.
Don't use CommonParameters
directly, use one of the algorithm parameter types.
Spectrogram Parameters
For an explanation of these parameters see Spectrograms.
Bounding parameters
MinHertz
and MaxHertz
define the frequency band in which a search is to be made for the target event. Note that
these parameters define the bounds of the search band not the bounds of the event itself.
MinDuration
and MaxDuration
set the minimum and maximum time duration (in seconds) of the target event.
Each of these limits are are hard bounds.
Decibel thresholds
DecibelThresholds
is an array of numbers that represent activity thresholds.
If a candidate event is above a threshold it be reported as an event.
Multiple thresholds can be used to cater for similar events that vary in intensity.
# Scan the frequency band at these thresholds
DecibelThresholds:
- 6.0
- 9.0
- 12.0
Inheritance
Implements
Inherited Members
Namespace: AnalysisPrograms.Recognizers.Base
Assembly: AudioAnalysisTools.dll
Syntax
public abstract class CommonParameters : IValidatableObject
Properties
| Improve this Doc View SourceBgNoiseThreshold
Gets or sets the threshold in decibels which determines signal over background noise.
Declaration
public double? BgNoiseThreshold { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Double> |
BottomHertzBuffer
Gets or sets the buffer (bandwidth of silence) below the component rectangle. Units are Hertz.
Declaration
public int? BottomHertzBuffer { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> |
DecibelThresholds
Gets or sets an array of decibel thresholds. Each threshold determines the minimum "loudness" of an event that can be detected. Units are decibels.
Declaration
public double? [] DecibelThresholds { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Double>[] |
FrameSize
Gets or sets the frame or Window size, i.e. number of signal samples. Must be power of 2. Typically 512
.
Declaration
public int? FrameSize { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> | The size of the window (frame) in samples. |
FrameStep
Gets or sets the frame or Window step i.e. before start of next frame. The overlap can be any number of samples but less than FrameSize.
Declaration
public int? FrameStep { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> | The size of the window step in samples. |
MaxDuration
Gets or sets the maximum allowed duration of the component. Units are seconds.
Declaration
public double? MaxDuration { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Double> |
MaxHertz
Gets or sets the the top bound of a search band. Units are Hertz. A search band is the frequency band within which an algorithm searches for a particular track or event.
Declaration
public int? MaxHertz { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> |
MinDuration
Gets or sets the minimum allowed duration of the component. Units are seconds.
Declaration
public double? MinDuration { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Double> |
MinHertz
Gets or sets the bottom bound of a search band. Units are Hertz. A search band is the frequency band within which an algorithm searches for a particular track or event. This is to be carefully distinguished from the top and bottom bounds of a specific event. A search band consists of two parallel lines/freqeuncy bins. An event is represented by a rectangle. Events will/should always lie within a search band. There may be exception in edge cases, i.e. where an event sits on a search bound.
Declaration
public int? MinHertz { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> |
NoiseReductionType
The type of noise reduction to use. Defaults to Standard.
Declaration
public NoiseReductionType? NoiseReductionType { get; set; }
Property Value
Type | Description |
---|---|
Nullable<NoiseReductionType> | One of the NoiseReductionType values. |
SpeciesName
Gets or sets the name species name to give to a component. Leave blank if you're don't want an event to have a species name.
Declaration
public string SpeciesName { get; set; }
Property Value
Type | Description |
---|---|
String |
TopHertzBuffer
Gets or sets the buffer (bandwidth of silence) above the component rectangle. Units are Hertz.
Quite often this will be set to
Declaration
public int? TopHertzBuffer { get; set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> |
WindowFunction
Gets or sets the windowing function used in conjunction with the FFT when making spectrogram. This can have quite an impact in some cases so it is worth giving user the option. The default is a HANNING window.
Declaration
public WindowFunctions? WindowFunction { get; set; }
Property Value
Type | Description |
---|---|
Nullable<WindowFunctions> |
Methods
| Improve this Doc View SourceValidate(ValidationContext)
Declaration
public virtual IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
Parameters
Type | Name | Description |
---|---|---|
ValidationContext | validationContext |
Returns
Type | Description |
---|---|
IEnumerable<ValidationResult> |