You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
3.2 KiB
52 lines
3.2 KiB
3 years ago
|
# 数据增强
|
||
|
|
||
|
PaddleRS将多种任务需要的数据增强进行了有机整合,均通过`Compose`进行使用,数据读取方面通过`ImgDecoder`可以对不只三通道RGB图像进行读取,还可以对SAR以及多通道图像进行读取,提供有转为`uint8`的选项。此外提供以下数据增强的方法。
|
||
|
|
||
|
| 数据增强名称 | 用途 | 任务 | ... |
|
||
|
| -------------------- | ----------------------------------------------- | -------- | ---- |
|
||
|
| Resize | 调整输入大小 | 所有 | ... |
|
||
|
| RandomResize | 随机调整输入大小 | 所有 | ... |
|
||
|
| ResizeByShort | 调整输入大小,保持纵横比不变 | 所有 | ... |
|
||
|
| RandomResizeByShort | 随机调整输入大小,保持纵横比不变 | 所有 | ... |
|
||
|
| ResizeByLong | 调整输入大小,保持纵横比不变 | 所有 | ... |
|
||
|
| RandomHorizontalFlip | 随机水平翻转输入 | 所有 | ... |
|
||
|
| RandomVerticalFlip | 随机竖直翻转输入 | 所有 | ... |
|
||
|
| Normalize | 对输入中的图像应用最小-最大标准化 | 所有 | ... |
|
||
|
| CenterCrop | 对输入进行中心裁剪 | 所有 | ... |
|
||
|
| RandomCrop | 对输入进行随机中心裁剪 | 所有 | ... |
|
||
|
| RandomScaleAspect | 裁剪输入并重新调整大小至原始大小 | 所有 | ... |
|
||
|
| RandomExpand | 通过根据随机偏移填充来随机扩展输入 | 所有 | ... |
|
||
|
| Padding | 将输入填充到指定的大小 | 所有 | ... |
|
||
|
| MixupImage | 将两张图片和它们的`gt_bbbox/gt_score`混合在一起 | 目标检测 | ... |
|
||
|
| RandomDistort | 对输入进行随机色彩变换 | 所有 | ... |
|
||
|
| RandomBlur | 对输入进行随机模糊 | 所有 | ... |
|
||
|
| Defogging | 对输入图像进行去雾 | 所有 | ... |
|
||
|
| DimReducing | 对输入图像进行降维 | 所有 | ... |
|
||
|
| BandSelecting | 选择输入图像的波段 | 所有 | ... |
|
||
|
| RandomSwap | 随机交换两个输入图像 | 变化检测 | ... |
|
||
|
| ... | ... | | ... |
|
||
|
|
||
|
## 如何使用
|
||
|
|
||
|
以变化检测任务为例,其余任务的使用方法与此类似。
|
||
|
|
||
|
```python
|
||
|
import paddlers.transforms as T
|
||
|
from paddlers.datasets import CDDataset
|
||
|
|
||
|
|
||
|
train_transforms = T.Compose([
|
||
|
T.Resize(target_size=512),
|
||
|
T.RandomHorizontalFlip(),
|
||
|
T.Normalize(
|
||
|
mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),
|
||
|
])
|
||
|
|
||
|
train_dataset = CDDataset(
|
||
|
data_dir='xxx/xxx',
|
||
|
file_list='xxx/train_list.txt',
|
||
|
label_list='xxx/labels.txt',
|
||
|
transforms=train_transforms,
|
||
|
shuffle=True)
|
||
|
```
|