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.
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}
}