12.03.2015 Views

Single Particle Analysis Tutorial - Xmipp

Single Particle Analysis Tutorial - Xmipp

Single Particle Analysis Tutorial - Xmipp

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

XMIPP DOCUMENTATION: TUTORIALS<br />

(http://xmipp.cnb.csic.es/twiki/bin/view/<strong>Xmipp</strong>/<strong>Tutorial</strong>s)<br />

<strong>Single</strong> <strong>Particle</strong> <strong>Analysis</strong> <strong>Tutorial</strong><br />

Thanks for using <strong>Xmipp</strong>


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Contents<br />

1 General introduction 4<br />

1.1 Download and Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />

1.2 Welcome to <strong>Xmipp</strong>! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />

1.3 Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

1.3.1 Metadata Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

1.3.2 EMX Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

1.3.3 2D images, 3D volumes, 2D stacks and 3D stacks . . . . . . . . . . . . 6<br />

1.4 Standardized protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

2 Your first 3D reconstruction in <strong>Xmipp</strong> 8<br />

2.1 Download data and getting started . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

2.2 Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />

2.3 <strong>Particle</strong> Picking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br />

2.4 <strong>Particle</strong>s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br />

2.5 Align+Classify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br />

2.6 Initial model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />

2.7 Projection Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br />

3 Concluding remarks 29<br />

2


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Intended audience<br />

This demo provides a general introduction to <strong>Xmipp</strong> 3.0 (X-window based Microscopy Image<br />

Processing Package). It is designed to introduce 3D image processing in electron microscopy<br />

to people without any prior knowledge of <strong>Xmipp</strong>, only limited knowledge about 3D-EM image<br />

processing, and with basic computer skills.<br />

We’d like to hear from you<br />

We have tested and verified the different steps described in this demo to the best of our knowledge,<br />

but since our programs are in continuous development you may find inaccuracies and<br />

errors in this text. Please, let us know about any error you find, as well as your suggestion for<br />

future editions by writing to xmipp@cnb.csic.es.<br />

3


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

1 General introduction<br />

1.1 Download and Install<br />

The first step before start working on your projects is to download and install <strong>Xmipp</strong>. You can<br />

download <strong>Xmipp</strong> from download. Details about installation can be found in how_to_install.<br />

1.2 Welcome to <strong>Xmipp</strong>!<br />

<strong>Xmipp</strong> was introduced to the scientific society more than a decade ago (Marabini et al., 1996).<br />

Originally it was written in C, but in 2004 it was completely re-implemented in a hierarchical<br />

structure of C++ libraries (Sorzano et al., 2004). In its current state (De la Rosa-Trevín et al.,<br />

2013), <strong>Xmipp</strong> contains more than 200 stand-alone programs.<br />

Let’s have a first look at the <strong>Xmipp</strong> package. Open a Unix-like shell, and type:<br />

xmipp_ [+TAB]<br />

to see a list of all available <strong>Xmipp</strong> commands. You will see there are more than two hundreds<br />

different programs. Any <strong>Xmipp</strong> program may be called from the command line, and if you do<br />

not give any options, a limited description of its parameters is shown. Just try typing the name<br />

of any of them, for example:<br />

xmipp_reconstruct_wbp<br />

gives the following output to the screen:<br />

PROGRAM<br />

xmipp_reconstruct_wbp<br />

USAGE<br />

Generate 3D reconstruction from projections using the Weighted<br />

BackProjection algorithm.<br />

SEE ALSO<br />

angular_projection_matching, angular_discrete_assign,<br />

angular_continuous_assign<br />

OPTIONS<br />

-i <br />

selection file with input images and Euler angles<br />

[-o ]<br />

filename for output volume<br />

[-doc ]<br />

Ignore headers and get angles from this docfile<br />

[-radius ]<br />

Reconstruction radius. int=-1 means radius=dim/2<br />

The volume will be zero outside this radius<br />

[-sym ]<br />

Enforce symmetry<br />

[-weight]<br />

Use weights stored in image headers or the input<br />

metadata<br />

4


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Common options<br />

[-gui]<br />

Show a GUI to launch the program.<br />

[-more]<br />

Show additional options.<br />

EXAMPLES<br />

xmipp_reconstruct_wbp -i images.sel -o reconstruction.vol<br />

This is the program to perform a 3D reconstruction using an algorithm called weighted backprojection.<br />

In case you want to obtain information about a <strong>Xmipp</strong> command but you do not know<br />

the exact program name you can use<br />

xmipp_apropos<br />

that searches for <strong>Xmipp</strong> programs that are related to some keywords, for example,<br />

xmipp_apropos -i reconstruct<br />

A complete list of the available programs may be found on the ListOfPrograms at the <strong>Xmipp</strong><br />

(Wiki) website. The links on that page points to more detailed manual pages for each of the<br />

programs. This list can also be obtained in the console without<br />

xmipp_apropos -l<br />

Some programs are numerical-only and will run in the shell (i.e. xmipp_reconstruct_wbp<br />

program mentioned above). Other programs have a graphical interface (like xmipp_browser,<br />

the program to visualize images, volumes, self-organizing maps etc.), i.e. they will launch an<br />

additional window. There are several programs that have an implementation for parallel execution<br />

(using message-passing interface, MPI). The names of parallel programs always start with<br />

xmipp_mpi_.<br />

1.3 Formats<br />

1.3.1 Metadata Files<br />

In <strong>Xmipp</strong> metadata information (that can be thought as “data about data”) is transferred between<br />

programs using metadata files. Metadata files are handled by the metadata class. Metadata<br />

files uses the STAR (Self-defining Text Archiving and Retrieval) format. In a nutshell, the<br />

STAR format is a plain text format (i.e., human-readable) that defines tag-value pairs with few<br />

rules on the composition of the file: <strong>Xmipp</strong> metadata standard introduces several constrains to<br />

ease implementation. You can see an example of a metadata file and additional information in<br />

MetadataFiles.<br />

Metadata files are used to keep lists of images, lists of micrographs, correspondences between<br />

images and micrographs (from which micrograph each image has been taken from), lists of<br />

micrograph coordinates, 2D and 3D alignment parameters, CTF parameters, ... You can think of<br />

a Metadata file as a table in which you can add as many columns as you like. Each column has<br />

its own meaning. The list of columns available can be seen by typing xmipp_apropos -l<br />

-t labels.<br />

5


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

1.3.2 EMX Files<br />

<strong>Xmipp</strong> is commited to support EMX exchange format. Information related with this format can<br />

be seen here EMX<br />

1.3.3 2D images, 3D volumes, 2D stacks and 3D stacks<br />

<strong>Xmipp</strong> supports the following image file formats/extensions:<br />

For further information, please take a look to ImageFormats.<br />

Note that <strong>Xmipp</strong> also has specific functionality for format conversions (just type xmipp_image_convert).<br />

An important difference between <strong>Xmipp</strong> and other packages is that <strong>Xmipp</strong> avoids interpolating<br />

the images by storing geometrical information (for instance, 2D shifts, 3D Euler angles, ...)<br />

in metadata files. The original images are never touched during 2D or 3D alignment. Instead,<br />

metadata alignment or classification files are written containing all the geometrical information<br />

needed for constructing 2D or 3D models. Note that in <strong>Xmipp</strong> 2.4 this geometrical information<br />

was normally stored in the Spider image header. However, in <strong>Xmipp</strong> 3.0, the image header is<br />

not read and all geometrical information must be kept in metadatas. You can extract the image<br />

header to produce a metadata or viceversa using the program xmipp_image_header. Alternatively,<br />

you may use xmipp_transform_geometry (with the option --apply_transform)<br />

to produce interpolated images that can be used by other packages. xmipp_showj has an option<br />

to visualize metadatas and images with or without the geometrical information (Display→Apply<br />

geometry).<br />

For 3D volumes and 2D Stacks, <strong>Xmipp</strong> supports several file formats (see table above). Stacks<br />

of volumes are supported through Spider stacks. Additionally, any “header+raw data” format<br />

is supported through the # syntax (#xDim,yDim,[zDim],offset,datatype,[r]). In<br />

this syntax, after writing the filename, you describe the size of the image or volume, the offset in<br />

bytes to reach the raw data and the datatype. You can additionally indicate whether the endianess<br />

is reversed or not with respect to the machine default. For instance, let us assume we have an<br />

image with a format not supported by <strong>Xmipp</strong>. It has a header of 1040 bytes, the image size<br />

is 2048x2048 of unsigned 16 bits integers, and the endianness is reversed with respect to the<br />

machine, we may read this file by using for instance<br />

xmipp_showj -i myfile.myext#2048,2048,1,1040,uint16,r<br />

6


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

1.4 Standardized protocols<br />

The multitude of standalone <strong>Xmipp</strong> programs allows a broad functionality. Just by typing command<br />

line instructions, the user may devise its own data processing strategy. However, for novice<br />

users it may be hard to find out which program to use at each stage, while the more experienced<br />

users may repeat certain sequences of command-line instructions many times. Therefore, a<br />

higher-level layer has been added to <strong>Xmipp</strong> in the form of executable python scripts for the<br />

more popular image processing strategies in <strong>Xmipp</strong> (Scheres et al., 2008). To further ease their<br />

use, a graphical user-interface (GUI) has been developed (xmipp, xmipp_protocols or<br />

xp). Also see the GettingStarted Wiki page for more detailed information.<br />

Clicking the buttons for the distinct processing tasks will copy the standardized python scripts<br />

to your project directory inside a folder called Runs/, and open a GUI-window that allows to<br />

edit the parameters in the script headers and subsequent script execution. Besides scripts for job<br />

execution, also scripts that help in visualizing their results have been developed.<br />

In this demo, we will mainly work with the standardized python scripts. If you are planning<br />

on using <strong>Xmipp</strong> on a regular basis, it is probably a good idea to keep track of which individual<br />

<strong>Xmipp</strong> commands were executed by inspecting the log-files that are output by the different<br />

scripts (by default in a directory called Logs/).<br />

7


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

2 Your first 3D reconstruction in <strong>Xmipp</strong><br />

<strong>Single</strong> <strong>Particle</strong> <strong>Analysis</strong>: Depending on the nature of each sample, different strategies<br />

must be chosen in order to obtain a 3D reconstruction. If the sample contains a single object,<br />

electron tomography should be chosen. Electron tomography allows 3D reconstruction of a<br />

single object after acquisition of tilt series. Conversely, when the sample is composed of multiple<br />

copies of the same object, such as proteins and macromolecular complexes, the strategy<br />

of data collection and 3D reconstruction is different and aims at the computation of a 3D average<br />

map. When the particles lack any particular symmetry, an approach named single particle<br />

analysis can be applied. This method consists in obtaining for each electron microscopy image,<br />

multiples projections of identical objects at different orientations. Therefore, to make a threedimensional<br />

reconstruction we combine these projections from a large number of particles in<br />

different orientations (Sorzano et al., 2007). In Fig. 1 we show a diagram that illustrates the<br />

single particle technique.<br />

Figure 1: Illustration of the basic principle of single particle analysis<br />

In this demo, we have used the single particle analysis approach to obtain a 3D reconstruction<br />

of a Bovine Papillomavirus. The EM images have been collected at 300 kV and a calibrated<br />

magnification of 56,588, giving a pixel size on the specimen of 1.237 Å (Wolf et al., 2010).<br />

Data have been kindly provided by ( Dr. Grigorieff’s Lab.)<br />

2.1 Download data and getting started<br />

Before proceed with this tutorial be sure that you have <strong>Xmipp</strong> (version 3.0 or newer) properly<br />

installed. Details about installation can be found in how_to_install.<br />

The data you will work on may be downloaded and extracted using the following commands:<br />

wget -nc \<br />

http://xmipp.cnb.csic.es/Downloads/<strong>Xmipp</strong>Doc/3.0/xmipp3_intro.tgz<br />

tar -xvzf xmipp3_intro.tgz<br />

8


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

You may also see the “solution”, i.e., the same project with all protocols runs and a final<br />

reconstruction at<br />

wget -nc \<br />

http://xmipp.cnb.csic.es/Downloads/<strong>Xmipp</strong>Doc/3.0/xmipp3_intro_solved.tgz<br />

After download and extract the data, you should have a folder named BPV_Project. This<br />

will be the project folder and working directory for executing all steps of this tutorial. Enter in<br />

the project folder by typing:<br />

cd BPV_Project<br />

Inside this folder you will find the file BPV_scale_filtered_windowed.vol and another<br />

folder InputData containing three sample micrographs in .mrc format. You can take a<br />

look of one micrograph as follows (See Fig 2):<br />

xmipp_showj InputData/BPV_1386.mrc<br />

To create the project and launch the main GUI you should type:<br />

xmipp_protocols<br />

After this you will be asked to confirm project creation:<br />

You are in directory: /gpfs/fs1/home/bioinfo/jvargas/BPV Do you want<br />

to CREATE a NEW PROJECT in this folder? [Y/n] Y<br />

Figure 2: Visualization of an input micrograph.<br />

9


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Just type y, and the GUI main window will be launched (see Fig.3). The left panel contains<br />

different protocols grouped in categories. Clicking on a group will display a menu with protocols<br />

that can be selected to launch the corresponding GUI. You can see more about protocols GUI<br />

here .<br />

Figure 3: <strong>Xmipp</strong> protocols main GUI.<br />

2.2 Preprocessing<br />

• Import Micrographs<br />

The first step for obtaining the 3D reconstruction is to import our micrographs to our <strong>Xmipp</strong><br />

project. To import the images press first on Micrographs button and then on Import<br />

Micrographs. After doing this, we will see the Import Micrographs GUI Fig. 4<br />

Modify the parameters of the Import Micrographs according to the ones shown in Fig.<br />

4. In the ’Micrographs directory’ you must indicate the folder where your micrograph files are<br />

stored. In ’Files to process’ the micrographs to process (if we use *.mrc, we are saying that we<br />

want to process all micrographs of type .mrc inside the folder InputData). Note that the icon<br />

permits detecting the files to process automatically. You can use a job queuing system if desired.<br />

This is useful on many large computer clusters, but if you are working on your own computer<br />

you will probably not have a queueing system. When you have completed the form, click on<br />

the Save & Execute button. After executing the protocol, it will appear in the main <strong>Xmipp</strong><br />

GUI the following new information Fig. 5.<br />

If we press in the Analyze results button it will appear a new pop-up GUI that shows<br />

us the different imported micrographs Fig. 6<br />

10


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 4: <strong>Xmipp</strong> Import Micrographs GUI<br />

Figure 5: <strong>Xmipp</strong> GUI after processing Import Micrograph protocol<br />

11


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 6: Imported micrographs in the <strong>Xmipp</strong> project<br />

Figure 7: Visualization of <strong>Xmipp</strong> logs and stderr and stdout outputs.<br />

We also can view the logs, outputs and errors of the different <strong>Xmipp</strong> programs launched by<br />

the protocol pressing on the Output Files button Fig. 7<br />

12


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

• Screen Micrographs<br />

After importing the micrographs to your <strong>Xmipp</strong> project, you can perform the next processing<br />

step that consists in Screen Micrographs (Micrographs-> Screen Micrographs).<br />

This protocol is responsible of the CTF estimation process. In order to estimate the CTF, we<br />

will need some parameters describing the frequency region to be analyzed. The parameters<br />

shown in Fig. 8 are the adequate ones for this experiment.<br />

Figure 8: <strong>Xmipp</strong> Screen Micrographs GUI<br />

When the protocol finishes, you will have the CTF estimation results and you can observe the<br />

aberrations that occur in the microscope during image formation. This may be useful in order to<br />

discard bad micrographs.<br />

To observe the results of the CTF estimation press the Analyse Results button. This<br />

will launch a window as shown in Figs. 9 and 10.<br />

The CTFs of good micrographs typically have multiple concentric rings, extending from the<br />

image center towards its edges. Bad micrographs may lack rings or have very few rings that<br />

Figure 9: Output visualization of <strong>Xmipp</strong> Screen Micrographs protocol that shows the CTF of all the<br />

micrographs and different parameters.<br />

13


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 10: The CTF and PSD profiles can be computed for any angle. Open this window by clicking<br />

with the right-click button in Fig. 9 and choose “Show CTF profile”.<br />

hardly extend from the image center. A reason to discard micrographs may be the presence of<br />

strongly asymmetric rings (astigmatism) or rings that fade in a particular direction (drift), see<br />

Fig.11. You can see from Fig. 9 that the all the CTFs of this demo are from micrographs of good<br />

quality, so we do not need to discard any of them.<br />

Sometimes, the CTF estimation algorithm may fail to find the rings even if they can be seen<br />

by eye. If this is the case, you may help the algorithm to find the rings by clicking with the<br />

mouse right button and pressing “Recompute CTF” in the corresponding row of the Output<br />

visualization of <strong>Xmipp</strong> Screen Micrographs protocol (Fig. 9). A graphical interface will help<br />

you to correctly identify the CTF Fig.12. In this GUI you must provide the first CTF zero and<br />

press Recalculate CTF button.<br />

• Downsample Micrographs<br />

If you want to perform a downsampling of your micrographs press Micrographs-> Downsampling<br />

Figure 11: CTF of good, astigmatic and drift micrographs<br />

14


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 12: Recompute CTF GUI<br />

Micrographs. A GUI as the one shown in Fig. 13 will appear.<br />

Note that we have set in this demo a downsampling factor of 5, which would be too large for<br />

an experimental case, but it will reduce the processing time in further steps. A new directory<br />

inside the <strong>Xmipp</strong> Project folder has been created called Micrographs. Inside this directory<br />

there are three new folders named Imported, Downsampled and Screen, where the data<br />

and metadata of the different protocol runs are stored. You may browse the project data with<br />

Figure 13: Downsample micrographs interface.<br />

15


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 14: You may use <strong>Xmipp</strong> Browser to navigate in the project data.<br />

<strong>Xmipp</strong> Browser (see Fig. 14).<br />

2.3 <strong>Particle</strong> Picking<br />

Now we are ready to pick the particles. Click in <strong>Particle</strong> picking->Manual/Supervised<br />

Picking button. This will launch a window as shown in Fig. 15. Then, press Save &<br />

Execute, and a window as shown in Fig. 16 will appear. Select a ’Size’ of 110 and disable the<br />

’Rectangle’ option.<br />

In order to select particles:<br />

Figure 15: Manual/Supervised Picking GUI<br />

16


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 16: GUI for <strong>Xmipp</strong> Manual <strong>Particle</strong> Picking<br />

• Use Shift+Middle Mouse Button in the overview window to Zoom-in and Zoomout.<br />

• Mark particles with the left mouse button in the zoom windows. You may move its position<br />

by clicking the left mouse button on the selected particle and drag it to the new<br />

position.<br />

• Use Shift+Left Mouse Button over a selected particle in order to remove it.<br />

• You can apply filters to the micrographs, so that you may see the particles better. Filters<br />

are added into a queue, so whenever you change the visualized area, they are applied<br />

again. Select the menu filter in the overview window and add as many filters as you like.<br />

You can clean the filter queue, if you want to return to the original image.<br />

• Don’t forget to save the coords before you exit.<br />

We are going to perform an automatic picking. For doing so, we have to train the particle<br />

picking algorithm by manually picking some particles. Pick manually a region of the micrograph<br />

as shown in Fig. 17. The program asks you if you have picked all the particles in the yellow<br />

region because it understands that whatever you have not picked, it is not a particle. Thus, the<br />

algorithm learns what is a particle and what is not a particle. Once you have picked all particles<br />

within a region, press “Yes” and the automatic picking algorithm will automatically pick the rest<br />

of the micrograph. The automatic picking will look like 18. Now you can remove the particles in<br />

bad areas or wrongly picked particles (choose the Eraser and remove the particles; alternatively,<br />

press shift and left-click on the bad particles). Move to the next micrograph, once you are done<br />

with the current one.<br />

17


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 17: GUI for <strong>Xmipp</strong> Manual <strong>Particle</strong> Picking after picking a small region<br />

Figure 18: Results after picking<br />

18


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

2.4 <strong>Particle</strong>s<br />

Close the Automatic Picking GUI, and click on <strong>Particle</strong>s->Extract <strong>Particle</strong>s<br />

button. This will launch the GUI of the next protocol that will allow you to extract, normalize<br />

and correct the CTF-phase of your picked particles, among other processes. Modify the parameters<br />

of the Extract <strong>Particle</strong> Protocol according to the parameters shown in Fig.<br />

19.<br />

1. The protocol extracts the particles from the micrographs using the coordinates determined<br />

in the previous step (particle picking). You must indicate the name of the coordinate<br />

family (by default DefaultFamily) and the <strong>Particle</strong> Box size in pixels (in this case 110 px).<br />

2. If the Normalize flag is set to Yes (recommended), the particles are normalized to have<br />

zero mean and a standard deviation of unity for the background pixels.<br />

3. If the Phase flipping is set to Yes (recommended), the protocol corrects the CTF-phase of<br />

your particles.<br />

4. If the Invert contrast is set to Yes then bright regions become dark regions and the opposite.<br />

This flag should be set so that the extracted particles are white over a dark background.<br />

Figure 19: GUI of Extract <strong>Particle</strong>s protocol<br />

19


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 20: Analyze results window of <strong>Xmipp</strong> Extract <strong>Particle</strong> protocols. On the left we show the different<br />

extracted particles, and on the right we show the Zscore result.<br />

The protocol also sorts the particles based on general statistics assigning to each particle a Zscore<br />

value. <strong>Particle</strong>s with low Zscore are reliable and the ones with large Zscore are outliers. Press<br />

Save & Execute in Fig. 19 and then Analyse Results button in the main <strong>Xmipp</strong> GUI<br />

to check the extracted and normalized images (see Fig. 20).<br />

If we want to disable some particles because they are outliers, click on the icon and<br />

then click in the menu bar Display->Render images. A GUI as the one shown in Fig.<br />

21, will appear. Note that you can sort the particles taking into account their Zscore. To disable<br />

a particle press Right button on it and select Disable. In our case, the particles are suffient<br />

good and we are not goint to disable any particle.<br />

We can perform some additional preprocessing steps to the extracted particles. For doing<br />

that, click on <strong>Particle</strong>s->Other->Preprocess <strong>Particle</strong>s and change the default<br />

values to the ones shown in Fig. 22. In this protocol, we have just used the applied a bandpass<br />

filter.<br />

Figure 21: Analyse results window of <strong>Xmipp</strong> Extract <strong>Particle</strong> protocols.<br />

20


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Observe that this protocol has created a directory called Images/ in the projectdir.<br />

Figure 22: <strong>Xmipp</strong> Preprocess <strong>Particle</strong>s protocols.<br />

21


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

2.5 Align+Classify<br />

Now, we want to combine the information contained in all our (very noisy) particles to create<br />

an average image with high signal to noise ratio. However, we only can combine images that<br />

are similar. That is, particles that represent different projection directions or that are projections<br />

from different 3D objects must be separated from each other before averaging. In order to solve<br />

this problem, several 2D-classification tools have been developed in <strong>Xmipp</strong>. We are going to use<br />

the CL2D classification method (Sorzano et al., 2010). In order to launch the CL2D classification<br />

protocol click on Align+Classify->CL2D and set the parameters as the ones shown in Fig.<br />

23 (use the dataset Default_family from Images/Extracted/run_001).<br />

In Fig. 24 we show the eight classes obtained<br />

We may assign all of them to a single group: choose all class representatives, right-click<br />

and save the associated images, seen Fig. 25). We recommend to save the group in the same<br />

classification directory (in this case CL2D/run_001/extra/level_02) under a name of<br />

the form “images_*.xmd” (for instance, images_selection.xmd).<br />

Figure 23: <strong>Xmipp</strong> CL2D protocol parameters.<br />

22


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 24: <strong>Xmipp</strong> classes obtained by the CL2D protocol.<br />

Figure 25: Save class after classification.<br />

2.6 Initial model<br />

We need now to construct an initial 3D model for this structure. You may have a previous<br />

volume from other studies. If not, you may try to construct it from scratch. In this tutorial we<br />

will use RANSAC to construct the model. RANSAC takes a set of images (preferrably classes<br />

23


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 26: Parameters for RANSAC.<br />

since they are a summary of the dataset), randomly assigns angles to a subset of them, make a<br />

3D reconstruction and check whether it is a good volume or not by comparing it to the rest of<br />

images.<br />

The idea is to take very few classes to assign the random angles. To have a good angular<br />

coverage, we perform a dimensionality reduction and take samples wisely in the projected space.<br />

In this case, we have very few classes to perform the dimensionality reduction. So we will<br />

directly take only 4 classes in the subset. Fill the parameters as in Fig. 26. It takes subsets of<br />

4 images. It assigns random angles to the 4 and reconstruct a volume. Then, it compares this<br />

volume to the rest of the classes. A class is said to be an inlier if its correlation is larger than 0.5<br />

(one of the parameters in the form). This process is repeated 100 times. The best 5 volumes are<br />

refined using projection matching with 5 iterations.<br />

2.7 Projection Matching<br />

As you have already noted, having the right angles of each projection is crucial for making a 3D<br />

reconstruction. However, in 3DEM you don’t know a priori the angles and you have to estimate<br />

them as part of the problem. The most popular way of estimating them is by comparing somehow<br />

the projections of a volume that is similar to the volume to be reconstructed (initial model) with<br />

the images obtained from the microscope. A possible approach consists in generating equidistant<br />

projections from the initial model. The experimental data set is then compared (for example, by<br />

cross correlation) to each reference projection. A “similarity” coefficient (for example, cross-<br />

24


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 27: <strong>Xmipp</strong> Projection Matching protocol parameters I.<br />

correlation coefficient) is generated between each experimental particle and reference projection.<br />

Each individual experimental particle is matched to the reference projection that gave the highest<br />

“similarity” coefficient. Therefore, it is assumed that this experimental particle was projected<br />

with the same Euler angles as the reference projection. Normally RANSAC provides reasonable<br />

initial volumes. In this case, we can take any of the RANSAC volumes as the initial model.<br />

In order to lauch the projection matching protocol click on Model Refinement->Projection<br />

Matching and set the parameters as the ones shown in Figures 27, 28 and 29 and press Save<br />

& Execute button. (Choose the set of images saved before and obtained after the preprocess<br />

particles step).<br />

Finally, in order to visualize the obtained results click on Analyze Results button. You<br />

will see a GUI as the one shown in Fig. 30<br />

Press on in the field ’Display reconstructed volume’ and you will see the reconstructed<br />

volume, that it is shown in Fig. 31.<br />

Probably, you are interested in visualizing your volumen using advanced visualizing and analysis<br />

packages as Chimera chimera.. If you have installed Chimera, you can visualize your reconstructed<br />

volume using it (Fig. 32) either by opening the output directory and right-clicking<br />

or by using the Analyze results menu.<br />

25


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 28: <strong>Xmipp</strong> Projection Matching protocol parameters II.<br />

26


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 29: <strong>Xmipp</strong> Projection Matching protocol parameters III.<br />

27


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 30: <strong>Xmipp</strong> Projection Matching results GUI.<br />

Figure 31: Slices views of the reconstructed volume.<br />

28


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 32: Visualization with Chimera of the reconstructed volume.<br />

3 Concluding remarks<br />

Summarizing, the steps we have followed to perform this 3D reconstruction have been (see Fig.<br />

33):<br />

• At the micrograph level:<br />

– Importing the micrographs to let <strong>Xmipp</strong> know of them.<br />

– Screening them to check out their quality.<br />

– Downsampling them (just for making this tutorial amenable to small computers).<br />

• At the particle level:<br />

– Manual, supervised and automatic particle picking.<br />

– Extracting the particles, inverting their contrast and normalizing them.<br />

– Screening the particles to detect wrongly detected particles.<br />

• At the 2D analysis level:<br />

– Exploratory analysis to detect major trends (and outliers).<br />

• At the 3D analysis level:<br />

– 3D Refinement of an initial model<br />

This workflow is rather common in all single-particle analysis. The main two variations on<br />

this structure is in the 2D analysis (using different algorithms), and how to build the initial<br />

structure (in this example we started from a low-pass filtered icosahedral virus). However, these<br />

two variations do not substantially change the reconstruction workflow. Something different is<br />

analyzing the 3D heterogeneity. This topic is covered in a different tutorial.<br />

29


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

Figure 33: Image processing workflow followed in this example<br />

Finally, please, remember that our funding depends on your citations to our work. Therefore,<br />

if <strong>Xmipp</strong> has been useful in your research, please, cite our papers. A detailed list of relevant<br />

references may be found on the <strong>Xmipp</strong> Wiki ListOfReferences.<br />

Have fun!!<br />

The <strong>Xmipp</strong> team<br />

References<br />

De la Rosa-Trevín, J. M., Otón, J., Marabini, R., Zaldívar-Peraza, A., Vargas, J., Carazo, J. M.,<br />

and Sorzano, C. O. S. (2013). <strong>Xmipp</strong> 3.0: one step forward in scientific computing for electron<br />

microscopy. 184:321–328.<br />

Marabini, R., Masegosa, I. M., M. C. San Martín, S. M., Fernández, J. J., L. G. de la Fraga, C. V.,<br />

and Carazo, J. M. (1996). <strong>Xmipp</strong>: An image processing package for electron microscopy. J.<br />

Struct. Biol., 116:237–240.<br />

Scheres, S. H. W., Nunez, R.nez-Ramírez, R., Sorzano, C. O. S., Carazo, J. M., and Marabini, R.<br />

30


<strong>Xmipp</strong> Documentation<br />

SPA <strong>Tutorial</strong><br />

(2008). Image processing for electron microscopy single-particle analysis using xmipp. Nat<br />

Protoc, 3(6):977–990.<br />

Sorzano, C. O. S., Bilbao-Castro, J. R., Shkolnisky, Y., Alcorlo, M., Melero, R., Caffarena-<br />

Fernández, G., Li, M., Xu, G., Marabini, R., and Carazo, J. M. (2010). A clustering approach<br />

to multireference alignment of single-particle projections in electron microscopy. J Struct<br />

Biol, 171(2):197–206.<br />

Sorzano, C. O. S., Jonic, S., Cottevieille, M., Larquet, E., Boisset, N., and Marco, S. (2007). 3d<br />

electron microscopy of biological nanomachines: principles and applications. Eur Biophys J,<br />

36(8):995–1013.<br />

Sorzano, C. O. S., Marabini, R., Carazo, J. M., Velázquez-Muriel, J., Bilbao-Castro, J. R.,<br />

Fernández, J. J., and Pascual-Montano, A. (2004). <strong>Xmipp</strong>: A new generation of the opensource<br />

image processing package for electron microscopy. J. Struct. Biol., 148:194–204.<br />

Wolf, M., Garcea, R. L., Grigorieff, N., and Harrison, S. C. (2010). Subunit interactions in<br />

bovine papillomavirus. Proc Natl Acad Sci U S A, 107(14):6298–6303.<br />

31

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!