Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

#807 Feature/sg 747 add full pipeline with preprocessing

Merged
Ghost merged 1 commits into Deci-AI:master from deci-ai:feature/SG-747-add_full_pipeline_with_preprocessing
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
  1. from typing import Union, Mapping
  2. from omegaconf import ListConfig
  3. from super_gradients.common.factories.base_factory import BaseFactory
  4. from super_gradients.common.factories.list_factory import ListFactory
  5. from super_gradients.common.registry.registry import TRANSFORMS
  6. from super_gradients.common.registry.albumentation import ALBUMENTATIONS_TRANSFORMS, ALBUMENTATIONS_COMP_TRANSFORMS
  7. from super_gradients.common.registry.albumentation import imported_albumentations_failure
  8. from super_gradients.training.transforms.pipeline_adaptors import AlbumentationsAdaptor
  9. class TransformsFactory(BaseFactory):
  10. def __init__(self):
  11. super().__init__(TRANSFORMS)
  12. def get(self, conf: Union[str, dict]):
  13. # SPECIAL HANDLING FOR COMPOSE AND ALBUMENTATIONS
  14. if isinstance(conf, Mapping) and "Albumentations" in conf:
  15. return AlbumentationsAdaptor(AlbumentationsTransformsFactory().get(conf["Albumentations"]))
  16. if isinstance(conf, Mapping) and "Compose" in conf:
  17. conf["Compose"]["transforms"] = ListFactory(TransformsFactory()).get(conf["Compose"]["transforms"])
  18. elif isinstance(conf, (list, ListConfig)):
  19. conf = ListFactory(TransformsFactory()).get(conf)
  20. return super().get(conf)
  21. class AlbumentationsTransformsFactory(BaseFactory):
  22. def __init__(self):
  23. if imported_albumentations_failure:
  24. raise imported_albumentations_failure
  25. super().__init__(ALBUMENTATIONS_TRANSFORMS)
  26. def get(self, conf: Union[str, dict]):
  27. if isinstance(conf, Mapping):
  28. _type = list(conf.keys())[0] # THE TYPE NAME
  29. if _type in ALBUMENTATIONS_COMP_TRANSFORMS:
  30. conf[_type]["transforms"] = ListFactory(AlbumentationsTransformsFactory()).get(conf[_type]["transforms"])
  31. return super(AlbumentationsTransformsFactory, self).get(conf)
Discard
Tip!

Press p or to see the previous file or, n or to see the next file