Jakob Bratkovič j.bratkovic@iskratel.si Algoritem RANSAC Jakob Bratkovič j.bratkovic@iskratel.si
Kaj je RANSAC Random Sample Consensus Avtorja: Martin A. Fischler Robert C. Bolles Objava: Communications of the ACM (1981) Algoritem za prileganje modela eksperimentalnim podatkom
ALGORITEM Izberi N naključnih vzorcev. Oceni parametre modela. Ugotovi, kolikšen je delež vzorcev (K), ki se prilegajo modelu. Če je K dovolj velik, zaključi z algoritmom. Vrni se na korak 4, če je iteracija manjša od L. Neuspeh.
ALGORITEM RANSAC ima tri proste parametre: parameter tolerance napake, ki pove, ali točka ustreza modelu ali ne – (E) koliko različnih množic točk naj preizkusimo, preden se odločimo, da algoritem ni uspel najti primernega modela – (L) prag, ki določa, kolikšen delež iz celotne množice točk mora ustrezati modelu, da smatramo iteracijo za rešitev problema – (T)
DIAGRAM POTEKA
Model premice in metoda najmanjših kvadratov Velike napake lahko močno vplivajo na kvaliteto modela
Model premice in RANSAC Slabih točk z algoritmom RANSAC ne upoštevamo. Na dobrih podatkih lahko izvedemo kasneje še metodo najmanjših kvadratov.
DEMONSTRACIJA ALGORITMA LINE iteration: 1 adding 2 adding 0 estimating linear parameters... evaluating linear model... data good... 0.0 data good... 0.44721359549995815 data good... data bad... 1.3416407864998736 data bad... 3.5777087639996634 fail passed: 60.0% iteration: 2 adding 4 adding 1 data good... 0.7844645405527347 data good... 0.3922322702763628 data good... 0.39223227027636876 pass passed: 100.0% model: premica parametri: E – 0.8 L – 10 T – 0.9 (90%)
ZAKLJUČEK RANSAC je robusten algoritem za prileganje modela eksperimentalnim podatkom. Izboljšamo ga lahko tako, da naključni proces izbiranja zamenjamo z determinističnim.