This shows you the differences between two versions of the page.
pgapi:teme:2024:02 [2024/12/14 21:08] andrei.lambru [Prezentare rezultat] |
pgapi:teme:2024:02 [2024/12/20 10:25] (current) andrei.lambru |
||
---|---|---|---|
Line 4: | Line 4: | ||
* **Lansare:** 14 decembrie 2024 | * **Lansare:** 14 decembrie 2024 | ||
* **Termen de predare:** 14 ianuarie 2025, ora 23:55 | * **Termen de predare:** 14 ianuarie 2025, ora 23:55 | ||
- | * **Regulament:** https://ocw.cs.pub.ro/courses/spg/regulament_general | + | * **Regulament:** https://ocw.cs.pub.ro/courses/pgapi/regulament_general |
* **Notă: Orice informație ce nu a fost acoperită în acest document este la latitudinea voastră!** | * **Notă: Orice informație ce nu a fost acoperită în acest document este la latitudinea voastră!** | ||
Line 22: | Line 22: | ||
În cadrul temei, trebuie să implementați o anumită metodă propusă, ce este descrisă în secțiunile următoare. O privire de ansamblu asupra pașilor de realizare ai schiței prin această metodă poate fi vizualizată în imaginea de mai jos. Acești pași sunt prezentați în detaliu în secțiunile urmatoare. | În cadrul temei, trebuie să implementați o anumită metodă propusă, ce este descrisă în secțiunile următoare. O privire de ansamblu asupra pașilor de realizare ai schiței prin această metodă poate fi vizualizată în imaginea de mai jos. Acești pași sunt prezentați în detaliu în secțiunile urmatoare. | ||
- | {{ :pgapi:teme:2024:sketch.png?500 |}} | + | {{ :pgapi:teme:2024:sketch.png?600 |}} |
<note important>Algoritmii de mai jos au ca parametrii diferite valori de prag, direcții de hașurare, densitatea hașurării etc. Aceste valori sunt la libertatea voastră de a îi seta cu condiția ca programul vostru să aibă rezultate vizuale pe diferite imagini în care să se vadă clar contururi ale imaginii și linii de hașură.</note> | <note important>Algoritmii de mai jos au ca parametrii diferite valori de prag, direcții de hașurare, densitatea hașurării etc. Aceste valori sunt la libertatea voastră de a îi seta cu condiția ca programul vostru să aibă rezultate vizuale pe diferite imagini în care să se vadă clar contururi ale imaginii și linii de hașură.</note> | ||
+ | |||
+ | ===== Filtru Sobel + binarizare ===== | ||
+ | |||
+ | Pentru a construi contururile schiței, vom aplica filtrul Sobel pe imaginea originală și vom binariza ([[pgapi:laboratoare:09|]]). | ||
+ | Pentru a binariză, vom stabili că un pixel este negru dacă în urma filtrului Sobel valoarea este mai mare decât un prag. Dacă valoarea este mai mică decât un prag, atunci pixelul va fi alb. | ||
+ | Valoarea de prag este la alegerea voastră. | ||
+ | |||
+ | {{ :pgapi:teme:2024:sobel.png?600 |}} | ||
===== Filtru de netezire separabil ===== | ===== Filtru de netezire separabil ===== | ||
Line 48: | Line 56: | ||
Această metodă reduce numărul total de eșantionări a texturii pentru fiecare pixel de la 625 la 50. | Această metodă reduce numărul total de eșantionări a texturii pentru fiecare pixel de la 625 la 50. | ||
- | |||
- | |||
- | ===== Filtru Sobel + binarizare ===== | ||
- | |||
- | Pentru a construi contururile schiței, vom aplica filtrul Sobel pe imaginea originală și vom binariza ([[pgapi:laboratoare:09|]]). | ||
- | Pentru a binariză, vom stabili că un pixel este negru dacă în urma filtrului Sobel valoarea este mai mare decât un prag. Dacă valoarea este mai mică decât un prag, atunci pixelul va fi alb. | ||
- | Valoarea de prag este la alegerea voastră. | ||
- | |||
- | {{ :pgapi:teme:2024:sobel.png?600 |}} | ||
===== Filtru de hașurare ====== | ===== Filtru de hașurare ====== | ||
Line 122: | Line 121: | ||
Mai multe rezultate pentru aplicarea modelului de hașurare descris mai sus cu diferite valori ale lui $a$ , $b$ și $c$ pot fi vizualizate în imaginea de mai jos. | Mai multe rezultate pentru aplicarea modelului de hașurare descris mai sus cu diferite valori ale lui $a$ , $b$ și $c$ pot fi vizualizate în imaginea de mai jos. | ||
- | {{ :pgapi:teme:2024:sketch2.png?500 |}} | + | {{ :pgapi:teme:2024:sketch2.png?600 |}} |
==== Aplicare model de hașurare ==== | ==== Aplicare model de hașurare ==== | ||
Line 136: | Line 135: | ||
Pentru a se prezenta mai ușor rezultatul obținut, aplicația realizată de către voi trebuie să permită vizualizarea individuală arezultatelor pentru toți pașii intermediari ai metodei. Se vor folosi tastele de la tastatură după cum urmează: | Pentru a se prezenta mai ușor rezultatul obținut, aplicația realizată de către voi trebuie să permită vizualizarea individuală arezultatelor pentru toți pașii intermediari ai metodei. Se vor folosi tastele de la tastatură după cum urmează: | ||
* Tasta **0** - Vizualizare imagine originală; | * Tasta **0** - Vizualizare imagine originală; | ||
- | * Tasta **1** - Vizualizare rezultat filtru de netezire orizontal; | + | * Tasta **1** - Vizualizare rezultat filtru Sobel + binarizare; |
- | * Tasta **2** - Vizualizare rezultat filtru de netezire final - orizontal și vertical. În continuare se consideră că acesta este și rezultatul filtrului de netezire; | + | * Tasta **2** - Vizualizare rezultat filtru de netezire orizontal; |
- | * Tasta **3** - Vizualizare rezultat filtru de netezire + filtru Sobel + binarizare; | + | * Tasta **3** - Vizualizare rezultat filtru de netezire final - orizontal și vertical. În continuare se consideră că acesta este și rezultatul filtrului de netezire; |
* Tasta **4** - Vizualizare rezultat filtru de netezire + aplicare filtru de hașurare 1; | * Tasta **4** - Vizualizare rezultat filtru de netezire + aplicare filtru de hașurare 1; | ||
* Tasta **5** - Vizualizare rezultat filtru de netezire + aplicare filtru de hașurare 2; | * Tasta **5** - Vizualizare rezultat filtru de netezire + aplicare filtru de hașurare 2; | ||
Line 155: | Line 154: | ||
===== Notare (200) ===== | ===== Notare (200) ===== | ||
+ | * +25p - Filtru Sobel + binarizare | ||
* +50p - Filtru de netezire separabil cu mască de convoluție de dimensiune cel puțin 25x25 | * +50p - Filtru de netezire separabil cu mască de convoluție de dimensiune cel puțin 25x25 | ||
* Această cerinta se punctează doar în situația în care filtrul de netezire este implement în 2 pași. | * Această cerinta se punctează doar în situația în care filtrul de netezire este implement în 2 pași. | ||
- | * +25p - Filtru Sobel + binarizare | ||
* +75p - Filtru de hașurare | * +75p - Filtru de hașurare | ||
* +25p - Aplicare 3 filtre de hașurare cu parametri diferiți | * +25p - Aplicare 3 filtre de hașurare cu parametri diferiți | ||
* +25p - Vizualizarea individuală a rezultatelor pentru pașii intermediari ai metodei | * +25p - Vizualizarea individuală a rezultatelor pentru pașii intermediari ai metodei | ||
- | * Vizualizare rezultat filtru de netezire; | + | * +5p - Vizualizare rezultat filtru Sobel + binarizare; |
- | * Vizualizare rezultat filtru de netezire + filtru Sobel + binarizare; | + | * +5p - Vizualizare rezultat filtru de netezire; |
- | * Vizualizare rezultate filtru de netezire + aplicare filtru de hașurare cu parametri diferiți; | + | * +10p - Vizualizare rezultate filtru de netezire + aplicare filtru de hașurare cu parametri diferiți; |
- | * Vizualizare rezultat filtru de netezire + filtru de hașurare. | + | * +5p - Vizualizare rezultat filtru de netezire + filtru de hașurare. |
===== Bonusuri posibile ===== | ===== Bonusuri posibile ===== |