# RANSAC: should we always sample with the minimal number of data points?

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

1. choose 2 points randomly and calculate parameters a and b of the resulting line y = ax + b
2. find all points, which are within allowed error eps.
3. recalculate a and b using new points
4. 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?

• My intuition is that using a batch of point pairs will result in smaller variance. It is like with gradient descent: you can use one point at a time to find the direction of steepest change, or use a small batch. In the latter case, the sporadic variations will be smoothed out. Jan 12, 2018 at 15:38