I’m a Computer Science PhD student at Carnegie Mellon University, advised by Keenan Crane. My research is in applied geometry, designing new algorithms to process geometric data like 3D meshes or point clouds. I apply these techniques to solve geometric problems in computer graphics/vision, scientific computing, and computational fabrication. My work is currently supported by an NSF Graduate Research Fellowship.
Previously, I was an undergraduate at Virginia Tech, where I worked with T.M. Murali on computational systems biology, and was active in competitive programming. Outside of work, I’m a big fan of long-distance running, hockey, and cooking.
A Laplacian for Nonmanifold Triangle Meshes
Symposium on Geometry Processing (SGP 2020)Best Student Paper Award
We extend intrinsic triangulations to apply to any triangle mesh, including those that are nonmanifold and have boundary. The resulting high-quality Laplacian serves as a drop-in replacement to improve the performance and robustness of many algorithms. This strategy also yields a point cloud Laplacian with similar properties.pdf code talk
PointTriNet: Learned Triangulation of 3D Point Sets
European Conference on Computer Vision (ECCV 2020)
Many geometric learning methods generate point sets, yet triangle meshes are crucial for applications. PointTriNet is a scalable and differentiable scheme which triangulates a given point set, enabling the direct generation of meshes in geometric learning. (coming soon!)
Variational Surface Cutting
ACM Trans. on Graph. (SIGGRAPH 2018)
Good surface cuts are short, yet allow a shape to be flattened with little distortion. Here, we show shape optimization can be applied to the Yamabe equation to directly compute smooth cuts with arbitrarily low distortion.pdf code talk shape opt tutorial derivations
Xtalk: a path-based approach for identifying crosstalk between signaling pathways
Pathways on demand: automated reconstruction of human signaling networks
npj Systems Biology and Applications 2016
A C++ header-only parser for the .ply file-format. Includes reading and writing in plaintext or binary mode, general and mesh-specific elements, and automatic type promotion.code