diff --git a/README.md b/README.md new file mode 100644 index 0000000..5f218d3 --- /dev/null +++ b/README.md @@ -0,0 +1,56 @@ +This code implements the models from: + +Goodman DFM, Brette R, 2010 Spike-Timing-Based Computation in Sound Localization. *PLoS Comput Biol* 6(11): e1000993. +doi:10.1371/journal.pcbi.1000993 + +Code is not provided to generate all the data and the figures, but the three basic models (approximate/ideal/allpairs) are shown. + +## Installation + +You will need to download and extract the IRCAM LISTEN database: + +http://recherche.ircam.fr/equipes/salles/listen/ + +The files should be extracted to a folder something like: + +``` +F:\HRTF\IRCAM\IRC_1002 +etc. +``` + +You will need to change the file `shared.py` to give the location of this database (see below). + +In addition, you will need a copy of Python 2.5, 2.6 or 2.7 and the packages numpy, scipy, matplotlib. You will also need the Brian neural network simulator package, version 1.3 or above: + +http://www.briansimulator.org/ + +## Guide to files + +### approximate_filtering_model.py +### ideal_filtering_model.py + +The approximate and ideal filtering models. + +### all_pairs_model.py + +The learning model. The implementation of the model is included, but not code for generating the learned ITD/ILD pairs: this code is mostly just technical file management stuff, so it is not included for simplicity. + +### hrtf_analysis.py + +Generate best gain/delay pairs for the approximate filtering model, and find the normalisation factors for the ideal filtering model. Results are saved so only need to be generated once. + +### models.py + +The neural models used. Changing these equations and parameters can be used to easily switch to different models. Only the leaky integrate-and-fire model is given. + +### plot_count.py + +A function for plotting the outputs of the approximate/ideal filtering model, specialised for the IRCAM LISTEN database. + +### shared.py + +Various imports and variables that are shared across all of the models. You should change the `ircam_locations` variable in the `get_ircam()` function to reflect the location where you have saved the IRCAM data. + +--- + +2025-06-02: Converted README to Markdown. \ No newline at end of file diff --git a/readme.txt b/readme.txt deleted file mode 100644 index 9c6fa21..0000000 --- a/readme.txt +++ /dev/null @@ -1,66 +0,0 @@ -This code implements the models from: - - Goodman DFM, Brette R, 2010 Spike-Timing-Based Computation in Sound - Localization. PLoS Comput Biol 6(11): e1000993. - doi:10.1371/journal.pcbi.1000993 - -Code is not provided to generate all the data and the figures, but the three -basic models (approximate/ideal/allpairs) are shown. - -Installation ------------- - -You will need to download and extract the IRCAM LISTEN database: - - http://recherche.ircam.fr/equipes/salles/listen/ - -The files should be extracted to a folder something like: - - F:\HRTF\IRCAM\IRC_1002 - etc. - -You will need to change the file shared.py to give the location of this database -(see below). - -In addition, you will need a copy of Python 2.5, 2.6 or 2.7 and the packages -numpy, scipy, matplotlib. You will also need the Brian neural network simulator -package, version 1.3 or above: - - http://www.briansimulator.org/ - -Guide to files --------------- - -approximate_filtering_model.py -ideal_filtering_model.py - - The approximate and ideal filtering models. - -all_pairs_model.py - - The learning model. The implementation of the model is included, but not - code for generating the learned ITD/ILD pairs: this code is mostly just - technical file management stuff, so it is not included for simplicity. - -hrtf_analysis.py - - Generate best gain/delay pairs for the approximate filtering model, and - find the normalisation factors for the ideal filtering model. Results are - saved so only need to be generated once. - -models.py - - The neural models used. Changing these equations and parameters can be used - to easily switch to different models. Only the leaky integrate-and-fire - model is given. - -plot_count.py - - A function for plotting the outputs of the approximate/ideal filtering - model, specialised for the IRCAM LISTEN database. - -shared.py - - Various imports and variables that are shared across all of the models. - You should change the ircam_locations variable in the get_ircam() function - to reflect the location where you have saved the IRCAM data.