CSE/EE 576: Computer Vision ISpring 2004 |
Testing images are in pgm format, which is not well supported by Matlab 6 or lower. You'd convert them to bmp or jpg if your version of Matlab is lower than 6.5.
Download the images you need
original kidney image | isolated regions |
The CT images and some image analysis programs are available on the course web. You are asked to code 2 simple operators and a threshold finder to get you familiar with working with image data.
The first problem is to find a threshold that will produce a binary image that has most of the organs separated into distinct regions. Use thresh to try various threshold ranges yourself. Then code the Otsu algorithm or any other histogram-based threshold finder you wish to try to find a threshold automatically for each image to be tested. pigs.pgm is a good example to test if your histogram-based threshold finder works well or not.
The second problem is to use the morphological operators erode and dilate to help separate organs that are connected together or to fill small holes in organs. (You have to write, too.) Once you have a decent binary image, you can feed it to the connected components labeling operator conrgn to produce a labeled image, which should have a distinct label (low integers) for each region. You can convert this to pseudocolor using autocolor.
Try your thresholding, morphology, and labeling procedure on the CT abdomen images kidney.pgm, g006.pgm, and e030.pgm. Then try it on the gene expression image chickear.pgm . Also try the Canny Edge Operator (given) on two images: kidney.pgm and blocks.pgm. For each image in your test set, print (***) the original image, the labeling (in color if possible, else gray tones), and the edge image (if produced). Turn in these printouts, a diagram showing what you did to get them, and a listing of any code you wrote. Please put a header on each routine you write for this class with at least the following information:
Homework is due on April 16th, 5pm. Please plan your work early.