Difference between revisions of "Cross correlation matrix"
Line 20: | Line 20: | ||
#: p̃<sub>i</sub> = F<sup>-1</sup>[ F(p<sub>i</sub>).* C<sub>ij</sub> ] | #: p̃<sub>i</sub> = F<sup>-1</sup>[ F(p<sub>i</sub>).* C<sub>ij</sub> ] | ||
# compare the filtered particles inside the classification mask. | # compare the filtered particles inside the classification mask. | ||
− | #: ccmatrix(i,j)<- normalized cross correlation() | + | #: ccmatrix(i,j)<- normalized cross correlation(p̃<sub>i</sub>|<sub>m</sub>, p̃<sub>j</sub>|<sub>m</sub>) |
</code> | </code> | ||
− | |||
− | |||
− | |||
==Input for ccmatrix construction== | ==Input for ccmatrix construction== |
Revision as of 11:03, 19 April 2016
The cross correlation matrix (often called ccmatrix in Dynamo jargon) of a set of N particles is an N X N matrix. Each entry (i,j) represents the similarity of particles i and j in the data set.
Contents
Definition of similarity
This similarity of particles i and j measured in terms of the normalized cross correlation of the the two aligned particles, filtered to their common fourier components, and restricted to a region in direct space (indicated by a classification mask). The pseudo code will run as:
- Input
- particles pi and pj
- alignment parameters Ai and Aj
- classification mask m
- read particles i and j -> pi, pj
- align particles i, and j -> Aipi, Ajpj
- compute missing wedges for particles i and j -> Wi, Wj
- rotate missing wedges -> RiWi, RjWj
- compute Fourier coefficients common to bCoth rotated missing wedges
- Cij = intersection(RiWi, RjWj)
- filter pi with Cij
- p̃i = F-1[ F(pi).* Cij ]
- compare the filtered particles inside the classification mask.
- ccmatrix(i,j)<- normalized cross correlation(p̃i|m, p̃j|m)
Input for ccmatrix construction
The minimal input is a set of particles (formatted as a data folder) and their alignment parameters (formatted as a table). You also may want to specify a classification mask and optatively additional mathematical operations on the particles (as bandpassing or symmetrization).
Computation of a ccmatrix
Dynamo typically implements the computation of a ccmatrix in independent blocks that can be handled separately by different cores.
Application of a ccmatrix
A ccmatrix is most commonly used in the context of PCA classification