AIDGE IN SPACE
Banc d'essai de compression d'image apprise pour l'embarqué
Chargement...
Recherche...
Aucune correspondance
Référence de la classe aidge_in_space.coding.LatentCoding

Interface du codage entropique des latents d'un modèle. Plus de détails...

Graphe d'héritage de aidge_in_space.coding.LatentCoding:
[légende]

Fonctions membres publiques

 onboard (self, model)
 Module à exécuter à bord pour produire le flux (hors codage arithmétique).
 tables (self, model)
 Tables de fréquences du modèle, calculées au premier appel puis mises en cache.
 encode (self, model, y, real)
 Quantifie les latents et produit le flux binaire, ou estime seulement son débit.
 decode (self, model, data, latent_shape)
 Décode un flux produit par encode().

Fonctions membres protégées

 _make_tables (self, model)
 Construit les tables de fréquences (à fournir par la sous-classe).

Description détaillée

Interface du codage entropique des latents d'un modèle.

Les tables de fréquences sont mises en cache sur le modèle lui-même (attribut _ais_tables), qui est déjà gardé en cache par le codec : elles ne sont calculées qu'une fois par niveau.

Documentation des fonctions membres

◆ decode()

aidge_in_space.coding.LatentCoding.decode ( self,
model,
data,
latent_shape )

Décode un flux produit par encode().

Paramètres
modelModèle entraîné (le même qu'à l'encodage).
dataFlux binaire, sans l'en-tête du codec.
latent_shapeForme des latents y, (1, M, h, w).
Renvoie
Latents quantifiés y_hat, identiques à ceux de encode().

Réimplémentée dans aidge_in_space.coding.FactorizedCoding, et aidge_in_space.coding.HyperpriorCoding.

◆ encode()

aidge_in_space.coding.LatentCoding.encode ( self,
model,
y,
real )

Quantifie les latents et produit le flux binaire, ou estime seulement son débit.

Paramètres
modelModèle entraîné.
yLatents non quantifiés en sortie de g_a, tenseur 1 x M x h x w.
realTrue : codage arithmétique réel ; False : débit estimé par l'entropie du modèle.
Renvoie
Dictionnaire avec les clés :
  • y_hat : latents quantifiés, tels que le décodeur les reconstruira ;
  • est_bits : débit estimé en bits (toujours présent) ;
  • data : flux binaire (bytes), si real ;
  • n_esc : nombre de symboles échappés (hors des tables), si real.

Réimplémentée dans aidge_in_space.coding.FactorizedCoding, et aidge_in_space.coding.HyperpriorCoding.

◆ onboard()

aidge_in_space.coding.LatentCoding.onboard ( self,
model )

Module à exécuter à bord pour produire le flux (hors codage arithmétique).

Paramètres
modelModèle entraîné (FactorizedPrior2018, Balle2017...).
Renvoie
Copie du module en mode évaluation, avec des GDN gelées (exportable en ONNX).

Réimplémentée dans aidge_in_space.coding.HyperpriorCoding.

◆ tables()

aidge_in_space.coding.LatentCoding.tables ( self,
model )

Tables de fréquences du modèle, calculées au premier appel puis mises en cache.

Paramètres
modelModèle entraîné.
Renvoie
Tables utilisées par encode() et decode() (format propre à la sous-classe).

La documentation de cette classe a été générée à partir du fichier suivant :
  • coding.py