Failed Ab-initio heterogeneous reconstruction even with relion tutorial data

I ran ab-initio well with example TRPV1 data, but I can’t run with my relion tutorial data.

I entered Select/class2d_aftersort/ file to Meta Data file.

Visualization showed images well

Loading Dataset …
---- Loading File Set. Type: star Path: /home/kim/cryosparc/run/bulk/./relion_tutorial/
Loaded meta data for 55 images.
Found raw data for 55 images.
Loading image data…
Found references to 3 unique data files.
Dataset image size is 100.

Initially, it started well

> "	   -- Class  0 -- lr: 0.40 eps:  7.39 step ratio : 0.0499 ESS R: 121.474 S:  2.116 Class Size: 100.0% (Average: 100.0%)

>   Done iteration 00048 of 00984 in  1.030s. Total time   75.8s.
> ----------- Iteration    49 (epoch 81.818).  radwn 10.11  resolution 35.00A  minisize   90  beta 0.10 
>    -- Class  0 -- lr: 0.40 eps:  7.39 step ratio : 0.0724 ESS R: 124.483 S:  2.081 Class Size: 100.0% (Average: 100.0%)

>   Done iteration 00049 of 00984 in  1.133s. Total time   76.9s."

But soon it breaks like this.

“Traceback (most recent call last):
File “/home/kim/cryosparc/cryosparc-compute/”, line 318, in
cuda_devs = current_experiment_params[‘cuda_devs’])
File “/home/kim/cryosparc/cryosparc-compute/”, line 287, in abinit
figs[‘viewing_dist-%03d’%classid] = plotutil.plot_alignment_dist(training_set, key, R=R_plot, fig=figs.get(‘viewing_dist-%03d’%classid,None))
File “/home/kim/cryosparc/cryosparc-compute/”, line 448, in plot_alignment_dist
plt.hexbin(viewdirs_azimuth, viewdirs_elevation, viewdirs_weight, gridsize=50, reduce_C_function=n.sum, norm=matplotlib.colors.LogNorm(vmin=1), mincnt=1)
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/matplotlib/”, line 2934, in hexbin
marginals=marginals, data=data, **kwargs)
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/matplotlib/”, line 1812, in inner
return func(ax, *args, **kwargs)
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/matplotlib/axes/”, line 4283, in hexbin
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/matplotlib/”, line 334, in autoscale_None
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/matplotlib/”, line 1055, in autoscale_None
self.vmax = ma.max(A)
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/numpy/ma/”, line 6314, in max
return obj.max(axis=axis, fill_value=fill_value, out=out, **kwargs)
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/numpy/ma/”, line 5574, in max
axis=axis, out=out, **kwargs).view(type(self))
File “/home/kim/cryosparc/anaconda2/lib/python2.7/site-packages/numpy/core/”, line 26, in _amax
return umr_maximum(a, axis, None, out, keepdims)
ValueError: zero-size array to reduction operation maximum which has no identity”

I see that TRPV1 data has so many images

“Loaded meta data for 35645 images.
Found raw data for 35645 images.”

While my relion tutorial data has few images. Although I can’t confirm with above error message, I wonder maybe this is a reason of failure.

“Loaded meta data for 55 images.
Found raw data for 55 images.”

Hi @dnamkr,

I’m pretty sure your relion tutorial data should have more than 55 particles from 3 micrographs - this is way, way too few for any conceivable use. How many lines are in the file? I suspect something has gone wrong prior to (or during) import into CryoSPARC.


Thanks for your comment Oli.

I found out that my input ( has merely 90 lines.

Now, I manually picked 2k particles by relion_GUI. I will extract, semi-autopick and fullly auto-pick to finally pick 30~40k particles. I am excited to see how this will work in cryosparc.

I read that 2D classification may not be necessary (Advice for Classification), so I will skip for now.