(57)【要約】【課題】ユーザに適合する頭部伝達関数を容易に取得できるようにする。【解決手段】複数の頭部伝達関数が記録された頭部伝達関数ＤＢから頭部伝達関数を読み出して、頭部伝達関数の特徴量を表すパラメータを抽出し、抽出したパラメータに基づき、頭部伝達関数ＤＢに記録されている頭部伝達関数を用いて新たな頭部伝達関数を生成するようにして、頭部伝達関数ＤＢに既に記録されている頭部伝達関数を用いたデータ補間により新たな頭部伝達関数を生成可能にし、ユーザに適合する頭部伝達関数を容易に取得できるようにする。【選択図】図２
2020014145.tif 000002
【特許請求の範囲】
【請求項１】
頭部伝達関数が複数記録された記憶手段から頭部伝達関数を読み出して、前記頭部伝達関数の特徴を表すパラメータを抽出する抽出手段と、
抽出した前記パラメータに基づき、前記記憶手段に記録されている前記頭部伝達関数を用いて、前記記憶手段に記録されている頭部伝達関数とは異なる頭部伝達関数を生成する生成手段とを有することを特徴とする情報処理装置。
【請求項２】
複数の頭部伝達関数が記録された前記記憶手段を有することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記生成手段は、生成した頭部伝達関数を前記記憶手段に記録することを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記生成手段は、前記記憶手段に記録されている、前記パラメータの異なる２つの頭部伝達関数を合成することで前記異なる頭部伝達関数を生成することを特徴とする請求項１〜３の何れか１項に記載の情報処理装置。
【請求項５】
前記生成手段は、前記記憶手段に記録されている前記頭部伝達関数を伸張することで前記異なる頭部伝達関数を生成することを特徴とする請求項１〜４の何れか１項に記載の情報処理装置。
【請求項６】
前記パラメータが、頭部伝達関数におけるノッチ及びピークの少なくとも何れかの周波数を含むことを特徴とする請求項１〜５の何れか１項に記載の情報処理装置。
【請求項７】
前記抽出手段は、正面方向の前記頭部伝達関数から前記パラメータを抽出することを特徴とする請求項１〜６の何れか１項に記載の情報処理装置。
【請求項８】
抽出した前記パラメータを離散化されたメッシュにマッピングするマッピング手段を有することを特徴とする請求項１〜７の何れか１項に記載の情報処理装置。
【請求項９】
前記パラメータが、前記頭部伝達関数において、４ｋＨｚ以上で最も周波数が低い第１のノッチ及び２番目に周波数が低い第２のノッチの周波数を含むことを特徴とする請求項８記載の情報処理装置。
【請求項１０】
前記抽出手段は、前記頭部伝達関数から少なくとも前記第１のノッチのゲイン又は前記第２のノッチのゲインを抽出することを特徴とする請求項９記載の情報処理装置。
【請求項１１】
前記抽出手段は、前記頭部伝達関数から少なくとも前記第１のノッチの幅又は前記第２のノッチの幅を抽出することを特徴とする請求項９又は１０記載の情報処理装置。
【請求項１２】
前記マッピング手段は、前記第１のノッチの周波数及び前記第２のノッチの周波数について０．２オクターブ以下のステップ幅で離散化を行うことを特徴とする請求項９〜１１の何れか１項に記載の情報処理装置。
【請求項１３】
マッピングした前記パラメータに基づいて、前記記憶手段に頭部伝達関数が記録されていない前記パラメータを抽出する解析手段を有し、
前記生成手段は、前記記憶手段に記録されている頭部伝達関数を用いて、前記解析手段が抽出した前記パラメータの頭部伝達関数を生成することを特徴とする請求項８〜１２の何れか１項に記載の情報処理装置。
【請求項１４】
前記生成手段は、前記記憶手段に記録されている前記頭部伝達関数とは異なる前記パラメータの頭部伝達関数を生成することを特徴とする請求項１〜１２の何れか１項に記載の情報処理装置。
【請求項１５】
前記生成手段は、前記記憶手段に記録されている頭部伝達関数を用いて、前記記憶手段に記録されていない頭部伝達関数を生成することを特徴とする請求項１〜１２の何れか１項に記載の情報処理装置。
【請求項１６】
前記記憶手段には、複数の方向に対応する頭部伝達関数を有する頭部伝達関数のセットが複数記録されることを特徴とする請求項１〜１５の何れか１項に記載の情報処理装置。
【請求項１７】
頭部伝達関数が複数記録された記憶手段から頭部伝達関数を読み出して、前記頭部伝達関数の特徴を表すパラメータを抽出する抽出工程と、
抽出した前記パラメータに基づき、前記記憶手段に記録されている前記頭部伝達関数を用いて、前記記憶手段に記録されている頭部伝達関数とは異なる頭部伝達関数を生成する生成工程とを有することを特徴とする情報処理方法。
【請求項１８】
頭部伝達関数が複数記録された記憶手段から頭部伝達関数を読み出して、前記頭部伝達関数の特徴を表すパラメータを抽出するステップと、
抽出した前記パラメータに基づき、前記記憶手段に記録されている前記頭部伝達関数を用いて、前記記憶手段に記録されている頭部伝達関数とは異なる頭部伝達関数を生成するステップとをコンピュータに実行させるためのプログラム。
【請求項１９】
複数の方向に対応する頭部伝達関数を有する頭部伝達関数のセットを複数有するデータベースのデータ構造であって、
前記データベースが有する頭部伝達関数のセットは、当該頭部伝達関数のセットに含まれる頭部伝達関数の周波数に関するパラメータと関連付けられており、
前記周波数に関するパラメータを示す情報を取得した情報処理装置が、当該情報が示すパラメータに関連付けられた頭部伝達関数のセットを前記データベースから抽出する処理に用いられる、データベースのデータ構造。
【請求項２０】
頭部伝達関数の前記周波数に関するパラメータは、当該頭部伝達関数の第１ノッチに対応するＮ１周波数及び第２ノッチに対応するＮ２周波数であることを特徴とする請求項１９記載のデータベースのデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、頭部伝達関数（ＨＲＴＦ）に関わる処理を行うための技術に関する。
【背景技術】
【０００２】
頭部伝達関数（ＨＲＴＦ）は、個人によって異なることが知られている。頭部伝達関数の個人化の方法として、複数のＨＲＴＦセットを記録した頭部伝達関数データベース（頭部伝達関数ＤＢ）から、身体的特徴に基づいて個人にあったＨＲＴＦセットを選択する方法が知られている（特許文献１）。ここで、ＨＲＴＦセットとは複数方向の頭部伝達関数のセットであり、例えば１ユーザに対して計測された複数方向の頭部伝達関数のセットを示す。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１５７７４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
頭部伝達関数ＤＢからユーザに適した頭部伝達関数を選択する手法において、頭部伝達関数ＤＢが充実していれば、十分に定位感の良い頭部伝達関数を選択することが可能となる。しかしながら、頭部伝達関数の計測には無響室等の測定環境が必要であり、また計測に時間がかかることから、多様なユーザに適合可能な数多くの頭部伝達関数を有する頭部伝達関数ＤＢを生成することは容易ではなかった。本発明は、このような事情に鑑みてなされたものであり、ユーザに適合する頭部伝達関数を容易に取得できるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係る情報処理装置は、頭部伝達関数が複数記録された記憶手段から頭部伝達関数を読み出して、前記頭部伝達関数の特徴を表すパラメータを抽出する抽出手段と、抽出した前記パラメータに基づき、前記記憶手段に記録されている前記頭部伝達関数を用いて、前記記憶手段に記録されている頭部伝達関数とは異なる頭部伝達関数を生成する生成手段とを有することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、ユーザに適合する頭部伝達関数を容易に取得することが可能となる。
【図面の簡単な説明】
【０００７】
【図１】本実施形態における情報処理装置のハードウェア構成の例を示す図である。
【図２】第１の実施形態における情報処理装置の機能構成の例を示す図である。
【図３】第１の実施形態におけるデータのマッピングを説明する図である。
【図４】本実施形態におけるメッシュの抽出を説明する図である。
【図５】第１の実施形態における頭部伝達関数の合成を説明する図である。
【図６】第１の実施形態における頭部伝達関数の合成の例を示す図である。
【図７】第１の実施形態における情報処理装置による処理例を示すフローチャートである。
【図８】第２の実施形態における頭部伝達関数の合成を説明する図である。
【図９】第２の実施形態における頭部伝達関数の伸張の例を示す図である。
【図１０】第３の実施形態における音響制御装置の機能構成の例を示す図である。
【図１１】第３の実施形態におけるポイント指定部による表示例を示す図である。
【図１２】第３の実施形態における音響制御装置による処理例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施形態は本発明を限定するものではなく、また、以下の実施形態で説明されている特徴の組み合わせのすべてが本発明の実施に必須のものとは限らない。
【０００９】
（第１の実施形態）
本発明の第１の実施形態について説明する。図１は、本発明の一実施形態における情報処理装置１００のハードウェア構成の一例を示すブロック図である。情報処理装置１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、通信インターフェース（通信Ｉ／Ｆ）１０４、出力装置１０５、入力装置１０６、及び記憶装置１０７を有する。ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、通信Ｉ／Ｆ１０４、出力装置１０５、入力装置１０６、及び記憶装置１０７は、システムバス１０８を介して通信可能に接続される。
【００１０】
ＣＰＵ（Central Processing Unit）１０１は、システムバス１０８に接続された情報処理装置１００の各種デバイスの制御を行う。ＲＯＭ（Read Only Memory）１０２は、ＢＩＯＳ（Basic Input Output System）のプログラムやブートプログラムを記憶する。ＲＡＭ（Random Access Memory）１０３は、ＣＰＵ１０１の主記憶装置として使用される。通信Ｉ／Ｆ１０４は、情報処理装置１００をネットワークに接続し、ネットワークを介した情報通信を制御する。情報処理装置１００は、ネットワークに有線を介して接続されていてもよいし、無線を介して接続されていてもよいし、有線及び無線を介して接続されていてもよい。
【００１１】
出力装置１０５は、ＣＰＵ１０１における処理結果等を出力する。入力装置１０６は、ユーザによる入力等を受け付ける。入力装置１０６は、例えば、接触式センサ、マウス、キーボード、リモコン等である。記憶装置１０７は、オペレーティングシステム（ＯＳ）のプログラムやＯＳ上で動作する各種アプリケーションのプログラム等が格納される。記憶装置１０７は、例えば、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）等である。
【００１２】
前述のように構成された情報処理装置１００において、情報処理装置１００の電源がＯＮになると、ＣＰＵ１０１は、ＲＯＭ１０２に格納されたブートプログラムに従って、記憶装置１０７からＯＳのプログラム等をＲＡＭ１０３に読み込む。ＣＰＵ１０１は、ＲＡＭ１０３に読み込んだＯＳのプログラム等に従い処理を実行することによって、情報処理装置１００の機能を実現する。つまり、情報処理装置１００のＣＰＵ１０１がプログラムに基づき処理を実行することによって、後述する情報処理装置１００の機能構成及びフローチャートの処理が実現される。
【００１３】
図２は、第１の実施形態における情報処理装置の機能構成の一例を示すブロック図である。頭部伝達関数データベース（頭部伝達関数ＤＢ）２１０は、ＨＲＴＦセットが複数記録されたデータベースである。ＨＲＴＦセットは、複数方向の頭部伝達関数（ＨＲＴＦ）のセットであり、例えば１ユーザに対して計測された複数方向の頭部伝達関数のセットを示す。頭部伝達関数ＤＢ２１０は、ＤＢ拡張処理部２２０によるデータの読み書きが可能になっている。例えば、頭部伝達関数ＤＢ２１０に対して、ＤＢ拡張処理部２２０が、記録されている頭部伝達関数の読み出しや、生成した頭部伝達関数の書き込みを行う。例えば、頭部伝達関数ＤＢ２１０は、複数有するＨＲＴＦセットが、そのＨＲＴＦセットに含まれる頭部伝達関数の周波数に関するパラメータと関連付けられているデータ構造となっている。そして、例えばＤＢ拡張処理部２２０が、取得した周波数に関するパラメータに関連付けられたＨＲＴＦセットを頭部伝達関数ＤＢ２１０から抽出する。
【００１４】
ＤＢ拡張処理部２２０は、パラメータ抽出部２２１、マッピング部２２２、分布解析部２２３、及び頭部伝達関数生成部２２４を有する。パラメータ抽出部２２１は、頭部伝達関数ＤＢ２１０に保持されているすべてのＨＴＲＦセットの正面方向の頭部伝達関数を頭部伝達関数ＤＢ２１０から読み出し、頭部伝達関数の特徴量を表すパラメータを抽出する。抽出したパラメータは、マッピング部２２２へ出力される。本実施形態では、パラメータ抽出部２２１は、例えば代表的な特徴量であるスペクトラルキューと呼ばれる４ｋＨｚ以上で最も周波数が低い第１のノッチＮ１と２番目に周波数が低い第２のノッチＮ２との２つのノッチの周波数をパラメータとして抽出する。以下では、第１のノッチＮ１の周波数を「Ｎ１周波数」とも称し、第２のノッチＮ２の周波数を「Ｎ２周波数」とも称す。
【００１５】
マッピング部２２２は、パラメータ抽出部２２１から入力された複数の頭部伝達関数のパラメータを、離散化されたメッシュにマッピングする。例えば、図３に示すように、Ｎ１周波数とＮ２周波数を軸にとり、Ｎ１周波数とＮ２周波数とで規定される領域をメッシュ状に分割する。抽出したパラメータのＮ１周波数がＦＮ１であり、Ｎ２周波数がＦＮ２であるとすると、その頭部伝達関数のパラメータはメッシュＭ１にマッピングされる。すべてのパラメータをマッピングしたマップデータは、分布解析部２２３へ出力される。
【００１６】
ここで、石井要次、“スペクトラルキューに基づいた頭部伝達関数の個人化方法とその精度について”、日本音響学会講演論文集、２０１０．０３、pp.581-584、によれば、Ｎ１周波数とＮ２周波数との弁別閾は約０．１オクターブである。したがって、メッシュ状に領域分割する場合のステップ幅は、Ｎ１周波数とＮ２周波数との弁別限に基づいて、おおよそ０．１オクターブとし、大きくとも０．２オクターブ以下であることが好ましい。
【００１７】
分布解析部２２３は、入力されたマップデータからデータ拡張する、すなわち頭部伝達関数のセット（ＨＲＴＦセット）を生成するメッシュを抽出する。例えば、図４（ａ）に示すようにデータがマッピングされた場合、分布解析部２２３は、最小のＮ１周波数、最大のＮ１周波数、最小のＮ２周波数、及び最大のＮ２周波数を抽出して、これらの周波数の範囲内のメッシュのうちデータのないメッシュを抽出する。つまり、図４（ｂ）に示すように、領域ＭＳ１の範囲内のメッシュのうちデータのないメッシュが抽出される。ただし、（Ｎ１周波数）＜（Ｎ２周波数）であるので、領域ＭＳ２の範囲内のメッシュは抽出されない。抽出されたメッシュの情報は、頭部伝達関数生成部２２４へ出力される。
【００１８】
頭部伝達関数生成部２２４は、分布解析部２２３から入力されたメッシュの情報に基づいて、頭部伝達関数ＤＢ２１０から頭部伝達関数データを読み出して、データのないメッシュに対して頭部伝達関数データを合成する。頭部伝達関数生成部２２４は、パラメータ抽出部２２１で使用した正面方向の頭部伝達関数だけでなく、正面方向の頭部伝達関数に付随するその他の方向の頭部伝達関数をそれぞれの方向毎に合成してＨＲＴＦセットを生成してもよい。合成を行って生成したＨＲＴＦセットは、頭部伝達関数ＤＢ２１０へ記録される。
【００１９】
頭部伝達関数生成部２２４は、例えば、図５に示すメッシュＭ２の頭部伝達関数データを合成する場合、メッシュＭ２と同じＮ１周波数のメッシュＭ４の頭部伝達関数と、メッシュＭ２と同じＮ２周波数のメッシュＭ３の頭部伝達関数とを合成する。頭部伝達関数の合成の例を図６に示す。ここで、図６において、Ｐ１、Ｐ２、Ｐ３は、頭部伝達関数の特徴量であるピークを示す。
【００２０】
図６（ａ）はメッシュＭ４の頭部伝達関数を示し、図６（ｃ）はメッシュＭ３の頭部伝達関数を示し、図６（ｂ）は合成されたメッシュＭ２の頭部伝達関数を示す。つまり、メッシュＭ４の頭部伝達関数におけるピークＰ２の周波数以下のスペクトルと、メッシュＭ３の頭部伝達関数におけるピークＰ２の周波数以上のスペクトルとを用いて、メッシュＭ２の頭部伝達関数の合成スペクトルを生成する。ここで、メッシュＭ４の頭部伝達関数におけるピークＰ２の周波数と、メッシュＭ３の頭部伝達関数におけるピークＰ２の周波数とは異なる。そのため、データがない場合には、スプライン補間等を用いてその間のデータを補間し、逆にデータが重複する場合には、クロスフェード処理等により滑らかに合成する。これらの処理をＨＲＴＦセットとして含む頭部伝達関数に係る方向毎に行う。
【００２１】
図７は、第１の実施形態における情報処理装置による頭部伝達関数ＤＢの拡張処理の例を示すフローチャートである。頭部伝達関数ＤＢの拡張処理では、初めに、ステップＳ７０１にて、パラメータ抽出部２２１が、頭部伝達関数ＤＢ２１０に記録されている複数のＨＲＴＦセットから正面方向の頭部伝達関数を読み込む。続いて、ステップＳ７０２にて、パラメータ抽出部２２１は、読み込んだ正面方向の頭部伝達関数から特徴量であるパラメータを抽出して、マッピング部２２２へ出力する。本実施形態では、第１のノッチＮ１の周波数であるＮ１周波数、及び第２のノッチＮ２の周波数であるＮ２周波数を抽出する。
【００２２】
次に、ステップＳ７０３にて、パラメータ抽出部２２１は、特徴量であるパラメータの抽出が頭部伝達関数ＤＢ２１０に保存されているすべてのＨＲＴＦセットに対して完了したか否かを判定する。パラメータ抽出部２２１が、特徴量であるパラメータの抽出が完了していないＨＲＴＦセットがあると判定した場合にはステップＳ７０１へ戻り、すべてのＨＲＴＦセットに対して完了したと判定した場合にはステップＳ７０４へ進む。このようにして、頭部伝達関数ＤＢ２１０に保存された、すべてのＨＲＴＦセットに対して、ステップＳ７０１及びＳ７０２の処理が行われる。
【００２３】
ステップＳ７０４にて、マッピング部１２２は、ステップＳ７０２においてパラメータ抽出部２２１により抽出され入力されたパラメータのマッピングを行う。入力されたすべてのパラメータをマッピングしたマップデータは、分布解析部２２３へ出力される。続いて、ステップＳ７０５にて、分布解析部２２３は、ステップＳ７０４においてパラメータのマッピングがされなかったメッシュ、すなわち頭部伝達関数データがないメッシュの抽出を行う。抽出されたメッシュの情報は、頭部伝達関数生成部２２４へ出力される。
【００２４】
次に、ステップＳ７０６にて、頭部伝達関数生成部２２４は、入力されたメッシュの情報に基づいて、頭部伝達関数データがないメッシュについて、頭部伝達関数データの合成を行いＨＲＴＦセットを生成する。頭部伝達関数生成部２２４は、入力されたメッシュの情報と頭部伝達関数ＤＢ２１０から取得したＨＲＴＦセットとを用いて、頭部伝達関数を合成する。
【００２５】
続いて、ステップＳ７０７にて、頭部伝達関数生成部２２４は、頭部伝達関数の合成がＨＲＴＦセットとして含むすべての方向に対して完了したか否かを判定する。頭部伝達関数生成部２２４が、頭部伝達関数の合成が完了していない方向があると判定した場合にはステップＳ７０６へ戻って、未完了の方向について頭部伝達関数の合成を行う。
【００２６】
一方、頭部伝達関数生成部２２４が、すべての方向に対して頭部伝達関数の合成が完了したと判定した場合にはステップＳ７０８へ進む。このようにして、ＨＲＴＦセットとして含むすべての方向について頭部伝達関数の合成が完了するまで、ステップＳ７０６の処理が繰り返される。そして、最後に、ステップＳ７０８にて、頭部伝達関数生成部２２４は、生成したＨＲＴＦセットを頭部伝達関数ＤＢ２１０に書き込み、頭部伝達関数ＤＢの拡張処理を終了する。なお、ステップＳ７０６以降の処理は、ステップＳ７０５において抽出されたメッシュのそれぞれに対して実行される。なお、頭部伝達関数の合成による補間は、ＨＲＴＦセットに含まれる複数の方向のすべてについて行われなくてもよく、少なくとも何れかの方向について行われればよい。また、補間対象となるメッシュとしては、頭部伝達関数が未取得であるメッシュのうちの少なくとも何れかが抽出されればよい。
【００２７】
なお、本実施形態において、パラメータ抽出部２２１は、頭部伝達関数における第１のノッチＮ１及び第２のノッチＮ２の周波数をパラメータとして抽出しているが、それ以外のパラメータを抽出するようにしてもよい。例えば、頭部伝達関数における他のノッチＮ３、Ｎ４の周波数やピークＰ１、Ｐ２、Ｐ３の周波数等を抽出してもよい。また、パラメータ抽出部２２１は、ＨＲＴＦセットから正面方向の頭部伝達関数を読み出してパラメータを抽出しているが、その他の少なくとも１つの方向の頭部伝達関数を読み出してパラメータを抽出するようにしてもよい。例えば、複数の方向の頭部伝達関数のそれぞれからパラメータを抽出し、マッピング部２２２へ出力するようにしてもよい。
【００２８】
また、本実施形態においては、メッシュ状に領域を分割した離散化されたメッシュにマッピング部２２２が頭部伝達関数のパラメータをマッピングする例を示したが、これに限定されるものではない。例えば、メッシュ状に分割せずにＮ１周波数−Ｎ２周波数を軸とする平面に、マッピング部２２２が頭部伝達関数のパラメータをマッピングするようにしてもよい。
【００２９】
また、前述した説明では、頭部伝達関数生成部２２４は、メッシュＭ４の頭部伝達関数とメッシュＭ３の頭部伝達関数とを用いてメッシュＭ２の頭部伝達関数を合成する例を示したが、合成に用いる頭部伝達関数は適宜選択することが可能である。例えば、頭部伝達関数生成部２２４が、メッシュＭ３の頭部伝達関数の代わりにメッシュＭ５の頭部伝達関数を用いて、メッシュＭ４の頭部伝達関数とメッシュＭ５の頭部伝達関数とからメッシュＭ２の頭部伝達関数を合成するようにしてもよい。また、メッシュＭ３の頭部伝達関数を用いた場合の頭部伝達関数と、メッシュＭ５の頭部伝達関数を用いた場合の頭部伝達関数との両方を生成することでデータのバリエーションをさらに増やすことができる。
【００３０】
また、同一メッシュ内に複数の頭部伝達関数がマッピングされた場合には、頭部伝達関数生成部２２４が、複数の頭部伝達関数のうちの１つをそのメッシュにおける代表頭部伝達関数として頭部伝達関数の合成に使用するようにしてもよい。そうすることによって、より簡易にさまざまなＮ１周波数、Ｎ２周波数の分布を持った頭部伝達関数（ＨＲＴＦセット）を生成することが可能となる。
【００３１】
また、頭部伝達関数の合成の例として、２つの頭部伝達関数をピークＰ２の周波数を境に合成する方法を示したが、２つの頭部伝達関数の第１のノッチＮ１の構造と第２のノッチＮ２の構造とを維持した状態で合成できればよく、別の合成方法を用いてもよい。例えば、Ｎ１周波数とＮ２周波数との中間の任意の周波数ｆｎにおいて、２つの頭部伝達関数のゲイン（周波数振幅値｜ｈｒｔｆ１（ｆｎ）｜と｜ｈｒｔｆ２（ｆｎ）｜）が等しくなるようにする。つまり、それぞれの頭部伝達関数のゲインを調整した後に、周波数ｆｎで２つの頭部伝達関数を接合するようにして、頭部伝達関数の合成を行うようにしてもよい。
【００３２】
なお、本実施形態では、頭部伝達関数の位相情報について触れなかったが、頭部伝達関数の合成を行う場合に振幅特性のみを合成し、最小位相化処理を行ってもよい。また、遅延情報は、両耳間の時間差等を考慮して別途付加するようにしてもよい。
【００３３】
第１の実施形態によれば、頭部伝達関数ＤＢ２１０に既に記録されている頭部伝達関数を合成することにより、データがないパラメータでのＨＲＴＦセットを生成して、頭部伝達関数ＤＢ２１０に記録する。これにより、頭部伝達関数ＤＢ２１０に記録されていないＨＲＴＦセットを、頭部伝達関数ＤＢ２１０に既に記録されているＨＲＴＦセットを用いたデータ補間により生成でき、頭部伝達関数ＤＢ２１０を容易に拡張することができる。
【００３４】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。前述した第１の実施形態では、図４（ｂ）に示した領域ＭＳ１の範囲内、すなわち頭部伝達関数のパラメータがマッピングされているＮ１周波数及びＮ２周波数の範囲内で、頭部伝達関数ＤＢ２１０を拡張する方法を説明した。以下に説明する第２の実施形態では、領域ＭＳ１の外側である図４（ｃ）に示す領域ＭＳ３の範囲で頭部伝達関数ＤＢ２１０を拡張する例について説明する。なお、第２の実施形態における情報処理装置のハードウェア構成、機能構成、及び頭部伝達関数ＤＢの拡張処理の全体的な流れは、第１の実施形態と同様であるので、それらの説明は省略する。
【００３５】
第２の実施形態における情報処理装置の頭部伝達関数生成部２２４での処理は、第１の実施形態における頭部伝達関数生成部２２４での処理と異なるので、以下では第２の実施形態における頭部伝達関数生成部２２４を中心に説明する。第１の実施形態における頭部伝達関数生成部２２４が頭部伝達関数を合成するのに対し、第２の実施形態における頭部伝達関数生成部２２４は、記録されている頭部伝達関数を伸張することにより頭部伝達関数を生成する。
【００３６】
第２の実施形態における頭部伝達関数生成部２２４は、分布解析部２２３から入力されたメッシュの情報に基づいて、頭部伝達関数ＤＢ２１０から頭部伝達関数データを読み出して、領域ＭＳ３の任意のメッシュに対して頭部伝達関数データを伸張する。頭部伝達関数生成部２２４は、ＨＲＴＦセットに含むすべての方向の頭部伝達関数をそれぞれの方向毎に伸張してＨＲＴＦセットを生成する。伸張を行って生成したＨＲＴＦセットは、頭部伝達関数ＤＢ２１０へ記録される。
【００３７】
頭部伝達関数生成部２２４は、例えば、図８に示すメッシュＭ６の頭部伝達関数データを生成する場合、メッシュＭ６と同じＮ２周波数のメッシュＭ４の頭部伝達関数を伸張する。伸張は、例えば元の頭部伝達関数のノッチ周波数を伸張したい周波数にシフトする。例えば、生成したいＮ１周波数をＮ１’とすると、図９に示すように、頭部伝達関数におけるＮ１周波数がＮ１’となるようにシフトする。図９において、９０１は伸張前の頭部伝達関数（Ｎ１周波数＝Ｎ１）であり、９０２は伸張後の頭部伝達関数（Ｎ１周波数＝Ｎ１’）である。
【００３８】
ここで、頭部伝達関数におけるピークやノッチ毎に周波数をシフトするため、ピークとノッチとの間の間隔が、元の間隔（伸張前の間隔）とは異なる間隔に変化する。つまり、図９に示した例では、ピークＰ１とノッチＮ１との間は縮小され、ノッチＮ１とピークＰ２との間は伸張される。そこで、頭部伝達関数生成部２２４は、ピークやノッチの間のデータを内挿あるいは間引き等のリサンプリング処理を行う。例えば、ピークＰ１、Ｐ２が固定された状態でノッチＮ１の周波数が小さくなるとする。この場合、頭部伝達関数生成部２２４は、ピークＰ１とノッチＮ１との間の周波数をリサンプリングによって縮小し、ノッチＮ１とピークＰ２との間の周波数をリサンプリングによって伸張する。リサンプリングは、例えばスプライン補間等によって離散化されたデータ間を補間し必要な間隔のデータを取得する。さらに、伸縮した頭部伝達関数の位相は最小位相化処理を行う。これらの処理をＨＲＴＦセットとして含む頭部伝達関数に係る方向毎に行う。例えば、正面方向の頭部伝達関数におけるＮ１周波数をシフトした量が０．１オクターブであるとすると、その他の方向の頭部伝達関数についてもＮ１周波数を０．１オクターブシフトする。
【００３９】
なお、本実施形態において、分布解析部２２３は第１の実施形態と同様としているが、例えば１つのメッシュに複数の頭部伝達関数がある場合、同一メッシュ内に含まれる頭部伝達関数の特徴量の分布を算出するようになっていてもよい。例えば、頭部伝達関数の特徴量の重要なパラメータの１つとして、ノッチＮ１、Ｎ２やピークＰ１、Ｐ２等のゲイン（ノッチの深さやピークの高さ）があげられる。そこで、ゲインパラメータの最大値、最小値、平均値、標準偏差等を算出するパラメータ解析部を備えるようにしてもよい。そして、算出結果を頭部伝達関数生成部２２４へ出力するようにしてもよい。頭部伝達関数生成部２２４では、伸張によって生成した頭部伝達関数に対して、さらに入力されたゲインパラメータに基づいて、ノッチＮ１、Ｎ２やピークＰ１、Ｐ２のゲインを制御した複数種類の頭部伝達関数を生成するようにしてもよい。また、ゲインに限らず、ノッチＮ１やピークＰ１等の半値幅等を抽出し頭部伝達関数生成部２２４に出力するようにしてもよい。また、同一メッシュ内に複数の頭部伝達関数がない場合、頭部伝達関数ＤＢ２１０に含まれる頭部伝達関数からノッチＮ１、Ｎ２やピークＰ１、Ｐ２等のゲインを抽出するようにしてもよい。
【００４０】
第２の実施形態によれば、頭部伝達関数ＤＢ２１０に既に記録されている頭部伝達関数を伸張することにより、データがないパラメータでのＨＲＴＦセットを生成して、頭部伝達関数ＤＢ２１０に記録する。これにより、頭部伝達関数ＤＢ２１０に記録されていないＨＲＴＦセットを、頭部伝達関数ＤＢ２１０に既に記録されているＨＲＴＦセットを用いたデータ補間により生成でき、頭部伝達関数ＤＢ２１０を容易に拡張することができる。
【００４１】
なお、前述した第１の実施形態及び第２の実施形態は、それぞれの実施形態を単独で適用する場合に限らず、第１の実施形態及び第２の実施形態を組み合わせて適用することも可能である。
【００４２】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。図１０は、第３の実施形態における情報処理装置を適用した音響制御装置１０００の構成例を示すブロック図である。音響制御装置１０００は、例えばスマートフォン、モバイル音楽プレイヤー等のモバイルデバイスやヘッドホンアンプ等である。音響制御装置１０００は、ユーザ用の頭部伝達関数（ＨＲＴＦセット）を生成する生成処理部１０１０及び立体音響処理部１０２０を有する。
【００４３】
生成処理部１０１０は、頭部伝達関数ＤＢ１０１１、ポイント指定部１０１２、及び頭部伝達関数生成部１０１３を有する。また、立体音響処理部１０２０は、音響信号入力部１０２１、音源方向指定部１０２２、ＨＲＴＦ畳込み部１０２３、及び音響信号出力部１０２４を有する。
【００４４】
頭部伝達関数ＤＢ１０１１は、複数のＨＲＴＦセットが記録されたデータベースである。本実施形態における頭部伝達関数ＤＢ１０１１には、頭部伝達関数の生成を行うための少数のＨＲＴＦセットとそれらＨＲＴＦセットのパラメータをマッピングしたデータが記録されている。なお、頭部伝達関数ＤＢ１０１１に記録されるＨＲＴＦセットを少数としたのは、モバイルデバイス等において不要な記憶容量の使用を極力抑えるためであり、記憶容量に余裕がある場合などには適当な量のＨＲＴＦセットを記録するようにしてもよい。頭部伝達関数ＤＢ１０１１に記録されるデータは、データマップ上で分散したデータであることが望ましい。なお、図３に示したマッピングデータのように、頭部伝達関数ＤＢ１０１１が有する各ＨＲＴＦセットは、そのＨＲＴＦセットに含まれる頭部伝達関数（例えば正面方向の頭部伝達関数）のＮ１周波数およびＮ２周波数と関連付けられて記録されている。頭部伝達関数のＮ１周波数及びＮ２周波数がユーザに適合していれば、その頭部伝達関数はそのユーザに適合するものである可能性が高い。したがって、上記のような記録形式をとることで、ユーザに適合するＨＲＴＦセットを頭部伝達関数ＤＢ１０１１から容易に抽出することが可能となる。ただし、頭部伝達関数ＤＢ１０１１におけるＨＲＴＦセットの記録形式はこれに限定されず、ピーク周波数などの他の特徴量と関連付けられていてもよいし、複数のＨＲＴＦセットが単純にリスト形式で記録されていてもよい。
【００４５】
ポイント指定部１０１２は、頭部伝達関数ＤＢ１０１１に記録されたパラメータをマッピングしたデータを読み出してユーザに対して情報を提供し、ユーザが必要なデータのポイントを指定するための機能部である。ポイント指定部１０１２は、例えばタッチパネルのようなインターフェースで、表示部にマップを表示し、ユーザにタッチ操作等でポイントを入力させる。例えば、図１１に示すように、表示部にはマップ１１０１及び頭部伝達関数のマッピングされたデータ１１０２を表示し、ユーザがタッチパネルをタッチ操作する等して頭部伝達関数を生成するポイントを指定する。頭部伝達関数がＮ１周波数及びＮ２周波数に応じてマッピングされている場合、ポイント指定部１０１２は、ユーザの操作に基づいてＮ１周波数とＮ２周波数を示す情報を取得することとなる。
【００４６】
頭部伝達関数生成部１０１３は、頭部伝達関数ＤＢ１０１１に記録されているＨＲＴＦセットを用いて、ポイント指定部１０１２によって指定されたポイントのＨＲＴＦセットを生成する。頭部伝達関数生成部１０１３は、前述した実施形態における頭部伝達関数生成部２２４と同様にしてＨＲＴＦセットを生成する。生成されたＨＲＴＦセットは、ユーザ用の頭部伝達関数として、立体音響処理部１０２０のＨＲＴＦ畳込み部１０２３へ出力される。なお、すでにＨＲＴＦセットが記録済みであるポイントがポイント指定部１０１２によって指定されたとする。この場合には、ＨＲＴＦ生成部１０１３は、そのポイントが示すパラメータ（例えばＮ１周波数及びＮ２周波数）に関連付けられたＨＲＴＦセットを頭部伝達関数ＤＢ１０１１から抽出してＨＲＴＦ畳込み部１０２３へ出力してもよい。
【００４７】
音響信号入力部１０２１は、例えば音楽信号や映画コンテンツの音響信号が入力される。入力された音響信号は、ＨＲＴＦ畳込み部１０２３へ出力される。また、音源方向指定部１０２２は、音響信号入力部１０２１に入力された音響信号を定位させる方向が指定される。方向は音響信号に付随の方向データを使用する。指定された音源方向は、ＨＲＴＦ畳込み部１０２３へ出力される。
【００４８】
ＨＲＴＦ畳込み部１０２３は、音響信号入力部１０２１から入力された音響信号に対して、音源方向指定部１０２２で指定された音源方向に対応する頭部伝達関数を用いた畳込み処理を行う。ここで使用される頭部伝達関数は、生成処理部１０１０の頭部伝達関数生成部１０１３で生成されたユーザ用の頭部伝達関数とする。畳込み処理により立体音響化された音響信号は、音響信号出力部１０２４へ出力される。音響信号出力部１０２４は、ヘッドホンあるいはイヤホンジャックを備え、ＨＲＴＦ畳込み部１０２３から入力される立体音響化された音響信号を出力する。
【００４９】
図１２は、第３の実施形態における音響制御装置による処理例を示すフローチャートである。図１２（ａ）には、ユーザ用の頭部伝達関数を生成する頭部伝達関数生成処理を示し、図１２（ｂ）には、立体音響化して音響信号を出力する立体音響処理を示している。
【００５０】
図１２（ａ）に示した頭部伝達関数生成処理について説明する。頭部伝達関数生成処理では、初めに、ステップＳ１２０１にて、生成処理部１０１０のポイント指定部１０１２が、マップをユーザに対して表示し、ユーザによるマップ上のポイントの指定を受け付ける。ユーザにより指定されたポイントの情報は、頭部伝達関数生成部１０１３へ出力される。
【００５１】
続いて、ステップＳ１２０２にて、頭部伝達関数生成部１０１３は、頭部伝達関数ＤＢ１０１１に記録されているＨＲＴＦセットを用いて、ポイント指定部１０１２によって指定されたポイントのＨＲＴＦセットを生成する。生成されたＨＲＴＦセットは、立体音響処理部１０２０のＨＲＴＦ畳込み部１０２３へ出力される。そして、頭部伝達関数生成処理を終了する。
【００５２】
次に、図１２（ｂ）に示した立体音響処理について説明する。立体音響処理が開始されると、初めに、ステップＳ１２１１にて、音響信号入力部１０２１において音響信号が入力される。入力された音響データは、ＨＲＴＦ畳込み部１０２３へ出力される。また、ステップＳ１２１２にて、音源方向指定部１０２２において音響信号を定位させる方向が指定される。指定された方向は、ＨＲＴＦ畳込み部１０２３へ出力される。なお、このステップＳ１２１１及びＳ１２１２の処理は、順不同であり、ステップＳ１２１２の処理の後にステップＳ１２１１の処理を行ってもよいし、ステップＳ１２１１及びＳ１２１２の処理を並列して行ってもよい。
【００５３】
次に、ステップＳ１２１３にて、ＨＲＴＦ畳込み部１０２３は、音響信号入力部１０２１から入力された音響信号に対して頭部伝達関数を用いた畳込み処理を行う。このステップＳ１２１３の処理では、音源方向指定部１０２２で指定された方向から音響信号が聴こえるように、生成処理部１０１０の頭部伝達関数生成部１０１３から入力されたユーザ用のＨＲＴＦセットから頭部伝達関数を選んで畳込みが行われる。畳込み処理が行われた音響信号は、音響信号出力部１０２４へ出力される。続いて、ステップＳ１２１４にて、音響信号出力部１０２４において音響信号が出力される。入力された音響信号の出力が終わると、立体音響処理を終了する。
【００５４】
第３の実施形態によれば、頭部伝達関数ＤＢ１０１１に記録されている頭部伝達関数を用いてユーザ用のＨＲＴＦセットを生成し、生成したＨＲＴＦセットを使用して立体音響化した音響信号を出力する。このように不要な記憶容量の使用を極力抑えたい等の理由で、少数のＨＲＴＦセットが記録された頭部伝達関数ＤＢ１０１１を用いて立体音響処理を行うような場合においても、ユーザに必要なＨＲＴＦセットを生成することができる。
【００５５】
本実施形態においてポイント指定部１０１２は、ユーザにマップ上のポイントを指定させるようにしているが、この場合には、ユーザが予め自分の頭部伝達関数の特徴量であるパラメータを知っている必要がある。ユーザがパラメータを知らない場合、ユーザによるマップ上のポイントの指定が難しい。そこで、例えば、耳介や頭部形状等の別の情報を入力し、その情報を基にポイントを計算することでポイントの指定が行われるようにしてもよい。例えば、耳介寸法や形状をスマートフォンに付属のカメラ等で撮影することで取得し、そのパラメータからユーザにマッチしたポイントを指定できるようになっていてもよい。耳介寸法や形状の取得は、精度を高めようとすると処理が重くなることがあるので、高速で処理を行うためにクラウド等で処理されてもよい。
【００５６】
本実施形態において音源方向指定部１０２２は、音響データに付随の方向データを使用するものとしたが、音響データに方向が付随されない場合にはファイルフォーマットに応じて方向を指定するようになっていてもよい。例えば、ステレオやサラウンドの場合、再生スピーカの配置は規格で決まっているので、その配置に応じて方向を指定する。また、ユーザが自分の好みに応じて方向を指定するようにしてもよく、それを実現するための音源方向の指定ユーザインターフェース（ＵＩ）を備えていてもよい。
【００５７】
本実施形態においてＨＲＴＦ畳込み部１０２３は、頭部伝達関数を用いた畳込み処理のみを行っているが、当然、音源の距離が変化する場合等は距離減衰処理等を行ってもよい。
【００５８】
（本発明の他の実施形態）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５９】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００６０】
１００：情報処理装置  １０１：ＣＰＵ  １０２：ＲＯＭ  １０３：ＲＡＭ  １０４：通信インターフェース  １０５：出力装置  １０６：入力装置  １０７：記憶装置  ２１０、１０１１：頭部伝達関数データベース  ２２０：ＤＢ拡張処理部  ２２１：パラメータ抽出部  ２２２：マッピング部  ２２３：分布解析部  ２２４、１０１３：頭部伝達関数生成部  １０００：音響制御装置  １０１０：生成処理部  １０１２：ポイント指定部  １０２０：立体音響処理部  １０２１：音響信号入力部  １０２２：音源方向指定部  １０２３：ＨＲＴＦ畳込み部  １０２４：音響信号出力部
【図１】
2020014145.tif 000003
【図２】
2020014145.tif 000004
【図３】
2020014145.tif 000005
【図４】
2020014145.tif 000006
【図５】
2020014145.tif 000007
【図６】
2020014145.tif 000008
【図７】
2020014145.tif 000009
【図８】
2020014145.tif 000010
【図９】
2020014145.tif 000011
【図１０】
2020014145.tif 000012
【図１１】
2020014145.tif 000013
【図１２】
2020014145.tif 000014