diff --git a/.github/workflows/nf-test-gpu.yml b/.github/workflows/nf-test-gpu.yml index 0226dd9..8b9d2ba 100644 --- a/.github/workflows/nf-test-gpu.yml +++ b/.github/workflows/nf-test-gpu.yml @@ -71,7 +71,7 @@ jobs: needs.get-shards.outputs.total_shards > 0 && ( github.event_name != 'push' || - ( github.event_name == 'push' && github.repository == 'nf-core/methylseq' ) + ( github.event_name == 'push' && github.repository == 'nf-core/lsmquant' ) ) strategy: fail-fast: false @@ -88,6 +88,13 @@ jobs: with: fetch-depth: 0 + - name: Test CUDA + run: | + nvidia-smi -L + + - name: Enable Nextflow debug logging + run: echo "NXF_DEBUG=2" >> $GITHUB_ENV + - name: Run nf-test Action uses: ./.github/actions/nf-test with: @@ -97,6 +104,10 @@ jobs: filters: ${{ matrix.filters }} tags: "gpu" + - name: Show Singularity run commands + run: | + find . -name ".nextflow.log" -exec grep "singularity exec" {} + || echo "No singularity exec found" + confirm-pass: runs-on: - runs-on=${{ github.run_id }}-confirm-pass diff --git a/README.md b/README.md index c753656..998cd5a 100755 --- a/README.md +++ b/README.md @@ -17,13 +17,14 @@ [![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/lsmquant) [![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23lsmquant-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/lsmquant)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core) +![HiRSE Code Promo Badge](https://img.shields.io/badge/Promo-8db427?style=plastic&label=HiRSE&labelColor=005aa0&link=https%3A%2F%2Fgo.fzj.de%2FCodePromo) ## Introduction **nf-core/lsmquant** is a bioinformatics pipeline that performs preprocessing and analysis of light-sheet microscopy images of tissue cleard samples. The pipeline takes 2D single-channel 16-bit `.tif` images as input. The preprocessing consists of intesity adjustment, channel alignemnt, and tile stitching to reconstruct the 3D image. For mousebrain samples it offers a regsitration to the Allen Mouse Brain Reference Atlas for precise region annotation. Cell nuclei quantification is perfomed on the nuclear channel by a 3D-Unet.
-lasmquant metromap +lasmquant metromap
### Basic workflow diff --git a/conf/modules.config b/conf/modules.config index 905140c..c62eb64 100755 --- a/conf/modules.config +++ b/conf/modules.config @@ -30,164 +30,91 @@ process { saveAs: { filename -> filename.equals('versions.yml') ? null : filename } ] } - + /* withName: 'MAT2JSON' { publishDir = [ path: { "${params.outdir}/${meta.id}/mat2json" }, mode: params.publish_dir_mode ] } + */ + withName: 'NUMORPHINTENSITY' { publishDir = [ - path: { "${params.outdir}/${meta.id}/intensity/samples" }, - mode: params.publish_dir_mode, - pattern: 'results/samples/intensity_adjustment/*', - saveAs: { filename -> - if (filename.equals('versions.yml')) { - null - } else { - filename.replaceFirst('^results/samples/intensity_adjustment/', 'samples/intensity_adjustment/') - } - } - ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/intensity/variables" }, + path: { "${params.outdir}/numorphintensity/" }, mode: params.publish_dir_mode, - pattern: 'results/variables/*', + pattern: 'results/**/*', saveAs: { filename -> if (filename.equals('versions.yml')) { null } else { - filename.replaceFirst('^results/variables/', 'variables/') + filename.replaceFirst("^results/", "${meta.id}/") } } ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/intensity/" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - - ] - } withName: 'NUMORPHALIGN' { publishDir = [ - path: { "${params.outdir}/${meta.id}/alignment/samples" }, + path: { "${params.outdir}/numorphalign/" }, mode: params.publish_dir_mode, - pattern: 'results/samples/alignment/*', + pattern: 'results/**/*', saveAs: { filename -> if (filename.equals('versions.yml')) { null } else { - filename.replaceFirst('^results/samples/alignment/', 'samples/alignment/') + filename.replaceFirst("^results/", "${meta.id}/") } } ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/alignment/variables" }, - mode: params.publish_dir_mode, - pattern: 'results/variables/*', - saveAs: { filename -> - if (filename.equals('versions.yml')) { - null - } else { - filename.replaceFirst('^results/variables/', 'variables/') - } - } - ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/alignment/" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] } withName: 'NUMORPHSTITCH' { publishDir = [ - path: { "${params.outdir}/${meta.id}/stitching/variables" }, + path: { "${params.outdir}/numorphstitch/" }, mode: params.publish_dir_mode, - pattern: 'results/variables/*', + pattern: 'results/**/*', saveAs: { filename -> if (filename.equals('versions.yml')) { null } else { - filename.replaceFirst('^results/variables/', 'variables/') + filename.replaceFirst("^results/", "${meta.id}/") } } ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/stitching/stitched" }, - mode: params.publish_dir_mode, - pattern: 'results/stitched/*', - saveAs: { filename -> - if (filename.equals('versions.yml')) { - null - } else { - filename.replaceFirst('^results/stitched/', 'stitched/') - } - } - ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/stitching/" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] } withName: 'NUMORPHRESAMPLE' { publishDir = [ - path: { "${params.outdir}/${meta.id}/resampling/resampled/" }, + path: { "${params.outdir}/numorphresample/" }, mode: params.publish_dir_mode, - pattern: 'results/resampled/*', + pattern: 'results/**/*', saveAs: { filename -> if (filename.equals('versions.yml')) { null } else { - filename.replaceFirst('^results/resampled/', 'resampled/') + filename.replaceFirst("^results/", "${meta.id}/") } } ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/resampling/" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] } withName: 'NUMORPHREGISTER' { publishDir = [ - path: { "${params.outdir}/${meta.id}/register/registered/" }, + path: { "${params.outdir}/numorphregister/" }, mode: params.publish_dir_mode, - pattern: 'results/registered/*', + pattern: 'results/**/*', saveAs: { filename -> if (filename.equals('versions.yml')) { null } else { - filename.replaceFirst('^results/registered/', 'registered/') + filename.replaceFirst("^results/", "${meta.id}/") } } ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/register/variables" }, - mode: params.publish_dir_mode, - pattern: 'results/variables/*', - saveAs: { filename -> - if (filename.equals('versions.yml')) { - null - } else { - filename.replaceFirst('^results/variables/', 'variables/') - } - } - ] - publishDir = [ - path: { "${params.outdir}/${meta.id}/register/" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] } withName: 'NUMORPH3DUNET' { publishDir = [ - path: { "${params.outdir}/${meta.id}/segmentation/" }, + path: { "${params.outdir}/numorph3dunet/" }, mode: params.publish_dir_mode, pattern: 'results/*', saveAs: { filename -> @@ -195,9 +122,10 @@ process { null } else { - filename.replaceFirst('^results/', '') + filename.replaceFirst("^results/", "${meta.id}/") } } ] } + } diff --git a/conf/test.config b/conf/test.config index b8d58a6..ae77f99 100755 --- a/conf/test.config +++ b/conf/test.config @@ -16,11 +16,17 @@ process { memory: '15.GB', time: '1.h' ] + + withLabel: process_gpu { + ext.use_gpu = true + accelerator = 1 + memory = { 15.GB * task.attempt } + } } params { config_profile_name = 'Test profile' config_profile_description = 'Minimal test dataset to check pipeline function' input = params.pipelines_testdata_base_path + '/test_data/samplesheets/sample_sheet.csv' - stage = 'preprocessing' + stage = 'full' } diff --git a/conf/test_gpu.config b/conf/test_gpu.config deleted file mode 100755 index 9592973..0000000 --- a/conf/test_gpu.config +++ /dev/null @@ -1,33 +0,0 @@ -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Nextflow config file for running minimal tests -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Defines input files and everything required to run a fast and simple pipeline test. - - Use as follows: - nextflow run nf-core/lsmquant -profile test_gpu, --outdir - ----------------------------------------------------------------------------------------- -*/ - -process { - resourceLimits = [ - cpus: 4, - memory: '15.GB', - time: '1.h' - ] - - withLabel: process_gpu { - ext.use_gpu = true - accelerator = 1 - containerOptions = { workflow.containerEngine == 'docker' ? '--gpus all' : '--nv' } - } -} - -params { - config_profile_name = 'Test profile GPU' - config_profile_description = 'Minimal test dataset to check pipeline function' - // Define the input data - input = params.pipelines_testdata_base_path + '/test_data/samplesheets/sample_sheet.csv' - stage = 'full' -} diff --git a/docs/images/lsmquant-metromap.svg b/docs/images/lsmquant-metromap.svg new file mode 100644 index 0000000..51d4014 --- /dev/null +++ b/docs/images/lsmquant-metromap.svg @@ -0,0 +1,4 @@ + + + +
Preprocessing workflow
Full workflow
Allen Atlas registration
Intensity
Adjustment
Channel
Alignment
Iterative
Stitching
Segmentation:
Nuclei Quantification

Resampling
ARA 
Registration
mat2json
mat2json
nii
nii
nii
json
resampled
image
Registration
parameters
moving
image
ref
image
tiff
tiff/png
json
intensity
parameters
QC images
mat2json
mat2json
mat2json
tiff
json
Alignment
parameters
aligned
images
tiff
Stitched
images
json
Stitching
parameters
csv
Cell count
table
diff --git a/docs/images/lsmquant.png b/docs/images/lsmquant.png deleted file mode 100644 index 0e87fc3..0000000 Binary files a/docs/images/lsmquant.png and /dev/null differ diff --git a/modules.json b/modules.json index e780646..6c05a02 100755 --- a/modules.json +++ b/modules.json @@ -7,7 +7,7 @@ "nf-core": { "basicpy": { "branch": "master", - "git_sha": "666652151335353eef2fcd58880bcef5bc2928e1", + "git_sha": "41dfa3f7c0ffabb96a6a813fe321c6d1cc5b6e46", "installed_by": ["modules"] }, "fastqc": { @@ -17,12 +17,12 @@ }, "multiqc": { "branch": "master", - "git_sha": "41dfa3f7c0ffabb96a6a813fe321c6d1cc5b6e46", + "git_sha": "a4488d3d09244f29fb4606ba4eef85d59dcc6ad8", "installed_by": ["modules"] }, "unzip": { "branch": "master", - "git_sha": "81880787133db07d9b4c1febd152c090eb8325dc", + "git_sha": "41dfa3f7c0ffabb96a6a813fe321c6d1cc5b6e46", "installed_by": ["modules"] }, "unzipfiles": { @@ -36,17 +36,17 @@ "nf-core": { "utils_nextflow_pipeline": { "branch": "master", - "git_sha": "c2b22d85f30a706a3073387f30380704fcae013b", + "git_sha": "05954dab2ff481bcb999f24455da29a5828af08d", "installed_by": ["subworkflows"] }, "utils_nfcore_pipeline": { "branch": "master", - "git_sha": "51ae5406a030d4da1e49e4dab49756844fdd6c7a", + "git_sha": "05954dab2ff481bcb999f24455da29a5828af08d", "installed_by": ["subworkflows"] }, "utils_nfschema_plugin": { "branch": "master", - "git_sha": "2fd2cd6d0e7b273747f32e465fdc6bcc3ae0814e", + "git_sha": "dcd088f483cede0c3df4034d405126f05a764cc7", "installed_by": ["subworkflows"] } } diff --git a/modules/local/mat2json/main.nf b/modules/local/mat2json/main.nf index d63de56..cdbd404 100644 --- a/modules/local/mat2json/main.nf +++ b/modules/local/mat2json/main.nf @@ -23,7 +23,7 @@ process MAT2JSON { """ mkdir -p ${process} for matfile in ${matfiles.join(' ')}; do - /usr/bin/mlrtapp/mat2json \$matfile + mat2json \$matfile done mv -f *.json ${process}/ 2>/dev/null || true diff --git a/modules/local/mat2json/tests/main.nf.test b/modules/local/mat2json/tests/main.nf.test index af9e03d..2948239 100644 --- a/modules/local/mat2json/tests/main.nf.test +++ b/modules/local/mat2json/tests/main.nf.test @@ -11,21 +11,30 @@ nextflow_process { test("matlab file conversion to json") { when { + params { + outdir = "$workDir" + } process { """ - input[0] = [ - [ id:'test'], // meta map - file('/mnt/ssd/numorph_testdata_s/module_testrun/output_nextflow/intensity/results/variables/thresholds.mat', checkIfExists: true), - ] + input[0] = Channel.fromList([ + tuple([ id:'test'], // meta map + file(params.pipelines_testdata_base_path +'/test_data/mat2json/thresholds.mat', checkIfExists: true)) + ]) + input[1] = Channel.of('test_process') """ } } then { + def stable_name = getAllFilesFromDir(params.outdir, relative: true, includeDir: true, ignore: ['pipeline_info/*.{html,json,txt}']) + assert workflow.success assertAll( - { assert process.success }, - { assert snapshot(process.out).match() } - + { assert snapshot( + // Number of successful tasks + workflow.trace.succeeded().size(), + // All stable path name, with a relative path + stable_name.isEmpty() ? 'No stable paths' : stable_name + ).match()} ) } @@ -36,20 +45,30 @@ nextflow_process { options "-stub" when { + params { + outdir = "$workDir" + } process { """ - input[0] = [ - [ id:'test'], // meta map - file('/mnt/ssd/numorph_testdata_s/module_testrun/output_nextflow/intensity/results/variables/thresholds.mat', checkIfExists: true), - ] + input[0] = Channel.fromList([ + tuple([ id:'test'], // meta map + file(params.pipelines_testdata_base_path +'/test_data/mat2json/thresholds.mat', checkIfExists: true)) + ]) + input[1] = Channel.of('test_process') """ } } then { + def stable_name = getAllFilesFromDir(params.outdir, relative: true, includeDir: true, ignore: ['pipeline_info/*.{html,json,txt}']) + assert workflow.success assertAll( - { assert process.success }, - { assert snapshot(process.out).match() } + { assert snapshot( + // Number of successful tasks + workflow.trace.succeeded().size(), + // All stable path name, with a relative path + stable_name.isEmpty() ? 'No stable paths' : stable_name + ).match()} ) } diff --git a/modules/local/mat2json/tests/main.nf.test.snap b/modules/local/mat2json/tests/main.nf.test.snap index ecf9774..e80bf3f 100644 --- a/modules/local/mat2json/tests/main.nf.test.snap +++ b/modules/local/mat2json/tests/main.nf.test.snap @@ -1,80 +1,72 @@ { "matlab file conversion to json": { "content": [ - { - "0": [ - [ - { - "id": "test" - }, - [ - "thresholds.json:md5,88adeb36bb657798c80085b6a58ac58b", - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ] - ] - ], - "1": [ - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ], - "converted_file": [ - [ - { - "id": "test" - }, - [ - "thresholds.json:md5,88adeb36bb657798c80085b6a58ac58b", - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ] - ] - ], - "versions": [ - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ] - } + 1, + [ + "", + "3d", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.begin", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.err", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.log", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.out", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.run", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.sh", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.command.trace", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/.exitcode", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/test_process", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/test_process/thresholds.json", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/thresholds.mat", + "3d/41b9380a1e0f7ff0bfe8bbc9571e65/versions.yml", + "mat2json", + "mat2json/test_process", + "mat2json/test_process/thresholds.json", + "pipeline_info", + "stage-aeeb1410-b6dd-43cf-8830-583e4cc9920c", + "stage-aeeb1410-b6dd-43cf-8830-583e4cc9920c/e5", + "stage-aeeb1410-b6dd-43cf-8830-583e4cc9920c/e5/ce02fa3d717d9eef7cc5e1c8f28c2b", + "stage-aeeb1410-b6dd-43cf-8830-583e4cc9920c/e5/ce02fa3d717d9eef7cc5e1c8f28c2b/thresholds.mat" + ] ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-02-21T15:36:22.030027548" + "timestamp": "2025-08-29T13:47:16.889254142" }, "matlab file conversion to json - stub": { "content": [ - { - "0": [ - [ - { - "id": "test" - }, - [ - "test.json:md5,d41d8cd98f00b204e9800998ecf8427e", - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ] - ] - ], - "1": [ - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ], - "converted_file": [ - [ - { - "id": "test" - }, - [ - "test.json:md5,d41d8cd98f00b204e9800998ecf8427e", - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ] - ] - ], - "versions": [ - "versions.yml:md5,d8fdb19b7f6440f3644b923cf0bf7eee" - ] - } + 1, + [ + "", + "a1", + "a1/d780b4e65514c605e3114f89afd3c3", + "a1/d780b4e65514c605e3114f89afd3c3/.command.begin", + "a1/d780b4e65514c605e3114f89afd3c3/.command.err", + "a1/d780b4e65514c605e3114f89afd3c3/.command.log", + "a1/d780b4e65514c605e3114f89afd3c3/.command.out", + "a1/d780b4e65514c605e3114f89afd3c3/.command.run", + "a1/d780b4e65514c605e3114f89afd3c3/.command.sh", + "a1/d780b4e65514c605e3114f89afd3c3/.command.trace", + "a1/d780b4e65514c605e3114f89afd3c3/.exitcode", + "a1/d780b4e65514c605e3114f89afd3c3/test_process", + "a1/d780b4e65514c605e3114f89afd3c3/test_process/test.json", + "a1/d780b4e65514c605e3114f89afd3c3/thresholds.mat", + "a1/d780b4e65514c605e3114f89afd3c3/versions.yml", + "mat2json", + "mat2json/test_process", + "mat2json/test_process/test.json", + "pipeline_info", + "stage-2314e94b-b9f6-47fa-bd5f-6f79870c5ff9", + "stage-2314e94b-b9f6-47fa-bd5f-6f79870c5ff9/2d", + "stage-2314e94b-b9f6-47fa-bd5f-6f79870c5ff9/2d/4d62c64425c45ecf74be0192f5dc0f", + "stage-2314e94b-b9f6-47fa-bd5f-6f79870c5ff9/2d/4d62c64425c45ecf74be0192f5dc0f/thresholds.mat" + ] ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-02-21T15:36:26.450520824" + "timestamp": "2025-08-29T13:47:21.509083297" } } \ No newline at end of file diff --git a/modules/local/numorph3dunet/main.nf b/modules/local/numorph3dunet/main.nf index c5a02ec..5c11e1f 100644 --- a/modules/local/numorph3dunet/main.nf +++ b/modules/local/numorph3dunet/main.nf @@ -25,6 +25,12 @@ process NUMORPH3DUNET { source /opt/conda/etc/profile.d/conda.sh conda activate 3dunet + echo "GPU devices:" + ls -lha /dev/nvidia* || echo "No nvidia devices found" + + echo "Checking GPU access:" + nvidia-smi || echo "No nvidia-smi found" + mkdir -p ./results mkdir -p ./images diff --git a/modules/local/numorph3dunet/tests/main.nf.test b/modules/local/numorph3dunet/tests/main.nf.test index 10d1e99..3c3f70e 100644 --- a/modules/local/numorph3dunet/tests/main.nf.test +++ b/modules/local/numorph3dunet/tests/main.nf.test @@ -8,7 +8,7 @@ nextflow_process { tag "modules_" tag "numorph3dunet" tag "gpu" - profile "docker,gpu" + profile "gpu" config './nextflow.config' diff --git a/modules/local/numorph3dunet/tests/main.nf.test.snap b/modules/local/numorph3dunet/tests/main.nf.test.snap index c6faf83..84ee3c0 100644 --- a/modules/local/numorph3dunet/tests/main.nf.test.snap +++ b/modules/local/numorph3dunet/tests/main.nf.test.snap @@ -3,10 +3,10 @@ "content": [ 2, [ - "TEST1", - "TEST1/segmentation", - "TEST1/segmentation/TEST1.csv", - "TEST1/segmentation/TEST1_counts.csv", + "numorph3dunet", + "numorph3dunet/TEST1", + "numorph3dunet/TEST1/TEST1.csv", + "numorph3dunet/TEST1/TEST1_counts.csv", "pipeline_info", "unzipfiles", "unzipfiles/TEST1", @@ -33,8 +33,8 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-08-22T14:38:25.745842362" + "timestamp": "2025-08-29T11:55:03.555806608" } } \ No newline at end of file diff --git a/modules/local/numorphalign/tests/main.nf.test.snap b/modules/local/numorphalign/tests/main.nf.test.snap index d55088f..867b952 100644 --- a/modules/local/numorphalign/tests/main.nf.test.snap +++ b/modules/local/numorphalign/tests/main.nf.test.snap @@ -3,41 +3,38 @@ "content": [ 3, [ - "TEST1", - "TEST1/alignment", - "TEST1/alignment/results", - "TEST1/alignment/results/NM_variables.mat", - "TEST1/alignment/results/samples", - "TEST1/alignment/results/samples/alignment", - "TEST1/alignment/results/samples/alignment/TEST1_ctip2_full.tif", - "TEST1/alignment/results/samples/alignment/TEST1_topro_full.tif", - "TEST1/alignment/results/variables", - "TEST1/alignment/results/variables/alignment_table.mat", - "TEST1/alignment/results/variables/path_table.mat", - "TEST1/alignment/results/variables/z_displacement_align.mat", - "TEST1/intensity", - "TEST1/intensity/results", - "TEST1/intensity/results/NM_variables.mat", - "TEST1/intensity/results/samples", - "TEST1/intensity/results/samples/intensity_adjustment", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_2.png", - "TEST1/intensity/results/variables", - "TEST1/intensity/results/variables/adj_params.mat", - "TEST1/intensity/results/variables/path_table.mat", - "TEST1/intensity/results/variables/thresholds.mat", + "numorphalign", + "numorphalign/TEST1", + "numorphalign/TEST1/samples", + "numorphalign/TEST1/samples/alignment", + "numorphalign/TEST1/samples/alignment/TEST1_ctip2_full.tif", + "numorphalign/TEST1/samples/alignment/TEST1_topro_full.tif", + "numorphalign/TEST1/variables", + "numorphalign/TEST1/variables/alignment_table.mat", + "numorphalign/TEST1/variables/path_table.mat", + "numorphalign/TEST1/variables/z_displacement_align.mat", + "numorphintensity", + "numorphintensity/TEST1", + "numorphintensity/TEST1/samples", + "numorphintensity/TEST1/samples/intensity_adjustment", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_2.png", + "numorphintensity/TEST1/variables", + "numorphintensity/TEST1/variables/adj_params.mat", + "numorphintensity/TEST1/variables/path_table.mat", + "numorphintensity/TEST1/variables/thresholds.mat", "pipeline_info", "unzip", "unzip/TEST1", @@ -214,8 +211,8 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-06-20T17:58:04.410259477" + "timestamp": "2025-08-29T11:32:20.483087568" } } \ No newline at end of file diff --git a/modules/local/numorphintensity/tests/main.nf.test.snap b/modules/local/numorphintensity/tests/main.nf.test.snap index 0504bde..7fa6be4 100644 --- a/modules/local/numorphintensity/tests/main.nf.test.snap +++ b/modules/local/numorphintensity/tests/main.nf.test.snap @@ -3,30 +3,28 @@ "content": [ 2, [ - "TEST1", - "TEST1/intensity", - "TEST1/intensity/results", - "TEST1/intensity/results/NM_variables.mat", - "TEST1/intensity/results/samples", - "TEST1/intensity/results/samples/intensity_adjustment", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_2.png", - "TEST1/intensity/results/variables", - "TEST1/intensity/results/variables/adj_params.mat", - "TEST1/intensity/results/variables/path_table.mat", - "TEST1/intensity/results/variables/thresholds.mat", + "numorphintensity", + "numorphintensity/TEST1", + "numorphintensity/TEST1/samples", + "numorphintensity/TEST1/samples/intensity_adjustment", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_2.png", + "numorphintensity/TEST1/variables", + "numorphintensity/TEST1/variables/adj_params.mat", + "numorphintensity/TEST1/variables/path_table.mat", + "numorphintensity/TEST1/variables/thresholds.mat", "pipeline_info", "unzip", "unzip/TEST1", @@ -203,8 +201,8 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-06-20T16:19:48.305625041" + "timestamp": "2025-08-29T11:27:18.418645149" } } \ No newline at end of file diff --git a/modules/local/numorphregister/main.nf b/modules/local/numorphregister/main.nf index 4934870..48fcdbd 100644 --- a/modules/local/numorphregister/main.nf +++ b/modules/local/numorphregister/main.nf @@ -32,9 +32,13 @@ process NUMORPHREGISTER { mv $resampled_directory \$PWD/results/resampled - results="\$PWD/results" + #resolve symlinks and paths + resampled_directory=\$(readlink -f ./results/resampled/) + parameter_file=\$(readlink -f ${parameter_file}) + NM_variables=\$(readlink -f ${NM_variables}) + results_dir=\$(readlink -f ./results) - /usr/bin/mlrtapp/numorph_analyze 'input_dir' \$PWD/$resampled_directory 'output_dir' \$PWD/results/ 'parameter_file' $parameter_file 'sample_name' $meta.id 'stage' 'register' 'NM_variables' \$PWD/$nm_variables 'use_processed_images' 'resampled' + numorph_analyze 'input_dir' \$resampled_directory 'output_dir' \$results_dir 'parameter_file' \$parameter_file 'sample_name' ${meta.id} 'stage' 'register' 'NM_variables' \$NM_variables 'use_processed_images' 'resampled' cat <<-END_VERSIONS > versions.yml diff --git a/modules/local/numorphregister/tests/main.nf.test.snap b/modules/local/numorphregister/tests/main.nf.test.snap index 9e59cad..9581366 100644 --- a/modules/local/numorphregister/tests/main.nf.test.snap +++ b/modules/local/numorphregister/tests/main.nf.test.snap @@ -15,7 +15,7 @@ "TEST1_registered.tif:md5,d41d8cd98f00b204e9800998ecf8427e" ], "4": [ - "versions.yml:md5,8fb479aa14a9e667a80a4e374bd3c302" + "versions.yml:md5,fe89c175cbba844c4b95437e4def7abe" ], "NM_variables": [ "NM_variables.mat:md5,d41d8cd98f00b204e9800998ecf8427e" @@ -30,14 +30,14 @@ "TEST1_registered.tif:md5,d41d8cd98f00b204e9800998ecf8427e" ], "versions": [ - "versions.yml:md5,8fb479aa14a9e667a80a4e374bd3c302" + "versions.yml:md5,fe89c175cbba844c4b95437e4def7abe" ] } ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-02-20T15:23:33.270945314" + "timestamp": "2025-08-29T11:37:58.144917362" } } \ No newline at end of file diff --git a/modules/local/numorphresample/main.nf b/modules/local/numorphresample/main.nf index 91b79b3..ec6c3fe 100644 --- a/modules/local/numorphresample/main.nf +++ b/modules/local/numorphresample/main.nf @@ -23,13 +23,17 @@ process NUMORPHRESAMPLE { def nm_variables = NM_variables ? "${NM_variables}" : "" """ - mkdir -p \$PWD/results/stitched/ + mkdir -p results/stitched/ - mv $stitch_directory \$PWD/results/stitched + mv $stitch_directory results/stitched - results="\$PWD/results" + # resolve symlinks and paths + stitch_directory=\$(readlink -f ./results/stitched/) + parameter_file=\$(readlink -f ${parameter_file}) + NM_variables=\$(readlink -f ${NM_variables}) + results_dir=\$(readlink -f ./results) - /usr/bin/mlrtapp/numorph_analyze 'input_dir' \$PWD/results/stitched 'output_dir' \$results 'parameter_file' $parameter_file 'sample_name' $meta.id 'stage' 'resample' 'NM_variables' \$PWD/$nm_variables 'use_processed_images' 'stitched' + numorph_analyze 'input_dir' \$stitch_directory 'output_dir' \$results_dir 'parameter_file' \$parameter_file 'sample_name' ${meta.id} 'stage' 'resample' 'NM_variables' \$NM_variables 'use_processed_images' 'stitched' cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/local/numorphstitch/tests/main.nf.test.snap b/modules/local/numorphstitch/tests/main.nf.test.snap index 3a4aef7..ffc64a8 100644 --- a/modules/local/numorphstitch/tests/main.nf.test.snap +++ b/modules/local/numorphstitch/tests/main.nf.test.snap @@ -1,147 +1,88 @@ { - "Numorphstitch stub test": { - "content": [ - { - "0": [ - [ - { - "id": "TEST1" - }, - "TEST1_stitched.tif:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "1": [ - [ - "adjusted_z.mat:md5,d41d8cd98f00b204e9800998ecf8427e", - "path_table.mat:md5,d41d8cd98f00b204e9800998ecf8427e", - "stitch_tforms.mat:md5,d41d8cd98f00b204e9800998ecf8427e", - "z_dips_matrix.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "2": [ - "NM_variables.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ], - "3": [ - "versions.yml:md5,078a96bac91c7c12facb9f321644c34d" - ], - "NM_variables": [ - "NM_variables.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ], - "stitched": [ - [ - { - "id": "TEST1" - }, - "TEST1_stitched.tif:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "variables": [ - [ - "adjusted_z.mat:md5,d41d8cd98f00b204e9800998ecf8427e", - "path_table.mat:md5,d41d8cd98f00b204e9800998ecf8427e", - "stitch_tforms.mat:md5,d41d8cd98f00b204e9800998ecf8427e", - "z_dips_matrix.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "versions": [ - "versions.yml:md5,078a96bac91c7c12facb9f321644c34d" - ] - } - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "24.10.3" - }, - "timestamp": "2025-02-19T16:40:56.52260208" - }, "Numorphstitch test": { "content": [ 4, [ - "TEST1", - "TEST1/alignment", - "TEST1/alignment/results", - "TEST1/alignment/results/NM_variables.mat", - "TEST1/alignment/results/samples", - "TEST1/alignment/results/samples/alignment", - "TEST1/alignment/results/samples/alignment/TEST1_ctip2_full.tif", - "TEST1/alignment/results/samples/alignment/TEST1_topro_full.tif", - "TEST1/alignment/results/variables", - "TEST1/alignment/results/variables/alignment_table.mat", - "TEST1/alignment/results/variables/path_table.mat", - "TEST1/alignment/results/variables/z_displacement_align.mat", - "TEST1/intensity", - "TEST1/intensity/results", - "TEST1/intensity/results/NM_variables.mat", - "TEST1/intensity/results/samples", - "TEST1/intensity/results/samples/intensity_adjustment", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_2.png", - "TEST1/intensity/results/variables", - "TEST1/intensity/results/variables/adj_params.mat", - "TEST1/intensity/results/variables/path_table.mat", - "TEST1/intensity/results/variables/thresholds.mat", - "TEST1/stitching", - "TEST1/stitching/results", - "TEST1/stitching/results/NM_variables.mat", - "TEST1/stitching/results/stitched", - "TEST1/stitching/results/stitched/TEST1_0001_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0001_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0002_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0002_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0003_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0003_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0004_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0004_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0005_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0005_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0006_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0006_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0007_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0007_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0008_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0008_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0009_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0009_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0010_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0010_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0011_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0011_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0012_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0012_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0013_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0013_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0014_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0014_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0015_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0015_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0016_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0016_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0017_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0017_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0018_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0018_C2_ctip2_stitched.tif", - "TEST1/stitching/results/variables", - "TEST1/stitching/results/variables/adj_params.mat", - "TEST1/stitching/results/variables/adjusted_z.mat", - "TEST1/stitching/results/variables/alignment_table.mat", - "TEST1/stitching/results/variables/path_table.mat", - "TEST1/stitching/results/variables/stitch_tforms.mat", - "TEST1/stitching/results/variables/thresholds.mat", - "TEST1/stitching/results/variables/z_disp_matrix.mat", - "TEST1/stitching/results/variables/z_displacement_align.mat", + "numorphalign", + "numorphalign/TEST1", + "numorphalign/TEST1/samples", + "numorphalign/TEST1/samples/alignment", + "numorphalign/TEST1/samples/alignment/TEST1_ctip2_full.tif", + "numorphalign/TEST1/samples/alignment/TEST1_topro_full.tif", + "numorphalign/TEST1/variables", + "numorphalign/TEST1/variables/alignment_table.mat", + "numorphalign/TEST1/variables/path_table.mat", + "numorphalign/TEST1/variables/z_displacement_align.mat", + "numorphintensity", + "numorphintensity/TEST1", + "numorphintensity/TEST1/samples", + "numorphintensity/TEST1/samples/intensity_adjustment", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_2.png", + "numorphintensity/TEST1/variables", + "numorphintensity/TEST1/variables/adj_params.mat", + "numorphintensity/TEST1/variables/path_table.mat", + "numorphintensity/TEST1/variables/thresholds.mat", + "numorphstitch", + "numorphstitch/TEST1", + "numorphstitch/TEST1/stitched", + "numorphstitch/TEST1/stitched/TEST1_0001_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0001_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0002_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0002_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0003_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0003_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0004_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0004_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0005_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0005_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0006_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0006_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0007_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0007_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0008_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0008_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0009_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0009_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0010_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0010_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0011_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0011_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0012_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0012_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0013_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0013_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0014_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0014_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0015_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0015_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0016_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0016_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0017_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0017_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0018_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0018_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/variables", + "numorphstitch/TEST1/variables/adj_params.mat", + "numorphstitch/TEST1/variables/adjusted_z.mat", + "numorphstitch/TEST1/variables/alignment_table.mat", + "numorphstitch/TEST1/variables/path_table.mat", + "numorphstitch/TEST1/variables/stitch_tforms.mat", + "numorphstitch/TEST1/variables/thresholds.mat", + "numorphstitch/TEST1/variables/z_disp_matrix.mat", + "numorphstitch/TEST1/variables/z_displacement_align.mat", "pipeline_info", "unzip", "unzip/TEST1", @@ -318,8 +259,8 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-06-20T17:44:42.45846679" + "timestamp": "2025-08-29T12:00:50.435832344" } } \ No newline at end of file diff --git a/modules/nf-core/basicpy/environment.yml b/modules/nf-core/basicpy/environment.yml deleted file mode 100644 index 3cebeff..0000000 --- a/modules/nf-core/basicpy/environment.yml +++ /dev/null @@ -1,3 +0,0 @@ -channels: - - conda-forge - - bioconda diff --git a/modules/nf-core/basicpy/main.nf b/modules/nf-core/basicpy/main.nf index da87a0b..7cf650f 100644 --- a/modules/nf-core/basicpy/main.nf +++ b/modules/nf-core/basicpy/main.nf @@ -8,8 +8,8 @@ process BASICPY { tuple val(meta), path(image) output: - tuple val(meta), path("*.tiff"), emit: fields - path "versions.yml" , emit: versions + tuple val(meta), path("*-dfp.tiff"), path("*-ffp.tiff"), emit: profiles + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when @@ -19,15 +19,14 @@ process BASICPY { if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { error "Basicpy module does not support Conda. Please use Docker / Singularity instead." } - def args = task.ext.args ?: '' - def prefix = task.ext.prefix ?: "${meta.id}" + def args = task.ext.args ?: '' def VERSION = "1.2.0-patch1" // WARN: Version information not provided by tool on CLI. Please update this string when bumping """ /opt/main.py -i $image -o . $args cat <<-END_VERSIONS > versions.yml "${task.process}": - basicpy:: $VERSION + basicpy: $VERSION END_VERSIONS """ @@ -36,13 +35,15 @@ process BASICPY { if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { error "Basicpy module does not support Conda. Please use Docker / Singularity instead." } + def prefix = task.ext.prefix ?: "${meta.id}" + def VERSION = "1.2.0-patch1" // WARN: Version information not provided by tool on CLI. Please update this string when bumping """ touch ${prefix}.-dfp.tiff - touch ${prefix}.-dfp.tiff + touch ${prefix}.-ffp.tiff cat <<-END_VERSIONS > versions.yml "${task.process}": - basicpy:: $VERSION + basicpy: $VERSION END_VERSIONS """ } diff --git a/modules/nf-core/basicpy/meta.yml b/modules/nf-core/basicpy/meta.yml index b143f5d..2cdd992 100644 --- a/modules/nf-core/basicpy/meta.yml +++ b/modules/nf-core/basicpy/meta.yml @@ -28,22 +28,31 @@ input: type: file description: Tiff file to be used for dark and flat field illumination correction pattern: "*.{tiff,tif}" + ontologies: [] output: - - fields: - - meta: + profiles: + - - meta: type: map description: | Groovy Map containing sample information e.g. [ id:'test' ] - - "*.tiff": + - "*-dfp.tiff": type: file - description: Tiff fields for dark and flat field illumination correction - pattern: "*.{tiff,tif}" - - versions: - - versions.yml: + description: Tiff fields for dark field illumination correction + pattern: "*.{tiff}" + ontologies: [] + - "*-ffp.tiff": type: file - description: File containing software versions - pattern: "versions.yml" + description: Tiff fields for flat field illumination correction + pattern: "*.{tiff}" + ontologies: [] + versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" + ontologies: + - edam: http://edamontology.org/format_3750 # YAML authors: - "@FloWuenne" maintainers: diff --git a/modules/nf-core/basicpy/tests/main.nf.test b/modules/nf-core/basicpy/tests/main.nf.test new file mode 100644 index 0000000..40ba4dd --- /dev/null +++ b/modules/nf-core/basicpy/tests/main.nf.test @@ -0,0 +1,64 @@ +nextflow_process { + + name "Test Process BASICPY" + script "../main.nf" + process "BASICPY" + + tag "modules" + tag "modules_nfcore" + tag "basicpy" + + test("basicpy - OME-TIFF") { + + when { + process { + """ + input[0] = [ + [ id:'test' ], + file(params.modules_testdata_base_path + 'imaging/ome-tiff/cycif-tonsil-cycle1.ome.tif', checkIfExists: true), + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + file(process.out.profiles.get(0).get(1)).exists(), + file(process.out.profiles.get(0).get(2)).exists(), + file(process.out.profiles.get(0).get(1)).size(), + file(process.out.profiles.get(0).get(2)).size() + ).match() + }, + ) + } + + } + + test("basicpy - OME-TIFF - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id:'test' ], + file(params.modules_testdata_base_path + 'imaging/ome-tiff/cycif-tonsil-cycle1.ome.tif', checkIfExists: true), + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/basicpy/tests/main.nf.test.snap b/modules/nf-core/basicpy/tests/main.nf.test.snap new file mode 100644 index 0000000..94b14ec --- /dev/null +++ b/modules/nf-core/basicpy/tests/main.nf.test.snap @@ -0,0 +1,53 @@ +{ + "basicpy - OME-TIFF": { + "content": [ + [ + "versions.yml:md5,1391fd5a5745a20016f9824467273113" + ], + true, + true, + 633904, + 633904 + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.5" + }, + "timestamp": "2025-03-12T20:14:46.041882924" + }, + "basicpy - OME-TIFF - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.-dfp.tiff:md5,d41d8cd98f00b204e9800998ecf8427e", + "test.-ffp.tiff:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,1391fd5a5745a20016f9824467273113" + ], + "profiles": [ + [ + { + "id": "test" + }, + "test.-dfp.tiff:md5,d41d8cd98f00b204e9800998ecf8427e", + "test.-ffp.tiff:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,1391fd5a5745a20016f9824467273113" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.5" + }, + "timestamp": "2025-03-12T20:14:53.621168198" + } +} \ No newline at end of file diff --git a/modules/nf-core/multiqc/environment.yml b/modules/nf-core/multiqc/environment.yml old mode 100755 new mode 100644 index 812fc4c..f893704 --- a/modules/nf-core/multiqc/environment.yml +++ b/modules/nf-core/multiqc/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::multiqc=1.29 + - bioconda::multiqc=1.30 diff --git a/modules/nf-core/multiqc/main.nf b/modules/nf-core/multiqc/main.nf old mode 100755 new mode 100644 index 0ac3c36..67460de --- a/modules/nf-core/multiqc/main.nf +++ b/modules/nf-core/multiqc/main.nf @@ -3,8 +3,8 @@ process MULTIQC { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/multiqc:1.29--pyhdfd78af_0' : - 'biocontainers/multiqc:1.29--pyhdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/multiqc:1.30--pyhdfd78af_1' : + 'biocontainers/multiqc:1.30--pyhdfd78af_1' }" input: path multiqc_files, stageAs: "?/*" diff --git a/modules/nf-core/multiqc/meta.yml b/modules/nf-core/multiqc/meta.yml old mode 100755 new mode 100644 diff --git a/modules/nf-core/multiqc/tests/main.nf.test b/modules/nf-core/multiqc/tests/main.nf.test old mode 100755 new mode 100644 diff --git a/modules/nf-core/multiqc/tests/main.nf.test.snap b/modules/nf-core/multiqc/tests/main.nf.test.snap old mode 100755 new mode 100644 index 88e9057..0d3f288 --- a/modules/nf-core/multiqc/tests/main.nf.test.snap +++ b/modules/nf-core/multiqc/tests/main.nf.test.snap @@ -2,14 +2,14 @@ "multiqc_versions_single": { "content": [ [ - "versions.yml:md5,c1fe644a37468f6dae548d98bc72c2c1" + "versions.yml:md5,e65ce731db2128b8e4dd43d6e880fc1c" ] ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.2" + "nextflow": "25.04.3" }, - "timestamp": "2025-05-22T11:50:41.182332996" + "timestamp": "2025-07-10T08:06:23.563041241" }, "multiqc_stub": { "content": [ @@ -17,25 +17,25 @@ "multiqc_report.html", "multiqc_data", "multiqc_plots", - "versions.yml:md5,c1fe644a37468f6dae548d98bc72c2c1" + "versions.yml:md5,e65ce731db2128b8e4dd43d6e880fc1c" ] ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.2" + "nextflow": "25.04.3" }, - "timestamp": "2025-05-22T11:51:22.448739369" + "timestamp": "2025-07-10T08:06:48.96226832" }, "multiqc_versions_config": { "content": [ [ - "versions.yml:md5,c1fe644a37468f6dae548d98bc72c2c1" + "versions.yml:md5,e65ce731db2128b8e4dd43d6e880fc1c" ] ], "meta": { "nf-test": "0.9.2", - "nextflow": "25.04.2" + "nextflow": "25.04.3" }, - "timestamp": "2025-05-22T11:51:06.198928424" + "timestamp": "2025-07-10T08:06:40.627008706" } -} \ No newline at end of file +} diff --git a/modules/nf-core/multiqc/tests/tags.yml b/modules/nf-core/multiqc/tests/tags.yml deleted file mode 100755 index bea6c0d..0000000 --- a/modules/nf-core/multiqc/tests/tags.yml +++ /dev/null @@ -1,2 +0,0 @@ -multiqc: - - modules/nf-core/multiqc/** diff --git a/modules/nf-core/unzip/meta.yml b/modules/nf-core/unzip/meta.yml index 426fccb..ba1eb91 100644 --- a/modules/nf-core/unzip/meta.yml +++ b/modules/nf-core/unzip/meta.yml @@ -24,9 +24,11 @@ input: type: file description: ZIP file pattern: "*.zip" + ontologies: + - edam: http://edamontology.org/format_3987 # ZIP format output: - - unzipped_archive: - - meta: + unzipped_archive: + - - meta: type: map description: | Groovy Map containing sample information @@ -35,11 +37,13 @@ output: type: directory description: Directory contents of the unzipped archive pattern: "${archive.baseName}/" - - versions: - - versions.yml: - type: file - description: File containing software versions - pattern: "versions.yml" + versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" + ontologies: + - edam: http://edamontology.org/format_3750 # YAML authors: - "@jfy133" maintainers: diff --git a/modules/nf-core/unzip/tests/tags.yml b/modules/nf-core/unzip/tests/tags.yml deleted file mode 100644 index 7f5647e..0000000 --- a/modules/nf-core/unzip/tests/tags.yml +++ /dev/null @@ -1,2 +0,0 @@ -unzip: - - "modules/nf-core/unzip/**" diff --git a/nf-test.config b/nf-test.config index 604f3b6..3a1fff5 100644 --- a/nf-test.config +++ b/nf-test.config @@ -12,7 +12,7 @@ config { ignore 'modules/nf-core/**/tests/*', 'subworkflows/nf-core/**/tests/*' // run all test with defined profile(s) from the main nextflow.config - profile "test, docker" + profile "test" // list of filenames or patterns that should be trigger a full test run triggers 'nextflow.config', 'nf-test.config', 'conf/test.config', 'tests/nextflow.config', 'tests/.nftignore' diff --git a/ro-crate-metadata.json b/ro-crate-metadata.json index 8ffc012..9dffaa6 100644 --- a/ro-crate-metadata.json +++ b/ro-crate-metadata.json @@ -23,7 +23,7 @@ "@type": "Dataset", "creativeWorkStatus": "InProgress", "datePublished": "2025-07-08T11:38:54+00:00", - "description": "

\n \n \n \"nf-core/lsmquant\"\n \n

\n\n[![GitHub Actions CI Status](https://github.com/nf-core/lsmquant/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/lsmquant/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/lsmquant/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/lsmquant/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/lsmquant/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.10.5-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.2-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.2)\n[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=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[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/lsmquant)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23lsmquant-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/lsmquant)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n\n## Introduction\n\n**nf-core/lsmquant** is a bioinformatics pipeline that performs preprocessing and analysis of light-sheet microscopy images of tissue cleard samples. The pipeline takes 2D single-channel 16-bit `.tif` images as input. The preprocessing consists of intesity adjustment, channel alignemnt, and tile stitching to reconstruct the 3D image. For mousebrain samples it offers a regsitration to the Allen Mouse Brain Reference Atlas for precise region annotation. Cell nuclei quantification is perfomed on the nuclear channel by a 3D-Unet.\n\n
\n\"lasmquant\n
\n\n### Basic workflow\n\n**Preprocessing**\n\n1. Intensity Adjustment\n2. Channel Alignment\n3. Iterative Stitching\n\n**Analysis**\n\n4. ARA Registration subworkflow (optional)\n5. Cell Nuclei Quantification\n\n## Pipeline Summary\n\nThe pipeline consists of two major stages, the `preprocessing`stage and the `analysis`stage.\n\n### Preprocessing\n\nPreprocessing is performed on raw 2D single-channel 16-bit `.tif` images produced by a light sheet microscope. Three individual steps are perfomed :\n\n- Measuring and adjustemnts for intensities\n- Image channel alignemnt for at least two different channels\n- Image tile stitching to recustruct the full image for each channel and z-slice\n\n### Analysis\n\nAnalysis is performed using a 3D-Unet to qunatify the amount of cell-nuclei in the given sample. The quantification is performed on the nuclear channel only, assuming that the corresponding image file names contain the pattern `C1`.\n\nOptionally registration to the Allen Refernce Atlas (ARA) for functional brain region annotation can be perfomed before segmentation.\nThis includes the following two steps:\n\n- Downsampling of the high resolution stitched images\n- Registration to the ARA\n\n## Usage\n\n> [!NOTE]\n> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) with `-profile test` before running the workflow on actual data.\n\nTo run the pipeline you need to provide a samplesheet with your data in the following structure:\n\n`samplesheet.csv`\n\n```bash\nsample_id,img_directory,parameter_file\nTEST1,path/to/image-files,path/to/parameter/file.csv\n```\n\nThe parameter csv file includes sample specific parameters that are used for processing the given data.It needs to follow a specific structure.\n\nPlease get the basic tempalte file here ( include maybe link to template csv which can be found in the repo ?)\n`parametersheet.csv`\n\nNow, you can run the pipeline using:\n\n\n\n```bash\nnextflow run nf-core/lsmquant \\\n -profile \\\n --input \\\n --outdir \\\n --stage \n```\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/lsmquant/usage) and the [parameter documentation](https://nf-co.re/lsmquant/parameters).\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/lsmquant/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/lsmquant/output).\n\n## Credits\n\nnf-core/lsmquant was originally written by Carolin Schwitalla.\n\nThe pipeline is mainly based on the NuMorph (Nuclear-Based Morphometry) toolbox developed by Krupa et al., 2021.\n\n> **NuMorph: Tools for cortical cellular phenotyping in tissue-cleared whole-brain images**\n>\n> Krupa O, Fragola G, Hadden-Ford E, Mory JT, Liu T, Humphrey Z, Rees BW, Krishnamurthy A, Snider WD, Zylka MJ, Wu G, Xing L, Stein JL.\n>\n> Cell Rep. 2021 Oct 12, doi: [10.1016/j.celrep.2021.109802](https://doi.org/10.1016%2Fj.celrep.2021.109802)\n\nWe thank the following people for their extensive assistance in the development of this pipeline:\n\n\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#lsmquant` channel](https://nfcore.slack.com/channels/lsmquant) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\n\n\n\n\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n\nYou can cite the `nf-core` publication as follows:\n\n> **The nf-core framework for community-curated bioinformatics pipelines.**\n>\n> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.\n>\n> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).\n", + "description": "

\n \n \n \"nf-core/lsmquant\"\n \n

\n\n[![GitHub Actions CI Status](https://github.com/nf-core/lsmquant/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/lsmquant/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/lsmquant/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/lsmquant/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/lsmquant/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.10.5-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.2-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.2)\n[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=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[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/lsmquant)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23lsmquant-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/lsmquant)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n![HiRSE Code Promo Badge](https://img.shields.io/badge/Promo-8db427?style=plastic&label=HiRSE&labelColor=005aa0&link=https%3A%2F%2Fgo.fzj.de%2FCodePromo)\n\n## Introduction\n\n**nf-core/lsmquant** is a bioinformatics pipeline that performs preprocessing and analysis of light-sheet microscopy images of tissue cleard samples. The pipeline takes 2D single-channel 16-bit `.tif` images as input. The preprocessing consists of intesity adjustment, channel alignemnt, and tile stitching to reconstruct the 3D image. For mousebrain samples it offers a regsitration to the Allen Mouse Brain Reference Atlas for precise region annotation. Cell nuclei quantification is perfomed on the nuclear channel by a 3D-Unet.\n\n
\n\"lasmquant\n
\n\n### Basic workflow\n\n**Preprocessing**\n\n1. Intensity Adjustment\n2. Channel Alignment\n3. Iterative Stitching\n\n**Analysis**\n\n4. ARA Registration subworkflow (optional)\n5. Cell Nuclei Quantification\n\n## Pipeline Summary\n\nThe pipeline consists of two major stages, the `preprocessing`stage and the `analysis`stage.\n\n### Preprocessing\n\nPreprocessing is performed on raw 2D single-channel 16-bit `.tif` images produced by a light sheet microscope. Three individual steps are perfomed :\n\n- Measuring and adjustemnts for intensities\n- Image channel alignemnt for at least two different channels\n- Image tile stitching to recustruct the full image for each channel and z-slice\n\n### Analysis\n\nAnalysis is performed using a 3D-Unet to qunatify the amount of cell-nuclei in the given sample. The quantification is performed on the nuclear channel only, assuming that the corresponding image file names contain the pattern `C1`.\n\nOptionally registration to the Allen Refernce Atlas (ARA) for functional brain region annotation can be perfomed before segmentation.\nThis includes the following two steps:\n\n- Downsampling of the high resolution stitched images\n- Registration to the ARA\n\n## Usage\n\n> [!NOTE]\n> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) with `-profile test` before running the workflow on actual data.\n\nTo run the pipeline you need to provide a samplesheet with your data in the following structure:\n\n`samplesheet.csv`\n\n```bash\nsample_id,img_directory,parameter_file\nTEST1,path/to/image-files,path/to/parameter/file.csv\n```\n\nThe parameter csv file includes sample specific parameters that are used for processing the given data.It needs to follow a specific structure.\n\nPlease get the basic tempalte file here ( include maybe link to template csv which can be found in the repo ?)\n`parametersheet.csv`\n\nNow, you can run the pipeline using:\n\n\n\n```bash\nnextflow run nf-core/lsmquant \\\n -profile \\\n --input \\\n --outdir \\\n --stage \n```\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/lsmquant/usage) and the [parameter documentation](https://nf-co.re/lsmquant/parameters).\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/lsmquant/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/lsmquant/output).\n\n## Credits\n\nnf-core/lsmquant was originally written by Carolin Schwitalla.\n\nThe pipeline is mainly based on the NuMorph (Nuclear-Based Morphometry) toolbox developed by Krupa et al., 2021.\n\n> **NuMorph: Tools for cortical cellular phenotyping in tissue-cleared whole-brain images**\n>\n> Krupa O, Fragola G, Hadden-Ford E, Mory JT, Liu T, Humphrey Z, Rees BW, Krishnamurthy A, Snider WD, Zylka MJ, Wu G, Xing L, Stein JL.\n>\n> Cell Rep. 2021 Oct 12, doi: [10.1016/j.celrep.2021.109802](https://doi.org/10.1016%2Fj.celrep.2021.109802)\n\nWe thank the following people for their extensive assistance in the development of this pipeline:\n\n\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#lsmquant` channel](https://nfcore.slack.com/channels/lsmquant) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\n\n\n\n\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n\nYou can cite the `nf-core` publication as follows:\n\n> **The nf-core framework for community-curated bioinformatics pipelines.**\n>\n> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.\n>\n> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).\n", "hasPart": [ { "@id": "main.nf" diff --git a/subworkflows/local/araregistration/meta.yml b/subworkflows/local/araregistration/meta.yml index 4da8bc7..36d04c2 100644 --- a/subworkflows/local/araregistration/meta.yml +++ b/subworkflows/local/araregistration/meta.yml @@ -1,44 +1,47 @@ # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/subworkflows/yaml-schema.json name: "araregistration" ## TODO nf-core: Add a description of the subworkflow and list keywords -description: Sort SAM/BAM/CRAM file +description: Image registration of 2D stitched images to the Allan reference atlas keywords: - - sort - - bam - - sam - - cram -## TODO nf-core: Add a list of the modules and/or subworkflows used in the subworkflow + - registration + - mouse brain + - atlas components: - - samtools/sort - - samtools/index -## TODO nf-core: List all of the channels used as input with a description and their structure + - numorphresample + - numorphregister + - mat2json input: - - ch_bam: - type: file + - stitched_data: + type: path + description: | + The input channel containing the stitched TIFF files and the parameter file + Structure: [ val(meta), path(stitched), path(parameters) ] + pattern: "*.tif/tiff/csv" + - NM_variables: + type: path description: | - The input channel containing the BAM/CRAM/SAM files - Structure: [ val(meta), path(bam) ] - pattern: "*.{bam/cram/sam}" -## TODO nf-core: List all of the channels used as output with a descriptions and their structure + The input channel containing the numorph processing parameter file (MAT) + Structure: [ val(meta), path(NM_variables) ] + pattern: "*.mat" output: - - bam: + - reg_mask: type: file description: | - Channel containing BAM files - Structure: [ val(meta), path(bam) ] - pattern: "*.bam" - - bai: - type: file + Channel containing registration mask file + Structure: path(mat) + pattern: "*.mat" + - registered: + type: path description: | - Channel containing indexed BAM (BAI) files - Structure: [ val(meta), path(bai) ] - pattern: "*.bai" - - csi: + Channel containing path to registered image files + Structure: path(nii) + pattern: "*.nii" + - NM_variables: type: file description: | - Channel containing CSI files - Structure: [ val(meta), path(csi) ] - pattern: "*.csi" + Channel containing numorph processing parameter file (MAT) + Structure: path(NM_variables.mat) + pattern: "*.mat" - versions: type: file description: | diff --git a/subworkflows/local/numorph_preprocessing/main.nf b/subworkflows/local/numorph_preprocessing/main.nf index af503ce..b8b8456 100644 --- a/subworkflows/local/numorph_preprocessing/main.nf +++ b/subworkflows/local/numorph_preprocessing/main.nf @@ -5,11 +5,12 @@ include { NUMORPHSTITCH } from '../../../modules/local/nu include { MAT2JSON as MAT2JSON_INT } from '../../../modules/local/mat2json/' include { MAT2JSON as MAT2JSON_ALIGN } from '../../../modules/local/mat2json/' include { MAT2JSON as MAT2JSON_STITCH } from '../../../modules/local/mat2json/' +include { softwareVersionsToYAML } from '../../../subworkflows/nf-core/utils_nfcore_pipeline/' workflow NUMORPH_PREPROCESSING { take: - samplesheet // channel: [ val(meta), path(imf_directory), path(parameter_file) ] + samplesheet // channel: [ val(meta), path(img_directory), path(parameter_file) ] main: @@ -78,10 +79,20 @@ workflow NUMORPH_PREPROCESSING { MAT2JSON_STITCH (mat_files_stitch, "stitch" ) ch_versions = ch_versions.mix(MAT2JSON_INT.out.versions) + // Collate and save software versions + // + softwareVersionsToYAML(ch_versions) + .collectFile( + storeDir: "${params.outdir}/pipeline_info", + name: 'nf_core_' + 'lsmquant_software_' + 'mqc_' + 'versions.yml', + sort: true, + newLine: true + ).set { ch_collated_versions } + emit: stitched = stitch_out.stitched // channel: [ path(stitched_dir) ] - intensity_thresholds = intensity_out.thresholds_mat // channel: [path(thresholds_mat) ] - NM_variables = stitch_out.NM_variables // channel: [path(NM_variables) ] - versions = ch_versions // channel: [ versions.yml ] + intensity_thresholds = intensity_out.thresholds_mat // channel: [path(thresholds_mat) ] + NM_variables = stitch_out.NM_variables // channel: [path(NM_variables) ] + versions = ch_collated_versions // channel: [ versions.yml ] } diff --git a/subworkflows/local/numorph_preprocessing/meta.yml b/subworkflows/local/numorph_preprocessing/meta.yml index 7cff8b8..badc35d 100644 --- a/subworkflows/local/numorph_preprocessing/meta.yml +++ b/subworkflows/local/numorph_preprocessing/meta.yml @@ -1,44 +1,43 @@ # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/subworkflows/yaml-schema.json name: "numorph_preprocessing" -## TODO nf-core: Add a description of the subworkflow and list keywords -description: Sort SAM/BAM/CRAM file +description: preprocessing (intensity adjustment, alignment, stitching) of 2D single channel single tile TIFF images. keywords: - - sort - - bam - - sam - - cram -## TODO nf-core: Add a list of the modules and/or subworkflows used in the subworkflow + - intensity + - alignment + - stitching + - tiff + components: - - samtools/sort - - samtools/index -## TODO nf-core: List all of the channels used as input with a description and their structure + - numorphintensity + - numorphalign + - numorphstitch + - mat2json input: - - ch_bam: - type: file + - samplesheet: + type: tuple description: | - The input channel containing the BAM/CRAM/SAM files - Structure: [ val(meta), path(bam) ] - pattern: "*.{bam/cram/sam}" -## TODO nf-core: List all of the channels used as output with a descriptions and their structure + The input channel containing the metadata, image directory and parameter file. + Structure: [ val(meta), path(img_directory), path(parameter_file)] + pattern: "*.{tif/tiff/csv}" output: - - bam: - type: file + - stitched: + type: path description: | - Channel containing BAM files - Structure: [ val(meta), path(bam) ] - pattern: "*.bam" - - bai: + Channel containing path to stitched Tiff files + Structure: [ val(meta), path(stitched) ] + pattern: "*.tif/tiff" + - intensity_thresholds: type: file description: | - Channel containing indexed BAM (BAI) files - Structure: [ val(meta), path(bai) ] - pattern: "*.bai" - - csi: + Channel containing intensity threshold (MAT) file + Structure: path(thresholds_mat) + pattern: "*.mat" + - NM_variables: type: file description: | - Channel containing CSI files - Structure: [ val(meta), path(csi) ] - pattern: "*.csi" + Channel containing numorph processing parameter file (MAT) + Structure: path(NM_variables.mat) + pattern: "*.mat" - versions: type: file description: | diff --git a/subworkflows/local/numorph_preprocessing/tests/.nftignore b/subworkflows/local/numorph_preprocessing/tests/.nftignore new file mode 100644 index 0000000..3fbe502 --- /dev/null +++ b/subworkflows/local/numorph_preprocessing/tests/.nftignore @@ -0,0 +1,21 @@ +.DS_Store +multiqc/multiqc_data/fastqc_top_overrepresented_sequences_table.txt +multiqc/multiqc_data/BETA-multiqc.parquet +multiqc/multiqc_data/multiqc.log +multiqc/multiqc_data/multiqc_data.json +multiqc/multiqc_data/multiqc_sources.txt +multiqc/multiqc_data/multiqc_software_versions.txt +multiqc/multiqc_plots/{svg,pdf,png}/*.{svg,pdf,png} +multiqc/multiqc_report.html +fastqc/*_fastqc.{html,zip} +pipeline_info/*.{html,json,txt,yml} +{numorphintensity,numorphalign,numorphstitch,numorphregister,numorphresample}/*/NM_variables.mat +{numorphintensity,numorphalign,numorphstitch}/*/*/path_table.mat +numorphalign/*/*/alignment_table.mat +numorphintensity/*/variables/*.mat +numorphintensity/*/samples/*.png +numorphstitch/*/variables/*.mat +numorph3dunet/* +mat2json/*/{NM_variables,alignment_table,path_table,adj_params,thresholds, stitch_tforms}.json +mat2json/*/*.csv +numorphstitch/*/stitched/*.{tif,tiff} diff --git a/subworkflows/local/numorph_preprocessing/tests/main.nf.test b/subworkflows/local/numorph_preprocessing/tests/main.nf.test index 50eb47b..0d99077 100644 --- a/subworkflows/local/numorph_preprocessing/tests/main.nf.test +++ b/subworkflows/local/numorph_preprocessing/tests/main.nf.test @@ -15,24 +15,50 @@ nextflow_workflow { test("Numorph Preprocessing") { - options "-stub" + setup { + run ("UNZIP") { + script "../../../../modules/nf-core/unzip/main.nf" + process { + """ + input[0] = Channel.fromList([ + tuple([ id:'TEST1'], + file('https://zenodo.org/records/14916478/files/ctip2_topro.zip')) + ]) + """ + } + } + } when { + params { + outdir = "$outputDir" + } workflow { """ - input[0] = Channel.fromList([ - tuple([ id:'TEST1'], - file('/home/schwitalla/Documents/test-datasets/test_data/images'), - file('test-datasets/test_data/parameterfiles/params_TEST1_lsmquant.csv')) - ]) + input[0] = UNZIP.out.unzipped_archive.map { meta, unzipped_archive -> + tuple( + meta, + unzipped_archive, + file(params.pipelines_testdata_base_path + '/test_data/parameterfiles/params_TEST1_lsmquant.csv')) + } """ } } then { + def stable_name = getAllFilesFromDir(params.outdir, relative: true, includeDir: true, ignore: ['pipeline_info/*.{html,json,txt}']) + def stable_path = getAllFilesFromDir(params.outdir, ignoreFile: 'subworkflows/local/numorph_preprocessing/tests/.nftignore') + assert workflow.success assertAll( - { assert workflow.success}, - { assert snapshot(workflow.out).match()} + { assert snapshot( + // Number of successful tasks + workflow.trace.succeeded().size(), + removeNextflowVersion("$outputDir/pipeline_info/nf_core_lsmquant_software_mqc_versions.yml"), + // All stable path name, with a relative path + stable_name.isEmpty() ? 'No stable paths' : stable_name, + // All files with stable contents + stable_path + ).match()} ) } } diff --git a/subworkflows/local/numorph_preprocessing/tests/main.nf.test.snap b/subworkflows/local/numorph_preprocessing/tests/main.nf.test.snap index 2a3d923..80aadd1 100644 --- a/subworkflows/local/numorph_preprocessing/tests/main.nf.test.snap +++ b/subworkflows/local/numorph_preprocessing/tests/main.nf.test.snap @@ -1,47 +1,495 @@ { "Numorph Preprocessing": { "content": [ + 7, { - "0": [ - [ - { - "id": "TEST1" - }, - "TEST1_stitched.tif:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "1": [ - "thresholds.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ], - "2": [ - "NM_variables.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ], - "3": [ - - ], - "NM_variables": [ - "NM_variables.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ], - "intensity_thresholds": [ - "thresholds.mat:md5,d41d8cd98f00b204e9800998ecf8427e" - ], - "stitched": [ - [ - { - "id": "TEST1" - }, - "TEST1_stitched.tif:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "versions": [ - - ] - } + "MAT2JSON_INT": { + "mat2json": 1.0 + }, + "NUMORPHALIGN": { + "numorphalign": 1.0 + }, + "NUMORPHINTENSITY": { + "numorphintensity": 1.0 + }, + "NUMORPHSTITCH": { + "numorphstitch": 1.0 + }, + "Workflow": { + "nf-core/lsmquant": "v1.0dev" + } + }, + [ + "mat2json", + "mat2json/align", + "mat2json/align/NM_variables.json", + "mat2json/align/alignment_table.json", + "mat2json/align/path_table.json", + "mat2json/align/z_displacement_align.json", + "mat2json/intensity", + "mat2json/intensity/NM_variables.json", + "mat2json/intensity/adj_params.json", + "mat2json/intensity/path_table.json", + "mat2json/intensity/thresholds.json", + "mat2json/stitch", + "mat2json/stitch/adj_params.json", + "mat2json/stitch/adjusted_z.csv", + "mat2json/stitch/alignment_table.json", + "mat2json/stitch/path_table.json", + "mat2json/stitch/stitch_tforms.json", + "mat2json/stitch/thresholds.json", + "mat2json/stitch/z_disp_matrix.json", + "mat2json/stitch/z_displacement_align.json", + "numorphalign", + "numorphalign/TEST1", + "numorphalign/TEST1/samples", + "numorphalign/TEST1/samples/alignment", + "numorphalign/TEST1/samples/alignment/TEST1_ctip2_full.tif", + "numorphalign/TEST1/samples/alignment/TEST1_topro_full.tif", + "numorphalign/TEST1/variables", + "numorphalign/TEST1/variables/alignment_table.mat", + "numorphalign/TEST1/variables/path_table.mat", + "numorphalign/TEST1/variables/z_displacement_align.mat", + "numorphintensity", + "numorphintensity/TEST1", + "numorphintensity/TEST1/samples", + "numorphintensity/TEST1/samples/intensity_adjustment", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_2.png", + "numorphintensity/TEST1/variables", + "numorphintensity/TEST1/variables/adj_params.mat", + "numorphintensity/TEST1/variables/path_table.mat", + "numorphintensity/TEST1/variables/thresholds.mat", + "numorphstitch", + "numorphstitch/TEST1", + "numorphstitch/TEST1/stitched", + "numorphstitch/TEST1/stitched/TEST1_0001_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0001_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0002_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0002_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0003_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0003_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0004_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0004_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0005_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0005_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0006_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0006_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0007_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0007_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0008_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0008_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0009_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0009_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0010_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0010_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0011_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0011_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0012_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0012_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0013_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0013_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0014_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0014_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0015_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0015_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0016_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0016_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0017_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0017_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0018_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0018_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/variables", + "numorphstitch/TEST1/variables/adj_params.mat", + "numorphstitch/TEST1/variables/adjusted_z.mat", + "numorphstitch/TEST1/variables/alignment_table.mat", + "numorphstitch/TEST1/variables/path_table.mat", + "numorphstitch/TEST1/variables/stitch_tforms.mat", + "numorphstitch/TEST1/variables/thresholds.mat", + "numorphstitch/TEST1/variables/z_disp_matrix.mat", + "numorphstitch/TEST1/variables/z_displacement_align.mat", + "pipeline_info", + "pipeline_info/nf_core_lsmquant_software_mqc_versions.yml", + "unzip", + "unzip/TEST1", + "unzip/TEST1/ctip2_topro", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0620.ome.tif" + ], + [ + "z_displacement_align.json:md5,0eb5dab0b44ab3c5ceaa8b053ec250e0", + "stitch_tforms.json:md5,b5cc9b439f94631bee62e3f8315dd9aa", + "z_disp_matrix.json:md5,575020a27eee808b03c615e0a80ca506", + "z_displacement_align.json:md5,0eb5dab0b44ab3c5ceaa8b053ec250e0", + "TEST1_ctip2_full.tif:md5,fb17be9f66140c674dad1c0eba3b7a2e", + "TEST1_topro_full.tif:md5,5e6784fc7062215bc6538ccccc49a5f4", + "z_displacement_align.mat:md5,f45d3b73e985017dbfb7c7562bfe5fa4", + "ctip2_1_1_11.tif:md5,fccec39adaa86a092dd7fca25b480234", + "ctip2_1_2_11.tif:md5,f7eb54ccc7add77d02d5463ff7898356", + "ctip2_2_1_11.tif:md5,684a579cc8df0800a11d2ff892c3938d", + "ctip2_2_2_11.tif:md5,5f4305e1581ccd4651fd750669e3b69a", + "flatfield_1.png:md5,97404fc8aac033969c1911224bf01c20", + "flatfield_2.png:md5,b21b01116bc523cf597915836bf2c42d", + "tile_adj_1.png:md5,b9e6c24c999f7ad9a0b012602b3f1b54", + "tile_adj_2.png:md5,8da66e606f181adf526ab8f1e6e87c50", + "topro_1_1_11.tif:md5,733e3e7bc32916dfcbc73c9c77404d69", + "topro_1_2_11.tif:md5,4652de23e14b9b3546c462d18a70e542", + "topro_2_1_11.tif:md5,918562924baffc0b99976837ef4b5121", + "topro_2_2_11.tif:md5,9f6a1c2b631a11cd675e96fd6e29c1b4", + "y_adj_1.png:md5,d41cf27eb6e3206923ce86957d98802b", + "y_adj_2.png:md5,0d357328a855187c2dce2034834d61bd", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0600.ome.tif:md5,5bceac0b61030e08808592c7bf3e8db0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0601.ome.tif:md5,da76c202e5baea80914bb2c0fb357aa3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0602.ome.tif:md5,f940ea6590a93301006d990bb1149c49", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0603.ome.tif:md5,4696a351aae54e5743c727a241bd8054", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0604.ome.tif:md5,3ea6ccdb7621ce38b6dce54ec427fc68", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0605.ome.tif:md5,659f6770b9fbbc2e25444e45afbbdca9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0606.ome.tif:md5,4a0753196ec13d94197cc1cd664118e9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0607.ome.tif:md5,8ac1c9dcb3b4a8c524b3a50710822b22", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0608.ome.tif:md5,cc90e9010e8af068def04bfa05447bcb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0609.ome.tif:md5,9496e9c2f2fab7dc7bf1cd8c426fec2a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0610.ome.tif:md5,58b3380cb607b2386054dd0150d5bfe6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0611.ome.tif:md5,4bd92251df0a09f284998da07ed9a28a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0612.ome.tif:md5,fb687c3253ad67292854396eccadf93f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0613.ome.tif:md5,b91d11baeb2f4d4b6facf3c42baf5559", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0614.ome.tif:md5,9048571bb58c1d53e9f5e78d0aace06f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0615.ome.tif:md5,f9bdba923be7efbbfa579078fe482077", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0616.ome.tif:md5,4300e7df0b119a24cf97759dd60d8d1a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0617.ome.tif:md5,f0b8b26c957f54bb5753fb05c5543cce", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0618.ome.tif:md5,c0acc44a4fb7a3319697c50940866c87", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0619.ome.tif:md5,6f4f070c8b4f6b7c6d3f250490204344", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0620.ome.tif:md5,75f49c36b2f68389b74e099f1a511aab", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0600.ome.tif:md5,877ebc92d32c2627479cb8de90479df3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0601.ome.tif:md5,aadb50e79b121c9409233ec9d974c93e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0602.ome.tif:md5,8ffa145b84becb2e393ea392b61221e2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0603.ome.tif:md5,5485a677ee6120c4335da191b7c71775", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0604.ome.tif:md5,ac8f0b7af5818f5d847022acdaed148e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0605.ome.tif:md5,0d933b1e15250d9f7941a401854597f6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0606.ome.tif:md5,fee96a7fcf33a2109a56c9340700468c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0607.ome.tif:md5,4c0919d495b2a46361ac9c388ddc4171", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0608.ome.tif:md5,94d6f32f40d1a4a651878b6d3efa6442", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0609.ome.tif:md5,c5e47a7f36cf3939a69fe941b265a63e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0610.ome.tif:md5,6e0ac8cb6ce0f3ecab8ec32c92d64c75", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0611.ome.tif:md5,5bbe6e0313b545c92a80fdc449c7eef5", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0612.ome.tif:md5,b75397c891e3227f6924b7c4e4e07227", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0613.ome.tif:md5,87c0da116039d2504e6cee762531fc3a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0614.ome.tif:md5,34190fa382ba86c19c266267cae274cf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0615.ome.tif:md5,a073cedbd1623037337a3bf66a0d2509", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0616.ome.tif:md5,d14d01971e1067f9c69e8fd3d40658f4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0617.ome.tif:md5,be4e0ea00e04d4961a28d9b56ec0ef6a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0618.ome.tif:md5,f23178bfeaee7c335e3712a727f7a8f4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0619.ome.tif:md5,abdf257747a4a7f221598beed75fcfeb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0620.ome.tif:md5,544b6b4cbcbc41282c2a673ce6e5d8f0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0600.ome.tif:md5,3f4430ff9848f2e416593b525d6dee55", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0601.ome.tif:md5,d909260b4a17c58e263b430e8dfdfb75", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0602.ome.tif:md5,382f40799d7953bea50e93027db11ccd", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0603.ome.tif:md5,33986578219177e6d193b34b15f7c9b8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0604.ome.tif:md5,5579dcfac911e69aa303ec4861b996d2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0605.ome.tif:md5,2348dcbc31e2bdfb6c70f3252af90c0b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0606.ome.tif:md5,0510c1c30a5a3a2cf4585ea750bb4688", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0607.ome.tif:md5,13ff8029541013f7edb6f466efe1208b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0608.ome.tif:md5,b19fa191e907c0adb0a7617f06aeea4c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0609.ome.tif:md5,7853ebadfbde3f8b922ef8ca2caad068", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0610.ome.tif:md5,5744ea7c8832aca72b42708fea9b1be8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0611.ome.tif:md5,5e4dbfe159aacc266237af1d516b34e6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0612.ome.tif:md5,caa9d77a6246090cf0c16baa9752cfd1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0613.ome.tif:md5,ae832832dec48fdec3d70e4e1ad24d75", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0614.ome.tif:md5,8b5378a0ff0f6895efa3bc9f0fc0f367", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0615.ome.tif:md5,786aae2a7e318e753fd35668209d88b4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0616.ome.tif:md5,9f7707efd5621381ad1d7105345fea24", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0617.ome.tif:md5,2fedb7ab7851fe7b645f65697edb63f7", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0618.ome.tif:md5,7b001437f260d01c84bae46355cfc175", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0619.ome.tif:md5,3ffe776d5d28d322db1f434cfbd5ae45", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0620.ome.tif:md5,e749583273099631b0d0353d5e4511e1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0600.ome.tif:md5,aaf788f0b67ac02247d33d06311878bd", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0601.ome.tif:md5,7608e074b61771a2567e9287e4b61cf2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0602.ome.tif:md5,bfcd74014e58851cdd1b10f6c002ab67", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0603.ome.tif:md5,9f5e41ed9be226075660ac14b0c50e86", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0604.ome.tif:md5,6be760083a55a9484ae27d10dbff1715", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0605.ome.tif:md5,399b55ada07c5fb15509140df0e08ab0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0606.ome.tif:md5,1b0adcd349239c1b9d231d7abe9d209e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0607.ome.tif:md5,127e0542db979a61d6179500da7a8686", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0608.ome.tif:md5,d08fba09b3924f54892016208ac3b3e8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0609.ome.tif:md5,2c2af0e64d084ba01dd8def74ebdf8ac", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0610.ome.tif:md5,9a06fcbd0277220356384ae53b07fe2f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0611.ome.tif:md5,c9ad0485e27f394d86e2313f791eb5a8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0612.ome.tif:md5,4b143f64580e6ac687dc422b3d2b62fe", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0613.ome.tif:md5,3b04b738e6081eda29c25840ecc56424", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0614.ome.tif:md5,7073637f421bf589895d8278b6b76396", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0615.ome.tif:md5,7c53da56931e1ebca641cf89408cea35", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0616.ome.tif:md5,70d922572b191bba87db884a6a78de1e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0617.ome.tif:md5,0731e9d863155ed413d2304cd39b4c87", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0618.ome.tif:md5,72a600b34ab829bcdb349de1666b6bbb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0619.ome.tif:md5,0d75d4438e4dd40a11aea21576e0db0c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0620.ome.tif:md5,dfdcc9e6bb10afcd117a4228e160368f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0600.ome.tif:md5,470a01158003f74da5487468df0b2636", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0601.ome.tif:md5,d1db4fea718b9fd83919a5ccb64ace9c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0602.ome.tif:md5,6c94577471e6a2815e0794a5bbe49e74", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0603.ome.tif:md5,6ade6266d67a56a58e3048e2a41be71a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0604.ome.tif:md5,257b58f4f237270955636afa5e7c158d", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0605.ome.tif:md5,17712054bba72efe4b3f8b4d9df2a5a0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0606.ome.tif:md5,f7f3ae40f70ec469eab77342eaa57bf3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0607.ome.tif:md5,f1e4b447bc37ce937eb2e3023fdae094", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0608.ome.tif:md5,146321d14232cb1de14d8e044f11e4ce", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0609.ome.tif:md5,d929b4c176abf03e4851dcfbc8a1ed16", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0610.ome.tif:md5,27551d9576ed4440e918a2ec60f94931", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0611.ome.tif:md5,9d6cfafc558e5b66d18add3dfeec4244", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0612.ome.tif:md5,a82162ce680f1928cd5416ac153d36df", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0613.ome.tif:md5,978119009ed5da3eb9a631b2a5021064", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0614.ome.tif:md5,47b2b4621a171697d1218b3e10a858ae", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0615.ome.tif:md5,fa1c2d7b56aa0525230d0f56af1ee75b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0616.ome.tif:md5,e8d10bb1281b05cb1975b78551c598d1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0617.ome.tif:md5,23fc1d734e784d7402adf73cd4ee1021", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0618.ome.tif:md5,eed98be51b025745b4de480655e60d05", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0619.ome.tif:md5,323f21c8bba1649c278d83de9d3d1f25", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0620.ome.tif:md5,3cd96aa2914b28a9dc7c6b8bc7dcc8ec", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0600.ome.tif:md5,7074583255da8071c6233a6064087bfb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0601.ome.tif:md5,e8930f83802ca0b442284d60d4b2d211", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0602.ome.tif:md5,93af177e91edb8cafe21edb7958f58e4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0603.ome.tif:md5,ba56a8717423e049f26b4bfa21f9b7c9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0604.ome.tif:md5,4272e5a94329724beaec8b3332dc59be", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0605.ome.tif:md5,952779032aa0d5ddd9d937a7dc0ee4b0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0606.ome.tif:md5,98ef1216a3cf6b1c85e69cf493dfa19b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0607.ome.tif:md5,1a485230e224f4084f9f59024f4aa065", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0608.ome.tif:md5,902cdfb1da488a8c19dfbf0778de4087", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0609.ome.tif:md5,aea06540f31dd74e7691121a17093a5b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0610.ome.tif:md5,635f536ceb784170799fc91000cbaa6b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0611.ome.tif:md5,cf4a370b59b260c6af3a48fc8c84ced2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0612.ome.tif:md5,3e4ae7181947ab3757ec5a2f67e3b472", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0613.ome.tif:md5,708e4e1a9fb160de9d0c65af62180846", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0614.ome.tif:md5,81df70b026bbfe96f4258d0e416e427c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0615.ome.tif:md5,8ce34f974d150ce382b0eecb3dbb5898", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0616.ome.tif:md5,95012622f95a3cfd0bc1327dcc34e0b2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0617.ome.tif:md5,ad1983f5f6003d0f661c17f6e0b60bec", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0618.ome.tif:md5,51d6ebe4eb88704d8ca67561d47c95b8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0619.ome.tif:md5,6900929ad8dfd3f0c8b0dce5f59dd4a5", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0620.ome.tif:md5,b3009a2a6736171b8f28c0630b85a606", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0600.ome.tif:md5,57c619f503078739317641848f6eb69a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0601.ome.tif:md5,3d9baf2a67581d72194f0354154b120f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0602.ome.tif:md5,6674132080cfabfc639be9c80ec9090f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0603.ome.tif:md5,419080c6ec0578bcde19a9f4360535b2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0604.ome.tif:md5,9314465994d55011eba9e1239c5b855c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0605.ome.tif:md5,dd044d2d61d337935b1c66b4286bc8bf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0606.ome.tif:md5,f44e51b79aeca18e62e5284a4e74e244", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0607.ome.tif:md5,ea5e1bace16ea20be45fdb4562a5ad64", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0608.ome.tif:md5,f3cf28bf23ca3d2fb8611a80d2fcfe10", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0609.ome.tif:md5,cdb745f3ccfac5b309d22c08570deb24", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0610.ome.tif:md5,3dc41f65c22c81e6f5b12277c6b827fa", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0611.ome.tif:md5,28c4b3e6a9c93957da94fce9c4b949d1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0612.ome.tif:md5,0070c463e9928492053bd1b88b617bdf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0613.ome.tif:md5,a21b3c78191aaa5d78f51c6627041f72", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0614.ome.tif:md5,0a5f43af602e48341eb621a7dfc5c4f4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0615.ome.tif:md5,d6f4ee9ef8a93cc6b977f3231840d8e8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0616.ome.tif:md5,913744509efac629fbd14c648b30b2c1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0617.ome.tif:md5,70db6c8f0dfb7607d8aada3ff813edc2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0618.ome.tif:md5,38ab5e5448b69d7808e6fe1c888fdde5", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0619.ome.tif:md5,21f540d85c3395b11d2146a858088b1a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0620.ome.tif:md5,4bb6c7de160539b3db5485fa6944109a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0600.ome.tif:md5,152931c5d09894e74e3216b62e6d1446", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0601.ome.tif:md5,c9af3b9a2044760bd5ad2ff912ad9076", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0602.ome.tif:md5,9afd8c433a4c12e9ffb2e7ef72d665f3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0603.ome.tif:md5,0390cf7ce133f1b04946341973eeb29c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0604.ome.tif:md5,114aa0fff83db1e693a73ac9a9e795c0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0605.ome.tif:md5,d801111f07bedfbb9508bfed1e5f8d0a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0606.ome.tif:md5,c4dcf031c9f33da4a1261324f212103a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0607.ome.tif:md5,467f11413dbd56cd2e781003b3973e87", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0608.ome.tif:md5,89f163ab69b8a66bbc4bc9c17880cba0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0609.ome.tif:md5,8d329fb7ca37b261bf419c114bcc3775", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0610.ome.tif:md5,486dad8db46e853eee60dccfc716b543", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0611.ome.tif:md5,3a4caf7fab942a5eb0a8666a86c4552e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0612.ome.tif:md5,7781ff916dfae4f9b8093d04d2e5ddd6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0613.ome.tif:md5,93269be5f9ba1e07b2ee253f9f9574d9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0614.ome.tif:md5,013f6d3ea185745eb2e02c05f3418eaf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0615.ome.tif:md5,c59a5b5dd08bf4acfa0f954e25c5419f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0616.ome.tif:md5,9b122cba54fb3d8f2f3f7a9df7b9821b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0617.ome.tif:md5,fa8f8bef57029e14c0eb6daf7bab2886", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0618.ome.tif:md5,d316f89e3752621cb93bf8de1f694000", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0619.ome.tif:md5,43d0386b21d9f6a36c209dc3ab60d1cc", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0620.ome.tif:md5,b4f4be8e38b3b84dcd1a34a2b1968abc" + ] ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.4" + "nextflow": "25.04.6" }, - "timestamp": "2025-02-21T16:16:38.660022739" + "timestamp": "2025-09-03T11:10:04.792746217" } } \ No newline at end of file diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/main.nf b/subworkflows/nf-core/utils_nextflow_pipeline/main.nf old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/meta.yml b/subworkflows/nf-core/utils_nextflow_pipeline/meta.yml old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/tests/main.function.nf.test b/subworkflows/nf-core/utils_nextflow_pipeline/tests/main.function.nf.test old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/tests/main.function.nf.test.snap b/subworkflows/nf-core/utils_nextflow_pipeline/tests/main.function.nf.test.snap old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/tests/main.workflow.nf.test b/subworkflows/nf-core/utils_nextflow_pipeline/tests/main.workflow.nf.test old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/tests/nextflow.config b/subworkflows/nf-core/utils_nextflow_pipeline/tests/nextflow.config old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/tests/tags.yml b/subworkflows/nf-core/utils_nextflow_pipeline/tests/tags.yml deleted file mode 100755 index f847611..0000000 --- a/subworkflows/nf-core/utils_nextflow_pipeline/tests/tags.yml +++ /dev/null @@ -1,2 +0,0 @@ -subworkflows/utils_nextflow_pipeline: - - subworkflows/nf-core/utils_nextflow_pipeline/** diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/main.nf b/subworkflows/nf-core/utils_nfcore_pipeline/main.nf old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/meta.yml b/subworkflows/nf-core/utils_nfcore_pipeline/meta.yml old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.function.nf.test b/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.function.nf.test old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.function.nf.test.snap b/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.function.nf.test.snap old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.workflow.nf.test b/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.workflow.nf.test old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.workflow.nf.test.snap b/subworkflows/nf-core/utils_nfcore_pipeline/tests/main.workflow.nf.test.snap old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/tests/nextflow.config b/subworkflows/nf-core/utils_nfcore_pipeline/tests/nextflow.config old mode 100755 new mode 100644 diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/tests/tags.yml b/subworkflows/nf-core/utils_nfcore_pipeline/tests/tags.yml deleted file mode 100755 index ac8523c..0000000 --- a/subworkflows/nf-core/utils_nfcore_pipeline/tests/tags.yml +++ /dev/null @@ -1,2 +0,0 @@ -subworkflows/utils_nfcore_pipeline: - - subworkflows/nf-core/utils_nfcore_pipeline/** diff --git a/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow.config b/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow.config index 09ef842..443e828 100644 --- a/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow.config +++ b/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow.config @@ -5,4 +5,4 @@ plugins { validation { parametersSchema = "${projectDir}/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow_schema.json" monochromeLogs = true -} \ No newline at end of file +} diff --git a/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow_schema.json b/subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow_schema.json old mode 100755 new mode 100644 diff --git a/tests/.nftignore b/tests/.nftignore index 158c83c..0cbeb5d 100644 --- a/tests/.nftignore +++ b/tests/.nftignore @@ -9,3 +9,14 @@ multiqc/multiqc_plots/{svg,pdf,png}/*.{svg,pdf,png} multiqc/multiqc_report.html fastqc/*_fastqc.{html,zip} pipeline_info/*.{html,json,txt,yml} +{numorphintensity,numorphalign,numorphstitch,numorphregister,numorphresample}/*/NM_variables.mat +{numorphintensity,numorphalign,numorphstitch}/*/*/path_table.mat +numorphalign/*/*/alignment_table.mat +numorphalign/*/*/z_displacement_align.mat +numorphintensity/*/variables/*.mat +numorphintensity/*/samples/*/*.png +numorphstitch/*/variables/*.mat +numorph3dunet/*/* +mat2json/*/{NM_variables,alignment_table,path_table,adj_params,thresholds,stitch_tforms}.json +mat2json/*/*.csv +numorphstitch/*/stitched/*.{tif,tiff} diff --git a/tests/default.nf.test b/tests/default.nf.test index e24f22d..292c7b7 100644 --- a/tests/default.nf.test +++ b/tests/default.nf.test @@ -3,9 +3,42 @@ nextflow_pipeline { name "Test pipeline" script "../main.nf" tag "pipeline" + tag "gpu" + profile "test" - test("-profile test") { + test("default test gpu") { + + when { + params { + outdir = "$outputDir" + } + } + + then { + // stable_name: All files + folders in ${params.outdir}/ with a stable name + def stable_name = getAllFilesFromDir(params.outdir, relative: true, includeDir: true, ignore: ['pipeline_info/*.{html,json,txt}']) + // stable_path: All files in ${params.outdir}/ with stable content + def stable_path = getAllFilesFromDir(params.outdir, ignoreFile: 'tests/.nftignore') + assertAll( + { assert workflow.success}, + { assert snapshot( + // Number of successful tasks + workflow.trace.succeeded().size(), + // pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions + removeNextflowVersion("$outputDir/pipeline_info/nf_core_lsmquant_software_mqc_versions.yml"), + // All stable path name, with a relative path + stable_name, + // All files with stable contents + stable_path + ).match() } + ) + } + } + + test("default test gpu -stub") { + + options "-stub" when { params { outdir = "$outputDir" diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap new file mode 100644 index 0000000..6c4a8f1 --- /dev/null +++ b/tests/default.nf.test.snap @@ -0,0 +1,580 @@ +{ + "default test gpu -stub": { + "content": [ + 8, + { + "MAT2JSON_INT": { + "mat2json": 1.0 + }, + "NUMORPHALIGN": { + "numorphalign": 1.0 + }, + "NUMORPHINTENSITY": { + "numorphintensity": 1.0 + }, + "NUMORPHSTITCH": { + "numorphstitch": 1.0 + }, + "NUMORPH3DUNET": { + "numorph3dunet": 1.0 + }, + "UNZIP": { + "7za": 16.02 + }, + "Workflow": { + "nf-core/lsmquant": "v1.0dev" + } + }, + [ + "mat2json", + "mat2json/align", + "mat2json/align/TEST1.json", + "mat2json/intensity", + "mat2json/intensity/TEST1.json", + "mat2json/stitch", + "mat2json/stitch/TEST1.json", + "numorph3dunet", + "numorph3dunet/TEST1", + "numorph3dunet/TEST1/TEST1.csv", + "numorph3dunet/TEST1/TEST1_counts.csv", + "numorphalign", + "numorphalign/TEST1", + "numorphalign/TEST1/samples", + "numorphalign/TEST1/samples/alignment", + "numorphalign/TEST1/samples/alignment/TEST1_full.tif", + "numorphalign/TEST1/variables", + "numorphalign/TEST1/variables/alignment_table.mat", + "numorphalign/TEST1/variables/path_table.mat", + "numorphalign/TEST1/variables/z_displacement_align.mat", + "numorphintensity", + "numorphintensity/TEST1", + "numorphintensity/TEST1/samples", + "numorphintensity/TEST1/samples/intensity_adjustment", + "numorphintensity/TEST1/samples/intensity_adjustment/TEST1.png", + "numorphintensity/TEST1/variables", + "numorphintensity/TEST1/variables/adj_params.mat", + "numorphintensity/TEST1/variables/path_table.mat", + "numorphintensity/TEST1/variables/thresholds.mat", + "numorphstitch", + "numorphstitch/TEST1", + "numorphstitch/TEST1/stitched", + "numorphstitch/TEST1/stitched/TEST1_stitched.tif", + "numorphstitch/TEST1/variables", + "numorphstitch/TEST1/variables/adjusted_z.mat", + "numorphstitch/TEST1/variables/path_table.mat", + "numorphstitch/TEST1/variables/stitch_tforms.mat", + "numorphstitch/TEST1/variables/z_dips_matrix.mat", + "pipeline_info", + "pipeline_info/nf_core_lsmquant_software_mqc_versions.yml", + "unzip", + "unzip/TEST1" + ], + [ + "TEST1.json:md5,d41d8cd98f00b204e9800998ecf8427e", + "TEST1.json:md5,d41d8cd98f00b204e9800998ecf8427e", + "TEST1.json:md5,d41d8cd98f00b204e9800998ecf8427e", + "TEST1_full.tif:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "25.04.6" + }, + "timestamp": "2025-09-03T11:41:32.289727712" + }, + "default test gpu": { + "content": [ + 8, + { + "MAT2JSON_INT": { + "mat2json": 1.0 + }, + "NUMORPHALIGN": { + "numorphalign": 1.0 + }, + "NUMORPHINTENSITY": { + "numorphintensity": 1.0 + }, + "NUMORPHSTITCH": { + "numorphstitch": 1.0 + }, + "NUMORPH3DUNET": { + "numorph3dunet": 1.0 + }, + "UNZIP": { + "7za": 16.02 + }, + "Workflow": { + "nf-core/lsmquant": "v1.0dev" + } + }, + [ + "mat2json", + "mat2json/align", + "mat2json/align/NM_variables.json", + "mat2json/align/alignment_table.json", + "mat2json/align/path_table.json", + "mat2json/align/z_displacement_align.json", + "mat2json/intensity", + "mat2json/intensity/NM_variables.json", + "mat2json/intensity/adj_params.json", + "mat2json/intensity/path_table.json", + "mat2json/intensity/thresholds.json", + "mat2json/stitch", + "mat2json/stitch/adj_params.json", + "mat2json/stitch/adjusted_z.csv", + "mat2json/stitch/alignment_table.json", + "mat2json/stitch/path_table.json", + "mat2json/stitch/stitch_tforms.json", + "mat2json/stitch/thresholds.json", + "mat2json/stitch/z_disp_matrix.json", + "mat2json/stitch/z_displacement_align.json", + "numorph3dunet", + "numorph3dunet/TEST1", + "numorph3dunet/TEST1/TEST1.csv", + "numorph3dunet/TEST1/TEST1_counts.csv", + "numorphalign", + "numorphalign/TEST1", + "numorphalign/TEST1/samples", + "numorphalign/TEST1/samples/alignment", + "numorphalign/TEST1/samples/alignment/TEST1_ctip2_full.tif", + "numorphalign/TEST1/samples/alignment/TEST1_topro_full.tif", + "numorphalign/TEST1/variables", + "numorphalign/TEST1/variables/alignment_table.mat", + "numorphalign/TEST1/variables/path_table.mat", + "numorphalign/TEST1/variables/z_displacement_align.mat", + "numorphintensity", + "numorphintensity/TEST1", + "numorphintensity/TEST1/samples", + "numorphintensity/TEST1/samples/intensity_adjustment", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/ctip2_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/flatfield_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/tile_adj_2.png", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_1_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_1_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/topro_2_2_11.tif", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_1.png", + "numorphintensity/TEST1/samples/intensity_adjustment/y_adj_2.png", + "numorphintensity/TEST1/variables", + "numorphintensity/TEST1/variables/adj_params.mat", + "numorphintensity/TEST1/variables/path_table.mat", + "numorphintensity/TEST1/variables/thresholds.mat", + "numorphstitch", + "numorphstitch/TEST1", + "numorphstitch/TEST1/stitched", + "numorphstitch/TEST1/stitched/TEST1_0001_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0001_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0002_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0002_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0003_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0003_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0004_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0004_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0005_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0005_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0006_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0006_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0007_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0007_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0008_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0008_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0009_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0009_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0010_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0010_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0011_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0011_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0012_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0012_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0013_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0013_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0014_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0014_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0015_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0015_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0016_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0016_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0017_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0017_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0018_C1_topro_stitched.tif", + "numorphstitch/TEST1/stitched/TEST1_0018_C2_ctip2_stitched.tif", + "numorphstitch/TEST1/variables", + "numorphstitch/TEST1/variables/adj_params.mat", + "numorphstitch/TEST1/variables/adjusted_z.mat", + "numorphstitch/TEST1/variables/alignment_table.mat", + "numorphstitch/TEST1/variables/path_table.mat", + "numorphstitch/TEST1/variables/stitch_tforms.mat", + "numorphstitch/TEST1/variables/thresholds.mat", + "numorphstitch/TEST1/variables/z_disp_matrix.mat", + "numorphstitch/TEST1/variables/z_displacement_align.mat", + "pipeline_info", + "pipeline_info/nf_core_lsmquant_software_mqc_versions.yml", + "unzip", + "unzip/TEST1", + "unzip/TEST1/ctip2_topro", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0620.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0600.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0601.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0602.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0603.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0604.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0605.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0606.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0607.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0608.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0609.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0610.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0611.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0612.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0613.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0614.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0615.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0616.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0617.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0618.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0619.ome.tif", + "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0620.ome.tif" + ], + [ + "z_displacement_align.json:md5,0eb5dab0b44ab3c5ceaa8b053ec250e0", + "z_disp_matrix.json:md5,575020a27eee808b03c615e0a80ca506", + "z_displacement_align.json:md5,0eb5dab0b44ab3c5ceaa8b053ec250e0", + "TEST1_ctip2_full.tif:md5,fb17be9f66140c674dad1c0eba3b7a2e", + "TEST1_topro_full.tif:md5,5e6784fc7062215bc6538ccccc49a5f4", + "ctip2_1_1_11.tif:md5,fccec39adaa86a092dd7fca25b480234", + "ctip2_1_2_11.tif:md5,f7eb54ccc7add77d02d5463ff7898356", + "ctip2_2_1_11.tif:md5,684a579cc8df0800a11d2ff892c3938d", + "ctip2_2_2_11.tif:md5,5f4305e1581ccd4651fd750669e3b69a", + "topro_1_1_11.tif:md5,733e3e7bc32916dfcbc73c9c77404d69", + "topro_1_2_11.tif:md5,4652de23e14b9b3546c462d18a70e542", + "topro_2_1_11.tif:md5,918562924baffc0b99976837ef4b5121", + "topro_2_2_11.tif:md5,9f6a1c2b631a11cd675e96fd6e29c1b4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0600.ome.tif:md5,5bceac0b61030e08808592c7bf3e8db0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0601.ome.tif:md5,da76c202e5baea80914bb2c0fb357aa3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0602.ome.tif:md5,f940ea6590a93301006d990bb1149c49", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0603.ome.tif:md5,4696a351aae54e5743c727a241bd8054", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0604.ome.tif:md5,3ea6ccdb7621ce38b6dce54ec427fc68", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0605.ome.tif:md5,659f6770b9fbbc2e25444e45afbbdca9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0606.ome.tif:md5,4a0753196ec13d94197cc1cd664118e9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0607.ome.tif:md5,8ac1c9dcb3b4a8c524b3a50710822b22", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0608.ome.tif:md5,cc90e9010e8af068def04bfa05447bcb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0609.ome.tif:md5,9496e9c2f2fab7dc7bf1cd8c426fec2a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0610.ome.tif:md5,58b3380cb607b2386054dd0150d5bfe6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0611.ome.tif:md5,4bd92251df0a09f284998da07ed9a28a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0612.ome.tif:md5,fb687c3253ad67292854396eccadf93f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0613.ome.tif:md5,b91d11baeb2f4d4b6facf3c42baf5559", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0614.ome.tif:md5,9048571bb58c1d53e9f5e78d0aace06f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0615.ome.tif:md5,f9bdba923be7efbbfa579078fe482077", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0616.ome.tif:md5,4300e7df0b119a24cf97759dd60d8d1a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0617.ome.tif:md5,f0b8b26c957f54bb5753fb05c5543cce", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0618.ome.tif:md5,c0acc44a4fb7a3319697c50940866c87", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0619.ome.tif:md5,6f4f070c8b4f6b7c6d3f250490204344", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0620.ome.tif:md5,75f49c36b2f68389b74e099f1a511aab", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0600.ome.tif:md5,877ebc92d32c2627479cb8de90479df3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0601.ome.tif:md5,aadb50e79b121c9409233ec9d974c93e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0602.ome.tif:md5,8ffa145b84becb2e393ea392b61221e2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0603.ome.tif:md5,5485a677ee6120c4335da191b7c71775", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0604.ome.tif:md5,ac8f0b7af5818f5d847022acdaed148e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0605.ome.tif:md5,0d933b1e15250d9f7941a401854597f6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0606.ome.tif:md5,fee96a7fcf33a2109a56c9340700468c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0607.ome.tif:md5,4c0919d495b2a46361ac9c388ddc4171", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0608.ome.tif:md5,94d6f32f40d1a4a651878b6d3efa6442", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0609.ome.tif:md5,c5e47a7f36cf3939a69fe941b265a63e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0610.ome.tif:md5,6e0ac8cb6ce0f3ecab8ec32c92d64c75", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0611.ome.tif:md5,5bbe6e0313b545c92a80fdc449c7eef5", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0612.ome.tif:md5,b75397c891e3227f6924b7c4e4e07227", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0613.ome.tif:md5,87c0da116039d2504e6cee762531fc3a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0614.ome.tif:md5,34190fa382ba86c19c266267cae274cf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0615.ome.tif:md5,a073cedbd1623037337a3bf66a0d2509", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0616.ome.tif:md5,d14d01971e1067f9c69e8fd3d40658f4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0617.ome.tif:md5,be4e0ea00e04d4961a28d9b56ec0ef6a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0618.ome.tif:md5,f23178bfeaee7c335e3712a727f7a8f4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0619.ome.tif:md5,abdf257747a4a7f221598beed75fcfeb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0620.ome.tif:md5,544b6b4cbcbc41282c2a673ce6e5d8f0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0600.ome.tif:md5,3f4430ff9848f2e416593b525d6dee55", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0601.ome.tif:md5,d909260b4a17c58e263b430e8dfdfb75", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0602.ome.tif:md5,382f40799d7953bea50e93027db11ccd", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0603.ome.tif:md5,33986578219177e6d193b34b15f7c9b8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0604.ome.tif:md5,5579dcfac911e69aa303ec4861b996d2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0605.ome.tif:md5,2348dcbc31e2bdfb6c70f3252af90c0b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0606.ome.tif:md5,0510c1c30a5a3a2cf4585ea750bb4688", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0607.ome.tif:md5,13ff8029541013f7edb6f466efe1208b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0608.ome.tif:md5,b19fa191e907c0adb0a7617f06aeea4c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0609.ome.tif:md5,7853ebadfbde3f8b922ef8ca2caad068", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0610.ome.tif:md5,5744ea7c8832aca72b42708fea9b1be8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0611.ome.tif:md5,5e4dbfe159aacc266237af1d516b34e6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0612.ome.tif:md5,caa9d77a6246090cf0c16baa9752cfd1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0613.ome.tif:md5,ae832832dec48fdec3d70e4e1ad24d75", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0614.ome.tif:md5,8b5378a0ff0f6895efa3bc9f0fc0f367", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0615.ome.tif:md5,786aae2a7e318e753fd35668209d88b4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0616.ome.tif:md5,9f7707efd5621381ad1d7105345fea24", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0617.ome.tif:md5,2fedb7ab7851fe7b645f65697edb63f7", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0618.ome.tif:md5,7b001437f260d01c84bae46355cfc175", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0619.ome.tif:md5,3ffe776d5d28d322db1f434cfbd5ae45", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0620.ome.tif:md5,e749583273099631b0d0353d5e4511e1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0600.ome.tif:md5,aaf788f0b67ac02247d33d06311878bd", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0601.ome.tif:md5,7608e074b61771a2567e9287e4b61cf2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0602.ome.tif:md5,bfcd74014e58851cdd1b10f6c002ab67", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0603.ome.tif:md5,9f5e41ed9be226075660ac14b0c50e86", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0604.ome.tif:md5,6be760083a55a9484ae27d10dbff1715", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0605.ome.tif:md5,399b55ada07c5fb15509140df0e08ab0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0606.ome.tif:md5,1b0adcd349239c1b9d231d7abe9d209e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0607.ome.tif:md5,127e0542db979a61d6179500da7a8686", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0608.ome.tif:md5,d08fba09b3924f54892016208ac3b3e8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0609.ome.tif:md5,2c2af0e64d084ba01dd8def74ebdf8ac", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0610.ome.tif:md5,9a06fcbd0277220356384ae53b07fe2f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0611.ome.tif:md5,c9ad0485e27f394d86e2313f791eb5a8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0612.ome.tif:md5,4b143f64580e6ac687dc422b3d2b62fe", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0613.ome.tif:md5,3b04b738e6081eda29c25840ecc56424", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0614.ome.tif:md5,7073637f421bf589895d8278b6b76396", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0615.ome.tif:md5,7c53da56931e1ebca641cf89408cea35", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0616.ome.tif:md5,70d922572b191bba87db884a6a78de1e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0617.ome.tif:md5,0731e9d863155ed413d2304cd39b4c87", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0618.ome.tif:md5,72a600b34ab829bcdb349de1666b6bbb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0619.ome.tif:md5,0d75d4438e4dd40a11aea21576e0db0c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0620.ome.tif:md5,dfdcc9e6bb10afcd117a4228e160368f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0600.ome.tif:md5,470a01158003f74da5487468df0b2636", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0601.ome.tif:md5,d1db4fea718b9fd83919a5ccb64ace9c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0602.ome.tif:md5,6c94577471e6a2815e0794a5bbe49e74", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0603.ome.tif:md5,6ade6266d67a56a58e3048e2a41be71a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0604.ome.tif:md5,257b58f4f237270955636afa5e7c158d", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0605.ome.tif:md5,17712054bba72efe4b3f8b4d9df2a5a0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0606.ome.tif:md5,f7f3ae40f70ec469eab77342eaa57bf3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0607.ome.tif:md5,f1e4b447bc37ce937eb2e3023fdae094", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0608.ome.tif:md5,146321d14232cb1de14d8e044f11e4ce", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0609.ome.tif:md5,d929b4c176abf03e4851dcfbc8a1ed16", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0610.ome.tif:md5,27551d9576ed4440e918a2ec60f94931", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0611.ome.tif:md5,9d6cfafc558e5b66d18add3dfeec4244", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0612.ome.tif:md5,a82162ce680f1928cd5416ac153d36df", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0613.ome.tif:md5,978119009ed5da3eb9a631b2a5021064", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0614.ome.tif:md5,47b2b4621a171697d1218b3e10a858ae", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0615.ome.tif:md5,fa1c2d7b56aa0525230d0f56af1ee75b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0616.ome.tif:md5,e8d10bb1281b05cb1975b78551c598d1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0617.ome.tif:md5,23fc1d734e784d7402adf73cd4ee1021", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0618.ome.tif:md5,eed98be51b025745b4de480655e60d05", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0619.ome.tif:md5,323f21c8bba1649c278d83de9d3d1f25", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0620.ome.tif:md5,3cd96aa2914b28a9dc7c6b8bc7dcc8ec", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0600.ome.tif:md5,7074583255da8071c6233a6064087bfb", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0601.ome.tif:md5,e8930f83802ca0b442284d60d4b2d211", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0602.ome.tif:md5,93af177e91edb8cafe21edb7958f58e4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0603.ome.tif:md5,ba56a8717423e049f26b4bfa21f9b7c9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0604.ome.tif:md5,4272e5a94329724beaec8b3332dc59be", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0605.ome.tif:md5,952779032aa0d5ddd9d937a7dc0ee4b0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0606.ome.tif:md5,98ef1216a3cf6b1c85e69cf493dfa19b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0607.ome.tif:md5,1a485230e224f4084f9f59024f4aa065", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0608.ome.tif:md5,902cdfb1da488a8c19dfbf0778de4087", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0609.ome.tif:md5,aea06540f31dd74e7691121a17093a5b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0610.ome.tif:md5,635f536ceb784170799fc91000cbaa6b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0611.ome.tif:md5,cf4a370b59b260c6af3a48fc8c84ced2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0612.ome.tif:md5,3e4ae7181947ab3757ec5a2f67e3b472", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0613.ome.tif:md5,708e4e1a9fb160de9d0c65af62180846", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0614.ome.tif:md5,81df70b026bbfe96f4258d0e416e427c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0615.ome.tif:md5,8ce34f974d150ce382b0eecb3dbb5898", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0616.ome.tif:md5,95012622f95a3cfd0bc1327dcc34e0b2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0617.ome.tif:md5,ad1983f5f6003d0f661c17f6e0b60bec", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0618.ome.tif:md5,51d6ebe4eb88704d8ca67561d47c95b8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0619.ome.tif:md5,6900929ad8dfd3f0c8b0dce5f59dd4a5", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0620.ome.tif:md5,b3009a2a6736171b8f28c0630b85a606", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0600.ome.tif:md5,57c619f503078739317641848f6eb69a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0601.ome.tif:md5,3d9baf2a67581d72194f0354154b120f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0602.ome.tif:md5,6674132080cfabfc639be9c80ec9090f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0603.ome.tif:md5,419080c6ec0578bcde19a9f4360535b2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0604.ome.tif:md5,9314465994d55011eba9e1239c5b855c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0605.ome.tif:md5,dd044d2d61d337935b1c66b4286bc8bf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0606.ome.tif:md5,f44e51b79aeca18e62e5284a4e74e244", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0607.ome.tif:md5,ea5e1bace16ea20be45fdb4562a5ad64", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0608.ome.tif:md5,f3cf28bf23ca3d2fb8611a80d2fcfe10", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0609.ome.tif:md5,cdb745f3ccfac5b309d22c08570deb24", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0610.ome.tif:md5,3dc41f65c22c81e6f5b12277c6b827fa", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0611.ome.tif:md5,28c4b3e6a9c93957da94fce9c4b949d1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0612.ome.tif:md5,0070c463e9928492053bd1b88b617bdf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0613.ome.tif:md5,a21b3c78191aaa5d78f51c6627041f72", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0614.ome.tif:md5,0a5f43af602e48341eb621a7dfc5c4f4", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0615.ome.tif:md5,d6f4ee9ef8a93cc6b977f3231840d8e8", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0616.ome.tif:md5,913744509efac629fbd14c648b30b2c1", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0617.ome.tif:md5,70db6c8f0dfb7607d8aada3ff813edc2", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0618.ome.tif:md5,38ab5e5448b69d7808e6fe1c888fdde5", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0619.ome.tif:md5,21f540d85c3395b11d2146a858088b1a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0620.ome.tif:md5,4bb6c7de160539b3db5485fa6944109a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0600.ome.tif:md5,152931c5d09894e74e3216b62e6d1446", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0601.ome.tif:md5,c9af3b9a2044760bd5ad2ff912ad9076", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0602.ome.tif:md5,9afd8c433a4c12e9ffb2e7ef72d665f3", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0603.ome.tif:md5,0390cf7ce133f1b04946341973eeb29c", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0604.ome.tif:md5,114aa0fff83db1e693a73ac9a9e795c0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0605.ome.tif:md5,d801111f07bedfbb9508bfed1e5f8d0a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0606.ome.tif:md5,c4dcf031c9f33da4a1261324f212103a", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0607.ome.tif:md5,467f11413dbd56cd2e781003b3973e87", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0608.ome.tif:md5,89f163ab69b8a66bbc4bc9c17880cba0", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0609.ome.tif:md5,8d329fb7ca37b261bf419c114bcc3775", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0610.ome.tif:md5,486dad8db46e853eee60dccfc716b543", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0611.ome.tif:md5,3a4caf7fab942a5eb0a8666a86c4552e", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0612.ome.tif:md5,7781ff916dfae4f9b8093d04d2e5ddd6", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0613.ome.tif:md5,93269be5f9ba1e07b2ee253f9f9574d9", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0614.ome.tif:md5,013f6d3ea185745eb2e02c05f3418eaf", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0615.ome.tif:md5,c59a5b5dd08bf4acfa0f954e25c5419f", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0616.ome.tif:md5,9b122cba54fb3d8f2f3f7a9df7b9821b", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0617.ome.tif:md5,fa8f8bef57029e14c0eb6daf7bab2886", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0618.ome.tif:md5,d316f89e3752621cb93bf8de1f694000", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0619.ome.tif:md5,43d0386b21d9f6a36c209dc3ab60d1cc", + "16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0620.ome.tif:md5,b4f4be8e38b3b84dcd1a34a2b1968abc" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "25.04.6" + }, + "timestamp": "2025-09-03T11:39:01.448246884" + } +} \ No newline at end of file diff --git a/tests/nextflow.config b/tests/nextflow.config index 7370b5e..89ab0c9 100644 --- a/tests/nextflow.config +++ b/tests/nextflow.config @@ -11,4 +11,12 @@ params { pipelines_testdata_base_path = 'https://raw.githubusercontent.com/nf-core/test-datasets/refs/heads/lsmquant' } +process { + withLabel: process_gpu { + ext.use_gpu = true + accelerator = 1 + memory = { 15.GB * task.attempt } + } +} + aws.client.anonymous = true // fixes S3 access issues on self-hosted runners diff --git a/tests/preprocess.nf.test b/tests/preprocess.nf.test deleted file mode 100644 index f0fab75..0000000 --- a/tests/preprocess.nf.test +++ /dev/null @@ -1,34 +0,0 @@ -nextflow_pipeline { - - name "Test Workflow main.nf" - script "../main.nf" - tag "cpu" - tag "pipeline_lsmquant" - - test("-profile test") { - - when { - params { - outdir = "$outputDir" - input = 'https://raw.githubusercontent.com/nf-core/test-datasets/lsmquant/test_data/samplesheets/sample_sheet.csv' - } - } - - then { - def stable_name = getAllFilesFromDir(params.outdir, relative: true, includeDir: true, ignore: ['pipeline_info/*.{html,json,txt}']) - def json_files = getAllFilesFromDir(params.outdir, include: ['**/*.json']) - assert workflow.success - assertAll( - { assert snapshot( - // Number of successful tasks - workflow.trace.succeeded().size(), - removeNextflowVersion("$outputDir/pipeline_info/nf_core_lsmquant_software_mqc_versions.yml"), - // All stable path name, with a relative path - stable_name.isEmpty() ? 'No stable paths' : stable_name - ).match()} - ) - } - - } - -} diff --git a/tests/preprocess.nf.test.snap b/tests/preprocess.nf.test.snap deleted file mode 100644 index 5ba06fd..0000000 --- a/tests/preprocess.nf.test.snap +++ /dev/null @@ -1,312 +0,0 @@ -{ - "-profile test": { - "content": [ - 7, - { - "MAT2JSON_INT": { - "mat2json": 1.0 - }, - "NUMORPHALIGN": { - "numorphalign": 1.0 - }, - "NUMORPHINTENSITY": { - "numorphintensity": 1.0 - }, - "NUMORPHSTITCH": { - "numorphstitch": 1.0 - }, - "UNZIP": { - "7za": 16.02 - }, - "Workflow": { - "nf-core/lsmquant": "v1.0dev" - } - }, - [ - "TEST1", - "TEST1/alignment", - "TEST1/alignment/results", - "TEST1/alignment/results/NM_variables.mat", - "TEST1/alignment/results/samples", - "TEST1/alignment/results/samples/alignment", - "TEST1/alignment/results/samples/alignment/TEST1_ctip2_full.tif", - "TEST1/alignment/results/samples/alignment/TEST1_topro_full.tif", - "TEST1/alignment/results/variables", - "TEST1/alignment/results/variables/alignment_table.mat", - "TEST1/alignment/results/variables/path_table.mat", - "TEST1/alignment/results/variables/z_displacement_align.mat", - "TEST1/intensity", - "TEST1/intensity/results", - "TEST1/intensity/results/NM_variables.mat", - "TEST1/intensity/results/samples", - "TEST1/intensity/results/samples/intensity_adjustment", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/ctip2_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/flatfield_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/tile_adj_2.png", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_1_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_1_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/topro_2_2_11.tif", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_1.png", - "TEST1/intensity/results/samples/intensity_adjustment/y_adj_2.png", - "TEST1/intensity/results/variables", - "TEST1/intensity/results/variables/adj_params.mat", - "TEST1/intensity/results/variables/path_table.mat", - "TEST1/intensity/results/variables/thresholds.mat", - "TEST1/mat2json", - "TEST1/mat2json/align", - "TEST1/mat2json/align/NM_variables.json", - "TEST1/mat2json/align/alignment_table.json", - "TEST1/mat2json/align/path_table.json", - "TEST1/mat2json/align/z_displacement_align.json", - "TEST1/mat2json/intensity", - "TEST1/mat2json/intensity/NM_variables.json", - "TEST1/mat2json/intensity/adj_params.json", - "TEST1/mat2json/intensity/path_table.json", - "TEST1/mat2json/intensity/thresholds.json", - "TEST1/mat2json/stitch", - "TEST1/mat2json/stitch/adj_params.json", - "TEST1/mat2json/stitch/adjusted_z.csv", - "TEST1/mat2json/stitch/alignment_table.json", - "TEST1/mat2json/stitch/path_table.json", - "TEST1/mat2json/stitch/stitch_tforms.json", - "TEST1/mat2json/stitch/thresholds.json", - "TEST1/mat2json/stitch/z_disp_matrix.json", - "TEST1/mat2json/stitch/z_displacement_align.json", - "TEST1/mat2json/versions.yml", - "TEST1/stitching", - "TEST1/stitching/results", - "TEST1/stitching/results/NM_variables.mat", - "TEST1/stitching/results/stitched", - "TEST1/stitching/results/stitched/TEST1_0001_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0001_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0002_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0002_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0003_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0003_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0004_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0004_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0005_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0005_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0006_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0006_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0007_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0007_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0008_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0008_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0009_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0009_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0010_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0010_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0011_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0011_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0012_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0012_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0013_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0013_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0014_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0014_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0015_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0015_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0016_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0016_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0017_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0017_C2_ctip2_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0018_C1_topro_stitched.tif", - "TEST1/stitching/results/stitched/TEST1_0018_C2_ctip2_stitched.tif", - "TEST1/stitching/results/variables", - "TEST1/stitching/results/variables/adj_params.mat", - "TEST1/stitching/results/variables/adjusted_z.mat", - "TEST1/stitching/results/variables/alignment_table.mat", - "TEST1/stitching/results/variables/path_table.mat", - "TEST1/stitching/results/variables/stitch_tforms.mat", - "TEST1/stitching/results/variables/thresholds.mat", - "TEST1/stitching/results/variables/z_disp_matrix.mat", - "TEST1/stitching/results/variables/z_displacement_align.mat", - "pipeline_info", - "pipeline_info/nf_core_lsmquant_software_mqc_versions.yml", - "unzip", - "unzip/TEST1", - "unzip/TEST1/ctip2_topro", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C00_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 02]_C01_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C00_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[02 x 03]_C01_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C00_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 02]_C01_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C00_xyz-Table Z0620.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0600.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0601.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0602.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0603.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0604.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0605.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0606.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0607.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0608.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0609.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0610.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0611.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0612.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0613.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0614.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0615.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0616.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0617.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0618.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0619.ome.tif", - "unzip/TEST1/ctip2_topro/16-35-34_WT7R_ctip2_topro_2-5x_0-085NA_4z_UltraII[03 x 03]_C01_xyz-Table Z0620.ome.tif" - ] - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "24.10.4" - }, - "timestamp": "2025-06-17T10:34:04.048462839" - } -} \ No newline at end of file diff --git a/tests/preprocess_stub.nf.test b/tests/preprocess_stub.nf.test deleted file mode 100644 index bbb0747..0000000 --- a/tests/preprocess_stub.nf.test +++ /dev/null @@ -1,34 +0,0 @@ -nextflow_pipeline { - - name "Test preprocess workflow stub" - script "../main.nf" - tag "stub" - - test("-profile test, stub") { - options "-stub" - - when { - params { - outdir = "$outputDir" - input = 'https://raw.githubusercontent.com/nf-core/test-datasets/lsmquant/test_data/samplesheets/sample_sheet.csv' - } - } - - then { - def stable_name = getAllFilesFromDir(params.outdir, relative: true, includeDir: true, ignore: ['pipeline_info/*.{html,json,txt}']) - def json_files = getAllFilesFromDir(params.outdir, include: ['**/*.json']) - assert workflow.success - assertAll( - { assert snapshot( - // Number of successful tasks - workflow.trace.succeeded().size(), - removeNextflowVersion("$outputDir/pipeline_info/nf_core_lsmquant_software_mqc_versions.yml"), - // All stable path name, with a relative path - stable_name.isEmpty() ? 'No stable paths' : stable_name - ).match()} - ) - } - - } - -} diff --git a/tests/preprocess_stub.nf.test.snap b/tests/preprocess_stub.nf.test.snap deleted file mode 100644 index ae53eff..0000000 --- a/tests/preprocess_stub.nf.test.snap +++ /dev/null @@ -1,77 +0,0 @@ -{ - "-profile test, stub": { - "content": [ - 7, - { - "MAT2JSON_INT": { - "mat2json": 1.0 - }, - "NUMORPHALIGN": { - "numorphalign": 1.0 - }, - "NUMORPHINTENSITY": { - "numorphintensity": 1.0 - }, - "NUMORPHSTITCH": { - "numorphstitch": 1.0 - }, - "UNZIP": { - "7za": 16.02 - }, - "Workflow": { - "nf-core/lsmquant": "v1.0dev" - } - }, - [ - "TEST1", - "TEST1/alignment", - "TEST1/alignment/results", - "TEST1/alignment/results/NM_variables.mat", - "TEST1/alignment/results/samples", - "TEST1/alignment/results/samples/alignment", - "TEST1/alignment/results/samples/alignment/TEST1_full.tif", - "TEST1/alignment/results/variables", - "TEST1/alignment/results/variables/alignment_table.mat", - "TEST1/alignment/results/variables/path_table.mat", - "TEST1/alignment/results/variables/z_displacement_align.mat", - "TEST1/intensity", - "TEST1/intensity/results", - "TEST1/intensity/results/NM_variables.mat", - "TEST1/intensity/results/samples", - "TEST1/intensity/results/samples/intensity_adjustment", - "TEST1/intensity/results/samples/intensity_adjustment/TEST1.png", - "TEST1/intensity/results/variables", - "TEST1/intensity/results/variables/adj_params.mat", - "TEST1/intensity/results/variables/path_table.mat", - "TEST1/intensity/results/variables/thresholds.mat", - "TEST1/mat2json", - "TEST1/mat2json/align", - "TEST1/mat2json/align/TEST1.json", - "TEST1/mat2json/intensity", - "TEST1/mat2json/intensity/TEST1.json", - "TEST1/mat2json/stitch", - "TEST1/mat2json/stitch/TEST1.json", - "TEST1/mat2json/versions.yml", - "TEST1/stitching", - "TEST1/stitching/results", - "TEST1/stitching/results/NM_variables.mat", - "TEST1/stitching/results/stitched", - "TEST1/stitching/results/stitched/TEST1_stitched.tif", - "TEST1/stitching/results/variables", - "TEST1/stitching/results/variables/adjusted_z.mat", - "TEST1/stitching/results/variables/path_table.mat", - "TEST1/stitching/results/variables/stitch_tforms.mat", - "TEST1/stitching/results/variables/z_dips_matrix.mat", - "pipeline_info", - "pipeline_info/nf_core_lsmquant_software_mqc_versions.yml", - "unzip", - "unzip/TEST1" - ] - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.4" - }, - "timestamp": "2025-06-18T16:24:14.749062629" - } -} \ No newline at end of file