TNI+VO · Exercice de Programmation

EP01_04 — 🖼️ Lecture et Informations d’une Image sous forme de Matrice

1.19.4 EP01_04 🖼️ Lecture et Informations d’une Image sous forme de Matrice

Dans cette activité, vous devez écrire un programme qui traite une image numérique représentée comme une matrice de pixels en niveaux de gris.

  • Lisez deux entiers L et C, représentant le nombre de lignes et de colonnes.
  • Lisez les L * C valeurs entières qui composent la matrice de l’image (chaque valeur entre 0 et 255).
  • Calculez et imprimez les informations suivantes :
  1. Le nombre de lignes.
  2. Le nombre de colonnes.
  3. La valeur du pixel le plus grand (Maximum).
  4. La valeur du pixel le plus petit (Minimum).
  5. La Moyenne arithmétique de tous les pixels.

📌 Important :

  • La sortie doit suivre exactement le format étiqueté (ex : Linhas: X).
  • La valeur de la moyenne doit être formatée avec deux décimales.
  • Voir un simulateur interactif pour cette question dans Figure 1.14 (grille interactive pour visualiser les intensités et effectuer les calculs en temps réel).

1.19.4.1 🧠 Pourquoi cela importe-t-il ? – L’Image comme Données

Toute image numérique est, au fond, une structure de données. En niveaux de gris 8 bits, chaque pixel est une valeur scalaire. Extraire des statistiques de base est la première étape pour :

Opération Utilité Pratique
Maximum/Minimum Identifier si l’image est « délavée » (faible contraste) ou saturée.
Moyenne Calculer la luminosité globale de la scène pour des ajustements d’exposition.
Normalisation Redimensionner les valeurs vers des intervalles comme \([0, 1]\) dans les réseaux de neurones.

1.19.4.2 📋 Tâche (spécification pour VPL)

Entrée :

La première ligne contient l’entier L (lignes).

La deuxième ligne contient l’entier C (colonnes).

Les lignes suivantes contiennent les éléments de la matrice.

Sortie :

Cinq lignes formatées selon l’exemple :

Linhas: L

Colunas: C

Max: V

Min: V

Media: V.VV

1.19.4.3 📌 Exemples

Entrée Sortie Observation
2
3
0 128 255
50 100 200
Linhas: 2
Colunas: 3
Max: 255
Min: 0
Media: 122.17
Petite image à fort contraste
📊 Simulateur EP01_04 : Statistiques locales de pixels Matrice 5x5

Cliquez sur n'importe quel pixel de la matrice pour augmenter son niveau de gris (pas de +51) ou utilisez les actions prédéfinies ci-dessous pour observer les limites et la moyenne globale.

Moyenne globale (µ)
0.00
Valeur max
0
Valeur min
0
Figure 1.14: Simulateur EP01_04 : Statistiques de pixels dans une matrice discrète 5x5
%%writefile EP01_04.py
# votre solution
Overwriting EP01_04.py
TestSuite("EP01_04.py").run()
✔️ EP01_04.cases existe déjà dans casos/
📋 5 cas chargé(s) depuis casos/EP01_04.cases

🔍 Test de Python : EP01_04.py
⚠️ EP01_04.py : fichier vide (moins de 3 lignes). Tests ignorés.