A Halloween Trick-or-Treat no-contact "Claw Game" that trick-or-treating kids control through arm-motions to grab the candy, made from LEGO Mindstorms EV3 and some custom code.
- BrickPi3 (EV3 hat on Raspberry Pi 3)
- Running EV3Dev (Debian)
- Running Kotlin
- Serving HTTPS, WebSockets, and REST via KTor
- Serves up static HTML+JavaScript
- Serving a single-page site
- To a smartphone
- Which uses the phone's camera
- To run TFJS pose-estimation (in browser)
- When a kid does the right arm-poses (TBD)
- The signal to move the motor is sent back to the web server
- Converted to Motor Control signals
- Which moves the robot, lowers the claw, grabs, candy, and delivers it to their waiting outstretched hands!
keytool -keystore keystore.jks -alias ev3dev -genkeypair -keyalg RSA -keysize 4096 -validity 90 -dname 'CN=ev3dev, OU=ktor, O=ktor, L=Unspecified, ST=Unspecified, C=US'
- https://blog.tensorflow.org/2018/05/real-time-human-pose-estimation-in.html
- https://blog.tensorflow.org/2021/11/3D-handpose.html
- https://blog.tensorflow.org/2022/01/body-segmentation.html
- https://github.com/tensorflow/tfjs-models/tree/master/pose-detection/src/blazepose_mediapipe
- https://tfhub.dev/google/lite-model/movenet/singlepose/lightning/tflite/int8/4
- https://tfhub.dev/google/movenet/singlepose/lightning/4
- Long duration test
- Wire it up
- Projector
- Motor timing and speed
- Emergency Override UI
- https://christianheilmann.com/2013/07/19/flipping-the-image-when-accessing-the-laptop-camera-with-getusermedia/