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

Aplikacija

 
Slika Djordje Dimovic
Aplikacija
napisao/la Djordje Dimovic - ponedeljak, 29. oktobar 2018, 01:14
 

Student: Dimovic Djordje, 54/2015
Programski jezik: Python uz koriscenje biblioteka numpy, plotlib, cv2 i qt.

Uradjeno:

  1. Naivni algoritam
  2. DLT algoritam
  3. Normalizovani DLT algoritam
  4. Zapazanja i poredjenje algoritama
  5. Unos tacaka klikom na mis ili rucno
  6. Predstavljanje ulaznih i izlaznih tacaka
  7. Aplikacija koja otklanja distorziju sa slike


Programi se pokrecu iz terminala. Koriste se date tacke ili se ucitavaju klikom.

Prilog:

  1. Prikaz dela koda, tacaka i matrice projektivnog preslikavanja za Naivni algoritam
  2. Prikaz dela koda, tacaka i matrice projektivnog preslikavanja za DLT algoritam
  3. Prikaz dela koda, tacaka i matrice projektivnog preslikavanja za normalizovani DLT algoritam
  4. Screenshot terminala: kada dodamo sum na tacke x3 i x3p
  5. Slika pokretanja aplikacije, unosa tacaka i slika sa otklonjenom distorzijom (tri primera)


Zapazanja:

  • Svi algoritmi daju isti rezultat za 4 tacke.
  • DLT i modifikovani DLT algoritam daju isti rezultat za vise od 4 tacaka.
  • Kada se doda sum na tackama (u ovom primeru na x3[2, 2.1, -2] i na x3p[15.9, 2, 16]) u matrici preslikavanja se vidi razlika iako je sum mali.
  • Permutacija tacaka nece promeniti rezultat algoritama.


Tacke:
  x1 = [1, -2, 5]
  x2 = [-3, 4, 5]
  x3 = [2, 2, -2]
  x4 = [6, 1, -2]
  x5 = [1, 1, 1]
  x6 = [-3, 3, 7]

  x1p = [-7, -5, -28]
  x2p = [-5, -37, -20]
  x3p = [16, 2, 16]
  x4p = [29, 14, 18]
  x5p = [6, -5, -2]
  x6p = [-10, -39, -32]

 

Naivni algoritam

DLT algoritam

DLT sa normalizacijomSumAplikacija (1. primer)Aplikacija (2. primer)Aplikacija (3. primer)