#include <DirectionJudgeImpl.hpp>
Public メソッド | |
JudgeEpipolar (NSDimensionPromise::Length sourceDistance, NSDimensionPromise::Length headRadius) | |
virtual DirectionProbabilityVectorPtr | Judge (const std::pair< BandHarmonicVectorPtr, BandHarmonicVectorPtr > ÷dBands, IPD::ptr_t ipd, IID::ptr_t iid, MethodFlag::Kind mflag, bool sortByProbability) |
方向を推定する. | |
Private メソッド | |
std::vector< Probability > | CalcProbabilityFromIPD (const BandHarmonicVectorPtr ipdh, IPD::ptr_t ipd) |
std::vector< Probability > | CalcProbabilityFromIID (const BandHarmonicVectorPtr iidh, IID::ptr_t iid) |
Private 変数 | |
NSDimensionPromise::Length | sourceDistance |
NSDimensionPromise::Length | headRadius |
std::vector < NSDimensionPromise::Length > | lrLengthDifference |
信号源から両耳までの距離差モデルの配列. |
NSHarkBinaural::JudgeEpipolar::JudgeEpipolar | ( | NSDimensionPromise::Length | sourceDistance, | |
NSDimensionPromise::Length | headRadius | |||
) |
std::vector< Probability > NSHarkBinaural::JudgeEpipolar::CalcProbabilityFromIID | ( | const BandHarmonicVectorPtr | iidh, | |
IID::ptr_t | iid | |||
) | [private] |
std::vector< Probability > NSHarkBinaural::JudgeEpipolar::CalcProbabilityFromIPD | ( | const BandHarmonicVectorPtr | ipdh, | |
IPD::ptr_t | ipd | |||
) | [private] |
JudgeEpipolar::DirectionProbabilityVectorPtr NSHarkBinaural::JudgeEpipolar::Judge | ( | const std::pair< BandHarmonicVectorPtr, BandHarmonicVectorPtr > & | dividedBands, | |
IPD::ptr_t | ipd, | |||
IID::ptr_t | iid, | |||
MethodFlag::Kind | mflag, | |||
bool | sortByProbability | |||
) | [virtual] |
方向を推定する.
NSHarkBinaural::DirectionJudgeを実装しています。
std::vector<NSDimensionPromise::Length> NSHarkBinaural::JudgeEpipolar::lrLengthDifference [private] |
信号源から両耳までの距離差モデルの配列.
各角度に対する、理論上の距離差。 最初の要素が左耳(+90度)、最後の要素が右耳(-90度)、中間の要素が正面(0度)に対応する。 すなわち、i * TICKDEGREE度の情報は lrLengthDifference[180 / TICKDEGREE / 2 - i]に格納される。