Couches de rééchantillonnage (UpSampling2D)

Fonctions :

  • UpSampling2D()

    La couche UpSampling2D augmente la résolution spatiale (hauteur et largeur) d’une image ou d’une carte de caractéristiques en répétant les valeurs selon les dimensions spatiales. Elle est utilisée pour restaurer la taille des données dans les réseaux convolutionnels, notamment dans les réseaux génératifs ou les auto-encodeurs.

    Importation :

    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import UpSampling2D
    import numpy as np

    Attributs :

    Paramètre Type Description Valeur par défaut
    size tuple d’int ou int Facteur d’agrandissement pour les dimensions (hauteur, largeur). Peut être un int unique pour les deux axes ou un tuple. (2, 2)
    data_format string Format des données d'entrée, soit "channels_last" (par défaut, shape: batch, hauteur, largeur, canaux) soit "channels_first" (shape: batch, canaux, hauteur, largeur). "channels_last"

    Exemple de code :

    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import UpSampling2D
    import numpy as np
    
    # Données simulées : batch de 1 image, 2x2 pixels, 1 canal
    X = np.array([[[[1], [2]],
                   [[3], [4]]]])
    
    # Modèle avec UpSampling2D
    model = Sequential()
    model.add(UpSampling2D(size=(2, 2), input_shape=(2, 2, 1)))
    
    # Passage des données dans la couche
    output = model.predict(X)
    print(output)

    Explication du code :

    Importation des bibliothèques
    On importe la couche `UpSampling2D` ainsi que les modules nécessaires.
    Création des données
    Les données représentent un batch avec une image 2x2 pixels et 1 canal.
    Définition du modèle
    Le modèle contient uniquement la couche `UpSampling2D` avec un facteur d’agrandissement de 2 sur hauteur et largeur.
    Exécution
    Le passage des données produit une image 4x4 où chaque pixel original est répété 2 fois en hauteur et 2 fois en largeur.