WISS 2023

サウンドインタラクション記述用ビジュアルプログラミング環境の設計と実装
田村 隼 ∗

齋藤 龍宏 ∗

真鍋 匠 †

高橋 伸 ‡

概要. リアルタイム性が高いサウンドインタラクションインタフェースは，姿勢変化などに対して素早くより細かで適切な指示が可能である．しかし，このようなインタフェースを開発するためには，骨格認識やサウンド出力などに関する知識とプログラミング技術が必要である．そこで，我々はサウンドインタラクションインタフェースを容易に実現可能とするために，ノードベースのビジュアルプログラミング環境を開発している．本ツールでは，人体姿勢入力とサウンド出力をノードを用いたビジュアルプログラムにより結びつけることで，リアルタイムサウンドインタラクションを実装することができる．そのため，骨格認識やサウンドプログラミングに不慣れな人でも容易にサウンドインタラクションを記述して実装できると期待できる．本論文では開発中のビジュアルプログラミング環境におけるサウンドインタラクション記述について概要を紹介する．

1

背景

サウンドインタラクションとは，音声や音楽を利用したコンピュータとユーザ間の相互作用である．
近年，スマートスピーカーが普及したことにより，このような技術が注目されてきているが，スマートスピーカーでは対話的なインタラクションが中心であり，ジェスチャなどユーザの状況や動作に応じたリアルタイム性が高い応答は行わない．リアルタイ
ム性の高いサウンドインタラクションが可能になれば，より素早く細かい指示を行うことができ，例えばトレーニング時の姿勢に対する指示を行うといった活用が考えられる．
しかし，現在は動作に対するリアルタイム性が高いサウンドインタラクションを容易に開発するためのツールは少なく，骨格認識やサウンド出力などの知識とプログラミング技術が必要である．特に開発未経験者が日常的な作業やインストラクションを目的として開発を行うことは難しい．そこで我々はGUI を用いたサウンドインタラクション開発支援環境の提案を行っている [5]．本論文では我々が開発を進めているサウンドインタラクション開発支援環境
におけるビジュアルプログラミング記述について紹介する．特に，新たに設計したシナリオ作成機能について説明する．シナリオ作成機能により，複数のサウンドインタラクションを切り替えて順番に行うことができる．

Copyright is held by the author(s). This paper is nonrefereed and non-archival. Hence it may later appear
in any journals, conferences, symposia, etc.
∗筑波大学 情報理工学位プログラム†筑波大学 情報科学類‡筑波大学 システム情報系

2

関連研究

Max 8 [1] はサウンドを含めたデジタルコンテンツを開発するためのビジュアルプログラミングツー
ルである．このツールではオブジェクトをコードで繋ぎ合わせることでインタラクティブなサウンド出力を実装することができる．このようなノードベースのビジュアルプログラミングツールは他にも多く存在する [2][3]．ノードベースプログラミングツー
ルは処理の流れが視覚的に分かりやすく，プログラミングに不慣れな人でも使用しやすい．
人の動きに合わせたサウンド出力に関する研究として，我々は音によるトレーニング支援の研究 [4]を行い，ユーザのトレーニング中に正しい姿勢を保つための音声指示を行うことができるシステムを開発した．しかし特定のトレーニングを対象とした音声のみによる指示を行うシステムであったため，本研究では様々なトレーニング等に対応した多様なサウンドインタラクションを容易に実現できる環境の開発を目指す．

33.1

サウンドインタラクション開発支援環境概要

本環境は骨格認識モジュール，ビジュアルプログラミングモジュール，サウンド出力モジュールの 3つのモジュールから成る．
骨格認識モジュールは，ユーザの関節座標をカメラ等により取得して，関節座標情報をビジュアルプログラミングモジュールにおける入力として利用可能とするためのモジュールである．基本機能として，コンピュータにつないだカメラ映像から関節点の座標情報を得る機能がある．また，加速度センサやモーションセンサで得られる関節座標点情報を UDP 通信を介して受け取り，使用することもできる．

WISS 2023

ビジュアルプログラミングモジュールはノードベースのビジュアルプログラミング環境であり，関節座標入力からサウンド出力までの処理の流れをノードベースプログラミングにより記述することができる．
サウンド出力モジュールはコンピュータからのサウンド出力を行うモジュールである．基本的な音出力機能を持つが，UDP 通信を用いて外部アプリケーションにサウンド出力命令を送ることもできる．
実装は，Electron1 をベースとして，ノードエディタ実装に BaklavaJS2 ，カメラ画像からの骨格認識に MediaPipe3 を用いた．

3.2

ビジュアルプログラミング環境

表 1. 各ノードの入力と出力

ノード名

入力

InputAngle
AngleBetween
And
SoundOut数値
bool 値bool 値-出力
関節の角度範囲内なら True
入力の論理積サウンド出力のときに C3 の電子音を鳴らし続ける，というインタラクションの記述になる．

3.2.2

シナリオの記述例

図 1. ビジュアルプログラミングツールの画面

本開発環境のビジュアルプログラミング環境では，
図 1 に示すように，ウィンドウ内にノードを配置し，ノード同士を線で繋ぎ合わせることで各ノードの出力と入力を繋げることができる．様々な処理に対応したノードが存在し，それらを組み合わせることでサウンドインタラクションを記述できる．

3.2.1

基本的なインタラクションの記述例

図 3. ノードを用いたシナリオの記述

ラジオ体操のように，複数種類の動きが順番に移り変わるようなインタラクションを表現するために，シナリオ作成機能を用意した．図 3 上部にあるのがシナリオ記述の例である．各 Interaction ノードには特定のサウンドインタラクション記述が設定されている．Interaction ノードを１つ以上つなぎ合わせたものがシナリオである．シナリオを実行すると，まず最初の Interaction ノードのサウンドインタラクションが実行される．そして，そのサウンドインタラクション記述内の SwitchTask ノードに Trueが入力されると，次の Interaction ノードに切り替わって実行が継続される．

4
図 2. サウンドインタラクションの記述例

図 2 はユーザの手の動きに合わせて音を鳴らすビ
ジュアルプログラムの記述例である．各ノードは，それぞれ表 1 に示すような入力と出力を持っている．
このビジュアルプログラムは，右肩の角度が 0 度以
上 80 度以内かつ右肘の角度が 30 度以上 40 度以内
1

https://www.electronjs.org/
https://github.com/newcat/baklavajs
3
https://google.github.io/mediapipe/2

おわりに

本稿では，リアルタイムサウンドインタラクションの開発支援ツールについて紹介した．本ツールでは，開発未経験者でも容易に開発できることを目指しノードエディタを用いたビジュアルプログラミン
グ環境を用意した．ビジュアルプログラムでは，関節座標を入力としてサウンド出力を行うインタラクションを記述することができ，また，複数の記述されたインタラクションを切り替えて用いるように記述することができる．今後は，各ノードや入出力の種類を増やし，ラジオ体操など実際の運動に合わせたシナリオ記述の実現を目指す．

サウンドインタラクション記述用ビジュアルプログラミング環境の設計と実装

謝辞
本研究は科研費 22H03625 の助成を受けたものである.

参考文献[1] https://www.mi7.co.jp/products/cycling74/（2023/10/27 確認）.
[2] https://www.sidefx.com/ja/products/
houdini/（2023/10/27 確認）.
[3] https://www.nintendo.co.jp/switch/awuxa/index.html（2023/10/27 確認）.
[4] R. Wang, S. Takahashi, B. Shizuki, andI. Kawaguchi. Voice-Based Bodyweight Training
Support System Using Smartphone. In A. Marcus and E. Rosenzweig eds., Design, User Experience, and Usability. Case Studies in Publicand Personal Interactive Systems, pp. 370–379,Cham, 2020. Springer International Publishing.
[5] 坂田 和輝, 田村 隼, 高橋 伸. サウンドインタラ
クション開発支援の環境設計. 第 30 回インタラ
クティブシステムとソフトウェアに関するワークショップ（WISS2022）, pp. 1–3, 2022.