Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of github.com-metastableB:Microsoft/EdgeML into…
… EMI-Bugfixes
- Loading branch information
Showing
74 changed files
with
15,082 additions
and
1,284 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -287,3 +287,6 @@ __pycache__/ | |
*.btm.cs | ||
*.odx.cs | ||
*.xsd.cs | ||
.vscode/ | ||
usps10/ | ||
.ipynb_checkpoints/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
GesturePod | ||
========== | ||
|
||
GesturePod is a plug-and-play, gesture recognition device that is designed to be clamped onto | ||
any white-cane used by persons with Visually Impairment. Once clamped onto the cane firmly, | ||
simple and natural gestures performed on the cane can be used to interact with various devices, | ||
for instance a mobile phone. Watch the [GesturePod video here](https://1drv.ms/u/s!AjDloPaG_l0Et7Ikid1voOVFuI116Q). | ||
|
||
In this directory, we provide resources for | ||
1. Creating a GesturePod of your own based on the [Arduino MKR1000](https://store.arduino.cc/usa/arduino-mkr1000), in the `onMKR1000` directory, and | ||
2. Running the gesture recognition pipeline on your computer in the `onComputer` directory. | ||
|
||
Read more about GesturePod and access the public dataset from our | ||
[Technical Report](https://www.microsoft.com/en-us/research/publication/gesturepod-programmable-gesture-recognition-augmenting-assistive-devices/). | ||
The dataset can be downloaded [here](https://www.microsoft.com/en-us/research/uploads/prod/2018/05/dataTR_v1.tar.gz). | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Copyright (c) Microsoft Corporation. All rights reserved. | ||
# Licensed under the MIT license. | ||
|
||
APPNAME := gesturepodsim | ||
CXX := g++ | ||
CXXFLAGS := -g -std=c++11 | ||
INCLUDES_PATH := -I./src/ | ||
SRC_PATH := ./src | ||
OBJ_FILES := main.o featurizer.o protoNN.o utils.o | ||
|
||
all: $(APPNAME) | ||
|
||
$(APPNAME): $(OBJ_FILES) | ||
$(CXX) $(CXXFLAGS) $^ -o $@ | ||
rm -f $(OBJ_FILES) | ||
|
||
main.o: $(SRC_PATH)/main.cpp | ||
$(CXX) $(CXXFLAGS) -c $(INCLUDES_PATH) $< -o $@ | ||
|
||
featurizer.o : $(SRC_PATH)/featurizer.cpp $(SRC_PATH)/featurizer.h | ||
$(CXX) $(CXXFLAGS) -c $(INCLUDES_PATH) $< -o $@ | ||
|
||
protoNN.o : $(SRC_PATH)/protoNN.cpp $(SRC_PATH)/protoNN.h | ||
$(CXX) $(CXXFLAGS) -c $(INCLUDES_PATH) $< -o $@ | ||
|
||
utils.o : $(SRC_PATH)/utils.cpp $(SRC_PATH)/utils.h | ||
$(CXX) $(CXXFLAGS) -c $(INCLUDES_PATH) $< -o $@ | ||
|
||
clean: | ||
rm -f $(OBJ_FILES) | ||
rm -f $(APPNAME) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
GesturePod *(Gesture Recognition Pipeline)* | ||
========================= | ||
|
||
## Table of Contents | ||
|
||
- [About](#about) | ||
- [Quick Start](#quick-start) | ||
|
||
## About | ||
|
||
GesturePod is a plug-and-play, gesture recognition device. | ||
|
||
This repository isolates the gesture recognition pipeline from the Arduino | ||
MKR1000 implementation. All additional modules, for instance, BLE | ||
communication, interface with the IMU are not included. We provide sample IMU | ||
sensor data, which is used for prediciton. This repository is intended to be | ||
used as a playground to understand the gesture recognition pipeline. It is a | ||
bare-minimum implementation of gesture recognition. Additionally, this can be | ||
used as a basis for porting GesturePod to other platforms. | ||
|
||
## Quick Start | ||
|
||
1. Installation requires | ||
- [git](https://git-scm.com/), | ||
- [make](https://www.gnu.org/software/make/) | ||
- [g++](https://gcc.gnu.org/). | ||
|
||
2. Clone the repo and navigate to this directory | ||
``` | ||
git clone https://github.com/Microsoft/EdgeML | ||
cd EdgeML/Applications/GesturePod/onComputer | ||
``` | ||
3. Compile and build the code | ||
``` | ||
make | ||
``` | ||
4. Run | ||
``` | ||
./gesturepodsim | ||
``` | ||
5. Currently the data is read from ```./data/taps.h```. This data file has | ||
sensor readings collected from GesturePod, while *Double Taps* gesture was | ||
performed. | ||
|
||
GesturePod data set is released as a part of our | ||
[TechReport](https://www.microsoft.com/en-us/research/uploads/prod/2018/05/dataTR_v1.tar-5b058a4590168.gz) | ||
|
||
|
||
Checkout our Blog post *Coming Soon...* |
Oops, something went wrong.