Closed SachidanandAlle closed 4 years ago
user selects model they would like to use under "Auto Segmentation" and "Annotation" (which would only show those available), then the model is fetched when selected and a new Segment node is made automatically. Thoughts?
That makes sense.
Would it be possible to provide me with a sample document associated with the /v1/models
end point ? I am currently failing to use the server. See #29
@lassoan Since effect are activated only after creating a segment, I don't think the exact workflow described by @bsmarine will work.
To support this, I am thinking to update the segment editor effect infrastructure to support having effect selectable independently of the number of segment already created.
What do you think ?
This would enable the following workflow:
Nvidia AIAA
effectAuto-Segmentation
or Annotation
annotation_ct_liver
vs segmentation_ct_liver_and_tumor
) are listed, these would be created automatically1 The extension would bundle a version of the Json file describing the models. User would have the possibility to fetch an updated one by going to the Settings panel and clicking Fetch model list
The workflow is feasible, as you can activate an effect without having any segments if "perSegment" property of the effect is set to False.
We should probably have a button to create all the segments that are listed in the model but missing from the segmentation (in case the user deletes one of the segments).
If feasible, this proposed workflow would be a solid improvement
On Mon, Aug 26, 2019 at 5:48 PM Andras Lasso notifications@github.com wrote:
The workflow is feasible, as you can activate an effect without having any segments if "perSegment" property of the effect is set to False.
We should probably have a button to create all the segments that are listed in the model but missing from the segmentation (in case the user deletes one of the segments).
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/NVIDIA/ai-assisted-annotation-client/issues/23?email_source=notifications&email_token=AE7X5GPHKZIREJQUO7EK23LQGRFRZA5CNFSM4ILXREN2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5FZGDY#issuecomment-525046543, or mute the thread https://github.com/notifications/unsubscribe-auth/AE7X5GPWDUI3F6ITWWCN7NLQGRFRZANCNFSM4ILXRENQ .
We need to slightly tune the logic in qMRMLSegmentEditorWidget to enable perSegment effect when no segment is created. It is a single-line change in line 1596 (will commit today):
effectButton->setEnabled((segmentAvailable && segmentSelected) || !effect->perSegment());
I ended up adding a new flag (requireSegments
) instead of using perSegment
to distinguish effects that do not require presence of input segments from those that do not require selection of input segments: https://github.com/NVIDIA/ai-assisted-annotation-client/commit/30227d4f923b55f9ea40a50435c6758ff04118c1
(I've removed the slicer fork of this repository that I've created as we have write access to this repository now)
I've played with this yesterday quite a bit (added progress bars, made it work with both Slicer-4.10/Python2 and Slicer-4.11/Python3, etc.) and realized that this could be simplified.
Server hostname and port number should be possible to set in the GUI as a single editbox, as it is more convenient to copy-paste a single string than a string and a number.
A user may want to choose/switch between multiple servers, so we should be able to store multiple server addresses (with an enable/disable flag so that a server can be temporarily excluded from queries).
In application settings, we could store all server information in a single settings key in a json string:
'[{"host": "home.xxxyyyzzz.net:8123", "enabled": true}, {"host": "10.110.45.66:5678", "enabled": false}]'
This would be very flexible but not very convenient for users, so we could probably present it on the GUI with a simpler format that users can edit in a simple textbox:
home.xxxyyyzzz.net:8123 enabled
10.110.45.66:5678 disabled
Closing this issue as the required changes are added to slicer
From @bsmarine
Ideally, there would be a workflow possibly like this: user selects model they would like to use under "Auto Segmentation" and "Annotation" (which would only show those available), then the model is fetched when selected and a new Segment node is made automatically. Thoughts?
Currently, I think it's tough to move the AIAA Server Info off this screen since model needs to be fetched only after an organ segmentation is manually created that corresponds to an available model on the server.