Comparison between 3D mesh plots

13 views (last 30 days)
siddharth rawat
siddharth rawat on 23 Jul 2016
Edited: siddharth rawat on 10 Aug 2016
I have been working on Digital holographic microscopy (DHM). It is a well-established imaging modality to visualize a microscopic object (say a red blood cell) in 3D. I have reconstructed 3-D profiles of these micro objects using the unwrapped phase maps of these micro objects using the mesh function. Now I want to compare these 3D mesh plots with the other mesh plots (of the same micro object), is SSIM a viable option in this situation? Also, what other comparison methods can I use?

Answers (1)

Div Tiwari
Div Tiwari on 8 Aug 2016
Since the third dimension of a grayscale image matrix can correspond with the depth data of your 3D profiles, SSIM is a reasonable approach for a similarity comparison. However, you must make sure you specify the 'DynamicRange' name-value pair argument appropriately or normalize your data along the Z-axis.
Additionally, you may modify the 'Exponents' name-value pair argument to affect sensitivity towards the correlation of local means, standard-deviations, and cross-covariances respectively (a higher exponent means greater sensitivity). For example, if the mean thickness is more important and the shape is not as much for a particular comparison, you can increase the value of alpha (first element of 'Exponent' vector) and decrease the value of gamma (third element of 'Exponent' vector). The documentation page describes the mathematical background for this: http://www.mathworks.com/help/images/ref/ssim.html#bt5rm3r-1
Finally, some other methods of comparison are element-wise difference (with optional normalization against the data), 2-D cross correlation using 'xcorr2' (requires the Signal Processing Toolbox), or implementing a simple script for cosine similarity.
  1 Comment
siddharth rawat
siddharth rawat on 10 Aug 2016
Edited: siddharth rawat on 10 Aug 2016
Thank you very much for the detailed answer, can you clarify, when you say ''.... make sure you specify the 'DynamicRange' name-value pair argument appropriately....''. the height values are stored in a 2D matrix A, which is a double. secondly, I am comparing the two same class micro-objects, whose height values may vary a little (some microns, in 3rd or 4th decimal place) and the shape is same (a 3D donut (for red blood cells)), 3D shape and cell thickness are important features, I would like to know how to adjust the parameter ''beta'' for contrast in my case. from the unwrapped phase maps I select ROIs for many cells (of same class) hence they are randomly oriented and are shifted, as you know that the SSIM is sensitive towards rotation and shift (as it is not rotation and shift invariant) and if I compare them using SSIM using the default parameters, mean SSIM values comes out to be low (but the cells are of the same class). Thirdly, If I use different sensors (a monochrome sensor and a color sensor) to record digital holograms for the same object and perform 3D reconstructions the mean SSIM value is low, as expected because the color sensor has a mosaic Bayer filter and a different pixel size and count (due to different sensor chip size), in this case how to adjust the parameters for illumination as the dynamic range values for the sensors are unknown to me.
(I have added a 3D reconstruction for E.Coli bacteria for illustration)

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!