Prvi domaći - projektivna preslikavanja, do 29.10. u 12:00
U suštini, treba napisati i testirati funkciju koja određuje projektivno preslikavanje, ako su date 4 (ili više) odgovarajućih tačaka.
Na ovaj forum treba poslati "skrinšot" rezultata testiranja (ulaz i izlaz), kao i "skrinšot" dela koda (max. 6 datoteka, svaka datoteka max. 500 kb, sačuvajte je kao .png, jpg ili kompresovani bmp). Taj deo koda treba odabrati tako da ne bude od značajne pomoći ostalima, a da posvedoči o originalnosti rada.
Moguće je osvojiti od 5-20 bodova u zavisnosti koji algoritam i funkcionalnisti implementirate (vidi ispod).
1) Naivni algoritam (5 bodova)
2) Naivni algoritam, DLT algoritam i poredjenje za 4. korespodencije (8 bodova).
3) Naivni algoritam, DLT algoritam, modifikovani DLT algoritam i poredjenje za 4 korespodencije (10bodova)
Takodje uporediti modifikovani i DLT algoritam za 5 ili više korespodencija.
4) Napisati aplikaciju koja ucitava bmp sliku, korisnik bira 4 tacke koje se slikaju u pravougaonik/kvadrat, a aplikacija vraca sliku sa otklonjenom projektivnom distorzijom (poslednji slajd). Povesti racuna o kvalitetu izlazne bitmape (8-20 bodova). Ko se odluci da radi ovaj zadatak moze da me konsultuje mejlom radi saveta i konsultacija.
Bonus bodovi (do 5) se dobijaju za graficki prikaz. To znaci slika zadatog trougla (tri slucaja u zavisnosti od preseka trougla sa pravom koja se slika beskonacno) ILI za graficki unos originalnih tacaka i tacaka slike.
Uputstva:
- vodite računa da će samo prvo rešenje koje mi pošaljete biti vrednovano. Naravno svaka diskusija, pre i posle postovanja rešenja je moguća.
- primer šta poslati i kako: kolega Tester Testerović
- test primer (tj. koordinate tačaka) svakog studenta mora da bude drugaciji (u suprotnom gubite bodove). Ostali mogu da primene svoju funkciju na tudjim tackama i da prokomentarisu ako dobiju razlicit rezultat. Za 4 tacke resenje je razlicito, tj. ne bi se trebale razlikovati dobijene matrice. Za 5 i vise tacaka, moze biti razlike.
- mozete koristiti ma koji programski jezik. Unos i ispis rezultata moze u/iz fajla ili stdin/out, kako god.
- ovo je jedan od 3 planirana zadatka, od kojih svaki u principu nosi 10 bodova.