I want to test under Matlab an algorithm for essential matrix estimation within ransac framework. The inputs are sift correspondances and several Ransac iterations are performed to select inliers from outliers (false correspondances). I want to test the efficiency of the algorithm with different levels of noise. should I only introduce mismatch to certain number of correspondances randomly? alternatively How to add noise to sift correspondances (formula)?
The simplest way is to take the set of key-points for all frames (the pixel coordinates of the features) and add Gaussian noise to their position for both x,y
.
For example, if you have a matrix of key-points p
of size nx2
noisy_p = p + sigma * randn(n,2);
where sigma
is the standard deviation of noise you want to experiment with. Using a value of 1/2
or 1
gives typical noise you get on real-world images.