Technologieaustausch

Daten-(Bild-)Erweiterung

2024-07-12

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

1. Datenverbesserung

1. Fügen Sie einen vorhandenen Datensatz hinzu, um mehr Vielfalt zu bieten, z. B. durch das Hinzufügen unterschiedlicher Hintergrundgeräusche und das Ändern der Farbe und Form des Bildes.

2. Erweiterte Daten werden online generiert

3. Erweiterungstyp:

(1) Umdrehen

(2) Schneiden

(3) Farbe

(4) Schärfen Sie und fügen Sie Punkte hinzu

2. Zusammenfassung

1. Durch die Datenerweiterung wird Diversität durch die Verformung der Daten erreicht, wodurch das Modell besser verallgemeinerbar wird.

2. Zu den üblichen Bildverbesserungen gehören Spiegeln, Ausschneiden und Verfärben

3. Ändern Sie einfach den Datensatz

4. Um während des Vorhersageprozesses genaue Ergebnisse zu erhalten, führen wir normalerweise nur eine Bildvergrößerung an den Trainingsmustern durch und verwenden während des Vorhersageprozesses keine Bildvergrößerung mit Zufallsoperationen.

5. Das Deep-Learning-Framework bietet viele verschiedene Bildvergrößerungsmethoden, die gleichzeitig angewendet werden können.

3. Code

1. Augmentationsmethodeaug

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. Umdrehen

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

3. Schneiden

#面积为原始面积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. Helligkeit

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

5. Farbton

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

Helligkeit(brightness), Kontrast (contrast),Sättigung(saturation) und Farbton (hue

6. Mischen

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