Much faster creation & rendering of complex ROIs by petebankhead · Pull Request #1777 · qupath/qupath
Inspired by CoverageUnion not quite working... it was very fast, but gave invalid results. This code (still needs cleaned up!) avoids unioning many polygons by instead delaying polygonization until the final step. This allows us to remove duplicates along tile boundaries before passing *everything* to a `Polygonizer`. There is probably still scope for some optimizations (e.g. replacing `LineDissolver`) and a need to clean up the code and update the comments. But currently it shortens the time to trace ~8 million vertices to ~25 seconds on my laptop, rather than >> 100 seconds. So committing this code now, lest I break it too badly...
Calculate sequentially across downsamples & also improve caching. Drop small regions/holes that aren't visible.
petebankhead
changed the title
Initial speed improvements for ContourTracing
Much faster creation & rendering of complex ROIs
This was referenced
Mar 2, 2025This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters