|
|
|
|
|
from typing import Any |
|
|
|
from .base import BaseConverter |
|
|
|
|
|
class HFlipConverter(BaseConverter): |
|
""" |
|
Converts various DensePose predictor outputs to DensePose results. |
|
Each DensePose predictor output type has to register its convertion strategy. |
|
""" |
|
|
|
registry = {} |
|
dst_type = None |
|
|
|
@classmethod |
|
|
|
|
|
def convert(cls, predictor_outputs: Any, transform_data: Any, *args, **kwargs): |
|
""" |
|
Performs an horizontal flip on DensePose predictor outputs. |
|
Does recursive lookup for base classes, so there's no need |
|
for explicit registration for derived classes. |
|
|
|
Args: |
|
predictor_outputs: DensePose predictor output to be converted to BitMasks |
|
transform_data: Anything useful for the flip |
|
Return: |
|
An instance of the same type as predictor_outputs |
|
""" |
|
return super(HFlipConverter, cls).convert( |
|
predictor_outputs, transform_data, *args, **kwargs |
|
) |
|
|