Dinoゲームチャレンジでジャンプダイエット!第二弾!(MediaPipe Pose版)

© CC BY 4+ visibility497
© CC BY 4+
visibility497

Chromeブラウザでインターネットにつながらない場合に遊べるDinoゲームをご存知でしょうか。
スペースキーのみで遊べますが、リアルジャンプでリモートワークの運動不足を解消しましょう!

link https://qiita.com/kitazaki/items/4d16c8fa3423440b6ac2
動画
開発素材
システム構成

NT金沢 2023

https://www.youtube.com/watch?v=cbC4p5IDUsY

  1. 運動不足解消法

実際にジャンプを検知してDinoゲームを遊ぶことで運動不足解消を狙います。 人が大勢いるイベント会場でBluetoothは電波の影響を受けたので、今回はデバイス不要で、PCのカメラでジャンプしたことを検知します。

  1. MediaPipe Poseを使用

PCのカメラの映像から身体の姿勢を推論し、全身の33個のランドマーク位置または上半身の25個のランドマーク位置を予測できます。 ジャンプの検知には身体の胴体(ランドマーク位置の11, 12, 23, 24)を使用しています。

  1. 構成

大きく2つのパートから構成されます。 ①ローカル環境にHTTPSサーバを起動します。 ②ブラウザを起動し、起動したHTTPSサーバへアクセスします。GitHubページへアクセスしても問題ありません。 カメラアクセスの許可を求められるので許可します。MediaPipe Poseのライブラリを読み込み、ジャンプを検知するJavascriptが実行されます。

③キー入力を行うためのPythonプログラムを起動します。 ④ジャンプを検知すると、キー入力を行うためのPythonプログラムへ通知(HTTP POSTリクエスト)を送信します。 ⑤通知を受信するとキー入力を行います。(スペースキーを入力します。) ジャンプを検知するブラウザ画面はバックグラウンドに移し、キー入力を行うブラウザ画面(Dinoゲーム)を選択します。(フォアグラウンドに移します。)

  1. 手順

プログラムをGitHubからダウンロードして、①HTTPSサーバと③キー入力用サーバを起動します。 pythonプログラムからキー入力を可能にするため、事前にpyautoguiモジュールをインストールします。

$ git clone https://github.com/kitazaki/mediapipe_pose_dino_game
$ cd mediapipe_pose_dino_game
$ python scripts/run_https.py
(別のターミナルを開く)
$ pip install pyautogui
$ python scripts/logger.py

macOSの場合、ターミナルからキー入力を検知すると警告が表示されます。 キー入力を許可するため、システム環境設定→セキュリティとプライバシー設定→アクセシビリティ→ターミナル.appを許可します。

  1. 実際にDinoゲームを遊んでみよう!(結構、疲れます、、)

3D ポリゴン風 http://priler.github.io/dino3d

リアルT-REX https://rossning92.github.io/t-rex

メンバー
  • user
    野良ハック(ざっきー) @zakkiea

関連イベント
  • event NT金沢2023:出展作品(一部|非公式だよ)2023-06-17 開催
  • event ヒーローズ・リーグ 20232023-08-28 開催
  • event 【参加無料】DIYなデジタルガジェットで遊ぼ2024 in 那須2024-02-10 開催
関連リンク

同じニオイがする作品
  • event 触感神経衰弱
  • event 体感型AR/MRゲーム!ユニティちゃん Magic Leap ホッケー!
  • event 歩行リハビリエンタメシステム Melody Shoes
  • event Scratch 3.0 の独自拡張機能を開発して、MQTT を使ったデバイス間連携を試す

Proto lovers ♥
user
user
user
user

イベントまとめ

コンテストまとめ

作品を登録しよう

モノづくりしている人に、つくった作品を見てもらえ、リアクションがもらえるかも?

close

目次


Proto lovers ♥
user
user
user
user