Home

Awesome

Don't be a Turtle Project

Author: Jaewook Kang

About

Project objectives

This Don’t be a Turtle Project makes all of IT people have right posture and feel good while they are working! We investigate a mobile machine learning based methodology providing feedbacks with respect to your neck posture. For this purpose, we monitor neck, detecting whether you are maintaining good working posture. If you are working in an overhanging posture, you will be alerted to maintain a good posture.

alt text

Note that the above model in .gif was trained only by 865 custom dataset.

Release Benchmarks

VersionFrameworkDevicesize (KB)
0.5.0Android Pie + TfliteGoogle Pixel2749 KB
0.5.0iOS 11.4.1 + CoreMLiPhoneX811 KB

Repository Components

.
├── images              # some images for documentation
├── dataset/coco_form   # Unzip the dontbeturtle dataset at ./dataset/coco_form
├── note                # Some notes under Google Camps
├── sh_scripts          # A collection of shell scripts for easy operations
├── release             # dontbe turtle tflite and mlmodel here
└── tfmodules           # A collection of TF python files

Mobile Apps

Frameworks

Technical Stacks

Repository Installation

git clone https://github.com/motlabs/dont-be-turtle
# cd dont-be-turtle/
git init
git submodule init
git submodule update

pip install -r requirement.txt
./sh_scripts/install_tensorflow_gpu.sh

How to Run Training

export MODEL_BUCKET=./tfmodules/export/model/       # set path for exporting ckpt and tfsummary
export DATA_BUCKET=./dataset/coco_form/dontbeturtle # set path for placing dataset
export SOURCE=./tfmodules/trainer_gpu.py            # set path for tensorflow trainer

python ${SOURCE}\
  --data_dir=${DATA_BUCKET}\
  --model_dir=${MODEL_BUCKET}\
  --is_ckpt_init=False\
  --ckptinit_dir=None

How to Get .tflite and .mlmodel

Note that you need to configure ./tfmodule/model/model_config_released.py before executing the below command.

python gen_tflite_coreml.py  --is-summary=False --import-ckpt-dir=<ckpt path directory>
# Args:
#  1) is-summary==True : collect tf summary for model graph
#     is-summary==False: None
#  2) --import-ckpt-dir: global path directory .ckpt stored
#
# An example:
# python gen_tflite_coreml.py  --is-summary=False --import-ckpt-dir=/Users/jwkangmacpro2/SourceCodes/dont-be-turtle/tfmodules/export/model/run-20180815075050/
#

Donbeturtle Dataset v1.0

You need to create ./dataset/coco_form/ and place the data set

Baseline Papers

Related Materials

Project Contributors

Acknowledgement