Académie de Versailles
FICHE ACTIVITÉ 2
CORRECTION SNT
Photographie numérique : Traitement d’image
Exemple : Négatif d’une image
Le négatif d’une image correspond à l’image pour laquelle les valeurs des intensités des différents pixels sont inversées par rapport à l’image d’origine.
Q1/ Pour chaque image, déterminer quel est son négatif.
A B C
A B C
A B C
Page 1 / 4
Académie de
Versailles FICHE ACTIVITÉ 2 SNT
Photographie numérique : Traitement d’image
Q2/ Compléter la matrice de droite avec des 0 et des 1 pour traduire le négatif l’image ci-dessous.
Rappel : pour les images en noir et blanc, chaque pixel est codé sur 1 bit : 0 pour noir et 1 pour blanc.
0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0
Q3/ En utilisant les informations ci-dessous, compléter sur la page 3 la matrice de droite avec le code (r,v,b) correspondant pour traduire le négatif de l’image de gauche de la page 3.
Rappel :
Page 2 / 4 Négatif du blanc : noir
Négatif du rouge : cyan Négatif du jaune : bleu Négatif du vert : magenta
Académie de
Versailles FICHE ACTIVITÉ 2 SNT
Photographie numérique : Traitement d’image
0,0,0 0,0,0 0,0,0 0,0,0 0,0,0 255,0
,255 255,0
,255 0,0,0 0,0,0 0,0,0 0,0,0 0,0,0
0,0,0 0,0,0 0,0,0 0,0,0 255,0
,255 255,0 ,255 255,0
,255 0,255
,255 0,0,0 0,0,0 0,0,0 0,0,0
0,0,0 0,0,0 0,0,0 0,0,2
55 0,0,2
55 0,255
,0 255,0
,255 255,0 ,255 255,0
,255 0,0,0 0,0,0 0,0,0
0,0,0 0,0,0 255,0 ,255 255,0
,255 0,0,2
55 0,0,2
55 255,0
,255 255,0 ,255 255,2
55,0 255,0
,255 0,0,0 0,0,0
0,0,0 0,0,0 0,0,0 0,0,0 255,0
,255 0,0,2
55 0,0,2
55 255,0
,255 0,0,0 0,0,0 0,0,0 0,0,0
0,0,0 0,0,0 0,0,0 255,0 ,255 0,255
,255 255,0 ,255 0,0,2
55 0,0,2
55 255,0
,255 0,0,0 0,0,0 0,0,0
0,0,0 0,0,0 255,0 ,255 255,0
,255 255,0 ,255 255,0
,255 255,0 ,255 0,0,2
55 0,0,2
55 255,0
,255 0,0,0 0,0,0 0,0,0 255,0
,255 255,2 55,0 255,0
,255 255,0 ,255 0,255
,0 255,0
,255 255,0 ,255 0,0,2
55 0,0,2
55 255,0
,255 0,0,0
0,0,0 0,0,0 0,0,0 0,0,0 0,0,0 255,2
55,25 5
255,2 55,25
5 0,0,0 0,0,0 0,0,0 0,0,0 0,0,0
0,0,0 0,0,0 0,0,0 0,0,0 0,0,0 255,2
55,25 5
255,2 55,25
5 0,0,0 0,0,0 0,0,0 0,0,0 0,0,0
Algorithmes de traitement de l’image
Selon Wikipedia :« Le traitement d'images est une discipline de l'informatique et des mathématiques appliquées qui étudie les images numériques et leurs transformations, dans le but d'améliorer leur qualité ou d'en extraire de l'information. »
La matrice représentant l’image numérique est traduite par un logiciel qui va afficher l’image. Le traitement de l’image s’effectue sur cette matrice, par exemple par des opérations sur 3 composantes couleurs qui la constituent lors d’un codage RVB.
Le principe utilisé dans cette activité est le suivant :
Les calculs mathématiques effectués sur les composantes couleurs de l’image sont plus ou moins compliqués selon les effets souhaités.
Page 3 / 4
Académie de
Versailles FICHE ACTIVITÉ 2 SNT
Photographie numérique : Traitement d’image
Exemple de script python de traitement d’image
from matplotlib.pyplot import * # importation d'une bibliothèque pour tracer et visualiser des données sous forme de graphique
from numpy import * # importation d'une bibliothèque pour manipuler des matrices (ou tableaux ou grilles)
###################################################
# ATTENTION: Pour exécuter sous EduPython, utiliser Ctrl+F9 #
###################################################
im1 = imread("SNT_Photographie_Act2_Parrot.png") # ouverture du fichier image
(l,c,t) = shape(im1) # on crée une nouvelle image de même taille que image d'origine
im2 = zeros((l,c,t))
for i in range(l): # on balaie toutes les lignes
for j in range(c): # pour chaque ligne, on balaie toutes les colonnes im2[i,j,0] = im1[i,j,0] # ne garde que la couleur (??? à compléter) dans toute l'image
im2[i,j,1] = 0 im2[i,j,2] = 0 imshow(im2)
show(im2.all) # on affiche l’image 2
On identifie chaque pixel par son numéro de ligne et de colonne. Les différentes valeurs des couleurs sont stockées dans la troisième « coordonnée » : 0 pour le rouge, 1 pour le vert et 2 pour le bleu.
Note : La valeur de l’intensité de chaque couleur est normalisée pour être entre 0.0 et 1.0 (en divisant la valeur binaire par 255).
Q4/ Que fait ce script ?
Ouvrir le script SNT_Photographie_Act2_ImagesEleve.py et l’exécuter pour vérifier votre réponse.
L'image devient en rouge
Q4/ En vous basant sur le script modèle, effectuer les transformations suivantes :
Canal vert Canal bleu Inverser les nuances de rouge et de bleu
Négatif
im2[i,j,0] = 1-im1[i,j,0]
im2[i,j,1] = 1-im1[i,j,1]
im2[i,j,2] = 1-im1[i,j,2]
Nuances de gris
(valeur moyenne des 3 couleurs)
Miroir vertical im2[i,j,0] = im1[i,c-1-j,0]
im2[i,j,1] = im1[i,c-1-j,1]
im2[i,j,2] = im1[i,c-1-j,2]
Page 4 / 4 Image d’origine
Vert : im2[i,j,0] = 0 im2[i,j,1] = im1[i,j,1]
im2[i,j,2] = 0 Bleu : im2[i,j,0] = 0 im2[i,j,1] = 0 im2[i,j,2] = im1[i,j,2]
Inverser rouge et bleu : im2[i,j,0] = im1[i,j,2]
im2[i,j,1] = im1[i,j,1]
im2[i,j,2] = im1[i,j,0]
gris = (im1[i,j,0]+im1[i,j,1]+im1[i,j,2])/3
im2[i,j,0] = gris im2[i,j,1] = gris im2[i,j,2] = gris