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

Tensorflow segmentation #3461

Merged
merged 65 commits into from
Apr 10, 2019
Merged

Tensorflow segmentation #3461

merged 65 commits into from
Apr 10, 2019

Conversation

philippotto
Copy link
Member

@philippotto philippotto commented Nov 19, 2018

Open Issues:

  • Delete old z-slice predictions from the predictions map to free up space
  • Multiple Magic Wand "instances" can be spawned
  • Magic Wand only works in "positive" z-direction (maybe fine for now)
  • Should the Magic Wand be disabled by default and only be enabled via dev console or feature flag?
  • Update the tensorflow model to the fully trained new version

URL of deployed dev instance (used for testing):

Steps to test:

  • Open a volume tracing.
  • Use Ctrl + Click on a segment to trigger the Magic Wand. A toast should open and inform you of the process.
  • Use the brush to correct the prediction and move in positive z-direction through the dataset.
  • The magic wand mode should always predict the next 3 slices, then wait until the user moved "forward" and then continue predicting.
  • Close the modal to stop the magic wand mode.
  • The magic wand should also work on the XZ and YZ viewports, but the current model doesn't perform very well on these (will be improved with the new model).
  • Press Alt in any mode to move the viewport in a photoshop-like manner.

Issues:


- [ ] Updated changelog
- [ ] Updated migration guide if applicable

  • Needs datastore update after deployment
  • Ready for review
  • add new routes to wk-connect or document the need

philippotto and others added 30 commits November 16, 2018 17:35
* [WIP] provide sampled mean and stdev for color layer data

* convert to unsigned, clean up

* best resolution is actually min, not max

* pretty-backend
@daniel-wer daniel-wer changed the title [WIP] Tensorflow segmentation Tensorflow segmentation Apr 3, 2019
@daniel-wer daniel-wer requested a review from youri-k April 4, 2019 11:27
@daniel-wer daniel-wer self-assigned this Apr 4, 2019
@daniel-wer
Copy link
Member

@philippotto I'd say this is ready for a first review round. I cannot assign you as a reviewer, because you originally created this PR ^^ I'm especially looking for ways to improve the code in the volumetracing_saga. It may make sense to talk about this in person after you had a quick glance at the code in question :)

I've also updated the PR description and listed the remaining ToDos, feel free to add more stuff there.

@daniel-wer daniel-wer self-requested a review April 4, 2019 11:31
Copy link
Member Author

@philippotto philippotto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice 👍 The code looks really good. I left some suggestions/questions.

Also, I'd suggest to extract the entire infer-saga into an own file. Then, the helper functions within that saga can also be extracted to the top-level so that the main saga is not so long :)

frontend/javascripts/libs/floodfill.js Outdated Show resolved Hide resolved
frontend/javascripts/libs/floodfill.js Outdated Show resolved Hide resolved
@@ -36,6 +37,9 @@ import Model from "oxalis/model";
import Store from "oxalis/store";
import * as Utils from "libs/utils";

// TODO later remove me
window.isMagicWandToolEnabled = true;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a reminder to set this to false.

@daniel-wer
Copy link
Member

@philippotto I've finished up my Todos, maybe you could have another look at the code and do a final test run?
The redux-saga update was not too involved and I tested the main functionality of our sagas afterwards, everything worked as expected 🤞

Copy link
Member Author

@philippotto philippotto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! Code refactoring looks very good 👍 Testing worked well, too. Only thing, I noticed is that the auto-annotation stops if I'm moving too fast along the w direction (e.g., z). I thought you said that this wouldn't happen? However, I'm fine with this.

You can approve this PR now ^^ I can't because I created it.

package.json Outdated Show resolved Hide resolved
@daniel-wer
Copy link
Member

I thought you said that this wouldn't happen?

Yes that's what I thought, but it does indeed stop if the user moves too far ahead. Let's rethink what should happen if the user moves too far away while using the auto brush as part of the next iteration :)

@daniel-wer daniel-wer merged commit ddba67d into master Apr 10, 2019
@daniel-wer daniel-wer deleted the tensorflow-segmentation branch April 10, 2019 15:24
hotzenklotz added a commit that referenced this pull request Apr 25, 2019
* master: (43 commits)
  update screenshots (#4038)
  docker: don't set sbt/ivy cache (#4034)
  Slow down brush size change for small sizes (#4012)
  voulme tool bar now depends only on the active tool (#4029)
  Allow user to adapt GPU memory consumption to allow for better quality (#4015)
  Updates the Docs (#4020)
  hiding pricing and features in iframe (#4019)
  Fix sitemap for publication detail view (#4024)
  Add sitemap.xml (#4006)
  Allow empty trees  (#4010)
  Prefer annotation zoom over dataset zoom (#3992)
  Add details view for publications (#3994)
  remove enzyme test (#3997)
  Tensorflow segmentation (#3461)
  ensure that max zoom step is not exceeded when changing viewport area (#3996)
  allow isosurfaces for hybrid tracings when setting window.allowIsosurfaces (#3998)
  re-fetch buckets if fetching them failed (#3999)
  Only re-compute bounding sphere of skeletons if something changed (#3995)
  Fix dropdown login padding (#3988)
  Persist tree visibility (#3942)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Finalize first iteration of magic wand
4 participants