Teilfunktionsakkumulation von Computer Vision

  1. Torchvision.transforms.Compose()
    Es dient dem PyTorch-Deep-Learning-Framework und wird hauptsächlich zum Erstellen von Computer-Vision-Modellen verwendet. Torchvision.transforms wird hauptsächlich für einige gängige Grafiktransformationen verwendet. Das Folgende ist die Zusammensetzung von Torchvision:

(1.torchvision.datasets: Einige Funktionen zum Laden von Daten und häufig verwendete Datensatzschnittstellen;
(2.torchvision.models: Enthält häufig verwendete Modellstrukturen (einschließlich vorab trainierter Modelle) wie AlexNet, VGG, ResNet usw.;
(3.torchvision.transforms: Häufig verwendete Bildtransformationen wie Zuschneiden, Drehen usw.;
(4.torchvision.utils: Einige andere nützliche Methoden.
Die Klasse Torchvision.transforms.Compose() wird hauptsächlich zum Verketten mehrerer Bildtransformationen verwendet Operationen.
Das Obige ist ein Auszug aus
dem Beispiel:

transform_train = torchvision.transforms.Compose([
    # 在高度和宽度上将图像放大到40像素的正方形
    torchvision.transforms.Resize(40),
    # 随机裁剪出一个高度和宽度均为40像素的正方形图像,
    # 生成一个面积为原始图像面积0.64到1倍的小正方形,
    # 然后将其缩放为高度和宽度均为32像素的正方形
    torchvision.transforms.RandomResizedCrop(32, scale=(0.64, 1.0),
                                                   ratio=(1.0, 1.0)),
    torchvision.transforms.RandomHorizontalFlip(),
    torchvision.transforms.ToTensor(),
    # 标准化图像的每个通道
    torchvision.transforms.Normalize([0.4914, 0.4822, 0.4465],
                                     [0.2023, 0.1994, 0.2010])])

transforms.RandomResizedCrop(224)-Funktion: Schneiden Sie einen Teil des Originalbilds zufällig zu und skalieren Sie ihn dann auf das entsprechende (Größen- )Verhältnis (d. h. sammeln Sie zuerst zufällig und skalieren Sie dann das zugeschnittene Bild auf die gleiche Größe), Standardeinstellung scale=(0.08, 1.0)
transforms.Resize(size): Skalieren Sie die kurze Seite des Bildes entsprechend dem Größenverhältnis und skalieren Sie dann die lange Seite entsprechend, sodass das Seitenverhältnis des skalierten Bildes relativ zum Originalbild erhalten bleibt unverändert. Dadurch wird das Seitenverhältnis des Bildes geändert, es wird jedoch nicht selbst zugeschnitten. Sie können mit der Größenänderungsmethode immer noch zur ursprünglichen Form zurückkehren.
transforms.CenterCrop(size): Von der Mitte des Bildes entlang beider Seiten zuschneiden. Die Größe des zugeschnittenen Bildes beträgt (size
size).
transforms.RandomHorizontalFlip() Rotiert das Bild des gegebenen PIL zufällig horizontal mit einer gegebenen Wahrscheinlichkeit, der Standardwert ist 0,5;
transforms.ToTensor() Konvertiert das gegebene Bild in Tensor;
transforms.Normalize() Normalisieren Sie die Verarbeitung;
Teilweise Auszug aus dem Bild

  1. Funktion os.path.join(): Verbindet zwei oder mehr Pfadnamenkomponenten
    (1. Wenn der erste Buchstabe jedes Komponentennamens nicht „/“ enthält, fügt die Funktion ihn automatisch hinzu
    (2. Der erste beginnt mit „/“) " Die Parameter am Anfang werden zusammengefügt und alle vorherigen Parameter werden verworfen. Wenn mehrere Parameter vorhanden sind, beginnen Sie mit dem letzten
    (3. Wenn die letzte Komponente leer ist, endet der generierte Pfad mit einem '/'-Trennzeichen
    ( 4. Wenn „Parameter, die mit „./“ beginnen, werden die Parameter, die mit „./“ beginnen, ab dem vorherigen Parameter zusammengefügt.
import os

Path1 = 'home'
Path2 = 'develop'
Path3 = 'code' 

Path20 = os.path.join(Path1,Path2,Path3)
print ('Path20 = ',Path20)
输出
Path20 = home\develop\code

Acho que você gosta

Origin blog.csdn.net/weixin_44040169/article/details/126845470
Recomendado
Clasificación