Single particle analysis

From EosPedia
Jump to: navigation, search

The Single Particle Analysis(SPA) is, in Japanese, 単粒子解析法. Single Particle Analysis is the image analysis in two or three dimensions of a particle (or object), based on the assumption that it has an identical shape in either two or three dimensions ( all images of a particle are assumed to present its own identical shape).

2D Single Particle Analysis

 2D Single Particle Analysis does the following, 1) to classify the two dimensional electron microscopic images, which are essentially the projected images, 2) to average them, and 3) to discuss the obtained structural information.

Cluster Analysis

 We classify the electron microscopic images, initially by 1) grouping them according to their similarity, and 2) making a hierarchy structure of the image similarity. Averaging of the similar images in a group can enhance the SN ratio of the averaged image. The averaged image is used as a reference for determining the orientation of individual image (included in the input file for the calculation), or as a reference for determining the orientation of the particle.

Example 1 (Preprocessing ~ Classification)

We try to classify the images given by input file (ROI).

Input-Cluster-2dSet.png


Preprocessing
The following command files are used. (XXX: ROI file name)


command1: mrcImagePad -i XXX.roi -o XXX.prelow -W 32 -H 32 -m 13

command2: mrcImageLowPassFilter -i XXX.prelow -o XXX.preshrink -m 4 -hvp 0.1

command3: mrcImageShrink -i XXX.preshrink -o XXX.pad -S 1


After preprocessing

Input1-Cluster-2dSet.png


Cluster Analysis
We do the cluster analysis against the pre-processed data using mrcImageClusterAnalysis. (all.padlst is a list of pad files)


command: mrcImageClusterAnalysis -I all.padlst -O -AR 72 -ARange 0 360 -ARiter 2 -ARMethod 0 -M 19 -Log Input-Cluster.log -m 2

This command classifies the images using mrcImageAutoRotationCorrelation which calculates correlation of the images.

         1          0         40         40         99.2851
         2          0         40         40         90.0657
         2          1         40         40         75.2851
         3          0         40         40         82.6412
         3          1         40         40         87.9777

-snip-

         3          2          3          2         442.652
         1          0          3          0         373.403
         2          0          3          0         630.906
         2          1          3          0         349.983
         1          0          2          1         562.309


Classification
clusterShow outputs the results in a file.


Command: clusterShow -i Input-Cluster.log -PS Outdata-Cluster.logps -Last 1 -S 10 100 -P 0 400 -Log -Scaling -Offset 1e1 -I all.padlst
          -OL Input-Cluster.padsortlst -AL Input-Cluster.avesortlst 0 avg -OT Outdata-Cluster.treeinfo



121p-shift-rot000.mrc-rot000.pad 0 590.000000 83.277847 
121p-shift-rot000.mrc-rot090.pad 3 580.000000 83.277847 
121p-shift-rot000.mrc-rot030.pad 1 570.000000 87.326599 
121p-shift-rot000.mrc-rot060.pad 2 560.000000 87.326599 
121p-shift-rot000.mrc-rot120.pad 4 550.000000 79.850204 

-snap-

121p-shift-rot045.mrc-rot000.pad 10 240.000000 80.898613 
121p-shift-rot045.mrc-rot270.pad 19 230.000000 80.898613 
121p-shift-rot045.mrc-rot060.pad 12 220.000000 80.506714 
121p-shift-rot045.mrc-rot240.pad 18 210.000000 78.504913 
121p-shift-rot045.mrc-rot030.pad 11 200.000000 68.052155 


121p-shift-rot000.mrc-rot000.pad.avg 0 590.000000 83.277847 0 0
121p-shift-rot000.mrc-rot090.pad.avg 3 580.000000 83.277847 0 0
121p-shift-rot000.mrc-rot030.pad.avg 1 570.000000 87.326599 0 0
121p-shift-rot000.mrc-rot060.pad.avg 2 560.000000 87.326599 0 0
121p-shift-rot000.mrc-rot120.pad.avg 4 550.000000 79.850204 0 0

-snip-

121p-shift-rot045.mrc-rot000.pad.avg 10 240.000000 80.898613 0 0
121p-shift-rot045.mrc-rot270.pad.avg 19 230.000000 80.898613 0 0
121p-shift-rot045.mrc-rot060.pad.avg 12 220.000000 80.506714 0 0
121p-shift-rot045.mrc-rot240.pad.avg 18 210.000000 78.504913 0 0
121p-shift-rot045.mrc-rot030.pad.avg 11 200.000000 68.052155 0 0


Tree diagram( a PS file)

Outdata-Cluster.png

A tree diagram, the results of the cluster analysis, is output as a PS file.



The images are shown shown in the sorted order using mrcImageMontageCreate


Command(OL): mrcImageMontageCreate -i Input-Cluster.padsortlst -o Outdata-Cluster-OL.padsortmon
Command(AL): mrcImageMontageCreate -i Input-Cluster.avesortlst -o Outdata-Cluster-AL.padsortmon


-OL The input images sorted by the cluster analysis(Ascending order in the tree: left bottom is No.0)
Outdata-Cluster-OL.png

-AL The classified averaged images in the groups(Corresponding to the branch number in the tree:left bottom is No.0)
Outdata-Cluster-AL.png

Input the following commands to execute a series of commands described so far. This uses input file and a Makefile.

make Init
make ALLROIS
make Pad
make Log
make LogPS


Example2(Use modified input images)

We analyze another data set input file(ROI) in the similar way.

Input-Cluster-2dSet-1.png
real images

Input-Cluster-2dSet-FFT-1.png
Fourier Images

Those images were a modification of the previous images, by four different rotations along y axis (vertical), by ten different rotations along x axis (horizontal) and by noise addition with SN=0.9.

After preprocessing

Input1-Cluster-2dSet-1.png
real image

Input1-Cluster-2dSet-FFT-1.png
Fourier Image


A tree diagram obtained by the cluster analysis (PS file)
Outdata-Cluster-1.png
In the present analysis using mrcImageClusterAnalysis which calculates a correlation that takes rotations within the plane into account, the four groups which are different in the rotation angle along the y-axis should emerge in the results. However, in this actual case where noises are added, the obtained results are not perfect enough due to incomplete preprocessing. In the tree, there is a group consistng of only two elements (No.18, 19 in the tree No.28)(File name: 121p-shift2-X軸回転-Y軸回転-面内回転-SN.pad)

Matching number (with the model) in the groups when grouped in four (y-axis rotation grouping)

group000022:	match:	9	owner:	45
group000013:	match:	8	owner:	135
group000028:	match:	0	owner:	0
group000001:	match:	8	owner:	90
				total:	25
percentage:	0.625000

As some groups are two-membered, the matching percentage (with the model) is about 60%.

This grouping is done by iteratively dividing the largest group so that the number of the groups are as assigned (four in this case). Also, it is done by calculating from sum of the number of the elements which coincide maximally but without any overlap, on the assumption that the model coincidence number is classified as belonging to one of the 0°、45°、90°、135°groups (rotation not within the plane). The code using PIONEis found at here。When done as shown below, all.padsortlst and all.treeinfo, as input, produce the model matching number and its ratio in /process/all.groupinfo.

pione-client GroupingPoint.pione -i .


-OL The input images sorted by the cluster analysis(Ascending order in the tree: left bottom is No.0)

Outdata-Cluster-OL-1.png
real images

Outdata-Cluster-OL-FFT-1.png
Fourier Images


-AL The classified averaged images in the groups(Corresponding to the branch number in the tree:left bottom is No.0)

Outdata-Cluster-AL-1.png
real images

Outdata-Cluster-AL-FFT-1.png
Fourier Images


Example 3(Change thresholds in the low pass filter in the pre-processing)

We change the mode of the preprocessing, using the same image files as in the example 2 input file (ROI).

Input-Cluster-2dSet-1.png
real image

Input-Cluster-2dSet-FFT-1.png
Fourier image


Now we set the low path filter option parameter hvp to 0.085 in the preprocessing. The preprocessing is the sameas in the example 1 but with the new hvp value of 0.085. (XXX: ROI file name)

command 1: mrcImagePad -i XXX.roi -o XXX.prelow -W 32 -H 32 -m 13
command 2: mrcImageLowPassFilter -i XXX.prelow -o XXX.preshrink -m 4 -hvp 0.085
command 3: mrcImageShrink -i XXX.preshrink -o XXX.pad -S 1

When the Makefileis used, you set LowPassResolution=0.085 in theMakefile.config.

After preprocessing

Input1-Cluster-2dSet-2.png
Real image

Input1-Cluster-2dSet-FFT-2.png
Fourier image


A tree diagram obtained by classification with the cluster analysis (PS file)
Outdata-Cluster-2.png
Numbers of the four groups got around 10, which is in contrast to the run example 2.

Matching numbers (with the model) when grouped into 4(Classified according to Y-axis rotations)

group000002:	match:	9	owner:	45
group000011:	match:	7	owner:	135
group000031:	match:	9	owner:	90
group000014:	match:	7	owner:	0
				total:	32
percentage:	0.800000

Matching percentage got improved to 80 %.

Using those results, we do sorting and get the averaged image in the same manner as in the run exmaple 1.
-OL The input images sorted by the cluster analysis(Ascending order in the tree: left bottom is No.0)

Outdata-Cluster-OL-2.png
real image

Outdata-Cluster-OL-FFT-2.png
Fourier image


-AL The classified "averaged images" in the groups(Corresponding to the branch number in the tree:left bottom is No.0)

Outdata-Cluster-AL-2.png
real image

Outdata-Cluster-AL-FFT-2.png
Fourier image


Run example 4(Use the Median filter in the preprocessing)

There are other commands than mrcImageLowPassFilter. They use other filtering options. In this example, we use the Median filtering (m=1)。

Run with Kernel size 3×3 rectangular

The kernel size, in default, is 3x3 rectangular

We use the same input file as in the run example 2 input file (ROI).

Input-Cluster-2dSet-1.png
real image

Input-Cluster-2dSet-FFT-1.png
Fourier umage


In the preprocessing, the Median filter is applied. Also Windowing is done.(XXX: each ROI file name)

command 1: mrcImagePad -i XXX.roi -o XXX.prelow -W 32 -H 32 -m 13
command 2-1: mrcImageWindowing -i XXX.prelow -o XXX.presmth -m 2 -W 0 0.1 0 0.1
command 2-2: mrcImageSmoothing -i XXX.presmth -o XXX.preshrink -m 1
command 3: mrcImageShrink -i XXX.preshrink -o XXX.pad -S 1

When this makefile is used, the following change is made.

.roi.pad:
	mrcImagePad -i $*.roi -o $*.prelow -W $(PADWIDTH) -H $(PADHEIGHT) -m $(PADMODE) 
#	mrcImageLowPassFilter -i $*.prelow -o $*.preshrink -m $(LowPassMode) -hvp $(LowPassResolution) 
	mrcImageWindowing -i $*.prelow -o $*.presmth -m 2 -W 0 0.1 0 0.1
	mrcImageSmoothing -i $*.presmth -o $*.preshrink -m 1
	mrcImageShrink -i $*.preshrink -o $*.pad -S $(SHRINK)


after prepprosessing

Input1-Cluster-2dSet-3.png
real image

Input1-Cluster-2dSet-FFT-3.png
Fourier image


A tree diagram obtained by classification with the cluster analysis (PS file)
Outdata-Cluster-3.png
Matching numbers (with the model) when grouped into 4(Classified according to Y-axis rotations)

group000022:	match:	9	owner:	45
group000012:	match:	9	owner:	135
group000033:	match:	8	owner:	90
group000003:	match:	9	owner:	0
				total:	35
parcentage:	0.875000

Matching percentage got improved to 87 %。

-OL The input images sorted by the cluster analysis(Ascending order in the tree: left bottom is No.0))

Outdata-Cluster-OL-3.png
real image

Outdata-Cluster-OL-FFT-3.png
Fourier image


-AL The classified "averaged images" in the groups(Corresponding to the branch number in the tree:left bottom is No.0)

Outdata-Cluster-AL-3.png
real image

Outdata-Cluster-AL-FFT-3.png
Fourier image


Run with Kernel size r=1 spherical

Next we adopt an option M=1 (spherical, with the Median Filter). The kernel radius, in default, is 1

We use the same input file this input file (ROI)as in the run example 2.

Input-Cluster-2dSet-1.png
real image

Input-Cluster-2dSet-FFT-1.png
Fourier image


In the preprocessing, the Median filter (spherical) is applied.(XXX: each ROI file name)

command 1: mrcImagePad -i XXX.roi -o XXX.prelow -W 32 -H 32 -m 13
command 2-1: mrcImageWindowing -i XXX.prelow -o XXX.presmth -m 2 -W 0 0.1 0 0.1
command 2-2: mrcImageSmoothing -i XXX.presmth -o XXX.preshrink -m 1 -M 1
command 3: mrcImageShrink -i XXX.preshrink -o XXX.pad -S 1

When this Makefileis used, the following change is made.

.roi.pad:
	mrcImagePad -i $*.roi -o $*.prelow -W $(PADWIDTH) -H $(PADHEIGHT) -m $(PADMODE) 
#	mrcImageLowPassFilter -i $*.prelow -o $*.preshrink -m $(LowPassMode) -hvp $(LowPassResolution) 
	mrcImageWindowing -i $*.prelow -o $*.presmth -m 2 -W 0 0.1 0 0.1
	mrcImageSmoothing -i $*.prewin -o $*.preshrink -m 1 -M 1
	mrcImageShrink -i $*.preshrink -o $*.pad -S $(SHRINK)


after prepprosessing

Input1-Cluster-2dSet-4.png
real image

Input1-Cluster-2dSet-FFT-4.png
Fourier image


A tree diagram obtained by classification with the cluster analysis (PS file)
Outdata-Cluster-4.png
Matching numbers (with the model) when grouped into 4(Classified according to Y-axis rotations)

group000025:	match:	9	owner:	45
group000014:	match:	9	owner:	135
group000016:	match:	10	owner:	90
group000007:	match:	8	owner:	0
				total:	36
parcentage:	0.900000

Matching percentage got improved to 90 %, which is better than the rectangular case.

-OL The input images sorted by the cluster analysis(Ascending order in the tree: left bottom is No.0)

Outdata-Cluster-OL-4.png
real image

Outdata-Cluster-OL-FFT-4.png
Fourier Image


-AL The classified "averaged images" in the groups(Corresponding to the branch number in the tree:left bottom is No.0)

Outdata-Cluster-AL-4.png
real image

Outdata-Cluster-AL-FFT-4.png
Fourier image


Run with Kernel size r=2 spherical

Next we apply a Median filter with an option M=1 and r=2.


We use the same input file as in the run example 2 input file (ROI).

Input-Cluster-2dSet-1.png
real image

Input-Cluster-2dSet-FFT-1.png
Fourier image


In the preprocessing, a Median filter (spherical) is applied. (XXX: each ROI file name)

command 1: mrcImagePad -i XXX.roi -o XXX.prelow -W 32 -H 32 -m 13
command 2-1: mrcImageWindowing -i XXX.prelow -o XXX.presmth -m 2 -W 0 0.1 0 0.1
command 2-2: mrcImageSmoothing -i XXX.presmth -o XXX.preshrink -m 1 -M 1 -r 2
command 3: mrcImageShrink -i XXX.preshrink -o XXX.pad -S 1

When this Makefile is used, the following change is made.

.roi.pad:
	mrcImagePad -i $*.roi -o $*.prelow -W $(PADWIDTH) -H $(PADHEIGHT) -m $(PADMODE) 
#	mrcImageLowPassFilter -i $*.prelow -o $*.preshrink -m $(LowPassMode) -hvp $(LowPassResolution) 
	mrcImageWindowing -i $*.prelow -o $*.presmth -m 2 -W 0 0.1 0 0.1
	mrcImageSmoothing -i $*.prelow -o $*.prepad -m 1 -M 1 -r 2
	mrcImageShrink -i $*.preshrink -o $*.pad -S $(SHRINK)


after prepprosessing

Input1-Cluster-2dSet-5.png
real image

Input1-Cluster-2dSet-FFT-5.png
Fourier image


A tree diagram obtained by classification with the cluster analysis (PS file)
Outdata-Cluster-5.png
Matching numbers (with the model) when grouped into 4(Classified according to Y-axis rotations).

group000020:	match:	10	owner:	45
group000014:	match:	9	owner:	135
group000009:	match:	5	owner:	90
group000016:	match:	5	owner:	0
				total:	29
parcentage:	0.725000

Matching percentage is now 72 %.

-OL The input images sorted by the cluster analysis(Ascending order in the tree: left bottom is No.0)

Outdata-Cluster-OL-5.png
real image

Outdata-Cluster-OL-FFT-5.png
Fourier image


-AL The classified "averaged images" in the groups(Corresponding to the branch number in the tree:left bottom is No.0)

Outdata-Cluster-AL-5.png
real image

Outdata-Cluster-AL-FFT-5.png
Fourier image


3D single particle analysis

3D single particle analysis is the following method: by assuming that each particle has the same structure although the projection angle is different, we can reconstruct 3D structure of the particle from each projection. The protocol was the below.

1. Extraction of particle 2D images.

  • Pre-processing of EM Images (CTF correction, noise reduction, etc.) (ctfDisplay, etc.])
  • Extraction fo particles from pre-processed images (Display2 etc.)

2. Preparation of an initial reference model.

3. 3D reconstruction

-- In single particle analyses, the images of protein particles are collected, and images similar in the directions of three-dimensional projection are superimposed and averaged. The averaging results in low-noise two-dimensional images. These images are used again as references for positioning the original images to obtain new averaged images.

After repeating these procedures, three-dimensional angles (Euler angles) are determined to construct a three-dimensional structure. In addition, a re-projected image is created from the initial three-dimensional structure. The image is subjected to averaging through the superposition of the original image as a reference to reconstruct a three-dimensional structure. These procedures are repeated until the structure is stabilized, in order to complete a structural model. In this training, the principles of single particle analyses and single particle analyses using Eos will be learned.