Skip to content

Microtubule

Example 2: HeLa microtubule

In this example we used Warp, AreTomo3, easymode, Relion5, and M to reconstruct, denoise, segment, pick, and average microtubules in HeLa cells

Dataset and computational resources

For this test we used 621 tilt series of FIB-milled HeLa cells which we collected ourselves. They are not yet available online but hopefully will be soon.
We used 4 NVIDIA RTX 4090 GPUs for most processing steps.

At the onset the data in this example consisted of just tilt series and mdocs (we did not use the gain references). Pixel size was 1.56 Å/px, dose 4.6 e-/Ų per tilt (150 e-/A² total), dose-symmetric tilt series of ±45° with 3° increments.

project_root/
├── frames/        # 621 x 31 =  19282 .tif files
│   ├── 250531_l1p1_001_-10.0_20250531_093402.tif
│   ├── 250531_l1p1_001_-7.0_20250531_093438.tif
│   └── ... 
└── mdocs/         # 621 .mdoc files
    ├── 250531_l1p1.mdoc
    ├── 250531_l1p1_2.mdoc
    └── ...

Step 1: tomogram reconstruction

easymode reconstruct --frames frames --mdocs mdocs --apix 1.56 --dose 4.6 --no_halfmaps
We now have 621 reconstructed tomograms at 10.00 Å/px in warp_tiltseries/reconstruction/.

Step 2: tomogram denoising

easymode denoise --data warp_tiltseries/reconstruction --output warp_tiltseries/reconstruction/denoised --mode direct --method n2n --gpu 0,1,2,3
This produced 621 denoised tomograms in warp_tiltseries/reconstruction/denoised/.

Step 3: microtubule segmentation

easymode segment microtubule --data warp_tiltseries/reconstruction/denoised --output segmented --gpu 0,1,2,3
Subtomogram averaging (STA) of microtubules is a bit more involved than averaging ribosomes. First, the number of protofilaments within a single microtubule is variable, and can change along its length. Second, microtubules are polar filaments, but the polarity is difficult to identify prior to performing any averaging; averaging microtubule segments without a strong prior on the orientation tpyically results in an average of mixed polarity, which precludes achieving high resolution. We therefore performed per-filament STA first, before assigning polarity to and pooling all 13-protofilament particles for global averaging. The first step is to pick particles on a per-filament basis.

Step 4: vectorizing microtubule instances & generating coordinates

easymode pick microtubule --data segmented --output vectors/microtubule --length 1000 --spacing 200 --per_filament
This created 699 star files, one per detected microtubule, listing coordinates with priors on the particle orientation based on the tangent to the filament. We then ran 250 separate WarpTools particle extraction and Relion5 Refine3D jobs for the 250 longest microtubules, and inspected the resulting averages to identify the number of protofilaments and polarity (relative to the reference 60 Å low-passed microtubule map) of each microtubule. This was a bit painful.

We then pooled all particles found in filaments that clearly had 13 protofilaments and a consistent polarity (rotating the angles by 180 degrees for those particles that were inverted relative to the reference). This yielded ~3800 particles, which were roughly aligned. We exported these at 5 Å/px using WarpTools ts_export_particles, ran a Relion5 Refine3D job which quickly reached ~10 Å resolution.

Finally, we used ChimeraX and the 10 Å average to position 13 cropped alpha beta tubulin monomers in the map, sampled the translation and orientation of each monomer relative to the center of the full map, applied the resulting transformation matrices to the .star file (generating 13 new particles for each original 1 particle), and ran refinement in M. This reached 4.6 Å.

Microtubule average obtained using easymode-detected filaments

Note

It should be possible, even relatively straightforward, to average all particles at once rather than doing per-filament subtomogram averaging first. For instance, running a single Relion5 Refine3D job with 30° of freedom around the prior gives a well aligned mixed-polarity average. Next, a 3D classification with 2 classes works well to separate the two polarities (especially when enforcing a C13 symmetry - which is not good for final averaging, but does help to accentuate the polarity in the microtubule cross-sections). Finally, correcting for the opposing polarities and pooling both classes should allow for averaging to decent resolution; we got to 8 Å this way in M but then got stuck. Perhaps another round of classification, using 12-, 13-, and 14-protofilament references, would have helped to sort out the particles at that point; but by then we had already had more success with the somewhat awkward per-filament averaging approach.