pyNAVIS Logo
stable

Contents:

  • Home
  • Installing
    • Requirements
    • User installation
    • Developer installation
  • General information
    • Glossary
    • NAVIS and pyNAVIS
    • Dataset generators
  • Getting started
    • Examples
      • Load files and plot their information
        • 1. Load AEDAT and CSV files
        • 2. Adapt and check SpikesFiles
        • 3. Plot information
      • Convert from mono to stereo files and vice versa
        • From mono to stereo
        • From stereo to mono
      • Generate new files with spiking information
        • 1. Random addresses
        • 2. Shift
        • 3. Sweep
      • Manually split spiking information
        • 1. Extract a portion of the file
        • 2. Extract a set of addresses from the file
      • Phaselock
      • Generate image datasets from spiking information
  • pyNAVIS package
    • pyNAVIS.dataset_gen
      • DatasetGenerators
    • pyNAVIS.functions
      • Functions
    • pyNAVIS.generators
      • Generators
    • pyNAVIS.loaders
      • SpikesFile
      • Loaders
    • pyNAVIS.main_settings
      • MainSettings
    • pyNAVIS.plots
      • Plots
    • pyNAVIS.savers
      • Savers
    • pyNAVIS.splitters
      • Splitters
    • pyNAVIS.utils
      • Utils
  • Contributing
pyNAVIS
  • Docs »
  • General information »
  • NAVIS and pyNAVIS
  • Edit on GitHub

NAVIS and pyNAVIS¶

pyNAVIS stands for python-based Neuromorphic Auditory Visualizer (NAVIS). NAVIS is a GUI-based software tool for neuromorphic researchers to analyze spiking information obtained from a neuromorphic cochlea.

NAVIS was also developed by us, and it is the foundation of what pyNAVIS currently is. It was published in Neurocomputing journal as an Original Software Publication.

It was built on Windows Presentation Foundation (WPF), which allows an interactive GUI for fast analysis of a recorded file from a neuromorphic cochlea. As a counterpart, NAVIS is only available for Windows OS users due to its ac{GUI} framework dependency.

For this purpose, and based on many requests from different users and research groups with which the authors have collaborated, we developed pyNAVIS, a python version of that tool with many other functionalities added.

If you move from NAVIS to pyNAVIS, you will find the same whole set of functionalities. Moreover, some new useful functionalities suggested by neuromorpihc researchers in different research interships, international conferences and workshops (CapoCaccia Neuromorphic Workshop and Telluride Neuromorphic Cognition Engineering Workshop) that we’ve been to have already been implemented.

pyNAVIS does not have any GUI, which makes it lighter and faster. It is also very useful not only for being used as a standalone software package, but also to be imported within a bigger project and benefit from its functionalities. Due to the lack of an user interface, adding new functionalities to it is easier and faster than in NAVIS.

The following table summarizes the comparison between the main functionalities that NAVIS and pyNAVIS have:

Functionality

NAVIS

pyNAVIS

Loaders

- Load AEDAT

- Load CSV

- Load ZynqGrabber (iCub)

Plots

- Spikegram

- Sonogram

- Histogram

- Average activity

- Difference between L/R

Savers

- Save to AEDAT

- Save to CSV

- Save to TXT

Splitters

- Manual Splitter

- Automatic Splitter

- Segmenter

Generators

- Random addresses

- Shift

- Sweep

Dataset generation

- Phaselock dataset

- Sonogram dataset

- Histogram dataset

Other functionalities

- Mono to stereo

- Stereo to mono

- Phaselock

- Extract channels activity

- Check input file

Apart from that, it is also important to mention a few aspects:

  • pyNAVIS is cross platform, while NAVIS only works in Windows.

  • pyNAVIS can be easily integrated with other tools. Just by importing the pyNAVIS library in your script you can start using any of its functionalities. NAVIS cannot be integrated with other projects unless you dig deep in the code and merge it with another WPF application.

  • pyNAVIS does not have a GUI, while NAVIS does.

  • It is way easier to implement new functionalities in pyNAVIS than in NAVIS. Developers only need the basics of Python for that. In NAVIS, developers would need expertise on C#, LINQ and WPF and integrate the new function in the GUI.

  • Although we will continue updating NAVIS and adding new functionalities to it, users are moving towards using pyNAVIS as the reference software for neuromorphic audio processing and analysis.

Next Previous

© Copyright 2018, Juan P. Dominguez-Morales Revision 33b87011.

Built with Sphinx using a theme provided by Read the Docs.