(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024057679
(43)【公開日】2024-04-25
(54)【発明の名称】情報処理装置及び情報処理方法、コンピュータプログラム、音生成システム、並びに情報端末
(51)【国際特許分類】
G10H 1/00 20060101AFI20240418BHJP
G10L 25/18 20130101ALI20240418BHJP
【FI】
G10H1/00 102Z
G10L25/18
【審査請求】未請求
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2022164477
(22)【出願日】2022-10-13
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100093241
【弁理士】
【氏名又は名称】宮田 正昭
(74)【代理人】
【識別番号】100101801
【弁理士】
【氏名又は名称】山田 英治
(74)【代理人】
【識別番号】100095496
【弁理士】
【氏名又は名称】佐々木 榮二
(74)【代理人】
【識別番号】100086531
【弁理士】
【氏名又は名称】澤田 俊夫
(74)【代理人】
【識別番号】110000763
【氏名又は名称】弁理士法人大同特許事務所
(72)【発明者】
【氏名】成田 岳
(72)【発明者】
【氏名】清水 惇一
(72)【発明者】
【氏名】赤間 健人
(72)【発明者】
【氏名】小口 真太郎
(72)【発明者】
【氏名】山本 昂平
(72)【発明者】
【氏名】岸 治彦
【テーマコード(参考)】
5D478
【Fターム(参考)】
5D478AA34
(57)【要約】
【課題】楽器音の生成に関する情報処理を行う情報処理装置を提供する。
【解決手段】情報処理装置は、入力音及び音程情報を入力する入力部と、入力音から音色特徴量を抽出する抽出部と、音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部を具備する。前記生成部は、本開示モデルによって学習された生成器を用いて、入力音を前処理後の情報と音程情報をインスタンス条件として音程付き楽器音の情報を生成する。前記抽出部は、音程に関する敵対的学習を行った音色特徴抽出器を用いて、音程情報が残らないように、入力音の音色特徴量を抽出する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
入力音及び音程情報を入力する入力部と、
入力音から音色特徴量を抽出する抽出部と、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部と、
を具備する情報処理装置。
【請求項2】
前記生成部は、学習済みモデルを用いて、入力音を前処理後の情報と音程情報をインスタンス条件として音程付き楽器音の情報を生成する、
請求項1に記載の情報処理装置。
【請求項3】
前記抽出部は、音程情報が残らないように音色特徴量を抽出する、
請求項1に記載の情報処理装置。
【請求項4】
前記抽出部は、音程に関する敵対的学習を行った音色特徴抽出器を用いて、入力音の音色特徴量を抽出する、
請求項1に記載の情報処理装置。
【請求項5】
入力音をメルスペクトログラムに変換する変換部をさらに備え、
前記抽出部は、入力音のメルスペクトログラムから入力音の音色特徴量を抽出する、
請求項1乃至4のいずれか1つの記載の情報処理装置。
【請求項6】
前記生成部は、音色特徴量と音程情報をインスタンス条件として、音程付き楽器音のメルスペクトログラムを生成し、
前記生成部が生成したメルスペクトログラムからオーディオ波形を構築する逆変換部をさらに備える、
請求項5に記載の情報処理装置。
【請求項7】
前記逆変換部は、メルスペクトログラムを線形スペクトログラムに周波数スケールに変換するスケール変換部と、線形スペクトログラムの位相を復元する位相復元部と、位相を復元した後の線形スペクトログラムをフーリエ逆変換するフーリエ逆変換部を含む、
請求項6に記載の情報処理装置。
【請求項8】
前記スケール変換部は、非負値制約なしの最小二乗法の解に非負値への修正を施したものを反復計算の初期値に設定して、勾配法による更新と非負値への修正を繰り返す反復法によって周波数スケール変換を行う、
請求項7に記載の情報処理装置。
【請求項9】
前記入力部は、複数の入力音を入力可能であり、
前記抽出部は、入力された各入力音から音色特徴量を抽出し、
前記生成部は、各入力音の音色特徴量を混合した音色特徴量と音程情報に基づいて楽器音情報を生成する、
請求項1に記載の情報処理装置。
【請求項10】
前記入力部は、複数の入力音の混合比率に関する情報をさらに入力し、
前記生成部は、入力された混合比率に基づいて各入力音の音色特徴量を混合した音色特徴量と音程情報に基づいて楽器音情報を生成する、
請求項9に記載の情報処理装置。
【請求項11】
前記入力部は、ユーザ操作に基づいて指定された入力音及び音程情報を入力する、
請求項1に記載の情報処理装置。
【請求項12】
前記生成部が生成した音程付き楽器音の情報を出力する出力部をさらに備える、
請求項1に記載の情報処理装置。
【請求項13】
入力音及び音程情報を入力する入力ステップと、
入力音から音色特徴量を抽出する抽出ステップと、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成ステップと、
を有する情報処理方法。
【請求項14】
入力音及び音程情報を入力する入力部、
入力音から音色特徴量を抽出する抽出部、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部、
としてコンピュータを機能させるようにコンピュータ可読形式で記述されたコンピュータプログラム。
【請求項15】
楽器音の生成をリクエストする情報端末と、楽器音を生成する情報処理装置を具備し、
前記情報端末は、ユーザ操作によって指定された入力音及び音程情報を含めて楽器音の生成を前記情報処理装置にリクエストし、
前記情報処理装置は、前記情報端末から受け取った入力音から抽出した音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する、
音生成システム。
【請求項16】
情報処理装置と通信する通信部と、
入力音及び音程情報を含む、楽器音の生成に関する指定を行うユーザ操作部と、
を具備し、
前記ユーザ操作部を介して指定された内容に基づいて、入力音及び音程情報を含めて楽器音の生成リクエストを前記情報処理装置に送信するとともに、前記情報処理装置から音程付き楽器音の情報を受信する、
情報端末。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で開示する技術(以下、「本開示」とする)は、音楽制作に関する情報処理を行う情報処理装置及び情報処理方法、コンピュータプログラム、音生成システム、並びに情報端末に関する。
【背景技術】
【0002】
AI(Artificial Intelligence)技術の発達が目覚ましく、学習モデルを用いた画像や音声などの認識技術が普及している。最近では、敵対的生成ネットワーク(GAN)を用いて精巧な画像を生成する画像生成技術も開発されている。さらに、AI技術を音楽の制作に活用する方法も模索されている。例えば、楽器音の特性を反映したDNN(Deep Neural Network)を用いて音源強調をする楽音強調装置や(特許文献1を参照のこと)、GANsやVAE(Variational AutoEncoder)を用いて生成された学習済みモデルを使って多様な楽曲を自動生成する情報処理方法(特許文献2を参照のこと)などが提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-78864号公報
【特許文献2】特開2020-3535号公報
【非特許文献】
【0004】
【非特許文献1】Arantxa Casanova,Marl'ene Careil,Jakob Verbeek,Michal Drozdzal, and Adriana Romero-Soriano,"Instance-conditioned GAN," in Advances in Neural Information Processing Systems (NeurIPS),2021.
【非特許文献2】Jesse Engel, Cinjon Resnick, Adam Roberts,Sander Dieleman,Mohammad Norouzi,Douglas Eck,and Karen Simonyan,"Neural audio synthesis of musical notes with wavenet autoencoders," in International Conference on Machine Learning.PMLR,2017,pp.1068-1077.
【非特許文献3】Aaron van den Oord, Sander Dieleman,Heiga Zen,Karen Simonyan,Oriol Vinyals,Alex Graves,Nal Kalchbrenner,Andrew Senior, and Koray Kavukcuoglu, "Wavenet:A generative model for raw audio," arXiv preprint arXiv:1609.03499,2016.
【非特許文献4】Jesse Engel, Kumar Krishna Agrawal, Shuo Chen, Ishaan Gulrajani, Chris Donahue, and Adam Roberts, "Gansynth: Adversarial neural audio synthesis," in International Conference on Learning Representations, 2018.
【非特許文献5】Sean Vasquez and Mike Lewis,"Melnet: A generative model for audio in the frequency domain," arXiv preprint arXiv:1906.01083,2019.
【発明の概要】
【発明が解決しようとする課題】
【0005】
計算機を用いて音楽を制作するアプローチとして主に、メロディーや伴奏を含む音楽の音を直接合成する方法と、単音の楽器音を合成してMIDI(Musical Instrument Digital Interface)を演奏する方法の2つが挙げられる。前者は、end-to-endでの音楽生成が可能であるが、生成の制御性が低いという問題がある。これに対し、後者は、MIDIの生成と音色のデザインをそれぞれ独立に制御可能であり、生成される音の品質が高いという利点がある。
【0006】
そこで、本開示の目的は、例えばMIDI演奏に使用可能な楽器音の生成に関する情報処理を行う情報処理装置及び情報処理方法、コンピュータプログラム、音生成システム、並びに情報端末を提供することとする。
【課題を解決するための手段】
【0007】
本開示は、上記課題を参酌してなされたものであり、その第1の側面は、
入力音及び音程情報を入力する入力部と、
入力音から音色特徴量を抽出する抽出部と、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部と、
を具備する情報処理装置である。
【0008】
前記生成部は、本開示モデルによって学習された生成器を用いて、入力音を前処理後の情報と音程情報をインスタンス条件として音程付き楽器音の情報を生成するように構成されている。
【0009】
また、前記抽出部は、音程に関する敵対的学習を行った音色特徴抽出器を用いて、音程情報が残らないように入力音の音色特徴量を抽出するように構成されている。
【0010】
第1の側面に係る情報処理装置は、入力音をメルスペクトログラムに変換する変換部をさらに備えている。そして、前記抽出部は、入力音のメルスペクトログラムから入力音の音色特徴量を抽出するように構成されている。この場合、前記生成部は、音色特徴量と音程情報をインスタンス条件として、音程付き楽器音のメルスペクトログラムを生成するように構成されている。そして、第1の側面に係る情報処理装置は、前記生成部が生成したメルスペクトログラムからオーディオ波形を構築する逆変換部をさらに備えている。
【0011】
また、本開示の第2の側面は、
入力音及び音程情報を入力する入力ステップと、
入力音から音色特徴量を抽出する抽出ステップと、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成ステップと、
を有する情報処理方法である。
【0012】
また、本開示の第3の側面は、
入力音及び音程情報を入力する入力部、
入力音から音色特徴量を抽出する抽出部、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部、
としてコンピュータを機能させるようにコンピュータ可読形式で記述されたコンピュータプログラムである。
【0013】
本開示の第3の側面に係るコンピュータプログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータプログラムを定義したものである。コンピュータプログラムは、さまざまなプログラムコードを実行可能なコンピュータに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能である。そして、本開示の第3の側面に係るコンピュータプログラムをいずれかの媒体経由でコンピュータにインストールすることによって、コンピュータ上では協働的作用が発揮され、本開示の第1の側面に係る情報処理装置と同様の作用効果を得ることができる。
【0014】
また、本開示の第4の側面は、楽器音の生成をリクエストする情報端末と、楽器音を生成する情報処理装置を具備し、
前記情報端末は、ユーザ操作によって指定された入力音及び音程情報を含めて楽器音の生成を前記情報処理装置にリクエストし、
前記情報処理装置は、前記情報端末から受け取った入力音から抽出した音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する、
音生成システムである。
【0015】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。すなわち、複数の部品又は機能モジュールからなる1つの装置も、複数の装置の集合体も、「システム」に相当する。
【0016】
また、本発明の第5の側面は、
情報処理装置と通信する通信部と、
入力音及び音程情報を含む、楽器音の生成に関する指定を行うユーザ操作部と、
を具備し、
前記ユーザ操作部を介して指定された内容に基づいて、入力音及び音程情報を含めて楽器音の生成リクエストを前記情報処理装置に送信するとともに、前記情報処理装置から音程付き楽器音の情報を受信する、
情報端末である。
【発明の効果】
【0017】
本開示によれば、任意の入力音の特徴を反映した音程付き楽器音を生成する情報処理を行う情報処理装置及び情報処理方法、コンピュータプログラム、音生成システム、並びに情報端末を提供することができる。
【0018】
なお、本明細書に記載された効果は、あくまでも例示であり、本開示によりもたらされる効果はこれに限定されるものではない。また、本開示が、上記の効果以外に、さらに付加的な効果を奏する場合もある。
【0019】
本開示のさらに他の目的、特徴や利点は、後述する実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【図面の簡単な説明】
【0020】
【
図2】
図2は、2つの入力音を混合して得られるインスピレーションに基づいて楽器音を生成する仕組み示した図である。
【
図3】
図3は、入力音の特徴を反映した音程付き楽器音を生成する楽器音生成システム300の機能的構成を示した図である。
【
図4】
図4は、入力音の特徴を反映した音程付き楽器音を生成するための処理手順を示したフローチャートである。
【
図5】
図5は、音色特徴抽出器の学習時におけるワークフローの一例を示した図である。
【
図6】
図6は、音程に関する敵対的学習を行う場合の音色特徴抽出器の学習時におけるワークフローを示した図である。
【
図7】
図7は、楽器音生成システム300の生成部303で用いる生成器を学習する場合のモデルの概要を示した図である。
【
図8】
図8は、メルスペクトログラムからオーディオ波形データを再構築する処理フローを示した図である。
【
図9】
図9は、勾配法による更新と非負値への修正を繰り返す反復法による周波数スケール変換処理フローを示した図である。
【
図10】
図10は、非負値制約なしの最小二乗法の解を活用した初期値を設定した場合の反復法による周波数スケール変換処理フローを示した図である。
【
図11】
図11は、クライアントサーバモデル1100からなる楽器音生成システム300の構成を示した図である。
【
図12】
図12は、クライアント1102とサーバ1101で実施される処理シーケンス例を示した図である。
【
図13】
図13は、本開示によって音程付き楽器音の生成や再生などを行うためのGUI画面の構成例を示した図である。
【
図24】
図24は、本開示によって音程付き楽器音の生成や再生などを行うためのGUI画面の他の構成例を示した図である。
【
図26】
図26は、情報処理装置2000の具体的なハードウェア構成例を示した図である。
【
図27】
図27は、IC-GANのモデルの概要を示した図である。
【発明を実施するための形態】
【0021】
以下、図面を参照しながら本開示について、以下の順に従って説明する。
【0022】
A.概要
B.音生成システム
B-1.システム構成
B-2.システム動作
B-3.システムの特徴
B-4.システムの運用について
C.音色特徴量の抽出について
D.入力音の特徴を反映した音程付き楽器音の生成について
E.オーディオ波形の再構成について
F.クライアントサーバモデルによる運用形態
G.GUIの構成及び操作例
G-1.第1の例
G-2.第2の例
H.情報処理装置の構成
I.関連研究との比較
【0023】
A.概要
本開示は、単音の楽器音を生成する技術である。本開示に基づいて生成した楽器音を利用してMIDIを演奏するという手法によって、計算機上での音楽制作が実現する。本開示を利用した音楽制作方法によれば、MIDIの生成と音色のデザインをそれぞれ独立に制御可能であり、生成される音の品質が向上するという利点がある。
【0024】
本開示は、単音の楽器音を生成する技術であるが、例えば人間の生活空間で発生する任意の入力音から得られるインスピレーションに基づいて楽器音を生成することができる。また、本開示によって生成される楽器音は、実在する楽器を用いて生成される楽器音には限定されない。すなわち、本開示によって生成される楽器音は、楽器を特定できないが、楽器によって生成された音として識別される音、言い換えれば楽器以外から生成された音とは識別されない音である。
【0025】
図1には、本開示の概要を模式的に示している。本開示において、インスピレーションを与える任意の入力音は、例えば人間の生活環境で発生するさまざまな音であるが、自然音や環境音だけでなく、あらかじめ人工的に生成された人工音も含む。例えば、会話の音声やカラオケの歌声、犬や鳥などの動物の鳴き声、鹿威しや雨音、風鈴の音、風音(もがりぶえ)などの環境音、チェーンソーや重機などで対象物を切断や粉砕する騒音でもよい。これらの任意の入力音は、コンピュータ処理を行う都合上、wav形式ファイルなどのオーディオファイルとして入力される。
【0026】
そして、本開示では、入力音から得られるインスピレーションに基づいて、楽器音を生成する。具体的には、本開示によれば、1秒又は数秒程度の比較的短い時間の、指定された音程からなる単音の楽器音を、例えばMIDIデータとして出力する。本開示によって生成される楽器音は、鍵盤楽器、打楽器、弦楽器、管楽器、電気・電子楽器といった既存の楽器で奏でられる単音でもよいが、これらに限定されず、全く新しくユニークな楽器音を作ることができる。本開示によって作られるユニークな楽器音は、楽器を特定できないが、楽器によって生成された音として識別される音、言い換えれば楽器以外から生成された音とは識別されない音である。
【0027】
本開示では、深層学習された生成モデルを用いて、入力音及び音程を条件として、楽器音を生成する。したがって、本開示によれば、ユーザが楽器を自由にカスタマイズできる、楽曲に音で意味付けすることができる、といった効果がある。ここで言う深層学習された生成モデルは、本開示に固有の学習済みモデルであり、具体的には、インスタンス条件付きGAN(IC-GAN)のアイデアを利用して楽器音を生成するGANの枠組み(以下、「本開示モデル」とも呼ぶ)によって生成された生成器である。
【0028】
従来、楽器音の合成方法として、人工的に生成した周期的なオシレーター波形を変調して音色を制御する「シンセサイザー」や、シンセサイザーでは合成が難しいアコースティック楽器のリアルさを表現するために、実際の楽器音を収録して加工する「サンプリング」などの手法がある。サンプリングは任意の音を直接音楽制作に活用できるが、全く新しい音色を生成したり、複数の音の特徴を組み合わせたりすることはできない。
【0029】
これに対し、本開示によれば、深層学習された生成モデルを用いることによって、潜在空間を探索して、多彩で全く新しくユニークな楽器音を生成したり、複数の音の特徴を組み合わせるインテリジェントな音合成処理を行ったりすることが可能である。また、本開示によれば、2又は3以上の任意の入力音を、深層学習された生成モデルの潜在表現で混合することで、全く新しくユニークな楽器音を作ることができる。
【0030】
図2には、一例として、本開示によって2つの入力音を混合して得られるインスピレーションに基づいて楽器音を生成する仕組みを模式的に示している。
図2に示す例では、第1の入力音としてトランペットのオーディオ波形と第2の入力音として犬の鳴き声のオーディオ波形を、それぞれwav形式のファイルとして取り込んでいる。まず、各入力音は音色特徴抽出器にかけられて、それぞれ特徴ベクトルh
t及びh
dが得られる。次いで、ユーザなどによって指定された混合比で各特徴ベクトルが合成される。そして、第1の入力音及び第2の入力音から得られるインスピレーションに基づく、ユニークな楽器音が生成される。具体的には、本開示モデルによって生成された学習済みモデル(生成器)が、合成後の音色の特徴ベクトルと、ユーザが指定した音程を条件として、ユニークな楽器音を生成する。
【0031】
ユーザは、複数の入力音の混合比率を調整することによって、作る楽器音をコントロールすることができる。
図2中の上段に示す例では、第1の入力音及び第2の入力音の各特徴ベクトルh
t及びh
dが0.5:0.5の比率で混合されて、合成された特徴ベクトルh
s1が生成される。そして、深層学習された生成モデルを用いて、特徴ベクトルh
s1から犬の音色っぽいトランペットに似たユニークな楽器音S
1が生成される。また、
図2中の下段に示す例では、第1の入力音及び第2の入力音の各特徴ベクトルh
t及びh
dが0.8:0.2の比率で混合されて、合成された特徴ベクトルh
s2が生成される。そして、深層学習された生成モデルを用いて、トランペットの音色っぽい犬の鳴き声に似たユニークな楽器音S
2が生成される。
【0032】
本開示に係る、深層学習された生成モデルを用いた楽器音の生成技術は、以下の(1)~(4)のような特徴を持つ。
【0033】
(1)サンプラーのようにユーザの任意の音のインスピレーションを生成モデルへ入力可能で、且つ多様な入力音に効率よく汎化する。
(2)深層学習された生成モデルを用いることで、潜在空間を介して複数の音を混合することが可能である。
(3)幅広いレンジのピッチを正確且つ一貫した音色で生成可能である。
(4)インタラクティブな時間内で楽器音を生成することが可能である。
【0034】
本開示では、モデルへの入力を可能とし且つ入力に対する汎化特性を向上するという観点から、IC-GANを用いて生成された生成モデルを適用する。IC-GANは、データポイントすなわちインスタンスの特徴量で生成器と識別器を条件付けることによって、データ全体の分布をインスタンス近傍の局所的な分布の重ね合わせとして表現するものである。IC-GANは、モデルへの入力とモード崩壊の回避を実現できる、GANの学習の新たな技術である。
【0035】
B.音生成システム
B-1.システム構成
図3には、本開示に基づいて、入力音の特徴を反映した音程付き楽器音を生成する楽器音生成システム300の機能的構成を模式的に示している。
【0036】
図3を参照すると、楽器音生成システム300は、波形スペクトログラム変換部301と、音色特徴抽出部302と、生成部303と、スペクトログラム波形逆変換部304を備えている。このうち、音色特徴抽出部302と生成部303は、DNNを用いて実装される。この楽器音生成システム300は、短時間のオーディオ波形(wavファイル)からなる入力音と、音程と、乱数を入力として、入力音の特徴を反映した音程付き楽器音を出力する。出力される楽器音は、1秒間又は数秒程度の長さとする。
【0037】
楽器音生成システム300は、オーディオ波形からなる入力音を、wav形式ファイルとして入力する。スペクトログラム変換部301は、短時間フーリエ変換により入力音の線形スペクトログラムを生成し、さらに線形スペクトログラムを対数スケール変換して、メルスペクトログラムを生成する。楽器音生成システム300に2以上の入力音が入力される場合には、スペクトログラム変換部301は、各入力音のオーディオ波形をそれぞれメルスペクトログラムに変換する。
【0038】
ここで、スペクトログラムは、オーディオ波形から音声信号の周波数成分と振幅成分をフーリエ変換により取り出した各音声データセグメント(フレーム)のスペクトルを時間軸に沿って並べた、いわゆる声紋に相当する。本明細書に添付する各図では、スペクトログラムを、各時間成分及び周波数成分における信号成分の強さ(振幅)を濃淡で視覚化した2次元のグラフとして示している。また、メルスペクトログラムは、人間の耳には実際の周波数の音がそのまま聞こえる訳でなく、可聴域の上限に近い音は実際の音よりも低めに聞こえるというずれが生じることに着目して、メルスケールで等間隔な特定の周波数帯のみを抽出するメルフィルタバンクを線形スペクトログラムに適用して算出された対数メルスペクトログラムである。また、メルスケールは、人間の聴覚、すなわち音の聞こえ方に基づいたスケールである。
【0039】
音色特徴抽出部302は、入力音のオーディオ波形を視覚化表現したメルスペクトログラムから音色特徴量hを抽出する。楽器音生成システム300に2以上の入力音が入力される場合には、音色特徴抽出部302は、入力音毎にメルスペクトログラムから音色特徴量h
1、h
2、…を抽出する(
図3では、図示を省略)。
【0040】
音色特徴抽出部302は、例えば畳み込みニューラルネットワーク(CNN)で構成された、メルスペクトログラム(画像情報)から音色特徴量を抽出するように事前学習された学習済みモデルを用いて、音色特徴量の抽出を行う。また、音色特徴量は、具体的にはn次元(但し、nは正の整数とする)の特徴ベクトルである。
【0041】
生成部303は、入力音の音色特徴量と、音程と、乱数を入力として、入力音の特徴を反映した音程付き楽器音のメルスペクトログラムを生成する。楽器音生成システム300に2以上の入力音が入力され、音色特徴抽出部302が入力音毎のメルスペクトログラムから複数の音色特徴量(特徴ベクトル)h1、h2、…を抽出した場合には、指定された混合比率で各音色特徴量を混合したものが生成部303に入力される。
【0042】
生成部303は、深層学習された生成モデルを用いて、音程付き楽器音のメルスペクトログラムを生成する。具体的には、生成部303は、本開示モデルによって生成された学習済みモデル(生成器)を用いて、入力音の音色特徴量と音程をインスタンス条件として、入力音の特徴を反映した音程付き楽器音のメルスペクトログラムを生成する。
【0043】
スペクトログラム波形逆変換部304は、生成部303が生成したメルスペクトログラムをフーリエ逆変換して、例えばwav形式ファイルからなるオーディオ波形データを再構成する。再構築されたオーディオ波形は、1秒間又は数秒程度の長さとする。メルスペクトログラムからオーディオ波形への変換処理が遅いという問題があるが、この点の詳細について後述に譲る。
【0044】
B-2.システム動作
図4には、楽器音生成システム300において、入力音の特徴を反映した音程付き楽器音を生成するための処理手順をフローチャートの形式で示している。
【0045】
まず、楽器音生成システム300は、ユーザが指定した、対象となる入力音が入力される(ステップS401)。当該ステップでは、例えば、入力音の音源となるwav形式ファイルのファイル名を指定するという形態で取得する。また、ユーザが2以上の入力音を指定した場合には、当該ステップでは、各入力音のwav形式ファイルを取得する。
【0046】
次いで、スペクトログラム変換部301は、入力音のオーディオ波形をメルスペクトログラムに変換する(ステップS402)。すなわち、スペクトログラム変換部301は、フーリエ変換により入力音の線形スペクトログラムを生成し、さらに線形スペクトログラムを対数スケール変換して、メルスペクトログラムを生成する。ステップS401で2以上の入力音が入力された場合には、ステップS402では、スペクトログラム変換部301は、すべての入力音についてメルスペクトログラムを生成する。
【0047】
次いで、音色特徴抽出部302は、入力音のメルスペクトログラムから音色特徴量hを抽出する(ステップS403)。
【0048】
ステップS401で2以上の入力音が入力された場合には(ステップS404のYes)、ステップS403では、音色特徴抽出部302は、すべての入力音のメルスペクトログラムから音色特徴量h1、h2、…を抽出し、さらに各音色特徴量h1、h2、…を混合して音色特徴量hを生成する(ステップS405)。
【0049】
各入力音について混合比率が指定されている場合には、ステップS405では、指定された混合比率に従って、各入力音の音色特徴量h1、h2、…を加重平均して混合処理する。また、混合比率が指定されていない場合には、各入力音の音色特徴量h1、h2、…を単純平均して混合処理するようにしてもよい。ここで、ステップS401でN個の入力音が入力され、各入力音のメルスペクトログラムから音色特徴量h1、h2、…、hNがそれぞれ生成され、且つ、i番目の入力音の混合比riが指定されたとすると(但し、r1+r2+…+rN=1とする)、ステップS405では下式(1)に従って混合音色特徴量hを生成することができる。
【0050】
【0051】
次いで、楽器音生成システム300には、ユーザが指定した、生成すべき楽器音の音程情報が入力される(ステップS406)。但し、音程情報は、ステップS401で入力音と同時に楽器音生成システム300に入力するようにしてもよい。
【0052】
そして、生成部303は、ステップS403又はS405で得られた音色特徴量hとステップS406で得られた音程情報から、入力音の特徴を反映した音程付き楽器音のメルスペクトログラムを生成する(ステップS407)。生成部303は、具体的には、本開示モデルによって生成された学習済みモデル(生成器)を用いて、入力音の音色特徴量と音程をインスタンス条件として、楽器音生成システム300において生成した乱数から、入力音の特徴を反映した音程付き楽器音のメルスペクトログラムを生成する。
【0053】
そして、スペクトログラム波形逆変換部304は、生成部303が生成したメルスペクトログラムをフーリエ逆変換して、例えばwav形式ファイルからなるオーディオ波形データを再構成して、MIDIデータとして出力して(ステップS408)、本処理を終了する。出力される楽器音は、1秒間又は数秒程度の長さとする。
【0054】
B-3.システムの特徴
上記で、音再生システム300の構成及び動作について概略的に説明してきた。音再生システム300は、以下のような特徴がある。
(1)楽器音生成システム300は、学習済みモデルを用いて、入力音の音色を反映した音程付き楽器音を、インタラクティブな時間内で生成することができる。
(2)インスタンス条件付けを用いることによって、生成した楽器音の品質及び楽器音の生成能力を向上させることができる。
(3)音色特徴抽出器に対し音程に関する敵対的学習を行うことによって、音程精度及び音色の一貫性を向上させることができる。
【0055】
B-4.システムの運用について
図3に示した、楽器音生成システム300は、例えばコンピュータなどで構成される情報処理装置上で実装される。本開示モデルを用いて学習済みモデル(生成器)を生成する処理や、学習済みモデル(生成器)を用いて入力音の特徴を反映した音程付き楽器音を生成する処理は、計算負荷が大きい。このため、楽器音生成システム300の1つの運用形態として、クライアントサーバモデルも想定される。
【0056】
この場合、クライアント側では、例えばユーザによるGUI(Graphical User Interface)操作を通じて、入力音のwav形式ファイルの選択(複数の入力音を選択する場合は、各入力音の混合比率も指定される)、及び音程の指定が行われて、サーバに対して入力音の特徴を反映した音程付き楽器音の生成をリクエストする。これに対し、サーバ側では、クライアント側から指定された入力音(その音色特徴量)と音程をインスタンス条件として、入力音の特徴を反映した音程付き楽器音を生成して、リクエスト元のクライアントに返す。この運用形態の詳細については、後述(F項)に譲る。
【0057】
C.音色特徴量の抽出について
上記B項で説明したように、音色特徴抽出部302は、入力音のオーディオ波形を視覚化表現したメルスペクトログラムから音色特徴量hを抽出する。具体的には、音色特徴抽出部302は、CNNで構成された、メルスペクトログラム(画像情報)から音色特徴量を抽出するように事前学習された学習済みモデルを用いた特徴抽出器である。
【0058】
後述のD項で説明するインスタンス条件付きGANの学習には、良質な特徴抽出器を用いることが重要である。特徴抽出器を獲得する最も簡単な方法は、ラベル付きの教師データを用いて暮らす識別器を学習し、最終の全結合層の直前の出力を特徴量として利用することである。
【0059】
しかしながら、上記の方法に従って学習された特徴抽出器を音色特徴抽出部302に適用すると、楽器音生成システム300による生成音の音程精度や音色一貫性が低下するという問題がある。例えば、入力音の音程が「レ」であるのに対し、生成音の音程が「ミ」に近い「レ」になってしまうという問題がある。この問題の原因として、以下の2点が考えられる。
【0060】
(a)一般的な方法で学習された特徴抽出器の特徴量には音程情報が含まれている。
(b)ユーザが指定する音程と、特徴量に含まれる音程情報が互いに干渉することで、(生成部303が用いる)生成器の学習が不安定になる。例えば、ユーザが指定した音程がC4であるのに対して、特徴抽出器が抽出した特徴量に音程情報としてG4が含まれる場合、後段の生成器はC4又はG4のどちらの音程の楽器音を生成してよいか判断がつかない。
【0061】
そこで、本開示では、メルスペクトログラムから音程情報が残らない音色特徴量を抽出できるように、音色特徴抽出器の学習を行う。具体的には、本開示では、音色特徴量に音色特徴量が残らないように、音色特徴抽出器に対して音程に関する敵対的学習を行うようにする。
【0062】
図5には、音色特徴抽出器の学習時におけるワークフローの一例を示している。
図5に示す例では、音色特徴抽出部302に用いられる音色特徴抽出器501を、楽器識別器502とともに学習する。上述と同様に、音色特徴抽出器501は、オーディオ波形のメルスペクトログラムから音色特徴量hを抽出する。また、楽器識別器502は、音色特徴量hから元のオーディオ波形の楽器を識別する。そして、楽器識別器502から出力される予測分布C
predと正解分布C
gtとを比較して、誤差逆伝播によって音色特徴抽出器501及び楽器識別器502の学習を行う。例えば、楽器識別器502を固定して音色特徴抽出器501の学習を行う学習フェーズと、音色特徴抽出器501を固定して楽器識別器502の学習を行う学習フェーズを交互に繰り返す。
【0063】
しかしながら、
図5に示した学習方法では、音色特徴抽出器501が抽出する特徴量hに音程情報が残らないようにすることは難しい。指定した音程の楽器音を正確に生成することが困難になるという問題がある。何故ならば、後述のD項で説明するように、生成器Gと識別器Dは音色特徴量hと音程情報pの両方を入力するため、音色特徴量に音程情報が含まれていると、どちらの音程情報が正しいのか混乱してしまい、適切な学習が困難になるからである。
【0064】
図6には、特徴量の音程情報が残らないように音程に関する敵対的学習を行う場合の、音色特徴抽出器の学習時においてワークフローを示している。
図6に示す例では、音色特徴抽出部302に用いられる音色特徴抽出器601を、楽器識別器602及び音程識別器603とともに学習する。とりわけ本実施形態では、楽器識別器602と音程識別器603を同時に学習し、且つ、音色特徴抽出器601が抽出する音色特徴量を用いて音程が識別できないような学習を行うことで、音色特徴抽出器601が抽出する音色特徴量に音程情報が残存することを回避する。
【0065】
上述と同様に、音色特徴抽出器601は、オーディオ波形のメルスペクトログラムから音色特徴量hを抽出する。また、楽器識別器602は、音色特徴量hから元のオーディオ波形の楽器を識別する。楽器識別器602の学習は、
図5に示したワークフローの場合と同様であり、ここでは詳細な説明を省略する。
【0066】
また、音色特徴量に音程情報が残らないように、音色特徴抽出器601に対して音程に関する敵対的学習を行う。音程識別器603は、音色特徴量hから元のオーディオ波形の音程を識別する。
【0067】
まず、音程識別器603が、音色特徴抽出器601が抽出した音色特徴量から、元のオーディオ波形の音程を正確に識別できるように学習を行う。すなわち、音程識別器603から出力される予測分布C2,predと正解分布C2,gtとを比較して、誤差逆伝播によって音程識別器603を学習する。このようにして、音程識別器603の学習を行った後、続いて音程識別器603を固定して、音程情報が残存しない音色特徴量hを生成できるように、音色特徴抽出器601の学習を行う。すなわち、音程識別器603から出力される予測分布C2,predが一様分布C2,uniとなり、言い換えれば、音程識別器603において音程を識別できない音色特徴量hを生成できるように、音色特徴抽出器601の学習を行う。
【0068】
図6に示すような、敵対的学習に基づく音程不変な音色特徴抽出器の学習方法によれば、音色と音程情報が特徴量空間で絡み合ってGANの学習が不安定化することを回避する効果があり、音程精度及び音色の一貫性を向上させることができる。
【0069】
音色に関する敵対的学習について、もう少し具体的に説明する。特徴量fφ(x)(=h)を入力として、音程識別器603が楽器識別及び音程識別を行う浅いMLPをそれぞれCi、Cpとする。下式(2)及び(3)に示す損失関数を交互に最適化する敵対的学習により、音程情報を含まない音色特徴量を抽出できる音色特徴抽出器fφを獲得することができる。
【0070】
【0071】
【0072】
上式(2)及び(3)において、i(x)とp(x)は、サンプルxに対する楽器ラベル及び音程ラベルをそれぞれ表す。また、CEは交差エントロピー(cross entropy)であり、KLはカルバック・ライブラー情報量(Kullback-Leibler divergence)である。
【0073】
上式(2)の第1項は、正しく楽器を識別できるように、特徴抽出器fφと楽器識別Ciを更新する。これに対し、上式(2)の第2項は、特徴量fφ(x)を用いた音程識別が不能、すなわち音程に関する予測分布が一様分布に近づくように、音色特徴抽出器fφを更新する。一方、上式(3)は、特徴量fφ(x)が与えられた条件下で、音程識別精度を最大化するように、Cpを更新する。このような敵対的学習を行うことによって、音程情報が残らないように音色特徴量を抽出できる音色特徴抽出器を獲得することができる。
【0074】
実際、学習済みの音色特徴抽出器fφを固定して、上式(3)を用いて識別器603の音程識別のみを事後的に学習したところ、敵対的学習を用いない場合は17%以上の精度で音程識別が可能であるのに対し、音程に関する敵対的学習では2.5%まで低下することを確認した。
【0075】
D.入力音の特徴を反映した音程付き楽器音の生成について
上記B項で説明したように、生成部303は、入力音の音色特徴量と、音程と、乱数を入力として、入力音の特徴を反映した音程付き楽器音のメルスペクトログラムを生成する。具体的には、生成部303は、本開示モデルによって生成された学習済みモデル(生成器)を用いて、入力音の音色特徴量と音程をインスタンス条件として、入力音の特徴を反映した音程付き楽器音のメルスペクトログラムを生成する。
【0076】
ここで、GANは、当業界において既に周知のように、真のデータと人工データを見分ける識別器(Discriminator:D)と、ノイズからデータを生成する生成器(Generator:G)の2つのニューラルネットワークを競わせて学習させる深層学習モデルである。GANには、生成データが訓練データ中の一部に偏ってしまうことにより生成サンプルの質や多様性が損なわれというモード崩壊の課題がある。これに対し、IC-GANは、データ点(インスタンス)に対応する特徴量によって識別器Dと生成器Gを条件付けて、データ点の近傍も真のデータとして識別器に教えることにより、モード崩壊の課題を解決したGANの学習の新たな技術である。
【0077】
図27には、IC-GANのモデルの概要を示している(例えば、非特許文献1を参照のこと)。識別器Dと生成器Gは、それぞれDNNを用いて実装される。同図において、インスタンスとしての入力画像x
iは、特徴抽出器f
φにより特徴量空間へとマッピングされる。そして、特徴抽出器f
φの出力として得られた画像x
iの特徴量h
iが、生成器Gと識別器Dの各々に入力される。生成器Gは、インスタンスx
iから抽出された特徴量h
iと、サンプリングしたノイズ(乱数)zから、画像x
gを生成する。また、識別器Dは、生成器Gが特徴量h
iを基に生成した画像x
gと、実サンプルである近傍画像x
nを判別する。そして、生成器Gは識別器Dが近傍画像x
nを判別不能となる生成画像x
gをできるように、一方の識別器Dは生成器Gによる生成画像x
gと近傍画像x
nを判別できるように、互いに競わせて学習させる。結果として、識別器Dにおいて真偽の判別が不能となるような精緻な画像X
gを生成する生成器Gを得ることができる。
【0078】
本実施形態では、特徴抽出器fφが音色特徴抽出部302に対応し、生成器Gが生成部303に対応する。そして、入力画像xiは入力音を視覚化したメルスペクトログラムに対応するとともに特徴量hiは音色特徴量に対応し、生成画像xgは生成器Gが生成したメルスペクトログラムに対応する。
【0079】
本開示モデルは、IC-GANのアイデアを利用して、楽器音を生成するGANの枠組みによって学習された生成モデルである(前述)。
図7には、楽器音生成システム300の生成部303で用いる生成器を学習する場合の本開示モデルの概要を示している。この場合の生成器Gは、入力音と音程情報pとノイズベクトルzから、入力音の特徴を反映した音程付き楽器音を生成する。また、識別器Dは、生成器Gによる生成音の真偽(real/false)を識別する。
【0080】
入力音は、スペクトログラム変換部301で、短時間フーリエ変換により対数スケールのメルスペクトログラムxiに変換されている。そして、音色特徴抽出部302が、上記C項で説明した特徴抽出器fφを用いて、メルスペクトログラムxiを音色特徴量hiに写像する。生成器Gは、音色特徴量hiとともに、音程情報pのワンショットベクトル及び標準正規分布からサンプリングしたノイズベクトルzを入力して、メルスペクトログラムxgを生成する。生成したメルスペクトログラムは、後述のE項で説明するスペクトログラム波形逆変換部304によって、オーディオ波形に再構築される。オーディオ波形は、入力音の特徴を反映した音程付き楽器音である。
【0081】
一般的なクラス条件付けは、データ全体の分布をクラス数分だけのオーバーラップのない複数の分布に分割する。これに対し、IC-GAN(非特許文献1を参照のこと)におけるインスタンス条件付けは、データ全体の分布をオーバーラップのある多数の局所的な分布へと分割することによって、複雑なデータ分布を獲得しようとするものである。インスタンスxiの特徴量hi=fφ(xi)及び音程情報のワンショットベクトルpを用いて生成器Gと識別器Dの両方を条件付けすることによって、インスタンスxiの近傍の局所的な分布P(x|hi,p)をモデリングし、その重ね合わせとしてデータ全体の分布P(x)を下式(4)のように表現する。
【0082】
【0083】
生成モデルの学習手順は、非特許文献1に従う。入力x
iに対して、学習済み特徴抽出器f
φ(・)で定義される特徴量空間においてL2距離がkさいきおぼうのデータ集合をA
iとする。このとき、
図7に示すように、一様分布に基づいてA
iから近傍データ点x
jをサンプルする。x
jは、リアルサンプルとして、生成サンプルx
gとともに識別器Dの学習に利用される。また、リアルサンプルx
jに対応するピッチp(x
j)は、生成器Gと識別器Dに条件付けとして入力される。本実施形態では、生成器Gと識別器Dを、下式(5)に示すmin-maxゲームを通じて最適化する。
【0084】
【0085】
E.オーディオ波形の再構成について
メルスペクトログラムからオーディオ波形データを再構成する方法には、主に学習ペースト最適化ベースの2つのアプローチが挙げられる。Text-to-Speechの分野では、学習によってvocoderを獲得するアプローチが盛んに研究されている。しかし、本開示は多様な音色と音程の楽器音の生成を目的としており、そのような生成音に対応可能な汎用的なvocoderを獲得することは必ずしも容易でない。一方、周波数方向に高解像度のメルスペクトログラムを生成することで、最適化ベースのオーディオ反転を用いた場合でも、音楽を含む多様な音響を一定程度の音質で合成できるという研究成果がある(非特許文献5を参照のこと)。そこで、本開示では、最適化ベースのアプローチを採用して、メルスペクトログラムからオーディオ波形データを再構成する。
【0086】
図8には、最適化ベースのアプローチによってメルスペクトログラムからオーディオ波形データを再構成する一般的な処理フローを模式的に示している。
【0087】
メルスペクトログラムは、人間の聴覚に基づいたメルスケールで等間隔な特定の周波数帯のみを抽出するメルフィルタバンクを線形スペクトログラムに適用して算出された対数メルスペクトログラムである。このため、周波数スケール変換部801が、生成部303が生成したメルスペクトログラムを、線形スペクトログラムに周波数スケールに変換する。次いで、位相復元部802は、例えば公知のGriffin-Limアルゴリズムを用いて、線形スペクトログラムの位相を復元する。そして、短時間フーリエ逆変換部(iSTFT)803は、フーリエ逆変換を施して、オーディオ波形を再構築する。このオーディオ波形は、楽器音生成システム300が生成した音程付き楽器音のオーディオ波形である。
【0088】
図8に示す処理フローにおいて、とりわけ周波数スケール変換部801がメルスペクトログラムを線形スペクトログラムに周波数スケール変換する処理は、計算コストが高くボトルネックになるという問題がある。メルスペクトログラムから線形スペクトログラムへの周波数スケール変換は、非負値制約付き最小二乗問題として、下式(6)のように定式化することが可能であるが、一般的な解法は計算量が大きい。下式(6)において、F
melはメルフィルタバンク行列、x
melはメルスケールのスペクトログラム、x
linは線形スケールのスペクトログラムである。
【0089】
【0090】
また、勾配法による更新と非負値への修正を繰り返す反復法によって良好な解を得るアプローチが考えられるが、初期値を乱数で設定しているために、良好な解への収束には十分な反復回数を必要とする。
【0091】
図9には、勾配法による更新と非負値への修正を繰り返す反復法による周波数スケール変換処理フローの概略を示している。当業界において、図示の処理フローに基づいて周波数スケール変換を行うソフトウェアライブラリは既に提供されている。この処理フローでは、まず、初期化部901では乱数でスペクトログラムを初期化する(例えば、時間軸及び周波数軸上の各点の強度(振幅)を乱数で与える)。そして、更新部902は、勾配法により、時間軸及び周波数軸上の各点の強度(振幅)を更新する、次いで、修正部903は、負値となった変数に0を代入する。更新部902及び修正部903による処理を、計算結果が収束するまで繰り返し実施する。既に述べたように、勾配法による更新と非負値への修正を繰り返す反復法は効率的であるが、収束速度が遅い。
【0092】
そこで、本開示では、基本的には同様の反復法を用いるが、スペクトラムの初期化には、乱数の代わりに、非負値制約なしの最小二乗法の解を活用する。具体的には、高速に計算可能な制約なし最小二乗法の解(下式(7)を参照)を求めた後に、その解に非負値への修正を施したものを反復計算の初期値に設定することで、少ない反復回数で良好な解へと収束することが可能になる。これにより、同程度の精度への解へ10分の1程度の反復回数で収束することを実験により確認した。
【0093】
【0094】
図10には、
図9と同様の反復法において、乱数の代わりに非負値制約なしの最小二乗法の解を活用した場合の周波数スケール変換処理フローの概略を示している。まず、初期化部1001は、制約なし最小二乗法の解でスペクトログラムを初期化するが、その際に初期値修正部1002は、負値となった変数に0を代入する。そして、更新部1003は、勾配法により、時間軸及び周波数軸上の各点の強度(振幅)を更新する、次いで、修正部1004は、負値となった変数に0を代入する。更新部1003及び修正部1004による処理を、計算結果が収束するまで繰り返し実施する。
【0095】
図10に示す周波数スケール変換方法によれば、最小二乗法の解のうち負値を0に置換したものを、反復計算の初期値に設定することで、少ない反復回数で良好な階へと収束することが可能になる。その結果、楽器音生成システム300は、インタラクティブな時間内での楽器音の生成を実現することができるようになる。
【0096】
F.クライアントサーバモデルによる運用形態
楽器音生成システム300は、例えばコンピュータなどで構成される情報処理装置上で実装される。本開示モデルを用いて学習済みモデル(生成器)を生成する処理や、学習済みモデル(生成器)を用いて入力音の特徴を反映した音程付き楽器音を生成する処理は、計算負荷が大きい。このため、楽器音生成システム300の1つの運用形態としてクライアントサーバモデルが想定される。
【0097】
図11には、クライアントサーバモデル1100からなる楽器音生成システム300の構成を模式的に示している。クライアントサーバモデル1100は、音程付き楽器音の生成サービスを提供するサーバ1101と、音程付き楽器音の生成をリクエストする1又は多数のクライアント1102で構成される。サーバ1101と各クライアント1102間は、例えばWAN(Wide Area Network)、LAN(Local Area Network)、インターネットなどのネットワーク経由で相互接続されている。
【0098】
クライアント1102は、例えば、ユーザが使用するスマートフォンやタブレット、パーソナルコンピュータ(PC)などの情報端末(エッジデバイス)からなる。ここで言うユーザは、例えば、サーバ1101から提供されるユニークな楽器音を使って、作曲やその他の音楽活動を行う一般ユーザである。クライアント1102側では、例えばGUI画面を介して、入力音のwav形式ファイルの選択、音程の指定といったGUI操作が実施される。その際、複数の入力音を選択する場合は各入力音の混合比率の指定もGUI操作に含まれる。そして、クライアント1102は、サーバ1101に対し、入力音の特徴を反映した音程付き楽器音の生成処理をリクエストする。
【0099】
サーバ1101は、例えばコンピュータなどの情報処理装置からなり、楽器音生成システム300の主要コンポーネント301~304を装備している。サーバ1101は、クライアント1102からのリクエストに対して、指定された入力音及び音程をインスタンス条件として、本開示モデルを用いて生成した学習済みモデル(生成器)を使って、入力音の特徴を反映した音程付き楽器音を生成して、リクエスト元のクライアント1102に返す。また、クライアント102から複数の入力音がリクエストされている場合には、サーバ1101は、クライアント1102が指定した混合比で各入力音の特徴ベクトルを合成した特徴ベクトルを用いて、音程付き楽器音を生成して、クライアント1102に返す。
【0100】
図12には、クライアント1102とサーバ1101で実施される処理シーケンス例を示している。
【0101】
クライアント1102側では、ユーザは、GUI操作を通じて、楽器音を生成するための音源となる入力音と、生成すべき楽器音の音程を指定する(SEQ1201)。
【0102】
入力音の指定は、該当するwav形式ファイルのファイル名をプリセットの中から指定するという形態で行われる。例えば、サーバ1101側であらかじめ用意されたwav形式ファイルや、クライアント1102側で指定可能でサーバ1101が取得可能なwav形式ファイル、さらにはクライアント1102からサーバ1101にアップロードすることが可能なwav形式ファイルも、入力音のプリセットとして指定可能であってもよい。また、ユーザは、2以上の入力音を指定することも可能であり、複数の入力音を指定した場合には、さらに各入力音の混合比率を指定することができる。
【0103】
そして、クライアント1102は、サーバ1101に対して、音程付き楽器音の生成リクエストを送信する(SEQ1202)。このリクエストは、ユーザが指定した入力音及び音程の情報を含む。ユーザが複数の入力音を指定した場合には、リクエストは各入力音の混合比率も含む。
【0104】
サーバ1101は、クライアント1102からのリクエストを受け取ると(SEQ1203)、まず、このリクエストで指定された入力音を取得する(SEQ1204)。サーバ1101は、指定された入力音のwav形式ファイルを、自身のローカルディスクから取得したり、ネットワーク経由で外部の蓄積装置から取得したりしてもよい。また、サーバ1101は、クライアント1102からアップロードされたwav形式ファイルを取得するようにしてもよい。
【0105】
次いで、サーバ1101は、スペクトログラム変換部301を用いて、入力音のオーディオ波形をメルスペクトログラムに変換する(SEQ1205)。クライアント1102からのリクエストが複数の入力音を指定している場合には、サーバ1101は、すべての入力音のオーディオ波形をメルスペクトログラムに変換する。
【0106】
次いで、サーバ1101は、音色特徴抽出部302を使って、入力音のメルスペクトログラムから音色特徴量hを抽出する(SEQ1206)。クライアント1102からのリクエストが複数の入力音を指定している場合には、上式(1)に従って、各入力音から生成されたメルスペクトログラムを、指定された混合比率で混合した音色特徴量hを計算する。
【0107】
次いで、サーバ1101は、生成部303を使って、入力音のメルスペクトログラムから抽出された音色特徴量hから、クライアント1102からのリクエストで指定された音程からなる楽器音のメルスペクトログラムを生成する(SEQ1207)。生成部303は、具体的には、本開示モデルによって生成された学習済みモデル(生成器)を用いて、入力音の音色特徴量と音程をインスタンス条件として、楽器音生成システム300において生成した乱数から、入力音の特徴を反映した、音程付き楽器音のメルスペクトログラムを生成する。
【0108】
次いで、サーバ1101は、スペクトログラム波形逆変換部304を使って、生成したメルスペクトログラムからオーディオ波形を再構築する(SEQ1208)。このオーディオ波形は、入力音の特徴を反映した音程付き楽器音であり、出力される楽器音は、1秒間又は数秒程度の長さとする。MIDIデータとして出力される。
【0109】
そして、サーバ1101は、生成した音程付き楽器音のデータを、リクエスト元のクライアント1102に返す(SEQ1209)。なお、サーバ1101は、再構築されたオーディオ波形とともに、再構築する前のメルスペクトログラムの情報も併せて返送するようにしてもよい。また、サーバ1101は、クライアント1102に対して、楽器音のデータを、ストリーミングしてもよいし、ファイル自体を送信するようにしてもよい。
【0110】
クライアント1102側では、サーバ1101から音程付き楽器音のMIDIデータを受信すると(SEQ1209)、ユーザのGUI操作に従って、その楽器音の再生(ユーザの試聴)、保存を行うことができる(SEQ1210)。また、ユーザは、GUI操作によって、さらに次の楽器音の生成をリクエストすることもできる。
【0111】
G.GUIの構成及び操作例
このG項では、クライアント1102側で音程付き楽器音の生成をリクエストしたり、生成された音程付き楽器音に対する再生や保存などの処理を指示したりするための、GUI画面及びGUI操作について説明する。F項で説明したように音再生システム300がクライアントサーバモデルとして実装される場合には、このG項で説明するGUI操作はクライアントの端末上で行われる。なお、音再生システム300が単一の情報処理装置上で実装される場合には、このG項で説明するGUI操作は情報処理装置のコンソールを用いて行われる。
【0112】
G-1.第1の例
図13には、本開示によって音程付き楽器音の生成や再生などを行うためのGUI画面の構成例を示している。但し、
図13は、2つの入力音を組み合わせて音程付き楽器音を生成する場合に使用されるGUI画面の構成である。本開示では、3以上の入力音を基に音程付き楽器音を生成することも可能である。3つの入力音を指定して音程付き楽器音を生成する場合に使用されるGUI画面の構成及び操作については、後述に譲る。
【0113】
図13に示すGUI画面1300は、入出力フィールドとして、プリセット選択部1301と、第1の入力音情報表示部1302と、第2の入力音情報表示部1303と、混合比率指定部1304と、音程情報指定部1305と、生成楽器音情報提示部1306を含んでいる。
【0114】
プリセット選択部1301は、プルダウンメニューを介して第1の入力音と第2の入力音の音源を選択するGUI部品である。プルダウンメニューは、楽器音生成システム300(又は、サーバ1101)があらかじめ用意した、入力音として選択可能なプリセット(wav形式ファイルのファイル名)の一覧からなる(図示を省略)。このプルダウンメニュー上でユーザが選択したwav形式ファイルが順次第1の入力音と第2の入力音として指定される。
【0115】
第1の入力音情報表示部1302と、第2の入力音情報表示部1303には、プリセット選択部1301を通じて指定された第1の入力音及び第2の入力音のwav形式ファイルのファイル名が表示される。また、第1の入力音情報表示部1302と第2の入力音情報表示部1303は、それぞれ入力音を変更するためのプルダウンメニューを有している。第1の入力音情報表示部1302と第2の入力音情報表示部1303の各プルダウンメニューは、楽器音生成システム300(又は、サーバ1101)があらかじめ用意したプリセットではなく、クライアント(又は、情報処理装置)内で独自に入力音として選択可能なwav形式ファイルのファイル名の一覧からなる。ユーザは、第1の入力音情報表示部1302と第2の入力音情報表示部1303の各プルダウンメニューを使って、第1の入力音と第2の入力音を選択することもできる。
【0116】
第1の入力音情報表示部1302と第2の入力音情報表示部1303は、入力音として指定されたwav形式ファイルの再生を指示する再生ボタン1302-1及び1303-1をそれぞれ備えている。ユーザは、これらの再生ボタン1302-1及び1303-1を使って、入力音として指定された各wav形式ファイルを再生させて試聴して、自分が所望する音源であるかどうかを、楽器音の生成をリクエストする前に事前確認することができる。
【0117】
混合比率指定部1304は、第1の入力音情報表示部1302と第2の入力音情報表示部1303に設定された2つの入力音の混合比率を、ユーザが指定するための入力フィールドである。
図13に示す例では、混合比率指定部1304は、第1の入力音に対する第2の入力音の混合比率0.0、0.1、0.2、…、0.8、0.9、1.0を択一的に指定するラジオボタンで構成されている。0.0に近い混合比率ほど第1の入力音の特徴をより捉えた楽器音の生成をリクエストすることができ、1.0に近い混合比率ほど第2の入力音の特徴をより捉えた楽器音の生成をリクエストすることができる。混合比率0.0は第1の入力音のみの単音、混合比率1.0は第2の入力音のみの単音を指定することを意味し、それぞれ単音の特徴から楽器音生成をリクエストすることができる。
【0118】
音程情報指定部1305は、
図13に示すGUI画面構成例では、画面の最下段に配置されている。音程情報指定部1305は、ピアノの鍵盤のレイアウトを利用したデザイン(以下、単に「鍵盤」とする)1305-1からなる。ユーザは、生成する楽器音の音程を鍵盤1305-1中のキーに対するクリック又はタッチ操作で指定することができる。生成ターゲットとなる音程を表すテキスト1305-2(
図13に示す例では、「生成ターゲットMIDIノート/音程:60」というテキスト)が鍵盤1305-1の上付近に表示されているので、ユーザは目視で確認することができる。
【0119】
また、鍵盤1305-1の左下端付近に一対のプラスマイナスボタン1305-3が配置されている。ユーザは、「+」ボタン及び「-」ボタンを選択することで、オクターブの上下を指示することができる。したがって、A-1~C7の88ピッチ分の音程を指定することが可能である。
【0120】
また、鍵盤1305-1の下方中央部には、「低音質」のオン又はオフの2状態を切り替えるトグルスイッチ1305-4が配置されている。このトグルスイッチ1305-4を使って「低音質」のオン状態にトグルすると、入力音の特徴を反映した楽器音が低音質で生成される。一方、このトグルスイッチ1305-4を使って「低音質」のオフ状態にトグルすると、入力音の特徴を反映した楽器音が高音質で生成される。
【0121】
また、音程情報指定部1305は、鍵盤1305-1の上方ほぼ中央に「更新」ボタン1305-5を備えている。ユーザは、同じ特徴の楽器音を別の音程で生成したい場合には、鍵盤1305-1の中から所望する別の音程に該当するキーをクリック又はタッチ操作して指定した後、この更新ボタン1305-5を選択することで、同じ楽器音の別の音程での再生成を指示することができる。
【0122】
ユーザが音程情報指定部1305上で鍵盤1305-1のいずれかのキーを選択したことによって、音程付き楽器音の生成リクエストが、サーバ1101に対して出力される(又は、情報処理装置内で音程付き楽器音の生成処理が起動する)。
【0123】
サーバ1101側(又は、情報処理装置内)では、第1の入力音及び第2の入力音の各入力音のオーディオ波形をメルスペクトログラムに変換し、各メルスペクトログラムから音色特徴量を抽出し且つ指定された混合比率で混合した後、音色特徴量及び音程情報をインスタンス条件として、音程付き楽器音を指定された音質(高音質又は低音質のいずれか)で生成する。これに対し、クライアント1102側では、サーバ1101側で生成された音程付き楽器音をストリーミング再生する(又は、ダウンロードして再生出力する)(但し、情報処理装置内部で音程付き楽器音を生成する場合は、情報処理装置において生成音を再生出力する)。
【0124】
生成楽器音情報提示部1306は、生成された音程付き楽器音に関する情報を提示する提示フィールド1306-1を備えている。提示される「音程付き楽器音に関する情報」は特に限定されない。例えば、メルスペクトログラム(又は、周波数スペクトログラム)のように楽器音のオーディオ波形の特徴を視覚的に表現する情報を、この提示フィールド1306-1に表示するようにしてもよい(後述)。もちろん、スペクトログラムではなく、楽器音のオーディオ波形をこの提示フィールド1306-1に表示するようにしてもよい。
【0125】
また、生成楽器音情報提示部1306は、再生ボタン1306-2を備えている。ユーザは、この再生ボタン1306-2を使って、生成された音程付き楽器音を再生させて試聴して、指定した入力音の特徴を反映した、期待した通りの音程及び楽器音であったかどうかを確認することができる。
【0126】
以下、
図14~
図23を参照しながら、
図13に示したGUI画面上での操作例について説明する。
【0127】
図14には、プリセット選択部1301のプルダウンメニュー1401に表示されたwav形式ファイルのファイル名の一覧から、第1の入力音及び第2の入力音として使用するファイル名を順次指定する様子を示している。プルダウンメニュー1401で指定された各ファイルは、それぞれ第1の入力音情報表示部1302と第2の入力音情報表示部1303に表示される。
図14に示す例では、プルダウンメニュー1401上でオーディオファイル「Input_audio#001.wav」及び「Input_audio#002.wav」がそれぞれ指定されている。
【0128】
図15には、プルダウンメニュー1401上でオーディオファイル「input_audio#001.wav」及び「input_audio#002.wav」がそれぞれ指定されたことに応答して、第1の入力音情報表示部1302と第2の入力音情報表示部1303に各ファイル名が表示されている様子を示している。ユーザは、第1の入力音情報表示部1302と第2の入力音情報表示部1303にそれぞれ表示されるファイル名から、音程付き楽器音の生成に用いる入力音の組み合わせを目視により確認することができる。さらに、ユーザは、第1の入力音情報表示部1302再生ボタン1302-1と第2の入力音情報表示部1303の再生ボタン1303-1を使って、入力音として指定された各wav形式ファイル「input_audio#001.wav」及び「input_audio#002.wav」を個別に再生させて、音程付き楽器音の生成に用いる入力音の組み合わせを試聴により確認することができる。
【0129】
図16には、混合比率指定部1304のラジオボタンを使って、第1の入力音及び第2の入力音としてそれぞれ指定された「input_audio#001.wav」及び「input_audio#002.wav」のオーディオ波形の混合比率を指定する様子を示している。混合比率指定部1304は、第1の入力音に対する第2の入力音の混合比率0.0、0.1、0.2、…、0.8、0.9、1.0を択一的に指定するラジオボタンで構成され、0.0に近い混合比率ほど第1の入力音の特徴を捉えた楽器音の生成をリクエストすることができ、1.0に近い混合比率ほど第2の入力音の特徴を捉えた楽器音の生成をリクエストすることができる(前述)。
図16に示す例では、混合比率0.3が指定されている。
【0130】
図16には、さらに、音程情報指定部1305を使って、生成する楽器音の音程を指定する様子を示している。音程情報指定部1305は、ピアノの鍵盤のレイアウトを利用したデザインを有し、鍵盤1305-1の各キー上には該当する音程を表す文字が表示されている。また、鍵盤1305-1の左下端付近に配置されたプラスマイナスボタン1305-3を使って、オクターブの上下を指示することができる。したがって、ユーザは、音程情報指定部1305の鍵盤1305-1及びプラスマイナスボタン1305-3の各操作を組み合わせて、A-1~C7の88ピッチ分の音程を指定することが可能である(前述)。なお、「低音質」のオン/オフ切り替えのトグルスイッチ1305-4は「オフ」にトグルされている。
【0131】
ユーザが音程情報指定部1305上で鍵盤1305-1のいずれかのキー(
図16に示す例では、キー「A」とする)を選択したことによって、音程付き楽器音の生成リクエストが、サーバ1101に対して出力される(又は、情報処理装置内で音程付き楽器音の生成処理が起動する)。そして、サーバ1101側で生成された(又は、情報処理装置内部で生成された)、1秒又は数秒程度の比較的短い時間の、入力音の特徴を反映した音程付き楽器音が再生される。
図17には、楽器音の再生に併せて、生成楽器音情報提示部1306の提示フィールド1306-1に、当該楽器音のメルスペクトログラムが表示される様子を示している。この提示フィールド1306-1には、混合比率指定部1304で指定した混合比率に対応して生成されたメルスペクトログラムが反映される。混合比率指定部1304で他のラジオボタンを選択すると、混合比率指定部1304でラジオボタンのオン/オフ表示が切り替わり(図示を省略)、提示フィールド1306-1中のメルスペクトログラムは新たに選択された混合比率に対応する楽器音に反映されるとともに、ユーザはその楽器音を試聴して確認することができる。
【0132】
ユーザは、他の楽器音のサンプルを探索したくなった場合には、プリセット選択部1301を通じて再度プリセットを選択するか、又は、第1の入力音情報表示部1302と第2の入力音情報表示部1303を通じて第1の入力音及び第2の入力音を個々に変更することができる。
図18には、第1の入力音情報表示部1302と第2の入力音情報表示部1303の各プルダウンメニューから第1の入力音及び第2の入力音を個々に変更する様子を示している。
図18に示す例では、第1の入力音情報表示部1302のプルダウンメニュー1302-2上での選択操作によって、第1の入力音がオーディオファイル「input_audio#101.wav」に変更される。また、第2の入力音情報表示部1303のプルダウンメニュー1303-2上での選択操作によって、第2の入力音が「input_audio#203.wav」に変更されている。各入力音を個々に変更した後の、混合比率の指定、音程情報の指定、及び生成された音程付き楽器音の再生に関する操作は上記と同様なので、ここでは説明を省略する。
【0133】
また、
図19には、ユーザは、入力音の組み合わせを維持しながら、別の音程で楽器音を生成する場合の操作例を示している。、ユーザは、音程情報指定部1305の鍵盤1305-1及びプラスマイナスボタン1305-3の操作を行うことによって、同じ入力音の組み合わせで新たに生成したい楽器音の音程を再度指定した後、さらに鍵盤1305-1の上方ほぼ中央の更新ボタン1305-1を選択することによって、同じ楽器音の別の音程での再生成を指示する。
【0134】
なお、
図18には、第1の入力音情報表示部1302と第2の入力音情報表示部1303の各プルダウンメニューを通じて入力音を指定又は変更する操作例を示した。プルダウンメニュー上には、プリセットされたwav形式ファイルのファイル名の一覧が表示される。これに対し、プリセットされていないが、ユーザの手元の音源を入力音に選択することもできる。
図20には、ユーザの手元の音源を第1の入力音に指定する場合の操作例を示している。ここで言う「ユーザの手元の音源」は、クライアント1102(又は、情報処理装置)のローカルディスクから取得したり、ネットワーク経由で外部の蓄積装置から取得したりすることが可能なwav形式ファイルである。生成する音程付き楽器音は1秒又は数秒程度の比較的短い時間であることから、音源も1秒又は数秒程度の比較的短い時間のオーディオデータであることが好ましい。
図20に示す例では、第1の入力音情報表示部1302には、ユーザの手元の音源を選択する入力ボックス1302-3が出現している。この入力ボックス1302-3は、左半分でユーザの手元の音源(wav形式ファイル)の一覧を表示し、右半分では現在選択中(反転表示されているファイル)の属性情報を表示している。ユーザは入力ボックス1302-3の左半分を使って手元の音源を探索するとともに、右半分に表示された属性情報や再生音に基づいて所望する入力音か否かを確認することができる。そして、入力ボックス1302-3上でいずれかのwav形式ファイルの選択が確定すると、入力ボックス1302-3が消滅するとともに、第1の入力音情報表示部1302には選択が確定したwav形式ファイルのファイル名が表示される(図示を省略)。
【0135】
ユーザは、サーバ1101側で生成した音程付き楽器音を気に入った場合には、クライアント1102(例えば、ユーザ自身の情報端末)にその音源となるwav形式ファイルをダウンロードすることができる。
図21には、サーバ1101側で生成した音程付き楽器音をダウンロードする際の操作例を示している。生成楽器音情報提示部1306の提示フィールド1306-1には、ダウンロードの対象となる楽器音のメルスペクトログラムが表示されている。ユーザは、提示フィールド1306-1の右下端付近に配置されたダウンロードボタン1306-4を選択することによって、気に入った音程付き楽器音のダウンロードを指示することができる。
【0136】
また、音程情報指定部1305の鍵盤1305-1の下方ほぼ中央には、「12音程のファイルをダウンロード」ボタン1305-5が配置されている。この「12音程のファイルをダウンロード」ボタン1305-5は、鍵盤1305-1中のキーで指定した特定の1つの音程だけではなく、12ピッチ分の楽器音のダウンロードを指示するためのボタンである。「12音程のファイルをダウンロード」ボタン1305-5が選択されると、サーバ1101側では、12ピッチ分の音程付き楽器音を生成して、リクエスト元のクライアント1102にダウンロードする。但し、12ピッチ分の音程付き楽器音を生成するための処理時間がかかる。
【0137】
図22には、生成楽器音情報提示部1306の上方ほぼ中央に配置された「すべて補間」ボタン1306-3が選択された様子を示している。「すべて補間」ボタン1306-3は、混合比率0.1から0.9まで(又は、単音を含む0.0から1.0まで)順番に、第1の入力音第2の入力音を組み合わせて音程付き楽器音を生成することを指示するボタンである。この「すべて補間」ボタン1306-3が選択されると、サーバ1101側では各混合比率で音程付き楽器音が順番に自動生成され、クライアント1102側では自動生成された各楽器音が順番に再生される(又は、情報処理装置内で各混合比率の音程付き楽器音の自動生成処理が起動し、順次生成された楽器音が再生出力される)。
【0138】
図23には、エンベロープ処理を行う場合の操作例を示している。エンベロープは、生成した楽器音に対して時間の経過に伴う定型的な変化を付与する処理である。生成楽器音情報提示部1306の下方ほぼ中央に配置されたエンベロープボタン1306-5を選択すると、提示フィールド1306-1が、メルスペクトログラムの表示から、エンベロープの各パラメータを調整するためのスライダーの表示に切り替わる。エンベロープのパラメータは、ADSR(Attack(立ち上がり)、Decay(減衰)、Sustain(減衰後の保持)、Release(余韻))を含む。Attack Timeが短いほどレスポンスの良い音になり、長いほど柔らかい立ち上がりになる。Decay Timeが長いほど長い時間かけて減衰し、短いほどあっさり減衰する。Sustain Levelは、時間ではなく音量をコントロールするパラメータであり、ノートオンし続けることで最終的に到達する音量をコントロールする。Release Timeが長いほど余韻も長くなり、短いほど歯切れの良い音になる。なお、トグルスイッチ1305-4については既に説明した通りである。このトグルスイッチ1305-4を使って「低音質」のオフ状態(言い換えれば、高音質の状態)にトグルすると、入力音の特徴を反映した楽器音が高音質で生成され、エンベロープなどによりカスタマイズされていく。
【0139】
G-2.第2の例
図24には、本開示によって音程付き楽器音の生成や再生などを行うためのGUI画面の他の構成例を示している。但し、
図13では2つの入力音を組み合わせて楽器音を生成する場合に使用されるGUI画面を示したのに対し、
図24では、3つの入力音を組み合わせて音程付き楽器音を生成する場合に使用されるGUI画面を示している。
【0140】
図24に示すGUI画面2400は、音源指定フィールド2410と、楽器音生成操作フィールド2420と、前処理操作フィールド2430を含んでいる。
【0141】
音源指定フィールド2410は、第1乃至第3の入力音の各音源を選択する操作領域である。各入力音の音源となるwav形式ファイルを、プルダウンメニューを使ってプリセットから選択するようにしてもよいし、入力ボックス(例えば、
図20を参照のこと)を使ってユーザの手元の音源を選択するようにしてもよい。プルダウンメニュー及び入力ボックスを使った音源の選択操作については、上述した通りであり、ここでは詳細な説明を省略する。
図24に示す例では、ユーザの操作によって、「第1の入力音.wav」、「第2の入力音.wav」、「第3の入力音.wav」、の3つのwav形式ファイルが選択されており、これらの各ファイルのファイル名及び作成日時が音源指定フィールド2410内に表示されている。
【0142】
楽器音生成操作フィールド2420は、音源指定フィールド2410で選択した第1乃至第3の入力音を組み合わせる際の設定を行うための操作領域である。楽器音生成操作フィールド2420は、三角形のバックグラウンドを有している。第1乃至第3の入力音はこの三角形の各頂点2421~2423にそれぞれ割り付けられ、各頂点2421~2423付近には対応する入力音のサンプル波形が表示される。
【0143】
前処理操作フィールド2430は、各入力音のサンプル波形に対する前処理を行うための操作領域である。楽器音生成操作フィールド2420内で、第1乃至第3の入力音のうちいずれかのサンプル波形を選択すると、前処理操作フィールド2430には、選択された入力音に指定された音源のEQ(イコライザー)及びADSR(エンベロープ処理)の操作画面が表示され、その音源に対してEQ及びADSRの前処理を行うことができる。
【0144】
再び、楽器音生成操作フィールド2420について説明する。バックグラウンドの三角形内のいずれかの位置2424を選択すると、その選択した位置2424と各頂点2421~2423との距離の比に基づいて、第1乃至第3の入力音の混合比率が設定される。例えば、三角形内で第1の入力音が割り付けられた頂点2421に近い位置が選択されるほど、第1の入力音の混合比率が高くなり、第1の入力音の特徴をより捉えた楽器音の生成をリクエストすることができる。また、三角形のいずれかの頂点位置を選択すると、第1乃至第3の頂点のうちその頂点に割り付けられた入力音のみの単音を指定することを意味し、その単音の特徴から楽器音生成をリクエストすることができる。
【0145】
三角形内で選択された位置には、最初に半透明の○が表示される。その後、楽器音生成操作フィールド2420の上方の「Generate」ボタン2425が選択されると、楽器音の生成リクエストが、サーバ1101に対して出力される(又は、情報処理装置内で楽器音の生成処理が起動する)また、この「Generate」ボタン2425を選択したことによって、○の位置で指定された第1乃至第3の入力音の混合比率が確定して、○の表示は半透明から不透明(図示を省略)に変化する。
【0146】
図24に示すGUI画面2400では、楽器音の生成リクエストは、88キー分の楽器音の生成をリクエストすることを想定している。もちろん、89キー以上又は87キー以下の楽器音の生成リクエストであってもよい。あるいは、音程情報を指定するGUI部品(例えば鍵盤など)を、楽器音生成操作フィールド2420内又はその他のフィールドに配置して、そのGUI部品を通じて指定された1キー分のみの音程付き楽器音の生成リクエストであってもよい。
【0147】
サーバ1101側(又は、情報処理装置内)では、第1乃至第3の入力音の各入力音のオーディオ波形をメルスペクトログラムに変換し、各メルスペクトログラムから音色特徴量を抽出し且つ指定された混合比率で混合した後、音色特徴量及び88キーの各音程情報をインスタンス条件として、音程付き楽器音を指定された音質(高音質又は低音質のいずれか)で生成する。これに対し、クライアント1102側では、サーバ1101側で生成された88キー分の楽器音をストリーミング再生する(又は、ダウンロードして再生出力する)(但し、情報処理装置内部で音程付き楽器音を生成する場合は、情報処理装置において生成音を再生出力する)。
【0148】
なお、前処理操作フィールド2430でいずれかの入力音のパラメータを変更すると、「Generate」ボタン2425がハイライト表示され、「Generate」ボタン2425を選択して楽器音の生成をリクエストしないと、パラメータの変更が楽器音に反映されないことをユーザに視覚的に警告するようになっている。
【0149】
ユーザは、サーバ1101側で生成された88キー分の楽器音を試聴して、気に入ると、お気に入りボタン2426を選択して、この楽器音をお気に入りリストへ登録することができる。お気に入りリストへの登録は、該当する楽器音の音源へのアクセス方法(例えば、サーバ1101側で保管しているwav形式ファイルの所在を識別するURI(Uniform Resource Identifier)など)を記録する処理や、楽器音のwav形式ファイルをサーバ1101からダウンロードする処理を含んでいてもよい。
【0150】
図25には、
図24に示したGUI画面の変形例を示している。
図25に示すGUI画面2500では、楽器音生成操作フィールド2420は水平方向に並んだ2つの三角形2510及び2520をバックグラウンドに有している点で、
図24に示したGUI画面とは相違する。
【0151】
左側の三角形2510は、
図24に示したGUI画面2400の楽器音生成操作フィールド2420内の三角形と同様に、第1乃至第3の入力音のサンプル波形の表示及び混合比率の設定に用いられる。ここでは、左側の三角形2510については詳細な説明を省略する。
【0152】
一方、右側の三角形2520は、本開示モデルによって生成された生成器を用いてインスタンス条件付きで楽器音を生成する際に、生成器に入力する乱数zを微調整するために使用される。右側の三角形2520においても、第1乃至第3の入力音はこの三角形2520の各頂点にそれぞれ割り付けられられている。この三角形内でいずれかの位置2521を選択すると、その選択した位置2521と各頂点との距離の比に基づいて、生成器に入力する乱数zが微調整される。例えば、三角形内で第1の入力音が割り付けられた頂点に近い位置が選択されるほど、第1の入力音の特徴をより多く含むように、乱数zが微調整される。
【0153】
H.情報処理装置の構成
このH項では、本開示の実施に供される情報処理装置の具体的な構成について説明する。
【0154】
図26には、情報処理装置2000の具体的なハードウェア構成例を示している。
図26に示す情報処理装置2000は、例えばPCなどで構成される。情報処理装置2000は、
図3に示した楽器音生成システム300として動作し、又は
図11に示したサーバ1101又はクライアント1102として動作することができる。
【0155】
図26に示す情報処理装置2000は、CPU2001と、ROM(Read Only Memory)2002と、RAM(Random Access Memory)2003と、ホストバス2004と、ブリッジ2005と、拡張バス2006と、インターフェース部2007と、入力部2008と、出力部2009と、ストレージ部2010と、ドライブ2011と、通信部2013を含んでいる。
【0156】
CPU2001は、演算処理装置及び制御装置として機能し、各種プログラムに従って情報処理装置2000の動作全般を制御する。ROM2002は、CPU2001が使用するプログラム(基本入出力システムなど)や演算パラメータを不揮発的に格納している。RAM2003は、CPU2001の実行において使用するプログラムをロードしたり、プログラム実行において適宜変化する作業データなどのパラメータを一時的に格納したりするのに使用される。RAM2003にロードしてCPU2001において実行するプログラムは、例えば各種アプリケーションプログラムやオペレーティングシステム(OS)などである。
【0157】
CPU2001とROM2002とRAM2003は、CPUバスなどから構成されるホストバス2004により相互に接続されている。そして、CPU2001は、ROM2002及びRAM2003の協働的な動作により、OSが提供する実行環境下で各種アプリケーションプログラムを実行して、さまざまな機能やサービスを実現することができる。情報処理装置2000がPCの場合、OSは例えば米マイクロソフト社のWindowsやUnixである。また、アプリケーションプログラムには、波形スペクトログラム変換部301、音色特徴抽出部302、生成部303、スペクトログラム波形逆変換部304の各々としての処理を実施するアプリケーション、音色特徴抽出部302及び生成部303の各々で用いられる機械学習モデル(DNNなど)の学習処理を実施するアプリケーション、
図13~
図25に示したようなGUI画面を通じたユーザ操作を処理するアプリケーションが含まれるものとする。
【0158】
ホストバス2004は、ブリッジ2005を介して拡張バス2006に接続されている。拡張バス2006は、例えばPCI(Peripheral Component Interconnect)バス又はPCI Expressであり、ブリッジ2005はPCI規格に基づく。但し、情報処理装置2000がホストバス2004、ブリッジ2005及び拡張バス2006によって回路コンポーネントを分離される構成する必要はなく、単一のバス(図示しない)によってほぼすべての回路コンポーネントが相互接続される実装であってもよい。
【0159】
インターフェース部2007は、拡張バス2006の規格に則って、入力部2008、出力部2009、ストレージ部2010、ドライブ2011、及び通信部2013といった周辺装置を接続する。但し、
図26に示す周辺装置がすべて必須であるとは限らず、また図示しない周辺装置を情報処理装置2000がさらに含んでもよい。また、周辺装置は情報処理装置2000の本体に内蔵されていてもよいし、一部の周辺装置は情報処理装置2000本体に外付け接続されていてもよい。
【0160】
入力部2008は、ユーザからの入力に基づいて入力信号を生成し、CPU2001に出力する入力制御回路などから構成される。入力部2008は、キーボードやマウス、タッチパネル、マイクなどの入力デバイスを含んでもよい。出力部2009は、例えば、液晶ディスプレイ(LCD)装置、有機EL(Electro-Luminescence)ディスプレイ装置、及びLED(Light Emitting Diode)などの表示装置を含む。入力部2008及び出力部2009の少なくとも一部のデバイスを使って、入力音及び音程を指定して音程付き楽器音の生成を指示したり、生成された音程付き楽器音の再生やダウンロードなどを指示したりするためのGUI操作が行われる。
【0161】
ストレージ部2010は、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)などの大容量記憶装置で構成されるが、外付けの記憶装置を含んでもよい。ストレージ部2010は、CPU2001で実行されるプログラム(アプリケーション、OSなど)や各種データなどのファイルを格納する。また、ストレージ部2010は、楽器音の音源となるオーディオ波形のwav形式ファイルを蓄積したり、生成された楽器音のMIDIデータを保存したりするために使用される。
【0162】
リムーバブル記憶媒体2012は、例えばmicroSDカードのようなカートリッジ式で構成される記憶媒体である。ドライブ2011は、装填したリムーバブル記憶媒体2013に対して読み出し及び書き込み動作を行う。ドライブ2011は、リムーバブル記録媒体2012から読み出したデータをRAM2003やストレージ部2010に出力したり、RAM2003やストレージ部2010上のデータをリムーバブル記録媒体2012に書き込んだりする。リムーバブル記憶媒体2012は、楽器音の音源となるオーディオ波形のwav形式ファイルを読み込んだり、生成された楽器音のMIDIデータを保存したりするために使用される。
【0163】
通信部2013は、Wi-Fi(登録商標)、Bluetooth(登録商標)や4Gや5Gなどのセルラー通信網などの無線通信を行うデバイスである。情報処理装置2000がサーバ1101として動作する場合、通信部2013を介してクライアント1102の相互通信が行われる。また、通信部2013は、USB(Universal Serial Bus)やHDMI(登録商標)(High-Definition Multimedia Interface)などの端子を備え、スキャナやプリンタなどのUSBデバイスやディスプレイなどとのデータ通信を行う機能をさらに備えていてもよい。
【0164】
本明細書中において説明した一連の処理はハードウェア、ソフトウェア、又はハードウェアとソフトウェアを複合した構成によって実行することが可能である。ソフトウェアによる処理を実行する場合、本開示の実現に関わる処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。各種処理が実行可能な汎用的なコンピュータにプログラムをインストールして本開示の実現に関わる処理を実行させることも可能である。
【0165】
プログラムは、例えば記録媒体としてのHDDやSSD、ROMなどのコンピュータ内に装備された記録媒体にあらかじめ格納しておくことができる。又は、プログラムを、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、BD(Blu-Ray Disc(登録商標))、磁気ディスク、USB(Universal Serial Bus)メモリなどのリムーバブル記録媒体に、一時的又は永続的に格納しておくことができる。このようなリムーバブル記録媒体を用いて、いわゆるパッケージソフトウェアとして本開示の実現に関わるプログラムを提供することができる。
【0166】
また、プログラムは、ダウンロードサイトからセルラーに代表されるWAN(Wide Area Network)、LAN(Local Area Network)、インターネットなどのネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、コンピュータ内のHDDやSSDなどの大容量記憶装置にインストールすることができる。
【0167】
I.関連研究との比較
このI項では、楽器音の生成に関する他の研究と本開示との比較について説明する。
【0168】
NSynth(非特許文献2を参照のこと)は、Wavenet(非特許文献3を参照のこと)ベースのオートエンコーダを用いて楽器音の波形を生成するものであるが、自己回帰サンプリングのために生成が遅く、生成音にアーチファクトが生じ易いという課題がある。これに対し、本開示は、インタラクティブな時間内で、入力音を反映した楽器音を生成することができる。
【0169】
GANSynth(非特許文献4を参照のこと)は、画像生成モデルを用いて位相情報を含むスペクトログラムを生成することにより、生成速度と音質の改善を実現することができるが、条件なしの生成モデルであり入力を受け付けないため、複雑な潜在空間で所望の音色を探索するのが困難である。これに対し、本開示は、インスタンス条件付きの生成モデルであるので、入力音を受け付けて、複雑な潜在空間で入力音を反映した音色を探索することができる。
【産業上の利用可能性】
【0170】
以上、特定の実施形態を参照しながら、本開示について詳細に説明してきた。しかしながら、本開示は上述した実施形態に限定して解釈されるべきでなく、本開示の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。また、本明細書に記載した効果はあくまで例示であって、本開示がもたらす効果は限定されるものではなく、本明細書に記載されていない付加的な効果があってもよい。
【0171】
本開示は、例えば、作曲や楽曲編集など音楽制作に関する処理を行うパーソナルコンピュータや電子楽器などに適用されて、任意の音のインスピレーションからユニークな楽器音を生成して、楽器を自由にカスタマイズしたり、楽曲に音で意味付けを行ったりすることができる。
【0172】
要するに、例示という形態により本開示について説明してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本開示の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【0173】
なお、本開示は、以下のような構成をとることも可能である。
【0174】
(1)入力音及び音程情報を入力する入力部と、
入力音から音色特徴量を抽出する抽出部と、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部と、
を具備する情報処理装置。
【0175】
(2)前記生成部は、本開示モデルによって学習された生成器を用いて、入力音を前処理後の情報と音程情報をインスタンス条件として音程付き楽器音の情報を生成する、
上記(1)に記載の情報処理装置。
【0176】
(3)前記抽出部は、音程情報が残らないように音色特徴量を抽出する、
上記(1)又は(2)のいずれか1つに記載の情報処理装置。
【0177】
(4)前記抽出部は、音程に関する敵対的学習を行った音色特徴抽出器を用いて、入力音の音色特徴量を抽出する、
上記(1)乃至(3)のいずれか1つに記載の情報処理装置。
【0178】
(5)入力音をメルスペクトログラムに変換する変換部をさらに備え、
前記抽出部は、入力音のメルスペクトログラムから入力音の音色特徴量を抽出する、
上記(1)乃至(4)のいずれか1つの記載の情報処理装置。
【0179】
(6)前記生成部は、音色特徴量と音程情報をインスタンス条件として、音程付き楽器音のメルスペクトログラムを生成し、
前記生成部が生成したメルスペクトログラムからオーディオ波形を構築する逆変換部をさらに備える、
上記(5)に記載の情報処理装置。
【0180】
(7)前記逆変換部は、メルスペクトログラムを線形スペクトログラムに周波数スケールに変換するスケール変換部と、線形スペクトログラムの位相を復元する位相復元部と、位相を復元した後の線形スペクトログラムをフーリエ逆変換するフーリエ逆変換部を含む、
上記(6)に記載の情報処理装置。
【0181】
(8)前記スケール変換部は、非負値制約なしの最小二乗法の解に非負値への修正を施したものを反復計算の初期値に設定して、勾配法による更新と非負値への修正を繰り返す反復法によって周波数スケール変換を行う、
上記(7)に記載の情報処理装置。
【0182】
(9)前記入力部は、複数の入力音を入力可能であり、
前記抽出部は、入力された各入力音から音色特徴量を抽出し、
前記生成部は、各入力音の音色特徴量を混合した音色特徴量と音程情報に基づいて楽器音情報を生成する、
上記(1)乃至(8)のいずれか1つに記載の情報処理装置。
【0183】
(10)前記入力部は、複数の入力音の混合比率に関する情報をさらに入力し、
前記生成部は、入力された混合比率に基づいて各入力音の音色特徴量を混合した音色特徴量と音程情報に基づいて楽器音情報を生成する、
上記(9)に記載の情報処理装置。
【0184】
(11)前記入力部は、ユーザ操作に基づいて指定された入力音及び音程情報を入力する、
上記(1)乃至(10)のいずれか1つに記載の情報処理装置。
【0185】
(12)前記生成部が生成した音程付き楽器音の情報を出力する出力部をさらに備える、
上記(1)乃至(11)のいずれか1つに記載の情報処理装置。
【0186】
(13)入力音及び音程情報を入力する入力ステップと、
入力音から音色特徴量を抽出する抽出ステップと、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成ステップと、
を有する情報処理方法。
【0187】
(14)入力音及び音程情報を入力する入力部、
入力音から音色特徴量を抽出する抽出部、
音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する生成部、
としてコンピュータを機能させるようにコンピュータ可読形式で記述されたコンピュータプログラム。
【0188】
(15)楽器音の生成をリクエストする情報端末と、楽器音を生成する情報処理装置を具備し、
前記情報端末は、ユーザ操作によって指定された入力音及び音程情報を含めて楽器音の生成を前記情報処理装置にリクエストし、
前記情報処理装置は、前記情報端末から受け取った入力音から抽出した音色特徴量と音程情報に基づいて、入力音の特徴を反映した音程付き楽器音の情報を生成する、
音生成システム。
【0189】
(16)情報処理装置と通信する通信部と、
入力音及び音程情報を含む、楽器音の生成に関する指定を行うユーザ操作部と、
を具備し、
前記ユーザ操作部を介して指定された内容に基づいて、入力音及び音程情報を含めて楽器音の生成リクエストを前記情報処理装置に送信するとともに、前記情報処理装置から音程付き楽器音の情報を受信する、
情報端末。
【0190】
(16-1)前記ユーザ操作部は、複数の入力音の指定が可能である、
上記(16)に記載の情報処理装置。
【0191】
(16-2)前記ユーザ操作部は、複数の入力音の混合比率に関する情報をさらに指定可能である、
上記(16-1)に記載の情報処理装置。
【0192】
(16-3)前記情報処理装置がリクエストに基づいて入力音の音色特徴量と音程情報をインスタンス条件として生成した音程付き楽器音の情報を受信する、
上記(16)に記載の情報処理装置。
【0193】
(16-4)前記情報処理装置から受信した音程付き楽器音の情報を出力する出力部をさらに備える、
上記(16)に記載の情報処理装置。
【符号の説明】
【0194】
300…音生成システム、301…波形スペクトログラム変換部
302…音色特徴抽出部、303…生成部
304…スペクトログラム波形逆変換部
501…音色特徴抽出器、502…楽器識別器
601…音色特徴抽出器、602…楽器識別器、603…音程識別器
801…周波数スケール変換部、802…位相復元部
803…短時間フーリエ逆変換部(iSTFT)
901…初期化部、902…更新部、903…修正部
1001…初期化部、1002…初期値修正部
1003…更新部、1004…修正部
1100…音生成システム(クライアントサーバモデル)
1101…サーバ、1102…クライアント
2000…情報処理装置、2001…CPU、2002…ROM
2003…RAM、2004…ホストバス、2005…ブリッジ
2006…拡張バス、2007…インターフェース部
2008…入力部、2009…出力部、2010…ストレージ部
2011…ドライブ、2012…リムーバブル記録媒体
2013…通信部