| | |
| | import inspect |
| |
|
| | from mmengine.logging import print_log |
| |
|
| |
|
| | def get_caller_name(): |
| | """Get name of caller method.""" |
| | |
| | |
| | caller_frame = inspect.stack()[2][0] |
| | caller_method = caller_frame.f_code.co_name |
| | try: |
| | caller_class = caller_frame.f_locals['self'].__class__.__name__ |
| | return f'{caller_class}.{caller_method}' |
| | except KeyError: |
| | return caller_method |
| |
|
| |
|
| | def log_img_scale(img_scale, shape_order='hw', skip_square=False): |
| | """Log image size. |
| | |
| | Args: |
| | img_scale (tuple): Image size to be logged. |
| | shape_order (str, optional): The order of image shape. |
| | 'hw' for (height, width) and 'wh' for (width, height). |
| | Defaults to 'hw'. |
| | skip_square (bool, optional): Whether to skip logging for square |
| | img_scale. Defaults to False. |
| | |
| | Returns: |
| | bool: Whether to have done logging. |
| | """ |
| | if shape_order == 'hw': |
| | height, width = img_scale |
| | elif shape_order == 'wh': |
| | width, height = img_scale |
| | else: |
| | raise ValueError(f'Invalid shape_order {shape_order}.') |
| |
|
| | if skip_square and (height == width): |
| | return False |
| |
|
| | caller = get_caller_name() |
| | print_log( |
| | f'image shape: height={height}, width={width} in {caller}', |
| | logger='current') |
| |
|
| | return True |
| |
|