@@ -85,7 +85,7 @@ show(input_float, "Input image");
85
85
> = 363.0 Mb
86
86
>
87
87
</pre >
88
- <a href =" image_1587652222401.png " ><img src =" image_1587652222401.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result172 " /></a >
88
+ <a href =" image_1587652222401.png " ><img src =" image_1587652222401.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result172 " /></a >
89
89
90
90
## Noise and background removal
91
91
We use the difference-of-Gaussian (DoG) technique to remove noise and
@@ -99,15 +99,15 @@ sigma2 = 6;
99
99
Ext.<a href =" https://clij.github.io/clij2-docs/reference_differenceOfGaussian3D " >CLIJ2_differenceOfGaussian3D</a >(input_float, background_subtracted, sigma1, sigma1, 0, sigma2, sigma2, 0);
100
100
show(background_subtracted, "Background subtracted");
101
101
</pre >
102
- <a href =" image_1587652222915.png " ><img src =" image_1587652222915.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result174 " /></a >
102
+ <a href =" image_1587652222915.png " ><img src =" image_1587652222915.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result174 " /></a >
103
103
104
104
We remove negative and zero pixel intensities so that later only maxima above zero intensity are detected.
105
105
106
106
<pre class =" highlight " >
107
107
Ext.<a href =" https://clij.github.io/clij2-docs/reference_maximumImageAndScalar " >CLIJ2_maximumImageAndScalar</a >(background_subtracted, positive_stack, 1.0);
108
108
show(positive_stack, "Positive stack");
109
109
</pre >
110
- <a href =" image_1587652223595.png " ><img src =" image_1587652223595.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result176 " /></a >
110
+ <a href =" image_1587652223595.png " ><img src =" image_1587652223595.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result176 " /></a >
111
111
112
112
## Resampling
113
113
All following transforms become mathematically easier to perform by resampling the
@@ -123,7 +123,7 @@ linearInterpolation = true;
123
123
Ext.<a href =" https://clij.github.io/clij2-docs/reference_resample " >CLIJ2_resample</a >(positive_stack, resampled, resampleX, resampleY, resampleZ, linearInterpolation);
124
124
show(resampled, "Resampled")
125
125
</pre >
126
- <a href =" image_1587652224025.png " ><img src =" image_1587652224025.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result178 " /></a >
126
+ <a href =" image_1587652224025.png " ><img src =" image_1587652224025.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result178 " /></a >
127
127
128
128
## Spatial trnansforms
129
129
Goal of this workflow is to perform a maximum projection from the center of the embryo to the surface.
@@ -138,7 +138,7 @@ Ext.<a href="https://clij.github.io/clij2-docs/reference_resliceTop">CLIJ2_resli
138
138
show(reslicedFromTop, "Resliced from top");
139
139
140
140
</pre >
141
- <a href =" image_1587652224173.png " ><img src =" image_1587652224173.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result180 " /></a >
141
+ <a href =" image_1587652224173.png " ><img src =" image_1587652224173.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result180 " /></a >
142
142
143
143
### Radial reslicing
144
144
@@ -156,7 +156,7 @@ Ext.<a href="https://clij.github.io/clij2-docs/reference_resliceRadial">CLIJ2_re
156
156
show(radialResliced, "Radial projection");
157
157
158
158
</pre >
159
- <a href =" image_1587652224286.png " ><img src =" image_1587652224286.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result182 " /></a >
159
+ <a href =" image_1587652224286.png " ><img src =" image_1587652224286.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result182 " /></a >
160
160
161
161
### Reslicing from inside to outside
162
162
@@ -165,7 +165,7 @@ Ext.<a href="https://clij.github.io/clij2-docs/reference_resliceLeft">CLIJ2_resl
165
165
show(reslicedFromLeft, "Resliced from inside to outside");
166
166
167
167
</pre >
168
- <a href =" image_1587652224403.png " ><img src =" image_1587652224403.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result184 " /></a >
168
+ <a href =" image_1587652224403.png " ><img src =" image_1587652224403.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result184 " /></a >
169
169
170
170
## Maximum projection
171
171
@@ -185,7 +185,7 @@ the image back from GPU memory to CPU memory.
185
185
Ext.CLIJ_pull(maxProjected);
186
186
187
187
</pre >
188
- <a href =" image_1587652224510.png " ><img src =" image_1587652224510.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result185 " /></a >
188
+ <a href =" image_1587652224510.png " ><img src =" image_1587652224510.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result185 " /></a >
189
189
190
190
For spot detection we use ImageJs ` Find Maxima ` method.
191
191
@@ -205,7 +205,7 @@ run("Flatten");
205
205
<pre >
206
206
> Number of spots found:2454
207
207
</pre >
208
- <a href =" image_1587652225764.png " ><img src =" image_1587652225764.png " width =" 250 " alt =" CLIJ2_maximumZProjection_result185-1 " /></a >
208
+ <a href =" image_1587652225764.png " ><img src =" image_1587652225764.png " width =" 224 " alt =" CLIJ2_maximumZProjection_result185-1 " /></a >
209
209
210
210
# Performance evaluation
211
211
Finally a time measurement. Note that performing this workflow with ImageJ macro markdown is slower
0 commit comments