Class: MaskSmoothPlugin
@geenee/bodyrenderers-common.MaskSmoothPlugin
Smoothing plugin for segmentation mask
Performs a smoothing convolution on a segmentation mask. Plugin depends on MaskUploadPlugin that must be attached to the renderer to upload mask buffer in texture. One may utilize MaskUpscalePlugin providing higher resolution segmentation mask that significantly increases mask's accuracy. Plugin may be combined with other mask post-processing plugins. Order in which operation on mask are applied is defined by order of plugins' attachment.
Hierarchy
-
↳
MaskSmoothPlugin
Constructors
constructor
• new MaskSmoothPlugin(smooth?
, size?
)
Constructor
Parameters
Name | Type | Default value | Description |
---|---|---|---|
smooth | number | 2.0 | Smoothing strength |
size | Size | undefined | Size of segmentation mask |
Overrides
Properties
loaded
• loaded: boolean
Loaded state
Inherited from
ordinal
• ordinal: number
Ordinal number
Inherited from
renderer
• Protected
Optional
renderer: Renderer
<SegmentationResult
>
Renderer loaded the plugin
Inherited from
size
• Protected
size: Size
Size of segmentation mask
smooth
• Protected
smooth: number
= 2.0
Smoothing strength
Methods
dispose
▸ dispose(): void
Dispose video plugin
Returns
void
Inherited from
load
▸ load(renderer
): Promise
<void
>
Initialize plugin
Initializes smoothing shader programs.
Parameters
Name | Type | Description |
---|---|---|
renderer | Renderer <SegmentationResult > | Renderer this plugin is attached to |
Returns
Promise
<void
>
Promise resolving when initialization is finished
Overrides
setupCamera
▸ setupCamera(ratio
, angle
): void
Set camera parameters
Could be overridden to adjust plugin's pipeline.
Parameters
Name | Type | Description |
---|---|---|
ratio | number | Aspect ration of input video |
angle | number | Vertical field of view in radians |
Returns
void
Inherited from
setupVideo
▸ setupVideo(size
): void
Set video size
Could be overridden to adjust plugin's pipeline.
Parameters
Name | Type | Description |
---|---|---|
size | Size | Resolution of input video |
Returns
void
Inherited from
unload
▸ unload(): void
Reset plugin
Releases all resources initialized in load().
Returns
void
Overrides
update
▸ update(result
, stream
): Promise
<void
>
Update segmentation masks
Updates the mask applying smoothing convolution.
Replaces maskTex
of tracks with the updated mask.
Parameters
Name | Type | Description |
---|---|---|
result | SegmentationResult | Results of video processing |
stream | HTMLCanvasElement | - |
Returns
Promise
<void
>