Difference between revisions of "Cross correlation matrix"

From Dynamo
Jump to navigation Jump to search
Line 18: Line 18:
 
#:C<sub>ij</sub> = intersection(R<sub>i</sub>W<sub>i</sub>, R<sub>j</sub>W<sub>j</sub>)
 
#:C<sub>ij</sub> = intersection(R<sub>i</sub>W<sub>i</sub>, R<sub>j</sub>W<sub>j</sub>)
 
# filter p<sub>i</sub> with C<sub>ij</sub>
 
# filter p<sub>i</sub> with C<sub>ij</sub>
#: p<sub>i</sub> = F<sup>-1</sup>[  F(p<sub>i</sub>).*  C<sub>ij</sub>  ]
+
#: <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()
 
</code>
 
</code>
&ptilde;
+
<html>&ptilde;</html>
õ
+
 
  
 
==Input for ccmatrix construction==
 
==Input for ccmatrix construction==

Revision as of 10:59, 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.

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:

  1. Input
    particles pi and pj
    alignment parameters Ai and Aj
    classification mask m
  2. read particles i and j -> pi, pj
  3. align particles i, and j -> Aipi, Ajpj
  4. compute missing wedges for particles i and j -> Wi, Wj
  5. rotate missing wedges -> RiWi, RjWj
  6. compute Fourier coefficients common to bCoth rotated missing wedges
    Cij = intersection(RiWi, RjWj)
  7. filter pi with Cij
    i = F-1[ F(pi).* Cij ]
  8. compare the filtered particles inside the classification mask.
    ccmatrix(i,j)<- normalized cross correlation()

<html>&ptilde;</html>


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