Key words

1 Introduction

In cells, the precise localization of cargoes is important for cellular function. This process depends on the directed transport of these cargoes by microtubule-based motor proteins of the kinesin family and dynein. How this transport is directed is a multifaceted problem but fundamentally depends on the architecture of the microtubule network and the orientation of microtubules: if microtubules are oriented plus-end-out, plus-end-directed motor proteins such as kinesin-1 and kinesin-3 will drive outward transport, while minus-end-directed motor proteins such as dynein will drive inward transport; however, if the orientation of the microtubules is reversed, the opposite holds true. Thus, it is important to consider how microtubules are oriented in cells [1].

Multiple techniques have been developed to study the orientation of microtubules, especially in neurons, including hook decoration and EB comet tracking. These have revealed that the microtubules in axons are uniformly oriented plus-end-out [2], while those in dendrites are either uniformly minus-end-out, as is the case for D. melanogaster and C. elegans neurons [3, 4], or of mixed polarity, as in vertebrate neurons [2]. Recently, motor-PAINT was developed and used to further study the organization of the microtubule cytoskeleton in the dendrites of vertebrate neurons [5]. This revealed that there is local uniformity in microtubule orientation in the dendrites of vertebrate neurons; microtubules with their plus-end pointing inward are enriched centrally, while those that are oriented with their plus-end outward are enriched peripherally. Motor-PAINT has several advantages over other methods used to determine microtubule orientation. As it is a light microscopy-based technique, it has higher throughput, is easier to implement, and has a larger field of view than the electron microscopy-based hook decoration method. Additionally, it allows the orientation mapping of all microtubules, not just dynamic ones, unlike EB comet tracking. However, motor-PAINT in its current implementation is also limited in that it uses TIRF microscopy and thus only allows for orientation mapping of microtubules in (thin) cells within ~100 nm of the coverslip.

To overcome these limitations, here we use lattice light-sheet microscopy [6] (LLSM) to transform motor-PAINT into a more broadly applicable technique that can be used to map the organization and orientation of microtubule networks in cells with complex three-dimensional microtubule arrays across large volumes. LLSM is ideally suited for this because it is a widefield technique and thus allows fields of view to be imaged rapidly but uses selective plane illumination to reduce background fluorescence, which would be high in regular widefield microscopy due to diffusing motors. We here use a recently introduced commercial implementation for lattice light-sheet microscopy. In this system, various parameters such as the sample tilt, the focusing plane of the detection objective, and position of illumination sheet can be easily adjusted to accommodate variations in coverslip thickness and acquire the best possible LLSM images. By varying these parameters on a sample with point emitters, we discovered that these settings can also be optimized to establish a point-spread function that encodes the z-position of fluorophores within a light sheet through the introduction of astigmatism. As demonstrated in this chapter, this enables a true three-dimensional reconstruction of the cellular microtubule network and allows microtubule orientation to be determined in x, y, and z.

With an approximate in-plane resolution of 25 nm or 65 nm depending on the orientation relative to the plane of excitation, we believe this technique will be a powerful tool to study the organization of the microtubule cytoskeleton in a variety of cell types such as polarized cells in which the three-dimensional organization of the cytoskeleton is critical for their function, including airway epithelial cells, intestinal cells, and T cells. To demonstrate the protocol, we will here focus on T cells, as the three-dimensional architecture of their microtubule cytoskeleton is crucial for cellular function, but its organization is well understood [7, 8].

2 Materials

All chemicals were purchased from MilliporeSigma unless otherwise specified.

2.1 Protein Purification and Labeling

  1. 1.

    E. coli BL21DE3 competent bacteria.

  2. 2.

    Bacterial expression vector encoding IPTG-inducible GFP- or SNAP-tagged truncated kinesin. We use Drosophila melanogaster kinesin heavy chain 1–421 with a C-terminal GFP or SNAP tag and a 6xHis tag for purification available on addgene no. 196972 (DmKHC[1–421]-GFP-6xHis) or no. 196975 (DmKHC[1–421]-SNAP-6xHis). Note that ~5 ng of DNA is usually more than sufficient for transformation.

  3. 3.

    LB medium.

  4. 4.

    1 M isopropyl β-D-1-thiogalactopyranoside (IPTG) dissolved in MilliQ water.

  5. 5.

    Shaking incubator with heating and cooling functionalities (temperatures needed: 18°C and 37°C).

  6. 6.

    Probe tip sonicator (e.g., Soniprep 150) or other means to lyse bacterial cells.

  7. 7.

    Gravity flow column (e.g., Thermo Fisher Scientific 89898).

  8. 8.

    Sodium phosphate buffer: dissolve Sodium Phosphate Dibasic Heptahydrate and Sodium Phosphate Monobasic Monohydrate to 0.5 M. Combine ~100 mL of base and slowly add ~7–8 mL of acid until the pH is 8.0.

  9. 9.

    2 M imidazole dissolved in MilliQ water with pH adjusted to 8.00 using HCl.

  10. 10.

    cOmplete His-Tag purification resin (MilliporeSigma/Roche 5893682001).

  11. 11.

    Bottle top filter 0.22 μM (e.g., Thermo Fisher Scientific S2GPT02RE).

  12. 12.

    Buffer A: 50 mM sodium phosphate buffer (see above), 5 mM MgCl2, 5 mM imidazole, 10% glycerol, 300 mM NaCl in MilliQ water (do not add full amount yet). Check pH and adjust to 8.0 with NaOH. Add remaining MilliQ water needed. Filter and store at 4°C. Depending on the step, you will need to supplement this buffer (just before use) with either 0.5 mM ATP or 0.5 mM ATP and 1x cOmplete protease inhibitor (EDTA free; MilliporeSigma 11873580001). Keep on ice on day of use. Do not add any DTT in this buffer as this can strip the nickel off of your resin.

  13. 13.

    50 mg/mL lysozyme (MilliporeSigma 62971-10G-F) dissolved in buffer A.

  14. 14.

    Buffer B: Combine 50 mM sodium phosphate buffer (see above), 5 mM MgCl2, 200 mM imidazole, 10% glycerol, 300 mM NaCl in MilliQ water (do not add full amount yet). Check pH and adjust to 8.0 with NaOH. Add remaining MilliQ water needed. Filter and store at 4°C. Depending on the step, you will need to supplement this buffer (just before use) with 0.5 mM ATP. Keep on ice on day of use. Do not add any DTT in this buffer as this can strip the nickel off of your resin.

  15. 15.

    Janelia Fluor 646 dye: JF646-SNAP-tag ligand, Janelia Materials dissolved in DMSO to 1 mM. Note that another SNAP ligand dye will also work.

  16. 16.

    Molecular weight cutoff centrifugal filters (3 kDa; MilliporeSigma UFC900324).

  17. 17.

    Optional but recommended: Nanodrop and/or materials for a BSA standard SDS-PAGE gel.

2.2 Sample Preparation

  1. 1.

    Cells.

  2. 2.

    Coverslips – #1.5 high precision (18 mm VWR 0117580/630-2200 or 25 mm VWR 117650/630-2213).

  3. 3.

    BRAND 1-well cavity slides (BR475505).

  4. 4.

    Tweezers.

  5. 5.

    Ludin chamber, imaging ring, 6-well plate, or 12-well plate for sample preparation (choice depends on coverslip diameter).

  6. 6.

    Airfuge (Beckman Coulter) with appropriate rotor and centrifuge tubes. Note that if you do not have this available to you, it is still possible to perform this experiment, but you may have some extra aggregates.

  7. 7.

    BRB80: Combine 80 mM PIPES (add as a powder), 1 mM MgCl2, and 1 mM EGTA in MilliQ water. Adjust the pH to 6.80 (do not overshoot) and then add the remaining MilliQ water. Note that the PIPES will not dissolve until you add sufficient KOH to adjust the pH. Filter and store at 4°C shielded from light.

  8. 8.

    Permeabilization buffer: 0.45% Triton X-100 and 1 M sucrose (ensure it is fully dissolved!) in BRB80 (see above).

  9. 9.

    Fixation buffer: 2% paraformaldehyde (Thermo Fisher Scientific 28908; 1% once combined with extraction buffer) in BRB80 (see above).

  10. 10.

    Wash buffer: 1 μM Taxol (Enzo Life Sciences BML-T104-0005) in BRB80 (see above).

  11. 11.

    TetraSpeck beads (0.1 μm; Life Technologies T7279).

  12. 12.

    Imaging buffer: Combine 583 μg/mL catalase (MilliporeSigma C40-500MG), 41.7 μg/mL glucose oxidase (MilliporeSigma G2133-10KU), 1.7% w/v glucose (MilliporeSigma G7528-1KG), 1 mM DTT (Thermo Fisher Scientific R0861), 1 μM Taxol (Enzo Life Sciences BML-T104–0005), 5 mM ATP, 2 mM methyl viologen (MilliporeSigma 856177-1G), 2 mM ascorbic acid (MilliporeSigma A92902-100G), and ~1.5 nM purified motor (concentration will depend on cell type and number; add after warming buffer just before using) in BRB80 (see above). Prewarm to 37°C.

  13. 13.

    Two-component dental glue (Twinsil, Picodent).

2.3 Microscope and Data Analysis Setup

  1. 1.

    Zeiss lattice light-sheet 7 equipped with:

    1. (a)

      13.3x/ 0.4NA excitation lens, 44.83x /1.0 NA observation lens.

    2. (b)

      Emission notch filter 420–470, 503–546, 576–617, 656–750 nm.

    3. (c)

      Camera: pco.edge4.2 (Excelitas PCO), final pixel size 145 nm.

    4. (d)

      Lattice light-sheet 100 × 1800 (length [μm]×thickness [nm]).

    5. (e)

      488, 561, 640 nm excitation laser lines. In this protocol, we used only 640 nm laser with the power output of 8.9 mW (3.3 kW/cm2) (as specified by Zeiss) at the specified light sheet.

  2. 2.

    ZEN software v.3.6 for the acquisition control and images deskewing.

  3. 3.

    ZEN macro for automating acquisition.

  4. 4.

    FIJI (Fiji is just ImageJ v1.53q) equipped with the following plug-ins:

    1. (a)

      DoM (Detection of Molecules v.1.2.4, https://github.com/ekatrukha/DoM_Utrecht) software for particle detection, tracking, and image reconstruction.

    2. (b)

      FTM2 (Faster Temporal Median filter, https://github.com/HohlbeinLab/FTM2) used to filter out rapid moving (e.g., diffusing) and slow moving (e.g., stuck) motors from movies.

    3. (c)

      RegisterNDFFT (Registration of ND images using Fast Fourier Transform, v0.0.3, https://github.com/ekatrukha/RegisterNDFFT) software for averaging of images used here for finding an average PSF for z-calibration.

    4. (d)

      Correlescence (v.0.0.4) (https://github.com/ekatrukha/Correlescence) software for spatiotemporal correlation analysis used here for slice-to-slice drift correction.

  5. 5.

    Image processing FIJI macros for batch single-molecule detection, PSF extraction and averaging, super-resolution image reconstruction, and drift correction. These run the above plug-ins with pre-defined settings for each slice.

  6. 6.

    Final localization tables analysis and reconstruction scripts (in MATLAB or Python).

All plug-ins, macros, and scripts (together with example data) used in this protocol are available at https://doi.org/10.6084/m9.figshare.c.6244869

3 Methods

3.1 Protein Purification and Labeling

Once cells have been lysed, ensure the sample is always kept at 4°C or on ice. Some steps of this purification may need to be adjusted depending on your desired purity and yield (see Note 1).

  1. 1.

    Transform BL21 cells with your vector. Grow the bacteria sequentially in a 5 mL culture, 50 mL culture, and 1 L culture until OD600 ~ 0.7. Once the 1 L culture has reached the desired OD, cool the culture to <18°C.

  2. 2.

    Add 0.15 mM IPTG to induce protein expression and incubate culture at 18°C, 180 rpm for ~18 h (overnight).

  3. 3.

    Harvest the culture by transferring to centrifuge bottles and spinning at >4500 × g for 30 min.

    1. (a)

      If you wish to pause at this point in the protocol, you can resuspend the pellet in PBS, transfer it to a Falcon tube, spin down the bacteria again, remove the supernatant, and freeze the pellet in liquid nitrogen. If doing so, thaw the pellet at 37°C before proceeding.

  4. 4.

    Resuspend the cells in Buffer A. Use as little as possible. If you started with 1 L culture, use no more than 10 mL. If you started with 2–3 L, 15–20 mL usually works.

  5. 5.

    To lyse the cells, you can use any means available to you in the lab. We use a sonicator (Soniprep 150), but you can also use a French press. If you do not have dedicated equipment for this, you can also do several rounds of freeze-thaw (in liquid nitrogen and at 37°C, respectively).

    1. (a)

      If using a sonicator, perform several rounds of sonication interspersed with pauses to limit excessive heating of the sample (e.g., 5 × 30 s on, 30 s off). It also helps to keep your solution in a small ice bath while sonicating.

  6. 6.

    Add lysozyme to a final concentration of 2 mg/mL and incubate on ice for 30–60 min, until the solution is very viscous. You can check the viscosity and periodically mix the lysate using a cell scraper.

  7. 7.

    Clarify the lysate by centrifugation at 27000 × g for 30 min at 4°C.

  8. 8.

    Collect and pool the supernatant and pass through a 0.22 μm pore size polyethersulfone syringe tip filter. This helps to prevent column clogging. Note that not all filter membranes are suitable for filtering protein solutions, so check this beforehand if using a different membrane.

  9. 9.

    Equilibrate your resin. Transfer resin slurry to a Falcon tube, add 10 CV buffer A, spin at 500 × g for 3 min to pellet, and carefully remove buffer A by pipetting. Repeat once more with buffer A and then twice with buffer A + 0.5 mM ATP. Pellet beads again and remove buffer, but do not resuspend.

  10. 10.

    Add clarified, filtered cell lysate to the equilibrated resin. Seal the tube and rotate at 4°C for 1–2 h. If your sample is fluorescent (e.g., GFP-tagged), cover tube with aluminum foil to minimize bleaching.

  11. 11.

    Wash the resin. Spin at 500 × g for 3 min to pellet, carefully remove buffer A + 0.5 mM ATP by pipetting, and resuspend in buffer A + 0.5 mM ATP. Repeat three more times.

  12. 12.

    During this time, set up your gravity flow column and ensure the bottom is capped.

  13. 13.

    After the final resuspension, transfer the suspended resin to the gravity flow column and allow the resin to settle.

  14. 14.

    Allow buffer A + 0.5 mM ATP to elute. When only a thin layer of liquid remains above the resin, ensure your column is positioned over a clean collection tube and add buffer B + 0.5 mM ATP to elute your protein.

    1. (a)

      If your protein is not labeled, elute in >2 CV buffer B + 0.5 mM ATP. We typically use 5 CV.

  15. 15.

    Concentrate the sample and reduce imidazole concentration in the final sample using a molecular weight cutoff (MWCO) centrifugal filter. Use one with a MWCO of ~1/6 or less of that of the molecular weight of your protein for optimal retention. DmKHC-SNAP has a molecular weight of ~67.7 kDa. Load your eluent into the centrifugal filter and spin as per the instructions for the chosen filter until ~500 μL to 1 mL of liquid remains. Add 10 mL buffer A + 0.5 mM ATP and spin again until ~500 μL to 1 mL of liquid remains. Repeat once more, reducing the volume until you have the desired concentration (as estimated, e.g., with a Nanodrop).

    1. (a)

      If you wish to pause at this point in the protocol or are using GFP-tagged kinesin, supplement sample with 10% w/v sucrose and 1 mM DTT (Thermo Fisher Scientific R0861) and flash freeze the sample in liquid nitrogen. Store protein at −80°C.

  16. 16.

    To continue with labeling, add 2 mM DTT (or if sample has been already supplemented with sucrose and 1 mM DTT, add only 1 mM additional DTT) to the sample and incubate for 30 min at 4°C or on ice.

  17. 17.

    Add 50 μM dye to the sample and mix well. Incubate (shielded from light) at 4°C with rotation overnight.

  18. 18.

    Remove excess dye by using another MWCO filter, spinning as above and adding buffer A + 0.5 mM ATP + 2 mM DTT.

    1. (a)

      Note that JF646 is not fluorescent unless bound to a SNAP tag, so this step is optional, but we typically do it anyways as it allows you to exchange your protein into a buffer of lower imidazole concentration.

  19. 19.

    Supplement sample with 10% w/v sucrose (final buffer should be buffer A + 0.5 mM ATP + 2 mM DTT + 10% w/v sucrose), mix, aliquot, and flash freeze.

  20. 20.

    Determine protein concentration using a BSA standard gel.

3.2 Sample Preparation

For an overview of the steps, see Fig. 1. Pre-warm all buffers to 37°C.

  1. 1.

    Remove cell culture medium.

  2. 2.

    Add permeabilization buffer and incubate 1 min 15 s.

  3. 3.

    Without removing permeabilization buffer, add an equal volume of fixation buffer and pipette up and down gently for 1 min. It is best to do this with your pipette tip angled toward the outer edge of your chamber/well.

  4. 4.

    Remove permeabilization-fixation buffer.

  5. 5.

    Add wash buffer and incubate 1 min. Remove. Repeat two more times.

  6. 6.

    Add wash buffer with ~108 beads and incubate for 10 min at 37°C.

    1. (a)

      This is about a 1 in 1000 dilution of the beads we use.

    2. (b)

      Ensure that the beads are sonicated before use.

  7. 7.

    Remove wash/bead buffer and add imaging buffer. Keep the sample in the dark from this point on as much as possible.

    1. (a)

      Note that the amount of motor in your sample will need to be adjusted for each sample (see Note 2). This can be optimized by imaging your sample in a Ludin chamber or imaging ring instead of sealing it onto an indented slide. This way the sample is still accessible if Yes, you need to add more motor. To minimize sample acidification/oxidation, cover the imaging buffer with a thin layer of mineral oil (MilliporeSigma M5310-500ML) if imaging in this way (see Note 3).

  8. 8.

    Transfer coverslip onto an indented microscope slide (with 150 μL imaging buffer in indent) and gently press down on coverslip to remove excess buffer and seal on the coverslip.

  9. 9.

    Mix two-component dental clue in a one-to-one ratio (e.g., in a small weigh boat) and mix well with a pipette tip. Apply a thin layer around the edge of the coverslip to seal exposed edges using the pipette tip.

  10. 10.

    Incubate at 37°C for 5 min and check to ensure that glue has hardened. If not, incubate at 37°C for another 5 min.

    1. (a)

      If the glue has not hardened at this point, it is possible that the ratio was too inaccurate or, more likely, that some liquid remained on the outer surface of your coverslip.

Fig. 1
A work flow diagram for lattice light sheet motor paint. It includes permeabilizing membranes and fixing flows, washing and adding beads, removing floating beads and adding kinesin motors, P S F calibration, and image 4000 frames or slices.

Experimental workflow for lattice light-sheet motor-PAINT. After cells are seeded on the coverslip, their membranes are permeabilized with detergent before they are gently fixed using PFA. Cells are subsequently washed in a Taxol-containing buffer, and then beads are added and allowed to nonspecifically stick to the sample. Floating beads are removed, and the imaging buffer containing kinesin is added. Once mounted, this sample is imaged on the lattice light-sheet microscope. To do so, all imaging parameters need to be properly adjusted, and a PSF calibration scan must be acquired. Finally, the sample is imaged by acquiring a time series of 4000 frames at one position before advancing to the next position by increasing Y by 800 nm

3.3 Imaging

  1. 1.

    After focusing on the sample, choose the “Sinc3 100 × 1800” light sheet and perform a standard adjustment of the imaging parameters, that is, correction for the X and Y tilt of the coverslip, “Focus Sheet” and “Focus Waist.” Locate any cell to test acquisition settings (see Note 4). While the microscope comes with CO2, temperature, and humidity controls, we recommend keeping these turned off.

  2. 2.

    Unselect “Sample Scan” checkbox and select “Time Series” in the acquisition settings to acquire a timelapse at a single plane. Acquire a set of short timelapse (300–500 frames) recordings to ensure motors are walking and that the following acquisition parameters are properly adjusted (see Notes 2 and 5):

    1. (a)

      Exposure time: 60 ms. This can be adjusted in the range of 40–200 ms, depending on the walking speed of your motor, with 60 ms being a good starting point. Too short exposure times lead to a worse signal-to-noise ratio of single molecules, while long exposure times introduce a “smearing” effect of the walking motors.

    2. (b)

      Laser power: 100%. High laser power increases signal-to-noise ratio and introduces some photobleaching. The mild photobleaching is beneficial to remove images of stuck motors, while it does not affect the walking motors on the microtubules as they are replenished from the diffusing pool.

    3. (c)

      Number of frames per slice (cycles): 4000. The length of the acquisition depends on the density of the motors, accessibility of the microtubule lattice, and the speed of the motor. We recommend performing a set of single slice imaging trials with subsequent full analysis to ensure the quality of the microtubule network reconstructions. In case of sparse and disconnected microtubule segments, this parameter needs to be increased (see Note 6).

  3. 3.

    To induce astigmatism, adjust the “Aberration control” parameter in increments of 5 μm while scanning the stage around a position of some calibration bead (see Note 7). The goal here is to visually find a value that introduces astigmatic features to a point spread functions. This means that the image of the PSF should transition from being horizontally elongated to being vertically elongated as you scroll the stage through a bead. For #1.5 high precision coverslips of 170 μm, the parameter value is usually around 165–170 μm. Examples of acceptable astigmatic and non-astigmatic PSFs are illustrated in Fig. 2.

  4. 4.

    Navigating across the coverslip, find the final cell that will be imaged (see Note 4). Scan the stage along the cell and make sure that the volume around the cell contains at least five to six stand-alone beads that can later be used for PSF Z-calibration. Mark the limits of the scanning range and write down the minimum/maximum positions you will use, especially the range of Y stage scan. Choose the crop of camera imaging sensor, so it includes the whole volume of the cell with some margins around.

  5. 5.

    Acquire a PSF z-calibration scan of the beads. Remove “Time Series” checkbox and acquire a volumetric “Sample scan” with the stage displacement in Y set to 0.2 μm intervals/step. For this acquisition, we recommend extending the start and end scan positions of the stage beyond (~3–5 μm) the boundaries of the selected cell (i.e., beyond what you noted down in step 4 above) to include more beads. From this moment, it is important to keep all imaging/microscope parameters constant and preserve them for the following time series acquisitions. Save the acquired volume (PSF z-calibration) in a separate folder.

  6. 6.

    At this point, it is important to again unselect the “Sample Scan” checkbox in the acquisition settings and select “Time Series” with the “Number of frames per slice” determined in step 2 (e.g., 4000). Park the stage at the boundary of the cell that corresponds to the minimum value of the stage Y coordinate, since the following ZEN macro acquisitions of the cell volume will move the stage to increase Y.

  7. 7.

    Open the provided ZEN macro in the Macro Editor and adjust the following parameters:

    1. (a)

      StageStepSize

      This represents the stage displacement step between consecutive slice acquisitions (in μm). We recommend a default value of 0.8 μm that allows sufficient overlap of the PSF in Z between adjacent slices.

    2. (b)

      StageNumberOfSteps

      This is the total number of slices. It can be calculated by dividing the total Y stage range covering the cell by the stage step size.

    3. (c)

      SaveFolderFile

      This is a string with the full path to the folder where the data will be stored plus an initial filename template. The acquisitions will be stored with a filename template plus the index of the acquisition. Make sure that the folder separators “\” are replaced with the double “\cr”.

  8. 8.

    Once parameters are set, run the macro and the acquisition will start. Each time series per slice will be saved in the specified folder.

  9. 9.

    During the acquisition, the calculated and true Y positions of the stage are logged to the “Messages” window of the macro editor. Be sure to copy and save this log information once your acquisition is done. It can be saved as a “stage_pos.txt” file and later converted to a “stage_pos.csv” format file (see provided example). This output improves reconstructions and registration of sample drift between slices at the later stages of analysis (see below).

Fig. 2
A, 2 diagrams of Z calibration. B, it has 3 illustrations, has bright spots in the center against a dark background. C and E have 27 illustrations with bright spots in the center against a dark background. D and F are line graphs of coverslips 172 and 147 micrometers in a downward trend.

Z-calibration and determining the optimal aberration correction to use. One of the key steps in image acquisition is the proper tuning of the aberration correction parameter to shape the PSF and introduce astigmatism. This allows you to get localization information about your particles not only in XY but also in Z (as shown in (a)), by deforming the PSF such that it depends on Z (as shown in (b)). Here, we also show the shapes of the average PSF (calculated from the PSFs of ~10 individual beads) at the different values of this parameter for coverslips of two different thicknesses: (c) 172 μm and (e) 147 μm. Note that the astigmatic PSF appears when the “Aberration control” value (165) is below the measured coverslip thickness for the high precision #1.5 coverslip (172 μm). For the thinner coverslip (the example of #1 coverslip of 147 μm), the desired astigmatic shape of the PSF cannot be achieved. The average PSF can be used to calculate a z-calibration curve that establishes a dependency between the difference in the PSF width and height and its axial distance (Z coordinate defocus). This works well if an astigmatic PSF can be achieved (shown for the 172 μm coverslip in (d), with the best calibration curved indicated in orange), but does not work well if astigmatism is not used (shown for the 147 μm coverslip in (f))

3.4 Analysis

For an overview of the steps and example images, see Figs. 3 and 4.

  1. 1.

    In the ZEN software, perform “Deskew” operation to the PSF z-calibration scan data. Make sure that the “Processing method” is equal to “Deskew,” not “Coverslip transformation.”

  2. 2.

    Extract individual images of PSF/beads:

    1. (a)

      Open the deskewed z-calibration file in FIJI and create a maximum intensity projection image (ImageStacksZ-Project..Maximum Intensity).

    2. (b)

      Draw a free-hand ROI that will include only bright and consistent PSFs (beads) that are relatively isolated, that is, there is no debris or other beads in a radius of 3–5 μm around the bead. Some beads may not be immobile and therefore display a “smeared” PSF, so these should be omitted. Try to include beads dispersed all across the field of view.

    3. (c)

      With the ROI active, run the DoM plugin (AnalyzeDoMDetect Molecules) and using the “Preview detection..” option, adjust the intensity threshold parameter so that only selected beads are detected within the ROI. Run the analysis, and the plugin will generate a Results Table with coordinates of the beads.

    4. (d)

      Select the deskewed calibration z-stack and run the provided “extract_psf_batch.ijm” ImageJ macro. Provide the macro with a path to an output folder, where it will store the extracted z-stacks of individual beads (estimated PSFs) used for averaging at the next step.

  3. 3.

    Calculate averaged PSF:

    1. (a)

      Once individual PSFs are extracted, run PluginsARegisterNDFFTIterative Averaging command in FIJI with the following parameters:

      1. (i)

        Input images: “Specify images in a folder.”

      2. (ii)

        Initial template: “Average (center).”

      3. (iii)

        Number of iterations: 10.

      4. (iv)

        Select “Exclude zero values.”

      5. (v)

        Maximum shift fraction: 0.3.

    2. (b)

      Upon clicking OK, the plugin will show a dialog to select the folder with results (PSF stacks) generated during the previous step.

    3. (c)

      During processing, the plugin will generate an average z-stack of input images (initial template) and then iteratively register each individual stack to it, update the template, register again, and so on. For full algorithm details and a description of the parameters, we refer you to the plugin webpage (see Subheading 2 above).

    4. (d)

      Upon completion, the plugin will produce a Results table with average cross-correlation values and optimal displacements of individual stacks, together with a new 32-bit z-stack dataset containing the final averaged image of the PSF.

    5. (e)

      Crop the final stack in all dimensions to remove blank z-slices and/or side artifacts.

    6. (f)

      Convert the cropped stack to 16-bit while carefully rescaling the intensity range. To do so, first build a stack histogram of the whole stack: AnalyzeHistogram. Write down the maximum intensity value. Run ImageAdjustBrightness/ContrastSet and fill in this value (rounded up) as the “Maximum displayed value.” Set the “Minimum displayed value” equal to zero. Run ImageType16-bit and save the final averaged PSF z-stack.

  4. 4.

    Create an astigmatism Z-calibration file:

    1. (a)

      Open the averaged PSF stack in FIJI and run AnalyzeDoMDetect molecules with the “Mark detected particles in overlay” option selected. Scroll through the z-stack and if necessary, re-run the detection with adjusted parameters so that the PSF position is detected in as many of the z-slices as possible. Save the final generated Results Table.

    2. (b)

      Run the AnalyzeDoMZ axis (astigmatism)Make Z calibration command with the following parameters:

      1. (i)

        “Make z calibration from”: Particle table (the plugin will read current Results Table from the previous step)

      2. (ii)

        Spacing between z-planes: 100 nm. Since we acquired the calibration stack with a stage Y displacement of 0.2 μm (200 nm), it translates to a 100 nm z-slice distance in the deskewed dataset.

      3. (iii)

        Make sure that the “Account for wobbling in X and Y” checkbox is selected and press OK.

      4. (iv)

        The “Fit Z calibration” dialog should appear.

      5. (v)

        We recommend restricting calibration fitting of the Z range (using Range Zmin and Zmax parameter) based on the shape of the curve displayed on the bottom left plot. Usually, we select an interval where the curve is monotonously decreasing and exclude outliers at the sides that deviate from this trend. It is possible to change the degree of the polynomial fitted to the calibration curve, but usually we use a third-degree polynomial. When clicking the “Perform fit” button, the dialog shows or updates the fitted curves. Once parameters are adjusted and the fits display reasonable agreement with the measured data, it is important to write down the final values of Zmin and Zmax that you used. After that, by clicking “Store calibration,” the plugin saves the calibration to the FIJI/ImageJ registry (which remains there even after you restart ImageJ until a new calibration is stored). Only one Z-calibration can be stored and active at a time in the FIJI/ImageJ registry, and this is the one that will be used for calculating Z-values.

      6. (vi)

        To save the calibration, run Analyze⟶DoM⟶Z axis (astigmatism)⟶Save Z calibration and save it as a .txt file. These calibration files can be loaded using the “Load Z calibration” command. Details about the calibration currently stored in the FIJI/ImageJ registry can be shown using the “Show stored Z calibration” command (including Zmin and Zmax).

  5. 5.

    Once the Z-calibration is made and loaded, proceed to the batch processing of the acquired dataset using the “SMLM_batch_process_per_slice.ijm” ImageJ macro. This macro will process each time series dataset per slice as follows: apply image filtering, perform detection and tracking of single molecules, and create super-resolution reconstructions.

  6. 6.

    The macro has the following analysis stages with corresponding parameters:

    1. (a)

      In the beginning, two temporal median filters are applied to the time series with different window sizes or time scales (using the FTM2 plugin). The first filter removes images of rapidly diffusing molecules in solution, while the second aims at removing constant and slowly changing background. The parameter fastFrameWind (in number of frames) specifies the window of this first filter (with a default value of 30). This value approximately corresponds to the timescale where the motors are relatively immobile, while diffusing molecules display a significant displacement. The window parameter of the second filter, slowFrameWind (default value of 300 frames), corresponds to the timescale where the motors move over a significant distance, while the background remains unchanged. These parameters are relatively robust but can be fine-tuned depending on the speed of the motor (see Note 5).

    2. (b)

      After temporal median filtering, we perform single-molecule detection and fitting using the DoM plugin [9] (see also Materials above). It has two main parameters: “PSF standard deviation” (in pixels) called nSDPSF in the macro and an intensity threshold expressed as the signal-to-noise ratio of a detected particle (nSNR). For datasets without induced astigmatism, we recommend the PSF SD value of ~1.6 pixels (232 nm) and a SNR of ~3. For datasets with astigmatism, we find that a PSF SD value of ~2.0 and a SNR of ~4 work well. These settings in general depend on the background level, fluorophore brightness, and wavelength used for imaging. They can be optimized beforehand by running the DoM plugin separately on a time series of a single slice and comparing the output detection quality for different settings.

    3. (c)

      After localizing single molecules, the macro will automatically perform a calculation of their Z-coordinates using the Z-calibration currently stored in the ImageJ registry (created previously at step 4).

    4. (d)

      To facilitate drift correction within the time series, the DoM plugin will split the dataset into batches of nDCBatch frames (default value is 400), make individual super-resolution reconstructions images with the pixel size of nDCPixelSize (in nm, default value is 40) and register all batch images to account for the drift (see Note 8).

    5. (e)

      Linking detections into tracks has one parameter nLinkDistance, measured in the pixels of the original image (default is 3). It specifies the maximum distance that a particle is allowed to move from one frame to the next while still being linked into one track. This may need to be adjusted depending on the speed of the motor (see Note 5).

    6. (f)

      After detection, drift correction, and particle linking, the macro will generate a super-resolution reconstruction for each time series/stage position with the pixel size determined by the parameter nPxRecon (in nm, default value is 30). In addition, it is necessary to specify the threshold of localization precision of particles included in the reconstruction, nMaxLocalization (in nm, default value of 100).

  7. 7.

    After the optional adjustment of the parameters, run the “SMLM_batch_process_per_slice.ijm” macro on the folder containing the time series files for each stage position. As a result, the macro will produce and save the following indexed output:

    1. (a)

      Results tables containing single molecule localization/linking results, saved as a csv files with “Z_Tr_Results_” as a prefix.

    2. (b)

      Super-resolution reconstruction .tif images with “Z_Tr_Reconstruction_” as a prefix.

  8. 8.

    The reconstructions produced for each slice are still in the “skewed” frame of the acquisition. At this stage, we need to build a deskewed version of the acquired volume. To do so, first load the “Z_Tr_Reconstruction_” image series into FIJI as one stack using the File⟶Import⟶Image Sequence command. Check that all your slices are present in the stack. If not, check that all reconstructed images have the same size. If some images have different dimensions, adjust their size using the Image⟶Adjust⟶Canvas Size command with the “Top Left” option.

  9. 9.

    Using the File⟶Import⟶Results command, load the “stage_pos.csv” file produced initially by the ZEN acquisition macro as a .txt file, but that you have converted to a .csv file. It is important that at this step in ImageJ you have a Results table called “Results” (note that you can rename this in ImageJ without changing your file name). Additionally, it must have a column with the header “stage_true” that contains the proper stage Y positions in micrometers. Run the “Deskew_reconstructions_stage_pos.ijm” macro, and it will generate a new z-stack where super-resolution reconstructions will be deskewed. Save it as an intermediate result.

  10. 10.

    At this stage, we are going to correct sample’s drift between slices (between each time series acquisition). After loading the deskewed stack from the previous step into FIJI, run Plugins⟶Correlescence⟶2D cross-correlation with the following options:

    1. (a)

      Calculate 2D cross-correlation between: Consecutive images.

    2. (b)

      Interval between images: 1 frame.

    3. (c)

      Calculation method: FFT.

    4. (d)

      Select “Correct drift”.

    5. (e)

      Select “Limit max displacement” and fill in the maximum expected drift values between two consecutive frames in x and y (we recommend a starting value of 30 px for each).

  11. 11.

    Using cross-correlation, the plugin will register individual images in the stack and update the stack. If after visual inspection there is still some drift, we recommend to reload the deskewed stack and run the plugin on it again with a larger maximum displacement limit. If the final result is satisfactory, save the produced Results Table as “Results_DriftCorr_Correlescence.csv.”

  12. 12.

    Run the provided “assemble_all_slice_data” script (in python .ipynb or MATLAB .m) to combine the localization/tracking results files from each slice into one large, updated Results table. The script will deskew coordinates and apply drift correction. Apart from the .csv tables with localizations from each slice (steps 5–7), the script requires: the.csv file containing the stage positions output by the ZEN macro (“stage_pos.csv”); drift correction results between slices (“Results_DriftCorr_Correlescence.csv”, steps 10–11) and the pixel size of the reconstructions used for this; minimum and maximum values of PSF z-calibration range (Zmin and Zmax, step 4). In the end, the script outputs one combined .csv file containing all the detections from each slice in the format of DoM plugin Results table.

  13. 13.

    The main Boolean parameter of the script rotate specifies whether the coordinates of molecules will be rotated to the system of coordinates where the coverslip represents the XY′ plane (a so-called coverslip transform). In this case, the final angle of rotation could be different from the 30° tilt angle specified by the optical configuration due to a tilt in the coverslip that was not fully compensated while adjusting the imaging parameters on the microscope. This rotation angle can be specified using the parameter anglerad. Estimate the angle, first we recommend generating a joint output results file with the parameter rotate equal to false. In this case, the XY coordinates of molecules correspond to the coordinates in the tilted imaging plane (i.e., orthogonal to the objective) but are deskewed (see Fig. 2). The final coverslip angle can then be estimated using the following procedure:

    1. (a)

      Open the generated combined .csv Results table stored in “Final Results” in ImageJ/FIJI via Analyze⟶DoM ⟶Load large Results table.

    2. (b)

      Reconstruct a 3D stack using the Analyze⟶DoM ⟶Reconstruct Image command. The checkbox “3D-reconstruction” should be selected with the “Render as:” option equal to “Z-stack.” For this angle measurement, a coarse-grained 3D reconstruction is sufficient, so to speed up the process, we recommend setting the XY pixel size to 100–200 nm and “Z-distance between slices” to 500 nm.

    3. (c)

      Create a YZ maximum projection view of this stack. To do so, run Image⟶Stacks⟶Reslice on the generated stack with the following settings:

      1. (i)

        Output spacing: 500 nm.

      2. (ii)

        Start at: Left.

      3. (iii)

        Uncheck “Flip vertically,” “Rotate 90°,” and “Avoid interpolation.”

    4. (d)

      The output will be a new resliced stack with a YZ view of the reconstructed data. Now the command Image⟶Stacks⟶Z project.. (Projection type: Max Intensity) will generate a new image containing a coarse-grained YZ maximum intensity projection.

    5. (e)

      Measure the angle of the coverslip line with respect to the X axis using ImageJ’s angle tool (holding the “Shift” keyboard button keeps the initial horizontal line straight).

    6. (f)

      Setting the anglerad parameter to the measured value (in degrees) and re-running the assembly script with rotate equal to true should generate a Results table with the XY′ plane parallel to the coverslip.

  14. 14.

    The final joint Results table is in a .csv format and contains the 3D localization coordinates in the columns “X_(nm),” “Y_(nm),” “Z_(nm)” with corresponding localization precision columns having the suffix “_loc_error.” In addition, tracks are specified by the “Track_ID” column and each particle is numbered in the “Particle_ID” column. This simple format in principle allows you to convert/import the data into any visualization/analysis tool of choice.

  15. 15.

    To create a 3D z-stack (with discrete slices) of your localization data suitable for volumetric rendering algorithms, the data can be loaded to ImageJ/FIJI using Analyze⟶DoM⟶Load large Results Table. The Analyze⟶DoM ⟶Reconstruct Image command displays a set of options for the final reconstruction. “Pixel size of reconstructed image” specifies the XY pixel size, which we recommend setting to the mode (or median) of XY localization error. For a Z-stack reconstruction, make sure that the checkbox “3D-reconstruction” is selected with the “Render as:” option equal to “Z-stack.” Similarly, the recommended that you set the value of “Z-distance between slices” equal to the mode (or median) of the axial localization error. Poorly localized detections can be filtered using the “Cut-off for localization precision” parameter (recommended value of 100 nm).

  16. 16.

    Visualize orientations by loading the four separate directionality-based Results tables into DoM. For each one in turn, go to Analyze⟶DoM⟶Load large Results Table and then Analyze⟶DoM ⟶Reconstruct Image. For the reconstructions, select “3D-reconstruction.” And render the results as a Z-stack. Ensure that you input the minimum and maximum Z values to use (you can estimate these by plotting the distribution of Z values in the image from the Results table). Be sure to use the same settings for the reconstructions of all four directions, especially the minimum and maximum Z values so that the slices from the different reconstructions are aligned. Verify that your four directionality-based reconstructions have the same width and height. If not, adjust this via Image⟶ Adjust⟶Canvas Size with the “Top Left” option. Once you have done this, you can merge the four Z-stacks using Image⟶Color⟶Merge Channels. We color-code as follows (see also Fig. 4):

    1. (a)

      Blue: right up toward – right down toward (x > 0, y > 0 or y < 0, z > 0).

    2. (b)

      Cyan: right up away – right down away (x > 0, y > 0 or y < 0, z < 0).

    3. (c)

      Magenta: left up toward – left down toward (x < 0, y > 0 or y < 0, z > 0).

    4. (d)

      Yellow: left up away – left down away (x < 0, y > 0 or y < 0, z < 0).

Fig. 3
A process flow diagram with five steps. Step 1 results in 4000 frames of Y n, Y n + 1, Y n + 2, and Y n + 3 with three positive Z calibrations, which leads to steps 2, 3, 4, and 5.

Analysis pipeline to allow facilitate reconstruction of microtubules from data. After acquisition, each stack of images is processed (1) by a combination of two temporal median filters to remove background and particles moving too fast or slow in comparison to motors. Within each slice (1), particles are localized and tracked, and lateral drift correction is applied via the registration of intermediate reconstructions. Additionally, the z-calibration curve is used to localize each particle axially (see also Fig. 2). This produces a stack of skewed reconstructions, which must then be deskewed (2). Then, each pair of adjacent axially overlapping slices of the deskewed stack is registered to remove any remaining sample drift in the YZ plane (3). Subsequently, the localizations from each slice are assembled together taking into account the deskew geometry and drift correction steps, producing one large file containing the localization data of all particles imaged in the selected volume. The final localization coordinates can be rotated to the frame where the XY′ plane is parallel to the coverslip (a so-called “coverslip transform”) to produce a more familiar view (4). Finally, the orientations of microtubules can be visualized by assigning unique colors to localizations based on the direction of the velocity vector, derived from the tracking. We chose to color code the direction vector by splitting the directionality space into octants, such that microtubules that are parallel and antiparallel are always marked by a different color (see also Fig. 4) (5)

Fig. 4
5 illustrations of Jurkat cells. A. The microtubule network in a dark shade. B. It has four three-dimensional microtubule networks with different shades of microtubules. C and D have bright, contrasting network colors against a dark background. E. It has various shades of microtubules.

Example Jurkat cell imaged using lattice light-sheet motor-PAINT and visualization of microtubule orientation. After performing the above steps, you are able to produce a super-resolution reconstruction of the microtubule network of your cell with or without orientation information. This can be visualized in different ways. First, in (a), a 3D render of the microtubule network is shown without orientation information. To visualize microtubule orientation, we have chosen a color code such that regardless of how you look at the cell, parallel and antiparallel microtubules can be distinguished by their color. This is shown by the different views of the 3D compass shown in (b) and is also evident when looking at different views of the cell as in the remainder of the figure. In (c), a sum projection of 14 slices is shown in the XY′ plane (i.e., parallel to the coverslip). In (d), a deskewed, but not coverslip transformed view, is shown via a sum projection of 11 slices in the XZ′ plane (i.e., perpendicular to the coverslip). From these, we can see that, as expected [7, 8], the Jurkat cell has a microtubule network in which the microtubules predominantly originate from the centrosome near the coverslip and point with the plus-ends up and outward around the nucleus (the central gap visible in (d)). This can also be appreciated from the color-coded rendering in (e). Scale bars 5 μm

4 Notes

  1. 1.

    To trouble-shoot protein purification, first figure out where things went wrong. To do this, take samples after each step of your purification and run them on an SDS-PAGE gel. That way you can check if a low level of protein is induced, the protein is stuck in the pellet (incomplete lysis), or the protein is not properly eluted.

    1. (a)

      If the protein production is low, be sure the OD of your culture(s) was reasonable. Do not induce expression in the log phase of growth.

    2. (b)

      If the protein is in the pellet rather than the clarified supernatant, it could be because cells were insufficiently lysed or your protein aggregated. To minimize aggregation, be sure that protein production occurs at 18°C. You might also need to reduce the time of expression. If cells are insufficiently lysed, opt for a harsher lysis method (e.g., more freeze-thaws or more rounds of sonication).

    3. (c)

      If the protein is degrading during purification, double check that you added protease inhibitors at the beginning of the purification and always keep your sample on ice. Proteases work ineffectively at 4°C.

    4. (d)

      If the protein is not properly eluted, increase the amount of imidazole in buffer B. You can also use a gradient of imidazole to elute your protein.

  2. 2.

    In case of low motor accessibility:

    1. (a)

      Increase the amount of motor.

    2. (b)

      If this does not lead to a corresponding increase in the amount of walking motor, increase the percentage of Triton X-100 in the permeabilization buffer. It is better to increase this concentration than to increase the time of permeabilization.

  3. 3.

    If you notice that your assay has a short lifetime (i.e., motors stop walking after ~30–60 min), especially if using a Ludin chamber or imaging ring, make sure to properly seal the chamber. In our hands, this increases the lifetime of the assay from ~45 min to >8 h.

  4. 4.

    To help you identify cells of interest when imaging, you may wish to transfect them with tagged tubulin or label them with, for example, phalloidin or DAPI following the extraction and fixation steps. For the latter, proceed as follows:

    1. (a)

      To the beads buffer add: 1 × or ~165 nM phalloidin (Thermo Fisher Scientific A12379; reconstituted in DMSO to a 400 × stock solution or ~66 μM) and/or 1 × DAPI. Be sure to still sonicate this buffer before use to remove bead clumps.

    2. (b)

      After permeabilization and fixation, wash cells 3 × 1 min with wash buffer.

    3. (c)

      Add phalloidin/DAPI/bead buffer and incubate for 8 min.

    4. (d)

      Wash 1 × 1 min with wash buffer.

    5. (e)

      Remove wash buffer and add imaging buffer, continuing as described in protocol above.

  5. 5.

    In case of poor walking of motor (i.e., slow motility):

    1. (a)

      Temperature strongly affects motor speed (~exponential relationship), and this will in turn affect your tracking parameters and maybe your temporal median filtering window size. If your motor is walking too slowly, take note of the room temperature.

    2. (b)

      If the motor is still not walking happily and you’ve checked the temperature, make fresh BRB80. The motor is very sensitive to the quality of the buffer.

  6. 6.

    If the super-resolution reconstruction per slice is too sparse, try adjusting the detection settings used in the “SMLM_batch_process_per_slice.ijm” macro. If this does not fix the issue, you may need to re-image your sample with a higher number of frames taken at each position and/or see if you can increase the density of motors by adding more to the imaging buffer. If achieving a well-defined astigmatic PSF shape is problematic using your instrument, single-molecule detection and fitting can be perform using alternative analysis pipelines that take into account the arbitrary experimental PSF shape [10].

  7. 7.

    As with many other PSF-shaping single-molecule imaging strategies, there is a trade-off in the lateral (XY) versus axial (Z) localization precision depending on the degree of induced astigmatism [11]. If the lateral localization precision is more important, consider using an aberration control value that gives a more symmetrical PSF (less astigmatism) to allow for better SNR and hence better localization precision in X and Y at the expense (or even absence) of Z.

  8. 8.

    If the super-resolution reconstruction per slice is blurry, minimize the parameters that could cause drift or stage wobbling by ensuring that the microscope’s CO2, temperature, and humidity controls are off. It can also help to turn on the microscope 1 or 2 h in advance to allow the system to reach equilibrium. The manufacturer’s recommendation is 60 min pre-equilibration time for standard applications and >3 h for long-term imaging or high-resolution applications (such as this). You can also adjust the drift correction settings (especially the number of frames/batch size used for each intermediate reconstruction) within each slice in the “SMLM_batch_process_per_slice.ijm” macro to try to improve the reconstructions.

    1. (a)

      If the problem persists and it appears as though only a few microtubules in the field of view are blurry, this could indicate that these microtubules are wiggling. Consider adding 0.1% glutaraldehyde (MilliporeSigma G7526-10 mL) in the fixation buffer (such that when added to the extraction buffer, the final concentration of components in the fixation buffer is 0.05% glutaraldehyde and 1% PFA). Note that if you do this, you may have to increase the concentration of motor as we have noticed that it can impede motor accessibility to some extent.