Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
software:mipav_generatefusion [2016/02/05 05:34]
Jon Daniels
software:mipav_generatefusion [2019/04/20 00:36] (current)
Jon Daniels updated dropbox links
Line 1: Line 1:
 ====== MIPAV Generatefusion  ====== ====== MIPAV Generatefusion  ======
  
-MIPAV is a framework not unlike Fiji, and the generatefusion plugin was developed in collaboration with the Shroff lab.  It does intensity-based registration and joint deconvolution.  You can download MIPAV at [[http://mipav.cit.nih.gov/]] and then install the plugin.+MIPAV is a framework not unlike Fiji, and the generatefusion plugin was developed in collaboration with the Shroff lab.  It does intensity-based registration and joint deconvolution.  You can download MIPAV at [[http://mipav.cit.nih.gov/]] and then install the plugin.  As of early 2019 this is still the cannonical workflow for some groups, though the Shroff lab has been developing a successor software.
  
-In general this software is much slower and more computationally intensive that Fiji MVR but crucially it has image-based registration that can handle registration of datasets without distinct interest points.  (Image-based registration is in the future plans for MVR per [[http://imagej.1557.x6.nabble.com/3D-affine-transformation-Deskewing-with-anisotropic-voxels-td5013781.html|this thread]] but it is not implemented as of Jan 2016).+In general the MIPAV software is much slower and more computationally intensive that Fiji MVR.  However, it uses image-based registration so it can register datasets without distinct interest points.  (Image-based registration is in the future plans for MVR per [[http://imagej.1557.x6.nabble.com/3D-affine-transformation-Deskewing-with-anisotropic-voxels-td5013781.html|this thread]] but it is not implemented as of Aug 2018).
  
 MIPAV generatefusion is referenced in the 2014 Nature Protocols paper, though some things have changed since.   This is the place to look for updated information. MIPAV generatefusion is referenced in the 2014 Nature Protocols paper, though some things have changed since.   This is the place to look for updated information.
Line 12: Line 12:
  
 diSPIM image processing involves several steps, including background subtraction, cropping, transformation, fusion, and deconvolution. The first two steps in this process, background subtraction and cropping, are carried out in ImageJ or FIJI, while the remaining steps are carried out in MIPAV. diSPIM image processing involves several steps, including background subtraction, cropping, transformation, fusion, and deconvolution. The first two steps in this process, background subtraction and cropping, are carried out in ImageJ or FIJI, while the remaining steps are carried out in MIPAV.
 +
 +You can find [[https://www.dropbox.com/sh/lnhtg37d0hrdile/AABPu2O4wRIGYpKXOIX-Rusza?dl=0 | sample data for this tutorial]], already background-subtracted (-90 Y axis rotation).  There is also a [[https://www.dropbox.com/s/zszff7lelg3vgq6/NIHBeadData.7z?dl=0 | bead dataset]] of unknown origin that can be used to test your MIPAV workflow.
 +
  
 ==== File Organization ==== ==== File Organization ====
Line 17: Line 20:
 Before describing the image processing, a couple notes on file naming and organization are in order.  These apply to MIPAV only.  Instead of using image metadata, MIPAV uses the file naming and user-input parameters to figure out where each image belongs in the overall experiment. Before describing the image processing, a couple notes on file naming and organization are in order.  These apply to MIPAV only.  Instead of using image metadata, MIPAV uses the file naming and user-input parameters to figure out where each image belongs in the overall experiment.
  
-diSPIM images are originally written as image sequences (with each volume being equivalent to one image sequence). Image sequences are saved in individual folders, and need to be converted into a single .tiff stack for MIPAV to be able to read them. Typically we use bgX( where X is a number) to name the folder containing the background image sequence, and bvX (where X is a number) to name the folders containing the actually data.+diSPIM images are originally written as image sequences (with each volume being equivalent to one image sequence). Image sequences are saved in individual folders, and need to be converted into a single .tiff stack for MIPAV to be able to read them. Typically we use bgX (where X is a number) to name the folder containing the background image sequence, and bvX (where X is a number) to name the folders containing the actually data.
  
 The image sequences for each SPIM arm get their own separate folder. The naming of the SPIM arm folders depends on whether you are using Micro-Manager or Labview. For Labview-based systems, when facing the diSPIM the right-side camera is called SPIMB, and writes to a folder we name SPIMB_unprocessed, while the left. Micromanager uses an opposite camera naming system, so the right-side camera is named SPIMA and writes to a SPIMA_unprocessed folder, while the left-side camera is named SPIMB and writes to a SPIMB_unprocessed folder. Keep track of which naming system you are using as this can affect the rotations done in MIPAV.  (This convention can be changed in Micro-manager without too much difficulty, ask the developers ;-) ). The image sequences for each SPIM arm get their own separate folder. The naming of the SPIM arm folders depends on whether you are using Micro-Manager or Labview. For Labview-based systems, when facing the diSPIM the right-side camera is called SPIMB, and writes to a folder we name SPIMB_unprocessed, while the left. Micromanager uses an opposite camera naming system, so the right-side camera is named SPIMA and writes to a SPIMA_unprocessed folder, while the left-side camera is named SPIMB and writes to a SPIMB_unprocessed folder. Keep track of which naming system you are using as this can affect the rotations done in MIPAV.  (This convention can be changed in Micro-manager without too much difficulty, ask the developers ;-) ).
Line 32: Line 35:
   - Import the background image. Go to File -> Import -> Image Sequence, navigate to the folder where the background image sequence is stored, and import it. The settings for the import image sequence dialog box are as follows:   - Import the background image. Go to File -> Import -> Image Sequence, navigate to the folder where the background image sequence is stored, and import it. The settings for the import image sequence dialog box are as follows:
   - Go to Image -> Stacks -> Z Project and set Projection type to Average intensity. Click on the OK button. Then close the original bg0 window, leaving only AVG_bg0.   - Go to Image -> Stacks -> Z Project and set Projection type to Average intensity. Click on the OK button. Then close the original bg0 window, leaving only AVG_bg0.
-   - Go to Plugins -> Macros -> Record. The screen should look like this: {{:software:mipav_fig1.png?1000|}} +   - Go to Plugins -> Macros -> Record. The screen should look like this: \\ {{:software:mipav_fig1.png?1000|}} \\ 
-   - Next, open the first image sequence for the diSPIM images. To do this, go to File -> Import -> Image Sequence, navigate to the folder containing the diSPIM image sequence, and open it {{:software:mipav_fig2.png?1000|}} +   - Next, open the first image sequence for the diSPIM images. To do this, go to File -> Import -> Image Sequence, navigate to the folder containing the diSPIM image sequence, and open it \\ {{:software:mipav_fig2.png?1000|}} 
-   - Subtract the image background by going to Process -> Image Calculator. Set Image1 to the image you are working with (in this case bv0), Operation to Subtract, and Image2 to AVG_bg0. Press OK. Press Yes when the Process Stack dialog box appears. The result should appear as: {{ :software:mipav_fig3.png?1000|}}+   - Subtract the image background by going to Process -> Image Calculator. Set Image1 to the image you are working with (in this case bv0), Operation to Subtract, and Image2 to AVG_bg0. Press OK. Press Yes when the Process Stack dialog box appears. The result should appear as: \\ {{ :software:mipav_fig3.png?1000|}} \\
   - Use the Polygon select tool to draw a box around the sample. This box will be used to crop the image. While size will vary depending upon the sample, make sure that room is left (perhaps 25 pixels minimum) surrounding the sample in the cropped image in all directions. In this demo I have used a crop size of 300 x 400 pixels.   - Use the Polygon select tool to draw a box around the sample. This box will be used to crop the image. While size will vary depending upon the sample, make sure that room is left (perhaps 25 pixels minimum) surrounding the sample in the cropped image in all directions. In this demo I have used a crop size of 300 x 400 pixels.
-  - Go to Image -> Crop to crop the image. {{ :software:mipav_fig4.png?1000|}}+  - Go to Image -> Crop to crop the image. \\ {{ :software:mipav_fig4.png?1000|}} \\ 
   - Go to File -> Save As -> Tiff… to save the image. It should be saved in a new folder; conventionally I name this new folder SPIMA or SPIMB depending on which arm the images come from. The image itself is named SPIMA_XX, where XX is the number of the image in the image sequence.   - Go to File -> Save As -> Tiff… to save the image. It should be saved in a new folder; conventionally I name this new folder SPIMA or SPIMB depending on which arm the images come from. The image itself is named SPIMA_XX, where XX is the number of the image in the image sequence.
   - Close the SPIMA_20 and bv20 images.   - Close the SPIMA_20 and bv20 images.
-  - Edit the macro to run through as many images as required. An example of a finished macro can be seen below. We also attach a sample version of the macro edited to run through the sample data.  {{ :software:mipav_fig5.png?1000|}}+  - Edit the macro to run through as many images as required. An example of a finished macro can be seen below. We also attach a sample version of the macro edited to run through the sample data. \\ {{ :software:mipav_fig5.png?1000|}} \\ 
   - Repeat the process for the SPIMB images. Make sure that the size of the cropped images is the same between SPIMA and SPIMB images.   - Repeat the process for the SPIMB images. Make sure that the size of the cropped images is the same between SPIMA and SPIMB images.