Box Cutter: Atlas Refinement for Efficient Packing via Void Elimination

Max Limper        - Fraunhofer IGD / TU Darmstadt
Nicholas Vining  - University of British Columbia
Alla Sheffer         - University of British Columbia
ACM Transactions on Graphics (SIGGRAPH), 2018

Traditional texture atlas generation frameworks, such as [Poranne et al. 2017] (a), produce results which can have low packing efficiency and are not necessarily bijective (see inset). We produce an overlap-free atlas with the same parametric distortion and significantly higher packing efficiency by strategically segmenting and repacking the original charts directly in 2D space (b). We use the same framework to efficiently pack 2D patterns for 3D fabrication (c-e).

Packed atlases, consisting of 2D parameterized charts, are ubiquitously used to store surface signals such as texture or normals. Tight packing is similarly used to arrange and cut-out 2D panels for fabrication from sheet materials. Packing efficiency, or the ratio between the areas of the packed atlas and its bounding box, significantly impacts downstream applications. We propose Box Cutter, a new method for optimizing packing efficiency suitable for both settings. Our algorithm improves packing efficiency without changing distortion by strategically cutting and repacking the atlas charts or panels. It preserves the local mapping between the 3D surface and the atlas charts and retains global mapping continuity across the newly formed cuts. We balance packing efficiency improvement against increase in chart boundary length and enable users to directly control the acceptable amount of boundary elongation. While the problem we address is NP-hard, we provide an effective practical solution by iteratively detecting large rectangular empty spaces, or void boxes, in the current atlas packing and eliminating them by first refining the atlas using strategically placed axis-aligned cuts and then repacking the refined charts. We repeat this process until no further improvement is possible, or until the desired balance between packing improvement and boundary elongation is achieved. Packed chart atlases are only useful for the applications we address if their charts are overlap-free; yet many popular parameterization methods, used as-is, produce atlases with global overlaps. Our pre-processing step eliminates all input overlaps while explicitly minimizing the boundary length of the resulting overlap-free charts. We demonstrate our combined strategy on a large range of input atlases produced by diverse parameterization methods, as well as on multiple sets of 2D fabrication panels. Our framework dramatically improves the output packing efficiency on all inputs; for instance with boundary length increase capped at 50% we improve packing efficiency by 68% on average.

  author    = {Limper, Max and Vining, Nicholas and Sheffer, Alla},
  title     = {BoxCutter: Atlas Refinement for Efficient Packing via Void Elimination},
  journal   = {ACM Transaction on Graphics},
  year      = {2018},
  volume    = {37},
  number    = {4},
  doi       = {10.1145/3197517.3201328},
  publisher = {ACM},
  address   = {New York, NY, USA}
Additional Material

All images are © ACM, 2018.