Segmentation of Dermatological Images using
Mixture Models and Markov Random Fields
[Home] [Downloads] [Results] [Research Log] [Contact] © 2005 Ji Tran




Research Log

Click here to view the simple text based log before the one below, view [32KB].


Tuesday 1/11/2005 - 12:00:00

Honours Thesis completed.

Friday 28/10/2005 - 20:37:56

Recently, I have finished my full thesis draft, prepared and presented my honours research work, documented all of my source code, implemented a GUI for my clustering programs, finalised the MRF based segmentation models (ALL WORKING :D), generated all the results for the skin lesion images, and have been updating the final honours website. A lot has happened during the last month!

Thursday 15/09/2005 - 11:04:28

Variable Weight MRF Segmentation algorithm using single covariance implemented. The full covariance version is still buggy. Currently, I'm using the Gaussian PDF to calculate the full covariance energy feature of a data set.
I have just implemented the segmentation visualisation/animation OpenGL program. It wasn't really difficult, but quite a number of source files had to be restructured a bit. This visualisation tool is very useful for debugging segmentation algorithms.

Monday 12/09/2005 - 21:33:58

After today's meeting with my supervisor, I finally understood how the variable weighting factor MRF segmentation model works. I have just implemented it and the results look quite good. More testing needs to be done such as playing around with the MRF constants.

Meeting 24 + 25 Summary notes will be uploaded soon.

Saturday 3/09/2005 - 19:11:56

Implemented the HSL colour feature for the clustering programs. The RGB and HSL colour space produced similar segmented images. The graphed results shows the different distribution and layout of the two colour spaces.

Friday 2/09/2005 - 22:04:30

I have now fixed the Gaussian Mixture Model clustering algorithm thanks to the tutorial Estimating Gaussian Mixture Densities with EM - A Tutorial by: Carlo Tomasi, Duke University @ www.cs.duke.edu/courses/spring04/cps196.1/handouts/EM/tomasiEM.pdf
The ellipse opengl code is also fixed now. It only works for 2D data though.
What a great way to end a Friday night! :D

28/08/2005 - 10:26:28

I implemented the ellipses(still not working) for the openGL scatter graphs by calculating the eigenvalues and eigenvectors for each data set. The eigenvalues and eigenvectors are correct, but when I try to find the angle between two eigenvectors, it'll always return 90 degs. So I tried using the covariance matrix and treated each row as a vector, and that produced better angles between the vectors. At the moment, the ellipses are drawn with the correct size but with no orientations to fit the data points it represents.

So I gave up the ellipse degree calculations and implemented the Gaussian Mixture Model clustering with EM. The algorithm is slow and it doesn't work well for all images. Interestingly, I Gimp'ed the test images {lenna, fruits, john lennon, lesion} and found that for the images that worked well (segmentation showed well formed clusters), their histograms showed a clear separation between each peak (Gaussian)! For the images that didn't work well, their peaks were all clustered together, which explains why the GMM clustering method didn't work well for them. The GMM method simply can't separate histogram peaks that are clustered together. I hope this assumption is correct, otherwise I'll have to do some serious debugging again.

Meeting 20 summary notes will be up soon...

Tuesday 16/08/2005 - 19:26:01

Progress for the last two weeks:
1.) Extracted the imaging methods in the Kmeans class to a separate class called ImageTool.
2.) Redesigned the cluster classes so that it'll work for N dimension data.
3.) Clustering algorithms have an option to include spatial data such as image pixel location (5 Vector data). This works quite well for the kmeans variant algorithms that use the Mahalanobis distance measure. The Euclidean distance is not good for this.
4.) Updated the cluster border detection code. It now looks at each pixel's N and W neighbours to detect borders.
5.) Implemented a simple OpenGL scatter plot graph class. Users can view graphs in 2d and 3d interactive mode.

Remaining tasks (implementation):
1.) Implement ellipses for the OpenGL graphing tools.
2.) Implement the Gaussian Mixture Model with EM based clustering algorithm.
3.) Implement the Markov Random Field clustering alogrithm.
4.) Design and implement a GUI to encapsulate the clustering algorithms.
5.) Convert image pixels to HSV colour space for clustering.

Uploaded Meeting 19 summary.

Tuesday 2/08/2005 - 10:32:22

Implemented the GNUPlot graphing function for the clustering algorithms. It generates the GNUPlot script, data, and postscript files for each image.

31/07/2005 - 17:13:02

Today I implemented the spatial (pixel location) features into the K-means algor ithm. However, it does not work properly yet. I need to write a method that will make a tradeoff between the closest centroid's mean colour value and the closest centroid's mean position, so that the clusters can be formed properly. Besides that, I have implemented a basic border outline method for the segmented image. A few output images have been uploaded.

Wednesday 27/07/2005 - 00:02:04

Finalised the literature review. Meeting 17 summary notes will be uploaded tomorrow.

Monday 25/07/2005 - 22:43:04

Updated the literature review draft. Meeting 16 summary will be uploaded tomorrow.

24/07/2005 - 12:52:10

Extended the Texture and Colour features sections in my literature review draft. Meeting 15 summary notes will be uploaded soon.

Wednesday 20/07/2005 - 00:56:46

Updated my literature review draft.

Friday 8/07/2005 - 16:31:14

My previous statement on using absolute values for the matrix multiplication in the Mahalanabos distance measure was wrong. The error in my implementation was the calculation of the fuzzy covariance matrix. Using absolute values was a hack solution that some how made my orientation sensitive fuzzy cmeans algorithm implementation work. I have corrected the covariance matrix calculation errors and now the normal matrix multiplication in the MD works properly. The results will be uploaded soon.

3/07/2005 - 22:42:03

Continued work on the fuzzy cmeans implementation. I discovered something special about the Mahalanobis distance measure. When I use absolute values in the distance calculation, the algorithms that use the Mahalanobis distance can achieve better looking results compared to a direct matrix multiplication. If I don't use absolute values, the segmented images will not look right, and the segments are not well formed (blocky).

I have also uploaded the new segmented image results.

Friday 1/07/2005 - 21:09:56

Wrote Honours Meeting Summary No.14

Thursday 30/06/2005 - 13:30:00

Updated this website.

Thursday 30/06/2005 - 13:24:14

Fixed the errors in the Orientation Sensitive Fuzzy C-means algorithm.