====================================================
PyPHER - Python-based PSF Homogenization kERnels
====================================================
Compute an homogenization kernel between two PSFs.
This code is well suited for PSF matching applications in both an astronomical or microscopy context.
It has been developed as part of the ESA `Euclid <http://www.cosmos.esa.int/web/euclid>`_ mission and is currently being used for multi-band photometric studies of `HST <https://www.spacetelescope.org/>`_ (visible) and `Herschel <http://www.cosmos.esa.int/web/herschel/home>`_ (IR) data.
:Paper: http://arxiv.org/abs/1609.02006
:Documentation: https://pypher.readthedocs.io
Features
========
1. **Warp** (rotation + resampling) the PSF images (if necessary),
2. **Filter** images in Fourier space using a regularized Wiener filter,
3. **Produce** a homogenization kernel.
**Note:** ``pypher`` needs the pixel scale information to be present in the FITS files. If not, use the provided ``addpixscl`` method to add this missing info.
**Warning:** This code **does not**
* interpolate NaN values (replaced by 0 instead),
* center PSF images,
* minimize the kernel size.
Installation
============
PyPHER works both with Python 2.7 and 3.X and relies on `numpy <http://www.numpy.org/>`_, `scipy <http://www.scipy.org/>`_ and `astropy <http://www.astropy.org/>`_ libraries.
Option 1: `Pip <https://pypi.python.org/pypi/pypher>`_
------------------------------------------------------
.. code:: bash
pip install pypher
Option 2: from `source <https://github.com/aboucaud/pypher>`_
-------------------------------------------------------------
.. code:: bash
git clone https://github.com/aboucaud/pypher
cd pypher
python setup.py install
Option 3: from `conda-forge <https://github.com/conda-forge/pypher-feedstock>`_
-------------------------------------------------------------------------------
.. code:: bash
conda install -c conda-forge pypher
Basic example
=============
.. code:: bash
$ pypher psf_a.fits psf_b.fits kernel_a_to_b.fits -r 1.e-5
This will create the desired kernel ``kernel_a_to_b.fits`` and a short
log ``kernel_a_to_b.log`` with information about the processing.
Acknowledging
=============
If you make use of any product of this code in a scientific publication,
please consider acknowledging the work by citing the paper using the BibTeX
information in the ``Cite this repository`` section at the top right of the page.
.. |pypi| image:: https://img.shields.io/pypi/v/pypher.svg
:alt: Latest Version
:scale: 100%
:target: https://pypi.python.org/pypi/pypher
.. |docs| image:: https://readthedocs.org/projects/pypher/badge/?version=latest
:alt: Documentation Status
:scale: 100%
:target: https://pypher.readthedocs.org/en/latest/?badge=latest
.. |actions| image:: https://github.com/aboucaud/pypher/actions/workflows/pytest.yml/badge.svg
:alt: GitHub CI
:scale: 100%
:target: https://github.com/aboucaud/pypher/actions/workflows/pytest.yml
.. |license| image:: https://img.shields.io/badge/license-BSD-blue.svg?style=flat
:alt: License type
:scale: 100%
:target: https://github.com/aboucaud/pypher/blob/master/LICENSE
.. |doi| image:: https://zenodo.org/badge/21241/aboucaud/pypher.svg
:alt: DOI number
:scale: 100%
:target: https://zenodo.org/badge/latestdoi/21241/aboucaud/pypher
.. |arxiv| image:: http://img.shields.io/badge/arXiv-1609.02006-yellow.svg?style=flat
:alt: arXiv paper
:scale: 100%
:target: https://arxiv.org/abs/1609.02006
Raw data
{
"_id": null,
"home_page": "http://pypher.readthedocs.org/en/latest/",
"name": "pypher",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Alexandre Boucaud",
"author_email": "alexandre.boucaud@apc.in2p3.fr",
"download_url": "https://files.pythonhosted.org/packages/f3/03/a724dfae3630d1fa5b4b2d564755356c4f3306dffdd952d96d473566b35b/pypher-0.7.2.tar.gz",
"platform": null,
"description": "====================================================\nPyPHER - Python-based PSF Homogenization kERnels\n====================================================\n\nCompute an homogenization kernel between two PSFs.\n\nThis code is well suited for PSF matching applications in both an astronomical or microscopy context.\n\nIt has been developed as part of the ESA `Euclid <http://www.cosmos.esa.int/web/euclid>`_ mission and is currently being used for multi-band photometric studies of `HST <https://www.spacetelescope.org/>`_ (visible) and `Herschel <http://www.cosmos.esa.int/web/herschel/home>`_ (IR) data.\n\n:Paper: http://arxiv.org/abs/1609.02006\n:Documentation: https://pypher.readthedocs.io\n\nFeatures\n========\n\n1. **Warp** (rotation + resampling) the PSF images (if necessary),\n2. **Filter** images in Fourier space using a regularized Wiener filter,\n3. **Produce** a homogenization kernel.\n\n**Note:** ``pypher`` needs the pixel scale information to be present in the FITS files. If not, use the provided ``addpixscl`` method to add this missing info.\n\n**Warning:** This code **does not**\n\n * interpolate NaN values (replaced by 0 instead),\n * center PSF images,\n * minimize the kernel size.\n\n\nInstallation\n============\n\nPyPHER works both with Python 2.7 and 3.X and relies on `numpy <http://www.numpy.org/>`_, `scipy <http://www.scipy.org/>`_ and `astropy <http://www.astropy.org/>`_ libraries.\n\nOption 1: `Pip <https://pypi.python.org/pypi/pypher>`_\n------------------------------------------------------\n\n.. code:: bash\n\n pip install pypher\n\nOption 2: from `source <https://github.com/aboucaud/pypher>`_\n-------------------------------------------------------------\n\n.. code:: bash\n\n git clone https://github.com/aboucaud/pypher\n cd pypher\n python setup.py install\n\nOption 3: from `conda-forge <https://github.com/conda-forge/pypher-feedstock>`_\n-------------------------------------------------------------------------------\n\n.. code:: bash\n\n conda install -c conda-forge pypher\n\nBasic example\n=============\n\n.. code:: bash\n\n $ pypher psf_a.fits psf_b.fits kernel_a_to_b.fits -r 1.e-5\n\nThis will create the desired kernel ``kernel_a_to_b.fits`` and a short\nlog ``kernel_a_to_b.log`` with information about the processing.\n\n\nAcknowledging\n=============\n\nIf you make use of any product of this code in a scientific publication,\nplease consider acknowledging the work by citing the paper using the BibTeX \ninformation in the ``Cite this repository`` section at the top right of the page.\n\n\n.. |pypi| image:: https://img.shields.io/pypi/v/pypher.svg\n :alt: Latest Version\n :scale: 100%\n :target: https://pypi.python.org/pypi/pypher\n\n.. |docs| image:: https://readthedocs.org/projects/pypher/badge/?version=latest\n :alt: Documentation Status\n :scale: 100%\n :target: https://pypher.readthedocs.org/en/latest/?badge=latest\n\n.. |actions| image:: https://github.com/aboucaud/pypher/actions/workflows/pytest.yml/badge.svg\n :alt: GitHub CI\n :scale: 100%\n :target: https://github.com/aboucaud/pypher/actions/workflows/pytest.yml\n\n.. |license| image:: https://img.shields.io/badge/license-BSD-blue.svg?style=flat\n :alt: License type\n :scale: 100%\n :target: https://github.com/aboucaud/pypher/blob/master/LICENSE\n\n.. |doi| image:: https://zenodo.org/badge/21241/aboucaud/pypher.svg\n :alt: DOI number\n :scale: 100%\n :target: https://zenodo.org/badge/latestdoi/21241/aboucaud/pypher\n\n.. |arxiv| image:: http://img.shields.io/badge/arXiv-1609.02006-yellow.svg?style=flat\n :alt: arXiv paper\n :scale: 100%\n :target: https://arxiv.org/abs/1609.02006\n\n",
"bugtrack_url": null,
"license": "New BSD",
"summary": "Python-based PSF Homogenization kERnels production",
"version": "0.7.2",
"project_urls": {
"Download": "https://github.com/aboucaud/pypher",
"Homepage": "http://pypher.readthedocs.org/en/latest/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a06f524e0795e149738b9b0556e56f6064b9b2df6297a8ede5cbf2d17a1bd919",
"md5": "2814caae4998221f8d14cda8e17e7574",
"sha256": "80861141b58bde1d7436e3ad89356efaa001ce0ab1337b6742425f622475013b"
},
"downloads": -1,
"filename": "pypher-0.7.2-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "2814caae4998221f8d14cda8e17e7574",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 14771,
"upload_time": "2024-09-16T23:19:07",
"upload_time_iso_8601": "2024-09-16T23:19:07.992306Z",
"url": "https://files.pythonhosted.org/packages/a0/6f/524e0795e149738b9b0556e56f6064b9b2df6297a8ede5cbf2d17a1bd919/pypher-0.7.2-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f303a724dfae3630d1fa5b4b2d564755356c4f3306dffdd952d96d473566b35b",
"md5": "5b6a4a8c5061694ade104bfa56661d73",
"sha256": "68c5f6da5b12980263cc0ee247ad9706a67dd27392a8a97c3e42da23180bfc63"
},
"downloads": -1,
"filename": "pypher-0.7.2.tar.gz",
"has_sig": false,
"md5_digest": "5b6a4a8c5061694ade104bfa56661d73",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 23792,
"upload_time": "2024-09-16T23:19:09",
"upload_time_iso_8601": "2024-09-16T23:19:09.108584Z",
"url": "https://files.pythonhosted.org/packages/f3/03/a724dfae3630d1fa5b4b2d564755356c4f3306dffdd952d96d473566b35b/pypher-0.7.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-16 23:19:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "aboucaud",
"github_project": "pypher",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "numpy",
"specs": [
[
">=",
"1.7.2"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"0.9.0"
]
]
},
{
"name": "astropy",
"specs": [
[
">=",
"2.0"
]
]
}
],
"lcname": "pypher"
}