|
1 | 1 | About |
2 | 2 | ===== |
3 | 3 |
|
| 4 | +Project |
| 5 | +------- |
| 6 | + |
4 | 7 | PySDKit collects **signal decomposition** algorithms in one Python |
5 | 8 | package so they can be used as feature-engineering tools next to NumPy, |
6 | | -SciPy, and machine-learning stacks. |
| 9 | +SciPy, and machine-learning stacks. A non-stationary recording is |
| 10 | +treated as a sum of simpler modes; those modes can be plotted, scored |
| 11 | +(for example with entropy), or passed to a downstream model through the |
| 12 | +same ``fit_transform`` style as scikit-learn. |
| 13 | + |
| 14 | +The public API is **mode extraction**: EMD-style sifting, variational |
| 15 | +and chirp models, multivariate / image decompositions, and related |
| 16 | +time-frequency transforms, plus helpers in :mod:`pysdkit.data`, |
| 17 | +:mod:`pysdkit.plot`, :mod:`pysdkit.entropy`, and :mod:`pysdkit.tsa`. |
| 18 | + |
| 19 | +It is **not** a linear subspace-identification toolbox (state-space |
| 20 | +``A, B, C, D`` from IO data), and it is not a replacement for |
| 21 | +`PyWavelets <https://pywavelets.readthedocs.io/>`_. Install and the |
| 22 | +three-step API are in the :doc:`../user_guide/index`; the gallery is |
| 23 | +under :doc:`../auto_examples/index`. |
| 24 | + |
| 25 | +Citing PySDKit |
| 26 | +-------------- |
| 27 | + |
| 28 | +Cite **two things** when a result depends on this library. |
| 29 | + |
| 30 | +1. **The algorithm.** Use the original paper of the method you called |
| 31 | + (EMD, VMD, MVMD, …). Class and module docstrings list those |
| 32 | + references. |
| 33 | + |
| 34 | +2. **The software.** There is no journal article for the package yet. |
| 35 | + Name the GitHub repository and the **version you actually ran** |
| 36 | + (``pip show pysdkit``, or ``pysdkit.__version__``): |
| 37 | + |
| 38 | + .. code-block:: text |
| 39 | +
|
| 40 | + @software{pysdkit, |
| 41 | + author = {{PySDKit developers}}, |
| 42 | + title = {{PySDKit}: signal decomposition in {Python}}, |
| 43 | + url = {https://github.com/wwhenxuan/PySDKit}, |
| 44 | + version = {X.Y.Z}, |
| 45 | + } |
| 46 | +
|
| 47 | + Replace ``X.Y.Z`` with the installed version. If a software paper |
| 48 | + (for example JOSS) appears later, prefer that citation. |
| 49 | + |
| 50 | +People |
| 51 | +------ |
| 52 | + |
| 53 | +PySDKit is an open-source project started in April 2024. Releases, |
| 54 | +review, and the documentation are handled by the maintainers; algorithms |
| 55 | +and fixes come from a wider set of contributors. |
7 | 56 |
|
8 | | -It is not a linear subspace-identification toolbox (state-space |
9 | | -``A, B, C, D`` from IO data). The public API is mode extraction: |
10 | | -EMD-style sifting, variational / chirp models, image decompositions, |
11 | | -and related time-frequency transforms. |
| 57 | +.. list-table:: |
| 58 | + :header-rows: 1 |
| 59 | + :widths: 28 22 50 |
12 | 60 |
|
13 | | -- GitHub: https://github.com/wwhenxuan/PySDKit |
| 61 | + * - Name |
| 62 | + - Role |
| 63 | + - Contact |
| 64 | + * - `Whenxuan Wang <https://github.com/wwhenxuan>`_ |
| 65 | + - Maintainer |
| 66 | + - wwhenxuan@gmail.com |
| 67 | + * - `RuiZhe Wang <https://github.com/changewam>`_ |
| 68 | + - Maintainer |
| 69 | + - 3133986068@qq.com |
| 70 | + |
| 71 | +Package metadata also lists Rongkun Zhu, Kai Wu, Lei Wang, josefinez, |
| 72 | +Deeksha Manjunath, Yuan Feng, WenTong Zhao, and JacktheFowler. The |
| 73 | +complete, up-to-date list is the |
| 74 | +`GitHub contributors graph <https://github.com/wwhenxuan/PySDKit/graphs/contributors>`_. |
| 75 | + |
| 76 | +.. image:: https://contrib.rocks/image?repo=wwhenxuan/PySDKit |
| 77 | + :target: https://github.com/wwhenxuan/PySDKit/graphs/contributors |
| 78 | + :alt: GitHub contributors to PySDKit |
| 79 | + |
| 80 | +License and use |
| 81 | +--------------- |
| 82 | + |
| 83 | +PySDKit is released under the |
| 84 | +`MIT License <https://github.com/wwhenxuan/PySDKit/blob/main/LICENSE>`_. |
| 85 | +You may use, copy, modify, and redistribute it in research, teaching, |
| 86 | +and commercial work, provided the copyright notice and permission |
| 87 | +notice are kept with substantial portions of the code. |
| 88 | + |
| 89 | +The implementations follow published papers and public reference code. |
| 90 | +Using a method here does not replace citing its authors. The software |
| 91 | +is provided “as is”, without warranty. |
| 92 | + |
| 93 | +Related work |
| 94 | +------------ |
| 95 | + |
| 96 | +We thank researchers in signal processing for the algorithms themselves, |
| 97 | +and the Python projects that made a unified library practical: |
| 98 | + |
| 99 | +- `PyEMD <https://github.com/laszukdawid/PyEMD>`_ |
| 100 | +- `vmdpy <https://github.com/vrcarva/vmdpy>`_ and |
| 101 | + `ewtpy <https://github.com/vrcarva/ewtpy>`_ |
| 102 | +- `EWT-Python <https://github.com/bhurat/EWT-Python>`_ |
| 103 | +- `MEMD-Python- <https://github.com/mariogrune/MEMD-Python->`_ |
| 104 | +- `PyLMD <https://github.com/shownlin/PyLMD>`_ |
| 105 | +- `PyWavelets <https://github.com/PyWavelets/pywt>`_ |
| 106 | +- `signal-decomposition <https://github.com/cvxgrp/signal-decomposition>`_ |
| 107 | +- `scikit-learn <https://scikit-learn.org/>`_, |
| 108 | + `scikit-image <https://scikit-image.org/>`_, |
| 109 | + `sktime <https://www.sktime.net/>`_, and |
| 110 | + `statsmodels <https://www.statsmodels.org/>`_ |
| 111 | +- `SP_Lib <https://github.com/hustcxl/SP_Lib>`_ and |
| 112 | + `dsatools <https://github.com/MVRonkin/dsatools>`_ |
| 113 | + |
| 114 | +Links |
| 115 | +----- |
| 116 | + |
| 117 | +- Source: https://github.com/wwhenxuan/PySDKit |
| 118 | +- Issues: https://github.com/wwhenxuan/PySDKit/issues |
14 | 119 | - PyPI: https://pypi.org/project/PySDKit/ |
15 | 120 | - Docs: https://pysdkit.readthedocs.io/ |
| 121 | +- Code of Conduct: https://github.com/wwhenxuan/PySDKit/blob/main/CODE_OF_CONDUCT.md |
16 | 122 |
|
17 | | -Please cite the original papers of each algorithm you use; class and |
18 | | -module docstrings point to those references. |
19 | | - |
20 | | -If you want to add an algorithm, tests, or a gallery example, see |
| 123 | +To add an algorithm, tests, or a gallery example, see |
21 | 124 | :doc:`../development/index`. |
0 commit comments