Prvi domaći - projektivna preslikavanja, do 29.10. u 12:00

3)Naivni, DLT i modifikovani DLT algoritam + grafički prikaz

 
Slika Tijana Nikčević
3)Naivni, DLT i modifikovani DLT algoritam + grafički prikaz
napisao/la Tijana Nikčević - nedelja, 28. oktobar 2018, 18:31
 

Student: Tijana Nikčević 77/2015

Programski jezik: Pzthon3.4, biblioteke: math, numpy, matplotlib

Urađeno:

  • Tačke mogu da se unesu ručno ili klikom na miš. Kada se pokrene program bira se broj tačaka i način na koji se unose. 
  • Prikaz originalnih tačaka i slika tačaka i njihovih poligona za prve četiri tačke i za sve unete tačke (kada nema beskonacno dalekih tacaka).
  • Naivni algoritam: funkcija koja prima četiri para tačaka i vraća matricu preslikavanja.
  • DLT algoritam i Normalizovani DLT algoritam: funkcije koje primaju četiri ili više tačaka i vraćaju matrice preslikavanja.
  • Poređenje matrica preslikavanja naivnog, DLT i normalizovanog DLT algoritma za navedene tačke.

Tačke:

A[-4, 2]      A' [3, 0]

B[-3, 1]      B' [0, -3]

C[-1, 1]      C' [2, -5]

D[ 0, 2]      D' [6, -4]

E[-1, 3]      E' [8, -1.5]

F[-3, 3]      F' [7,  0.5]

Za četiri tačke sva tri algoritma daju iste rezultate što se vidi kada se matrice skaliraju. Kada se dodaju još dve tačke sa malim šumom matrice preslikavanja DLT algoritma i normalizovanog DLT algoritma se malo menjaju. Matrice DLT i normalizovanog DLT algoritma se ne razlikuju mnogo. Algoritmi rade isto kada se zameni redosled tačaka.

Prilog:

  • Prikaz unosa klikom.
  • Prikaz originalnih tačaka i njihovih slika za prve 4 tačke.
  • Prikaz  originalnih tačaka i njihovih slika  za svih 6 tačaka.
  • Prikaz tri dela koda i matrica preslikavanja svih algoritama za navedene tačke.