My research work can be considered under the broad
areas of computer graphics and geometry. Within these
areas, during my graduate years, I have worked on various problems including
collision detection, solid modeling, geometric simplification of models,
surface reconstruction, efficient rendering of curved surfaces, texture
mapping on curved surfaces, image mosaicing for teleconferencing application,
and VLSI architectures.
The major goals driving my research are to obtain
complete and usable solutions for those practical problems in geometry
that arise in graphics applications. To achieve these goals, I work on
developing fundamental theoretical concepts in geometry, which permit me,
for example, to build efficient algorithms for graphics rendering. Such
research also spins off a wide variety of inter-disciplinary research,
ranging from graphics hardware design to structural biology.
Computer graphics research encompasses various areas
that include model creation (like laser scan devices and model authoring
tools), model representation (point sets, triangles, curved surfaces etc.),
model manipulation (user interface), and model rendering (non-photorealistic
rendering, stereo rendering etc.). In each of the above areas there are
variety of problems based on geometry. For the sake of brevity, I list
only a few problems stemming out of my dissertation in the areas of model
creation, representation and manipulation.
Problems from Surface Reconstruction
Laser scans of objects yield large point sets with
a normal vector at each point. These point sets sampled from the underlying
objects are used to build computer models of these objects. Type of representation
used to represent these computer models and manipulation of these models
would depend on the requirements of the application. In my dissertation
I chose to represent these models as sets of triangles, as my applications
involve visualization using graphics hardware that is optimized for triangle
rendering and physically based simulation which required surface representation.
There exist robust but slow surface reconstruction algorithms that are
theoretically proven correct for models without boundary. An important
contribution of my work is the first theoretically proven correct reconstruction
of models both with and without boundaries. This is one of the fastest
algorithms known for surface reconstruction today. An implementation of
this algorithm will be released soon for public use.
Multiple laser scans of the same model from different
view points are merged to get the point set of the complete model. Surface
reconstruction algorithms have to be exceptionally robust to handle the
noise due to device instabilities and the noise brought in by numerical
errors in transforming points from one scan to be merged with the other.
There exist robust algorithms to handle such input sets; but they are slow
and assume models with no boundaries. Insufficient sampling is another
kind of "noise" that would affect the identification of boundaries in the
model. As most algorithms assume models with no boundaries, this kind of
noise poses less problem to such methods. Robust and efficient algorithms
for reconstructing models with boundaries from point sets is still a problem
that holds a lot of promise for further research.
Related Work:
Surface
Reconstruction based on Lower Dimensional Localized Delaunay Triangulation
M. Gopi, S. Krishnan, C. T. Silva, EUROGRAPHICS 2000.
A Fast and Efficient
Projection Based Approach for Surface Reconstruction
M. Gopi, S. Krishnan, International Journal of High Performance
Computer Graphics, Multimedia and Visualisation, Vol. 1, No. 1, pp. 1--12,
2000.
Resampling and Model Simplification: (Short term project)
In my dissertation I defined, for a given set of
points, a distance function that captured the curvature variation in the
model. I used this distance function in the sampling and reconstruction
processes and this function has a potential to integrate various phases
of model manipulation. For example, I would like to use this distance function
to resample large point sets, even before the reconstruction process, for
efficient storage and processing. Further, I successfully used this function
in surface simplification also to reduce the complexity of the model for
efficient rendering. Another graduate student, Deepak Bandyopadhyay
implemented this idea for a class project, and the report is in http://www.cs.unc.edu/~debug/258/proposal.html.
Pictures of the results can be seen in http://www.cs.unc.edu/~debug/258/final.html.
I would like to supervise similar projects that might lead to good dissertation
topics. Earlier, I worked in model simplification when I initiated a project
to simplify spline models. As far as I know, this was the first attempt
to simplify models in curved surface representation without converting
them to any other intermediate representation like a polygonal representation.
This experience, I am sure, will be useful in dealing with problems related
to resampling and simplification.
Related Work:
Simplifying Spline
Models
M. Gopi, D. Manocha, Computational Geometry, Theory and Applications,
Vol 14, Issue 1-3, pp 67-90, Nov. 1999.
A Unified Approach
for Simplifying Polygonal and Spline Models
M. Gopi, D. Manocha, Visualization '98.
Hierarchical Subdivision: (Short term - Long term project)
Many physically based modeling simulations, like
collision detection, need surface representation. Efficiency of these simulations
usually depends on good hierarchical representation of these reconstructed
surfaces. Most of the present hierarchical subdivision methods assume
an unorganized set of triangles without connectivity information. My work
on ShellTrees is an example of such a subdivision method. But if the model
is reconstructed and simplified using known techniques, we would have the
connectivity information. Hierarchical subdivision of models with connectivity
information is still an unexplored sub-field that I am excited to study.
For example, all the hierarchical subdivision methods
used in collision detection applications invariably use bounding volumes,
like bounding boxes and spheres, to enclose regions of the model.
In these cases, spatial proximity is used as a guiding principle to subdivide
the model, and connectivity information is not used even if it is available.
Thus two unconnected regions of the model might lie in the same bounding
geometry. But with the connectivity information given and used, two
triangles being in the same bounding volume might mean not only spatial
proximity but also "topological proximity". This kind of hierarchical subdivision
has numerous applications. For example, this subdivision method can be
used as a guide to approximate protein structure represented using thousands
of spheres to be represented using fewer spheres without losing much of
the underlying backbone information.
Relating different geometric processes with
one another not only improves the understanding of these processes, but
also leads to innovative solutions to various fundamental problems. I believe
that there is a strong connection between the simplification process and
the process of hierarchical subdivision in the presence of connectivity
information. I am very eager to explore this relationship.
Related Work:
Rapid Accurate
Contact Determination between Spline Models using ShellTrees
S. Krishnan, M. Gopi, M. Lin, D. Manocha, A. Pattekar, EUROGRAPHICS
'98.
Time varying triangulation: (Long term project)
I was looking into the problem of dynamic triangulation
when I was in the telepresence group at UNC. Speed issues aside, the basic
problem of triangulating dynamic surfaces itself is an exciting geometric
problem. This has various applications in molecular modeling, morphing,
and transmission of arbitrary animated models. For example, in molecular
modeling, researchers are interested in visualizing protein folding or
elastic movement of sub-molecular structures. Further, they also want to
visualize the structural similarity of one protein molecule from the other
using time varying molecular morphing. My research proposal document on
dynamic triangulation problem for telepresence applications can be viewed
at http://www.cs.unc.edu/~gopi/ResearchProposal.ps.
In this document, I have proposed a time coherent surface reconstruction
using the information of the "displacement vector" that is similar to the
vector computed by MPEG systems for video compression and transmission.
One of my immediate research plans is to embark on a project based on this
proposal document.
Model Representation: (Long term project)
Explicit geometry, light field models, relief textures,
normal meshes, distance fields, and surfels are examples of model representations
developed over recent years. Representing models using geometry (e.g. triangle
meshes) and image-based techniques (e.g. light fields) form opposite ends
of the spectrum. The former is not dependent on the viewing direction but
dependent on the scene complexity while the latter is dependent on the
viewing direction but not dependent on the scene complexity. I am interested
in parametrizable representations that span the spectrum from explicit
geometry to image based representations.
Each of the above problems is a fundamental problem
in computer graphics and many of its applications. Hence they have potential
for starting long term and other projects requiring inter-disciplinary
collaboration. My immediate research direction would be defined by these
problems and few other exciting problems both related and unrelated to
the above topics.