This is major release, meaning
- only one new transform
- a lot of changes.
- all parameter renaming was moved through deprecations => you got deprecation warning for months
- A few transform have change of default parameters. If you always specify parameters for each augmentations => it will not affect you.
If you have questions or proposals:
- [GitHub issues](https://github.com/albumentations-team/albumentations/issues)
- [Discord](https://discord.gg/AmMnDBdzYs)
If you have complaints:
- Will be happy to see you as one of our sponsors at https://github.com/sponsors/albumentations-team
New transform
[ConstrainedCoarseDropout](https://explore.albumentations.ai/transform/ConstrainedCoarseDropout)
<img width="1224" alt="Screenshot 2025-01-03 at 5 58 27 PM" src="https://github.com/user-attachments/assets/71669a29-fb4d-43a9-9e77-d0746cfdcfb2" />
by vedantdalimkar
Core
- Deleted `always_apply` => use `p=1` to always apply and `p=0` for not applying.
- Deleted `update_params`, `get_params_dependent_on_targets` => use `get_params_dependent_on_data`
Transforms
[GaussNoise](https://explore.albumentations.ai/transform/GaussNoise)
- Deleted: `var_limit`, `mean`
- Use: `std_range`, `mean_range`
It is not just a renaming, `var_limit` and `std_range` sample from different distributions. Sampling from `std_range` matches with other libraries like torchvision.
[AdvancedBlur](https://explore.albumentations.ai/transform/AdvancedBlur)
- Deleted: `sigmaX_limit`, `sigmaY_limit`
- Use: `sigma_x_limit`, `sigma_y_limit`
[RandomCrop](https://explore.albumentations.ai/transform/RandomCrop)
- Deleted `pad_mode`, `pad_val_mask`, `pad_cvl`
- Use: `border_mode`, `fill_mask`, `fill`
[CenterCrop](https://explore.albumentations.ai/transform/CenterCrop)
- Deleted `pad_mode`, `pad_val_mask`, `pad_cvl`
- Use: `border_mode`, `fill_mask`, `fill`
[Crop](https://explore.albumentations.ai/transform/Crop)
- Deleted `pad_mode`, `pad_val_mask`, `pad_cvl`
- Use: `border_mode`, `fill_mask`, `fill`
[RandomResizedCrop](https://explore.albumentations.ai/transform/RandomResizedCrop)
- Deleted: `height`, `width`
- Use: `size`
[RandomSizedCrop](https://explore.albumentations.ai/transform/RandomSizedCrop)
- Deleted: `height`, `width`
- Use: `size`
[RandomCropNearBBox](https://explore.albumentations.ai/transform/RandomCropNearBBox)
- Deleted: `cropping_box_key`
- Use: `cropping_bbox_key`
[CropAndPad](https://explore.albumentations.ai/transform/CropAndPad)
- Deleted: `pad_mode`, `pad_val_mask`, `pad_cvl`
- Use: `border_mode`, `fill_mask`, `fill`
[TemplateTransform](https://explore.albumentations.ai/transform/TemplateTransform)
- Deleted: `template_weight`
[ChannelDropout](https://explore.albumentations.ai/transform/ChannelDropout)
- Deleted: `fill_value`
- Use: `fill`
[CoarseDropout](https://explore.albumentations.ai/transform/CoarseDropout)
- Deleted: `min_holes`, `max_holes`, `min_height`, `max_height`, `min_width`, `max_width`, `mask_fill_value`, `fill_value`
- Use: `num_holes_range`, `hole_height_range`, `hole_width_range`, `fill`, `fill_mask`
Also default parameters changed:
`num_height_range = (8, 8)` => `num_height_range = (0.1, 0.2)`
`num_width_range = (8, 8)` => `num_width_range = (0.1, 0.2)`
[GridDropout](https://explore.albumentations.ai/transform/GridDropout)
- Deleted: `unit_size_min`, `unit_size_max`, `holes_number_x`, `holes_number_y`, `shift_x`, `shift_y`, `fill_value`, `mask_fill_value`
- Use: `unit_size_range`, `holes_number_xy`, `fill`, `fill_mask`
[MaskDropout](https://explore.albumentations.ai/transform/MaskDropout)
- Deleted: `image_fill_value`, `mask_fill_value`
- Use: `fill`, `fill_mask`
[XYMasking](https://explore.albumentations.ai/transform/XYMasking)
- Deleted: `mask_fill_value`, `fill_value`
- Use: `fill`, `fill_mask`
[Rotate](https://explore.albumentations.ai/transform/Rotate)
- Deleted: `value`, `mask_value`
- Use: `fill`, `fill_mask`
Changed default value for border_mode from `cv2.BORDER_REFLECT_101` to `cv2.BORDER_CONSTANT`
[SafeRotate](https://explore.albumentations.ai/transform/SafeRotate)
- Deleted: `value`, `mask_value`
- Use: `fill`, `fill_mask`
Changed default value for border_mode from `cv2.BORDER_REFLECT_101` to `cv2.BORDER_CONSTANT`
[ElasticTransform](https://explore.albumentations.ai/transform/ElasticTransform)
- Deleted: `border_mode`, `value`, `mask_value`
[Perspective](https://explore.albumentations.ai/transform/Perspective)
- Deleted: `pad_mode`, `pad_val`, `mask_pad_val`
[Affine](https://explore.albumentations.ai/transform/Affine)
- Deleted: `cval`, `cval_mask`, `mode`
- Use: `fill`, `fill_mask`, `border_mode`
[ShiftScaleRotate](https://explore.albumentations.ai/transform/ShiftScaleRotate)
- Deleted: `value`, `mask_value`
- Use: `fill`, `fill_mask`
Changed default border_mode from `cv2.BORDER_REFLECT_101` to `cv2.BORDER_CONSTANT`
[PiesewiseAffine](https://explore.albumentations.ai/transform/PiecewiseAffine)
- Deleted: `cval`, `cval_mask`, `mode`, `keypoints_threshold`
[OpticalDistortion](https://explore.albumentations.ai/transform/OpticalDistortion)
- Deleted: `shift_limit`, `value`, `mask_value`, `border_mode`
[GridDistortion](https://explore.albumentations.ai/transform/GridDistortion)
- Deleted: `value`, `mask_value`, `border_mode`
[RandomRotate90](https://explore.albumentations.ai/transform/RandomRotate90)
Changed default probability from `p=0.5` to `p=1`
[PadIfNeeded](https://explore.albumentations.ai/transform/PadIfNeeded)
- Deleted: `value`, `mask_value`
- Use: `fill`, `fill_mask`
Changed default value for `border_mode` from `cv2.BORDER_REFLECT_101` to `cv2.BORDER_CONSTANT`
[ImageCompression](https://explore.albumentations.ai/transform/ImageCompression)
- Deleted: `quality_lower`, `quality_upper`
- Use: `quality_range`
[RandomSnow](https://explore.albumentations.ai/transform/RandomSnow)
- Deleted: `snow_point_lower`, `snow_point_upper`
- Use: `snow_point_range`
[RandomRain](https://explore.albumentations.ai/transform/RandomRain)
- Deleted: `slant_lower`, `slant_upper`
- Use: `slant_range`
[RandomFog](https://explore.albumentations.ai/transform/RandomFog)
- Deleted: `fog_coef_lower`, `fog_coef_upper`
- Use: `fog_coef_range`
[RandomSunFlare](https://explore.albumentations.ai/transform/RandomSunFlare)
- Deleted: `angle_lower`, `angle_upper`, `num_flare_circles_lower`, `num_flare_circles_upper`
- Use: `num_flare_circles_range`, `angle_range`
[RandomShadow](https://explore.albumentations.ai/transform/RandomShadow)
- Deleted: `num_shadows_lower`, `num_shadows_upper`
- Use: `num_shadows_limit`
[Solarize](https://explore.albumentations.ai/transform/Solarize)
- Deleted: `threshold`
- Use: `threshold_range`
[Downscale](https://explore.albumentations.ai/transform/Downscale)
- Deleted `interpolation`, `scale_min`, `scale_max`
- Use: `interpolation_pair`, `scale_range`
by ternaus
Small improvements
- Fixed links in readme by guspan-tanadi
- Better bounding box processing in Dropouts