DetectLineNoise¶
Detects the line noise (mains) frequency of raw signal data, as a float.
Sets a stream property named mains_frequency to this value, and outputs the value through a port by the same name. Outputs a second port with a list of four values that include the falloff range and peak width of the mains frequency, which can, be wired into to a bandpass filter node (i.e., IIR Filter or FIR Filter), to remove line noise with a notch filter. Important: If using this node on streaming data, you must use the AccumulateCalibrationData node, or another buffering node, upstream create a buffer of several seconds of data from which to detect the line noise.
Version 1.1.2
Ports/Properties¶
data¶
Data to process.
- verbose name: Data
- default value: None
- port type: DataPort
- value type: Packet (can be None)
- data direction: INOUT
bandpass_list¶
Creates a list of values to be passed into a bandpass filter node, including peak width and falloff range values.
- verbose name: Bandpass List
- default value: None
- port type: DataPort
- value type: list (can be None)
- data direction: OUT
mains_frequency¶
The frequency of the detected line noise, as a float.
- verbose name: Mains Frequency
- default value: None
- port type: DataPort
- value type: float (can be None)
- data direction: OUT
verbose¶
Set to false to suppress warnings that rereferencing was not performed (no reference data, data is wrong shape, etc.) .
- verbose name: Verbose
- default value: True
- port type: BoolPort
- value type: bool (can be None)
window¶
Type of window function to apply to sub-windows. Different functions have different spectral and temporal localization characteristics. One of the simplest well-behaved windows is the Hann window (the default).
- verbose name: Window Function For Sub-Windows
- default value: hann
- port type: EnumPort
- value type: str (can be None)
detrend¶
Sub-window detrending method. In the Welch method, linear trends or constant offsets can be removed from each window prior to spectral estimation.
- verbose name: Sub-Window Detrending
- default value: off
- port type: EnumPort
- value type: str (can be None)
segment_samples¶
Length of the sub-windows for spectral estimation. This may have to be adjusted for data with high (multi-kilohertz) sampling rates. This node will extract successive windows from the given data of this length, which are overlapped according to the overlap samples parameter. Longer windows will give a higher-resolution spectrum, but at the same time the result will increase the smoothness (i.e., blurriness) along the time axis. The tradeoff between time resolution and frequency resolution that can be adjusted via this parameter is fundamental.
- verbose name: Sub-Window Length (Samples)
- default value: 256
- port type: FloatPort
- value type: float (can be None)
fft_size¶
Length of the FFT used, in samples. Using a higher number will yield a finer stepping along the frequency axis, without a change in frequency or temporal detail (the frequency axis will be correspondingly more smooth to counter the finer stepping). If not given, it defaults to the sub-window length.
- verbose name: Fft Size
- default value: None
- port type: IntPort
- value type: int (can be None)
scaling¶
Scaling of the spectrum. In density mode, the result is divided by the frequency; this yields the power-spectral density, and is the default. However, this will incur a falloff towards higher frequencies which may be addressed separately using the frequency normalization node.
- verbose name: Spectral Scaling Mode
- default value: density
- port type: EnumPort
- value type: str (can be None)
fit_frequency_range¶
Fit the spectra between these frequency ranges to calculate alpha value. Default: all frequencies.
- verbose name: Fit Frequency Range
- default value: None
- port type: ListPort
- value type: list (can be None)
alpha¶
The exponent of 1/f^alpha used in the correction. Set to None to determine the value automatically.
- verbose name: Alpha
- default value: 1.0
- port type: FloatPort
- value type: float (can be None)
frequency_band¶
Provide a plus-minus value to find the main frequency for a range around 50 Hz or 60 Hz. Default value of 0 calculates the PSD value specifically at 50 Hz or 60 Hz.
- verbose name: Frequency Band
- default value: 0
- port type: IntPort
- value type: int (can be None)
left_falloff_range¶
Used for output when connecting to a FIR Filter or IIR Filter node. Specifies the falloff range to the left of the notch.
- verbose name: Left Falloff Range
- default value: 0
- port type: FloatPort
- value type: float (can be None)
right_falloff_range¶
Used for output when connecting to a FIR Filter or IIR Filter node. Specifies the falloff range to the right of the notch.
- verbose name: Right Falloff Range
- default value: 0
- port type: FloatPort
- value type: float (can be None)
peak_width¶
Used for output when connecting to a FIR Filter or IIR Filter node. Specifies the width on either side of the peak to be removed by a bandpass filter.
- verbose name: Peak Width
- default value: 0
- port type: FloatPort
- value type: float (can be None)
set_breakpoint¶
Set a breakpoint on this node. If this is enabled, your debugger (if one is attached) will trigger a breakpoint.
- verbose name: Set Breakpoint (Debug Only)
- default value: False
- port type: BoolPort
- value type: bool (can be None)
metadata¶
User-definable meta-data associated with the node. Usually reserved for technical purposes.
- verbose name: Metadata
- default value: {}
- port type: DictPort
- value type: dict (can be None)