Currently, we only support bounding box nonmax suppression using the lsnms library (here). As we implement detectors that produce polygons, we should support NMS that uses arbitrary polygons for each object. At first glance, a reasonable option appears to be PolyGoneNMS, but I have not looked into it in any depth. Similar to LSNMS, it uses RTrees to accelerate computation. One benefit is this library uses shapely objects which is the same as what we use, so we won't have to convert between data representations.
Once we implement a polygon approach, we should evaluate whether it makes LSNMS obsolete.
Currently, we only support bounding box nonmax suppression using the
lsnms
library (here). As we implement detectors that produce polygons, we should support NMS that uses arbitrary polygons for each object. At first glance, a reasonable option appears to be PolyGoneNMS, but I have not looked into it in any depth. Similar to LSNMS, it uses RTrees to accelerate computation. One benefit is this library usesshapely
objects which is the same as what we use, so we won't have to convert between data representations.Once we implement a polygon approach, we should evaluate whether it makes LSNMS obsolete.