Research Projects:

Opportunistic Refinement:
Given 1UAV, predefined waypoints and time bounds on reaching them. Add additional waypoints and see how many of these can be covered within the same time bound. This is the simplified problem statement of my research. The current solution is a Brute Force one. Here paths to all waypoints are computed (red lines) and time of arrival is approximately calculated. Given the time to reach each waypoint a graph search is done using Dynamic Programming approach. The yellow line is the predifined path and alternate path obtained taking the time constraints is shown in blue.

Scarab Manipulation Gripper:
A gripper interface was developed for the 'Scarab' Robotic Platform. My work involved microcontroller programming and writing a Player driver. Arduino Duemilanove board was used due is its compact form factor and direct USB connectivity. The gripper can be controlled via MATLAB using serial commands or through the developed Player driver. Although the gripper has only 1DOF, the driver and board can be used to control a higher DOF manipulator with minimal changes. The gripper design and fabrication was done by Michael Shomin. Video

Course Projects:

CIS 581: Automatic 2D Image Mosaic
The goal of this project was to create an image mosaic or stitching, from a collection of many small images. The project focused on image feature detection, feature matching and image mosaic techniques.  Harris corners with adaptive non-maximal suppression were used as keypoint detectors. A subsampled image around each of these keypoints was used as a feature and corresponding match was found in other image. Given the rough correspondences in 2 images a best homography is calculated using RANSAC. Finally the two aligned images are stitched using Pyramid Blending. The procedure is repeated for remaining images.

MEAM 620: Path planning for formations of two robots with three degree of freedom
The aim of this project was to do planning for two non-holonomic robots with three degrees of freedom (position & orientation) with a constraint that both the robots have to be within certain distance of each other. Traditional A* algorithm was extended to include a third dimension in planning, the orientation. A leader-follower approach was used, the leader decided its best move based on A*, this info was used by the follower robot to come up with its own move keeping the distance constraint.
Project Member - Rajat Rastogi Video.

CIS 580: Find Cover & Swap
Given 2 book cover images, automatically find these in another given image with several books and swap them. SIFT features and matching were used to detect the covers in the given image. Once found, homography was calculated for both the book covers and then swapped.

MEAM 510: Robokey
3 custom built, fully autonomous robots capable of playing hockey. Each robot was equipped with a MSP430 microcontroller for wireless communication. The bots wirelessly received its position in the field,  obtained using colored markers and an overhead camera. The bot could track the puck using the omnidirectional IRs emitted by the puck. For 2 robots a Crankshaft mechanism was used for shooting the puck while the Goalie bot had a constantly rotating puck repellant.
Team members - Jamie Gewirtz, Sunthar Premkumar.

MEAM 520: Autonomous Robot Slalom
The main objective was to make a robot autonomously navigate it’s way through a three-gate slalom course. The robot was to be controlled wirelessly and the images of the course at 15fps obtained through a wireless camera mounted on the robot were the input. MATLAB was used for image processing. The red poles were detected using combination of RGB and HSV formats for noise robustness.

Older Projects:

Senior Year Project: Colored Object Tracking Robot
Built a robot capable of tracking a given colored object. Uses images obtained via a USB webcam to track colored object. Stepper motors were used to drive the bot via parallel port of a computer. Image processing was done in MATLAB. Once the object boundary was extracted from the image, a simple centroid tracking algorithm was implemeted to keep the obeject within camera view. Objects size was used to maintain its distance with it. The 2nd version of the bot used DC motors insted of stepper for faster tracking.

This was my first attempt at autonomous bots, a small scale robotic platform capable of line following, light seeking and obstacle avoidance. A PIC18f452 was used for decision making, 6 IR receiver/transmitter pair for line following. These pairs were strategically placed to enable the bot to follow complicated paths such as turns greater than 90 degrees. The light seeking was achieved by photoresistors, with the robot turning and moving towards the most active one. For obstacle avoidance the robot moved randomly, detecting obstacles with feelers attached to SPST switches.