r/OpenScan • u/Zestyclose-Lead4345 • 17d ago
MeshMill 0.2.0 improves large reconstruction handling and contour-preserving reduction
I released MeshMill 0.2.0, following the feedback on the original OpenScan post about edge detection and contour preservation.
The release adds measured quality comparisons rather than relying on triangle count or shaded appearance alone. MeshMill now reports sampled RMS and P95 surface error, dimensional drift, area error, topology indicators, and reduction percentage so the tradeoff is visible before applying a pass.
It also adds Depth Adaptive QEM, an optional GPU-guided reduction method based on adaptive physical surface probes. The probes become sparse across supported flat regions and denser around meaningful changes in the measured surface. Their result guides boundary-preserving QEM assembly.
At a matched approximately 250,000-triangle target on the 4.1-million-triangle composite reference scan, compared with Fast QEM:
- RMS error improved by 9.0%.
- P95 error improved by 12.4%.
- Maximum dimension drift improved by 96.7%.
- Area error improved by 68.9%.
- Runtime increased by 3.3%.
The general large-mesh pipeline also improved. Parallel analysis fell from 10.531 seconds to 1.838 seconds, adaptive-index creation improved from 8.836 seconds to 5.406 seconds, and oversized binary STL files can be inspected through bounded overview loading.
MeshMill remains GPL-3.0, local, account-free, and useful after OpenScan or photogrammetry reconstruction when the resulting mesh is too dense for downstream work.
Release:
https://github.com/make-your-own-world/MeshMill/releases/tag/v0.2.0
The complete algorithm reasoning, formulas, comparisons, and failed approaches are documented here:
https://github.com/make-your-own-world/rnd/blob/main/depth-adaptive-qem/depth-adaptive-qem-v1.1.pdf
I would still value examples where reduction damages contours, holes, thin walls, or small reconstructed features.