The customized data transformation must inherited from BaseTransform
and implement transform
function. Here we use a simple flipping transformation as example:
import random import mmcv from mmcv.transforms import BaseTransform, TRANSFORMS @TRANSFORMS.register_module() class MyFlip(BaseTransform): def __init__(self, direction: str): super().__init__() self.direction = direction def transform(self, results: dict) -> dict: img = results['img'] results['img'] = mmcv.imflip(img, direction=self.direction) return results
Moreover, import the new class.
from .my_pipeline import MyFlip
Thus, we can instantiate a MyFlip
object and use it to process the data dict.
import numpy as np transform = MyFlip(direction='horizontal') data_dict = {'img': np.random.rand(224, 224, 3)} data_dict = transform(data_dict) processed_img = data_dict['img']
Or, we can use MyFlip
transformation in data pipeline in our config file.
pipeline = [ ... dict(type='MyFlip', direction='horizontal'), ... ]
Note that if you want to use MyFlip
in config, you must ensure the file containing MyFlip
is imported during runtime.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4