Problem
I wish to localize sound using a microphone array.
Solution
HARK provides not only sound source localization, but also tracking, visualization, saving, and loading localized results. This recipe introduces other recipes in this chapter. If this is the first time you are performing localization, read Learning sound localization and build a localization system. Then, debug the system using the recipe: Checking if the sound source localization works successfully. For any problems, see recipes such as Too many localization results / no localization results or The localization result is fragmented / Isolated sounds are connected. For problems connecting localization with separation, see Ignoring the beginning of separated sound. To analyze localization results, save them to files using the recipe Saving the localization results to a file
To improve the localization performance, tune the parameters using the recipe Tuning the parameters of sound source localization If your situation includes multiple sound sources, tune the parameters using the recipe Localizing multiple sounds. If you want to localize not only the azimuth but the elevation, see the recipe Localizing the height or the distance of the source. If you want to use part of a microphone array, use the recipe Use the part of microphone array.
Discussion
There are seven primary nodes for localization:
Main node. This outputs localization results from input signals.
Debugging node. This generates constant localization results.
This tracks the localization results and gives the same ID to the same source.
Visualization node.
This node saves and loads the localization results to a file.
This node extends the localization results for sound separation.
See also
See the HARK document for the usage of each node. See LocalizeMUSIC in the HARK document for a theoretical description of localization.