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

Expose Threshold between Estimated Active & Inactive Valley Bottom as Parameter and Change Default #415

Closed
2 tasks
joewheaton opened this issue Sep 5, 2021 · 12 comments
Assignees
Labels
enhancement New feature or request pkg:VBET VBET python package
Milestone

Comments

@joewheaton
Copy link
Contributor

joewheaton commented Sep 5, 2021

We are displaying in "Estimated Valley Bottom" Geomorphic Units Active as likelihood 0.99 to 0.8 and inactive 0.8 to 0.68. From what I've seen, this is not a good estimate. I am speculating that 0.9 will be better as a rough-cut of active vs. inactive. As such, @philipbaileynar can we change VBET to:

  • Expose this threshold between these two polygons as a parameter for CyberCastor CLI in VBET
  • Change the default from 0.8 to 0.9

Rationale from #245
image

image

From #362 this changes to:

CategoryID Likelihood Label in Legend Notes/Rationale Old Threshold
1 >= 0.99 Estimated Active Channel 100
2 0.99 < Polygon >= 0.90 Estimated Active Floodplain 70
3 0.90 < Polygon >= 0.68 Inactive Floodplain 50
4 >= 0.68 Plausible Valley Bottom 50
@joewheaton joewheaton added enhancement New feature or request pkg:VBET VBET python package labels Sep 5, 2021
@joewheaton joewheaton added this to the Week 3 - Sept milestone Sep 5, 2021
@shelbysawyer
Copy link

shelbysawyer commented Sep 7, 2021

@joewheaton Makes sense.. I noticed that the active was a little generous when cruising around through VBET. If 90% ends up being too generous for inactive is that necessarily a bad thing? Or would we work the numbers again?

@philipbaileynar
Copy link
Contributor

@shelbysawyer can you please take the VBET project for 10190005 and threshold the combined evidence raster at 0.9 and then paste a screenshot here (with your best attempt to match Joe's symbology if possible).

In other words, lets avoid making time consuming and expensive changes to software merely on speculation. Let's do the cheap and easy task of producing one example manually and proving to ourselves that it's what we really think it is.

@MattReimer
Copy link
Member

Might I suggest @philipbaileynar & @shelbysawyer let's wait for VBET 0.4.0 before we do this work so we can be sure we're using all the latest changes

@shelbysawyer
Copy link

@MattReimer Okay. I'm happy to play with this if it would a helpful visual, even if based on the outdated tool. Just let me know.

@MattReimer
Copy link
Member

Sure. It's just my job to make sure everyone knows what version things are at 😄

I've updated the release notes with versions so we know we're using the current stuff
https://github.com/Riverscapes/riverscapes-tools/releases/tag/Sep2021_release

@philipbaileynar
Copy link
Contributor

Further supporting the decision to rush in and change thresholds without first proving their value... remember that we use the vbet_80 and vbet_68 as layer names. Changing one or more of these breaks business logic and creates a ton of work. Better to confirm first that the change is of value.

Perhaps this also suggests that baking the threshold into the layer name is a bad idea...

@MattReimer
Copy link
Member

MattReimer commented Sep 10, 2021

Kelly and I just discussed this. Places where the name vbet_68 exists:

  • The python tool py file (for vbet)
  • The python metadata augmentor scripts (for brat,confinement, rvd etc)
  • All relevant Cybercastor automation scripts (because we pass it in as a filename)
  • Businesslogic XMLs

I'm open to any suggestions how we can do this in a generic way but I can't think of one because the layers need names and each threshold is a layer.

Maybe we could squash all the geometry onto a single layer and have the threshold be a field?

@philipbaileynar
Copy link
Contributor

Maybe we could squash all the geometry onto a single layer and have the threshold be a field?

Don't like this. Makes it really hard for downstream tools to use subset of features.

@joewheaton
Copy link
Contributor Author

@philipbaileynar let me know if you want to update this (I recall you jotting down notes on naming convention we agreed upon).

@philipbaileynar
Copy link
Contributor

Closing this issue in favour of #428

#427 is also relevant.

@joewheaton
Copy link
Contributor Author

What about exposing this as parameter @philipbaileynar ?

@KellyMWhitehead
Copy link
Contributor

Move the threshold values to a vbet parameter. Next steps will be to add this to launch and automation scripts.

Defaults to 68% (Full vbet) and 90% (IA vbet)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pkg:VBET VBET python package
Projects
None yet
Development

No branches or pull requests

5 participants