-
Notifications
You must be signed in to change notification settings - Fork 24
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
Use segment index for non-connected ad-hoc meshing #7244
Conversation
I just pushed the front-end integration. Seems to work great 🎉
Where should this happen? Front-end or back-end or both? I adapted the code so that the new route is used iff a volume tracing exists without an editable mapping and without a fallback layer. However, it would probably be cleaner and less error-prone (?) if the VolumeTracing had a
|
One idea: The existing |
@philippotto Thanks for dealing with the frontend part of this :) The VolumeTracing proto object has an optional bool
Yes, legacy tracings have no segment index, even if the condition is met. They can be duplicated to add one (I think that sacrifices the version history, though).
Currently, no segment index is created/maintained at all for volume tracings that have a fallback segmentation. However, when voxelytics starts writing segment index files, we will add this feature in webknossos as well. |
Great, thank you! I incorporated the |
I don’t think there is a plan yet. It would certainly be nice to have it, probably the segment index file would be for the oversegmentation, and webknossos would have to gather the correct ids from there, depending on the id mapping |
@philippotto Doing it the other way around makes the name less akward in my opinion. So it's "findNeighbors" right now. Currently optional defaulting to true, can also be non-optional if the frontend always sends this. Also, do you have sample data to test this (or have you already tested it?) |
Great 👍 I integrated the new parameter, but it doesn't work yet. I see the new parameter in the payload (in the devtools), but the backend still sends the neighbors (I added an assertion to test against that which is why the frontend will crash currently when requesting ad hoc meshes). Could you have a look?
You can simply create a new volume annotation, brush a bit, save and then load an ad hoc mesh for the new segment. Before the "findNeighbors" flag, this worked fine 👍 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Backend LGTM!
I noticed that loading/refreshing the ad-hoc mesh does not ensure a saved state in the frontend. @philippotto do you know if this is intentional? if not, could you add it?
...tore/app/com/scalableminds/webknossos/tracingstore/controllers/VolumeTracingController.scala
Outdated
Show resolved
Hide resolved
Sorry for the late reply. I added this now 👍 |
@philippotto Can you assign someone for front-end review? |
@normanrz @MichaelBuessemeyer whoever's first to review, feel free :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
URL of deployed dev instance (used for testing):
Steps to test:
TODOs:
Issues:
(Please delete unneeded items, merge only when none are left open)