Corrigé D1 — Damier, escaliers & pixel art
Damier et escaliers avec arange/reshape et le slicing à pas, puis une image (H, W, 3) en uint8 : pixel art avec np.repeat, niveaux de gris, seuil et imsave.
D1rendu pour le
Le corrigé
Lire le corrigéNotebook corrigé (.ipynb)
Votre note et son commentaire sont sur votre page personnelle (lien reçu par mail).
Bilan de la classe
- Copies
- 17
- Moyenne
- 17.9
- Médiane
- 18.5
- Min – max
- 14.5 – 20
- Bonus rendus
- 13
- 14–162
- 16–185
- 18–2010
Ce qu'il faut retenir
- Tout le monde passe les 12 cellules de test : bravo. Les points perdus viennent presque toujours des réponses rédigées, pas du code.
- 2.c : un booléen NumPy occupe 1 octet, pas 1 bit ; et l'entier par défaut (int64) en occupe 8, d'où 32768 contre 4096. Ceux qui ont construit le damier en uint8 trouvent 4096 des deux côtés : il fallait alors le dire.
- np.linspace(1, 10, 10) donne des flottants : pour des entiers, np.arange. Deux copies avaient une table de multiplication en float64.
- Les boucles for sur les pixels étaient interdites : une copie en avait deux (−1 chacune). Un masque booléen (gris > 127) fait le seuillage en une ligne.
- 4.e : plt.imread rend des float32 dans [0, 1] et ajoute un canal alpha, d'où la forme (320, 320, 4). Ce n'est ni imprécis ni une perte : c'est la convention de matplotlib pour les PNG.
- « Affichez-le » veut dire un plt.imshow : plusieurs copies calculent gris ou noir_blanc sans jamais les montrer. Et un titre par figure, c'est dans le barème.
- Cinq drapeaux à trois bandes verticales sur dix-sept : correct mais minimal. Le montage ci-dessous montre ce que le slicing permet en 16×16.
Vos pixel arts

Tous ensemble, dans un ordre mélangé.
