Biomedical Imaging Group

IP-LAB: Image Processing Laboratories

1. Practice ImageJ

- Open, save an image
- Image: type 8-bits, 32-bits, stack, color
- Arithmetic operations, compare two images
- Plot profile and surface plot
- Measurement and Histogram
- Display capabilities, threshold, zoom

2. Java coding

2.1 Learn to program plugins

Code the simple routine threshold() in the Code.java file. This function creates a binary image.

Test this routine on the image "blob1.tif" using the Threshold plugin and compare with the ImageJ command:

Find the best threshold to segment the main blobs in the image "blob1.tif". Complete the report.doc

2.2 Fusion of two images

Code a routine fusionBackground() in the Code.java file. This function should return an image where the values between two thresholds [T_{low}, T_{high}] are kept from the input image; otherwise, they are replaced
by the values from a background image. Try to replace the overexposed sky in the image "leman.tif" and "buildings.tif" by the synthetic background image "sky.tif". Call the routine by using the plugin FusionBackground.
Complete the report.doc

Synthetic background "sky.tif" |
Desired result (buildings.tif + sky.tif) |

2.3. Add a gray frame

Code the simple routine addGrayFrame() in the Code.java file. This function creates a gray frame (pixel intensity: 128) with a specified width width added to the 8-bit image. Hence, The output image is larger than the input image. Call the routine by using the plugin AddGrayFrame. Add a gray border of 10 pixels around the "blob1.tif" and complete the report.doc.
3. Fourier Applications 3.1 Observation of the Fourier transform Try the FFT on several images: "rect1.tif", "rect2.tif", "gaussian.tif", "grid.tif", "zero.tif". Observe the output. Apply the Fourier transform on "plane.tif" with the plugin FFTDirect. Shortly describe the module of the Fourier transform, the bright spot in the center and the bright lines in the report.doc (no more than 2 sentences). 3.2 Fourier transform and its inverse Apply the Fourier Transform to the "plane.tif" and to the "random.tif" using the plugin FFTDirect. Then reconstruct the following images using the plugin FFTInverse. - Module(plane) and Phase(plane)
- Module(plane) and Phase(random)
- Module(random) and Phase(plane)
- Module(random) and Phase(random)
Comment the result and fill in the report.doc
3.3 Fourier effect of up-sampling Apply the Fourier Transform to the "concentric-circles.tif" (256*256 pixels). Upsample the "concentric-circles.tif" image using the ImageJ command "Image->Adjust->Size, without interpolation to 512*512 pixels and apply the Fourier Transform. Compare the modules and find the name of the phenomena for the report.doc Fill in the report.doc
3.4 Fourier effect of down-sampling Downsample "concentric-circles.tif" using the ImageJ command "Image->Adjust->Size, without interpolation" to 128*128 pixels and upsample it to 256*256. Apply the Fourier Transform. Compare its module with the FFT module of the original image and find the name of the phenomena for the report.doc. 3.5 Understand the reconstruction process The plugin FourierProgressiveReconstruction first computes the FFT; it then reconstructs the image progressively from a subset of Fourier coefficients, adding them one at a time. To have a better understanding of the reconstruction process, check "Show Animation and Basis Functions" in the dialog box. Experiment with several settings of the reconstruction for "cat.tif". Reconstruct the image with only 4% of the coefficients (choose 2621 as number of coefficients) with the lowest frequencies, the largest coefficients and the smallest coefficients. Complete the report.doc webmaster.big@epfl.ch • 30.11.2006 |