Skip to content

← diagnostics package

ChannelQualityClassification

This node inputs several other nodes, such as LineNoise, CorrelationMetric and HighFrequencyNoise, with provided classification cutoff values to threshold each metric and provide a final weighted "Bad Channel Classification" signal quality metric displayed as a single topoplot and/or output data packet as classification values 1, 2, or 3 (good, ok, bad).

In the Bad Channel Classification, each channel is marked as "good" (1, green), "acceptable" (2, yellow), or "bad" (3, red). The final computed classification is also output via DataPorts, i.e., to wire into LSLOutput nodes for visualization elsewhere or into into TopoPlot node(s) for more control over the plot displays or to display only certain metrics only (in which case you should set no_plots=True). You should usually use a highpass filter (using FIRFilter) at 0.5 or 1 Hz before this node. Version 0.0.1

Ports/Properties

criteria1

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria1
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in1

Input 1.

  • verbose name: In1
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria2

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria2
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in2

Input 2.

  • verbose name: In2
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria3

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria3
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in3

Input 3.

  • verbose name: In3
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria4

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria4
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in4

Input 4.

  • verbose name: In4
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria5

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria5
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in5

Input 5.

  • verbose name: In5
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria6

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria6
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in6

Input 6.

  • verbose name: In6
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria7

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria7
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in7

Input 7.

  • verbose name: In7
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria8

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria8
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in8

Input 8.

  • verbose name: In8
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

criteria9

Two value list of cutoff ranges. values below cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values above cutoff2 are 'bad'. If cutoff values are given in decreasing order: values above cutoff1 are 'good', values between cutoff1 and cutoff2 are 'ok', values below cutoff2 are 'bad'.

  • verbose name: Criteria9
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

in9

Input 9.

  • verbose name: In9
  • default value: None
  • port type: DataPort
  • value type: object (can be None)
  • data direction: IN

classification_data

Classification data output. 1=good, 2=ok, 3=bad.

  • verbose name: Classification Data
  • default value: None
  • port type: DataPort
  • value type: Packet (can be None)
  • data direction: OUT

weights

List of relative weight values to assign to each input metric. The order of the values must align with the order of the data inputs. These values will be used to compute a weighted sum for each metric to overall determine the final good/ok/bad classification. If empty, equal weights for all metrics will be applied.

  • verbose name: Weights
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

condition

Not yet implemented

  • verbose name: Condition
  • default value:
  • port type: StringPort
  • value type: str (can be None)

no_plots

Do not show plot.

  • verbose name: No Plots
  • default value: False
  • port type: BoolPort
  • value type: bool (can be None)

initial_dims_bc

Initial position of the plot window on the monitor, in pixels, as [x, y, width, height]. If x, y are set to 0 the plot window will appear in the top left corner of the screen.

  • verbose name: Bad Channel Plot
  • default value: [50, 50, 500, 400]
  • port type: ListPort
  • value type: list (can be None)

always_on_top

Plot window should be always appear on top of other windows.

  • verbose name: Always On Top
  • default value: True
  • port type: BoolPort
  • value type: bool (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)