GithubHelp home page GithubHelp logo

tomaat-slicer's People

Contributors

faustomilletari avatar j-frei avatar jcfr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

tomaat-slicer's Issues

Error during service discovery

Hi,

is this project abandoned, or am I missing something?
when clicking on 'discover service' on 3D Slicer, the error in the title appears

thanks -- and thanks anyway for the module

Error when launching Slicer after installing TOMAAT

I receive the following error after installing the TOMAAT extension.

Could not install packages due to an EnvironmentError: [Error 5] Access is denied: 'C:\\Program Files\\Slicer 4.11.0-2019-02-19\\lib\\Python\\Lib\\site-packages\\requests_toolbelt'
Consider using the `--user` option or check the permissions.

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:/Users/arankin/AppData/Roaming/NA-MIC/Extensions-27968/TOMAAT/lib/Slicer-4.11/qt-scripted-modules/TOMAAT.py", line 1, in <module>
    import utils.dependencies
  File "C:\Users\arankin\AppData\Roaming\NA-MIC\Extensions-27968\TOMAAT\lib\Slicer-4.11\qt-scripted-modules\utils\dependencies.py", line 20, in <module>
    from requests_toolbelt import MultipartEncoder, MultipartEncoderMonitor
ImportError: No module named requests_toolbelt
SystemError: D:\D\P\Slicer-0-build\Python-2.7.13\Objects\classobject.c:521: bad argument to internal function

Can the missing dependency be packaged with the extension?

Server defined GUI

I'm looking for the best way to allow remote prediction endpoints (servers) to send over to the clients the blueprints to build a GUI that is specific to each service.

for example: I have a segmentation algorithm that accepts more than one channel of data, or accepts a number of different parameters. I want to tell slicer "hey, look that this server wants to have in the GUI additional fields which should be (for example) [a volume selection drop down menu named 'T1', a volume selection drop down menu named 'T2', 'a slider with max value 1 and min value 0 called 'threshold', 'a checkbox button called 'checkbox'] and then present all of these elements to the user. The values of these elements are then sent via request to the server.

In this way we can extend flexibility, but what is the best way to do this? XML? JSON?

@jcfr

Add popup warning about data leaving the client

Thinking more about this extension, and after trying it out, I think it would be appropriate (if not mandatory) to have a very prominent warning for the user that the data to be segmented is going to leave the computer.

The approach taken in this extension is highly unconventional to Slicer development model, which usually is to do all analysis locally. Considering the sensitive nature of the image data and regulations, I recommend that for every click of "Segment" button you pop up a message telling user what is going to happen, and what data is going to leave the client. Otherwise, I am afraid, it is only a matter of time before someone can get in trouble...

Only now I realized the importance of the detailed disclaimers you put in the code and documentation, but I don't think those disclaimers will be read by the end users. I think the reality is most users don't read documentation.

cc: @pieper @lassoan @jcfr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.