1. Effets visuels
Introduction aux effets visuels
Aujourd'hui, on va apprendre non seulement à modifier la luminosité et le contraste, mais aussi à donner un style unique à vos créations, aussi bien que dans les blockbusters hollywoodiens. Ou, au moins, rendre vos vidéos plus agréables à regarder, même si elles ont été tournées avec un vieux téléphone.
Quand on parle de traitement vidéo, savoir appliquer des effets visuels, c'est comme avoir un ingrédient secret pour créer du contenu qui capte l'attention. Les effets visuels peuvent rendre une vidéo plus lumineuse, souligner des détails importants ou transformer complètement le style global d'un clip.
Notions de base sur la modification de la luminosité, du contraste et des couleurs
Avant de passer à la pratique, faisons une petite révision sur ce que sont la luminosité, le contraste et les couleurs dans le contexte vidéo.
- Luminosité — le degré général de clarté ou d'obscurité d'une image. Augmenter la luminosité rend la vidéo plus claire, alors que la diminuer la rend plus sombre.
- Contraste — la différence entre les parties les plus claires et les plus sombres d'une vidéo. Un contraste élevé rend la vidéo plus dynamique, un contraste faible la rend plus plate.
- Correction des couleurs — le processus d'ajustement de l'équilibre des couleurs pour améliorer la qualité de la vidéo.
2. Modification de la luminosité d'une vidéo
Passons maintenant au code pour voir comment appliquer ces effets avec MoviePy.
Modification de la luminosité d'une vidéo avec la méthode fl_image()
La luminosité peut être modifiée avec la méthode fl_image
, qui permet d'appliquer des fonctions personnalisées à tous les cadres d'une vidéo. Si vous souhaitez augmenter la luminosité de 20 %, utilisez un multiplicateur de 1.2.
from moviepy.editor import VideoFileClip
# Fonction pour modifier la luminosité
def change_brightness(image, factor=1.2):
return image * factor
# Ouverture du fichier vidéo
clip = VideoFileClip("video.mp4")
# Application de la modification de la luminosité
brightened_clip = clip.fl_image(lambda frame: change_brightness(frame, 1.2))
# Sauvegarde du résultat
brightened_clip.write_videofile("brightened_video.mp4")
Modification de la luminosité d'une vidéo avec moviepy.video.fx.all
La luminosité d'une vidéo peut également être modifiée en utilisant l'effet lum_contrast
, qui permet d'augmenter ou de diminuer la luminosité d'un clip.
Augmenter la luminosité d'une vidéo
from moviepy.editor import VideoFileClip
from moviepy.video.fx.all import lum_contrast
# Chargement de la vidéo
video = VideoFileClip("sample_video.mp4")
# Application de l'effet pour augmenter la luminosité
bright_video = lum_contrast(video, lum=30) # Augmentation de la luminosité de 30 unités
# Sauvegarde du résultat
bright_video.write_videofile("bright_video.mp4")
Dans cet exemple :
lum_contrast(video, lum=30)
augmente la luminosité de la vidéo de 30 unités. La valeur de luminosité peut être positive (pour augmenter la luminosité) ou négative (pour assombrir).
Diminuer la luminosité d'une vidéo
# Application de l'effet pour diminuer la luminosité
dark_video = lum_contrast(video, lum=-30) # Diminution de la luminosité de 30 unités
# Sauvegarde du résultat
dark_video.write_videofile("dark_video.mp4")
3. Modification du contraste d'une vidéo
Le contraste d'une vidéo influe sur la luminosité et la saturation des parties claires et sombres. Une augmentation du contraste rend les parties claires plus claires et les parties sombres plus sombres, tandis qu'une diminution réduit la différence entre ces deux zones.
Modification du contraste avec la méthode fl_image()
Le contraste peut être modifié de manière similaire en utilisant une fonction de transformation de l'image. Voici comment :
import numpy as np
# Fonction pour modifier le contraste
def change_contrast(image, factor=1.5):
mean = np.mean(image)
return (image - mean) * factor + mean
# Application de la modification du contraste
contrasted_clip = clip.fl_image(lambda frame: change_contrast(frame, 1.5))
# Sauvegarde du résultat
contrasted_clip.write_videofile("contrasted_video.mp4")
Modification du contraste avec la méthode lum_contrast()
Augmenter le contraste d'une vidéo
# Augmenter le contraste
high_contrast_video = lum_contrast(video, contrast=1.5) # Augmentation du contraste de 50%
# Sauvegarde du résultat
high_contrast_video.write_videofile("high_contrast_video.mp4")
Dans cet exemple :
contrast = 1.5
augmente le contraste de 50 %. Une valeur supérieure à 1 augmente le contraste.
Diminuer le contraste d'une vidéo
# Diminuer le contraste
low_contrast_video = lum_contrast(video, contrast=0.5) # Réduction du contraste de 50%
# Sauvegarde du résultat
low_contrast_video.write_videofile("low_contrast_video.mp4")
Dans cet exemple :
contrast = 0.5
réduit le contraste de 50 %. Les valeurs inférieures à 1 diminuent le contraste, rendant l'image moins saturée.
GO TO FULL VERSION