shapelets
What is shapelets?
Shapelets is a Python library that implements several shapelet functions and some of their applications in science and engineering. Shapelet functions are a complete and orthogonal set of localized basis functions with mathematical properties convenient for various image analyses. Existing applications from the literature include:
- Astronomy/astrophysics [A. Refregier (2003), R. Massey (2005), J. Berge (2019)]
- Nanostructure characterization [R. Suderman (2015), T. Akdeniz (2018), M. P. Tino (2024)]
- Computational neuroscience [J. D. Victor (2006), T. O. Sharpee (2009)]
- Medical imaging [J. Weissman (2004)]
Main features
Shapelets provides implementations of the following shapelet functions from shapelets.functions
- Cartesian shapelets [A. Refregier (2003)]
- Polar shapelets [R. Massey (2005)]
- Exponential shapelets [J. Berge (2019)]
- Orthonormal polar shapelets with no radial extrema [T. Akdeniz (2018)]
- Orthonormal polar shapelets with one degree of radial extrema [M. P. Tino (2024)]
It also implements several shapelets applications, such as
- The response distance method [R. Suderman (2015)] - see example 1
- The defect identification method [M. P. Tino (2024)] - see example 2
- The local pattern orientation method [M. P. Tino (2024)] - see example 3
- Galaxy decomposition and reconstruction [A. Refregier (2003)] - see example 4
Getting Started
Installation
If you have Python 3.10+ installed on your machine, you can install the shapelets library via pip:
pip install shapelets
Otherwise, consult the installation guide.
Using Shapelets
See the shapelets examples for shapelets applications implemented with this package.
Also checkout our custom commands to see how to use shapelets from the command-line.
Contribute
The authors of the shapelets library welcome contributions to the source code. Please follow the contribution policy here.
Citation
@article{TinoShapelets2024,
author = {Tino, Matthew Peres and Abdulaziz, Abbas Yusuf and Suderman, Robert and Akdeniz, Thomas and Abukhdeir, Nasser Mohieddin},
title = {Shapelets: A Python package implementing shapelet functions and their applications},
doi = {10.21105/joss.06058},
journal = {Journal of Open Source Software},
number = {95},
pages = {6058},
volume = {9},
year = {2024},
url = {https://joss.theoj.org/papers/10.21105/joss.06058}
}
Authors
- Matthew Peres Tino (mptino@uwaterloo.ca)
- Abbas Yusuf Abdulaziz
- Nasser Mohieddin Abukhdeir
- Robert Suderman
- Thomas Akdeniz
1######################################################################################################################## 2# Copyright 2023 the authors (see AUTHORS file for full list). # 3# # 4# This file is part of shapelets. # 5# # 6# Shapelets is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General # 7# Public License as published by the Free Software Foundation, either version 2.1 of the License, or (at your option) # 8# any later version. # 9# # 10# Shapelets is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied # 11# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # 12# details. # 13# # 14# You should have received a copy of the GNU Lesser General Public License along with shapelets. If not, see # 15# <https://www.gnu.org/licenses/>. # 16######################################################################################################################## 17 18# Website front page goes here 19 20r""" 21 22.. include:: ../docs/website.md 23 24"""