Tonic is a tool to facilitate the download, manipulation and loading of event-based/spike-based data. It's like PyTorch Vision but for neuromorphic data!
You can find the full documentation on Tonic on this site.
- A first example to get a feeling for how Tonic works.
- Run tutorials in your browser quick and easy.
- List of datasets.
- List of transformations.
- About this project.
- Release notes on version changes.
pip install tonic
or (thanks to @Tobias-Fischer)
conda install -c conda-forge tonic
For the latest pre-release on the develop branch that passed the tests:
pip install tonic --pre
This package has been tested on:
Linux | |
---|---|
Windows |
If you're looking for a minimal example to run, this is it!
import tonic
import tonic.transforms as transforms
sensor_size = tonic.datasets.NMNIST.sensor_size
transform = transforms.Compose(
[
transforms.Denoise(filter_time=10000),
transforms.ToFrame(sensor_size=sensor_size, time_window=3000),
]
)
testset = tonic.datasets.NMNIST(save_to="./data", train=False, transform=transform)
from torch.utils.data import DataLoader
testloader = DataLoader(
testset,
batch_size=10,
collate_fn=tonic.collation.PadTensors(batch_first=True),
)
frames, targets = next(iter(testloader))
Have a question about how something works? Ideas for improvement? Feature request? Please get in touch on the #tonic Discord channel or alternatively here on GitHub via the Discussions page!
Please check out the contributions page for details.
The development of this library is supported by
If you find this package helpful, please consider citing it:
@software{lenz_gregor_2021_5079802,
author = {Lenz, Gregor and
Chaney, Kenneth and
Shrestha, Sumit Bam and
Oubari, Omar and
Picaud, Serge and
Zarrella, Guido},
title = {Tonic: event-based datasets and transformations.},
month = jul,
year = 2021,
note = {{Documentation available under
https://tonic.readthedocs.io}},
publisher = {Zenodo},
version = {0.4.0},
doi = {10.5281/zenodo.5079802},
url = {https://doi.org/10.5281/zenodo.5079802}
}