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

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

 
Slika Luka Milošević
3) Naivni, DLT i modifikovani DLT algoritam + Grafički prikaz
napisao/la Luka Milošević - nedelja, 28. oktobar 2018, 17:20
 

Student: Luka Milošević, 167/2015
Programski jezik: Python3 i biblioteke numpy i matplotlib

Uradjeno: 

  1. Naivni, DLT i normalizovani DLT algoritam.
  2. Zapažanja i poređenje algoritama
  3. Urađeni algoritmi za 4 i za 6 tačaka
  4. Unos tačaka ručno ili preko datoteke
  5. Predstavljanje grafički ulaznih i izlaznih tačaka, poligona.

Pokretanjem programa bira se broj tačaka i nakon toga se unose koordinate, radi lakšeg testiranja moguće je i uneti preko datoteke ili direktno iz koda. Redom se računaju matrice za različite algoritme. Rešenja dobijamo preko terminala.

Prilog

  • Slika terminala: matrice preslikavanja za sva tri algoritma korišćenjem 4 i 6 tačaka i  skalirana matrica dobijena normalizovanim dlt algoritmom na dlt algoritam
  • Slika dela koda, gde se tačke unose preko standardnog ulaza
  • Grafički prikaz tačaka i poligona za DLT+normalizovani DLT sa 6 tačaka

Zapažanja: kada se matrica normalizovanog DLT algoritma skalira na matricu običnog DLT algoritma dobije se ista matrica kada se koriste 4 tačke, ali to nije slučaj kada se koristi 6 tačaka tada se dobije približno ista matrica (zbog osobina normalizovanog DLT algoritma). Permutacija tačaka neće promeniti rezultat algoritama (DLT i normalizovanog DLT).

Tačke:

  1. A = ( 0, -8 )
  2. B = ( -5,-10)
  3. C = (-11, -7)
  4. D = (-12, -5)
  5. E = ( -3, 0)
  6. F = ( 1, 1 )
  1. Ap =(12, 11 )
  2. Bp =(10, 10 )
  3. Cp =(6 , 13 )
  4. Dp =(-3, 8 )
  5. Ep =(10, 2 )
  6. Fp =(13 , 3 )

Za naivni, DLT  i normalizovani DLT sa 4 tačke korišćene su tačke: A, B, C, D i Ap, Bp, Cp, Dp

Za naivni, DLT  i normalizovani DLT sa 6 tačaka korišćene su tačke: A, B, C, D, E, F i Ap, Bp, Cp, Dp, Ep, Fp