name
(string): Literal string describing the Python class to instantiate and define the watcher's behavior (e.g 'NeuralNetworkClassifier'
, 'MovementBasedSegmenter'
etc.).shape
(Object): Plain object with two properties, type
and shape
that defines the surface area for the watcher.type
(string): Defines shape type, and controls what the expected structure of shape.data
will be. Accepted values:'rectangle'
'polygon'
data
(Object): Actual descriptor object for the contour of the watcher.shape.type
is 'rectangle'
, the expected data structure is:posX
(number): top left X coordinate of rectangleposY
(number): top left Y coordinate of rectanglewidth
(number)height
(number)shape.type
is 'polygon'
, a list of points is expected, with each point having the following data structure:x
(number): X coordinate of pointy
(number): Y coordinate of pointonClassification
(Function): Callback used by Lampix to send information about recognized objects as a list with with recognized objects of the following structure:classTag
(string): Recognized class of the described object.objectId?
(number, Optional): ID representing the object. Useful when determining whether Lampix considers an object as new.outline?
(Array, Optional): Object with a property of points
that describes the contour of the object as a polygon:metadata?
(string, Optional): Watcher specific informationonLocation
(Function): Callback used only by watchers that locate first, then classify. Called with a list of located objects that with a similar structure to the one above, except classTag
is not mentioned since it has not been determined at the time of this call.params?
(Object): Plain object with arbitrary props that can differ from watcher to watcher. See standard watchers​classTag
. Certain watchers that do not support more than one object at a time (e.g NeuralNetworkClassifier
), will always provide a list with one recognized object that only has the classTag
property. This is by design, to ensure consistency in the data format returned by the standard watchers.shape: lampix.helpers.rectangle(0, 0, window.innerWidth, window.innerHeight)
to achieve the same result.