Repository navigation
Import a folder of per-tree clouds as one project - #6
Merged
Merged
Conversation
Pipelines that emit one cloud per tree (raysplit, and most per-tree extraction tools) had to be merged by hand before segfix could open them, and a merged cloud with no tree-ID field falls back to numbering trees by their RGB colour - numbering that has nothing to do with the one the segmentation used. Keeping the original IDs meant adding a treeID column in the merge script, per tile, duplicating data that was already there. Per-tree Files... on the startup dialog does that merge on import: the tree ID comes from the filename (an editable regex, last number wins), from a path,tree_id CSV, or typed in, and any file can be marked as ground so its points arrive unassigned. The dialog shows the ID every file would get and refuses an import until the set is sound, because by the time the merge has run a wrong answer has cost a copy of the data. The merge streams - peak memory is one chunk, not one file and never the set - keeps the fields every input has, and ignores any tree-ID column already in a file: the filename is the authority. Everything downstream is unchanged, so Export Trees writes the set back out under those IDs.
This 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pipelines that emit one cloud per tree (raysplit, and most per-tree extraction tools) had to be merged by hand before segfix could open them, and a merged cloud with no tree-ID field falls back to numbering trees by their RGB colour - numbering that has nothing to do with the one the segmentation used. Keeping the original IDs meant adding a treeID column in the merge script, per tile, duplicating data that was already there.
Per-tree Files... on the startup dialog does that merge on import: the tree ID comes from the filename (an editable regex, last number wins), from a path,tree_id CSV, or typed in, and any file can be marked as ground so its points arrive unassigned. The dialog shows the ID every file would get and refuses an import until the set is sound, because by the time the merge has run a wrong answer has cost a copy of the data.
The merge streams - peak memory is one chunk, not one file and never the set - keeps the fields every input has, and ignores any tree-ID column already in a file: the filename is the authority. Everything downstream is unchanged, so Export Trees writes the set back out under those IDs.