MultiColourThreshold

A processor that applies multiple ColourThreshold processors to the same frame and combines their draw results. The MASK variable can be used to select which processor's mask is drawn to the frame.

Author

Lucas Bubner, 2024

Since

1.0.0-pre

See also

Constructors

Link copied to clipboard
constructor(thresholdProcessors: Array<ColourThreshold>)
Create a new MultiColourThreshold with the given processors.

Properties

Link copied to clipboard
open var MASK: Int
The index of the processor mask to draw to the frame.

Inherited properties

Link copied to clipboard
protected open val cameraDimensions: Size
Link copied to clipboard
protected val data: List<T>
List of all vision data detected since the last stateful update
Link copied to clipboard
open var isFlipped: Boolean
Link copied to clipboard
open val isRunning: Boolean

Functions

Link copied to clipboard
protected open fun onAttach()
Override this method to run any additional code that will be executed when this processor is attached (via init()) by a Vision instance.
Link copied to clipboard
protected open fun onFrameDraw(canvas: Canvas)
Called by the vision system to draw on the frame.
Link copied to clipboard
protected open fun onProcessFrame(frame: Mat, captureTimeNanos: Long)
Called by the vision system to process a frame
Link copied to clipboard
open fun toString(): String
Unique identifier for the processor.
Link copied to clipboard
protected open fun update()
Called to update new data from the vision system, which involves interpreting, collecting, or otherwise processing new vision data per frame.

Inherited functions

Link copied to clipboard
open fun clearData()
Manually clear the data list.
Link copied to clipboard
open fun delegate(@NonNull delegateTo: Processor)
Delegate this processor to another processor.
Link copied to clipboard
open fun getData(): ArrayList<T>
Get the list of vision data.
Link copied to clipboard
abstract fun getFrameBitmap(p: Continuation<out Consumer<Bitmap>>)
open fun getFrameBitmap(continuation: Continuation<out Consumer<Bitmap>>)
Link copied to clipboard
abstract fun init(p: Int, p1: Int, p2: CameraCalibration)
open fun init(width: Int, height: Int, calibration: CameraCalibration)
Link copied to clipboard
open fun isAttached(): Boolean
Determine whether the processor is attached to a Vision instance.
Link copied to clipboard
abstract fun onDrawFrame(p: Canvas, p1: Int, p2: Int, p3: Float, p4: Float, p5: Any)

fun onDrawFrame(canvas: Canvas, onscreenWidth: Int, onscreenHeight: Int, scaleBmpPxToCanvasPx: Float, scaleCanvasDensity: Float, userContext: Any)
Use onFrameDraw instead, which passes a canvas.
Link copied to clipboard
protected open fun onRunning()
Override this method to run any additional code that will be executed when this processor starts streaming (via start()) on a Vision instance.
Link copied to clipboard
abstract fun processFrame(p: Mat, p1: Long): Any
fun processFrame(f: Mat, captureTimeNanos: Long): Any