Research
Guide : Dr. Eric Eaton, Faculty, Computing and Information
Systems Dept., University of Pennsylvania
Duration : Sept 2013 - Feb 2014
Publication :
Vishnu Purushothaman Sreenivasan, Haitham Bou Ammar, and Eric
Eaton.
Online Multi-Task Gradient Temporal-Difference Learning. In
Proceedings of the 28th AAAI Conference on Artificial Intelligence
(AAAI-14), July 2014. [Student Abstract]
I worked on incorporating Lifelong Learning in a Reinforcement
Learning (RL) framework. The idea is an agent maybe required to learn
several RL tasks in order to perform the overall task. Each of these
task could be learnt by a standard RL learning algorithm but all these
different sub agents do not transfer knowledge between them (Transfer
Learning). A recent algorithm proposed by Paul Ruvolo and Eric Eaton,
"Efficient Lifelong Learning Algorithm" presents an efficient
methodology for transfer of knowledge between several similar tasks by
learning a set of shared basis vectors which form a knowledge base.
Details are present in this 2 page abstract paper accepted
in AAAI-14 conference.
Software Internship - KeyMe Inc., NY
Guide : Ms. Paige Pruitt, Senior Embedded Engineer, KeyMe Inc.
KeyMe is a New York City-based startup that is revolutionizing the
locksmith industry. KeyMe allows users to store, share, and duplicate
their physical keys using a digital scan that is securely stored in
the cloud. The KeyMe kiosks allow customers to instantly make copies
of their keys. It also allows them to securely store digital copies of
their keys so that if they ever get locked out, they can make a spare
key at the kiosk. There were two main projects I was working on
-
Automating the calibration routine for the kiosk during
installation using computer vision and machine learning.
- Checking the post cut key for errors using computer vision.
Methodology
-
I initially tried to perform background subtraction to extract
the key image by modelling the background using GMM and
performing grabcut to extract the foreground. But finally I
just used simple thresholding in different color spaces to
obtain the foreground. I used the extracted foreground image
to extract information about the key and used this
information, along with certain motion run tests on the kiosk
to obtain the calibration parameters.
-
For the postcut key bit depth extraction, I used standard
vision techniques to find the bit tip positions. I tested the
heights obtained from vision against a standard code book to
check for errors in the cutting process.