Introduction
Ce tutoriel vous guidera tout au long du processus d'utilisation de Matplotlib pour extraire des images individuelles d'un film et les enregistrer dans un fichier. Cette méthode est utile pour générer des animations et peut être effectuée sans intégration de boucle d'événements.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Notebook pour accéder à Jupyter Notebook pour pratiquer.
Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.
Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.
Importez les bibliothèques nécessaires
Nous devons tout d'abord importer les bibliothèques nécessaires pour générer l'animation. Nous utiliserons numpy pour générer des nombres aléatoires, matplotlib pour tracer et FFMpegWriter pour enregistrer les images dans un fichier.
import numpy as np
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
from matplotlib.animation import FFMpegWriter
Configurez l'écrivain
Nous devons configurer l'écrivain qui sera utilisé pour enregistrer les images dans un fichier. Nous définissons le nombre d'images par seconde (fps) et ajoutons des métadonnées telles que le titre, l'artiste et le commentaire.
metadata = dict(title='Movie Test', artist='Matplotlib',
comment='Movie support!')
writer = FFMpegWriter(fps=15, metadata=metadata)
Configurez la figure
Nous créons une figure et définissons les limites x et y du tracé.
fig = plt.figure()
plt.xlim(-5, 5)
plt.ylim(-5, 5)
Configurez le tracé
Nous créons un tracé de ligne et définissons les données initiales comme un tableau vide.
l, = plt.plot([], [], 'k-o')
Capturer les images et enregistrer dans un fichier
Nous effectuons une boucle de 100 itérations et générons des nombres aléatoires pour les coordonnées x et y. Nous mettons à jour les données du tracé de ligne et capturons l'image à l'aide de l'écrivain. Enfin, nous enregistrons les images dans un fichier.
x0, y0 = 0, 0
with writer.saving(fig, "writer_test.mp4", 100):
for i in range(100):
x0 += 0.1 * np.random.randn()
y0 += 0.1 * np.random.randn()
l.set_data(x0, y0)
writer.grab_frame()
Sommaire
Ce tutoriel vous a montré comment utiliser Matplotlib pour capturer les images d'un film et les enregistrer dans un fichier. Nous avons couvert les étapes nécessaires, depuis la configuration de l'écrivain jusqu'à la boucle d'itérations et la génération de nombres aléatoires pour le tracé. Cette méthode est utile pour générer des animations sans intégration de boucle d'événements.