Skip to content

Commit f476bad

Browse files
authored
Workshop (#44)
* Workshop * Workshop * Tweak workshop * 🤏 [Workshop] Put deadline on saturday evening + Disallow groups of 2
1 parent c8d5753 commit f476bad

File tree

3 files changed

+22
-22
lines changed

3 files changed

+22
-22
lines changed

content/Workshop/01-Sujet.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22

33
Durant ce workshop vous aller apprendre à coder des effets sur des images. (Comme on peut en trouver dans Photoshop, les filtres Instagram, etc.). Ce sera une première introduction à certains concepts de synthèse d'image, et une bonne occasion de vous entraîner en C++ !
44

5-
| ![](output/emboss.png) | ![](output/outline.png) |![](output/glitch.png) |
6-
|---|----|----|
7-
| ![](output/ordered_dithering.png) | ![](output/difference_of_gaussians.png) | ![](output/kuwahara.jpg) |
8-
| ![](output/rosace.png) | ![](output/diamond_square_colored.png) | ![](output/mandelbrot.png) |
5+
| ![](output/emboss.png) | ![](output/outline.png) | ![](output/glitch.png) |
6+
| --------------------------------- | --------------------------------------- | -------------------------- |
7+
| ![](output/ordered_dithering.png) | ![](output/difference_of_gaussians.png) | ![](output/kuwahara.jpg) |
8+
| ![](output/rosace.png) | ![](output/diamond_square_colored.png) | ![](output/mandelbrot.png) |
99

1010
## Attendus
1111

12-
Vous pouvez faire ce projet en solo ou à deux.
12+
Ce projet est à faire en solo.
1313

1414
Nous allons vous proposer [une liste d'exercices](./Exercices), plus ou moins difficiles (la difficulté est indiquée par le nombre d'étoiles ⭐). Nous ne nous attendons pas à ce que vous fassiez tous les exercices, mais faites en un maximum ! **Et il faudra au minimum faire un exercice de niveau 3 ou plus (⭐⭐⭐).** Vous êtes aussi les bienvenu.es pour inventer vos propres effets ou en faire que vous avez vu quelque part, même si ils ne sont pas dans la liste !
1515

@@ -92,7 +92,7 @@ int main()
9292
9393
## Rendu et Rapport
9494
95-
__*À rendre avant dimanche à 9h*__.<br/>
95+
__*À rendre avant samedi à 23h59*__.<br/>
9696
*Pour le rendu, il suffit de [mettre votre lien git ici](https://docs.google.com/spreadsheets/d/1x2uqvKdhndstidmW4xoWkNTlbwHFDWGlpohdb6TRORY/edit?usp=sharing)*. Attention, vérifiez bien que votre repo est en public, ou si il est en privé, pensez à m'inviter dessus ([*julesfouchy*](https://github.com/julesfouchy/)).
9797
9898
Pour le rapport, faites une section par exercice que vous avez fait. Montrez une image avant et après application de l'effet (comme c'est fait dans l'énoncé des exercices). Si vous jugez cela utile, vous pouvez mettre un petit texte expliquant des spécificités de l'algo que vous avez implémenté, et les pièges potentiels dans lesquels il ne faut pas tomber.

content/Workshop/02-Planning.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@
2424
## Vendredi
2525

2626
- [ ] *Cours* : Présentation de Markdown pour l'écriture du rapport
27-
- [ ] Écriture du rapport (Vous avez jusqu'à dimanche 9h pour les rendre)
27+
- [ ] Écriture du rapport (Vous avez jusqu'à samedi 23h59 pour le rendre)
2828
- [ ] Préparation de la présentation pour celleux concerné.es
2929
- [ ] Présentations l'après-midi

content/Workshop/03-Exercices.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,9 @@ Chaque pixel va prendre comme couleur le rouge d'un pixel un peu à sa droite, s
121121
122122
## ⭐⭐ Luminosité
123123
124-
| ![](images/photo.jpg) | ![](output/luminosity+.jpg) |![](output/luminosity-.jpg) |
125-
|---|----|----|
126-
| Image originale | Après éclaircissement | Après assombrissement |
124+
| ![](images/photo.jpg) | ![](output/luminosity+.jpg) | ![](output/luminosity-.jpg) |
125+
| --------------------- | --------------------------- | --------------------------- |
126+
| Image originale | Après éclaircissement | Après assombrissement |
127127
128128
<details>
129129
<summary>Indice</summary>
@@ -348,9 +348,9 @@ Sur l'image ci-dessus j'ai utilisé de l'*ordered dithering* avec une matrice de
348348
349349
## ⭐⭐⭐(⭐) Normalisation de l'histogramme
350350
351-
| ![](images/photo_faible_contraste.jpg) | ![](output/normalize_histogram.jpg) |
352-
|---|----|
353-
| Avant | Après |
351+
| ![](images/photo_faible_contraste.jpg) | ![](output/normalize_histogram.jpg) |
352+
| -------------------------------------- | ----------------------------------- |
353+
| Avant | Après |
354354
355355
L'algorithme consiste à trouver le pixel le moins lumineux et le pixel le plus lumineux de l'image, puis à appliquer une transformation à chaque pixel de sorte à ce que le pixel le plus sombre devienne un noir pur (`0`) et le plus lumineux devienne un blanc pur (`1`).<br/>
356356
(PS : testez avec l'image `"images/photo_faible_contraste.jpg"`, vous verrez bien l'intérêt de l'effet.)
@@ -392,18 +392,18 @@ Conseil : une fois que vous savez que votre algo marche, si vous voulez tester a
392392

393393
### ⭐ Netteté, Contours, etc.
394394

395-
| ![](output/emboss.png) | ![](output/outline.png) |![](output/sharpen.png) |
396-
|---|----|----|
397-
| Emboss | Outline | Sharpen |
395+
| ![](output/emboss.png) | ![](output/outline.png) | ![](output/sharpen.png) |
396+
| ---------------------- | ----------------------- | ----------------------- |
397+
| Emboss | Outline | Sharpen |
398398

399399
Une fois que vous avez implémenté l'algo générique de convolution qui prend n'importe quel kernel, vous pourrez trouver sur [ce site](https://setosa.io/ev/image-kernels/) une liste de kernels pour faire différents effets.
400400

401401
### ⭐⭐ Filtres séparables
402402

403-
| Box blur naïf, 100x100 | Box blur séparé, 100x100 |
404-
|---|----|
403+
| Box blur naïf, 100x100 | Box blur séparé, 100x100 |
404+
| ---------------------------- | --------------------------------------------- |
405405
| ![](output/big_box_blur.png) | ![](output/big_box_blur_separable_filter.png) |
406-
| 7.44 secondes | 0.18 secondes |
406+
| 7.44 secondes | 0.18 secondes |
407407

408408
Quand vous voulez faire un gros flou il faut augmenter la taille du kernel, ce qui peut considérablement ralentir l'algorithme. Heureusement, certains kernels ont une propriété qui nous permet de calculer leur convolution **BEAUCOUP** plus rapidement. Le *box blur* et le *gaussian blur* sont de tels kernels. Voici une vidéo expliquant tout ça :
409409

@@ -422,9 +422,9 @@ Voici une vidéo expliquant l'algorithme :
422422

423423
## ⭐⭐⭐⭐⭐ K-means : trouver les couleurs les plus présentes dans une image
424424

425-
| ![](images/photo.jpg) | ![](output/k_means_2_colors.jpg) | ![](output/k_means_3_colors.jpg) | ![](output/k_means_16_colors.jpg) |
426-
|---|----|----|----|
427-
| Originale | 2 couleurs | 3 couleurs | 16 couleurs |
425+
| ![](images/photo.jpg) | ![](output/k_means_2_colors.jpg) | ![](output/k_means_3_colors.jpg) | ![](output/k_means_16_colors.jpg) |
426+
| --------------------- | -------------------------------- | -------------------------------- | --------------------------------- |
427+
| Originale | 2 couleurs | 3 couleurs | 16 couleurs |
428428

429429
Trouvez les k couleurs les plus représentatives de l'image, puis assignez à chaque pixel la couleur dont il est le plus proche parmi les k.
430430

0 commit comments

Comments
 (0)