tonic 1.4.4.dev16__tar.gz → 1.4.4.dev34__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/.github/workflows/ci-pipeline.yml +4 -4
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/AUTHORS +2 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/ChangeLog +54 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/PKG-INFO +1 -1
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/requirements.txt +0 -2
- tonic-1.4.4.dev34/docs/tutorials/Aug_DiskCachDataset.ipynb +179 -0
- tonic-1.4.4.dev34/docs/tutorials/audio_transforms_tutorial.ipynb +446 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/requirements.txt +1 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/requirements.txt +0 -2
- tonic-1.4.4.dev34/test/test_audio_augmentations.py +142 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_audio_transforms.py +57 -0
- tonic-1.4.4.dev34/test/test_aug_caching.py +66 -0
- tonic-1.4.4.dev34/test/torch_requirements.txt +5 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/__init__.py +6 -1
- tonic-1.4.4.dev34/tonic/audio_augmentations.py +200 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/audio_transforms.py +76 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/cached_dataset.py +86 -1
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic.egg-info/PKG-INFO +1 -1
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic.egg-info/SOURCES.txt +6 -0
- tonic-1.4.4.dev34/tonic.egg-info/pbr.json +1 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic.egg-info/requires.txt +1 -0
- tonic-1.4.4.dev16/tonic.egg-info/pbr.json +0 -1
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/.binder/requirements.txt +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/.coveragerc +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/.pre-commit-config.yaml +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/.readthedocs.yml +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/LICENSE.txt +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/MANIFEST.in +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/README.md +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/Makefile +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/event-cameras/eventstream.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/event-cameras/framestream.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/event-cameras/receptive-fields.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/event-cameras/sampling-theorems.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/snn/neuron-models.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/snn/surrogates.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/tonic-logo-black-bg.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/tonic-logo-black.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/tonic-logo-white.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_static/tonic_favicon.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_templates/class_dataset.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/_templates/class_transform.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/about/about.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/about/info.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/about/prototype.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/about/release_notes.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/conf.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/datasets.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/README.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/representations/README.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/representations/plot_tobinarep.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/representations/plot_toframe.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/representations/plot_toimage.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/representations/plot_totimesurface.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/representations/plot_tovoxelgrid.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/README.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_centercrop.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_crop_time.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_decimation.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_denoise.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_downsample.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_drop_event.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_drop_event_by_area.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_drop_event_by_time.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_drop_pixel.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_event_downsampling.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_merge_polarities.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_random_crop.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_random_flip_lr.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_random_flip_ud.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_random_time_reversal.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_refractory_period.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_spatial_jitter.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_time_jitter.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/gallery/transformations/plot_uniform_noise.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/getting_involved/communication_channels.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/getting_involved/contribute.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/getting_involved/getting_involved.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/getting_started/getting_started.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/getting_started/install.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/getting_started/nmnist.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/how-tos/how-tos.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/how-tos/loading-raw-events.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/how-tos/visualizing-data.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/how-tos/wrapping_own_data.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/index.md +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/make.bat +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/reading_material/design_choices.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/reading_material/intro-event-cameras.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/reading_material/intro-snns.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/reading_material/reading_material.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/reading_material/training-snns.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/transformations.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/tutorials/batching.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/tutorials/davis_data.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/tutorials/fast_dataloading.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/tutorials/large_datasets.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/tutorials/slicing.ipynb +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/docs/tutorials/tutorials.rst +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/setup.cfg +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/setup.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/dataset_utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/prototype_dataset_utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_caching.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_chained_transforms.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_data/sample.aedat4 +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_data/sample_aedat_header.aedat +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_data/sample_ncars.dat +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_data/sample_nmnist.bin +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_data/sample_stmnist.mat +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_datasets.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_dsec.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_io.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_prototype_datasets.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_representations.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_sliced_dataset.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_slicers.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_tonic_utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/test_transforms.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/test/utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/collation.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/dataset.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/__init__.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/asl_dvs.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/cifar10dvs.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/davisdataset.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/dsec.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/dvs_lips.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/dvsgesture.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/ebssa.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/hsd.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/mvsec.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/ncaltech101.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/nmnist.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/pokerdvs.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/s_mnist.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/threeET_eyetracking.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/tum_vie.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/datasets/visual_place_recognition.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/download_utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/__init__.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/crop.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/decimate.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/denoise.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/drop_event.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/drop_pixel.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/event_downsampling.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/refractory_period.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/spatial_jitter.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/time_jitter.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/time_skew.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/to_averaged_timesurface.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/to_bina_rep.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/to_frame.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/to_timesurface.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/to_voxel_grid.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/functional/uniform_noise.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/io.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/README.md +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/__init__.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/__init__.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/ncars.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/nmnist.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/prophesee.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/stmnist.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/utils/__init__.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/utils/_dataset.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/datasets/utils/_utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/prototype/slicers.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/sliced_dataset.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/slicers.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/transforms.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic/utils.py +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic-logo-padded.png +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic.egg-info/dependency_links.txt +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic.egg-info/not-zip-safe +0 -0
- {tonic-1.4.4.dev16 → tonic-1.4.4.dev34}/tonic.egg-info/top_level.txt +0 -0
|
@@ -9,7 +9,7 @@ jobs:
|
|
|
9
9
|
fail-fast: false
|
|
10
10
|
matrix:
|
|
11
11
|
os: [ubuntu-latest, windows-2022]
|
|
12
|
-
python-version: ["3.
|
|
12
|
+
python-version: ["3.8", "3.10", "3.11"]
|
|
13
13
|
steps:
|
|
14
14
|
- uses: actions/checkout@v3
|
|
15
15
|
- if: matrix.os == 'ubuntu-latest'
|
|
@@ -21,8 +21,8 @@ jobs:
|
|
|
21
21
|
python-version: ${{ matrix.python-version }}
|
|
22
22
|
- name: Install requirements
|
|
23
23
|
run: |
|
|
24
|
-
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
|
|
25
24
|
pip install -r test/requirements.txt
|
|
25
|
+
pip install -r test/torch_requirements.txt
|
|
26
26
|
pip install .
|
|
27
27
|
- name: Test with pytest
|
|
28
28
|
run: pytest test
|
|
@@ -42,8 +42,8 @@ jobs:
|
|
|
42
42
|
python-version: 3.9
|
|
43
43
|
- name: Generate coverage report
|
|
44
44
|
run: |
|
|
45
|
-
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
|
|
46
45
|
pip install -r test/requirements.txt
|
|
46
|
+
pip install -r test/torch_requirements.txt
|
|
47
47
|
pip install .
|
|
48
48
|
coverage run -m pytest test
|
|
49
49
|
coverage xml
|
|
@@ -63,8 +63,8 @@ jobs:
|
|
|
63
63
|
python-version: 3.9
|
|
64
64
|
- name: Install dependencies
|
|
65
65
|
run: |
|
|
66
|
-
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
|
|
67
66
|
pip install -r docs/requirements.txt
|
|
67
|
+
pip install -r test/torch_requirements.txt
|
|
68
68
|
pip install .
|
|
69
69
|
- name: Build documentation
|
|
70
70
|
run: cd docs && make clean && make html # Use SPHINXOPTS="-W" to fail on warning.
|
|
@@ -9,6 +9,7 @@ Felix Bauer <felix.bauer@aictx.ai>
|
|
|
9
9
|
Gokul B. Nair <14059534+gokulbnr@users.noreply.github.com>
|
|
10
10
|
Gokul B. Nair <gokulbnr@gmail.com>
|
|
11
11
|
Gregor Lenz <gregor.lenz@synsense.ai>
|
|
12
|
+
Gregor Lenz <gregor@neurobus.space>
|
|
12
13
|
Gregor Lenz <mail@lenzgregor.com>
|
|
13
14
|
Guido Zarrella <jzarrella@mitre.org>
|
|
14
15
|
James Knight <jk421@inf900374.inf.susx.ac.uk>
|
|
@@ -19,6 +20,7 @@ Jonah P. Sengupta <jsengup1@jhu.edu>
|
|
|
19
20
|
Kenneth Chaney <chaneyk@seas.upenn.edu>
|
|
20
21
|
Laurent Perrinet <laurent.perrinet@univ-amu.fr>
|
|
21
22
|
Marco Rasetto <marcorax93@gmail.com>
|
|
23
|
+
Mina Khoei <mina.khoei@synsense.ai>
|
|
22
24
|
MrPeterJin <Cheng.Jin@std.uestc.edu.cn>
|
|
23
25
|
Omar Oubari <omaroubari@gmail.com>
|
|
24
26
|
Sadique Sheik <sadique.sheik@aictx.ai>
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
CHANGES
|
|
2
2
|
=======
|
|
3
3
|
|
|
4
|
+
* DataSet class import was removed, the mini dataset does not inherent from that
|
|
5
|
+
* moving torchvision import to inside function
|
|
6
|
+
* moving typing-extensions to the root requirement
|
|
7
|
+
* moving torch import to inside function, where it is used
|
|
8
|
+
* pin torchvision version to something compatible with torch 2.1
|
|
9
|
+
* add torch requirements to documentation github action
|
|
10
|
+
* shorten GH actions pipeline to three Python versions
|
|
4
11
|
* specified unit
|
|
5
12
|
* build lists of users indices and lighting in DVS gesture
|
|
6
13
|
* Update ebssa.py
|
|
@@ -9,6 +16,10 @@ CHANGES
|
|
|
9
16
|
* Revert "fix path format on windows for test case for ThreeET\_Eyetracking"
|
|
10
17
|
* fix path format on windows for test case for ThreeET\_Eyetracking
|
|
11
18
|
* add test case for ThreeET\_Eyetracking
|
|
19
|
+
* notebook added to elaborate teh function of AugDiskCachedDataset
|
|
20
|
+
* test added for aug\_diskcached
|
|
21
|
+
* including Aug\_DiskCachedDataset in init imports
|
|
22
|
+
* bug fixed in Aug\_DiskCach
|
|
12
23
|
* add ThreeET\_Eyetracking to the documentation
|
|
13
24
|
* fix: check for empty array in DropPixel transform
|
|
14
25
|
* added: tests for empty frames
|
|
@@ -24,9 +35,52 @@ v1.4.3
|
|
|
24
35
|
* change .h5 file loader to h5py
|
|
25
36
|
* add 3ET eye tracking dataset
|
|
26
37
|
* add threeET\_eyetracking(3et) dataset
|
|
38
|
+
* tutorial added for audio transforms/augmentations
|
|
39
|
+
* bug fixed in test
|
|
40
|
+
* sample\_length was removed from some transforms (when not needed)
|
|
27
41
|
* Fix: silent frames is now supported in uniform noise
|
|
28
42
|
* Fix: silent frame support
|
|
43
|
+
* importing TypedDict from typing\_extensions for python 3.7
|
|
44
|
+
* adding typing-extensions to requirments
|
|
45
|
+
* small fixes and cleanup
|
|
46
|
+
* noise related augmentations removed
|
|
29
47
|
* Fix: wrong range of histogram in drop\_pixel
|
|
48
|
+
* Testing with python>=3.8 and python<=3.11
|
|
49
|
+
* Update ci-pipeline.yml
|
|
50
|
+
* Update torch\_requirements.txt
|
|
51
|
+
* Update ci-pipeline.yml
|
|
52
|
+
* Update torch\_requirements.txt
|
|
53
|
+
* Update ci-pipeline.yml
|
|
54
|
+
* Update torch\_requirements.txt
|
|
55
|
+
* Update requirements.txt
|
|
56
|
+
* Create torch\_requirements.txt
|
|
57
|
+
* Update requirements.txt
|
|
58
|
+
* Update requirements.txt
|
|
59
|
+
* merge
|
|
60
|
+
* Trying to make torchaudio work
|
|
61
|
+
* cpu version is spesified for torchaudio
|
|
62
|
+
* adding torchaudio
|
|
63
|
+
* removing conflicting requirements
|
|
64
|
+
* updated the required version of torch
|
|
65
|
+
* dict keys updated to more generic
|
|
66
|
+
* RIR test updated
|
|
67
|
+
* removing hard coded room impulse audio from RIR transform
|
|
68
|
+
* requirments updated with torch and torchaudio versions
|
|
69
|
+
* removing torchaudio dependency temporarily to run the tests
|
|
70
|
+
* torchaudio added to requirements
|
|
71
|
+
* AugDiskCachedDataset added
|
|
72
|
+
* tests\_passed
|
|
73
|
+
* tests for audio augmentations
|
|
74
|
+
* tests for added transforms
|
|
75
|
+
* fixes in docstrings
|
|
76
|
+
* typos fixed in docstrings
|
|
77
|
+
* Noise augmentations added
|
|
78
|
+
* AmplitudeScale and RobustAmplitudeScale transforms added
|
|
79
|
+
* RIR transform (room impulse response) added
|
|
80
|
+
* RandomAmplitudeScale is added
|
|
81
|
+
* RandomPitchShift transfrom added
|
|
82
|
+
* audio\_augmentation module is added: with RandomTimeStretch
|
|
83
|
+
* new transform added: SwapAxes
|
|
30
84
|
* fix EBSSA test sample file path
|
|
31
85
|
* Prophesee prototype docstring updates
|
|
32
86
|
* update documentation config
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cells": [
|
|
3
|
+
{
|
|
4
|
+
"cell_type": "markdown",
|
|
5
|
+
"metadata": {},
|
|
6
|
+
"source": [
|
|
7
|
+
"## Using Aug_DiskCachedDataset for efficient caching of augmented copies\n",
|
|
8
|
+
"- `Aug_DiskCachedDataset` is a modified version of `DiskCachedDataset` that is useful while applying deterministic augmentations on data samples. \n",
|
|
9
|
+
"\n",
|
|
10
|
+
"- This is the case when the parameter space of augmentation is desceret, for instance applying `pitchshift` on audio data in which shift parameter (semitone) can only take N values.\n",
|
|
11
|
+
"\n",
|
|
12
|
+
"- Using `DiskCachedDataset` and setting `num_copies` to N is likely to cause 2 issues:\n",
|
|
13
|
+
"\n",
|
|
14
|
+
" - Copies might not be unique, as copy_index is not linked to the augmentation parameter \n",
|
|
15
|
+
" - And there is no guarantee that copies cover the desired augmentation space\n",
|
|
16
|
+
" \n",
|
|
17
|
+
"\n",
|
|
18
|
+
"\n",
|
|
19
|
+
"- `Aug_DiskCachedDataset` resolves this limitation by mapping and linking copy index to augmentation parameter. Following considerations need to be takes into account:\n",
|
|
20
|
+
"\n",
|
|
21
|
+
" - The user needs to pass `all_transforms` dict as input with seperated transforms `pre_aug`, `aug`, `post_aug` (spesifying transforms that are applied before and after augmentations, also augmentation transforms). \n",
|
|
22
|
+
" \n",
|
|
23
|
+
" - The augmentation class receives `aug_index` (aug_index = copy) as initialization parameter also `caching=True` needs to be set (please see `tonic.audio_augmentations`)\n",
|
|
24
|
+
"\n",
|
|
25
|
+
"- Follwing is a simple example to show function of `Aug_DiskCachedDataset`"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"cell_type": "markdown",
|
|
30
|
+
"metadata": {},
|
|
31
|
+
"source": [
|
|
32
|
+
"### A simple dataset "
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"cell_type": "code",
|
|
37
|
+
"execution_count": 1,
|
|
38
|
+
"metadata": {},
|
|
39
|
+
"outputs": [],
|
|
40
|
+
"source": [
|
|
41
|
+
"# %%writefile mini_dataset.py\n",
|
|
42
|
+
"import warnings\n",
|
|
43
|
+
"warnings.filterwarnings('ignore')\n",
|
|
44
|
+
"from torch.utils.data import Dataset\n",
|
|
45
|
+
"import numpy as np\n",
|
|
46
|
+
"\n",
|
|
47
|
+
"class mini_dataset(Dataset):\n",
|
|
48
|
+
" def __init__(self) -> None:\n",
|
|
49
|
+
" super().__init__()\n",
|
|
50
|
+
" np.random.seed(0)\n",
|
|
51
|
+
" self.data = np.random.rand(10, 16000)\n",
|
|
52
|
+
" self.transform = None\n",
|
|
53
|
+
" self.target_transform = None\n",
|
|
54
|
+
"\n",
|
|
55
|
+
" def __getitem__(self, index):\n",
|
|
56
|
+
" sample = self.data[index]\n",
|
|
57
|
+
" label = 1\n",
|
|
58
|
+
" if sample.ndim==1:\n",
|
|
59
|
+
" sample = sample[None,...]\n",
|
|
60
|
+
" if self.transform is not None:\n",
|
|
61
|
+
" sample = self.transform(sample)\n",
|
|
62
|
+
" if self.target_transform is not None:\n",
|
|
63
|
+
" label = self.target_transform(label) \n",
|
|
64
|
+
"\n",
|
|
65
|
+
" return sample, label "
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"cell_type": "markdown",
|
|
70
|
+
"metadata": {},
|
|
71
|
+
"source": [
|
|
72
|
+
"### Initializing `Aug_DiskCachedDataset` with transforms"
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"cell_type": "code",
|
|
77
|
+
"execution_count": 2,
|
|
78
|
+
"metadata": {},
|
|
79
|
+
"outputs": [],
|
|
80
|
+
"source": [
|
|
81
|
+
"from tonic.cached_dataset import Aug_DiskCachedDataset, load_from_disk_cache\n",
|
|
82
|
+
"from tonic.audio_transforms import AmplitudeScale, FixLength\n",
|
|
83
|
+
"from tonic.audio_augmentations import RandomPitchShift\n",
|
|
84
|
+
"\n",
|
|
85
|
+
"all_transforms = {}\n",
|
|
86
|
+
"all_transforms[\"pre_aug\"] = [AmplitudeScale(max_amplitude = 0.150)]\n",
|
|
87
|
+
"all_transforms[\"augmentations\"] = [RandomPitchShift(samplerate=16000, caching=True)]\n",
|
|
88
|
+
"all_transforms[\"post_aug\"] = [FixLength(16000)]\n",
|
|
89
|
+
"\n",
|
|
90
|
+
"# number of copies is set to number of augmentation params (factors)\n",
|
|
91
|
+
"n = len(RandomPitchShift(samplerate=16000, caching=True).factors)\n",
|
|
92
|
+
"Aug_cach = Aug_DiskCachedDataset(dataset=mini_dataset(), cache_path='cache/', all_transforms = all_transforms, num_copies=n)"
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"cell_type": "markdown",
|
|
97
|
+
"metadata": {},
|
|
98
|
+
"source": [
|
|
99
|
+
"### Generating all copies of a data sample\n",
|
|
100
|
+
" - 10 augmented versions of data sample with index = 0 are generated"
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"cell_type": "code",
|
|
105
|
+
"execution_count": 3,
|
|
106
|
+
"metadata": {},
|
|
107
|
+
"outputs": [],
|
|
108
|
+
"source": [
|
|
109
|
+
"sample_index = 0\n",
|
|
110
|
+
"Aug_cach.generate_all(sample_index)"
|
|
111
|
+
]
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"cell_type": "markdown",
|
|
115
|
+
"metadata": {},
|
|
116
|
+
"source": [
|
|
117
|
+
"### To verify\n",
|
|
118
|
+
" - loading the saved copies \n",
|
|
119
|
+
" - and comparing them with the ones generated out of `Aug_DiskCacheDataset` with the same transforms and matching augmentation parameter \n",
|
|
120
|
+
" - they are equal\n"
|
|
121
|
+
]
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"cell_type": "code",
|
|
125
|
+
"execution_count": 7,
|
|
126
|
+
"metadata": {},
|
|
127
|
+
"outputs": [
|
|
128
|
+
{
|
|
129
|
+
"name": "stdout",
|
|
130
|
+
"output_type": "stream",
|
|
131
|
+
"text": [
|
|
132
|
+
"True\n",
|
|
133
|
+
"True\n",
|
|
134
|
+
"True\n",
|
|
135
|
+
"True\n",
|
|
136
|
+
"True\n",
|
|
137
|
+
"True\n",
|
|
138
|
+
"True\n",
|
|
139
|
+
"True\n",
|
|
140
|
+
"True\n",
|
|
141
|
+
"True\n"
|
|
142
|
+
]
|
|
143
|
+
}
|
|
144
|
+
],
|
|
145
|
+
"source": [
|
|
146
|
+
"from torchvision.transforms import Compose\n",
|
|
147
|
+
"\n",
|
|
148
|
+
"for i in range(n):\n",
|
|
149
|
+
" transform = Compose([AmplitudeScale(max_amplitude = 0.150),RandomPitchShift(samplerate=16000, caching=True, aug_index=i), FixLength(16000)])\n",
|
|
150
|
+
" ds = mini_dataset()\n",
|
|
151
|
+
" ds.transform = transform\n",
|
|
152
|
+
" sample = ds[sample_index][0]\n",
|
|
153
|
+
" data, targets = load_from_disk_cache('cache/' + '0_' + str(i) + '.hdf5' )\n",
|
|
154
|
+
" print((sample==data).all())\n"
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
],
|
|
158
|
+
"metadata": {
|
|
159
|
+
"kernelspec": {
|
|
160
|
+
"display_name": "py_310",
|
|
161
|
+
"language": "python",
|
|
162
|
+
"name": "python3"
|
|
163
|
+
},
|
|
164
|
+
"language_info": {
|
|
165
|
+
"codemirror_mode": {
|
|
166
|
+
"name": "ipython",
|
|
167
|
+
"version": 3
|
|
168
|
+
},
|
|
169
|
+
"file_extension": ".py",
|
|
170
|
+
"mimetype": "text/x-python",
|
|
171
|
+
"name": "python",
|
|
172
|
+
"nbconvert_exporter": "python",
|
|
173
|
+
"pygments_lexer": "ipython3",
|
|
174
|
+
"version": "3.10.2"
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
"nbformat": 4,
|
|
178
|
+
"nbformat_minor": 2
|
|
179
|
+
}
|