HTGAA: Measurement and Imaging


Why do we need analytic tools for synthetic projects? The tools for synthetic biology have grown incredibly powerful: DNA synthesis, genome engineering, synthetic cells, directed evolution, cell-free systems, metabolic engineering, and nanomaterial science. However, these tools only cover the second half of the "read/write" cycle. In this class, we will discuss the rationale for developing measurement technologies ("read") to complement these engineering tools ("write"), so that we can understand the effects of our bioengineering efforts and make new products that resemble and/or offer novel functionalities compared to real biological systems.

The lecture will be divided into two sections: First, a theoretical-historical framework for understanding measurement technologies in the life sciences. Second, a review of emerging single cell & spatial sequencing technologies. We will focus predominantly on in situ detection of single molecules (in situ is latin for "in place," referring to detection of molecules in their native spatial arrangement in cells/tissues), including Fluorescent In Situ Sequencing (FISSEQ).


Required Background & Homework-Related Papers

Supplement for Foldscope Homework

Supplemental for Lab Homework (TA)

Supplemental Readings on FISSEQ & Spatial Sequencing

Supplemental Readings on Expansion Microscopy and Super-Resolution

Supplemental Readings on Theory

Supplemental Readings on the Historical Context of DNA Sequencing


Hands On Activities (at home):

Part 1: Imaging using FoldScope

This part of the homework is a choose-your-own-adventure in DIY microscopy.

  1. Assemble your FoldScope and verify its function using one of the included slides. For more resources on FoldScope see
  1. Explore! We are providing students with several types of living organisms: 1) Spirulina major. A marine cyanobacteria (blue-green algae) culture that contains spiraled trichomes. 2) Hypsibius exemplaris, strain Z151. Tardigrades sometimes known as water bears. You are also encouraged to collect samples from your environment (home, apartment, garden, pet, nearby park, whatever!). The goal is to acquire, using a smartphone, the most beautiful microscopic image you can acquire. Make sure you pay special attention to Focus & Field of view – choose a sample you can get entirely in focus (or not if that’s your artistic whim, but at least achieve a good focus on part of the image). Microscopy is a useful tool in materials science, but since this is a synthetic biology class, please image something biological .
  1. Collect your experimental results:
    1. Why did you choose this sample?
    1. What did you observe?
    1. What was the final magnification and sampling frequency of your image? (I.e., Approximately how large is each pixel in physical space?) You’ll need to use the final magnification and the sensor size (number of pixels) of your camera to calculate this. Be a good scientist (even though it’s art) and please include a scale bar in your image.
    1. What is the approximate resolution of your microscope? (Note – this is a harder and more open-ended question than it seems! Please read the FoldScope paper, and supplement on Microscopy.)
    1. In what ways is FoldScope different from a typical scientific microscope? Discuss at least one difference in optical design. (see supplement on Microscopy)
    1. Submit your best image(s)!
  1. Challenge Option: Design & conduct a foldscope experiment with a control and at least one experimental condition. For example, try to incubate your specimen at different temperatures, or exposing them to an environmental challenge.
    1. What is the hypothesis for how the experimental condition affected the specimen?
    1. What was the observed result?

Part 2: Design of smFISH / Spatial Sequencing Assay (Computational)

As detailed in the lecture, most in situ RNA measurement technologies are focused on targeted strategies, which use probes to detect one or more RNA targets. For this part of the homework, you will design a FISH or spatial transcriptomics analysis assay. Design of FISH and RNA capture probes is similar to designing PCR probes.

  1. Choose a problem. As described in the lecture, a “perfect” measurement experiment can mean a lot of things, but in this case, a perfect assay is one that’s well suited to your biological question. So first, you’ll need to think of an RNA imaging application. Describe why imaging measurement is useful for this problem.
  1. Pick your target genes. What genes would be relevant to this problem? You can choose any number of genes. Here are some typical examples:
    1. Diagnostic Assay – Pick one or more genes that are relevant to a disease.
    1. Synthetic Biology – Pick one or more genes that are involved in a synthetic biology circuit or engineering problem. These could be synthetic genes or endogenous genes, depending on the application. Are you engineering an RNA computer? A synthetic organ-on-chip or organoid?
  1. What is the assay? Would you use multi-color fluorescence? Multiple cycles? Barcoding? Describe why this readout approach is a good fit.
  1. Pick one gene and design the homology domains (target sequence domains) for 5 probes.
    1. Download the RNA sequence of your gene from the relevant database (e.g., FASTA from Refseq). Make sure you are using the mRNA sequence (no introns). Depending on how well annotated your organism and target gene is, you may have to manually process the sequence a little.
    1. Open the Colab Notebook, make a personal copy (File > Save a Copy) and follow the instructions.
    1. Pick 5 random sequences, each 25 bases long. Use the “Manual Probe Analyzer” section to find the melting temperature and secondary structure of each of your 5 randomly chosen probe sequences. Present the results & discuss – are these probes good? Are they likely to work well together (e.g., bind under the same conditions)?
    1. Enter the full target gene sequence in the “PROBE-O-MATIC” designer, as well as a target length, thresholds for min/max temperature, and thresholds for min/max secondary structure. Then run the script.
    1. Play with the settings and run the script several times. Discuss how the probe design problem is constrained, since length, melting temp, and secondary structure can be related. Did you get enough probes? Note, the script output contains all k-mers within the parameters, with the first base number on the target. However, you’ll want non-overlapping probes in your real design, so pay attention to which probes would be overlapping on the target.
    1. BLAST one of your probes to see how specific it will be to your target. Does it have hits against other genes? If so, what is the melting temperature against the highest off-target hit (NUPACK is good for this using a 2-strand melting model)? Is this a good probe?

Part 3: smFISH Image Analysis (Computational)

Here you will analyze the smFISH images generated by Erkin in the lab experiment.

The experiment was the Fluorescence Multiplex V2 assay on an FFPE pellet of mouse 3T3 cells. The gene panel is a 3 plex of housekeeping genes Polr2A, PPIB and UBC in increasing frequency. These are all expected to be homogeneously expressed in all cells (depending on cell cycle point for each).

Polr2A will be Atto 550, PPIB will be Atto 647 and UBC will be Alexa 488.

  1. Download & install ImageJ. I prefer the FIJI package
  1. Download one or more of the Z stack images (nd2 file)
  1. Import the data: Plugins > Bio-Formats > Bio-Formats Importer & select nd2 file
  1. In Import Options:
    1. View stack with: Hyperstack, In Metadata Viewing check the box for Display Metadata.
    1. Once the image opens, scroll through the metadata fields to find “Nikon Ti2, FilterChanger(EM Wheel1) #x” where X is the channel number. This metadata contains the mapping of channels to gene:
      1. #1 DAPI – nuclear stain
      1. #2 FITC – UBC (Alexa 488)
      1. #3 TRITC – Polr2A (Atto 550)
      1. #4 CY5 – PPIB (Atto 647)
  1. Open the display adjustment tool: Image > Adjust > Brightness & Contrast
    1. Using the sliders on the bottom of the image, scroll through the Z stack (Z) and channels (C)
    1. Adjust the display settings for each channel. Try adjusting the Min and Max threshold. Try the Auto button. Scroll through Z as you do this. Do not use the “Apply” button, as this will modify the underlying image data, rather than just changing how it is displayed.
  1. Max project the Z stack – since the sample has some thickness, we can bring everything “into focus” by using a maximum projection on the Z stack. Image > Stack > Z Project. Use “Max Intensity” as the Projection Type.
  1. Before you try to quantify the data, first visually estimate the number of cells using DAPI and the number of RNA molecules for each gene. Record your best guess estimates. Estimate counts per cell by dividing the number of molecules for each RNA by the number of nuclei.
  1. Now split the image into each separate channel: Image > Color > Split Channels (the new images files now have a header “C#” for each channel.
  1. Choose C1 (nuclei) – let’s practice automated segmentation to count the cells. First, duplicate the image to keep the original. Image > Duplicate
  1. Now choose the duplicate and Go to Image > Adjust > Threshold
  1. In the Threshold modal, try sliding the min/max thresholds. It should preview the segmentation. Instead of “Default” try some of the automated threshold algorithms. What provides the best result?
  1. Choose “Otsu” threshold.
  1. Adjust the image to make nuclei smoother and remove background: Do the following morphological operations: Process > Binary > Close; Process > Binary > Open
  1. Since some nuclei are touching, split these apart. Use Process > Binary > Watershed.
  1. Now it’s time to analyze the particles. Use Analyze > Analyze Particles.
  1. Adjust the Size and Circularity setting. For “Show:” choose “Nothing” and check all boxes on the left side (Display Results, Clear Results, Summarize, Add to Manager) then choose OK.
  1. The objects that have been identified will now have numbers overlayed.
  1. Try running with different settings until it looks like you’re counting good cells but not noise.
  1. From the windows that have popped up, choose “Results” – this has the counts of nuclei found and some properties of these. With the Results window selected, Go to Results > Set Measurements and you can choose which results are shown (note these only appear when you re-run the particle analyzer).
  1. Compare the processed image to the original (you might have to open the file again if the processing modified the display windows). How good is your estimate? How well did the image processing work? Do you see false positives and false negatives? Are there any patterns to which nuclei worked well and which did not work well?
  1. Repeat Steps 9-20 for each channel of RNA FISH data. Note, for FISH data the Binary > Open step may eliminate a lot of your found RNA – if so you can skip that step.

How did your image processing results compare to the visual assessment? Were your counts for RNA molecules for each gene correlated with the expected expression level (low > medium > high)?

FIJI is a powerful open-source tool for analyzing image data. Feel free to play around with the tool and explore the other macros and options that are available!

Lab Activity: Single Molecule FISH Experiment (TA)

Thanks to the generous help of ACD, Erkin will conduct a fluorescence single-molecule FISH experiment. You can see how the technology works, and also analyze the resulting image data (Homework Part 3)!