Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Overview Docker Image Status License

This is the world's very first wearable cognitive assistance application! We chose a deliberately simplified task (assembling 2D lego) since it was our first attempt. The demo seems easy, but the code to implement it reliably was challenging (especially with flexible user actions and under different lighting conditions).

Demo Video

Dependency Requirement

  • OpenCV: (not working with more recent version)
  • numpy: 1.11.1



An Android client is available on the Google PlayStore

Get it on Google Play

Google Play and the Google Play logo are trademarks of Google LLC.


Running the server application using Docker is advised. If you want to install from source, please see Dockerfile for details.

Lego Set

We used the lego set when building this application. Any standard lego bricks would work. However, these bricks need to be placed on this particular lego board. Print the board on a piece of paper would also work.

How to Run


From the main activity one can add servers by name and IP/domain. Subtitles for audio feedback can also been toggled. This option is useful for devices that may not have integrated speakers(like ODG R-7). Pressing the 'Play' button next to a server will initiate a connection to the Gabriel server at that address.



docker run --rm -it --name lego \
-p -p -p \
-p \