Compartir tecnología

Aumento de datos (imagen)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1. Mejora de datos

1. Agregue un conjunto de datos existente para brindar más diversidad, como agregar diferentes ruidos de fondo y cambiar el color y la forma de la imagen.

2. Los datos mejorados se generan en línea

3. Tipo de mejora:

(1) Voltear

(2) corte

(3) Color

(4) Afilar y agregar puntos

2. Resumen

1. El aumento de datos obtiene diversidad al deformar los datos, lo que hace que el modelo sea más generalizable.

2. Las mejoras comunes en las imágenes incluyen voltear, cortar y decolorar.

3. Simplemente cambie el conjunto de datos.

4. Para obtener resultados precisos durante el proceso de predicción, generalmente solo realizamos un aumento de imagen en las muestras de entrenamiento y no utilizamos el aumento de imagen con operaciones aleatorias durante el proceso de predicción.

5. El marco de aprendizaje profundo proporciona muchos métodos diferentes de aumento de imágenes, que se pueden aplicar simultáneamente.

3. Código

1. Método de aumentoaug

def apply(img, aug, num_rows=2, num_cols=4, scale=1.5):
    Y = [aug(img) for _ in range(num_rows * num_cols)]
    d2l.show_images(Y, num_rows, num_cols, scale=scale)

2. Voltear

apply(img, torchvision.transforms.RandomHorizontalFlip())
apply(img, torchvision.transforms.RandomVerticalFlip())

3. Cortar

#面积为原始面积10%到100%的区域,宽高比从0.5~2之间随机取值
shape_aug = torchvision.transforms.RandomResizedCrop(
    (200, 200), scale=(0.1, 1), ratio=(0.5, 2))
apply(img, shape_aug)

4. Brillo

apply(img, torchvision.transforms.ColorJitter(
    brightness=0.5, contrast=0, saturation=0, hue=0))

5. Tono de color

apply(img, torchvision.transforms.ColorJitter(
    brightness=0, contrast=0, saturation=0, hue=0.5))

brillo(brightness), contraste (contrast),saturación(saturation) y tono (hue

6. Mezclar

augs = torchvision.transforms.Compose([
    torchvision.transforms.RandomHorizontalFlip(), color_aug, shape_aug])
apply(img, augs)