Ë
    ëÓ^jæ  ã            
       óª   — d Z dddiiZddiddddœdœZddiddiddd	œd
dddddœddddddœdœZddiddiddd	œddddœdœZddiddddœdddœdddœdœZy)uÂ  Augmentation presets and default configuration for RF-DETR training.

Import a preset and pass it as ``aug_config`` to your training call:

```python
from rfdetr.datasets.aug_configs import AUG_CONSERVATIVE, AUG_AGGRESSIVE, AUG_AERIAL, AUG_INDUSTRIAL

model.train(dataset_dir="...", aug_config=AUG_CONSERVATIVE) model.train(dataset_dir="...", aug_config=AUG_AGGRESSIVE)

# Disable all augmentations
model.train(dataset_dir="...", aug_config={})

# Fully custom
model.train(dataset_dir="...", aug_config={"HorizontalFlip": {"p": 0.5}})
```

## Available presets

| Preset         | Best for                                         |
| -------------- | ------------------------------------------------ |
| ``AUG_CONSERVATIVE``  | Small datasets (under 500 images)             |
| ``AUG_AGGRESSIVE``    | Large datasets (2000+ images)                 |
| ``AUG_AERIAL``        | Satellite / overhead imagery                  |
| ``AUG_INDUSTRIAL``    | Manufacturing / inspection data               |

## Transform Categories

**Geometric transforms** (automatically transform bounding boxes):
- Flips: HorizontalFlip, VerticalFlip
- Rotations: Rotate, Affine, ShiftScaleRotate
- Crops: RandomCrop, CenterCrop, RandomResizedCrop
- Perspective: Perspective, ElasticTransform, GridDistortion

**Pixel-level transforms** (preserve bounding boxes):
- Color: ColorJitter, HueSaturationValue, RandomBrightnessContrast
- Blur/Noise: GaussianBlur, GaussNoise, Blur
- Enhancement: CLAHE, Sharpen, Equalize

## Best Practices

1. **Start conservative**: Use moderate probabilities (p=0.3-0.5) and small parameter ranges
2. **Geometric caution**: Extreme rotations (>45Â°) or crops may remove too many boxes
3. **Performance**: Fewer transforms = faster training; prioritize transforms that match your domain
4. **Validation**: Monitor validation mAP - excessive augmentation can hurt performance
5. **Domain-specific**: Enable augmentations that reflect real-world variations in your data

## Adding Custom Transforms

For geometric transforms not in GEOMETRIC_TRANSFORMS set, add them in transforms.py:

```python
GEOMETRIC_TRANSFORMS = {
    ...
    "YourCustomTransform",  # Add here
}
```

## Kornia GPU Backend

When ``augmentation_backend="auto"`` or ``"gpu"`` is set in ``TrainConfig``, augmentations run on the GPU via Kornia
instead of Albumentations.

**Supported transforms** (all presets):

| Preset key | Kornia equivalent | Notes |
|---|---|---|
| ``HorizontalFlip`` | ``K.RandomHorizontalFlip`` | Direct |
| ``VerticalFlip`` | ``K.RandomVerticalFlip`` | Direct |
| ``Rotate`` | ``K.RandomRotation`` | ``limit`` may be scalar or tuple |
| ``Affine`` | ``K.RandomAffine`` | ``translate_percent`` treated as fraction |
| ``ColorJitter`` | ``K.ColorJiggle`` | Same multiplicative semantics |
| ``RandomBrightnessContrast`` | ``K.ColorJiggle`` | ``brightness_limit`` / ``contrast_limit`` direct |
| ``GaussianBlur`` | ``K.RandomGaussianBlur`` | ``blur_limit`` rounded up to odd; ``sigma=(0.1, 2.0)`` |
| ``GaussNoise`` | ``K.RandomGaussianNoise`` | Upper bound of ``std_range`` used as fixed std |

**Phase 1 limitation**: Segmentation models (``segmentation_head=True``) skip GPU augmentation; CPU Albumentations are
used instead. Mask support is planned for Phase 2.
ÚHorizontalFlipÚpg      à?çš™™™™™¹?g333333Ó?)Úbrightness_limitÚcontrast_limitr   )r   ÚRandomBrightnessContrasté-   )Úlimitr   )gš™™™™™é?g333333ó?)gš™™™™™¹¿r   )iñÿÿÿé   )éûÿÿÿé   )ÚscaleÚtranslate_percentÚrotateÚshearr   gš™™™™™É?)Ú
brightnessÚcontrastÚ
saturationÚhuer   )r   ÚVerticalFlipÚRotateÚAffineÚColorJitter)éZ   r   g333333Ã?gš™™™™™Ù?)r   r   r   r   é   )Ú
blur_limitr   )g{®Gáz„?gš™™™™™©?)Ú	std_ranger   )r   r   ÚGaussianBlurÚ
GaussNoiseN)Ú__doc__Ú
AUG_CONFIGÚAUG_CONSERVATIVEÚAUG_AGGRESSIVEÚ
AUG_AERIALÚAUG_INDUSTRIAL© ó    úf/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/rfdetr/datasets/aug_configs.pyú<module>r(      sã   ðñMðh �s˜C�jð€
ð ˜C�jàØØñ!ñÐ ð ˜C�jØ˜#�JØ Ñ%àØ(ØØØñð ØØØØññ€ð, ˜C�jØ˜#�JØ  sÑ+à ØØñ!ñ		€
ð ˜C�jàØØñ!ð
 $%¨3Ñ/Ø ,°3Ñ7ñ	�r&   