|
AIDGE IN SPACE
Banc d'essai de compression d'image apprise pour l'embarqué
|
Scale hyperprior gaussien (bmshj2018-hyperprior). Plus de détails...
Fonctions membres publiques | |
| onboard (self, model) | |
| g_a, h_a et h_s s'exécutent à bord (h_s pour connaître les échelles de y). | |
| 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 publiques hérités de aidge_in_space.coding.LatentCoding | |
| tables (self, model) | |
| Tables de fréquences du modèle, calculées au premier appel puis mises en cache. | |
Fonctions membres protégées | |
| _make_tables (self, model) | |
| Tables de z (une par canal) ; celles de y sont communes à tous les modèles. | |
Scale hyperprior gaussien (bmshj2018-hyperprior).
Le flux contient d'abord l'hyper-latent z (prior factorisé, une table par canal), précédé de sa longueur sur 4 octets, puis les latents y codés avec une loi gaussienne centrée dont l'échelle est prédite par h_s(z). Le modèle doit exposer h_a, h_s et entropy_bottleneck.
| aidge_in_space.coding.HyperpriorCoding.decode | ( | self, | |
| model, | |||
| data, | |||
| latent_shape ) |
Décode un flux produit par encode().
| model | Modèle entraîné (le même qu'à l'encodage). |
| data | Flux binaire, sans l'en-tête du codec. |
| latent_shape | Forme des latents y, (1, M, h, w). |
Réimplémentée à partir de aidge_in_space.coding.LatentCoding.
| aidge_in_space.coding.HyperpriorCoding.encode | ( | self, | |
| model, | |||
| y, | |||
| real ) |
Quantifie les latents et produit le flux binaire, ou estime seulement son débit.
| model | Modèle entraîné. |
| y | Latents non quantifiés en sortie de g_a, tenseur 1 x M x h x w. |
| real | True : codage arithmétique réel ; False : débit estimé par l'entropie du modèle. |
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 à partir de aidge_in_space.coding.LatentCoding.
| aidge_in_space.coding.HyperpriorCoding.onboard | ( | self, | |
| model ) |
g_a, h_a et h_s s'exécutent à bord (h_s pour connaître les échelles de y).
| model | aidge_in_space.nn.ScaleHyperprior2018 entraîné. |
Réimplémentée à partir de aidge_in_space.coding.LatentCoding.