Current Research
Learning optical flow
We use linear subspace constraints on optical flow to predict full-frame flow from sparse flow and recover camera motion. Simultaneously, we label outlying flow vectors. The subspace constraints hold not only for perspective cameras, but in fact for a very general class of imaging systems, including catadioptic and multiple-view systems.
We deal with the extended motion of the imaging system through an environment that we assume to have some degree of statistical depth regularity, and label optical flow vectors that violate this regularity assumption. We demonstrate results of finding the optical flow subspaces and employing them to estimate full-frame flow and to recover camera motion for catadioptic and multiple-view imaging systems, both in indoor and busy outdoor urban environments.
Interactive Behavior Learning
Low-level navigation behaviors are difficult to create and tune by hand. Also, many characteristics we would like navigation controllers to have are difficult to parameterize. Instead of hand-crafted behaviors, we am working on driving by example. While a human drives a robot with a remote control, the robot remembers each situation and the action taken by the human. At runtime, the robot uses the stored situation-action pairs to drive autonomously.
Past Projects
Mobile Manipulation
A robot arm and manipulator, mounted on a Segway RMP200 platform, that serves coffee. It locates a coffee maker and fills a mug from it, and brings the coffee to a customer.
Myro 3.0
In the summer of 2008 I conducted an internship at Microsoft Research, collaborating with the Institute for Personal Robots in Education (IPRE), to develop parts of Myro 3.0, the upcoming version of IPRE's educational robot software.
Myro 3.0 is implemented on .NET. A back-end communicates with robots via Microsoft Robotics Developer Studio, and exposes simple middle- and high-level functions to any .NET language, including IronPython, IronRuby and C#. These exposed functions make it very easy for students to script robot behavior, and for GUI's to interact with robots in real-time.
I am no longer working on this project. IPRE's up-to-date information on development of Myro 3.0 and Pyjama is on the IPRE wiki.
[ More info ]
Using RANSAC to Determine Camera Pose
My final project for Computer Vision (CS4495). I used the 4-point algorithm to automatically calibrate camera position.
[ More info ]
Using Finite-Element Analysis to Compare Jaw Strength in Hericthys minckleyi
I used Finite-Element Analysis (FEA), a computer simulation of mechanical stresses normally used in engineering, to quantify the strength of H. minckleyi jaws. I used Micro Computed Tomography (ยต-CT) scans to generate 3D models of the jaws, and wrote software to help analyze the data. I then studied the relationship between the location of stress in the jaws during biting, and the differences in jaw shape that occur between individuals that do and do not crush hard prey.
Convergence in a Mechanically Complex Phenotype: Detecting Structural Adaptations for Crushing in Cichlid Fishes. C. Hulsey and R. Roberts and T. Streelman. (2008). Evolution 62(7) July, pp. 1587-1599. [ Publisher pdf ]
