Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pgapi:teme:2024:02 [2024/12/14 20:07]
andrei.lambru
pgapi:teme:2024:02 [2024/12/20 10:25] (current)
andrei.lambru
Line 2: Line 2:
  
   * **Responsabili:​** Vlad Novetschi, Robert Caragicu, Cristian Lambru   * **Responsabili:​** Vlad Novetschi, Robert Caragicu, Cristian Lambru
-  * **Lansare:​** ​13 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 70: Line 69:
 $$ $$
  
-unde  $\{x, y\}  \in [0, 1]$   ​reprezintă coordonata unui pixel în spațiul ​de texturii.+unde  $\{x, y\}  \in [0, 1]$   ​reprezintă coordonata unui pixel în spațiul texturii.
  
-Pentru a obține linii paralele, este suficient să schimbam ​parametrul ​  $c$ .+Pentru a obține linii paralele, este suficient să schimbăm ​parametrul ​  $c$ .
  
  
Line 120: Line 119:
 unde modificarea parametrului ​   $c$  va duce la schimbarea grosimii liniilor, iar modificarea parametrilor ​   $a$  și    $b$  va duce la schimbarea frecvenței și a direcției acestora. unde modificarea parametrului ​   $c$  va duce la schimbarea grosimii liniilor, iar modificarea parametrilor ​   $a$  și    $b$  va duce la schimbarea frecvenței și a direcției acestora.
  
-Mai multe rezultate pentru aplicarea modelului de hasurare ​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 |}}
  
-===== Aplicarea în context =====+==== Aplicare model de hașurare ​====
  
-Pentru a realiza procesul de hașurare doar pentru anumite zone din imagine și astfel să urmăriți detaliile prezente în ea, trebuie să utilizați ​modelul de hașurare doar pentru pixelii care respectă anumite criterii. Cel mai simplu criteriu este să transformați ​culoarea pixelului ​ce este din modelul RGB în nuanță de gri, precum în [[pgapi:​laboratoare:​08]],​ să considerați ​această nuanță de gri că este intensitatea culorii din pixelul ​și să utilizați ​modelul de hașurare doar în situația în care pixelul are intensitatea mai mică decât un prag.+Pentru a realiza procesul de hașurare doar pentru anumite zone din imagine și astfel să urmărim detaliile prezente în ea, trebuie să utilizăm ​modelul de hașurare doar pentru pixelii care respectă anumite criterii. Cel mai simplu criteriu este să transformăm ​culoarea pixelului din modelul RGB în nuanță de gri, precum în [[pgapi:​laboratoare:​08]],​ să considerăm faptul că această nuanță de gri este intensitatea culorii din pixel și să utilizăm ​modelul de hașurare doar în situația în care pixelul are intensitatea mai mică decât un prag.
  
-În rezultatul final trebuie ​să utilizați ​3 filtre de hașurare, toate cu direcții și praguri de intensitate diferite. Alegerea acestor valori rămâne la latitudinea voastră.+În rezultatul finaltrebuie ​utilizate ​3 filtre de hașurare, toate cu direcții și praguri de intensitate diferite. Alegerea acestor valori rămâne la latitudinea voastră.
  
-Pentru o diversificare a rezultatelor,​ trebuie să introduceți în cel puțin unul din cele 3 filtre de hașurare utilizarea unor linii albe pe fundal negru și în cel puțin un alt filtru de hașurare linii negre pe fundal alb. Fundalul negru se consideră doar pentru pixelii care respectă pragul de intensitate. În loc de alb și negru, puteți utiliza culori din modelul de culoare RGB, atâta timp cât culorile cu care sunt desenate liniile și fundalurile din 2 din cele 3 filtre de hașurare sunt diferite.+Pentru o diversificare a rezultatelor,​ trebuie să introduceți în cel puțin unul din cele 3 filtre de hașurare utilizarea unor linii albe pe fundal negru și în cel puțin un alt filtru de hașurare linii negre pe fundal alb. Fundalul negru se consideră doar pentru pixelii care respectă pragul de intensitate.
  
 ===== Prezentare rezultat ====== ===== Prezentare rezultat ======
  
-Pentru a se prezenta mai ușor rezultatul obținut, aplicația ​realizata ​de către voi trebuie să permită vizualizarea individuală ​rezultatelor ​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 =====
pgapi/teme/2024/02.1734199659.txt.gz · Last modified: 2024/12/14 20:07 by andrei.lambru
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0