情報処理学会 インタラクション 2024
IPSJ Interaction 2024

3B-252024/2/28

ハモリパート練習支援システムのための音響信号を対象とした副旋律生成の検討
福田 康太1,a)

川原 未波1,b)

北原 鉄朗1,c)

概要：本稿では, 音楽知識が乏しくても簡単に副旋律を練習することが出来るシステムの実現を目指し, 与えられた音源に対して副旋律の歌唱を生成する処理を試行する. 歌唱曲音源が与えられると, 歌唱（主旋律）と伴奏とに分離し, 伴奏音源からクロマグラムを取得する. その取得したクロマグラムから副旋律の候補の選定・候補の絞り込みを行い, 音響信号を生成する. 数曲の音源に対して副旋律の生成を試したところ， 和声学的観点として， 多くの箇所では妥当性のある副旋律が生成された. しかし, 副旋律の音高が何度も入れ替わる箇所がノイズのように聞こえるという問題点も見られた.

1. はじめにカラオケなどにおいて, 副旋律を即興で考え, 主旋律と一緒になって歌うといった楽しみ方が存在する. そこで, 様々な曲の副旋律を歌えるようにするためにある程度の練習をして， 音響信号として与えられた歌唱曲から歌唱のみの音響信号を抽出し， ピッチシフトにより副旋律の音響信号を生成する手法を検討する．

2. 副旋律の自動生成手法

したいと考えたとき, 音楽知識に乏しい人にとって副旋律本手法では， 与えられた歌唱曲音源に対して， 歌唱（主を練習することは難しい. それは, 副旋律が存在していな旋律）と伴奏とに分離する．次に， 伴奏音源からクロマグい場合, 副旋律を自分で考えて作らなくてはならないからラムを取得する．クロマグラムは和声（コード進行）が反である. また, 副旋律のみの音源をユーザーが入手してい映されるため， これを考慮して副旋律の音高を決めて，音るかによって, 副旋律を練習する際の習熟度は大きく影響響信号を生成する．

する.
本研究では， 音楽知識が乏しい人でも， 自分が好きな曲

2.1 主旋律（歌唱）および伴奏のみの音源の取得の副旋律を練習することが出来る支援システムの開発を目与えられた歌唱曲の音響信号に対して， 音源分離ライブ指す. 同様のコンセプトの研究に，白石らの HamoKara[1]ラリー「Spleeter」を適用することで， 主旋律（歌唱）のがある． このシステムには，ユーザが指定した楽曲に対しみの音響信号と伴奏のみの音響信号を得る．て副旋律を自動生成し， 副旋律の歌唱練習を支援する機能がある． しかし， ユーザが練習したい楽曲の MIDI ファ

2.2 主旋律の音高推定

イルをあらかじめ準備する必要があり， MIDI ファイルが主旋律の音響信号（48kHz にリサンプリング）に対して，準備されていない楽曲に利用できない． カラオケから離音声解析ライブラリー「PyWorld」を用いて 5ms ごとの基れると，副旋律の自動生成に関する研究は数多く存在する

本周波数を推定する． 時刻 t における主旋律の基本周波数（たとえば [2], [3]）． しかし， MIDI データや楽譜データを x(t) とする．PyWorld によって調波構造がないと判定を対象としているものが多い． ピアノの音響信号を対象とされたフレームは， 以降の処理は行わず， 副旋律も付与した研究も存在する [4] が， 音高の変化が複雑な歌唱を対しないものとする．

象としたものではなかった．
本稿では， このような支援システムを実現する第一歩と2.3 伴奏に対するクロマグラム作成
伴奏の音響信号（48kHz にリサンプリング）に対して，

1a)b)c)日本大学文理学部情報科学科
fukuda@kthrlab.jp
minami@kthrlab.jp
kitahara@kthrlab.jp© 2024 Information Processing Society of Japan

Librosa を用いてクロマグラムを得る． クロマグラムは，12 音階の各音名の振幅を表す 12 次元ベクトル（クロマベクトルと呼ぶ）を時間軸上に並べたものである． 主旋律の1177

情報処理学会 インタラクション 2024
IPSJ Interaction 2024

3B-25
2024/2/28

基本周波数と時間分解能（5ms）を合わせるため，シフト生成された副旋律に対して， 副旋律の音高として選ばれた幅を 240 サンプルとした．

短 3 度， 長 3 度， 完全 4 度の割合を述べ， 考察する．

その後， 局所的な非和声音などの影響を削減するため，数値解析ライブラリー「SciPy」を用いて， クロマグラム

3.2 実験結果の時間軸方向の平滑化を行った． 平滑化の窓幅を 100 フレームとした．時刻 t における平滑化後のクロマベクトルを h(t) = (h1 (t), · · · , h12 (t)) で表す．

2.4 副旋律の候補の選定
現在の実装では， 副旋律は主旋律に対して短 3 度下， 長3 度下， 完全 4 度下のいずれかとする．時刻 t における副(a) となりのトトロ 「さんぽ」

旋律の音高の候補の集合を C(t) とすると，C(t) = {2−3/12 x(t), 2−4/12 x(t), 2−5/12 x(t)}となる．

2.5 副旋律の候補の絞り込み
副旋律の候補 C(t) のうち， 対応する音名のクロマベクトルの値が最も大きいものを， 副旋律の最終候補として(b) DISH// (北村匠海) 「猫」採用する． これは， クロマベクトルの値が大きい音名は，その時刻における和音の構成音である可能性が高く， そのような音名を選ぶことで， 伴奏との不協和を避けられる可能性が高いと考えられるからである．
副旋律の候補 C(t) の各要素 ci (t) (i = 1, 2, 3) に対して，対応する音名 ni (t) を次の式で求める．

ni (t) = mod(12 log2 (ci (t)/440) + 9, 12)
ここで， mod(x, m) は x を整数に丸めた上で m で割った余りを求めることを意味する．その上で， hn1 (t) (t), hn2 (t) (t),(c) いきものがかり 「ブルーバード」
図 1

副旋律の音高として選ばれた副旋律に対する音程の候補（青：長 3 度，緑：短 3 度，赤：完全 4 度，灰色：どれにも該当せず）

hn3 (t) (t) が最大となる ni (t) を求め，それに対応する ci (t)を時刻 t における副旋律の音高 y(t) とする．

2.6 副旋律の音響信号を生成する

表 1 副旋律の音高として選ばれた音名の分布
タイトル
長三度
短三度
完全 4 度となりのトトロ

前節の方法でフレームごとの副旋律の基本周波数が確定「さんぽ」

したら， PyWorld を用いてピッチシフトにより副旋律のDISH// (北村匠海)音響信号を生成する． さらに， 主旋律， 副旋律， 伴奏を「猫」重畳した音響信号も生成する．

いきものがかり「ブルーバード」

総数

6006

8215

9868

32587

7561

14330

14711

55833

5115

8718

11455

43224

3. 予備実験
3.1 実験方法
本手法を用いて， 3 つの音源を対象に副旋律生成を行った．対象の音源は以下の 3 曲である．

• となりのトトロ 「さんぽ」：
https://www.youtube.com/watch?v=k_a8vsgeg_k• DISH// (北村匠海) 「猫」 :https://www.youtube.com/watch?v=gsT6eKsnT0M• いきものがかり 「ブルーバード」：
https://www.youtube.com/watch?v=KpsJWFuVTdI© 2024 Information Processing Society of Japan

副旋律として選ばれた音程（長 3 度，短 3 度，完全 4 度）の分布を表 1 に示す． 集計せずに時間軸上に色で図示したものを図 1 に示す． 主旋律と副旋律の基本周波数を時間軸上に色で図示したものを図 2 に示す．全ての曲において， 選ばれた音程は完全 4 度が最も多く，それ以外は短3 度， 長 3 度の順に多かった．ただし， 長 3 度が 5000 フレーム以上で選ばれており，特定の音程への過度な偏りは見られなかった．
和声学的観点からは， 多くのフレームでコード進行を考

1178

情報処理学会 インタラクション 2024
IPSJ Interaction 2024

3B-25
2024/2/28

地がある．HamoKara [1] などでも使われている隠れマルコフモデルなどを用いて， 調性などを考慮しつつ副旋律の音高を決めていく工夫が求められる．さらに， 練習支援システムとしてのユーザインタラクションの設計も重要である． 主旋律につられないように副旋律を練習する方法などを検討していく必要がある．これらの検討を進め， 誰もが気軽にハモリ練習ができるシステムを目指していきたい．
謝辞(a) となりのトトロ 「さんぽ」

本研究は，科研費 22H03711，21H03572 の支援を受けた．
参考文献
[1]

[2]

[3]

(b) DISH// (北村匠海) 「猫」[4]

白石 美南, 小笠原 梢, 北原 鉄朗, カラオケのためのハモリパート練習システム〜ハモリパートの自動生成および練習支援システムの試作〜, 情報処理学会 第 80 回全国大会講演論文集, vol.2018, No.1, pp.127–128, 2018.
三浦 雅展, 青山 容子, 谷口 光, 青井 昭博, 尾花 充, 柳田 益造, ポップス系の旋律に対する和音付与システム:AMOR,情報処理学会論文誌, vol.46, No.5, pp.1176–1187, 2005.
山崎 健一, 坂 知樹, 鎌田 洋, 深層学習を用いた主旋律に基づく和音生成, 映像情報メディア学会誌, vol.77, No.1,
pp135–140, 2023.
Jianhua Li, Automatic Piano Harmony Arrangement
System Based on Deep Learning, Sensors, vol.2022, Article ID 76624432022, 2022.

(c) いきものがかり 「ブルーバード」
図 2

主旋律と副旋律の周波数 (青：主旋律の周波数，オレンジ：副旋律の周波数)

慮した副旋律になっていたと言える． ただし， いくつかの箇所において和声学的に不自然な音高も見られた．
また， ノイズ成分については，フレームごとに音程を決めているため，主旋律の 1 つの音符に対して， 副旋律の音高が途中で何度も入れ替わることがあった．このような場合には， ノイズ成分のように聞こえることもあった．

4. おわりに
本稿では， ユーザが用意した歌唱音源を用いていわゆるハモリパートの歌唱練習ができるシステムの実現をめざ
し， その第 1 段階として， 音響信号に対して音源分離とピッチシフトを用いて副旋律を生成することを試行した．
少しノイズ成分が混じりながらも全体的には， 多くの箇所において和声的に妥当性な副旋律を生成することができた．とはいえ， 副旋律の音高を決める処理にはまだ改善の余© 2024 Information Processing Society of Japan1179