|
|
|
|
|
|
|
|
|
from detectron2.structures import BitMasks, Instances
|
|
|
|
from densepose.converters import ToMaskConverter
|
|
|
|
|
|
class MaskFromDensePoseSampler:
|
|
"""
|
|
Produce mask GT from DensePose predictions
|
|
This sampler simply converts DensePose predictions to BitMasks
|
|
that a contain a bool tensor of the size of the input image
|
|
"""
|
|
|
|
def __call__(self, instances: Instances) -> BitMasks:
|
|
"""
|
|
Converts predicted data from `instances` into the GT mask data
|
|
|
|
Args:
|
|
instances (Instances): predicted results, expected to have `pred_densepose` field
|
|
|
|
Returns:
|
|
Boolean Tensor of the size of the input image that has non-zero
|
|
values at pixels that are estimated to belong to the detected object
|
|
"""
|
|
return ToMaskConverter.convert(
|
|
instances.pred_densepose, instances.pred_boxes, instances.image_size
|
|
)
|
|
|