-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mean curvature values very different from FreeSurfer's #40
Comments
Joachim Giard's response (@joachimgiard): The mean curvature is a measure of the convergence of the normal vector. For a sphere, it is negative everywhere, unless you consider the normal vector are pointing inside. It is logical that a topological sphere has a negative average mean curvature. It is a matter of scale choice. The values are subject to the same kind of choices. The mean curvature is inversely proportional to the radius of circles you are able to fit on the surfaces. So, for a symmetrical hole (both principal curvatures are the same), an absolute value of 5 means you can fit a sphere of radius 0.2. Since meshes are discrete surfaces, in theory, the curvature is 0 on polygons and infinite on edges and vertices. It is thus necessary to take the average in a neighborhood. A solution to compare curvatures may be to normalize them before computing the average per region. In our case, the curvature for the cuneus has a high value for both our measure and the fs curvature. Is it a region with fewer sulci? |
Some of the regions with higher curvature in fs are higher in mb, and likewise for low curvature, but there are clear exceptions, such as pericalcarine and transverse temporal. I wonder why there should be such discrepancies? |
I think, again, that the estimation choices may lead to such differences. It could be good to take a look at the curvature (without averaging) on a complete surface and to have a closer look to those particular regions. |
Mindboggle mean curvature values are all negative while FreeSurfer values are all positive, and with very different absolute values (ex: subject OASIS-TRT-20-1). Travel depth values are above 1 but all geodesic depth values are between 0 and 1. I'll need help figuring these things out.
curvature() is run here:
https://github.com/binarybottle/mindboggle/blob/master/mindboggle/mindboggle#L776
which calls this:
https://github.com/binarybottle/mindboggle/blob/master/mindboggle/shapes/shape_tools.py#L111
which in turn calls CurvatureMain.
The curvature values are written to a table here:
https://github.com/binarybottle/mindboggle/blob/master/mindboggle/utils/io_table.py#L389
The text was updated successfully, but these errors were encountered: