Student: Dimovic Djordje, 54/2015
Programski jezik: Python uz koriscenje biblioteka numpy, plotlib, cv2 i qt.
Uradjeno:
- Naivni algoritam
- DLT algoritam
- Normalizovani DLT algoritam
- Zapazanja i poredjenje algoritama
- Unos tacaka klikom na mis ili rucno
- Predstavljanje ulaznih i izlaznih tacaka
- Aplikacija koja otklanja distorziju sa slike
Programi se pokrecu iz terminala. Koriste se date tacke ili se ucitavaju klikom.
Prilog:
- Prikaz dela koda, tacaka i matrice projektivnog preslikavanja za Naivni algoritam
- Prikaz dela koda, tacaka i matrice projektivnog preslikavanja za DLT algoritam
- Prikaz dela koda, tacaka i matrice projektivnog preslikavanja za normalizovani DLT algoritam
- Screenshot terminala: kada dodamo sum na tacke x3 i x3p
- 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]