--------------------------------------------------- Superquadric Tensor Glyphs png/Slide1.png I would like this talk to be short and fun, so it doesn't have the standard structure, and feel free to interrupt and ask questions! --------------------------------------------------- Goal png/Slide2.png This paper is about finding a better way to inspect tensor values. By "inspect" I mean being able to pick out one value and see all the degrees of freedom at that sample.

Data inspection is something we normally don't worry about for scalar data, when we have a single value, we can just use grayscale or a colormap.

In vector data, we have three values, and this becomes are more interesting problem.

I'm interested in tensor data, specifically symmetric tensors, which for all practical purposes are 3x3 symmetric matrices. I'm most familiar with diffusion tensor data, where you use MRI to measure the extent to which the rate of water diffusion is a function of direction.

Here's an example of water diffusion in two-dimensions. Here I've put some food coloring on Kleenex, and you can see that its spreading out in all directions equally. But here, in the newspaper, its diffusing faster in this direction than the other, because of the microscopic structure of the paper fibers.

The ideal shape here is an ellipse, and actually these ellipses are examples of the inspection method that I'll be talking about: glyphs, or icons, where the shape and configuration of some base object is varied to convey the various degrees of freedom in a data value.

I think its important for the glyph design for tensor data to be informed by the mathematical properties of the tensors themselves. --------------------------------------------------- Space of tensor shape png/Slide3.png So, to review some linear algebra. A symmetric matrix can always be diagonalized, that is, decomposed into a rotation, a diagional matrix, and the rotation inverse. The rotation is made of the eigenvectors, and the diagonal matrix is made of the eigenvalues. And this is the natural decomposition of the tensor quantity into orientation and shape information.

And here is how that information is shown in the standard ellipsoid glyph. The orientation of the ellipsoid axes conveys the eigenvectors, and the scaling along the axes gives the eigenvalues. For the time being, I'm only going to be talking about the shape of these things, and we can identify the shape of the tensor with its three eigenvalues, which live in this space here.

We can restrict this space by ignoring the over-all size, and looking at this domain in which the sum of the eigenvalues (the trace of the original tensor) is constant. We can further restrict this domain by looking at the region in which the eigenvalues are sorted, so that we have only one instance of each set of three eigenvalues. --------------------------------------------------- Space of tensor shape, cont. png/Slide4.png Continuing this, we can take that little triangular domain, and deform it into an equilateral triangle, and consider that as a barycentric shape domain. That domain is parameterized by some metrics by Westin, which are used in the diffusion tensor literature, and their details are in the paper.

And its this domain that I want to use to consider the design of better tensor glyphs. --------------------------------------------------- Glyphs: ellipsoids png/Slide5.png So here the standard ellipsoid glyphs.

One thing I don't like about these glyphs is that they have this problem of visual ambiguity- all these glyphs tend to look similar. --------------------------------------------------- Worst case scenario: ellipsoids. png/Slide6.png And here's how bad it can get with the ellipsoids. Here's a set of tensors with varying shapes, but the orientation is really unfortunate, so that in image space, they look pretty similar.

From another viewpoint, we can see how different they are. The subtle shading cues are doing a poor job of showing the different aspect ratios among the ellipsoids. --------------------------------------------------- Glyphs: cuboids png/Slide7.png So we can use something like cuboids, which very clearly show the aspect ratios of the eigenvalues with their hard edges.

But these have a problem too, which has to do with the symmetry of the tensors. --------------------------------------------------- Eigensystem symmetry png/Slide8.png So, I've taken one of the problem glyphs, for which lambda_1 and lambda_2 are equal. Now, this means that the eigenspace associated with that eigenvalue is two-dimensional. That means that the eigenvectors that we calculate, v_1 and v_2, are not unique.

They might be these two, or these two, or these, or any two vectors in this space-- there is no unique answer. On the other hand, when we calculate the eigenvector associated with the third eigenvalue, that direction is numerically well-defined.

So, the idea is that the mathematical symmetry of the tensor eigenvalues should be reflected in the geometric symmetry of the glyphs geometry that we use to represent the tensors. --------------------------------------------------- Glyphs: cylinders png/Slide9.png So, we could use cylinders, and those of the kind of symmetry I was just talking about.

But there's this ugly seam, and there's still a symmetry problem with the case up here, where the geometry should be spherical, because none of the eigenvectors is well-defined. --------------------------------------------------- Basic idea png/Slide10.png So the basic idea in this paper is to combine the best aspects of these different kinds of glyph geometries. --------------------------------------------------- How: superquadrics png/Slide11.png And I do that by using superquadrics, which are this tunable two-dimensional space of shapes shown here- see the paper for the details.

Superquadrics were introduced to computer graphics by Barr in his 1981 CG+A paper. And they have been used in visualization before, in both an information visualization and a scientific visualization context. Shaw et al. measured the perceptual ability to discriminate these shapes, and used them to both represent properties of individual documents in a large corpus, and also the values in a magnetohydrodynamic flow simulation.

So, like that work, I'm going to be using this variable glyph geometry to represent values, but the contribution of this paper is to use the glyph to represent the degrees of freedom in tensor values. --------------------------------------------------- Basic method png/Slide12.png And here's how its done. We're going to be selecting this little region of the superquadric parameter space, spanned by the sphere, cylinder, and cuboid, and use it to represent this right half of the barycentric shape space.

And then for the other half, we're going to use a different copy of the shape space, and map it this way. So we're using a small portion of the parametric space, twice, to represent the full range of tensor shape. --------------------------------------------------- Glyphs: superquadrics png/Slide13.png And here's what it looks like. --------------------------------------------------- Seam: hidden png/Slide14.png So you might be wondering what's going on with the parameterization, because on this side the pole, or axis, of the parameterization is going this way, and this side its the other way. So what's happening in the middle?

If you look at the equations used to define these shapes, in the paper, and look at what happens right on this seam, you will find that there is one shape, which is parameterized in two different ways.

So, there is a seam, a change in parameterization, but there truly is continuity of the shapes across the seam. And you normally will never see this seam, as long as you're using a decent number of polygons to represent these things. --------------------------------------------------- One parameter png/Slide15.png There is one parameter that you have to play with when you're using these glyphs, which determines how aggresively edges form as a function of the difference between eigenvalues, I call it gamma.

When its high, edges form quickly- notice that these shapes up near the sphere already have edges. --------------------------------------------------- One parameter (3) png/Slide16.png And, as I lower gamma, those edges soften, so that they only form when the eigenvalues are really different. --------------------------------------------------- One parameter (1.5) png/Slide17.png So that eventually, ... --------------------------------------------------- One parameter (0.75) png/Slide18.png ... the glyphs become ... --------------------------------------------------- One parameter (0.0) png/Slide19.png ellipsoids. The superquadric glyphs have ellipsoids as a special case, when gamma is zero. --------------------------------------------------- Good default choice png/Slide20.png I've found that for the most part, however, a value around three tends to works well, but finding a more principled choice for this quantity is an element of future work. --------------------------------------------------- Worst case scenario, revisited png/Slide21.png So here's that worst case scenario again. Remember how the ellipsoids did a poor job of showing the range of tensor shapes.

So here are the same tensors, same lighting, same orientation, but shown with superquadrics. --------------------------------------------------- Worst case scenario, revisited png/Slide22.png And here's that other viewpoint. The difference between the two methods is a little less dramatic now, but there is an aspect of shape which I think is being better shown by the superquadrics.

Looking at these three ellipsoids [2nd, 3rd, and 4rth on top row], its this one (the 3rd) which has two equal eigenvalues, and I'd say that this property is better indicated by the superquadrics than by the ellipsoid. The same applies to these tree [1st, 2nd, and 3rd in bottom row]. --------------------------------------------------- Results png/Slide23.png So here's some of the diffusion tensor data that we'd like to inspect. The grayscale image shows the amount of anisotropy, or how different the tensors are from spheres, and the coloring used is this spherical colormap of the principal eigenvector which has, for or worse, become the standard map that people use to emphasize the principal eigenvector direction. Here is a slice of the data shown with ellipsoids. --------------------------------------------------- Results png/Slide24.png And here's the same slice with superquadrics. As I go back and forth between these two, you can see the places where the ellipsoids are not doing well at showing the range of shapes. --------------------------------------------------- Results (3D) png/Slide25.png So here's some of the same data, in three dimensions. Sorry for not showing an image that gives more context, but this is just half of the brain, looking at the posterior part of the corpus callosum, which is the main bridge between the two hemispheres. --------------------------------------------------- Results (3D) png/Slide26.png And with the superquadrics, you can see that on the surface of the corpus collosum, the glyphs have more of a planar component, but on the inside, they're basically very linear. And there are other aspects that you can see as I switch between the two images. --------------------------------------------------- Conclusions png/Slide27.png So, I feel that the superquadric glyphs are a better tool for inspecting individual tensor values.

The idea is that if you have a simple but expressive glyph geometry, then all of its other degrees of freedom (color and other surface properties) can be used to convey other aspects of the information.

Also, its easy to use the parametric version of the superquadric equations to implement these in your own tools.

I'm working now in some ideas on how to come up with a more principled choice of gamma. And I should point out that this method can work with negative eigenvalues if you follow the example of Kirby in his 1999 2-D flow-viz paper. Also, you can extend other tensor vis methods like hyperstreamlines with the ideas here- by making the cross-section of the streamline into a super-ellipse. --------------------------------------------------- Final note png/Slide28.png Finally, a quick note about the last sentence of the paper:

Every figure in this paper can be regenerated exactly with open-source software and public datasets,

and here are step by step instructions for creating all the diagrams and renderings that appear in the paper. This was part of my ongoing experiment in trying to implement and stick to the idea that, perhaps, visualizations should be reproducable, especially if they're supposed to be scientific visualizations.

I just don't think its that's too unreasonable.

Anyway, Thanks to the NIH for funding, and for people in my department for their help and ideas, and Andy Alexander for acquiring the dataset I'm using.