Joseph A. Suarez
Linkedin & Mail
  • Home (Thematic)
  • Home (Chronological)
  • Resume
  • MLCourse

Virtual Reality Glove

Allows the user to map arbitrary gestures to arbitrary keystrokes. This was a three day project that gave me the opportunity to combine electronics, modular design, and machine learning, all while passing data through several programming languages. Keypress emulation is limited to OSX but is easily extensible.

Github Repo
Overview: The completed Virtual Reality glove allows the user to easily record gestures and bind them to key commands. All gestures are supported: the device is not limited to single fingers or fully bent fingers. It runs on an Arduino-compatible, 5V Pro Micro, uses a total of four flex sensors, and features a custom thumb button in order to suspend gesture recognition mode and activate the user interface. The glove customizes itself to each user's hand flex pattern for optimal performance.

Technical: The sensors are polled by Arduino at 20Hz. Data is sent via USB serial to the laptop and is read via Python. However, a major problem of this approach was the buildup of serial data not being consumed in the python program. The quick fix for this was to place Python's serial reading code in another thread and poll at 50Hz, which still has negligible impact on CPU usage. Gestures are recorded and recognized via a simple 4D Euclidian distance search. Keypresses associated with each gesture are emulated via AppleScript. The Python UI is fairly clean and very user friendly.
Picture
Picture
Picture
Picture
Picture
Picture
Powered by Create your own unique website with customizable templates.