Skip to content

Commit 52e9b4c

Browse files
authored
Merge pull request #13 from openproblems-bio/add_clustermap
Add clustermap
2 parents 397d1d2 + 425afb3 commit 52e9b4c

File tree

3 files changed

+453
-1
lines changed

3 files changed

+453
-1
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,5 @@ singularity_container/
2020
/.nextflow*
2121
/work
2222

23-
.DS_STORE
23+
*.DS_Store
24+
tmp
Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
__merge__: /src/api/comp_method_transcript_assignment.yaml
2+
3+
name: clustermap_transcript_assignment
4+
label: "Clustermap Transcript Assignment"
5+
summary: "Assign transcripts to cells based on the ClusterMap method from He et al. 2021"
6+
description: "Clusters RNA transcripts using density peak clustering."
7+
links:
8+
documentation: "https://github.com/wanglab-broad/ClusterMap"
9+
repository: "https://github.com/wanglab-broad/ClusterMap"
10+
references:
11+
doi: "10.1038/s41467-021-26044-x"
12+
13+
arguments:
14+
- name: --transcripts_key
15+
type: string
16+
description: The key of the transcripts within the points of the spatial data
17+
default: transcripts
18+
- name: --coordinate_system
19+
type: string
20+
description: The key of the pixel space coordinate system within the spatial data
21+
default: global
22+
23+
- name: window_size
24+
type: integer
25+
required: false
26+
description: "# small values to keep memory usage low, too small will lead to bad segmentations though"
27+
direction: input
28+
default: 700
29+
30+
- name: use_dapi
31+
type: boolean
32+
required: false
33+
description: "Whether to use the DAPI segmentation channel for clustermap"
34+
direction: input
35+
default: True
36+
37+
- name: xy_radius
38+
type: integer
39+
required: false
40+
description: "?"
41+
direction: input
42+
default: 40
43+
44+
- name: z_radius
45+
type: integer
46+
required: false
47+
description: "?"
48+
direction: input
49+
default: 0
50+
51+
- name: fast_preprocess
52+
type: boolean
53+
required: false
54+
description: "?"
55+
direction: input
56+
default: False
57+
58+
- name: gauss_blur
59+
type: boolean
60+
required: false
61+
description: "Whether to apply gaussian blur to the DAPI image"
62+
direction: input
63+
default: True
64+
65+
- name: sigma
66+
type: double
67+
required: false
68+
description: "Sigma parameter for for gaussian blur"
69+
direction: input
70+
default: 1
71+
72+
- name: pct_filter
73+
type: double
74+
required: false
75+
description: "Percent of transcripts to filter out. For example, pct_filter=0.1 will remove at 10% of transcripts"
76+
direction: input
77+
default: 0.0
78+
79+
- name: LOF
80+
type: boolean
81+
required: false
82+
description: "preprocess?"
83+
direction: input
84+
default: False
85+
86+
- name: contamination
87+
type: double
88+
required: false
89+
description: "?"
90+
direction: input
91+
default: 0
92+
93+
- name: min_spot_per_cell
94+
type: integer
95+
required: false
96+
description: "Minimum transcripts per cell"
97+
direction: input
98+
default: 5
99+
100+
- name: add_dapi
101+
type: boolean
102+
required: false
103+
description: "?"
104+
direction: input
105+
default: True
106+
107+
- name: use_genedis
108+
type: boolean
109+
required: false
110+
description: "?"
111+
direction: input
112+
default: True
113+
114+
- name: dapi_grid_interval
115+
type: integer
116+
required: false
117+
description: "?"
118+
direction: input
119+
default: 5
120+
121+
- name: cell_num_threshold
122+
type: double
123+
required: false
124+
description: "A threshold for deciding the number of cells. A larger value gives more cells"
125+
direction: input
126+
default: 0.1
127+
128+
resources:
129+
- type: python_script
130+
path: script.py
131+
132+
engines:
133+
- type: docker
134+
image: openproblems/base_python:1.0.0
135+
__merge__:
136+
- /src/base/setup_spatialdata_partial.yaml
137+
setup:
138+
- type: python
139+
pypi: [anndata, PyYAML, imagecodecs, fastdist, h5py, imageio, natsort, networkx, opencv-python, pynndescent, pywavelets, scanpy, scikit-image, sinfo, stdlib-list, tifffile, tqdm, umap-learn, xlrd]
140+
- type: docker
141+
run: |
142+
apt-get update && \
143+
apt-get install -y libgl1-mesa-glx libglib2.0-0 && \
144+
git clone https://github.com/wanglab-broad/ClusterMap.git && \
145+
cd ClusterMap && \
146+
pip install -e .
147+
# #github: [wanglab-broad/ClusterMap]
148+
- type: native
149+
150+
runners:
151+
- type: executable
152+
- type: nextflow
153+
directives:
154+
label: [ midtime, midcpu, highmem ]

0 commit comments

Comments
 (0)