AsPyLib: a python library for FITS image processing
Purpose
AsPyLib is a collection of tools written in Python for amateur
astronomers, that allows FITS image processing and
photometry of variable stars and asteroids.
In the long term, AsPyLib aims to become a library specialised in photometric reduction, that is able to
cope with relatively high amounts of data, to make possible amateur surveys of
variable stars. For this it has to perform many tasks such as
automatic detection of stars, aperture photometry, astrometric reduction,
matching with a star catalog (USNO-B1), etc, up to the calculation of some of
the target's parameters (period, amplitude,etc) efficiently and reliably enough to allow automatisation.
February 2013 I am very busy with the Dauban survey, and the online version of AsPyLib has not been updated for about a year. At the moment AsPyLib contains most basic functionalities (see description below) but don't expect to set up a survey pipe-line from it with little work! I hope to get back to AsPyLib soon to share the improvements and lesson learned from the Dauban survey experience.
accurate aperture photometry (limited number of objects, moving or fixed)
automatic photometry of all detected fixed objects, with algorithm inspired from the Monitor project (see here)
search of variable stars
lightcurve processing (time corrections, fit with Fourier series)
astrometry
sending web queries (Vizier, SkyBoT)
automatic astrometry based on Kaiser method (to find approximate scaling, rotation, translation, exactly the same as the SCAMP software), followed by 3rd order distorsion fit
License
AsPyLib (versions 1.0.0 to 1.4.1)
Copyright (C) 2011-2012 Jerome Caron
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see http://www.gnu.org/licenses/.
The author and his motivations
The starting point of this project is my personal interest for photometry of "fast oscillating"
targets such as asteroids, short period variable stars (eclipsing,
cepheids,...). Lightcurves are obtained very easily by measuring the temporal
variations of brightness of a sizeless source in the sky. The target is
literally at unreachable distances, and the amount of information very small.
But still the measured data contains the signature of many combined effects,
with various complexity. On top of the usual periodicity, one can observe the
slow change of an asteroid's lightcurve, the multiple periods of some cepheids,
the effects of light time propagation, etc.
There are also a few mysteries, reminding the immensity of the universe... For instance: Discovery of an usual optical transiant
with the Hubble Space Telescope The study of resonant variability observed
in the massive LMC system BI 108
To make this library the work to be done is quite large, but the choice of Python is a decisive ingredient to make
it feasible. Python simplicity allows fast programming and thanks to existing
modules (Pyfits, Numpy, Scipy, Matlplotlib), a great part of the work is
actually already done. Also I will not program any GUI or stand alone
application (I leave this to whoever is interested) so the only remaining task
is to focus on the data processing only, to write simple scripts and functions
and to organise them rationally. I dare to think that this is doable by a single
person, as long as I pick up some advice here and there and keep an eye on the
literature to make sure I do not take a completely wrong direction. Finally, I
hope that some picky users will eventually help by pointing out a few
defficiencies, or maybe that there will be some contagion in my interest for
Python programming...