Heterogeneous reconstruction- Slots are not connected error

Hello,

I am trying to run a heterogeneous reconstruction with at least one particle set as input (as required, image attached). My inputs come from a local refinement job, and all other parameters are set to default. However, I am encountering an error stating that “slots are not connected” and to “connect all required inputs” (image attached).

I have attached the input parameters and error message for reference. Am I missing something or doing something wrong?

Thank you


@abhipsa Is the parent job J122 of either the 3D Classification or Heterogeneous Refinement type (guide)?
Gentle reminder: Please post error messages as text instead of a screenshot so that an interested future forum user may find this topic with a text search.

No, sorry, the parent job J122 is from a local refinement.

Thank you for the guide link. (I see the problem)

However, based on its instructions, I attempted the heterogeneous reconstruction again using the output from the 3D classification job—specifically, particles_class_3 and particles_class_4—as input. However, the job failed with the same error message.

Interestingly, when I used particles_all_classes from the 3D classification output as input, the heterogeneous reconstruction worked.

My question is: If I have to use particles_all_classes as input for heterogeneous reconstruction, it will generate multiple volumes. Wouldn’t this be similar to what 3D classification already did for me?

What I want to do is assess further heterogeneity specifically within the regrouped particles from particles_class_3 and particles_class_4 after the 3D classification step. I think heterogeneous reconstruction is not able to do this at the moment. :thinking:

PS:Thank you for the reminder!

Hi @abhipsa!

You’re right that Heterogeneous Reconstruction Only will create volumes for every class. This may seem similar at first to what 3D Classification does, but there are some important differences between the two. The two big ones are marginalization and pixel size.

Marginalization over class

First, 3D Classification will produce volumes where the particles are weighted according to the probability that they belong to each class (unless hard classification is turned on). This is called “Marginalization over class”. For example, if we think a particle is 70% likely to belong to class A and 30% likely to belong to class B, it will be used with a weight of 0.7 during backprojection of class A and 0.3 during backprojection of class B.

In many cases this is helpful during classification, but we want to see the final volumes with particles only assigned to their respective classes. In this case, you can run a Heterogeneous Reconstruction Only job to produce volumes with hard classification. In the example above, the particle would have a weight of 1.0 for class A and 0.0 for class B.

Pixel size

Another important difference between the two is a result of the filter resolution parameter. This is an important parameter to tune during 3D Classification. You want the filter resolution to be just high enough that you can see the feature you want to classify on, and low enough that irrelevant details and noise are filtered out.

Internally to 3D Classification, the particles are downsampled so that the Nyquist resolution in the job is near this filter resolution. This significantly speeds up classification, but produces volumes which typically have a much larger pixel size than your base particle images.


These two facts combine to make a pretty significant difference between the output of 3D Classification and a Heterogeneous Reconstruction Only job. Compare the two below to see what I mean! The exact same particles and classes are used to make both sets of volumes. The one on the left in yellow is what came directly out of 3D Classification, while the one on the right in pink is what came out of Heterogeneous Reconstruction Only.

class-compare

I hope that’s helpful!

2 Likes