pcl
pcl copied to clipboard
Fixes and improvements for FPCS and KFPCS
- Replace bad random sampling: previously, the random sampling was not guaranteed to give the user-specified number of samples, was not guaranteed to choose all points with the same probability, and might choose a point more than once. The new approach works similar to the RandomSample class
- Number of threads can now be set to 0 to use automatic setting
- linkMatchWithBase is not used any more. It has a bug that some indices are duplicated and others dropped. It is not necessary to use it any way because match and base_indices are already correctly ordered
- ids and dists_sqr are now created with the correct size (no resize necessary later)
- Add debug prints, improve documentation
- fpcs and kfpcs tests: set fine tuned score threshold, early termination if a good solution is found.
- kfpcs test: set higher maximum number of iterations (was previously automatically estimated as 19). This should fix the random (rare) failures on Azure pipelines