Traitement d'images
Photoshop, Instagram, filtres Snapchat... Comment fonctionnent ces outils ? Avec Python, vous pouvez manipuler chaque pixel d'une image ! Decouvrez les bases du traitement d'images numeriques.
45 min Niveau 3/5 +35 XP
Objectifs
- Comprendre comment une image numerique est stockee
- Manipuler les pixels d'une image avec Python
- Appliquer des filtres simples (negatif, niveaux de gris)
- Modifier la luminosite et le contraste
Pieges a eviter
- !Confondre RGB et BGR (OpenCV utilise BGR)
- !Oublier que les valeurs sont entre 0 et 255
- !Modifier l'image originale au lieu d'une copie
- !Ne pas gerer les depassements de valeurs
Cours complet
Une image numerique est une grille de pixels. Chaque pixel a une couleur definie par 3 valeurs RGB (Rouge, Vert, Bleu) entre 0 et 255.
# Une image = tableau 2D de pixels # Chaque pixel = (Rouge, Vert, Bleu) # Image 3x3 pixels : # +-------+-------+-------+ # | pixel | pixel | pixel | ligne 0 # +-------+-------+-------+ # | pixel | pixel | pixel | ligne 1 # +-------+-------+-------+ # | pixel | pixel | pixel | ligne 2 # +-------+-------+-------+ # col 0 col 1 col 2 # Couleurs en RGB (0-255 pour chaque composante) : rouge = (255, 0, 0) # Rouge pur vert = (0, 255, 0) # Vert pur bleu = (0, 0, 255) # Bleu pur blanc = (255, 255, 255) # Toutes les couleurs noir = (0, 0, 0) # Aucune couleur gris = (128, 128, 128) # Valeurs egales jaune = (255, 255, 0) # Rouge + Vert cyan = (0, 255, 255) # Vert + Bleu magenta = (255, 0, 255) # Rouge + Bleu # Taille d'une image # Image 1920x1080 (Full HD) : # - 1920 colonnes (largeur) # - 1080 lignes (hauteur) # - 1920 * 1080 = 2 073 600 pixels # - 3 octets par pixel (RGB) # - Taille non compressee : ~6 Mo
Quiz Images
5 questions pour valider
RGB
Red (Rouge) : 0-255
Green (Vert) : 0-255
Blue (Bleu) : 0-255
Filtres
Negatif : 255 - valeur
Gris : moyenne RGB
Luminosite : + / - valeur
IDE Python
Teste le code en ligne
