pyrception 0.2.4__py3-none-any.whl → 0.2.5__py3-none-any.whl

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.
@@ -0,0 +1,110 @@
1
+ Metadata-Version: 2.4
2
+ Name: pyrception
3
+ Version: 0.2.5
4
+ Author: Alexander Hadjiivanov
5
+ Requires-Python: >=3.11
6
+ Description-Content-Type: text/markdown
7
+ License-File: LICENCE.md
8
+ Requires-Dist: av
9
+ Requires-Dist: black
10
+ Requires-Dist: h5py
11
+ Requires-Dist: imageio[ffmpeg]
12
+ Requires-Dist: ipykernel
13
+ Requires-Dist: ipywidgets
14
+ Requires-Dist: loguru
15
+ Requires-Dist: matplotlib
16
+ Requires-Dist: numpy
17
+ Requires-Dist: opencv-python
18
+ Requires-Dist: plotly[express]
19
+ Requires-Dist: pydantic-settings
20
+ Requires-Dist: rich
21
+ Requires-Dist: ruff
22
+ Requires-Dist: scikit-image
23
+ Requires-Dist: scipy
24
+ Requires-Dist: tqdm
25
+ Provides-Extra: gui
26
+ Requires-Dist: pyqtgraph; extra == "gui"
27
+ Requires-Dist: PySide6; extra == "gui"
28
+ Provides-Extra: cli
29
+ Requires-Dist: cloup; extra == "cli"
30
+ Provides-Extra: events
31
+ Requires-Dist: tonic; extra == "events"
32
+ Provides-Extra: dev
33
+ Requires-Dist: py-spy; extra == "dev"
34
+ Provides-Extra: docs
35
+ Requires-Dist: mike; extra == "docs"
36
+ Requires-Dist: mkdocs-jupyter; extra == "docs"
37
+ Requires-Dist: mkdocs-material; extra == "docs"
38
+ Requires-Dist: mkdocs; extra == "docs"
39
+ Requires-Dist: mkdocstrings[python]; extra == "docs"
40
+ Dynamic: license-file
41
+
42
+ [![PyPI - Version](https://img.shields.io/pypi/v/pyrception)](https://pypi.org/project/pyrception/)
43
+ [![Read The Docs](https://readthedocs.org/projects/pyrception/badge/?version=latest)](https://pyrception.readthedocs.io/en/latest/)
44
+
45
+ # Overview
46
+ Pyrception is a simulation framework for bio-plausible simulation of perceptual modalities. Currently, it supports visual pathways of the mammalian retina, but the long-term goal is to support modalities such as auditory, olfactory and so forth. It can also serve as an input conversion library for encoding raw multimodal sensory input into a uniform spike train suitable for processing with spiking neural networks.
47
+
48
+ ## Installation
49
+
50
+ You can install Pyrception from PyPI:
51
+
52
+ ```shell
53
+ pip install pyrception
54
+ ```
55
+
56
+ or directly from GitHub (optionally in development mode):
57
+
58
+ ```shell
59
+ git clone git@github.com:cantordust/pyrception.git
60
+ cd pyrception
61
+ pip install -e .
62
+ ```
63
+
64
+ ## Usage
65
+
66
+ Please refer to the [documentation](#documentation), which contains a [step-by-step notebook](docs/docs/notebooks/image.ipynb) demonstrating how to use `pyrception` with a static image. More notebooks are currently being developed, including frame-based RGB input and sparse event input from an event camera. Watch this space.
67
+
68
+ ## Documentation
69
+
70
+ To generate the documentation, run the MkDocs build pipeline. Note that to build and view the documentation locally, you have to install `pyrception` from GitHub with the optional `docs` modifier:
71
+
72
+ ```shell
73
+ pip install -e .[dev]
74
+ cd docs
75
+ mkdocs build
76
+ ```
77
+
78
+ Then, to view the documentation locally, start the MkDocs server:
79
+
80
+ ```shell
81
+ mkdocs serve
82
+ ```
83
+
84
+ # ToDo
85
+
86
+ ## Short-term
87
+ ### Visual package
88
+ - [X] All major types of retinal cells.
89
+ - [X] Receptors (raw input, Weber's law).
90
+ - [X] Horizontal cells (mean local brightness, normalising feedback).
91
+ - [X] Bipolar cells (positive and negative contrast, temporal filter, excitatory input to ganglion cells).
92
+ - [X] Amacrine cells (inhibitory input to ganglion cells, modulatory signal to bipolar cells).
93
+ - [X] Ganglion cells (spiking).
94
+ - [X] Logpolar kernel arrangement.
95
+ - [X] Uniform or Gaussian kernels.
96
+ - [X] Arbitrary kernel, size, shape and orientation.
97
+ - [ ] Saccadic movements [WIP].
98
+ - [ ] Colour vision (with colour opponency) [WIP].
99
+ - [ ] Temporal dynamics [WIP].
100
+ - [ ] Events as input [WIP].
101
+
102
+ ### Auditory package
103
+ WIP.
104
+
105
+ ### Olfactory package
106
+ WIP.
107
+
108
+ ### Overall functionality
109
+ - [WIP] Support alternative backends for sparse matrix operations ([CuPy](https://cupy.dev/), [PyTorch](https://pytorch.org/docs/stable/sparse.html), [Sparse](https://sparse.pydata.org/en/stable/)).
110
+ - [ ] Interfacing with (neuromorphic) hardware, such as event cameras.
@@ -0,0 +1,7 @@
1
+ pyrception/__init__.py,sha256=yuzv-s7yWdKB90PRjirO0VbR4cnUJR4k3gIQDVn62ao,699
2
+ pyrception-0.2.5.dist-info/licenses/LICENCE.md,sha256=sMjXzdudBXMsZj3NRSrmovs-xqcYWRmpwUkZmuD8zhA,1070
3
+ pyrception-0.2.5.dist-info/METADATA,sha256=-2UCKzYCSfmZaSCX-rfm9nOctX6BI0kIsHwqxyEZkEg,3812
4
+ pyrception-0.2.5.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
5
+ pyrception-0.2.5.dist-info/entry_points.txt,sha256=otFE1Ls0p9Hrb4dXjIRruuSLaUFjsKJDjf9R0tDUxmw,55
6
+ pyrception-0.2.5.dist-info/top_level.txt,sha256=0BQnVt58i3lOTA_eEir2Fz2KxDcruQoBmMAxgMWlfrU,11
7
+ pyrception-0.2.5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: setuptools (78.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,38 +0,0 @@
1
- Metadata-Version: 2.2
2
- Name: pyrception
3
- Version: 0.2.4
4
- Author: Alexander Hadjiivanov
5
- Requires-Python: >=3.11
6
- License-File: LICENCE.md
7
- Requires-Dist: av
8
- Requires-Dist: black
9
- Requires-Dist: h5py
10
- Requires-Dist: imageio[ffmpeg]
11
- Requires-Dist: ipykernel
12
- Requires-Dist: ipywidgets
13
- Requires-Dist: loguru
14
- Requires-Dist: matplotlib
15
- Requires-Dist: numpy
16
- Requires-Dist: opencv-python
17
- Requires-Dist: plotly[express]
18
- Requires-Dist: pydantic-settings
19
- Requires-Dist: rich
20
- Requires-Dist: ruff
21
- Requires-Dist: scikit-image
22
- Requires-Dist: scipy
23
- Requires-Dist: tqdm
24
- Provides-Extra: gui
25
- Requires-Dist: pyqtgraph; extra == "gui"
26
- Requires-Dist: PySide6; extra == "gui"
27
- Provides-Extra: cli
28
- Requires-Dist: cloup; extra == "cli"
29
- Provides-Extra: events
30
- Requires-Dist: tonic; extra == "events"
31
- Provides-Extra: dev
32
- Requires-Dist: py-spy; extra == "dev"
33
- Provides-Extra: docs
34
- Requires-Dist: mike; extra == "docs"
35
- Requires-Dist: mkdocs-jupyter; extra == "docs"
36
- Requires-Dist: mkdocs-material; extra == "docs"
37
- Requires-Dist: mkdocs; extra == "docs"
38
- Requires-Dist: mkdocstrings[python]; extra == "docs"
@@ -1,7 +0,0 @@
1
- pyrception/__init__.py,sha256=yuzv-s7yWdKB90PRjirO0VbR4cnUJR4k3gIQDVn62ao,699
2
- pyrception-0.2.4.dist-info/LICENCE.md,sha256=sMjXzdudBXMsZj3NRSrmovs-xqcYWRmpwUkZmuD8zhA,1070
3
- pyrception-0.2.4.dist-info/METADATA,sha256=7tqh2OZCH1TT_rTvK_jsYNUlvJT09wU6s-VMS75Uddo,1068
4
- pyrception-0.2.4.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
5
- pyrception-0.2.4.dist-info/entry_points.txt,sha256=otFE1Ls0p9Hrb4dXjIRruuSLaUFjsKJDjf9R0tDUxmw,55
6
- pyrception-0.2.4.dist-info/top_level.txt,sha256=0BQnVt58i3lOTA_eEir2Fz2KxDcruQoBmMAxgMWlfrU,11
7
- pyrception-0.2.4.dist-info/RECORD,,