Skip to content

MaskSharpPlugin

Sharpening plugin for segmentation mask

Applies a smart sharpening filter on a segmentation mask. This plugin may significantly increase accuracy of a mask. Plugin depends on MaskUploadPlugin that must be attached to the renderer to upload mask buffer in texture. It may be combined with other mask post-processing plugins. Order in which operation on mask are applied corresponds to the order in which plugins are attached to the renderer.

Extends

Constructors

new MaskSharpPlugin()

new MaskSharpPlugin(radius, size): MaskSharpPlugin

Constructor

Parameters

radius: number = 8

Filter radius

size: Size = ...

Size of segmentation mask

Returns

MaskSharpPlugin

Overrides

Plugin.constructor

Properties

loaded

loaded: boolean

Loaded state

Inherited from

Plugin.loaded


ordinal

ordinal: number

Ordinal number

Inherited from

Plugin.ordinal


radius

protected radius: number = 8

Filter radius


renderer?

protected optional renderer: Renderer<SegmentationResult>

Renderer loaded the plugin

Inherited from

Plugin.renderer


size

protected size: Size

Size of segmentation mask

Methods

dispose()

dispose(): void

Dispose video plugin

Returns

void

Inherited from

Plugin.dispose


load()

load(renderer): Promise<void>

Initialize plugin

Initializes sharpening shader program.

Parameters

renderer: Renderer<SegmentationResult>

Renderer this plugin is attached to

Returns

Promise<void>

Promise resolving when initialization is finished

Overrides

Plugin.load


setupCamera()

setupCamera(ratio, angle): void

Set camera parameters

Could be overridden to adjust plugin’s pipeline.

Parameters

ratio: number

Aspect ration of input video

angle: number

Vertical field of view in radians

Returns

void

Inherited from

Plugin.setupCamera


setupVideo()

setupVideo(size): void

Set video size

Could be overridden to adjust plugin’s pipeline.

Parameters

size: Size

Resolution of input video

Returns

void

Inherited from

Plugin.setupVideo


unload()

unload(): void

Reset plugin

Releases all resources initialized in load().

Returns

void

Overrides

Plugin.unload


update()

update(result, stream): Promise<void>

Update segmentation masks

Updates segmentation mask applying sharpening filter. Replaces maskTex of tracks with the updated mask.

Parameters

result: SegmentationResult

Results of video processing

stream: HTMLCanvasElement

Captured video frame

Returns

Promise<void>

Overrides

Plugin.update