{"id":13716620,"url":"https://github.com/Gregor-Mendel-Institute/aradeepopsis","last_synced_at":"2025-05-07T06:30:38.948Z","repository":{"id":40371768,"uuid":"240287274","full_name":"Gregor-Mendel-Institute/aradeepopsis","owner":"Gregor-Mendel-Institute","description":"A versatile, fully open-source pipeline to extract phenotypic measurements from plant images","archived":false,"fork":false,"pushed_at":"2022-11-07T16:40:50.000Z","size":2881,"stargazers_count":41,"open_issues_count":3,"forks_count":8,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-12T15:43:40.785Z","etag":null,"topics":["arabidopsis-thaliana","deep-learning","nextflow","plant-phenotyping","scikit-image","semantic-segmentation","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Nextflow","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Gregor-Mendel-Institute.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-02-13T15:00:47.000Z","updated_at":"2024-10-31T09:03:30.000Z","dependencies_parsed_at":"2023-01-22T15:30:54.767Z","dependency_job_id":null,"html_url":"https://github.com/Gregor-Mendel-Institute/aradeepopsis","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gregor-Mendel-Institute%2Faradeepopsis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gregor-Mendel-Institute%2Faradeepopsis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gregor-Mendel-Institute%2Faradeepopsis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gregor-Mendel-Institute%2Faradeepopsis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gregor-Mendel-Institute","download_url":"https://codeload.github.com/Gregor-Mendel-Institute/aradeepopsis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252826620,"owners_count":21810149,"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":["arabidopsis-thaliana","deep-learning","nextflow","plant-phenotyping","scikit-image","semantic-segmentation","tensorflow"],"created_at":"2024-08-03T00:01:12.567Z","updated_at":"2025-05-07T06:30:38.593Z","avatar_url":"https://github.com/Gregor-Mendel-Institute.png","language":"Nextflow","funding_links":[],"categories":["Plant science"],"sub_categories":[],"readme":"# ![ARADEEPOPSIS](assets/logo/logo.png)\n\n![CI](https://github.com/Gregor-Mendel-Institute/aradeepopsis/workflows/Integration%20test/badge.svg?branch=master)\n![Latest Release](https://img.shields.io/github/v/release/Gregor-Mendel-Institute/aradeepopsis?sort=semver)\n![License](https://img.shields.io/github/license/Gregor-Mendel-Institute/aradeepopsis)\n[![DOI](https://zenodo.org/badge/240287274.svg)](https://zenodo.org/badge/latestdoi/240287274)\n[![Nextflow](https://img.shields.io/badge/nextflow-%E2%89%A522.04.0-important.svg)](https://www.nextflow.io/)  \n[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000\u0026logo=anaconda)](https://docs.conda.io/en/latest/)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000\u0026logo=docker)](https://www.docker.com/)\n[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)\n[![run with podman](https://img.shields.io/badge/run%20with-podman-1d355c.svg?labelColor=000000\u0026logo=podman)](https://docs.podman.io/)\n[![run with charliecloud](https://img.shields.io/badge/run%20with-charliecloud-1d355c.svg?labelColor=000000)](https://hpc.github.io/charliecloud/)\n\n# Introduction\n\n`ARADEEPOPSIS` is a software tool that enables plant researchers to non-invasively score plant growth, biomass accumulation and senescence from image data in a highly parallelized, high throughput, yet easy to use manner.\n\nIt is built upon the published, convolutional neural network (CNN) [DeepLabv3+](https://github.com/tensorflow/models/tree/master/research/deeplab)\u003csup\u003e[[1]](#ref1)\u003c/sup\u003e that serves the task of semantic image segmentation. A [pretrained checkpoint](http://download.tensorflow.org/models/deeplabv3_xception_2018_01_04.tar.gz) of this model has been trained upon using manually annotated top-view images of *Arabidopsis thaliana* plants of different ages.\nThe code that was used for training can be found [here](https://github.com/phue/models/tree/aradeepopsis_manuscript/research/deeplab). The different models are available here [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3946618.svg)](https://doi.org/10.5281/zenodo.3946618)\n\nThe training and validation datasets including ground truth annotations are available at [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3946393.svg)](https://doi.org/10.5281/zenodo.3946393)\n\n# How it works\n\n![Models](docs/img/pipeline_graph.png)\n\nThe pipeline is implemented using open source software such as [`Nextflow`](https://www.nextflow.io/)\u003csup\u003e[[2]](#ref2)\u003c/sup\u003e, [`TensorFlow`](https://www.tensorflow.org/)\u003csup\u003e[[3]](#ref3)\u003c/sup\u003e, [`ImageMagick`](https://imagemagick.org), [`scikit-image`](https://scikit-image.org/)\u003csup\u003e[[4]](#ref4)\u003c/sup\u003e and [`shiny`](https://shiny.rstudio.com/)\u003csup\u003e[[5]](#ref5)\u003c/sup\u003e.\n\nThe pipeline uses either a [conda environment](https://conda.io/en/latest/) or a [Docker container](https://www.docker.com/resources/what-container) to resolve dependencies, ensuring a high level of reproducibility and portability. It is largely platform independent and scales from Personal Computers to High Performance Computing (HPC) infrastructure, allowing for time efficient analysis of hundreds of thousands of images within a day.\n\n\u003e Note: To ensure reproducibility, container-based profiles are recommended over conda.\n\nOnce the pipeline is fed with images of single plants, it converts the images into chunks of arbitrary size by saving the image data into an [IO-optimized binary file format](https://www.tensorflow.org/tutorials/load_data/tfrecord).\n\nThese file records are then, in parallel, served to a deep learning model, allowing for pixel-by-pixel classification of the image data.\n\nThree distinct [models](docs/parameters.md#--model) are [available](https://doi.org/10.5281/zenodo.3946618) and should be chosen according to the research interest.\n\n![Models](docs/img/example_models.png)\n\nDepending on the model of choice, the pipeline extracts relevant phenotypic information such as:\n\n* plant area (`model A/B/C`)\n* area of senescent/necrotic tissue (`model B/C`)\n* area of anthocyanin-rich tissue (`model C`)\n* color composition and color indices as described by [Del Valle et al. 2018](https://doi.org/10.1002/ece3.3804)\u003csup\u003e[[6]](#ref6)\u003c/sup\u003e for each class supported by the respective model\n* a variety of morphometric traits for each class supported by the respective model\n\n![Traits](docs/img/traits.png)\n\n# Extensibility\n\nThe pipeline has a modular character, also allowing the use of [custom models](docs/parameters.md#custom-models) obtained from the [Deep Plant Phenomics](https://github.com/p2irc/deepplantphenomics)\u003csup\u003e[[7]](#ref7)\u003c/sup\u003e framework for the semantic segmentation step.\n\nIn addition, it is also possible to [feed](docs/parameters.md#--masks) the pipeline with segmentation masks obtained by other methods, while still making use the automated trait extraction and visualization capabilities of the pipeline.\n\n# Usage\n\n## Hardware requirements\n\nRunning the pipeline with the provided models requires at least 6GB of memory for singlescale inference, and at least 12GB for [`--multiscale`](docs/parameters.md#--multiscale).\n\n## Setting up the pipeline\n\n\u003e Note: Windows users will have to set up the [WSL](https://docs.microsoft.com/en-us/windows/wsl/install-win10) first.\n\n1. Install [`Nextflow`](https://www.nextflow.io/index.html#GetStarted)\n\n2. Install either [`conda`](https://docs.conda.io/projects/conda/en/latest/user-guide/install/), [`Docker`](https://docs.docker.com/install/), [`podman`](https://podman.io/getting-started/installation), [`Charliecloud`](https://hpc.github.io/charliecloud/) or [`Singularity`](https://sylabs.io/guides/3.0/user-guide/installation.html).\n\n\u003e Note: To run the pipeline on MacOS with Docker, it is necessary to increase the allowed memory usage from the default setting of 2GB to 6GB (See the [Docker documentation](https://docs.docker.com/docker-for-mac/#resources) for instructions)\n\n## Running the pipeline\n\nTo run the pipeline you have to provide single-pot plant images:\n\n```bash\nnextflow run Gregor-Mendel-Institute/aradeepopsis --images 'path/to/images/*{png|jpg}' -profile {conda|docker|podman|singularity|charliecloud}\n```\n\n### Example to run on the CBE cluster using Singularity\n\n```bash\nmodule load nextflow/20.01.0\n\nnextflow run Gregor-Mendel-Institute/aradeepopsis --images 'path/to/images/*{png|jpg}' -profile cbe,singularity\n```\n\n## Default [Parameters](docs/parameters.md)\n\n| Parameter | Default value | Type |\n| ------------- | ------------- | ------------- |\n| [`--model`](docs/parameters.md#--model)  | `C` | `\u003cCharacter\u003e` |\n| [`--images`](docs/parameters.md#--images) | `None` | `\u003cPath\u003e` |\n| [`--masks`](docs/parameters.md#--masks) | `false` | `\u003cPath\u003e` |\n| [`--multiscale`](docs/parameters.md#--multiscale)| `false` | `\u003cBoolean\u003e` |\n| [`--chunksize`](docs/parameters.md#--chunksize) | `10` | `\u003cInteger\u003e` |\n| [`--ignore_senescence`](docs/parameters.md#--ignore_senescence) | `true` | `\u003cBoolean\u003e` |\n| [`--outdir`](docs/parameters.md#--outdir) | `./results`  | `\u003cPath\u003e` |\n| [`--save_overlay`](docs/parameters.md#--save_overlay) | `true` | `\u003cBoolean\u003e` |\n| [`--save_mask`](docs/parameters.md#--save_mask)| `true` | `\u003cBoolean\u003e` |\n| [`--save_hull`](docs/parameters.md#--save_hull) | `true` | `\u003cBoolean\u003e` |\n| [`--summary_diagnostics`](docs/parameters.md#--summary_diagnostics) | `false` | `\u003cBoolean\u003e` |\n| [`--shiny`](docs/parameters.md#--shiny) | `true` | `\u003cBoolean\u003e` |\n\n## Pipeline [Output](docs/output.md)\n\nThe pipeline computes a total of 78 morphometric and color-related traits from the analysed images.\nA description of all traits is available [here](docs/output.md#Trait-table).\n\n# References\n\n\u003e \u003ca name=\"ref1\"\u003e[1]\u003c/a\u003e **Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation.**\u003cbr /\u003eChen, L.-C. et al., 2018. arXiv [cs.CV]. Available at: http://arxiv.org/abs/1802.02611.\n\n\u003e \u003ca name=\"ref2\"\u003e[2]\u003c/a\u003e **Nextflow enables reproducible computational workflows.**\u003cbr /\u003eDi Tommaso, P. et al., 2017. Nature biotechnology, 35(4), pp.316–319.\n\n\u003e \u003ca name=\"ref3\"\u003e[3]\u003c/a\u003e **TensorFlow: Large-scale machine learning on heterogeneous systems.**\u003cbr /\u003eMartín Abadi, Ashish Agarwal, Paul Barham, Eugene Brevdo, Zhifeng Chen, Craig Citro, Greg S. Corrado, Andy Davis, Jeffrey Dean, Matthieu Devin, Sanjay Ghemawat, Ian Goodfellow, Andrew Harp, Geoffrey Irving, Michael Isard, Rafal Jozefowicz, Yangqing Jia,Lukasz Kaiser, Manjunath Kudlur, Josh Levenberg, Dan Mané, Mike Schuster, Rajat Monga, Sherry Moore, Derek Murray, Chris Olah, Jonathon Shlens, Benoit Steiner, Ilya Sutskever, Kunal Talwar, Paul Tucker, Vincent Vanhoucke, Vijay Vasudevan, Fernanda Viégas, Oriol Vinyals, Pete Warden, Martin Wattenberg, Martin Wicke, Yuan Yu, and Xiaoqiang Zheng, 2015\n\n\u003e \u003ca name=\"ref4\"\u003e[4]\u003c/a\u003e **scikit-image: Image processing in Python.**\u003cbr /\u003eStéfan van der Walt, Johannes L. Schönberger, Juan Nunez-Iglesias, François Boulogne, Joshua D. Warner, Neil Yager, Emmanuelle Gouillart, Tony Yu and the scikit-image contributors. PeerJ 2:e453 (2014)\n\n\u003e \u003ca name=\"ref5\"\u003e[5]\u003c/a\u003e **shiny: Easy web applications in R**\u003cbr /\u003eRstudio Inc. (2014)\n\n\u003e \u003ca name=\"ref6\"\u003e[6]\u003c/a\u003e **Digital photography provides a fast, reliable, and noninvasive method to estimate anthocyanin pigment concentration in reproductive and vegetative plant tissues**\u003cbr /\u003eDel Valle JC, Gallardo-López A, Buide ML, Whittall JB, Narbona E, 2018. Ecol Evol. 8(6):3064–76.\n\n\u003e \u003ca name=\"ref7\"\u003e[7]\u003c/a\u003e **Deep Plant Phenomics: A Deep Learning Platform for Complex Plant Phenotyping Tasks**\u003cbr /\u003eUbbens JR, Stavness I. Front Plant Sci. 2017 Jul 7;8:1190.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FGregor-Mendel-Institute%2Faradeepopsis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FGregor-Mendel-Institute%2Faradeepopsis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FGregor-Mendel-Institute%2Faradeepopsis/lists"}