Feature detection-based localization using OpenCV
Is there any algorithm recommendation to do this? My project is using single-channel image (BW), consist of 2 images. First image is user defined which is a "map" of an area (let says room) and second image is sensor result (using RpLIDAR 360 degree laser scanner). The second image only contain some parts of the first one. The goal is find corresponding position on the first image.
I'm using OpenCV2.4.11 and work on raspberry-pi2
Raw RpLIDAR result image
By using erode and dilate function for filter, HoughLinesPrediction to improve line result, SURF feature detection (I already try using ORB), and FLANN matcher, here's the result so far:
mismatched feature reading
one of expected result example
Is there any way to improve feature detection or matching method? i'm using C++ compiler for OpenCV but also open for any suggestion.
Thanks in advance. Hope i make my question clear enough.
most feature2d thingies work on gradients, thus fail on "binary" images.