-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Areaselector was designed to help mapping buildings in Austria based on basemap.at images. This imagery is good but could have a little bit higher quality to better detect edges. That is also the main reason why the algorithm has been adjusted to work as good as possible with that images.
See Configuration
Areaselector records the point where you click in JOSM and renders all background layers together.
There are two algorithms, which will be used. The first ist the canny edge detection algorithm of boofcv. It detects all edges and creates a polygon out of it.
It works good, if the images are high quality and the lines are thin. In the image polygon-2, you can see that it might detect two lines, if the border of an area is a little thicker. That might lead to inaccurate results.
The second algorithm is a custom developed algorithm, which works good with thicker border lines. It extracts all areas from the image, where the color is similar to the marked position. After that thining and noise reduction is applied. The lines will be skeletonized and boofcv is used to find the border polygon. This process is more CPU intense, than the boofcv canny edge detector.
-
base image
-
gaussian filter
-
Color inverted
-
thining 1
-
thining 2
-
noise reduction 1
-
noise reduction 2
-
skeleton
-
detected polygon
-
detected polygon on the background image
The standard setting is to try the canny edge detector and if it fails, use the custom algorithm, which is successfull in most of the cases, but might not be that exact, depending on the picture.
In my experience it's best to try out, which algorithm works better for your usecase. The algorithm can be selected in the areaselector preferences.