Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Manual matching in Hoot UI #1965

Open
MappinBenny opened this issue May 6, 2022 · 2 comments
Open

Manual matching in Hoot UI #1965

MappinBenny opened this issue May 6, 2022 · 2 comments

Comments

@MappinBenny
Copy link

It would be a time-saver to be able to address matching errors with a manual matching capability/toolbar in Hootenanny during the post-conflation review. The ideal manual conflation toolbar would give the user the ability to match features (partially or fully), unmatch features, split features, and delete features (possibly more depending on future project/user needs).

For context, addressing matching errors that were introduced by auto-conflation frequently involves multiple steps that may be done anywhere from dozens to thousands of times in an AOI - undoing a geometry error, repairing a geometry error, undoing an attribute transfer, repairing an attribute transfer, and/or partial or full removal of a feature or features. Addressing matching errors pre-export can reduce those steps by upwards of 50% - undoing a bad match, repairing the match, and re-conflating (if necessary).

@brianhatchl
Copy link
Contributor

The Edit tools native to the iD Editor code the Hoot UI is based on can be used on a merged (post-conflation) dataset to split features and delete features. These edits can then be saved back to the merged layer in the Hoot db as part of the post-conflation review process.

By "the ability to match features" I think you may mean "merge"? Because Hoot has already tried to match all the features during conflation. If the score was high enough, these features were merged in the conflated output. If the score was close to a match, but Hoot was uncertain, the features are grouped together in a review relation that the web UI has a workflow for stepping through and resolving. Resolving may mean leaving the review features as-is (ie. they do not represent the same physical feature). Or it may mean merging them, which the Hoot UI can do automatically for some review features (POIs, POI-to-Polygon, Polygon-to-Polygon, Railways) but not all. The manual merge would consist of copying select tags from one feature, pasting them to the other feature and deleting the unneeded feature geometry.

There isn't any code in the UI to look for new matches other than re-running the conflation, maybe with some different settings to either get more or less conservative or targeted in the matching/merging.

There also is not a concept of "unmatching" at this point. While the Hoot UI can toggle the map view between the two input layers and the output merged layer, there isn't a history of the edits made by conflation that can be undone via the UI.

Unless @mattjdnv @bmarchant @mschicker have other ideas about how fixing a bad match, I think signs of this would warrant a re-run of the conflation process with different parameters to avoid over-aggressive matching vs trying to correct them one-by-one by hand.

@MappinBenny
Copy link
Author

Thanks for the insight! I think the main idea in my request was to suggest some sort of ability to manually address/adjust matching before two datasets are exported from Hootenanny. The post-Reference-conflation review process is indeed very handy, but the ability to "unmatch" features (maybe via some sort of revert function?) would be immensely helpful toward reducing overall conflation project LOE.

Additional thought: there is no post-conflation review process in Hoot for a network differential w/ tags output, so spotting the difference between the pre- and post-conflation datasets is even more challenging when cleaning up the data. Would it be possible to add a post-conflation review option to the Differential and Differential w/ Tags conflation strategies?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants