I am wondering if it is usual (best?) to choose the initial size of the set of points as the minimum size, which is needed to derive parameters of the fitting model.
For example, imagine that we are trying to fit a set of N = 1000
points on a plane with a line using RANSAC. To draw a line it is enough to have only 2 points. So the simplest implementation of RANSAC would be
- choose 2 points randomly and calculate parameters
a
andb
of the resulting liney = ax + b
- find all points, which are within allowed error
eps
. - recalculate
a
andb
using new points - go to step 2 if the new set of points is larger than initial.
Then one chooses again 2 random points and repeats all the steps above.
My question is following: does it make sense to initially choose not 2 points, but more(3, 4, ...?) points? Because my understanding that all people use the minimal number of points as starting set.
Why do I think that one has to use more starting points? Because imagine 2 inlier points (with noise but still inliers), which have close x
values, but different y
values. Then initial line will be completely wrong. People say: no problem, the step (2) will add close points and will correct this line and the rest of the loop will add more and more valid points and will finally get the job done. But is this indeed the case?