TxBR is developed on top of the IMOD utilities. At this time, it does not offer any fiducial tracking options and it loosely follows the eTomo reconstruction scheme. In the following, we assume the user familiar with its process.

TxBR in one command line

Running TxBR on single and multiple tilt series

As a starting point for reconstructing volumes, three files need to be provided for each series: the preali files, the fid files and the rawtlt files [files containing the tilt angles] (cf IMOD). For instance, if we have two series called basenamea and basenameb, a total of six files should be accessible to the TxBR calculations: basenamea.preali, basenamea.fid, basenamea.rawtlt, basenamea.preali, basenamea.fid and basenamea.rawtlt.

To run the TxBR reconstruction for one series, here basenamea, just type the command line:

runtxbr.py -b basenamea

For reconstructing a volume from mutiple tilt series, a comma separated list of the basenames has to be provided to the runtxbr.py script; for instance in case of a dual tilt series, one should type:

runtxbr.py -b basenamea,basenameb

It is very important to note that because TxBR jointly process multiple series, the fiducial files of all the distinct series are related. The marker list should be the same in all the .fid files, even though one fiducial marker might be not visible in a certain series.

Alignment of the micrographs, reorientation of the specimen volume, filtering, backprojection and series combination will then follows in an automatic sequence; at the end, the final volume will be displayed in an IMOD windows.

Miscelleanous options

Different options are available for all the TxBR scripts. For a list of the options available to the runtxbr.py script, type

runtxbr.py --help

In particular, to start taking into account of the electron beam curvilinearity, you can set the n2 flag to an integer value higher than 1 (default value for a projective model); in practice, do not set a value larger than 6 for n2.

You can find a test dataset of a Flock House virus study in the examples/data folder of the TxBR directory. It is also directly available for dowload. Files needed to reconstruct the volume from a dual tilt series with TxBR are included in the tar file fhv6.tar.gz. A triple tilt series dataset of a Caulobacter Crescentus specimen is also available for download.

Running TxBR step by step

Fig.1: Tilt Series a.

Sometimes, in difficult cases, it is convenient to run the basic reconstruction steps manually, one at a time; those are alignment, filtration and backprojection. Benefits are two-fold: help finding a better suited approximation for the micrograph alignment; help troubleshooting a problem within the input files (in particular the fiducial files).

In the following, we illustrate those core steps with processing the fhv6 sample case, the dual tilt series dataset. On the right, micrographs of series a are displayed while specimen is rotating; green dots represent the fiducial markers (gold beads) spread on the specimen at sample preparation. Rotation axis appears here vertical.

Micrograph Alignment

Alignment of the electron micrographs in TxBR is based on a bundle adjustment technique [1]. In short, the 3D positions of the fiducial markers used during tracing are determined at the same time as the projection map, by just minimizing a reprojection error χ.

Given x τ,θ the projections of marker τ onto a micrograph θ, the bundle adjustment consists in minimizing the following quantity

relatively to X τ and the coefficients of P θ, which are respectively the 3D position of marker τ and the projection that sets correspondence between a point in the specimen and a point in micrograph θ. It is important to note that there is a gauge ambiguity problem; multiple solutions for X τ and P θ are possible because those two sets of variables only appear in χ in the form P θ(X τ). Let's note at this point that we can choose a specific solution to enforce flatteness on a specimen.

To run the alignment for the fhv6 dataset, just type the following command:

txbr_align.py -b fhv6a,fhv6b

The TxBR program will then collect information about the specimen orientation and the micrograph marker traces respectively from the rawtlt and the fiducial files. Starting from an initial estimate of the 3D position of the markers, the reprojection error is minimized with respect to both projection map coefficients and marker locations. When minimization is reached, the gauge ambiguity is usually raised by choosing the projection map the closest to its orthogonal solution.

With appending the --doPlot flag, graphs displaying information about the alignment procedure will pop up. Below, some of those graphs one obtained for the fhv6 dataset.

Figure 2 and figure 3 display the square distance error between the marker traces and their re-projections, respectively as a function of the tilt index and the marker (patch) index, after the optimization has been finalized. Note that the tilt index list contains micrographs of all the series used for reconstruction. In our Flock House Virus example, both series a and b contain 63 micrographs for different sample orientation; the overall tilt index list ranges therefore from 1 to 126 [series a: 1-63; series b: 64-126].

Fig.2: Square Distance Error by Tilt

Fig.3: Square Distance Error by Fiducial Marker

 

The square distance error by tilt (figure 2) or by fiducial marker (figure 3) can provide very meaningful information concerning the accuracy of the input files, notably the tracking of the markers. If, in Figure 3, a relatively huge pick was present at a certain patch index, a mistake would probably have been made while tracking this particular marker. It is then possible either to remove the marker from all the fiducial files or to correct for the inaccuracies. Finally, note the presence of the slight discontinuity in figure 2 when switching from series a to series b. This effect is always happening when dealing with multiple tilt series.

 

Fig.4: Square Distance Error

Fig.5: Reprojection (red) of the fiducial markers (green)

 

TxBR also offers the possibility of monitoring the reprojection error in a more atomic way: by tilt and by marker. In (figure 4), the error is plotted versus the tilt index for each marker. In (figure 5), the experimental traces (green points) on the CCD camera (defined by a x-y frame) are plotted together with the estimated reprojection from the bundle adjustment procedure (red cross); it clearly appears that the error is in the subpixel domain as it is not possible to distinguish a mark from its reprojection.

Fig.6: 3D locations of the fiducial markers.

Once the minimization of χ is achieved — a non-linear conjugated gradient algorithm is used to this purpose — the positions X τ for the gold markers within the specimen become accessible. In figure 6, a simple animation illustrates the results we obtained for the fhv6 dataset. Note how the bundle adjustment algorithm was able to dissociate gold particles that belong to the two different specimen boundaries.

In the first order approximation (n2=1), the mean reprojection distance error for the dual tilt series fhv6 is around 0.68 pixel. When run indepently for each tilt series, it is 0.16 pixel for series a and 0.31 pixel for series b.

Knowledge of the projection map P θ presents more interest since it will enable us to implement the backprojection and obtain the final volume. Different model can be used for the projection map. In its simplest form, P θ can be chosen as an affine map:


To account for electron beam curvinilearity, higher order terms need to be included in expression of P θ.

During alignment, the TxBR code will display the affine map coefficients for P θ whatever its approximation order (value of n2). In figure 7, variations of the translation coefficients t1 and t2 , the x-linear coefficients g11 , g12 and g13 and the y-linear coefficients g21 , g22 and g23 versus the tilt angle θ are displayed, respectively from left to right. The dots represent the ideal values for these coefficients, when projection map are simply evaluated with rigid transformations — tranlations/rotations — and using the experimental tilt angle values (values that are fed into the specimen stage and collected in the rawtlt file). Plain lines represent the bundle adjustment predictions for those coefficients.

Fig 7. Projection map coefficients.

Let's note that describing the projection map P θ with simple affine transformations is already sufficient to account for eventual electron microscope magnification changes, as well as some other basic linear sample distortions. However, when the number of gold markers is low or when their spatial distribution is non-uniform, it can be difficult, given the poor tracking information, to determine accurately the six unknown variables per tilt of a simple affine map P θ. This is often the case when fiducial markers are only located on one side of the specimen.

A possible remedy to this problem is to impose additional constraints during minimization. In the orthogonal approximation [2], we assume that the projection map expresses only with rigid transformations:

with

 

 

During the optimization process, three variables θθθ) per tilt θ — instead of the six gij θ — need now to be determined in the linear part of the projection map. The orthogonal approximation does not describe very well changes in magnification nor sample deformations; however it offers a more robust alignment scheme than the general approximation when the spatial distribution of the markers is poor.

To use the orthogonal approximation within TxBR, just add the --ortho flag in the txbr_align.py script call, like the following:

txbr_align.py -b fhv6a,fhv6b --ortho

In the case of dual tilt series dataset fhv6 for the for the Flock House virus study, the mean reprojection distance error in the orthogonal approximation is 0.75 pixel, understandably a little higher than in the pure affine case. A plot showing the variations of the orthogonal parameters versus the tilt index will pop up; it is displayed in figure 8 with n2=1.

Fig 8. Orthogonal coefficients.

As mentioned above, electron beam curvilinearity can be included progressively in the scheme by increasing parameter n2 from its default value (n2=1). A non-linear contribution Sθ to the projection map is then added:

Sθ is a polynomial function of X1 , X2 and X3 , the three coordinates of a point in the space. It is important to keep in mind that the projection map are determined by the distribution of markers on the specimen. The higher the order, the higher the number of markers is needed, see ref [3].

When correspondences between the 3D biological specimen and its projections onto a micrograph are evaluated individually for each tilt index, we are in the multiple beam approximation (left side of figure 9). This approximation is flexible enough to describe variations in the electron beam (change of focus, possible drift...) while the tilt series is acquired. In the case of a plastic section for which gold markers remain on the boundary surfaces, the large internal zone free of markers in the specimen does generally not offer enough information for an accurate evaluation of the generalized projection maps, especially for high value of n2 . In that case n2>2, a more appropriate hypothesis is the constant beam approximation (right side of figure 9), where the beam parameters are supposed to remain constant across the tilt series while the specimen rotates (see ref[2]).

Fig. 9 Multiple versus Constant beam approximation.

To run the TxBR alignment in the multiple approximation, a --multiple flag needs to be specified:

txbr_align.py -b fhv6a,fhv6b --n2 2 --multiple

Multiple and constant beam approximation are equivalent for order 1 (n2=1) when electron beams are supposed to travel along straight lines.

For the the dual tilt series fhv6 and with n2=2, the mean reprojection distance error is 0.6 pixel and 0.15 pixel, respectively in the multiple and constant beam approximation.

As we mentioned earlier, multiple solutions for Xτ and Pθ can be obtained during the bundle adjustment. Indeed if Xτ and Pθ is a minimum solution for χ, then for any invertible 3D transformation T, the transformed set T -1(Xτ ) and T(Pθ) is also minimizing χ. A realistic choice for Xτ and Pθ is to pick up the closest solution to the orthogonal case. This can be achieved from a geometrical point of view, with what we call the ellipse method [2]. For each plane perpendicular to the tilt axis, the family of rays hitting the camera edges should be enveloping a circle. Making sure this latter is not elliptic (with an aspect ratio ≠ 1) with an appropriate choice of transformation T can raise this gauge ambiguity. Furthermore, one can extract from this method refined informations about the tilt axis and rotation angles for the series; this can be used during the following step, the filtration step.

Let's finally note this idea can be extended further by choosing a solution that will enforce the reconstruction of a warped sample to be flat.

Results of the alignment step are stored in a configuration file. For the double tilt series fhv6[a,b], a file fhv6.txbr containing informations on the final projection map is created. This file will be used in the next two following steps, filtering and backprojection.

Filtering

Prior to the backprojection step, micrographs have to be sharpened. In the case of X-ray tomography, this is typically done by applying a Ram-Lak or a Shepp-Logan filter (see ref [4]).

For electron tomography, the situation is in its principle a little more complex (ref [3]); a practical approach consists in making use of the X-ray solution. At first, a remapping of the electron micrographs is performed so to mimic a straight ray case situation. Afterwards, one of the common X-ray filter (Ram-Lak/Shepp-Logan) is used, and finally the inverse remap is applied to the sharpened micrographs.

To run the filtering step by itself on the Flock House virus sample study, just type the following command:

txbr_filter.py -b fhv6a,fhv6b

For this step, the txbr file (generated in the previous alignment step) as well as the preali (or st) files are needed. Two MRC files called fhv6a.preali.SL and fhv6b.preali.SL (or fhv6a.st.SL and fhv6b.st.SL) will be generated, each containing the filtered micrographs for both series. In figure 10, the filtered output of the zero-tilt slice is displayed for both series fhv6[a,b].

Fig 10. Zero-tilt angle filtered micrograph for the two series fhv6a and fhv6b.

 

Backprojection

Once alignment and filtration completed, the backprojection step can be triggered; just type:

txbr_bckprj.py -b fhv6a,fhv6b

The volume will then be reconstructed block by block. Once this is done, one can merge the block together by running the following instruction:

txbr_bckprj.py -b fhv6a,fhv6b --finalize --doClean --doCombine

Here the --doCombine flag ensures all the different volumes of a multiple tilt series will be combined altogether in one single reconstruction; with specifying --doClean, the txbr_finalize.py program will remove from the hard drive the intermediate block files generated during the backprojection step. The final result is shown on figure 11.

Fig 11. The final reconstruction for the fhv6 dataset.

 

The name of the final MRC reconstruction file is a concatenation of the multiple tilt series basename (e. g. fhv6), followed by the Z index at which the reconstruction starts (e.g. z-50.0), and with the extension out. For our example here, this would be fhv6_z_-50.0.out.

One of the great strength of this reconstruction scheme, and particularly the bundle adjustment, is its capability to process seamlessly multiple tilt series. We refer to a caulobacter study for a triple tilt example and to a Flock House virus study for a triple tilt example.

Fig 12. Artefacts in multiple tilt series.

References

  1. B. Triggs, P. McLauchlan, R. Hartley, A. Fitzgibbon, Bundle adjustment – a modern synthesis, in: W. Triggs, A. Zisserman, R. Szeliski (Eds.), Vision Algorithms: Theory and Practice, LNCS, Springer Verlag, 1999, pp. 298--375.
  2. S. Phan, A. Lawrence, "Tomography of Large Format Electron Microscope Tilt Series: Image Alignment and Volume Reconstruction," Image and Signal Processing, Congress on, vol. 2, pp. 176-182, 2008 Congress on Image and Signal Processing, Vol. 2, 2008.
  3. A. Lawrence, J. Bouwer, G. Perkins, M. Ellisman, Transform-based backprojection for volume reconstruction of large format electron microscope tilt series. J. Struct. Biol. 2006;154:144--167.
  4. F. Natterer and F. Wübbeling. Mathematical Methods in Image Reconstruction (Monographs on Mathematical Modeling and Computation). SIAM: Society for Industrial and Applied Mathematics, 1st edition, December 2001.
  • No labels