Submission in "Class: Robotics IOT"
mediapipeの指認識機能及びMaker Nanoを組み合わせて一桁と一桁の和・積を行うアプリケーション
- Arduino Nano IDE>exsample>Firmata>StandardFirmata を利用
- Python (3.8)
- pyfirmata
- tensorflow
- opencv-python
- mediapipe
- Maker Nano (Arduino 1.8.19)
mediapipeのhand認識機能を用いて各指の座標を取得し、それらから各指の開閉を取得する。
指の状態は5本*2パターンの計32通り存在する。
例
取得した手の状態のうち9つを数字と紐付けて数を取得する。
それぞれの状態における数は下記の通りである。
誤入力防止のため、該当の数字および選択を50フレームキープしていると入力として判断する機能。
設置した四角形においてその座標内に右手の人差し指がある場合、ハイライトを施し該当の四角形を選択する機能。
和積の計算及び、計算を再度行う際のResetボタンに利用している。
入力した数式を計算する機能
計算した結果を二進数に変換する機能
変換した2進数を用いて、StandardFirmataを適用させたMaker NanoのLEDを光らせることで解の数字を2進数として表示させている
- 確定機能を用いて誤入力防止に務めた
- 選択機能において選択している事を明示している
- リセットすることをアプリ内で可能にした点