Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    David Manthey
    @manthey
    If you pull from the 2.x-maintenance branch of HistomicsTK you can use the older version.
    Joseph Coco
    @Lythimus
    I'll tinker with it. I haven't updated the repo since December, but I guess something inside the containers might be pulling from latest HistomicsTK.
    David Manthey
    @manthey
    It has been months, but I think the 2.x-maintenance branch pulls specific docker images, whereas before pinning it pulled the latest images (and there is probably the cause of the problem).
    Joseph Coco
    @Lythimus
    I checked out 2.x-maintenance, deploy_docker stop, rm, start. Girder version is being reported as 2.5, which is fine, but when I girder-install web I still get the same VersionConflict error.
    David Manthey
    @manthey
    Can you try adding the --pinned flag to the deploy_docker.py start command?
    Joseph Coco
    @Lythimus
    Hm, docker.errors.ImageNotFound: 404 Client Error: Not Found ("No such image: dsarchive/histomicstk_main:v0.1.6")
    Joseph Coco
    @Lythimus
    I manually switched to 1.0.2. I'll let you know if that works. Thanks for the help! Let me know if I can buy you a coffee or beer some how :)
    Joseph Coco
    @Lythimus
    I even tried running it on an instance that has a GPU incase the tensorflow CUDA requirement was causing problems. No such luck. Back to v0.1.6.
    David Manthey
    @manthey
    I just rebuilt the 2.x-maintenance branch dockers and tagged them with 0.1.7. I also pushed a change to the 2.x-maintenance branch so --pinned will pull these versions. This works on my development machine. Can you try them?
    Joseph Coco
    @Lythimus
    I probably should have mentioned the previous problem was low disk space. I bumped it up and it installed. Also, when starting the VMs, I get this error which cycles: https://pastebin.com/0uhzUNxi. Is that because I'm using an existing install? I've updated my password in docker_ansible.yml. Do I need to scrap the data after remove? That said, I do still get the same error after trying the web restart.
    Joseph Coco
    @Lythimus
    And this is the web_build log https://pastebin.com/njpUwrA7.
    David Manthey
    @manthey
    If you have previously installed with deploy_docker.py (that is, there is an existing database), then you can specify your username and password on the deploy_docker.py command line (or have it prompt for them). If it is the first installation (no existing database), then it uses the values in the yml file. There is a bug that you can't specify a username and password on the command line if there is no database yet. Changing
    the yml file may not do anything unless you are rebuilding the docker containers (I don't recall). Generally, we set up the initial deployment with the default, then change the admin password (or create a new admin user with a new name and password), then use the command line to specify or request the new user/password.
    Joseph Coco
    @Lythimus
    Thanks. I removed some of the git repo pulls in Dockerfiles and replaced them with directory bindings from a deploy_docker path argument (haven't run yet though). I'll specify username / password as well and try to run again. If that doesn't work I'm just going to reinstall from scratch.
    Joseph Coco
    @Lythimus
    I've tried reinstalling HistomicksTK a couple times but it seems like /usr/bin/girder-install in the host machine (not within the VMs) isn't being installed any longer. Am I missing something? I'm not sure how I got it installed in the first place.
    dregula
    @dregula
    Just starting to explore HistomicUI and Girder (v3). I teach one hundred pre-clinical medical students and have served about a hundred "Virtual Slides" from a public Leica-Aperio site (slide-hosting.com).(before they were called WSI) ur Aperio/Flash-based-client will expire soon (no browser will continue with Flash...)
    Our Aperio/Flash-based-client will expire soon (no browser will continue with Flash...) and I'm looking for a server/client solution we can manage ourselves. Our students have always wanted personal annotations for their own study and the Tk annotation-plugin seems just the ticket. Are any medical schools using DigitalSlideArchive servers for their Histology or Pathology WSI? (Got lots of more detailed questions, but let's start there! ;-)
    David Manthey
    @manthey
    I know there are versions of the DigitalSlideArchive running at Emory and Northwestern. I think they are mostly being used by specific research projects rather than general classes. It has been used to coordinate, for instance, annotations from 30+ pathologists of various levels (see https://digitalslidearchive.github.io/digital_slide_archive/success_stories/developing-machine-learning-tools-through-collaborative-annotation-studies/ for one example).
    dregula
    @dregula
    Thanks, David- Sounds like a slightly different use-case than I had envisioned. Each of our 100 students might wish to devise their own annotations for their own study purposes (e.g. this is the area of the slide with the Reed-Sternberg cell), as well as be able to see any annotations attached to the WSI by the instructor. Demand on the server is nil until just before scheduled Labs and Exams, then numerous students might be viewing the same images at the same time.
    The wonderful TK tasks are for done-the-road, when other trainees start exploring machine-learning...
    I'm just now walking through your various instructions for the devops scripts using WSL2 as a development platform. Already wondering about docker-swarm or kubernetes with shared tile files for load-balancing.
    I still don't quite grok the architecture (e.g. do I revise the HistonomicsUI templates to enable individual annotation.) Tried out the Girder-LDAP plugin, which is nifty, but I would need to revise or develop a new plugin as our LDAP infrastructure bans the use of passwords (you have to use either a kerberos-token or a task-specific private certificate.)
    This raises the second issue- if our students can not SSO using our extensive Kerberos/ADFS/SAML infrastructure, they won't even try a new application. Has anyone managed to use SAML authentication as a way to "populate" the User database and login a User?
    Thanks for listening!
    David Manthey
    @manthey
    There are a couple of approaches we've used to have each pathologist (or student in your case) have separate annotations. One is to let everyone make annotations on the same Girder item. If the annotations are private, only the user making them and those with admin privilege sees them; if public, then everyone sees them. The other option is to duplicate the Girder item (the WSI) to each user's own directory -- this won't copy the data, just a small amount of metadata for management. Annotations are then made with reference to the user's own copy. If you want to look at all the annotations of all the users, you then have to copy the annotations back to some central item. This was done, for instance, on a paper looking at crowd-sourcing annotations.
    David Manthey
    @manthey
    Girder doesn't support SAML. I'm sure, with work, it could be added. This is outside my realm of knowledge, so I can't give an estimate for how much work this would be.
    Regarding load balancing, there are a number of ways to do it. You can have multiple instances of Girder referencing the same assetstore and database, but sharing serving tiles. Tiles are cached in memory. The system should scale to 100 users without much issue. In a totally different project, we've used additional caching layers for tiles. This has worked for a non-Girder system that serves WSI for a large scale testing environment.
    Alex Laslavic
    @alasla
    Fluorescent images: It looks like they work in GeoJS (I get a slider where I can look at the different monochrome lyaers).
    Alex Laslavic
    @alasla
    Moved convo to gitlab.
    dregula
    @dregula
    Thanks for those answers David. I'm a Node novice, but is there an authentication framework that matches the framework used in girder? (e.g. Passport fits nicely in the "express" framework, but I am so naive I don;t even know if girder is written with "express" ;-) Looks like a Nginx balancer in front of multiple dsa conataners seens easy enough.
    David Manthey
    @manthey
    Girder is written in Python and uses the cherrypy as its server. Girder uses some standard python frameworks for authentication (pyldap for ldap, for instance).
    Brayan Camilo Vlenzuela Rincon
    @Brayan01_gitlab
    Hello Good afternoon. I have been trying to integrate new python code into the image viewer for a couple of weeks. I have reviewed the documentation available in the github repositories but have not been able to do so yet. Is there any detailed guide I can follow to perform that task? @manthey
    David Manthey
    @manthey
    @Brayan01_gitlab The UI is written as a Girder plugin, and there is some documentation about the general process at the girder readthedocs (https://girder.readthedocs.io/en/latest/plugin-development.html). Some parts of the UI are based on core Girder functions, some comes from plugins such as large_image, large_image_annotations, slicer_cli_web, and some is located in HistomicsUI. There is a cookie-cutter template for making your own plugin which can then modify or extend existing code from core or plugins (see https://github.com/girder/cookiecutter-girder-plugin).
    Brayan Camilo Vlenzuela Rincon
    @Brayan01_gitlab
    image.png
    @manthey Thank you very much for responding. I think I didn't ask the question correctly, I'm trying to add new analyses to the viewer (like the ones in the image), but I haven't been able to do it with the documentation that is in the github repo, is there any step by step guide on how to do this process?
    image.png
    Brayan Camilo Vlenzuela Rincon
    @Brayan01_gitlab
    I was following this guide, but I don't understand where I should add the files, in the dockers that are created after the installation or in the project that came down from the repo? and I don't understand where I should add the files, in the dockers created after the installation or in the project I download from the repo?
    David Manthey
    @manthey
    Okay, I was thinking you meant the UI for the viewer itself not for algorithms. Algorithms are packaged in docker images using the slicer cli specification. A small simple example can be found at https://github.com/girder/slicer_cli_web/tree/master/small-docker. You can have any code you want inside the docker; in that example, the file cli_list.py just reports the algorithms listed by cli_list.json. The actual algorithm is a separate python file that also has an xml file that lists its input and output parameters. The examples don't do much; see the main HistomicsTK repo in the histomicstk/cli directory for examples that actually do something useful.
    The docker needs to have whatever packages you need for your algorithms (pip installed in the docker file, for instance) and the algorithm itself. In the small-docker example, the dockerfile copies all of the other code into the docker image.
    Brayan Camilo Vlenzuela Rincon
    @Brayan01_gitlab

    Thank you very much for the documentation, I have been reviewing it and it has clarified the concepts for me.

    I'm looking for the histomicsTk folder in my project and I can't find it. The installation of the viewer that shows the photos of previous comments is being done from the repo https://github.com/DigitalSlideArchive/digital_slide_archive
    following the tutorial that is exposed in this one. For the task I want to perform, is this the best way to work? Do I need to install any of them?

    David Manthey
    @manthey
    The HistomicsTK project is in its own repo https://github.com/DigitalSlideArchive/HistomicsTK. The histomicstk/cli directory is there.
    David Manthey
    @manthey
    I'll look into seeing if this is something simple or hard to fix.
    David Manthey
    @manthey
    I can't seem to casually replicate this. I placed a file needing conversion in a private folder of a non-admin user and that non-admin user could initiate the tiff conversion on it. Can you give me more details on your configuration (I've clearly missed some aspect of your environment)?
    minkfeisha
    @minkfeisha

    https://github.com/DigitalSlideArchive/HistomicsTK

    I follow up the instruction to install from source on Windows
    last line is pip install girder-client

    it show "Successfully installed diskcache-5.2.1 girder-client-3.1.3 requests-toolbelt-0.9.1"

    I don't know how to open HistomicsTK on Chrome browser.

    David Manthey
    @manthey
    Are you trying to run the Digital Slide Archive and the HistomicsUI to use HistomicsTK? HistomicsTK is the toolkit of algorithm. HistomicsUI is the user interface using Girder, generally deployed as the Digital Slide Archive.
    minkfeisha
    @minkfeisha
    Maybe I understand wrong. I would like to install HistomicsTK on my computer. I want to use HistomicsTK on browser. I just follow 7 steps from link
    David Manthey
    @manthey
    You followed the instructions to install HistomicsTK as a python package. I think you want the UI, which is most easily deployed as the Digital Slide Archive (see the link a little further down the page -- http://github.com/DigitalSlideArchive/digital_slide_archive).
    minkfeisha
    @minkfeisha
    image.png
    I continue to follow your link and get error
    David Manthey
    @manthey
    If you are trying to use docker containers on Windows, then you need to make sure you can run linux containers.
    I don't know if you can run the HistomicsTK algorithms through docker on Windows directly -- I know it works via the virtualbox deployment, and I know that the UI (possibly with some fussing) can run on docker on Windows with linux containers.
    Francesco Manfredi
    @FrancescoManfredi
    hi all, I'm in need of a little piece of information about the HED color space. I need to use the components as features in a Machine Learning application but I can't find anything about the max and min values each component can have. I need this to normalize those values to use them as features.. anyone can help with this?
    David Manthey
    @manthey
    There is color deconvolution code in HistomicsTK which can be used to process HED color. Completely separate from that, you can get min and max values for components in an image from the tilesource's histogram function (via python or the REST endpoint).
    Lee Cooper
    @cooperlab
    @FrancescoManfredi the color_deconvolution function in HistomicsTK returns a uint8 so values will be in the range [0, 255] https://digitalslidearchive.github.io/HistomicsTK/histomicstk.preprocessing.color_deconvolution.html#histomicstk.preprocessing.color_deconvolution.color_deconvolution