[Biomedical applications]
  [Human-robot Interaction]
  [Art-based modeling]
  [Subtle Gaze Direction]
  [Surface modeling]
This page lists my general research interests, and includes links to specific project web pages. If you are interested in working with me on any of these projects, or on something else, then there are some rules that you need to be aware of before you contact me.

My research interests fall broadly into four categories: biological modeling, art-motivated interaction and rendering, human-robot interaction, and surface modeling.

Biological modeling

In biological modeling I look at how geometry and topology can be used to analyze, and measure, the relationship of shape to function for a range of structures such as hearts and joints, and in brain development and in bat sonar. Human-computer interaction is a necessary component of my research in these areas because it is the human’s domain knowledge in biology that we are tapping into when designing algorithms and techniques. For biologists, simply creating a mathematical model of their data is only part of the story — ideally, these models should explain biological function and drive the development of new hypothesis. This is the aspect of biomechanical research that I find truly captivating: advancing biological knowledge through the application of domain-specific computation and algorithms.

Modeling bat ears and noses in order to learn how the geometry of them influence sonar pattern and functionality.

Analyzing the developing heart in order to understand how shape influences stresses and strains, which in turn affects shape development through cell sensing mechanisms.

Understanding how ligaments and bones interact to create movement in the wrist. To come: 3D image segmentation, brain development

Mesh processing and shape analysis sourcecode and tools that I've made available via Sourceforge.

Art-based interaction and rendering

This area is often called non-photorealistic rendering, although I am less interested in duplicating traditional media on the computer and more interested in capturing the artistic design process, and in developing the computer as a new art form. Over the years artists have developed a loose set of rules and traditions that enable them to effectively convey information to viewers. Many of these rules and traditions have been developed by "reverse engineering" the human visual and cognitive systems. I am working on ways to quantify these decisions in a computationally tractable form. The first step is to develop techniques that enable artists to manipulate images and models in ways that are more closely related to the types of decisions they make. The second step is to automate parts of the decisions process, enabling anyone to more effectively convey their own information.

To come: 3D paintings, abstract rendering, 3D sketching

Widgets for camera control.

Camera interpolation using image-space constraints and Linear matrix interpolation.

Using non-linear projection to render scenes.

Controlling color and texture.

Human-robot interaction

Coming soon

Lewis the robot photographer

Cooperative robot tasks

Subtle gaze direction

Subtle gaze direction is a fairly simple technique that takes advantage of the way the human visual system works to guide visual focus around an image without using overt cues that the user consciously sees. At any given time we are only attending to a very small portion of our high-resolution visual field (the fovea) - about the width of your thumb held at arm's length. Your eye saccades around the scene, jumping from point to point, based on a variety of cues. Your brain integrates this into one seamless image. One cue the brain uses is motion. By simply modulating a portion of the image in the peripheral vision (and turning it off before the eye saccades to that location) it's possible to direct someone's gaze to that location. This cue is largely subconscious, so in effect, it is possible to "drive" someone's gaze around an image. We apply this technique to a variety of applications, both to help a user perform a task and to see how visual attention affects other cognitive functions such as recall.

Coming soon: Using subtle gaze direction to direct someone's gaze around a scene for teaching art history, locating objects, and mammogram readings

Surface Modeling

I am primarily interested in the representation, creation, and comparison of complicated, organic shapes. To date, most of the more interesting free-form models are made by scanning in 3D shapes. Creating complicated shapes from scratch on the computer has proved to be a difficult task. There has been some progress in quickly sketching simple blobby models, and some beautiful work in sculpting and sketching of implicit models and editing of mesh models. I have developed a novel analytical surface representation, based on manifolds, that supports free-form editing, and sketch and widget-based tools for editing these, and other, surfaces. The heart of this representation is the ability to build complicated surfaces by locally specifying the desired shape, then blending the results together.

MRI, CT, and Ultra sound all provide methods for visualizing the internals of human bodies. While visualization is useful, building full 3D models of the data opens up a potentially huge array of diagnostic tools, ranging from physical simulations to detailed comparisons of anatomical differences. Unfortunately, at the moment it is a very time-consuming process to produce these models, requiring a great deal of human intervention. I am working on ways to automatically extract these models, or speed up the manual segmentation process, taking advantage of the fact that we know the anatomy the data represents. This involves representing not only the basic shape, but how that shape can deform across the population.

I also have developed a large number of shape analysis tools that I've made available via Sourceforge.

Representing surfaces using manifolds.

Manifolds as a parameterization tool. Also includes a list of parameterization techniques (up to 2002 or so) and the people who work on them.

Editing curves and surfaces.

Fitting surfaces to data.

Comparison of surfaces.

While at Microsoft I worked in the area of facial animation.

The Rules

In general, I'm always interested in talking to prospective students who are interested in doing research in computer graphics, design, human-robot interaction, etc. This applies both undergraduate and graduate students. However, I have a couple of basic rules that you need to know before you contact me.

For undergraduates

  1. In general, I prefer students to have some significant programming experience (usually in C or C++) before they get involved in research. What constitutes "significant"? That depends on a number of things. As a bare minimum, you should have successfully completed the introductory computer science sequence (and done well in it). Courses that have project components are a definite plus, too. If you're coming from outside of the Department of Computer Science and Engineering, or are interested in a project that does not involve programming, then there are projects available, but they may be more data processing related or human-subjects studies, or require you to learn programming at some point.
  2. Computer graphics and robotics research requires a fair amount of mathematics. If you're seriously interested in doing research, then you'll need to have a basic grounding in linear algebra. Being comfortable with math is a big plus.
  3. If you've taken one of the my courses, then I probably remember you. Send me an email and let me know that you're interested in research. Keep it short and to the point.
  4. As a general rule, I'm only interested in "structured" research, where students register for an independent study, or something similar. I have written up some projects suitable for undergrads or masters. I am open to student-driven projects, but only if you can give me a clear idea of what you want to do.
  5. If you're just interested in talking about computer graphics or art and engineering in general, first take a few minutes to read about the research that we do on my web pages. Better yet, find a student who has worked with me and talk to them. Finally, when you have a rough idea of what we're about, send me a brief email and we can meet.
  6. If you've made it this far, then you must still be interested. Don't worry too much if you don't meet all of the criteria above. If you meet most of them, then send me email, and we can discuss things.

For graduate students

  1. If you're considering the graduate program in Mechanical Engineering/robotics/Computer Science, please apply to the appropriate program. I do not respond to "is there space in your group?" emails. I can't admit students directly, so don't ask. Every potential student must go through the same formal application procedure. I will ignore letters about admissions and assistantships. If I'm looking for new graduate students and you've applied, then I'll find you.
  2. If you're a prospective graduate student and your research interests seriously overlap with mine, then send me an email, and briefly tell me about yourself, and what you're interested in doing, so that I know to be on the lookout for your application packet when it arrives. Letters with full CVs and that don't mention specific research issues will be ignored. Email without my address in the To: line will also tend to get ignored, since that usually means a mass mailing.
  3. If you're currently a graduate student at Oregon State and you're interesting in talking about working with me, send me a brief email, and we can take it from there.
  4. I've you've been accepted to graduate school here without funding, don't ask me if I can fund you. If I had money to fund you, we would have made an offer with funding.
Page written by Cindy Grimm.