Class: MaskDilationPlugin
@geenee/bodyrenderers-common.MaskDilationPlugin
Dilation operation plugin for segmentation mask
Performs the dilation operation on a segmentation mask. Dilation is a morphological operations adding pixels to the boundaries of masked objects in an image. The value of the output pixel is maximum value of all pixels in the neighbourhood which radius is a plugin's parameter. 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
-
↳
MaskDilationPlugin
Constructors
constructor
• new MaskDilationPlugin(radius?
, size?
)
Constructor
Parameters
Name | Type | Default value | Description |
---|---|---|---|
radius | number | 1 | Dilation operation radius |
size | Size | undefined | Size of segmentation mask |
Overrides
Properties
loaded
• loaded: boolean
Loaded state
Inherited from
ordinal
• ordinal: number
Ordinal number
Inherited from
radius
• Protected
radius: number
= 1
Dilation operation radius
renderer
• Protected
Optional
renderer: Renderer
<SegmentationResult
>
Renderer loaded the plugin
Inherited from
shader
• Protected
Optional
shader: DilationShader
Dilation shader
size
• Protected
size: Size
Size of segmentation mask
Methods
dispose
▸ dispose(): void
Dispose video plugin
Returns
void
Inherited from
load
▸ load(renderer
): Promise
<void
>
Initialize plugin
Initializes dilation shader program.
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 segmentation mask applying dilation operation.
Replaces maskTex
of tracks with the updated mask.
Parameters
Name | Type | Description |
---|---|---|
result | SegmentationResult | Results of video processing |
stream | HTMLCanvasElement | Current image texture |
Returns
Promise
<void
>