{"id":13716694,"url":"https://github.com/Abe404/root_painter","last_synced_at":"2025-05-07T06:30:53.006Z","repository":{"id":40953922,"uuid":"256066339","full_name":"Abe404/root_painter","owner":"Abe404","description":"RootPainter: Deep Learning Segmentation of Biological Images with Corrective Annotation","archived":false,"fork":false,"pushed_at":"2024-07-25T10:46:11.000Z","size":1980,"stargazers_count":53,"open_issues_count":44,"forks_count":13,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-03T01:43:21.953Z","etag":null,"topics":["biological-images","deep-learning","gui","human-in-the-loop","human-in-the-loop-machine-learning","interactive-machine-learning","interactive-segmentation","interactive-training","machine-teaching","painter","pytorch","root","root-painter","segmentation"],"latest_commit_sha":null,"homepage":"https://nph.onlinelibrary.wiley.com/doi/full/10.1111/nph.18387","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Abe404.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-16T00:11:43.000Z","updated_at":"2024-06-06T15:11:39.000Z","dependencies_parsed_at":"2024-05-28T11:06:10.560Z","dependency_job_id":null,"html_url":"https://github.com/Abe404/root_painter","commit_stats":{"total_commits":516,"total_committers":5,"mean_commits":103.2,"dds":"0.31976744186046513","last_synced_commit":"a047e12411bd5bc3915ada072e5361b6241c031c"},"previous_names":[],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Abe404%2Froot_painter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Abe404%2Froot_painter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Abe404%2Froot_painter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Abe404%2Froot_painter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Abe404","download_url":"https://codeload.github.com/Abe404/root_painter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224567724,"owners_count":17332830,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["biological-images","deep-learning","gui","human-in-the-loop","human-in-the-loop-machine-learning","interactive-machine-learning","interactive-segmentation","interactive-training","machine-teaching","painter","pytorch","root","root-painter","segmentation"],"created_at":"2024-08-03T00:01:13.390Z","updated_at":"2025-05-07T06:30:52.999Z","avatar_url":"https://github.com/Abe404.png","language":"Python","readme":"## RootPainter\n\nRootPainter is a GUI-based software tool for the rapid training of deep neural networks for use in image analysis. \nRootPainter uses a client-server architecture, allowing users with a typical laptop to utilise a GPU on a more computationally powerful server.  \n\nA detailed description is available in the paper published in the New Phytologist  [RootPainter: Deep Learning Segmentation of Biological Images with Corrective Annotation](https://doi.org/10.1111/nph.18387)\n\n![RootPainter Interface](https://user-images.githubusercontent.com/376295/224013411-cb44c7c2-5c72-4819-98a3-6c0ab8b9ea4d.png)\n\nTo see a list of work using (or citing) the RootPainter paper, please see the [google scholar page](https://scholar.google.com/scholar?cites=12740268016453642124)\n\nA BioRxiv Pre-print (earlier version of the paper) is available at:\n[https://www.biorxiv.org/content/10.1101/2020.04.16.044461v2](https://www.biorxiv.org/content/10.1101/2020.04.16.044461v2)\n\n\n### Getting started quickly\n\n I suggest the [colab tutorial](https://colab.research.google.com/drive/104narYAvTBt-X4QEDrBSOZm_DRaAKHtA?usp=sharing).\n \n A  shorter [mini guide](https://github.com/Abe404/root_painter/blob/master/docs/mini_guide.md) is available including more concise instruction, that could be used as reference. I suggest the paper, videos and then colab tutorial to get an idea of how the software interface could be used and then this mini guide for reference to help remember each of the key steps to get from raw data to final measurements. \n \n \n### Videos\n\nA 14 minute video showing how to install RootPainter on windows 11 with google drive and google colab is available on [youtube](https://www.youtube.com/watch?v=HuSujZQOkQw). A similar video for macOS is also [now available on youtube](https://youtu.be/rBCkem0ub_I). I suggest watching these videos to help with the installation part of the [colab tutorial](https://colab.research.google.com/drive/104narYAvTBt-X4QEDrBSOZm_DRaAKHtA?usp=sharing).\n\nA video demonstrating how to train and use a model is available to [download](https://nph.onlinelibrary.wiley.com/action/downloadSupplement?doi=10.1111%2Fnph.18387\u0026file=nph18387-sup-0002-VideoS1.mp4)\n\nThere is a [youtube video](https://www.youtube.com/watch?v=73u73tBvRO4) of a workshop explaining the background behind the software and covering using the colab notebook to train and use a root segmentation model.\n\n\n### Client Downloads\n\nSee [releases](https://github.com/Abe404/root_painter/releases) \n\nIf you are not confident installing and running python applications on the command line then to get started quickly I suggest the [colab tutorial](https://colab.research.google.com/drive/104narYAvTBt-X4QEDrBSOZm_DRaAKHtA?usp=sharing).\n\n#### Server setup \n\nThe following instructions are for a local server. If you do not have a suitable NVIDIA GPU with at least 8GB of GPU memory then my current recommendation is to run via Google colab. A publicly available notebook is available at [Google Drive with Google Colab](https://colab.research.google.com/drive/104narYAvTBt-X4QEDrBSOZm_DRaAKHtA?usp=sharing).\n\nOther options to run the server component of RootPainter on a remote machine include the [the sshfs server setup tutorial](https://github.com/Abe404/root_painter/blob/master/docs/server_setup_sshfs.md). You can also use Dropbox instead of sshfs.\n\n\nFor the next steps I assume you have a suitable GPU and CUDA installed.\n\n1. To install the RootPainter trainer:\n\n```\npip install root-painter-trainer\n```\n\n2. To run the trainer.  This will first create the sync directory.\n\n```\nstart-trainer\n```\n\nNote: if you are installing the RootPainter trainer (server) from scartch on windows 11 I suggest [these linked instructions](docs/windows_11_trainer_install.md).\n\nYou will be prompted to input a location for the sync directory. This is the folder where files are shared between the client and server. I will use ~/root_painter_sync.\nRootPainter will then create some folders inside ~/root_painter_sync.\nThe server should print the automatically selected batch size, which should be greater than 0. It will then start watching for instructions from the client.\n\nYou should now be able to see the folders created by RootPainter (datasets, instructions and projects) inside ~/Desktop/root_painter_sync on your local machine \nSee [lung tutorial](docs/cxr_lung_tutorial.md) for an example of how to use RootPainter to train a model. I now actually suggest following the [colab tutorial](https://colab.research.google.com/drive/104narYAvTBt-X4QEDrBSOZm_DRaAKHtA?usp=sharing) instructions but using your local setup instead of the colab server, as these are easier to follow than the lung tutorial.\n\n\n ### Questions and Problems\n \nThe [FAQ](https://github.com/Abe404/root_painter/blob/master/docs/FAQ.md) may  be worth checking before reaching out with any questions you have. If you do have a question you can either email me or post in the [discussions](https://github.com/Abe404/root_painter/discussions). If you have an issue/ have identified a problem with the software then you can [post an issue](https://github.com/Abe404/root_painter/issues).\n","funding_links":[],"categories":["Plant science"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAbe404%2Froot_painter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAbe404%2Froot_painter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAbe404%2Froot_painter/lists"}