Hyperspherical Statistics

 

Many geometric quantities have a natural representation as a unit vector on a hypersphere. For example, an angle can be thought of as a point on a circle, a direction in 3-D as a point on a sphere, a 3-D rotation as a unit quaternion (which is a 4-D unit vector on the hypersphere S^3), and the "shape" (i.e. all the information that is left when you remove position, scale, and orientation) of a sequence of N points in 2 or 3 dimensions as a point on the hypersphere S^{2N-1} or S^{3N-1}, respectively. Since angles, rotations, and shapes are plentiful in physical systems, there is a need to perform probabilistic inference on hyperspheres when there is uncertainty in the system. However, most existing algorithms ignore the topology of hyperspheres, and instead use a Gaussian noise model in a local, linear, tangent space. These methods work well when the errors are small, but as the variance grows, so too does the error of the linear approximation. Thus, a major theme in my research is to develop practical algorithms for inference on hyperspheres, without making the local linear approximation.

3D Object Recognition

 

As 3-D sensors become faster and more accurate, there is an increasing need for robust object recognition from point clouds. For example, if a robot needs to retrieve a particular dish from a shelf in the kitchen, it needs to identify the object and localize its position and orientation in 3-D space. In order to be robust to occlusions (which occur quite frequently in cluttered environments like kitchens), the robot must use local/partial information on an object to infer its global shape and identity. Therefore, my current work is focused on using the statistics of local geometric features (such as surface normals and curvature) in order to identify and localize 3-D objects.

Occluded Shape Inference

 

Another key task in cluttered environments is to estimate what the hidden parts of objects look like. This ability is useful for manipulation, where the robot must reach behind an object to manipulate it. It is also useful for object recognition and localization, particularly for ruling out object configurations which are "geometrically impossible"--i.e. which would cause two or more objects to occupy the same space, or which would cause parts of an object to occupy space which we know to be empty.



Dynamic Manipulation

 

Coming soon...