Skip to content

Commit

Permalink
Merge pull request #60 from Gregor-Mendel-Institute/2.0
Browse files Browse the repository at this point in the history
merge 2.0 > master
  • Loading branch information
phue committed May 12, 2022
2 parents 00f5ead + bde1dd6 commit 5087e97
Show file tree
Hide file tree
Showing 28 changed files with 714 additions and 454 deletions.
22 changes: 16 additions & 6 deletions .github/workflows/minimal_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,9 @@ jobs:
strategy:
matrix:
engine: ["docker", "podman", "charliecloud", "conda"]
nxf_ver: ["20.07.1",""]
nxf_ver: ["22.04.0",""]
os: ["ubuntu-latest", "macos-latest"]
exclude:
- engine: "charliecloud"
nxf_ver: "20.07.1" # charliecloud needs 21.04.0 or later
- os: "macos-latest"
engine: "docker"
- os: "macos-latest"
Expand All @@ -40,9 +38,9 @@ jobs:
- name: Install Charliecloud
if: ${{ matrix.engine == 'charliecloud' }}
run: |
python -m pip install lark-parser requests
wget -qO- https://github.com/hpc/charliecloud/releases/download/v0.22/charliecloud-0.22.tar.gz | tar -xvz
cd charliecloud-0.22
python -m pip install requests
wget -qO- https://github.com/hpc/charliecloud/releases/download/v0.25/charliecloud-0.25.tar.gz | tar -xvz
cd charliecloud-0.25
./configure
make
sudo make install
Expand All @@ -62,3 +60,15 @@ jobs:
run: |
sudo chown -R ${UID} ${CONDA}
nextflow run ${GITHUB_WORKSPACE} --save_rosette --save_histogram --save_hull --summary_diagnostics --shiny false -profile test,conda
- name: Upload segmentation results
uses: actions/upload-artifact@v2
with:
name: summary_diagnostics ${{ matrix.os }} ${{ matrix.engine }} ${{ matrix.nxf_ver }}
path: results/diagnostics/summary

- name: Upload Nextflow report
uses: actions/upload-artifact@v2
with:
name: execution_report ${{ matrix.os }} ${{ matrix.engine }} ${{ matrix.nxf_ver }}
path: results/www/execution_report.html
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
# Changelog

## [v2.0](https://github.com/Gregor-Mendel-Institute/aradeepopsis/releases/tag/v2.0) - 2022-05-12

* fixed a bug that lead to invalid dimensions for input images with certain aspect ratios
* ported pipeline code to [nextflow dsl2](https://www.nextflow.io/docs/latest/dsl2.html)
* bumped required `nextflow` version to `22.04.0`
* moved hosting of pretrained models and test data to Azure (thanks @ebirn)
* added CITATION.cff
* added version pinning for `R 4.1.3`
* dropped `r-shinythemes` dependency as `r-shiny` now has bootstrap 5 support
* updated `r-shiny` `1.6.0` > `1.7.1`
* updated `tensorflow-base` `2.4.1` > `2.7.1`
* updated `imagemagick` dependency `7.0.11_12` > `7.1.0_33`
* updated `r-corrplot` dependency `0.88` > `0.92`
* updated `r-jpeg` dependency `0.1_8.1` > `0.1_9`

## [v1.3.1](https://github.com/Gregor-Mendel-Institute/aradeepopsis/releases/tag/v1.3.1) - 2021-05-14

* fixed illegible text in Markdown documents when browsing Github in Dark Mode (thanks @greymonroe for pointing this out)
Expand Down
41 changes: 41 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Hüther"
given-names: "Patrick"
orcid: "https://orcid.org/0000-0003-3315-2484"
- family-names: "Schandry"
given-names: "Niklas"
orcid: "https://orcid.org/0000-0003-3099-7860"
title: "ARADEEPOPSIS"
version: 2.0
doi: 10.5281/zenodo.3946320
date-released: 2022-05-12
url: "https://github.com/Gregor-Mendel-Institute/aradeepopsis"
preferred-citation:
type: article
authors:
- family-names: "Hüther"
given-names: "Patrick"
orcid: "https://orcid.org/0000-0003-3315-2484"
- family-names: "Schandry"
given-names: "Niklas"
orcid: "https://orcid.org/0000-0003-3099-7860"
- family-names: "Jandrasits"
given-names: "Katharina"
orcid: "https://orcid.org/0000-0002-0161-582X"
- family-names: "Bezrukov"
given-names: "Ilja"
orcid: "https://orcid.org/0000-0003-0420-4329"
- family-names: "Becker"
given-names: "Claude"
orcid: "https://orcid.org/0000-0003-3406-4670"
doi: "10.1105/tpc.20.00318"
journal: "The Plant Cell"
month: 12
start: 3674
end: 3688
title: "ARADEEPOPSIS, an Automated Workflow for Top-View Plant Phenomics using Semantic Segmentation of Leaf States"
issue: 12
volume: 32
year: 2020
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
![Latest Release](https://img.shields.io/github/v/release/Gregor-Mendel-Institute/aradeepopsis?sort=semver)
![License](https://img.shields.io/github/license/Gregor-Mendel-Institute/aradeepopsis)
[![DOI](https://zenodo.org/badge/240287274.svg)](https://zenodo.org/badge/latestdoi/240287274)
[![Nextflow](https://img.shields.io/badge/nextflow-%E2%89%A520.07.1-important.svg)](https://www.nextflow.io/)
[![Nextflow](https://img.shields.io/badge/nextflow-%E2%89%A522.04.0-important.svg)](https://www.nextflow.io/)
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
Expand Down
3 changes: 1 addition & 2 deletions assets/shiny/app.R
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ library(slickR)
library(tidyverse)
library(radarchart)
library(shinycssloaders)
library(shinythemes)
library(corrplot)
library(jpeg)

Expand All @@ -42,7 +41,7 @@ traitcount <- ncol(data) - 2 # exclude filename and suffix
imagecount <- nrow(data)

# Define UI
ui <- navbarPage(title=a("aradeepopsis", href="https://github.com/Gregor-Mendel-Institute/aradeepopsis", target="_blank"), windowTitle = "ARADEEPOPSIS", id="nav", theme = shinytheme("flatly"), collapsible=TRUE,
ui <- navbarPage(title=a("aradeepopsis", href="https://github.com/Gregor-Mendel-Institute/aradeepopsis", target="_blank"), windowTitle="ARADEEPOPSIS", id="nav", theme=bslib::bs_theme(version=5, bootswatch="flatly"), collapsible=TRUE,
tabPanel("Rosette Carousel",
sliderInput("chunk", label = "Select chunk:", min = 1, max = ceiling(imagecount/60), value = 1, width = '100%', step = 1),
slickROutput("slickr", width='auto', height='auto') %>% withSpinner()
Expand Down
28 changes: 14 additions & 14 deletions conf/base.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
Copyright (C) 2019-2021 Patrick Hüther
Copyright (C) 2019-2022 Patrick Hüther

This file is part of ARADEEPOPSIS.
ARADEEPOPSIS is free software: you can redistribute it and/or modify
Expand All @@ -22,44 +22,44 @@ along with ARADEEPOPSIS. If not, see <https://www.gnu.org/licenses/>.
*/

env {
PYTHONPATH = "${PYTHONPATH}:$baseDir/bin"
PYTHONPATH = "${PYTHONPATH}:$projectDir/bin"
PYTHONNOUSERSITE = 1
R_PROFILE_USER = "/.Rprofile"
R_ENVIRON_USER = "/.Renviron"
}

process {
withName: build_records {
container = 'quay.io/beckerlab/aradeepopsis-base:1.3.1'
withName: RECORDS {
container = { "quay.io/beckerlab/aradeepopsis-base:${workflow.manifest.version}" }
cpus = 1
memory = 2.GB
time = 1.h
}
withName: run_predictions {
container = 'quay.io/beckerlab/aradeepopsis-base:1.3.1'
withName: MODEL {
container = { "quay.io/beckerlab/aradeepopsis-base:${workflow.manifest.version}" }
cpus = 2
memory = params.multiscale ? 12.GB : 6.GB
time = 4.h
}
withName: run_predictions_DPP {
container = 'quay.io/beckerlab/aradeepopsis-dpp:1.3.1'
withName: DPP {
container = { "quay.io/beckerlab/aradeepopsis-dpp:${workflow.manifest.version}" }
cpus = 2
memory = 2.GB
time = 4.h
}
withName: extract_traits {
container = 'quay.io/beckerlab/aradeepopsis-base:1.3.1'
withName: MEASURE {
container = { "quay.io/beckerlab/aradeepopsis-base:${workflow.manifest.version}" }
cpus = 1
memory = 2.GB
time = 1.h
}
withName: draw_diagnostics {
container = 'quay.io/beckerlab/aradeepopsis-base:1.3.1'
withName: SUMMARY {
container = { "quay.io/beckerlab/aradeepopsis-base:${workflow.manifest.version}" }
cpus = 1
memory = 2.GB
time = 1.h
}
withName: launch_shiny {
container = 'quay.io/beckerlab/aradeepopsis-shiny:1.3.1'
withName: SHINY {
container = { "quay.io/beckerlab/aradeepopsis-shiny:${workflow.manifest.version}" }
}
}
12 changes: 6 additions & 6 deletions conf/cbe.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
Copyright (C) 2019-2021 Patrick Hüther
Copyright (C) 2019-2022 Patrick Hüther

This file is part of ARADEEPOPSIS.
ARADEEPOPSIS is free software: you can redistribute it and/or modify
Expand Down Expand Up @@ -32,27 +32,27 @@ process {
errorStrategy = { task.exitStatus in [104,134,135,137,139,140,143] ? 'retry' : 'finish' }
maxRetries = 3

withName: build_records {
withName: RECORDS {
cpus = { 1 * task.attempt }
memory = { 1.GB * task.attempt }
time = { 1.h * task.attempt }
}
withName: run_predictions {
withName: MODEL {
cpus = { 4 * task.attempt }
memory = { 32.GB * task.attempt }
time = { 4.h * task.attempt }
}
withName: run_predictions_DPP {
withName: DPP {
cpus = { 4 * task.attempt }
memory = { 16.GB * task.attempt }
time = { 2.h * task.attempt }
}
withName: extract_traits {
withName: MEASURE {
cpus = { 1 * task.attempt }
memory = { 1.GB * task.attempt }
time = { 1.h * task.attempt }
}
withName: draw_diagnostics {
withName: SUMMARY {
cpus = { 1 * task.attempt }
memory = { 2.GB * task.attempt }
time = { 1.h * task.attempt }
Expand Down
24 changes: 12 additions & 12 deletions conf/conda.config
Original file line number Diff line number Diff line change
Expand Up @@ -22,22 +22,22 @@ along with ARADEEPOPSIS. If not, see <https://www.gnu.org/licenses/>.
*/

process {
withName: build_records {
conda = "$baseDir/containers/base/environment.yml"
withName: RECORDS {
conda = "$projectDir/containers/base/environment.yml"
}
withName: run_predictions {
conda = "$baseDir/containers/base/environment.yml"
withName: MODEL {
conda = "$projectDir/containers/base/environment.yml"
}
withName: run_predictions_DPP {
conda = "$baseDir/containers/addons/dpp/environment.yml"
withName: DPP {
conda = "$projectDir/containers/addons/dpp/environment.yml"
}
withName: extract_traits {
conda = "$baseDir/containers/base/environment.yml"
withName: MEASURE {
conda = "$projectDir/containers/base/environment.yml"
}
withName: draw_diagnostics {
conda = "$baseDir/containers/base/environment.yml"
withName: SUMMARY {
conda = "$projectDir/containers/base/environment.yml"
}
withName: launch_shiny {
conda = "$baseDir/containers/shiny/environment.yml"
withName: SHINY {
conda = "$projectDir/containers/shiny/environment.yml"
}
}
12 changes: 6 additions & 6 deletions conf/test.config
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ along with ARADEEPOPSIS. If not, see <https://www.gnu.org/licenses/>.
*/

params.images = [
'https://github.com/Gregor-Mendel-Institute/test-data/raw/aradeepopsis/data/1.png',
'https://github.com/Gregor-Mendel-Institute/test-data/raw/aradeepopsis/data/2.png',
'https://github.com/Gregor-Mendel-Institute/test-data/raw/aradeepopsis/data/3.png',
'https://github.com/Gregor-Mendel-Institute/test-data/raw/aradeepopsis/data/4.png',
'https://github.com/Gregor-Mendel-Institute/test-data/raw/aradeepopsis/data/5.png',
'https://github.com/Gregor-Mendel-Institute/test-data/raw/aradeepopsis/data/6.png'
'https://cdn.vbc.ac.at/clip/reframe/data/aradeepopsis/1.png',
'https://cdn.vbc.ac.at/clip/reframe/data/aradeepopsis/2.png',
'https://cdn.vbc.ac.at/clip/reframe/data/aradeepopsis/3.png',
'https://cdn.vbc.ac.at/clip/reframe/data/aradeepopsis/4.png',
'https://cdn.vbc.ac.at/clip/reframe/data/aradeepopsis/5.png',
'https://cdn.vbc.ac.at/clip/reframe/data/aradeepopsis/6.png'
]
2 changes: 1 addition & 1 deletion containers/addons/dpp/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ COPY environment.yml /
RUN apt-get update \
&& apt-get install --no-install-recommends -y procps \
&& micromamba install -y -n base -f /environment.yml \
&& micromamba clean -a && rm -rf /var/lib/{apt,dpkg,cache,log}
&& micromamba clean -a && rm -rf /var/lib/{apt,dpkg,cache,log}
2 changes: 1 addition & 1 deletion containers/base/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ COPY environment.yml /
RUN apt-get update \
&& apt-get install --no-install-recommends -y procps \
&& micromamba install -y -n base -f /environment.yml \
&& micromamba clean -a && rm -rf /var/lib/{apt,dpkg,cache,log}
&& micromamba clean -a && rm -rf /var/lib/{apt,dpkg,cache,log}
6 changes: 3 additions & 3 deletions containers/base/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ channels:
- conda-forge
- defaults
dependencies:
- conda-forge::tensorflow-base=2.4.1
- conda-forge::scikit-image=0.18.1
- conda-forge::imagemagick=7.0.11_12
- conda-forge::tensorflow-base=2.7.1
- conda-forge::scikit-image=0.19.2
- conda-forge::imagemagick=7.1.0_33
2 changes: 1 addition & 1 deletion containers/shiny/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ RUN apt-get update \
&& micromamba install -y -n base -f /environment.yml \
&& micromamba clean -a && rm -rf /var/lib/{apt,dpkg,cache,log}

EXPOSE 44333
EXPOSE 44333
11 changes: 5 additions & 6 deletions containers/shiny/environment.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
name: aradeepopsis-shiny
channels:
- conda-forge
- r
- defaults
dependencies:
- conda-forge::r-base=4.1.3
- conda-forge::r-tidyverse=1.3.1
- conda-forge::r-shiny=1.6.0
- conda-forge::r-shinythemes=1.2.0
- conda-forge::r-shiny=1.7.1
- conda-forge::r-shinycssloaders=1.0.0
- conda-forge::r-slickr=0.5.0
- conda-forge::r-corrplot=0.88
- conda-forge::r-jpeg=0.1_8.1
- r::r-radarchart=0.3.1
- conda-forge::r-corrplot=0.92
- conda-forge::r-jpeg=0.1_9
- conda-forge::r-radarchart=0.3.1
2 changes: 1 addition & 1 deletion docs/parameters.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,6 @@ Launch a [Shiny](https://shiny.rstudio.com/) app as the last step of the pipelin
> R -e "shiny::runApp('app.R', port=44333)"
>
> # if using the container image
> {docker|podman} run -v $(pwd):/mnt/shiny -p 44333:44333 quay.io/beckerlab/aradeepopsis-shiny:1.3.1 R -e "shiny::runApp('/mnt/shiny/app.R', port=44333, host='0.0.0.0')"
> {docker|podman} run -v $(pwd):/mnt/shiny -p 44333:44333 quay.io/beckerlab/aradeepopsis-shiny:2.0 R -e "shiny::runApp('/mnt/shiny/app.R', port=44333, host='0.0.0.0')"
> ```
> The shiny app can then be opened in a browser by typing localhost:44333 in the address bar. It will terminate when the browser window is closed.
Loading

0 comments on commit 5087e97

Please sign in to comment.