1 / 47

Interactive Mesh Differencing & Conflict Resolution App

A case study on an interactive approach to mesh merging and conflict resolution, highlighting the benefits and challenges. The software aims to automate detecting differences and provide interactive ways for merging. It distinguishes between explicit and implicit conflicts and offers visualization strategies. The tool processes 3D models, resolves conflicts at a vertex level, and generates a merged 3D model. The method involves automated differencing and interactive merging stages, with a focus on directing visualizations and conflict resolution. The tool is independent from modeling tools and implements C++ and Qt technologies for mesh comparison. User studies have shown positive feedback on the tool's effectiveness and usability for 3D model merging tasks.

shawngeorge
Download Presentation

Interactive Mesh Differencing & Conflict Resolution App

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3D Diff: An Interactive Approach to Mesh Differencing and Conflict Resolution JozefDobošand Anthony Steed

  2. Case Study

  3. Case Study

  4. Case Study

  5. Case Study ?

  6. Case Study

  7. Motivations • Scene might be edited concurrently • 3D differencing and merging is tedious manual work • Editing software such as Max, Blender do not aid the merging process • Textual changes unlikely to work • Most of the time entire edits from one version • Various modes of interaction and visualization possible

  8. Contributions • Definition analogous to software merging • Automatically detect differences • Provide interactive ways for merging • Distinction of conflicts • Explicit: components edited concurrently • Implicit: caused by side-effects of merging • Prototype open source tool (3D Diff) • Evaluation of different visualizations with users

  9. Previous Work • Asset management and version control • VisTrails Provenance Explorer for Maya [Bavoil et al. ‘05] • Non-linear Revision Control for Images [Chen et al. ‘11] • 3D Revision Control Framework [Doboš& Steed ‘12] • High-end CAD packages • Model correspondences • Contextual Part Analogies in 3D Objects [Shapira et al. ‘10] • Exploring Shape Variations by 3D-model Decomposition and Part-based Recombination [Jain et al. ‘12]

  10. Software Merging • Versioning • Pessimistic: locking • Optimistic: merging • Merging support • State-based (only state at the time of merging) • Change-based (all individual changes) • Operation-based (changes re-run in editor) • Visualization strategies [Gleicher et al. ‘11] • Juxtaposition (side-by-side) • Superposition (overlay) • Explicit encodings (time warp/substractions)

  11. Our Method • Stages • Automated 3D differencing • Interactive 3D merging • Input • Two 3D models • Optionally their ancestor (resolves ambiguities) • Output • Merged 3D model • Direct conflicts to be resolved in a vertex-level editor

  12. Processing Pipeline

  13. Processing Pipeline • Start from a common 3D scene

  14. Processing Pipeline • Modify independently

  15. Processing Pipeline • Export as files

  16. Processing Pipeline • Load into our tool and automatically diff (2-way)

  17. Processing Pipeline • Optionally add common ancestor (3-way)

  18. Processing Pipeline • Interactively merge

  19. Processing Pipeline • Export as file

  20. Representation • 3D model as a generic scene graph • Directed acyclic graph • Edges carry no information apart from parenting • Every component is a node (incl. transformations, meshes…) • Smallest unit of change is a node • Corresponding nodes have matching IDs [Doboš& Steed ‘12] • Changes tracked: addition, deletion, modification • If a node is changed, all instances are affected • Graph topologies can be different

  21. Conflicts • Explicit conflict (direct) • Node exists in both models and is not equal • Equality is implementation dependent • Implicit conflict (indirect) • Semantics are violated • Bounding box intersections introduced during the merge process

  22. 3D Differencing

  23. 3D Differencing

  24. 3D Differencing

  25. 3D Differencing

  26. 3D Differencing

  27. 3D Differencing

  28. 3D Differencing

  29. 3D Differencing

  30. 3D Merging • Aims to build syntactically correct model • Joins resolved and conflicted nodes • Partial automation • Added • Deleted • Modified • Ambiguities resolved manually • Added/deleted • Deleted/modified • Explicit conflicts

  31. Implementation • Independent from modeling tools • C++ and Qt • Open Asset Import Library (Assimp) • Currently only meshes, extensible to other components • Performs in-memory byte-by-byte comparison on • Vertices • Indices • Normals

  32. Visualization • Same UI for 2-way and 3-way differencing • Modes • Overlay (merge window only) • Standard (two differenced models + larger merge window) • Smart (standard + indirect conflict detection) • Differences shown as • Color coded highlights • Table with tick boxes • Scene navigation linked across windows • Automated camera

  33. 2-way Diff

  34. 2-way Overlay

  35. 2-way Standard

  36. 3-way Diff

  37. 3-way Diff

  38. User Study • 3D merging with increasing level of support • Two-way overlay • Two-way standard • Three-way standard • Three-way smart • 8 PhD students merged 4 sets of modified models • Sample model • Small industrial model • Large city model • Tests and model sets shuffled according to Latin square

  39. Evaluation • Questionnaire after each test • Participants • Able to explore options easily • Varied in judgement of merge success • Indirect conflict detection considered useful

  40. Conclusions • Problems of 3D differencing and merging are identified • Scene graph abstraction provides syntactically and semantically correct results • Node-to-node correspondence is assumed • Indirect conflict is regarded as a violation of semantics • Interactive prototype tool visualizes both types of differencing

  41. Future Work • Correspondences to be resolved • Granularity of changes might not fit all projects • Differences on vertex-level to be detected • Intentions could be automatically inferred

  42. Sponsors Arup Foresight http://driversofchange.com UK Engineering and Physical Sciences Research Council http://www.epsrc.ac.uk UCL Engineering Doctorate Centre in Virtual Environments, Imaging & Visualisation http://engdveiv.cs.ucl.ac.uk

  43. 3drepo.org

  44. Visualizing 3D Models in Aid of Public Consultation • Saturday 11:00 - 12:45, Tourmaline 207

  45. Video

More Related