barumerli2024_itdlateral
FrAMBI agent performing ITD-based lateralization
Usage:
[agent, options] = barumerli2024_itdlateral();
[agent, options] = barumerli2024_itdlateral(options);
Output parameters:
agent |
Structure representing the FrAMBI agent. See the general description of
FrAMBI for more details. In addition, the following agent-specific
fields are created:
- name: String describing the agent. Default: 'ITD-based Lateralization'.
- model: Structure defining the functionality of agent by
storing functions handles in fields initialize, observe,
infer, act, and respond.
- state.beliefs: Prior beliefs on the sound-source lateral
direction. If set to a number (in degrees), the inference
will be the average between the belief and the posterior.
Default: Empty vector, meaning no prior.
- state.parameters: Parameter structure as in frambi_parameters with:
- lateral_gain: The lateral gain (i.e., the slope of the response-target
function). Default: 1, meaning a perfect lateralization
without any under- or over shooting.
- itd_uncertainty: The ITD uncertainty (i.e., the ITD standard deviation
in the processing, in s). Default: 20 \(\mu s\).
|
options |
Structure representing the FrAMBI options with the following
agent-specific fields:
- agent.angles: Sound-source angles (in degrees) used for
the interpolation to infer the lateralization based on ITDs.
Set to linearly spaced 15 angles from -90 to +90 degrees.
- agent.itds: ITDs (in s) calculated according to
Woodworth (1954) based on agent.angles for a head radius
of 7 cm and sound speed of 340 m/s.
|
Description:
barumerli2024_itdlateral(..) returns a structure describing an agent
performing ITD-based lateralization. It also creates FrAMBI options
(or updates them, if provided as input).
This agent follows the structure required by frambi_simulate.
Specifically, barumerli2024_itdlateral(..) defines the following
functionality linked with local functions:
- model.initialize is linked with local_initialize, which sets the
head direction to 0 degrees (i.e., front).
The head direction is not considered, but it makes sense to have the head
looking to the front when localizing a sound source.
- model.observe is linked with local_observe, which calculates the
ITD in the observed binaural signal
from the environment. The observed ITD is subject to the lateral_gain
and the itd_uncertainty.
- model.infer is linked with local_infer, which infers the source
lateral angle based on
the observed ITD. The posterior is based on the precomputed ITD-angle
relation stored in options.agent.angles and options.agent.itd.
If belief is set to an angle, the inference is calculated as the average
between the belief (i.e., the prior) and the posterior. Otherwise
the inference is just the posterior.
- model.act is linked with local_act, in which it acts by setting:
- head to state.head, which, unless modified will be looking at front.
- hand to state.belief, which is the infered sourceangle.
- model.respond is linked with local_respond, which responses with
the action of the hand, which is
the infered lateral angle of the sound source (in degrees).
References:
R. Barumerli and P. Majdak.
FrAMBI: A Software Framework for Auditory Modeling Based on Bayesian
Inference.
under review at Neuroinformatics, 2024.
R. S. Woodworth and H. Schlosberg.
Experimental psychology, Rev. ed.
Holt, Oxford, England, 1954.