From b960c700b514b0db1464aa84668a2a1d5eda14b5 Mon Sep 17 00:00:00 2001 From: benedettoleto Date: Tue, 14 Apr 2026 13:11:18 +0200 Subject: [PATCH 1/2] refactor!: rename `filtering` and `encoding` packages to `filters` and `encoders` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit BREAKING CHANGE: import paths have changed. - `spikify.filtering` → `spikify.filters` - `spikify.encoding` → `spikify.encoders` --- README.md | 4 ++-- README_PYPI.md | 4 ++-- animation.py | 2 +- codecov.yml | 24 +++++++++---------- .../python/encoding/rate_coding/poisson.rst | 2 +- .../contrast/moving_window.rst | 2 +- .../temporal_coding/contrast/step_forward.rst | 2 +- .../contrast/threshold_based.rst | 2 +- .../contrast/zero_cross_step_forward.rst | 2 +- .../deconvolution/ben_spiker.rst | 2 +- .../deconvolution/hough_spiker.rst | 2 +- .../deconvolution/modified_hough_spiker.rst | 2 +- .../global_referenced/phase_encoding.rst | 2 +- .../global_referenced/time_to_first_spike.rst | 2 +- .../temporal_coding/latency/burst_coding.rst | 2 +- docs/api/python/filtering/filterbank.rst | 2 +- docs/index.rst | 4 ++-- docs/installation.rst | 2 +- docs/spikify/{encoding => encoders}/index.rst | 0 .../{encoding => encoders}/rate/index.rst | 0 .../rate/poisson_rate.rst | 0 .../temporal/contrast/index.rst | 0 .../temporal/contrast/moving_window.rst | 0 .../temporal/contrast/step_forward.rst | 0 .../temporal/contrast/threshold_based.rst | 0 .../contrast/zero_cross_step_forward.rst | 0 .../temporal/deconvolution/ben_spiker.rst | 0 .../temporal/deconvolution/hough_spiker.rst | 0 .../temporal/deconvolution/index.rst | 0 .../deconvolution/modified_hough_spiker.rst | 0 .../temporal/global_referenced/index.rst | 0 .../global_referenced/phase_encoding.rst | 0 .../global_referenced/time_to_first_spike.rst | 0 .../{encoding => encoders}/temporal/index.rst | 0 .../temporal/latency/burst_coding.rst | 0 .../temporal/latency/index.rst | 0 docs/spikify/{filtering => filters}/index.rst | 0 docs/tutorial.rst | 4 ++-- examples/wisdm/encode.py | 10 ++++---- spikify/encoders/__init__.py | 1 + .../{encoding => encoders}/rate/__init__.py | 0 .../rate/poisson_algorithm.py | 4 ++-- .../temporal/__init__.py | 0 .../temporal/contrast/__init__.py | 0 .../contrast/moving_window_algorithm.py | 4 ++-- .../contrast/step_forward_algorithm.py | 4 ++-- .../contrast/threshold_based_algorithm.py | 4 ++-- .../zero_cross_step_forward_algorithm.py | 4 ++-- .../temporal/deconvolution/__init__.py | 0 .../deconvolution/bens_spiker_algorithm.py | 4 ++-- .../deconvolution/hough_spiker_algorithm.py | 4 ++-- .../modified_hough_spiker_algorithm.py | 4 ++-- .../temporal/deconvolution/utils.py | 0 .../temporal/global_referenced/__init__.py | 0 .../phase_encoding_algorithm.py | 4 ++-- .../time_to_first_spike_algorithm.py | 4 ++-- .../temporal/latency/__init__.py | 0 .../latency/burst_coding_algorithm.py | 4 ++-- spikify/encoding/__init__.py | 1 - spikify/{filtering => filters}/__init__.py | 2 +- spikify/{filtering => filters}/filterbank.py | 4 ++-- tests/{encoding => encoders}/__init__.py | 0 tests/{encoding => encoders}/rate/__init__.py | 0 .../rate/test_poisson.py | 2 +- .../temporal/contrast/test_moving_window.py | 2 +- .../temporal/contrast/test_step_forward.py | 2 +- .../temporal/contrast/test_threshold_based.py | 2 +- .../contrast/test_zero_cross_step_forward.py | 2 +- .../temporal/deconvolution/test_ben_spiker.py | 2 +- .../deconvolution/test_hough_spiker.py | 2 +- .../test_modified_hough_spiker.py | 2 +- .../global_referenced/test_phase_encoding.py | 2 +- .../test_time_to_first_spike.py | 2 +- .../temporal/latency/test_burst_coding.py | 2 +- tests/{filtering => filters}/__init__.py | 0 .../{filtering => filters}/test_filterbank.py | 2 +- 76 files changed, 77 insertions(+), 77 deletions(-) rename docs/spikify/{encoding => encoders}/index.rst (100%) rename docs/spikify/{encoding => encoders}/rate/index.rst (100%) rename docs/spikify/{encoding => encoders}/rate/poisson_rate.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/contrast/index.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/contrast/moving_window.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/contrast/step_forward.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/contrast/threshold_based.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/contrast/zero_cross_step_forward.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/deconvolution/ben_spiker.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/deconvolution/hough_spiker.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/deconvolution/index.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/deconvolution/modified_hough_spiker.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/global_referenced/index.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/global_referenced/phase_encoding.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/global_referenced/time_to_first_spike.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/index.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/latency/burst_coding.rst (100%) rename docs/spikify/{encoding => encoders}/temporal/latency/index.rst (100%) rename docs/spikify/{filtering => filters}/index.rst (100%) create mode 100644 spikify/encoders/__init__.py rename spikify/{encoding => encoders}/rate/__init__.py (100%) rename spikify/{encoding => encoders}/rate/poisson_algorithm.py (97%) rename spikify/{encoding => encoders}/temporal/__init__.py (100%) rename spikify/{encoding => encoders}/temporal/contrast/__init__.py (100%) rename spikify/{encoding => encoders}/temporal/contrast/moving_window_algorithm.py (96%) rename spikify/{encoding => encoders}/temporal/contrast/step_forward_algorithm.py (96%) rename spikify/{encoding => encoders}/temporal/contrast/threshold_based_algorithm.py (96%) rename spikify/{encoding => encoders}/temporal/contrast/zero_cross_step_forward_algorithm.py (95%) rename spikify/{encoding => encoders}/temporal/deconvolution/__init__.py (100%) rename spikify/{encoding => encoders}/temporal/deconvolution/bens_spiker_algorithm.py (98%) rename spikify/{encoding => encoders}/temporal/deconvolution/hough_spiker_algorithm.py (97%) rename spikify/{encoding => encoders}/temporal/deconvolution/modified_hough_spiker_algorithm.py (98%) rename spikify/{encoding => encoders}/temporal/deconvolution/utils.py (100%) rename spikify/{encoding => encoders}/temporal/global_referenced/__init__.py (100%) rename spikify/{encoding => encoders}/temporal/global_referenced/phase_encoding_algorithm.py (96%) rename spikify/{encoding => encoders}/temporal/global_referenced/time_to_first_spike_algorithm.py (96%) rename spikify/{encoding => encoders}/temporal/latency/__init__.py (100%) rename spikify/{encoding => encoders}/temporal/latency/burst_coding_algorithm.py (97%) delete mode 100644 spikify/encoding/__init__.py rename spikify/{filtering => filters}/__init__.py (71%) rename spikify/{filtering => filters}/filterbank.py (98%) rename tests/{encoding => encoders}/__init__.py (100%) rename tests/{encoding => encoders}/rate/__init__.py (100%) rename tests/{encoding => encoders}/rate/test_poisson.py (98%) rename tests/{encoding => encoders}/temporal/contrast/test_moving_window.py (98%) rename tests/{encoding => encoders}/temporal/contrast/test_step_forward.py (98%) rename tests/{encoding => encoders}/temporal/contrast/test_threshold_based.py (98%) rename tests/{encoding => encoders}/temporal/contrast/test_zero_cross_step_forward.py (98%) rename tests/{encoding => encoders}/temporal/deconvolution/test_ben_spiker.py (99%) rename tests/{encoding => encoders}/temporal/deconvolution/test_hough_spiker.py (99%) rename tests/{encoding => encoders}/temporal/deconvolution/test_modified_hough_spiker.py (99%) rename tests/{encoding => encoders}/temporal/global_referenced/test_phase_encoding.py (97%) rename tests/{encoding => encoders}/temporal/global_referenced/test_time_to_first_spike.py (98%) rename tests/{encoding => encoders}/temporal/latency/test_burst_coding.py (98%) rename tests/{filtering => filters}/__init__.py (100%) rename tests/{filtering => filters}/test_filterbank.py (99%) diff --git a/README.md b/README.md index faaba3a..9d9239e 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,8 @@ Here is a simple example to get started: ```python import numpy as np -from spikify.filtering import FilterBank -from spikify.encoding.rate import poisson +from spikify.filters import FilterBank +from spikify.encoders.rate import poisson # Generate a sinusoidal signal time = np.linspace(0, 4 * np.pi, 200) diff --git a/README_PYPI.md b/README_PYPI.md index acbb147..946cc41 100644 --- a/README_PYPI.md +++ b/README_PYPI.md @@ -34,8 +34,8 @@ Here is a simple example to get started: ```python import numpy as np -from spikify.filtering import FilterBank -from spikify.encoding.rate import poisson +from spikify.filters import FilterBank +from spikify.encoders.rate import poisson # Generate a sinusoidal signal time = np.linspace(0, 4 * np.pi, 200) diff --git a/animation.py b/animation.py index 9b7b74f..2073e1e 100644 --- a/animation.py +++ b/animation.py @@ -1,7 +1,7 @@ import numpy as np import matplotlib.pyplot as plt import imageio.v2 as imageio -from spikify.encoding.rate import poisson +from spikify.encoders.rate import poisson import os # Set style for better visualization diff --git a/codecov.yml b/codecov.yml index 6a13a09..43d2d4d 100644 --- a/codecov.yml +++ b/codecov.yml @@ -26,32 +26,32 @@ component_management: - component_id: temporal_encoding_deconvolution_algorithms name: TempEncDeconAlgo paths: - - "spikify/encoding/temporal/deconvolution/**" - - "tests/encoding/temporal/deconvolution/**" + - "spikify/encoders/temporal/deconvolution/**" + - "tests/encoders/temporal/deconvolution/**" - component_id: temporal_encoding_global_referenced_algorithms name: TempEncGlobAlgo paths: - - "spikify/encoding/temporal/global_referenced/**" - - "tests/encoding/temporal/global_referenced/**" + - "spikify/encoders/temporal/global_referenced/**" + - "tests/encoders/temporal/global_referenced/**" - component_id: temporal_encoding_contrast_algorithms name: TempEncContAlgo paths: - - "spikify/encoding/temporal/contrast/**" - - "tests/encoding/temporal/contrast/**" + - "spikify/encoders/temporal/contrast/**" + - "tests/encoders/temporal/contrast/**" - component_id: temporal_encoding_latency_algorithms name: TempEncLatAlgo paths: - - "spikify/encoding/temporal/latency/**" - - "tests/encoding/temporal/latency/**" + - "spikify/encoders/temporal/latency/**" + - "tests/encoders/temporal/latency/**" - component_id: temporal_encoding_rate_algorithms name: TempEncRateAlgo paths: - - "spikify/encoding/rate/**" - - "tests/encoding/rate/**" + - "spikify/encoders/rate/**" + - "tests/encoders/rate/**" - component_id: filtering name: Filtering paths: - - "spikify/filtering/**" - - "tests/filtering/**" + - "spikify/filters/**" + - "tests/filters/**" diff --git a/docs/api/python/encoding/rate_coding/poisson.rst b/docs/api/python/encoding/rate_coding/poisson.rst index 1b8989a..79bd16e 100644 --- a/docs/api/python/encoding/rate_coding/poisson.rst +++ b/docs/api/python/encoding/rate_coding/poisson.rst @@ -2,7 +2,7 @@ .. title:: Poisson Algorithm -.. automodule:: spikify.encoding.rate.poisson_algorithm +.. automodule:: spikify.encoders.rate.poisson_algorithm :members: poisson :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/contrast/moving_window.rst b/docs/api/python/encoding/temporal_coding/contrast/moving_window.rst index 64b940a..bce4619 100644 --- a/docs/api/python/encoding/temporal_coding/contrast/moving_window.rst +++ b/docs/api/python/encoding/temporal_coding/contrast/moving_window.rst @@ -2,7 +2,7 @@ .. title:: Moving Window -.. automodule:: spikify.encoding.temporal.contrast.moving_window_algorithm +.. automodule:: spikify.encoders.temporal.contrast.moving_window_algorithm :members: moving_window :undoc-members: :show-inheritance: diff --git a/docs/api/python/encoding/temporal_coding/contrast/step_forward.rst b/docs/api/python/encoding/temporal_coding/contrast/step_forward.rst index fcbed01..aabf4b0 100644 --- a/docs/api/python/encoding/temporal_coding/contrast/step_forward.rst +++ b/docs/api/python/encoding/temporal_coding/contrast/step_forward.rst @@ -2,7 +2,7 @@ .. title:: Step Forward -.. automodule:: spikify.encoding.temporal.contrast.step_forward_algorithm +.. automodule:: spikify.encoders.temporal.contrast.step_forward_algorithm :members: step_forward :undoc-members: :show-inheritance: diff --git a/docs/api/python/encoding/temporal_coding/contrast/threshold_based.rst b/docs/api/python/encoding/temporal_coding/contrast/threshold_based.rst index c63a7fa..9d24a52 100644 --- a/docs/api/python/encoding/temporal_coding/contrast/threshold_based.rst +++ b/docs/api/python/encoding/temporal_coding/contrast/threshold_based.rst @@ -2,7 +2,7 @@ .. title:: Threshold Based Representation -.. automodule:: spikify.encoding.temporal.contrast.threshold_based_algorithm +.. automodule:: spikify.encoders.temporal.contrast.threshold_based_algorithm :members: threshold_based_representation :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/contrast/zero_cross_step_forward.rst b/docs/api/python/encoding/temporal_coding/contrast/zero_cross_step_forward.rst index fe13a09..e7bea65 100644 --- a/docs/api/python/encoding/temporal_coding/contrast/zero_cross_step_forward.rst +++ b/docs/api/python/encoding/temporal_coding/contrast/zero_cross_step_forward.rst @@ -2,7 +2,7 @@ .. title:: Zero Cross Step Forward -.. automodule:: spikify.encoding.temporal.contrast.zero_cross_step_forward_algorithm +.. automodule:: spikify.encoders.temporal.contrast.zero_cross_step_forward_algorithm :members: tzero_cross_step_forward :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/ben_spiker.rst b/docs/api/python/encoding/temporal_coding/deconvolution/ben_spiker.rst index cd8b74f..0eead44 100644 --- a/docs/api/python/encoding/temporal_coding/deconvolution/ben_spiker.rst +++ b/docs/api/python/encoding/temporal_coding/deconvolution/ben_spiker.rst @@ -2,7 +2,7 @@ .. title:: Bens Spiker -.. automodule:: spikify.encoding.temporal.deconvolution.bens_spiker_algorithm +.. automodule:: spikify.encoders.temporal.deconvolution.bens_spiker_algorithm :members: bens_spiker :undoc-members: :show-inheritance: diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/hough_spiker.rst b/docs/api/python/encoding/temporal_coding/deconvolution/hough_spiker.rst index 8c35823..0c4c9c2 100644 --- a/docs/api/python/encoding/temporal_coding/deconvolution/hough_spiker.rst +++ b/docs/api/python/encoding/temporal_coding/deconvolution/hough_spiker.rst @@ -2,7 +2,7 @@ .. title:: Hough Spiker -.. automodule:: spikify.encoding.temporal.deconvolution.hough_spiker_algorithm +.. automodule:: spikify.encoders.temporal.deconvolution.hough_spiker_algorithm :members: hough_spiker :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/modified_hough_spiker.rst b/docs/api/python/encoding/temporal_coding/deconvolution/modified_hough_spiker.rst index c7bd369..68ea97d 100644 --- a/docs/api/python/encoding/temporal_coding/deconvolution/modified_hough_spiker.rst +++ b/docs/api/python/encoding/temporal_coding/deconvolution/modified_hough_spiker.rst @@ -2,7 +2,7 @@ .. title:: Modified Hough Spiker -.. automodule:: spikify.encoding.temporal.deconvolution.modified_hough_spiker_algorithm +.. automodule:: spikify.encoders.temporal.deconvolution.modified_hough_spiker_algorithm :members: modified_hough_spiker :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/global_referenced/phase_encoding.rst b/docs/api/python/encoding/temporal_coding/global_referenced/phase_encoding.rst index 2a82ead..2e2a5a6 100644 --- a/docs/api/python/encoding/temporal_coding/global_referenced/phase_encoding.rst +++ b/docs/api/python/encoding/temporal_coding/global_referenced/phase_encoding.rst @@ -2,7 +2,7 @@ .. title:: Phase Encoding -.. automodule:: spikify.encoding.temporal.global_referenced.phase_encoding_algorithm +.. automodule:: spikify.encoders.temporal.global_referenced.phase_encoding_algorithm :members: phase_encoding :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/global_referenced/time_to_first_spike.rst b/docs/api/python/encoding/temporal_coding/global_referenced/time_to_first_spike.rst index 376c492..b67c52a 100644 --- a/docs/api/python/encoding/temporal_coding/global_referenced/time_to_first_spike.rst +++ b/docs/api/python/encoding/temporal_coding/global_referenced/time_to_first_spike.rst @@ -2,7 +2,7 @@ .. title:: Time to First Spike -.. automodule:: spikify.encoding.temporal.global_referenced.time_to_first_spike_algorithm +.. automodule:: spikify.encoders.temporal.global_referenced.time_to_first_spike_algorithm :members: time_to_first_spike :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/encoding/temporal_coding/latency/burst_coding.rst b/docs/api/python/encoding/temporal_coding/latency/burst_coding.rst index cca51e7..06b9d3d 100644 --- a/docs/api/python/encoding/temporal_coding/latency/burst_coding.rst +++ b/docs/api/python/encoding/temporal_coding/latency/burst_coding.rst @@ -2,7 +2,7 @@ .. title:: Burst Coding -.. automodule:: spikify.encoding.temporal.latency.burst_coding_algorithm +.. automodule:: spikify.encoders.temporal.latency.burst_coding_algorithm :members: burst_coding :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/api/python/filtering/filterbank.rst b/docs/api/python/filtering/filterbank.rst index 8aec94e..2c2e06b 100644 --- a/docs/api/python/filtering/filterbank.rst +++ b/docs/api/python/filtering/filterbank.rst @@ -2,7 +2,7 @@ .. title:: FilterBank -.. autoclass:: spikify.filtering.filterbank.FilterBank +.. autoclass:: spikify.filters.filterbank.FilterBank :members: :undoc-members: :show-inheritance: \ No newline at end of file diff --git a/docs/index.rst b/docs/index.rst index 956efbd..5207062 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -142,8 +142,8 @@ Contents :caption: Fundamentals :maxdepth: 1 - spikify/filtering/index - spikify/encoding/index + spikify/filters/index + spikify/encoders/index .. toctree:: :caption: Development diff --git a/docs/installation.rst b/docs/installation.rst index 2b2f598..467e806 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -54,7 +54,7 @@ It's recommended to install spikify in a virtual environment to avoid conflicts python -m venv spikify-env source spikify-env/bin/activate # On Windows use `spikify-env\Scripts\activate` - pip install spikify + pip install innuce-spikify Getting code from source ------------------------ diff --git a/docs/spikify/encoding/index.rst b/docs/spikify/encoders/index.rst similarity index 100% rename from docs/spikify/encoding/index.rst rename to docs/spikify/encoders/index.rst diff --git a/docs/spikify/encoding/rate/index.rst b/docs/spikify/encoders/rate/index.rst similarity index 100% rename from docs/spikify/encoding/rate/index.rst rename to docs/spikify/encoders/rate/index.rst diff --git a/docs/spikify/encoding/rate/poisson_rate.rst b/docs/spikify/encoders/rate/poisson_rate.rst similarity index 100% rename from docs/spikify/encoding/rate/poisson_rate.rst rename to docs/spikify/encoders/rate/poisson_rate.rst diff --git a/docs/spikify/encoding/temporal/contrast/index.rst b/docs/spikify/encoders/temporal/contrast/index.rst similarity index 100% rename from docs/spikify/encoding/temporal/contrast/index.rst rename to docs/spikify/encoders/temporal/contrast/index.rst diff --git a/docs/spikify/encoding/temporal/contrast/moving_window.rst b/docs/spikify/encoders/temporal/contrast/moving_window.rst similarity index 100% rename from docs/spikify/encoding/temporal/contrast/moving_window.rst rename to docs/spikify/encoders/temporal/contrast/moving_window.rst diff --git a/docs/spikify/encoding/temporal/contrast/step_forward.rst b/docs/spikify/encoders/temporal/contrast/step_forward.rst similarity index 100% rename from docs/spikify/encoding/temporal/contrast/step_forward.rst rename to docs/spikify/encoders/temporal/contrast/step_forward.rst diff --git a/docs/spikify/encoding/temporal/contrast/threshold_based.rst b/docs/spikify/encoders/temporal/contrast/threshold_based.rst similarity index 100% rename from docs/spikify/encoding/temporal/contrast/threshold_based.rst rename to docs/spikify/encoders/temporal/contrast/threshold_based.rst diff --git a/docs/spikify/encoding/temporal/contrast/zero_cross_step_forward.rst b/docs/spikify/encoders/temporal/contrast/zero_cross_step_forward.rst similarity index 100% rename from docs/spikify/encoding/temporal/contrast/zero_cross_step_forward.rst rename to docs/spikify/encoders/temporal/contrast/zero_cross_step_forward.rst diff --git a/docs/spikify/encoding/temporal/deconvolution/ben_spiker.rst b/docs/spikify/encoders/temporal/deconvolution/ben_spiker.rst similarity index 100% rename from docs/spikify/encoding/temporal/deconvolution/ben_spiker.rst rename to docs/spikify/encoders/temporal/deconvolution/ben_spiker.rst diff --git a/docs/spikify/encoding/temporal/deconvolution/hough_spiker.rst b/docs/spikify/encoders/temporal/deconvolution/hough_spiker.rst similarity index 100% rename from docs/spikify/encoding/temporal/deconvolution/hough_spiker.rst rename to docs/spikify/encoders/temporal/deconvolution/hough_spiker.rst diff --git a/docs/spikify/encoding/temporal/deconvolution/index.rst b/docs/spikify/encoders/temporal/deconvolution/index.rst similarity index 100% rename from docs/spikify/encoding/temporal/deconvolution/index.rst rename to docs/spikify/encoders/temporal/deconvolution/index.rst diff --git a/docs/spikify/encoding/temporal/deconvolution/modified_hough_spiker.rst b/docs/spikify/encoders/temporal/deconvolution/modified_hough_spiker.rst similarity index 100% rename from docs/spikify/encoding/temporal/deconvolution/modified_hough_spiker.rst rename to docs/spikify/encoders/temporal/deconvolution/modified_hough_spiker.rst diff --git a/docs/spikify/encoding/temporal/global_referenced/index.rst b/docs/spikify/encoders/temporal/global_referenced/index.rst similarity index 100% rename from docs/spikify/encoding/temporal/global_referenced/index.rst rename to docs/spikify/encoders/temporal/global_referenced/index.rst diff --git a/docs/spikify/encoding/temporal/global_referenced/phase_encoding.rst b/docs/spikify/encoders/temporal/global_referenced/phase_encoding.rst similarity index 100% rename from docs/spikify/encoding/temporal/global_referenced/phase_encoding.rst rename to docs/spikify/encoders/temporal/global_referenced/phase_encoding.rst diff --git a/docs/spikify/encoding/temporal/global_referenced/time_to_first_spike.rst b/docs/spikify/encoders/temporal/global_referenced/time_to_first_spike.rst similarity index 100% rename from docs/spikify/encoding/temporal/global_referenced/time_to_first_spike.rst rename to docs/spikify/encoders/temporal/global_referenced/time_to_first_spike.rst diff --git a/docs/spikify/encoding/temporal/index.rst b/docs/spikify/encoders/temporal/index.rst similarity index 100% rename from docs/spikify/encoding/temporal/index.rst rename to docs/spikify/encoders/temporal/index.rst diff --git a/docs/spikify/encoding/temporal/latency/burst_coding.rst b/docs/spikify/encoders/temporal/latency/burst_coding.rst similarity index 100% rename from docs/spikify/encoding/temporal/latency/burst_coding.rst rename to docs/spikify/encoders/temporal/latency/burst_coding.rst diff --git a/docs/spikify/encoding/temporal/latency/index.rst b/docs/spikify/encoders/temporal/latency/index.rst similarity index 100% rename from docs/spikify/encoding/temporal/latency/index.rst rename to docs/spikify/encoders/temporal/latency/index.rst diff --git a/docs/spikify/filtering/index.rst b/docs/spikify/filters/index.rst similarity index 100% rename from docs/spikify/filtering/index.rst rename to docs/spikify/filters/index.rst diff --git a/docs/tutorial.rst b/docs/tutorial.rst index e2f8aa3..e7feaef 100644 --- a/docs/tutorial.rst +++ b/docs/tutorial.rst @@ -24,7 +24,7 @@ Before encoding, you may want to filter the signal to focus on specific frequenc .. code-block:: python - from spikify.filtering import FilterBank + from spikify.filters import FilterBank filter = FilterBank(fs=50, channels=5, f_min=0.5, f_max=5, order=4, filter_type='butterworth') @@ -39,7 +39,7 @@ Now, let's encode the sinusoidal signal into spikes using the `poisson` method. .. code-block:: python - from spikify.encoding.rate import poisson + from spikify.encoders.rate import poisson # Set parameters for encoding np.random.seed(0) # For reproducibility diff --git a/examples/wisdm/encode.py b/examples/wisdm/encode.py index 5c5d98a..9fb696f 100644 --- a/examples/wisdm/encode.py +++ b/examples/wisdm/encode.py @@ -1,15 +1,15 @@ from pathlib import Path import numpy as np -from spikify.encoding.rate import poisson_rate -from spikify.encoding.temporal.latency import burst_encoding -from spikify.encoding.temporal.contrast import ( +from spikify.encoders.rate import poisson_rate +from spikify.encoders.temporal.latency import burst_encoding +from spikify.encoders.temporal.contrast import ( moving_window, step_forward, threshold_based_representation, zero_cross_step_forward, ) -from spikify.encoding.temporal.global_referenced import phase_encoding, time_to_first_spike -from spikify.encoding.temporal.deconvolution import bens_spiker, hough_spiker, modified_hough_spiker +from spikify.encoders.temporal.global_referenced import phase_encoding, time_to_first_spike +from spikify.encoders.temporal.deconvolution import bens_spiker, hough_spiker, modified_hough_spiker from datasets import load_dataset REPO_ID = "neuromorphic-polito/siddha" diff --git a/spikify/encoders/__init__.py b/spikify/encoders/__init__.py new file mode 100644 index 0000000..a33f0d2 --- /dev/null +++ b/spikify/encoders/__init__.py @@ -0,0 +1 @@ +"""Encoders package.""" diff --git a/spikify/encoding/rate/__init__.py b/spikify/encoders/rate/__init__.py similarity index 100% rename from spikify/encoding/rate/__init__.py rename to spikify/encoders/rate/__init__.py diff --git a/spikify/encoding/rate/poisson_algorithm.py b/spikify/encoders/rate/poisson_algorithm.py similarity index 97% rename from spikify/encoding/rate/poisson_algorithm.py rename to spikify/encoders/rate/poisson_algorithm.py index 6b9a844..aa1a8fa 100644 --- a/spikify/encoding/rate/poisson_algorithm.py +++ b/spikify/encoders/rate/poisson_algorithm.py @@ -31,7 +31,7 @@ def poisson(signal: np.ndarray, interval_length: int, seed: int = 0) -> np.ndarr .. code-block:: python import numpy as np - from spikify.encoding.rate import poisson + from spikify.encoders.rate import poisson signal = np.array([0.2, 0.5, 0.8, 1.0]) np.random.seed(0) interval_length = 2 @@ -41,7 +41,7 @@ def poisson(signal: np.ndarray, interval_length: int, seed: int = 0) -> np.ndarr :hide: >>> import numpy as np - >>> from spikify.encoding.rate import poisson + >>> from spikify.encoders.rate import poisson >>> # Example with numpy array >>> signal = np.array([0.2, 0.5, 0.8, 1.0]) >>> interval_length = 2 diff --git a/spikify/encoding/temporal/__init__.py b/spikify/encoders/temporal/__init__.py similarity index 100% rename from spikify/encoding/temporal/__init__.py rename to spikify/encoders/temporal/__init__.py diff --git a/spikify/encoding/temporal/contrast/__init__.py b/spikify/encoders/temporal/contrast/__init__.py similarity index 100% rename from spikify/encoding/temporal/contrast/__init__.py rename to spikify/encoders/temporal/contrast/__init__.py diff --git a/spikify/encoding/temporal/contrast/moving_window_algorithm.py b/spikify/encoders/temporal/contrast/moving_window_algorithm.py similarity index 96% rename from spikify/encoding/temporal/contrast/moving_window_algorithm.py rename to spikify/encoders/temporal/contrast/moving_window_algorithm.py index f6294a9..549361d 100644 --- a/spikify/encoding/temporal/contrast/moving_window_algorithm.py +++ b/spikify/encoders/temporal/contrast/moving_window_algorithm.py @@ -25,7 +25,7 @@ def moving_window( .. code-block:: python import numpy as np - from spikify.encoding.temporal.contrast import moving_window + from spikify.encoders.temporal.contrast import moving_window signal = np.array([0.1, 0.3, 0.2, 0.5, 0.8, 1.0]) window_length = 3 threshold = 0.2 @@ -36,7 +36,7 @@ def moving_window( :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.contrast import moving_window + >>> from spikify.encoders.temporal.contrast import moving_window >>> signal = np.array([0.1, 0.3, 0.2, 0.5, 0.8, 1.0]) >>> window_length = 3 >>> threshold = 0.2 diff --git a/spikify/encoding/temporal/contrast/step_forward_algorithm.py b/spikify/encoders/temporal/contrast/step_forward_algorithm.py similarity index 96% rename from spikify/encoding/temporal/contrast/step_forward_algorithm.py rename to spikify/encoders/temporal/contrast/step_forward_algorithm.py index 5cde92f..8dfc6ef 100644 --- a/spikify/encoding/temporal/contrast/step_forward_algorithm.py +++ b/spikify/encoders/temporal/contrast/step_forward_algorithm.py @@ -22,7 +22,7 @@ def step_forward(signal: np.ndarray, threshold: float | int | list[float | int] .. code-block:: python import numpy as np - from spikify.encoding.temporal.contrast import step_forward + from spikify.encoders.temporal.contrast import step_forward signal = np.array([0.1, 0.3, 0.4, 0.2, 0.5, 0.6]) threshold = 0.2 encoded_signal = step_forward(signal, threshold) @@ -31,7 +31,7 @@ def step_forward(signal: np.ndarray, threshold: float | int | list[float | int] :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.contrast import step_forward + >>> from spikify.encoders.temporal.contrast import step_forward >>> signal = np.array([0.1, 0.3, 0.4, 0.2, 0.5, 0.6]) >>> threshold = 0.2 >>> encoded_signal = step_forward(signal, threshold) diff --git a/spikify/encoding/temporal/contrast/threshold_based_algorithm.py b/spikify/encoders/temporal/contrast/threshold_based_algorithm.py similarity index 96% rename from spikify/encoding/temporal/contrast/threshold_based_algorithm.py rename to spikify/encoders/temporal/contrast/threshold_based_algorithm.py index affe88e..1862b06 100644 --- a/spikify/encoding/temporal/contrast/threshold_based_algorithm.py +++ b/spikify/encoders/temporal/contrast/threshold_based_algorithm.py @@ -24,7 +24,7 @@ def threshold_based_representation( .. code-block:: python import numpy as np - from spikify.encoding.temporal.contrast import threshold_based_representation + from spikify.encoders.temporal.contrast import threshold_based_representation signal = np.array([0.1, 0.3, 0.4, 0.2, 0.5, 0.6]) factor = 0.5 encoded_signal, threshold = threshold_based_representation(signal, factor) @@ -33,7 +33,7 @@ def threshold_based_representation( :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.contrast import threshold_based_representation + >>> from spikify.encoders.temporal.contrast import threshold_based_representation >>> signal = np.array([0.1, 0.3, 0.4, 0.2, 0.5, 0.6]) >>> factor = 0.5 >>> encoded_signal, threshold = threshold_based_representation(signal, factor) diff --git a/spikify/encoding/temporal/contrast/zero_cross_step_forward_algorithm.py b/spikify/encoders/temporal/contrast/zero_cross_step_forward_algorithm.py similarity index 95% rename from spikify/encoding/temporal/contrast/zero_cross_step_forward_algorithm.py rename to spikify/encoders/temporal/contrast/zero_cross_step_forward_algorithm.py index aed19bb..1ce4b36 100644 --- a/spikify/encoding/temporal/contrast/zero_cross_step_forward_algorithm.py +++ b/spikify/encoders/temporal/contrast/zero_cross_step_forward_algorithm.py @@ -23,7 +23,7 @@ def zero_cross_step_forward(signal: np.ndarray, threshold: float | int | list[fl .. code-block:: python import numpy as np - from spikify.encoding.temporal.contrast import zero_cross_step_forward + from spikify.encoders.temporal.contrast import zero_cross_step_forward signal = np.array([-0.2, 0.1, 0.5, 0.0, 1.2, 0.3]) threshold = 0.4 encoded_signal = zero_cross_step_forward(signal, threshold) @@ -32,7 +32,7 @@ def zero_cross_step_forward(signal: np.ndarray, threshold: float | int | list[fl :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.contrast import zero_cross_step_forward + >>> from spikify.encoders.temporal.contrast import zero_cross_step_forward >>> signal = np.array([-0.2, 0.1, 0.5, 0.0, 1.2, 0.3]) >>> threshold = 0.4 >>> encoded_signal = zero_cross_step_forward(signal, threshold) diff --git a/spikify/encoding/temporal/deconvolution/__init__.py b/spikify/encoders/temporal/deconvolution/__init__.py similarity index 100% rename from spikify/encoding/temporal/deconvolution/__init__.py rename to spikify/encoders/temporal/deconvolution/__init__.py diff --git a/spikify/encoding/temporal/deconvolution/bens_spiker_algorithm.py b/spikify/encoders/temporal/deconvolution/bens_spiker_algorithm.py similarity index 98% rename from spikify/encoding/temporal/deconvolution/bens_spiker_algorithm.py rename to spikify/encoders/temporal/deconvolution/bens_spiker_algorithm.py index 0075faa..943f384 100644 --- a/spikify/encoding/temporal/deconvolution/bens_spiker_algorithm.py +++ b/spikify/encoders/temporal/deconvolution/bens_spiker_algorithm.py @@ -50,7 +50,7 @@ def bens_spiker( .. code-block:: python import numpy as np - from spikify.encoding.temporal.deconvolution import bens_spiker + from spikify.encoders.temporal.deconvolution import bens_spiker signal = np.array([0.1, 0.2, 0.8, 0.95, 0.5, 0.3, 0.1]) window_length = 3 threshold = 0.1 @@ -61,7 +61,7 @@ def bens_spiker( :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.deconvolution import bens_spiker + >>> from spikify.encoders.temporal.deconvolution import bens_spiker >>> signal = np.array([0.1, 0.2, 0.8, 0.95, 0.5, 0.3, 0.1]) >>> window_length = 3 >>> threshold = 0.1 diff --git a/spikify/encoding/temporal/deconvolution/hough_spiker_algorithm.py b/spikify/encoders/temporal/deconvolution/hough_spiker_algorithm.py similarity index 97% rename from spikify/encoding/temporal/deconvolution/hough_spiker_algorithm.py rename to spikify/encoders/temporal/deconvolution/hough_spiker_algorithm.py index 37388a9..b2f6438 100644 --- a/spikify/encoding/temporal/deconvolution/hough_spiker_algorithm.py +++ b/spikify/encoders/temporal/deconvolution/hough_spiker_algorithm.py @@ -42,7 +42,7 @@ def hough_spiker( .. code-block:: python import numpy as np - from spikify.encoding.temporal.deconvolution import hough_spiker + from spikify.encoders.temporal.deconvolution import hough_spiker signal = np.array([0.1, 0.2, 4.1, 1.0, 3.0, 0.3, 0.1]) window_length = 3 cutoff = 0.1 @@ -52,7 +52,7 @@ def hough_spiker( :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.deconvolution import hough_spiker + >>> from spikify.encoders.temporal.deconvolution import hough_spiker >>> signal = np.array([0.1, 0.2, 4.1, 1.0, 3.0, 0.3, 0.1]) >>> window_length = 3 >>> cutoff = 0.1 diff --git a/spikify/encoding/temporal/deconvolution/modified_hough_spiker_algorithm.py b/spikify/encoders/temporal/deconvolution/modified_hough_spiker_algorithm.py similarity index 98% rename from spikify/encoding/temporal/deconvolution/modified_hough_spiker_algorithm.py rename to spikify/encoders/temporal/deconvolution/modified_hough_spiker_algorithm.py index e993357..fdc78e7 100644 --- a/spikify/encoding/temporal/deconvolution/modified_hough_spiker_algorithm.py +++ b/spikify/encoders/temporal/deconvolution/modified_hough_spiker_algorithm.py @@ -49,7 +49,7 @@ def modified_hough_spiker( .. code-block:: python import numpy as np - from spikify.encoding.temporal.deconvolution import modified_hough_spiker + from spikify.encoders.temporal.deconvolution import modified_hough_spiker signal = np.array([0.1, 0.2, 0.3, 1.0, 0.5, 0.3, 0.1]) window_length = 3 threshold = 0.5 @@ -60,7 +60,7 @@ def modified_hough_spiker( :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.deconvolution import modified_hough_spiker + >>> from spikify.encoders.temporal.deconvolution import modified_hough_spiker >>> signal = np.array([0.1, 0.2, 0.3, 1.0, 0.5, 0.3, 0.1]) >>> window_length = 3 >>> threshold = 0.5 diff --git a/spikify/encoding/temporal/deconvolution/utils.py b/spikify/encoders/temporal/deconvolution/utils.py similarity index 100% rename from spikify/encoding/temporal/deconvolution/utils.py rename to spikify/encoders/temporal/deconvolution/utils.py diff --git a/spikify/encoding/temporal/global_referenced/__init__.py b/spikify/encoders/temporal/global_referenced/__init__.py similarity index 100% rename from spikify/encoding/temporal/global_referenced/__init__.py rename to spikify/encoders/temporal/global_referenced/__init__.py diff --git a/spikify/encoding/temporal/global_referenced/phase_encoding_algorithm.py b/spikify/encoders/temporal/global_referenced/phase_encoding_algorithm.py similarity index 96% rename from spikify/encoding/temporal/global_referenced/phase_encoding_algorithm.py rename to spikify/encoders/temporal/global_referenced/phase_encoding_algorithm.py index 2eec50d..2aaf40d 100644 --- a/spikify/encoding/temporal/global_referenced/phase_encoding_algorithm.py +++ b/spikify/encoders/temporal/global_referenced/phase_encoding_algorithm.py @@ -27,7 +27,7 @@ def phase(signal: np.ndarray, num_bits: int) -> np.ndarray: .. code-block:: python import numpy as np - from spikify.encoding.temporal.global_referenced import phase + from spikify.encoders.temporal.global_referenced import phase signal = np.array([0.1, 0.2, 0.3, 1.0, 0.5, 0.3, 0.1, 0.2]) num_bits = 4 encoded_signal = phase(signal, num_bits) @@ -37,7 +37,7 @@ def phase(signal: np.ndarray, num_bits: int) -> np.ndarray: :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.global_referenced import phase + >>> from spikify.encoders.temporal.global_referenced import phase >>> signal = np.array([0.1, 0.2, 0.3, 1.0, 0.5, 0.3, 0.1, 0.2]) >>> num_bits = 4 >>> encoded_signal = phase(signal, num_bits) diff --git a/spikify/encoding/temporal/global_referenced/time_to_first_spike_algorithm.py b/spikify/encoders/temporal/global_referenced/time_to_first_spike_algorithm.py similarity index 96% rename from spikify/encoding/temporal/global_referenced/time_to_first_spike_algorithm.py rename to spikify/encoders/temporal/global_referenced/time_to_first_spike_algorithm.py index f4c6c87..ccc430a 100644 --- a/spikify/encoding/temporal/global_referenced/time_to_first_spike_algorithm.py +++ b/spikify/encoders/temporal/global_referenced/time_to_first_spike_algorithm.py @@ -32,7 +32,7 @@ def time_to_first_spike(signal: np.ndarray, interval_length: int) -> np.ndarray: .. code-block:: python import numpy as np - from spikify.encoding.temporal.global_referenced import time_to_first_spike + from spikify.encoders.temporal.global_referenced import time_to_first_spike signal = np.array([0.1, 0.2, 0.3, 1.0, 0.5, 0.3, 0.1, 0.2]) interval_length = 4 encoded_signal = time_to_first_spike(signal, interval_length) @@ -41,7 +41,7 @@ def time_to_first_spike(signal: np.ndarray, interval_length: int) -> np.ndarray: :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.global_referenced import time_to_first_spike + >>> from spikify.encoders.temporal.global_referenced import time_to_first_spike >>> signal = np.array([0.1, 0.2, 0.3, 1.0, 0.5, 0.3, 0.1, 0.2]) >>> interval_length = 4 >>> encoded_signal = time_to_first_spike(signal, interval_length) diff --git a/spikify/encoding/temporal/latency/__init__.py b/spikify/encoders/temporal/latency/__init__.py similarity index 100% rename from spikify/encoding/temporal/latency/__init__.py rename to spikify/encoders/temporal/latency/__init__.py diff --git a/spikify/encoding/temporal/latency/burst_coding_algorithm.py b/spikify/encoders/temporal/latency/burst_coding_algorithm.py similarity index 97% rename from spikify/encoding/temporal/latency/burst_coding_algorithm.py rename to spikify/encoders/temporal/latency/burst_coding_algorithm.py index 22808c5..09dd822 100644 --- a/spikify/encoding/temporal/latency/burst_coding_algorithm.py +++ b/spikify/encoders/temporal/latency/burst_coding_algorithm.py @@ -36,7 +36,7 @@ def burst_coding(signal: np.ndarray, n_max: int, t_min: int, t_max: int, interva .. code-block:: python import numpy as np - from spikify.encoding.temporal.latency import burst_coding + from spikify.encoders.temporal.latency import burst_coding np.random.seed(42) signal = np.random.rand(16) n_max = 4 @@ -50,7 +50,7 @@ def burst_coding(signal: np.ndarray, n_max: int, t_min: int, t_max: int, interva :hide: >>> import numpy as np - >>> from spikify.encoding.temporal.latency import burst_coding + >>> from spikify.encoders.temporal.latency import burst_coding >>> np.random.seed(42) >>> signal = np.random.rand(16) >>> n_max = 4 diff --git a/spikify/encoding/__init__.py b/spikify/encoding/__init__.py deleted file mode 100644 index 85ff2cb..0000000 --- a/spikify/encoding/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Encoding package.""" diff --git a/spikify/filtering/__init__.py b/spikify/filters/__init__.py similarity index 71% rename from spikify/filtering/__init__.py rename to spikify/filters/__init__.py index 9c4e0e4..4ec3fbf 100644 --- a/spikify/filtering/__init__.py +++ b/spikify/filters/__init__.py @@ -1,4 +1,4 @@ -"""Filtering package.""" +"""Filters package.""" from .filterbank import FilterBank diff --git a/spikify/filtering/filterbank.py b/spikify/filters/filterbank.py similarity index 98% rename from spikify/filtering/filterbank.py rename to spikify/filters/filterbank.py index a2e64cc..b721c61 100644 --- a/spikify/filtering/filterbank.py +++ b/spikify/filters/filterbank.py @@ -17,7 +17,7 @@ class FilterBank(ABC): .. code-block:: python import numpy as np - from spikify.filtering import FilterBank + from spikify.filters import FilterBank fs = 1000 signal = np.random.randn(1000) filterbank = FilterBank(fs=fs, channels=4, f_min=100, f_max=800, order=2) @@ -27,7 +27,7 @@ class FilterBank(ABC): :hide: >>> import numpy as np - >>> from spikify.filtering.filterbank import FilterBank + >>> from spikify.filters.filterbank import FilterBank >>> fs = 1000 >>> signal = np.random.randn(1000) >>> filterbank = FilterBank(fs=fs, channels=4, f_min=100, f_max=800, order=2) diff --git a/tests/encoding/__init__.py b/tests/encoders/__init__.py similarity index 100% rename from tests/encoding/__init__.py rename to tests/encoders/__init__.py diff --git a/tests/encoding/rate/__init__.py b/tests/encoders/rate/__init__.py similarity index 100% rename from tests/encoding/rate/__init__.py rename to tests/encoders/rate/__init__.py diff --git a/tests/encoding/rate/test_poisson.py b/tests/encoders/rate/test_poisson.py similarity index 98% rename from tests/encoding/rate/test_poisson.py rename to tests/encoders/rate/test_poisson.py index af201b0..6320575 100644 --- a/tests/encoding/rate/test_poisson.py +++ b/tests/encoders/rate/test_poisson.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.rate.poisson_algorithm import poisson +from spikify.encoders.rate.poisson_algorithm import poisson class TestPoissonRateEncoding(unittest.TestCase): diff --git a/tests/encoding/temporal/contrast/test_moving_window.py b/tests/encoders/temporal/contrast/test_moving_window.py similarity index 98% rename from tests/encoding/temporal/contrast/test_moving_window.py rename to tests/encoders/temporal/contrast/test_moving_window.py index ce115f4..2e8476a 100644 --- a/tests/encoding/temporal/contrast/test_moving_window.py +++ b/tests/encoders/temporal/contrast/test_moving_window.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.contrast.moving_window_algorithm import moving_window +from spikify.encoders.temporal.contrast.moving_window_algorithm import moving_window class TestMovingWindow(unittest.TestCase): diff --git a/tests/encoding/temporal/contrast/test_step_forward.py b/tests/encoders/temporal/contrast/test_step_forward.py similarity index 98% rename from tests/encoding/temporal/contrast/test_step_forward.py rename to tests/encoders/temporal/contrast/test_step_forward.py index ec2f02e..7e81030 100644 --- a/tests/encoding/temporal/contrast/test_step_forward.py +++ b/tests/encoders/temporal/contrast/test_step_forward.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.contrast.step_forward_algorithm import step_forward +from spikify.encoders.temporal.contrast.step_forward_algorithm import step_forward class TestStepForward(unittest.TestCase): diff --git a/tests/encoding/temporal/contrast/test_threshold_based.py b/tests/encoders/temporal/contrast/test_threshold_based.py similarity index 98% rename from tests/encoding/temporal/contrast/test_threshold_based.py rename to tests/encoders/temporal/contrast/test_threshold_based.py index c8176d8..7a2d2ec 100644 --- a/tests/encoding/temporal/contrast/test_threshold_based.py +++ b/tests/encoders/temporal/contrast/test_threshold_based.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.contrast.threshold_based_algorithm import threshold_based_representation +from spikify.encoders.temporal.contrast.threshold_based_algorithm import threshold_based_representation class TestThresholdBasedRepresentation(unittest.TestCase): diff --git a/tests/encoding/temporal/contrast/test_zero_cross_step_forward.py b/tests/encoders/temporal/contrast/test_zero_cross_step_forward.py similarity index 98% rename from tests/encoding/temporal/contrast/test_zero_cross_step_forward.py rename to tests/encoders/temporal/contrast/test_zero_cross_step_forward.py index 5fd8893..866c515 100644 --- a/tests/encoding/temporal/contrast/test_zero_cross_step_forward.py +++ b/tests/encoders/temporal/contrast/test_zero_cross_step_forward.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.contrast.zero_cross_step_forward_algorithm import zero_cross_step_forward +from spikify.encoders.temporal.contrast.zero_cross_step_forward_algorithm import zero_cross_step_forward class TestZeroCrossStepForward(unittest.TestCase): diff --git a/tests/encoding/temporal/deconvolution/test_ben_spiker.py b/tests/encoders/temporal/deconvolution/test_ben_spiker.py similarity index 99% rename from tests/encoding/temporal/deconvolution/test_ben_spiker.py rename to tests/encoders/temporal/deconvolution/test_ben_spiker.py index e717a15..efada42 100644 --- a/tests/encoding/temporal/deconvolution/test_ben_spiker.py +++ b/tests/encoders/temporal/deconvolution/test_ben_spiker.py @@ -1,4 +1,4 @@ -from spikify.encoding.temporal.deconvolution.bens_spiker_algorithm import bens_spiker +from spikify.encoders.temporal.deconvolution.bens_spiker_algorithm import bens_spiker import unittest import numpy as np diff --git a/tests/encoding/temporal/deconvolution/test_hough_spiker.py b/tests/encoders/temporal/deconvolution/test_hough_spiker.py similarity index 99% rename from tests/encoding/temporal/deconvolution/test_hough_spiker.py rename to tests/encoders/temporal/deconvolution/test_hough_spiker.py index 6326246..b60075a 100644 --- a/tests/encoding/temporal/deconvolution/test_hough_spiker.py +++ b/tests/encoders/temporal/deconvolution/test_hough_spiker.py @@ -1,4 +1,4 @@ -from spikify.encoding.temporal.deconvolution.hough_spiker_algorithm import hough_spiker +from spikify.encoders.temporal.deconvolution.hough_spiker_algorithm import hough_spiker import unittest import numpy as np diff --git a/tests/encoding/temporal/deconvolution/test_modified_hough_spiker.py b/tests/encoders/temporal/deconvolution/test_modified_hough_spiker.py similarity index 99% rename from tests/encoding/temporal/deconvolution/test_modified_hough_spiker.py rename to tests/encoders/temporal/deconvolution/test_modified_hough_spiker.py index 50af3c5..1f88642 100644 --- a/tests/encoding/temporal/deconvolution/test_modified_hough_spiker.py +++ b/tests/encoders/temporal/deconvolution/test_modified_hough_spiker.py @@ -1,4 +1,4 @@ -from spikify.encoding.temporal.deconvolution.modified_hough_spiker_algorithm import modified_hough_spiker +from spikify.encoders.temporal.deconvolution.modified_hough_spiker_algorithm import modified_hough_spiker import unittest import numpy as np diff --git a/tests/encoding/temporal/global_referenced/test_phase_encoding.py b/tests/encoders/temporal/global_referenced/test_phase_encoding.py similarity index 97% rename from tests/encoding/temporal/global_referenced/test_phase_encoding.py rename to tests/encoders/temporal/global_referenced/test_phase_encoding.py index c1f67f4..8c24bad 100644 --- a/tests/encoding/temporal/global_referenced/test_phase_encoding.py +++ b/tests/encoders/temporal/global_referenced/test_phase_encoding.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.global_referenced.phase_encoding_algorithm import ( +from spikify.encoders.temporal.global_referenced.phase_encoding_algorithm import ( phase, ) diff --git a/tests/encoding/temporal/global_referenced/test_time_to_first_spike.py b/tests/encoders/temporal/global_referenced/test_time_to_first_spike.py similarity index 98% rename from tests/encoding/temporal/global_referenced/test_time_to_first_spike.py rename to tests/encoders/temporal/global_referenced/test_time_to_first_spike.py index 7c72ce8..affc689 100644 --- a/tests/encoding/temporal/global_referenced/test_time_to_first_spike.py +++ b/tests/encoders/temporal/global_referenced/test_time_to_first_spike.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.global_referenced.time_to_first_spike_algorithm import ( +from spikify.encoders.temporal.global_referenced.time_to_first_spike_algorithm import ( time_to_first_spike, ) diff --git a/tests/encoding/temporal/latency/test_burst_coding.py b/tests/encoders/temporal/latency/test_burst_coding.py similarity index 98% rename from tests/encoding/temporal/latency/test_burst_coding.py rename to tests/encoders/temporal/latency/test_burst_coding.py index 9ae88ad..bf51645 100644 --- a/tests/encoding/temporal/latency/test_burst_coding.py +++ b/tests/encoders/temporal/latency/test_burst_coding.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.encoding.temporal.latency.burst_coding_algorithm import burst_coding +from spikify.encoders.temporal.latency.burst_coding_algorithm import burst_coding class TestBurstCoding(unittest.TestCase): diff --git a/tests/filtering/__init__.py b/tests/filters/__init__.py similarity index 100% rename from tests/filtering/__init__.py rename to tests/filters/__init__.py diff --git a/tests/filtering/test_filterbank.py b/tests/filters/test_filterbank.py similarity index 99% rename from tests/filtering/test_filterbank.py rename to tests/filters/test_filterbank.py index 926fd88..b62744e 100644 --- a/tests/filtering/test_filterbank.py +++ b/tests/filters/test_filterbank.py @@ -1,6 +1,6 @@ import unittest import numpy as np -from spikify.filtering import FilterBank +from spikify.filters import FilterBank class TestFilterBank(unittest.TestCase): From 10b9182b9df157718e5cfe023b6ed1698ef14e88 Mon Sep 17 00:00:00 2001 From: benedettoleto Date: Tue, 14 Apr 2026 13:26:14 +0200 Subject: [PATCH 2/2] docs: enhace doc and rename paths according to the new module renaming --- codecov.yml | 4 +-- .../python/{encoding => encoders}/index.rst | 4 +-- .../rate_coding/index.rst | 0 .../rate_coding/poisson.rst | 0 .../temporal_coding/contrast/index.rst | 0 .../contrast/moving_window.rst | 0 .../temporal_coding/contrast/step_forward.rst | 0 .../contrast/threshold_based.rst | 0 .../contrast/zero_cross_step_forward.rst | 0 .../deconvolution/ben_spiker.rst | 0 .../deconvolution/hough_spiker.rst | 0 .../temporal_coding/deconvolution/index.rst | 0 .../deconvolution/modified_hough_spiker.rst | 0 .../global_referenced/index.rst | 0 .../global_referenced/phase_encoding.rst | 0 .../global_referenced/time_to_first_spike.rst | 0 .../temporal_coding/index.rst | 0 .../temporal_coding/latency/burst_coding.rst | 0 .../temporal_coding/latency/index.rst | 0 docs/api/python/filtering/index.rst | 12 --------- .../{filtering => filters}/filterbank.rst | 0 docs/api/python/filters/index.rst | 12 +++++++++ docs/api/python/index.rst | 4 +-- docs/spikify/filters/index.rst | 25 +++++++------------ 24 files changed, 27 insertions(+), 34 deletions(-) rename docs/api/python/{encoding => encoders}/index.rst (87%) rename docs/api/python/{encoding => encoders}/rate_coding/index.rst (100%) rename docs/api/python/{encoding => encoders}/rate_coding/poisson.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/contrast/index.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/contrast/moving_window.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/contrast/step_forward.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/contrast/threshold_based.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/contrast/zero_cross_step_forward.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/deconvolution/ben_spiker.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/deconvolution/hough_spiker.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/deconvolution/index.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/deconvolution/modified_hough_spiker.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/global_referenced/index.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/global_referenced/phase_encoding.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/global_referenced/time_to_first_spike.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/index.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/latency/burst_coding.rst (100%) rename docs/api/python/{encoding => encoders}/temporal_coding/latency/index.rst (100%) delete mode 100644 docs/api/python/filtering/index.rst rename docs/api/python/{filtering => filters}/filterbank.rst (100%) create mode 100644 docs/api/python/filters/index.rst diff --git a/codecov.yml b/codecov.yml index 43d2d4d..e60be6e 100644 --- a/codecov.yml +++ b/codecov.yml @@ -49,8 +49,8 @@ component_management: - "spikify/encoders/rate/**" - "tests/encoders/rate/**" - - component_id: filtering - name: Filtering + - component_id: filters + name: Filters paths: - "spikify/filters/**" - "tests/filters/**" diff --git a/docs/api/python/encoding/index.rst b/docs/api/python/encoders/index.rst similarity index 87% rename from docs/api/python/encoding/index.rst rename to docs/api/python/encoders/index.rst index 1cf37f6..319122e 100644 --- a/docs/api/python/encoding/index.rst +++ b/docs/api/python/encoders/index.rst @@ -1,9 +1,9 @@ .. _encoding: -:octicon:`file-directory;0.9em;sd-mr-1 fill-primary` encoding +:octicon:`file-directory;0.9em;sd-mr-1 fill-primary` encoders ============================================================= -The ``encoding`` folder within the spikify library contains the essential components for converting raw data into spike trains, a fundamental step in spiking neural networks. This section is organized to reflect the primary structure of the encoding algorithms included in the library: +The ``encoders`` module within the spikify library contains the essential components for converting raw data into spike trains, a fundamental step in spiking neural networks. This section is organized to reflect the primary structure of the encoding algorithms included in the library: - **Rate Coding**: Contains algorithms that convert the intensity of input signals into spike frequency. - **Temporal Coding**: Encloses algorithms that encode data based on the precise timing of spikes. diff --git a/docs/api/python/encoding/rate_coding/index.rst b/docs/api/python/encoders/rate_coding/index.rst similarity index 100% rename from docs/api/python/encoding/rate_coding/index.rst rename to docs/api/python/encoders/rate_coding/index.rst diff --git a/docs/api/python/encoding/rate_coding/poisson.rst b/docs/api/python/encoders/rate_coding/poisson.rst similarity index 100% rename from docs/api/python/encoding/rate_coding/poisson.rst rename to docs/api/python/encoders/rate_coding/poisson.rst diff --git a/docs/api/python/encoding/temporal_coding/contrast/index.rst b/docs/api/python/encoders/temporal_coding/contrast/index.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/contrast/index.rst rename to docs/api/python/encoders/temporal_coding/contrast/index.rst diff --git a/docs/api/python/encoding/temporal_coding/contrast/moving_window.rst b/docs/api/python/encoders/temporal_coding/contrast/moving_window.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/contrast/moving_window.rst rename to docs/api/python/encoders/temporal_coding/contrast/moving_window.rst diff --git a/docs/api/python/encoding/temporal_coding/contrast/step_forward.rst b/docs/api/python/encoders/temporal_coding/contrast/step_forward.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/contrast/step_forward.rst rename to docs/api/python/encoders/temporal_coding/contrast/step_forward.rst diff --git a/docs/api/python/encoding/temporal_coding/contrast/threshold_based.rst b/docs/api/python/encoders/temporal_coding/contrast/threshold_based.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/contrast/threshold_based.rst rename to docs/api/python/encoders/temporal_coding/contrast/threshold_based.rst diff --git a/docs/api/python/encoding/temporal_coding/contrast/zero_cross_step_forward.rst b/docs/api/python/encoders/temporal_coding/contrast/zero_cross_step_forward.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/contrast/zero_cross_step_forward.rst rename to docs/api/python/encoders/temporal_coding/contrast/zero_cross_step_forward.rst diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/ben_spiker.rst b/docs/api/python/encoders/temporal_coding/deconvolution/ben_spiker.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/deconvolution/ben_spiker.rst rename to docs/api/python/encoders/temporal_coding/deconvolution/ben_spiker.rst diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/hough_spiker.rst b/docs/api/python/encoders/temporal_coding/deconvolution/hough_spiker.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/deconvolution/hough_spiker.rst rename to docs/api/python/encoders/temporal_coding/deconvolution/hough_spiker.rst diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/index.rst b/docs/api/python/encoders/temporal_coding/deconvolution/index.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/deconvolution/index.rst rename to docs/api/python/encoders/temporal_coding/deconvolution/index.rst diff --git a/docs/api/python/encoding/temporal_coding/deconvolution/modified_hough_spiker.rst b/docs/api/python/encoders/temporal_coding/deconvolution/modified_hough_spiker.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/deconvolution/modified_hough_spiker.rst rename to docs/api/python/encoders/temporal_coding/deconvolution/modified_hough_spiker.rst diff --git a/docs/api/python/encoding/temporal_coding/global_referenced/index.rst b/docs/api/python/encoders/temporal_coding/global_referenced/index.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/global_referenced/index.rst rename to docs/api/python/encoders/temporal_coding/global_referenced/index.rst diff --git a/docs/api/python/encoding/temporal_coding/global_referenced/phase_encoding.rst b/docs/api/python/encoders/temporal_coding/global_referenced/phase_encoding.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/global_referenced/phase_encoding.rst rename to docs/api/python/encoders/temporal_coding/global_referenced/phase_encoding.rst diff --git a/docs/api/python/encoding/temporal_coding/global_referenced/time_to_first_spike.rst b/docs/api/python/encoders/temporal_coding/global_referenced/time_to_first_spike.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/global_referenced/time_to_first_spike.rst rename to docs/api/python/encoders/temporal_coding/global_referenced/time_to_first_spike.rst diff --git a/docs/api/python/encoding/temporal_coding/index.rst b/docs/api/python/encoders/temporal_coding/index.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/index.rst rename to docs/api/python/encoders/temporal_coding/index.rst diff --git a/docs/api/python/encoding/temporal_coding/latency/burst_coding.rst b/docs/api/python/encoders/temporal_coding/latency/burst_coding.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/latency/burst_coding.rst rename to docs/api/python/encoders/temporal_coding/latency/burst_coding.rst diff --git a/docs/api/python/encoding/temporal_coding/latency/index.rst b/docs/api/python/encoders/temporal_coding/latency/index.rst similarity index 100% rename from docs/api/python/encoding/temporal_coding/latency/index.rst rename to docs/api/python/encoders/temporal_coding/latency/index.rst diff --git a/docs/api/python/filtering/index.rst b/docs/api/python/filtering/index.rst deleted file mode 100644 index 4990210..0000000 --- a/docs/api/python/filtering/index.rst +++ /dev/null @@ -1,12 +0,0 @@ -.. _filtering: - -:octicon:`file-directory;0.9em;sd-mr-1 fill-primary` filtering -================================================================= - -The **filtering** module in the **spikify** library is designed to provide advanced filtering techniques inspired by biological systems. These filters enhance the quality of spike trains by pre-processing the raw data before encoding. - - -.. toctree:: - :maxdepth: 1 - - filterbank \ No newline at end of file diff --git a/docs/api/python/filtering/filterbank.rst b/docs/api/python/filters/filterbank.rst similarity index 100% rename from docs/api/python/filtering/filterbank.rst rename to docs/api/python/filters/filterbank.rst diff --git a/docs/api/python/filters/index.rst b/docs/api/python/filters/index.rst new file mode 100644 index 0000000..4087b90 --- /dev/null +++ b/docs/api/python/filters/index.rst @@ -0,0 +1,12 @@ +.. _filtering: + +:octicon:`file-directory;0.9em;sd-mr-1 fill-primary` filters +================================================================= + +The ``filters`` module in the **spikify** library is designed to provide advanced filtering techniques inspired by biological systems. These filters enhance the quality of spike trains by pre-processing the raw data before encoding. + + +.. toctree:: + :maxdepth: 1 + + filterbank \ No newline at end of file diff --git a/docs/api/python/index.rst b/docs/api/python/index.rst index 8f4ed28..c464368 100644 --- a/docs/api/python/index.rst +++ b/docs/api/python/index.rst @@ -19,5 +19,5 @@ Below, you will find links to the specific modules within the Python API: .. toctree:: :maxdepth: 1 - filtering/index - encoding/index + filters/index + encoders/index diff --git a/docs/spikify/filters/index.rst b/docs/spikify/filters/index.rst index 61b3a9c..ca234a1 100644 --- a/docs/spikify/filters/index.rst +++ b/docs/spikify/filters/index.rst @@ -3,23 +3,16 @@ Filtering ========= -The **filtering** module in the **spikify** library is designed to mimic natural filtering mechanisms found in biological systems, offering advanced pre-processing techniques for time-varying signals. +Preprocessing tools for conditioning time-varying signals before spike encoding. +Frequency decomposition techniques inspired by biological sensory systems break down input signals into multiple frequency channels to improve spike train quality and encoding performance. -Filtering Techniques ---------------------- +Filter Types +------------ -In **spikify**, the filtering approach includes: +- **Gammatone**: Bandpass filterbank approximating the frequency selectivity of the basilar membrane. Suitable for audio and speech signals where cochlear-like decomposition is required. +- **Butterworth**: IIR filterbank with a maximally flat passband response. Suitable for general-purpose signal conditioning and noise attenuation prior to encoding. -- **Frequency Decomposition**: The filtering techniques break down time-varying signals into multiple frequency components. -- **Advanced Filters**: Techniques such as Gammatone and Butterworth filters are used to split the signal into different channels, each corresponding to a specific frequency range. +Each filter can be configured with parameters such as center frequency, bandwidth, and order. All filters are +implemented as filter banks, decomposing the input signal into multiple frequency channels simultaneously. -Filter Types Used ------------------- - -- **Gammatone Filters**: These filters are inspired by the human auditory system and are effective for modeling cochlear frequency selectivity. They are commonly used in audio and speech processing to simulate how biological systems separate sounds. -- **Butterworth Filters**: Known for their maximally flat frequency response in the passband, Butterworth filters are used to cleanly separate signal components without introducing ripples, making them suitable for general-purpose signal filtering. -- **Custom Filter Banks**: The module also supports configurable filter banks, allowing users to tailor the frequency decomposition to specific application needs. - -Each filter type can be configured with parameters such as center frequency, bandwidth, and order, providing flexibility for a wide range of signal processing tasks. - -For details on how to implement these filters in Python, including examples of configuring Gammatone, Butterworth, and custom filter banks, refer to the :ref:`FilterBank ` documentation. \ No newline at end of file +For implementation details and usage examples, refer to the :ref:`FilterBank ` documentation. \ No newline at end of file